@charset "UTF-8";
/* ----  BOWER COMPONENTS   ------- */
/* --------------------------------------------------------------------- VARIABLES -------------------------------------------------------------------- */
/* --------------------------------------------------------------------- IMPORTS -------------------------------------------------------------------- */
/* -------
	Mixin for clearfixing an element 
------- */
/*  CSS RESET */
/*  Meyer's CSS Reset, Normalized.css, and custom code */
/*  Mobile Screen Resizing */
@import url("//hello.myfonts.net/count/2f5c55");
@import url("//fast.fonts.net/t/1.css?apiType=css&projectid=ecf358c6-54d4-4d3f-8524-38193adbe8fb");
@-webkit-viewport { width: device-width;
  zoom: 1.0; }

@-moz-viewport { width: device-width;
  zoom: 1.0; }

@-ms-viewport { width: device-width;
  zoom: 1.0; }

@viewport { width: device-width;
  zoom: 1.0; }

/*  Remove browser defaults */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, button, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-family: "Helvetica Neue", Arial, sans-serif; font-size: 100%; font: inherit; vertical-align: baseline; }

/*  Set display type for HTML5 semantic elements */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

/*  Force scrollbar display to prevent jumping on pages. Fix text resize bug on mobile devices. */
html { overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

/*  Display audio, canvas, and video elements as inline block elements. */
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }

/*  Prevent modern browsers from displaying audio without controls. */
audio:not([controls]) { display: none; }

/*  Prevent img and video elements from spilling outside of the page on smaller screens. */
img, video { max-width: 100%; height: auto; }

/*  Prevent iframe, object, and embed elements from spilling outside of the page on smaller screens. */
iframe, object, embed { max-width: 100%; }

/*  Prevents IE from making scaled images look like crap */
img { -ms-interpolation-mode: bicubic; }

/*  Address outline inconsistency between Chrome and other browsers. */
a:focus, button:focus { outline: thin dotted; outline: .294117647em auto -webkit-focus-ring-color; outline-offset: -.142857143em; }

/*  Improve readability when focused and also mouse hovered in all browsers. */
a:hover, a:active { outline: 0; }

/** @license MyFonts Webfont Build ID 3103829, 2015-10-07T09:16:34-0400 The fonts listed in this notice are subject to the End User License Agreement(s) entered into by the website owner. All other parties are  explicitly restricted from using the Licensed Webfonts(s). You may obtain a valid license at the URLs below. Webfont: FuturaPT-Book by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-book/ Webfont: FuturaPT-Light by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-light/ Webfont: FuturaPT-Medium by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-medium/ Webfont: FuturaPT-Demi by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-demi/ Webfont: FuturaPT-Heavy by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/heavy/ Webfont: FuturaPT-Bold by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/bold/ Webfont: FuturaPT-ExtraBold by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/extra-bold/ Webfont: FuturaPT-LightObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-light-italic/ Webfont: FuturaPT-BookObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/italic/ Webfont: FuturaPT-MediumObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-medium-italic/ Webfont: FuturaPT-DemiObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/futura-demi-italic/ Webfont: FuturaPT-HeavyObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/heavy-obl/ Webfont: FuturaPT-BoldObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/bold-obl/ Webfont: FuturaPT-ExtraBoldObl by ParaType URL: http://www.myfonts.com/Fonts/paratype/futura-book/extra-bold-obl/ License: http://www.myfonts.com/viewlicense?type=web&buildid=3103829 Licensed pageviews: 300,000 Webfonts copyright: Copyright &#x00A9; 1995 ParaGraph Intl., &#x00A9; 1998 ParaType Inc., ParaType Ltd. All rights reserved. © 2015 MyFonts Inc */
/*
@font-face {font-family: 'futura-pt-alt'; font-weight: normal; font-style: normal; src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.eot');src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.eot?#iefix') format('embedded-opentype'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.woff2') format('woff2'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.woff') format('woff'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.ttf') format('truetype');}
@font-face {font-family: 'futura-pt-alt'; font-weight: bold; font-style: normal; src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.eot');src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.eot?#iefix') format('embedded-opentype'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.woff2') format('woff2'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.woff') format('woff'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.ttf') format('truetype');}
@font-face {font-family: 'futura-pt-alt'; font-weight: normal; font-style: italic; src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.eot');src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.eot?#iefix') format('embedded-opentype'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.woff2') format('woff2'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.woff') format('woff'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.ttf') format('truetype');}
@font-face {font-family: 'futura-pt-alt'; font-weight: bold; font-style: italic; src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.eot');src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.eot?#iefix') format('embedded-opentype'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.woff2') format('woff2'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.woff') format('woff'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.ttf') format('truetype');}

@font-face {font-family: 'futura-pt-alt'; font-weight: normal; font-style: italic; src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.eot?#iefix') format('embedded-opentype'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.woff2') format('woff2'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.woff') format('woff'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.ttf') format('truetype');}
@font-face {font-family: 'futura-pt-alt'; font-weight: bold; font-style: italic; src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.eot');src: url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.eot?#iefix') format('embedded-opentype'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.woff2') format('woff2'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.woff') format('woff'),url('/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.ttf') format('truetype');}
*/
@font-face { font-family: 'futura-pt-alt'; font-weight: normal; font-style: normal; src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.eot"); src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.eot?#iefix") format("embedded-opentype"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.woff2") format("woff2"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.woff") format("woff"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_0_0.ttf") format("truetype"); }

@font-face { font-family: 'futura-pt-alt'; font-weight: normal; font-style: italic; src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.eot"); src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.eot?#iefix") format("embedded-opentype"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.woff2") format("woff2"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.woff") format("woff"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_8_0.ttf") format("truetype"); }

@font-face { font-family: 'futura-pt-alt'; font-weight: bold; font-style: normal; src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.eot"); src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.eot?#iefix") format("embedded-opentype"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.woff2") format("woff2"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.woff") format("woff"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_4_0.ttf") format("truetype"); }

@font-face { font-family: 'futura-pt-alt'; font-weight: bold; font-style: italic; src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.eot"); src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.eot?#iefix") format("embedded-opentype"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.woff2") format("woff2"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.woff") format("woff"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/2F5C55_B_0.ttf") format("truetype"); }

/* Adelle Italic Webfont */
@font-face { font-family: "Adelle W01 Italic"; src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/1a1c1f39-8512-4715-976c-6062108d7dfe.eot?#iefix"); src: url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/1a1c1f39-8512-4715-976c-6062108d7dfe.eot?#iefix") format("eot"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/a10072b3-e7a8-4ea9-bd44-d4aec6a09457.woff2") format("woff2"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/e66b90fd-f201-4525-b5ee-8a854221367c.woff") format("woff"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/6d7b9fc4-60ad-4c03-92a4-48444579beb2.ttf") format("truetype"), url("/typo3conf/ext/boskalis_template/Resources/Public/fonts/b517960a-2dcd-4827-8a2c-c62681d34342.svg#b517960a-2dcd-4827-8a2c-c62681d34342") format("svg"); }

@font-face { font-family: Icons; src: url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAGaoAA0AAAAArkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAABmjAAAABoAAAAcd6CmzE9TLzIAAAGgAAAASQAAAGBP+F1cY21hcAAAAlQAAABWAAABYuKZ6WdjdnQgAAACrAAAAAQAAAAEABEBRGdhc3AAAGaEAAAACAAAAAj//wADZ2x5ZgAAAywAAGFPAAClsDftgndoZWFkAAABMAAAADAAAAA2BvsoFWhoZWEAAAFgAAAAHgAAACQD+AHIaG10eAAAAewAAABnAAAAjBBxA8Jsb2NhAAACsAAAAHoAAAB6db5FZm1heHAAAAGAAAAAIAAAACAGqRsYbmFtZQAAZHwAAAElAAAB736S6JJwb3N0AABlpAAAAN4AAAJaNyYbl3jaY2BkYGAAYlPOb2vj+W2+MnAzMYDApVfFZ2H0////9zFxMB4AcjkYwNIAb28OGHjaY2BkYGA88H8fgx4Tw38gYOJgAIqgAC4Aqp4GwQAAAAEAAAA8GucGKwAAAAAAAgAAAAEAAQAAAEAALgAAAAB42mNgYfzFOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGAQYECEhzTWFoYFD46MR44P8BBj3GAwxOIDVIShQYGAFQDgv3AAAAeNpNyzsOQFAQheHfu0BEqRCvWiSiUSoUSr3CQhR3PbZgA3bFXCFxJl8yOZnhIEZnFyeYYAtD6F0ZF8p8DrBfi3D5YgmHiI0UX78Q8E9IIbNS4VEzkVHSMTJLk5DT0DJI59Pfr/sJPwB42mNgYGBmgGAZBkYGEIgB8hjBfBYGByDNw8DBwARkK3xk+Mj+0f6j0///QFEIjxvE+/+Yn4XvH99vvp9QE+CAkY0BLsTIBCSYGNAUQKwezgAAoj8SwQAAABEBRAAAACoAKgAqACoASgB8AI4AoACyAMQBLAJYAnICsALcAxIDuAP2BFYEjgUoBdIGNAZwCcQLDAswC1IL6AxMDGQNHA0oDTwS0BMyE2ITgBO4E9YT8hQMFO4VVBaEFpIYCB5UIEAjPCYOK1QvhkYCSTRJUEwWUB5SyFLYAAB42pR9B5wkVbV33Xur6lYO3RW6e6Zndrp2pnaZ3Z2u7umpbZbdWVgyknNeckZyEAUEJAqoCKig8vSpCBINqCgsogQViSJRQAF5EiULOvudc6t7dlHf9/u+3unqCjeee+45/3PuubUSlXxJkr5MdpSYxKVFNxFpYr2buSy92rpJVZ5a72ZG4VS6ieFtBW/fzFXyj/VuJni/7bf9tO0n/rknHngg2XHmWp+0oTQiyavvIu+Tn0muJI0mMU95mid5msd5zEmdPl1/8umhZyl9dujpJ+tPr3p07tNPz32UPpo8/XTyKGSXqERW30FWk9ukWBqWJCVSudqYIGMdNWmMTU7FrSgMeCtWW1OTYw01IO+rhKtlfipdvMVOp5yy086nTFD68nkrV563TwVuq+qplE6cct0p5JSdN11Ch+D2PudBGyVpOVS0XFIkyceWKaNPPjm6WiKjA/fdN/CCJPpx+upV5HSyCtOQmMeckQPEU7IKE5N/TROn0MnyFSLJ8qK4opy16hpFaoxSqShg935lVJJWP0AJuUZaJG0BqVphVCcBV8dJIx3r+JP51BLSwlt4h6uhH8QR3MmnlpLJqXY54kASIM8EKUg1OU0gW5GLnC/LlUrjtSSuVOLkXsY5u7fk2LYVvOG7FmdnqkxWNK62bmWqPIexn7UURdY/zy9lMttvbg0+c4k0VqtxFjLVdYPVUmS78Lsf48TR1K8aMudT9zCWMM7umdK4rnBJciRZYuSf5DjJglFMpKY0Df3aWzpeOke6QrpW+rn0O+kZ6GeDT6bYyFgNx9LGItKZnGpFgRpDr1M8DQN1DPutYu+wR5PLSI63HZJAGo73ptoiXY7peNNhSWdyEU2nOsWNhsPhxhhcc4fUydgE1LGMLaER8BEPRfqGuEfa0AAqTqA8qDDG9IvkLIUqlpAgH0vxEbQ0iFU+ljTyqQ40HhIXl3yMKLZnKvqErpiW61bdOQvnzFlmaaxWn1+vPzy/7iu2Ewx96MR2MAQH06CfDYbqYVCvbzcwyrjpxqbuBFZwSm2MESorXDNMmw/H5Z9UhscaTLW8wFhHZtvWRgnTbL9ir7OQ+UP+pUbZ5nZsh/UBagxW6lbkWqoyOjA+ygaVAa/sqhZhnq1caCpu4NWUYabbhqe8pro+pY4nD9sVJ6rXF9R3UQfdYKBeDgb3GgyYVdXgdMiKbFIvO5GlDJyBjwaDYHBibrVFGPCHY0UlWy7HzdFaBtxL4UOoVxnj5Xg3Na26zKCZUXZNtRbNrWYUs9g08we9/TTLN+zIHix7A8pCdaziYnmUZtW5lW2GLa9smW65xJhGvMCynJLjDTEO04fBPHkF5tInhbwyYe6OhCNhZyRU4EulGan4klMWX7fuut/tdnH+MZBHD4A8uVEakFJpHLguBI6AAVPrJFmPTK3H0naddKbaQ2QUBjMoOG2KgXQjM4fnqc+OIOSIZHrxhjMbDYyQxuBAIxk44vyfXrfZPLX8QzWcXnfTfIE6QUhOtnhmuFqZMxJX5szMIRvN3AqzQJIGoD27SapkgKyNoPY0j2D+kpHYJWJqD5M8HsnJh1d9g83UyZ3KC/9k7Bu7b/TlmeVfHb/gYs5WSzqZR+/ZFySvxIzPbb/0nHOgT3us/hX5JsgdX6pKI5JUAm4OVJeojXSR3JmMesJRzCaQmj8/eyX52NiYbClqODlv5MRdpqd3md56cZouTsmqlSvmXz29nHOjsfd2u1VXfG3ZrtPTux41L0/THOmnAs1vg4FdBT0IpDkwlw+QjpGk8tg0iUOUPC5pJSrPpvLW1GgT5hwKrU67VQZi+kDNkQZ2c6pNltF8MoWZoiZjML07U+mYEGZR7FAO8w3mJw/iMI7aINfaUzn8plE8RGF6JVP51KuGwZiiqDsrSlTnQ8QgcM3LibpgstKgjcrMMZVGo0KOpIpMmTWlVDTLHnIrFVtRPa4yg1mmqoWRXBlgzGVa0mJscKd5C+zrnCECfLmgrSp2hcwZqzGopqLK0Z0t5g+q45QwRyaLRqq9Ci6qNGZupJpKTbUMk7a+QN6qokbJUF1LBm0rtYk9YhuqrLFdmGmVTxieC5xN1MCIuoIXVdCNH5CfSiVpSJoH3BAh/ZDlQJIvoyBfcsGDyILLSLk1lYtxjMixhnGJqmgGU1RZUYcOuoRe8rtLVhyzYo8zyBk/OuP0hwzVVlYyU1slc4Wx8y856KBLLjlow2NXzMz/9B67nwFJxDjeCfNgFbQiBK5pS7m0QTEbWBunBFQ/0hoCoQc34BonQ4gKRxywgUUrYSQ7SUhay0BqFm1b+vU5dI6imaq0WnP1OXNuJ9N2mZSc5SVnxi4vt8tlm+y5mkzDw3KtXF4xZw7Zc/lybuqK7ujLl8/8GbKU7dvt8kpMulKczvzX7beL4uDWQAn5UIf2vwxz6fLe3HelMuiWAcAICciBTjvkvW957XPoWdg7PwY/O4njDuJIlu+007U77XTNzjuTHWfPru2diPoeh/qugrpiaVSakJZIH5N2klZKRwL348RKQGPBKMFkA5UD1EHV0BhDHQWExOdykWpMTMjZNKM9BTYiBpm21bVTTY710/SmDpa2pJIkFW/Q9Qbkiq/ZIDyvUnUiAyCZVHRdmcma8LzamOg9JI8oOjyc+a2iU1mlV8w+9a3iIWT5rUhCrmpMNNyB4QF3R8/ULM2zTC+EiWCGbrDjSBP4vdL2TG5prmXOi7hsGwFnusEvbDRHRvBZ5OGT0I0iDrkEjlkFNFsFI3SMkEpC/MQBTmqY9YJnOvCTT41xdSyfWgRAZSpfBkf413BIDHLeoeIIWAafqnG0jKAYGGJxBDfxPmTEvHQZAU0PqEG97JHL4G/OWXvsspxRRpSIqB4IB92aw0hQZbzkRnOIOjxnnhlYhMRVT6YDZUZhqoAKNBS/VvJCVw0dhVLDkIeDkNHSsMoNymuUubpSrrGSrw6uA4SpkVWitkP3OGsJkzXNBfTETFOnPAbd5zuQ2h1R1OHyoorNYDJqnu5wpVTiskw0boSElAJCEg/msSnXI5XaZq3k+C7Xa8xQbLdhaI7nW15sOI4+MZABfmSSDVjqYGkpyotcTRw2lkZTOZBBTaeArFPxIpJHcRTDPS6+QCmWAKWmUICGmJbcOTgUj1mbH3TkEaPJ0Wm1NLDQt+IJvaZUQrJlp1yeO05Vr0KrC2Wq6IZOiEaTZQYhxJ2rm7/TWZR9bJS1W3NJShuWkljUTGViN7yBuhnsOaDoHrP0kgYYEujPiNwaJbIMIEap9zDw6hcBIXxNmgsXERd4LsXhBT0MfYB/2H4h+vMpuDdFvr8Vk/c/aLMFw3yAV2pqo1JrNgeG5nLdKgf+8DBVxvxojFxB9/nYaedsVz2gsl1lKF44zui8BfnSrVutgXHtZAm4UJEWkX+QjQFxPk3eoybN6Bb0NEnKW3FUKB2aqaDF1BgQNULKyanO2BTqpnQsB3zXGBPKaiwIA2xtZ0pccTUFxsOk+VRzKm83kT+jadLqxEPA2nET5uwUgtIwiLJAzQLMAsIB+hcG7dZke0pUNNmOMuh0PjVMYJxIFiVjok0NaFUdkT9mw+eQB3+iuBnFeRAHXGhMMROwzflUOpmM4cwCJYbWkYqSBnoVODRRAywTAM0iCgVDcdhbHjYxd2cqgxqwoQk8AD0EPRSJU2yGiogcRgi6OobNFiWnTWhUMERC6EuAFWDHBB0xB8xFzAINGhMXkzicQJwpbH4CArDTSKAsaGuC9WC6ZEzUVdBjGUCisXbeAomQAVVa+CMSoCCcIFj2pOCWGAk2TNoRpmiDcBU1xDkka4sEQP8s6pGNT4EFAa1suGQSSsa/KY7EbeAwFmPQzKdCgP2AYqbQ8mpwIGCQAwnjIGkilRtTGRB4Mm6huRIBAGlHArEUT0F4Ib2AdTARsjE2C9mgTlD0I3PfaHKiEO7B7FCpwMqEajKgA5lyMKaYTWRCDK4QAA9g0yoyoBbZZpAME3GiwdEmhFFDITED+a9QBn/wowAwAq0P4BvkmcwJhZIYplQBc3PCmRCK8BiKMjQVLDWcpJx5lJOmolAOhTHRHrgLExjMD7auQuaoCpYIMkBRoH0KFiEaoxEE+sShChapUmglzHsUppCeGFCACtkA0ANMkqFmTmRXVdE+kKnJQCrIYN9gYvizoKFEw3IU1VB0oIJiWADBdKaAZSkrWDsDwhBBNShWg3JBPGHPqYaihkO5DFsCZWJqSnQKZpfoLeHwB0SmuiJogGINylAczbPtkgx4yl0MHUJNQEQldBQTylgYNAgKVhkWCWdEJYuAMoqgD5QL1TC0eaBz0Fe8QVHEGzJmpkAEgtUxoBHHgj+nkrLMPSAIjJeMJIDRZwbYZjUYIGrJKuTEUdCR5qrFNF+2KKBMFQffIJT3SkQS40DhLzIPwe6JccLWwUCA1oExUUH+Ehx45A6gJYBehuxANWymAY2EbFALsxUORcO/y4HlYIxhnHTgPxgyHQgAPWAu0WOK4y/4CxmAAmcYignEUHBAoFFYEGoLAmVpxAKuBE5iqAqQY0yA62D7yUzXYayJGCYVGcYBAsEIwkOZqFAo8bEvxUMC7aUNaC8mJ4YpazYB0sE4QHWKKkaLsoJDi97DdJChKAUphLNAsBWlKkddhMmBIsCQOvUUIuqBwUG4D/egPqA0shPUTjxV4TC+K2ScdBzYoZgIwGY7YkUK8iJkI9hIgrRTVU20UhUtEjNIzPASzHCF6hTnKBSNfAoUUpD50RrGO5Af0ezqu8lvyK1gX82XWtJ2gJ5Olb4gfVO6XXpJehtRuhCyCBoFVEIgniNwQqSJwkXptAGVt8N2OW3HeZuHSZwUggwF+VKa1GkAAhxEIorHsM2EaEYBif8wZdDTyqL4DkC2FnqXAOEDoBZ2G8cKcqGwQHC3ilxgcPbagoIvXUraqOcwK9oUvRLjJOw7s+A+JE97ahT/QSk9Z1ZnLE16XitQU+TXKrP1QWfmMccxHAuHxzIGHTLPGdRB3sx8c+6+w8POvLlBMHc0WTmETME0OkwtVSkD51QHmMo11+EqCAnkAcXQAeGimBwAfAN/+zqqYtn1KrF1mGUKmwscK3M4U1hA6CDwiTowAoXI0MjjKiAIgEVYB4ZQVw3dUGFgHcdmgNLIQF1WgS9l+YpLXEOzdV2WDVtzjUsck9u6Yeg2N79/RaVyJTlstxUrdjvkk9s7MPLAU4bq7Li9B9gRGEiF0n2ys1V2UJjCjFG9uRG0UMd5ojGLR2VE7ptxXeczP96orDNz8vsmyBmozNsdmHIrhp1T8ecyZEpmHHIYiBYuH3a+qYAUUZ90IQEkHC4HpmIIJcRk1dTL86uW6egObXogmUAbAV775OpV5ADA8THYOugwI2HSQIdYmyc+/Ou0rydmsGBoy8Wqwbc2Njo4y8iemtuIy7uBHFtvp9VQxE6I++qr7yGvkp+jnxlwH/onMtThrWFSnmqRP7ruzHtqSb2E2yV+5t+5T37klmbWVdXb1MDm15NbwGiVJXP1r8grUMaUtKG0g3QUemODhI8TYUbxEFT7EBsmQyzsmVHAjG30f04TYaLhjXZ5EpgLXadiCqRgcaClhdegyVtKC7gQLd1xgnYucvQSyLeEAI+TDVEKpYvKfskHQcFJxXZL2m5br9gkm7c9pSWFqM5IuzJ/YouN6qmb1vNl7fFW21DpgrmDvu2mtRoZoGCqDJJlhOAP+TmVo7mTldR3qO8Ad4G0LZtuXPNbmy0ea9drCo0CByT08KLqZDJv5rBKo26UsrkLRt8xBrXxraJyPW6vE8kDDIwdspzQAXka5M208CPT1S+BVrwM5AjY9jhZUWiMAdQWwqIlIJFLEPBxmP3K2o/pvz2Oo2+PD1UcY/m8FXPKrqqHu7VBHKsguCxVXj5SiQKyZ2SY/cdOa/0G6F6U3RZn6+Pz0sQj1qJ1mmMZWzSw5SZzPrYSoIS6AHTd8eay8ax/u7XVgjX3Vbvwh/8D7MizAL+DHV5G73uaj4Qj14df/Wp4fZ38eaZOzhy4+tv1O8NR4RuwVv+GfEB+Blb6YdKJ0inSadKZ0jnSBdLFIDuHSMEZaVK4opaQnpsX2Fl4nNf6BWlKwjbKshyYPJwqjkAKAHbCFSIcIWv9Ioeha8QhoR9EoyCFQUwKSYxelRy+HL5pW9zDwhJyXWN8m3zeCu8eNwjcKYB5iraVZojvYiciM6ffQdR2x5zD2uWS7snyYk3XthZfGRIvBpgjkx2npwP4u63d3r3/h5/feOvPW7z1wlF0yrlBFZJrSrWqaP1jpezM/IrKnhz780bnDswDiXAVVWv4qDZ7hFw1qGTmPqZY4fR0uIzU5s2bVxHfq+f11zS+C4P0GHpkOzAu6Hd9bJFEVq9efbuw/03hWYIOQ5eh01R6qfnSS83H8PDSS9LfIP9xoDD3It8mV5NryLXke+QGcjP5PrmF/JjcSm4jt5NfkDvJL8nd5NfkPvIAeZg8Sh4nT5CnybPkz+RF8j8gEV4nb5J3yPvkQzKDqhwYD4Af9ahPSzSgIY3pIB2iY3QhbdGcLqHL6YZ0c7olPZR+in6DfodeS2+gN9Kb6A/oLfTH9FZ6G72D/pL+it5F76b30Hvpr+l99AH6EH2Y/p4+Tp+gT9E/0j/R5+kL9CX6Mn2Fvk7fpO/Q9+mHdIahD5Ezg9nMYz4LWIUNsCE2wlI2zjZjm7Mt2E5sd7aS7cf2Zweyg9kh7DB2BDuaHc9OYqexC9jF7Hp2E/sh+wn7FbuX3cceZI+wx9hT7Bn2LHuR/ZW9xt5jMwBuqGzIA/JieVv5cPkI+Sj5WPk4+QT5JPlk+YvyVfL35Lvke+XfyvfLD8iPyH+QH5efkJ+U/yg/Jz8v/0X+q/yy/Ir8mvy2/A95tSIBKgSYoxiKo3hKoERKRRlSUmW+Mq4sVBYpmTKp5Mq6ylJlubK+soGyobKJsqWyrbKdsrOyq7K7sp+yv3KgcrByqHKW8nXlx8pDysPKo8rjyhPK+2pZXaRuoq5UT1FPBz7IXBqO4ApeNpmDWdTpyp20SwRfDJMsbHdJ3KVxG+Zlo5O3M0hA4A9u5xmmyybb8RJ43gqzuAuTs5N2snbapTmU0NU7XZrwbqndleN2Nw6zsFsGlILTsN1lnbxrx50uLy66IyHk7wZJ8dWLH7kNeUjS5XDEJiVdwrssycS8xXMKLaQ5pAuhmXAzzsI062RJqLRDTBNDZXknDUFUxFgtSINOW/zl/RM87/z7rbXPRf7eZa80PI3TMJsgLZ53xkmcLSHQ75RDjTxr8DbcC5egNxax3+wJfNMkzOMEaBJ2VZiDedcIs05XxWdwD07lJOx0GXQq7co5kobFWRoKIZVi/izmHUgcwr1E/HF4EPKlJIYe87iTIg1gPDouaeQZZMvxjnjkkrgDidL/+xEaH2a8kyY5T/k0CdNWEkA9Gc95lk6TDEYyhlMYgDTjYhR4xttZmkNuGGqoDIVpXEhU6HvGM/QbZGojaOVIoBxKBt4CFuLY0CzvZEvJOiRoQcIsh2//WPzL23XiAheQnAsKQMkTyGsJsBp+eY+4ObAltCPuX2bQiE6CNc1SP8MOwqMONGOaIk2ysXgshi5DZ5DT+n9hDoMJQ9FVY+CuBs4DHBkcNRgUeSnpKuIZjtM0ScNOXofZ0Mlg0nTwkYLM22UcUHeWQCfbLWCjtc5Fol5hMQ4sDg8HDgpxVqVJ7wZQtRhTHNKuXCeQH65whNIcBjWNYUqmGZxmUFCOaULBSTRE0kJJMBGRZjgPwt5JBwgPg9CVedZKUpxBMK5Z2ErwX1aHaS/Yp98N4EGYvkr/mn2EEPmaCyAS682OYZhm/ftAvOJfVhCtKBJmdg5MjykUaECMReFTxgUHIfEUUQRdqzoV/sEN1OJU8imZGQJL0gDkraMDhSquVV4XjPQKAB0mGxTUCqPrcs4UA41ogNUaUSz0vOCHe2BOcgrHCpQBVniHz5wrHqDHAUxL+v/xQVMV4buwL9HbAOCd0EW4UjwoqxExBtwBalTtYVmjz6ydUcYP5AdDv1+hTIhmGEYkDFEskCvw0SFB2bKsimmaITwO4OtilQwdCQoWoaAziVb8DpZBxyzKLDlQbK0UiV5BFQra0hVWGsSElC5SWJtaZTCZDRkdE6iokZDWOkPOAhsICu0HAlsKmMgKtVjZcdDhoUWGQV1Drhl1pzx3LpRD5BRSK9geZsgrdNs0tOWqKUMZ0CYDDG0CRriGfiYsSxw4X58FGnzQfSM+JehahVKTGtBXbhjwhBqQo2js2p+eCd+7D1kpZBC0oNgORTWpIIz4cK5RnVMD/8lyrzTgkFWprAygjaZrRJ7PwUQkdFS1LUJDdH0JJxivU26gv4EIjwFfBF0gQFjuQKHUhXEGosfAMAb3rZ0tugXk0VThFaHTlMiFH63nTlvrrDhhheNjESEpWeyNrgvKnoHBqc9+LOrcgS47aqqcwAiIEgeoQ5XQrm+PZirZzLEdylvOgOPWB7BiZCgslsviXLSlWzi7/peDoaIVrlDhwALKwGlNFj6VMnoFbbBDoRTdKDyZCvVlX8YehAY+Rn5FruWiP1ymrsY1XdfKssYbwKSGD7wCH4e4BhSCN8CcNebIIXELItPCizTfskzgtzJ8HeE2gnYw5inKAmBbiwYytJRU4KnlNkUO9PIU/UO2JcOCqIoX0rrITe0Slj0AeZnOlWHhVhL1yYL21EW3LKN+IBMPnZmKMheKLMHpiKhfSVQVW6PgM9WS5Qq6r3C+GQbavv21d1caAdtmfYDe/7KsXgbDxMWFRbBgoyUEV8ta+dSkWDgLuDpMMExlrPD8B3hskbvWWjC/y+XNBThrFzZVt2YpQ0NmZIahaS5dsEC2FNNMRk1TscmqjyyAX3utxpVRru6haKOK5spzdhqGbNHS0LSShRssX6BAxrHWZMMyFWHL9fsw8O/tJ2me8DQBXJHHH2kZWbb77usuW7auOP5L/cdcdNHhh+O3t7Y0AzbHaehjKMftIk5qtvz72veFQ0PhzIF4JKc2B8I3yvV6mcwJBjGvvfqXYEv8FOxlaRQsX0esKIK1Pk2momGCayLDZAivYvK0aY8bjSUrdlu0oOPJlpaovrqn461TGtlmaMRqOI7m2ANc1eobd9p7Lc8H9UQh6mGOXS8v3G2wpCW2A7QYWb2KvCHixcx+VFm5iC37vQgGiwZ/+9vB5/sRZkTqR5pJ/5q3iDZj4rhs4L7fDb5QWTvybLXUj0Cj0kqo6SpyZpFvmmAcXi6i8lbG550XX3WVOF7sn366f/Fb4ggjlUgnk78QW/qEsKUvlD4nXSJdLn1dukr6b+la6TrpeukG6Ua08Vw6kiK+BlSeAnrHP0BfgMxQ+wOkAggWI04LERenmBBwO6JTjpgS/mFqSIQZ4Retgs7YUoqmI5xmiEIFLI0BAYnnIeZvKzxOx2kHMSugDWxADLgZygSLO0+gUEAJMWDuELIlPIyVDOokLzKmznzWr4SaweiAKlYxKHr4GU5XBWWlQqvozyUmrS5VvmSb6CNGhcvE4gdVAgKytwy4YD+zzDyQxIWDWollDK2TTSEwIbku5BZZQI2rqAMCRrHh2mCq4aEcGkhAetEwgqrSSIWi3RWEQcElFRc74C6ktbjpgNqkpsbYlM2EVABpa4YqaHRqK0wz5Q0UqB2eYTlzhB8f6qyDqMJx56vvIX8nt4Dc2ARGKhgCkceBwVFYpIvYMtLzecCDGN3I+TI2ifEdkYIeOqAnHjABHDBIpUHeAVloVsoLd1xvz3negFeKTWirYRrENGwy7s11dVOhnjvz6s6KoU4zZR5Tp1VDWanYR+nr1NNamfSixMrVtL6Ojp7MvSzTwTZztaSYOxqaNmcHxTboiwpgAPYi1W1lK0WSPGmhdDp5kMjSd6VrgO/uln4rPSA9Jj0rPSe9IL0qvS69If1NelN6F/rZDl2CLIkgFGyiCdrjSoC7MULduI3uHrg11ooS5M9slkM7yVIyloMFA/AV2DUPBaztQIaszv53lk3A/IACJ9PJzlSHo9MHGbewTDCFyFTwb76Gf0OwaWHOhOha7fFwlmDG9jDJx2nOYZoWMyLOC35O1mbotlInkAKmCbkfqDdzjR85RFVwzYPWVKFlSfFBlSvWYYqlFVLgDCoUeCx43WDxYnqhZYqbQuvJpFjbEwMml4kGOgt4/kyTMBMQFa5d9Upnoc9IDR3PuOKm4yqaDPPAEFUCnCH6vvS/2YACgMHE1S1Z0R2RkUY+KGsC06BcorgSFJg6KZpFghgXXjQS+zphXCUwfxBloFo0TU2DO1C4jDMPwAIpzTHF8o+AyAZoWtTVJkEUBshMWQ+6LFaLTJzoJBkCXSvOqlRQhaEe2Az46wGQc3CRj/CRzcnZ1szZF9ogP4ekYXj2nPS2VBKxdvNgPp0ifVr6jHSu8C9eKn1Z+i+QiL+QHpVeAk58S/onij1SJ6Ngby4gLbKYrAd8WbgGwEBBdhKmNg7rUgI2PI7uOCAK/CHiJtifwMfyyAThiTCvwOIjYQcM1XAkFxI0FrnA2kzBksvCpRSFKrAL8AYaozlKYKgLhCA6MYBvQFSmgoE7CjJQG2VxLuzndmcUjD4edngCdhUPwd5uo2kHNlAbKsdDFnL4xQPcRSOLiH50CfZl9g6HQmDKjZNOGwWz8PEkSiHJw754T4oyera7kO7iFwxkaFQnx5YJP4RwoqbkBhilQBfreIIbUQ6DSUZHdQY8xWe+41dZAweSHI6LeEQFYUI84pqYehAOnE1yoomlTfgoM5f1poOO8v8G5DhOquTfP5yOFLOBRPCdeSILgU3LcGuC0mOBAy8FcbsVSvlFpDdrCPm5YWuRyBICJi0m4ezXI4sUuVjeZNViRRtMFvhAYXVPLmoVhp6H7EwApsqTiuJACsCHSjGh0bRIIZkK5hpWyYrZzf7T2RjmaGLlpTlzZDAaYWLLI1hCz9whuCJBi9YjxrhYaqx+nbwmPSUdIh0qHSYdLp1L76MP0z/QJ8Gk/DP9C32Zvk7fou/RD+lqNHtAGriszGI2wIZZIrydTTbJpliXrcuWsQ3YxmxzthXbju3EdmN7sX3YAewQdig7kh3DjmMnsJPYKeyT7FR2BvsMO5ddwC5in2eXsi+xK9lV7Fp2Pfs++ym7ld3OfsXuYQ+x37M/sOfYy+x19jf2FnuXfcBW43KvrIJp6cglOZLnyVPytLxC3lzeQt5F3lXeTd5D3lc+UD5YPkw+Uj5G/ox8pfwz+Tfyg/Kz8vPCF/qm/IECBrRSVurKqDKmLARxsVzZSNlC2UbZXtlJ2VXZQ9mn5+k8TDlaOVH5pHIqzGYQvUkG32nSCVPUDAmoEVAcdZLyjGcAaeOMtwHbuqBs4gTm3Tg6sdIMF5ZgUnXJEpI0O5Ad0uU4i/O0nS9lUEoiZi/olDh1AXlmOBNRKYE2gkmX5VkHKkcYBXqBo2MURAEPXT4Otk4HoGSbQ760nU6TtkuEDzOfINMgS2BwQvS9wPzMk2wpzXC6wcWEuAPzPu0IkdLFKZynQmu2pxlUg7WF+VISh3kB0dIE/ZkZHvJYCJywcBIupXXWjoVeRQ3ZFv4w1Lio21AggIRqo7Dq0lC4fos7WZgJJZiBYEBxUPxB00XZIHkSXG3pZEtoT4AKrx2K1BylkhB3S+QUvawZuj9BWQI9oH1Ar2EkAqAYbES7n11UvMRJihP0AEPR7d59kH9AHiwT8vL27P12AoliKLdw9cGYzeJR4S1tF4AgFld4mqGXU6CDPA2xtVBsneJNgKjQEpCFQunDsIQoS4G+iB0EEIFa4QY69BI8QyicZ20YVBCRMdIL3a7YtGGkdQz8hToFYARPQYmkbY6+UyA9TZDcKO17KBnS4i14UEBxXKSCh6LpSFAEIuHsN8961zgIGZaRomsUkVERZdtb2Qp7q1xYSX+1iwPcSqG1qESgQciR6CQGLQPVimmTJ2DHgOJZSkFP5TB5wjjBRsFNLurrFQ70ABUFNSO+L1bSoDouVtc4qh/e4dPo1IRL7ApQCroIZUNvx5FnsmGa4YTpQDF5WhTNJ2BOwRAniKLinjLKkCTDBEYpyYCkYjkPWgXDA+MOlUJP+FKYvDGq1R5ZkGlTbBbcw+TQVXQZFxmABKjxshhJkADJgIl7yhD4TDjcMRkMjWADHNEYLR2Yk9kSJhh9lkcyzAwtzwVHhoJXirZnYhoB4oXHSbxG3WJ+oHXWu4KqY5j8LpAb+TYXcijMoKno4U0wOUd3bYr1gYUIUwDbnIdr5mSI4SVA9LydCtCBszsWyKSdAqvDgEOn0BsPVj0wKYBZ+AVKQS+QX5JhQo4U3rWewmM9pYfIca7wm7C+SiowZHGWkrlzCyg7+5DYGCrXU5tFthOU2YcidAl0XhMrG+6BWTar3eF6COPKZh7mmqbIs2gZnuiKgYFCRalFnQRjgyhxZNSvGKJVtBt/DY/hgmyZqBYxi9AmucCVlq6LFCYXsWVwYWG8Fl5por8K3oMHVYG4ByyK+wbkIl6M9vopEorgIoqoRxNFiWA9UkBwzRJJlV5Sgd6hWM6L5+KAjjc9WNN1uecO65EDqhQNeQgwlrER2avnNMYm95zFfXrQNUcZPcYYMFVAlp6fVOm7HinNRDYcP/FD5DXQKgRwDgYw0XUwk2PS96L2R5exAk9Zmk7i/nCKkEZiUbOwIdnBxfgWj3kRynUdI7PjX+RCm0eZI0zxpQVVsRlGwQy98DGG0AyHDt3TaGLPMkMFbFsBMZSS8JPj2FCZeRUFQVvRLPTcyUX4IR5GoHFDcP8I0mMSpagqxcQ+RoCqRHgeMJZTmC8GCwkre5i4og4LYn0ewS78LjZ/z5X7l61ALizsMUFu0eFJEaIor2XoEbA0wKgnIintM3uJKKbcG7Qe24qROIg4pDdURREICsFeWeM7xsTKgt6Y0NmKKIb9kSKgTu3PKVl4zAFrqwrjOF1GQwWpZSi9pjnQKllUzzSKZFVkVZXhW5Ss9rwwMpK7LxjUHo11+CeITPpMpBYRfZAAIL0MuYkNaTmuAQg7dDYvIb0zMBphgnLgKL13X+d9JkEk/RG2WZumvblIScDk0BReHTRbC8rZYnYY4pb2H5ZseiVB03VXQb4DUUHL1AfzFGO8lII9ZmsrIh09sYyCPmHxsUiNiODf2WRiraAYH8pVQZK4cPUDV4recnegN94NQcnZ2b62CPS4uK+CuNAYUMeSNRGNC6MINxW+Vsv6c5dhDT3zYq2SPvqZD98FWNUupKiB2Vivh1G70Pb+hKZzUYyxETG3laJ3WGqvtcCOiW7Qo9EuGZQmwQa/l+yIAwtUdEHcVsC4GyFjYGM3YS6sS9Ynm5FtoMo9yL7kUHI0OZl8inyanEMuJFeQq4VfKOEjwujFBXvU3Kjf0FhdAuoBr9FgnsBLjuu8AowCNs7RHge0xAuMmiPIS/MUNSq6l4jwdAIcQis3WVKYxJijg/gBEo3jLYbIT8Q01CnY0nUBMNviPIRTVPN1OUO3ThEmUDiP+vCHo6kv/FD4RWcoF/pdVL2EiMpQuQtPEvQFoC7cxj/AdSlYKQjT4iISCQoClQydz4XTqYOhAlgidD9GD0KaoB8iHafYFnwMSAjdEnAXCEHR9SQiFMbRs7vmMaSOAYDBZY6efASBgBTFIu0EkBddw3UmQqMAX0yTuAAWCbkL5tDMmSAGtcFugxgWL+8gAt6BoxeAfKoT2wmJN0gWoVWrKzaIHlmjnFskoGxtBlTR68OLP9nF6PRhF1jKUVTQNij/DF5VZF4oJOQ1SKOAaAAxot5t203iVEH+pKXS+bKYOBrtiT24nAS15miExjAlQFNy/OEMfixZ1lBkoTQqnlHdZCpY2fKGVAZJpBFjAwAAIHO+ijPWiFFe+Nf6NY2bvf2yrDfLUK8R24Usps5c4emAwgdMXsawbZXrljGodGhf/BMxPYtAfEL8/llpFv1Ahy2hLGSL0AgFFPpLVDPwDUM1e2pAFi4winNa1eUSFUBjE9DMplDIDnrrmKkrjDhC1dICzkDlFpyaoh3z1Crn+r/cRNXeVCdRxcqyQtVWT9YJSVUIL5jXy6SNpHPJDWSxJIHuWkZWkE3IlmRbmOe7kb3J/uQQcgQ5hpxAPkFOJWeQs8n55GJyCfk6+Sa5mnyP/ID8lNxGfkHuIr8mD5A/kD+SP5EXyavkb+Qd8g+Qhpw6tARdH6QJBSOAdkUE2A50F7oHPZweRY+jJ9FTcDfQaIxOY8GQwLXCIkYmRbsCTS9A2mC5LKUpyoxx4X5N8HUGYPoCq6MfN+Nx4eydxlmCVp/wGZME/WJFRE4uooSEHYOiISzM4S7GCqGZmOC2S0D6Xdq/IVZKRLQTmtAZypYELdNQOJTxTmG38sLEDgvxFOOTdt/5XCe9pPhU+P4Kn1wbRAFINOhCW3gRxQILbxfSR3joxC0eT9OlRLgeRcVFSJKo1SXjtANTHSgSC7MSfXa5kAxCkICIhJITdIbHOZhns8/acT/Rv/yCvQDkE05SIGoiakU/ZQe9CkKypWINqQij7IhKxGOQNFB9nIooKrDOYdBiIZlIUa5o3ppLEFu8l2gpERVAO+PiNEXvC0cTGOPXe89j7GmRGiwdcTEsPCZt0XawbvMUGIeDRIsxHRphITTpI3dFz+LeF9epYBSJfblZpsrfnLpqq8yWQR4BTtBOx41AuE9CFyBfgIikp8M9IpuFeWQbhZXxUdXLPop+iXDJEyM0BNoEfOuAnNRNqim+wA9KqJb78xGkzGjfq/+oBor641VNc8T+nloU0epQTwKIA9N9nwZ+hMdFlQoZmPB9pVIFAbaoUPCzcSb9C4UplkqJZ1DNXuNjxY+wbXRVxAYIpKHSArPhLxVhAGp/HQNtn1Lf+issIbNoV08AygI4qUWfigU+vKfCnyzbGLigPkWtQbWK+6QCami6LPatAFC1TWHloJklzCZRqkJMhcl964Sog7ZcKqiurlldQWTXtxcLzEd7d3s2CJnF3muwFFgy1MJgB9kRu7woqgsS+bNFx2D1qiBTm+USWUgAvxYvWQBdWVhbAH3gpkYUTRwAmcFhLvJAU417uA2SY0QE4kjDsFTcNgV98t1hU9M0QK96m6JRha3RNB2EZXGmKcpI/4GjlIufte+tfYIDrpPla8YA2rZ+4Vmmfc6i06I9VRsIJknj0rbSJeRlQG2gWADejgFmXEgykpMlZAOyMTke0Ntp5AJyOUj6a8kt5A5yN3kYJPyfyevkLfIhSHYTUHQMcj2lC0GyY3TvNF1Bt6bb053p8Yj2ileiqMlIOgYiI+IY3g9CeBFJiuUUEJnosRCSE4T3EiZWnoX4EwGcwvmZTuZTcSHR86lhlrcnQSRPIfRqhULMZ3mdIJyKEz4MkpU3EbI1eTtpJh2ew/QPsrCjJmGnkcIXwZaQsRh7l6LvGGMLobocF4QQNCI+bBfOFKFPMnSqdtrNPGxAXvQaBqg/mqAVcP9NjrF2k6268COFxdI6KCmXtKCLSQNSg8ybHCdw1srareK8ToIlpMVxf1Ab4GuO0rNOhGiNiz1EvdMOF4gR3ZLoNhanwr2ZF97NosliNbUl5GmILYvXqiT/1/MmnGNDQAhPZkCosAlPMpEKJG1x1hQrQ80UMy0lovVRa7Lxkfz/9qyJeLSV/i/3UZrHcNrIigpVfNbqTDaC6KNn0P/iF5R8WyzzxniN37jVbuIm0mwsDVKVj6WT7VZ7so3brwMekVXjuHtcVma+VWx7Y4pSBDoVkmA+zP110FoljocWm6ysZWn6y2aNPwSTTPnIMlQhNRjjqSoLu5e5cn9ttuchE2JfQbNcRQOJ6Wqws2PKnyrWYJWe5SfcUDJZiDbsgdpwur5hGEMmMYwqHdcaio7v17AigS4totrUAIk8j9HC1OtlFtsKJ5jYs4fX5SICTK4Ulxj4IPpQXAIpDKJp/Uuld6n1zEcVW8KM/lGVOUBONgriuqpiXtMErMnoWsqsJ04fX8fUgNqWcPspFMzLWFj9IDcNzZaxBs5ANKkiqkouLMvZgugspYttgaTYNbqW8e/YoHEg/3xa4OTeQ9RUlmgGSFIBrbFGqAbX1lSxLZQyU+hudGcUm3CJh14NsAvmce5UNM0ofvyhSLF7JjzlBhTtBYGHXz5G6SIw8W3Wt7L7f3LRZvGNZbksbue01bfFxRXYJGO9U5vJroyvGWDYard3rMmyQ+M5zIl1WYlpbiq98LhZjwX+SMdJiXQYSN2wt9/ib+Rt8h75gOKyu0Et6oL8HaZz6AhtgByeS0fpGEjjeXQ+XQfQ9gI6QVuAuNcDubwB/Rjdlu5K96R7033pofRoejw9mZ5Gz6Ln0s/Sz9HL6JX0KvoN+i36PXoDvZn+kN5J76eP0mfoK/Rt+j79B5MYvsHFEfsq5rJ12ATrsC5bytZnG7HN2JZsW7Yj25XtyfZhB/ZWF09gn2Cnsc+w89nF7PPsBvZj9jOxs+IJ9kf2F/YSe0VeLq+QN5Y3lTeXPy4fK18sX4J2gEsRXMdgluNqE9gDYRNXoLIikANX9xKOXu8OLg1kTRHShFh+nEzIGDaCawMIfBG0JxnI4FSUA+gb9xF0NcD3GKGdA5wGUJjFIgxauPaFE6GTthHWosWMELqDznNAjz0JBnCykG+FpsqSSVwZSHs7DtLJJAUjJmhyFRufjuXNPGu18yagfxSsUO8UAOwpkGIxbmIQGz+F1siWMOwpWADjpNi6FEI9SVq4SUDNTVNc5wMtNS1W0QT+5tCl0GVxiJoBSIL6oE76hgPSrz3b0iRMeq4WIVKXiJULsZE/QydF1spaAOcjKFutk2ZHrHy1wlYzi3gdt6c1E3TMcFAXWDKSi0dZIBbAhBYS65HFohsYDaDZCnMjxlUY3PKRNbOkM8XRRoD8HVxVbbYxVEdtBQnPMNKnyUU3EvxBpJ/yYQrDF+cw4Cl0FRdXwHYC3SRWPeN2OkzQwxGAYo0nW2ETGo/+kTRsTsa4wpTCqKDRwZegYSmW4Hhb7AwAJskxyB4XzPIQOaSNicCwLI5dCmq/meVpmDbBvoT6khiwRDZBMrDbMmg2wAWMyYeMWRiAMYKnzTjvbT+YFGZWBgwG/AkGTQOonge4bqY2Jlu5MJ4S8SQVy0e4dNhprwcU5x2hHUPUlDGkDSEX+oeEj6zTM17wN8KCerZVXtxDmwfXh9TiEV9TfC8NrjHG0NEOF+oWzSQS4yEFHZu18og30iaMq5pOdhp8LG/FzXwsm8IXc+ArK4CfUWunuKVx9iLrmaqCUXExHuNIkDhoNYstInkX94skuNIsdurgEwRMuEG6nWdiq5Fb8LAw2Pt71tDihKIEceBJPNXBt0M0sqCtJmN5I2uEY52prB1kgACSKRi4ZtgMoOsiYSMRyToiUTyZTSZT7ah4Tn4KmpLpGlXupn0zgc8uhG0b+o4PZkjfjjMT1JXDxVqELbzUcV8N9t08IL3VOQg0dBGO3YMU9hqttcazjPCAFStHbDa6C/R1qjq2qgO4ICLEJu4ZMqEoiumKTlzXIUqppCaysEr7yEMT5ogi1HtvwapwO8vEWeNGl8dVDOFOhL+JDnOZHbhWaJoitJpiCt80Ey832FohHkZx4xssdiyaKSARhs8rRd9mrUFCpwo41VuP6vvd0evW77eAV6RhiXby4sFVDMNnqFhug2p0saS2i4E22zhjXhHdjX1i+FaGNesDBYlFNKh4oV3PMmRFtBlCv+JavDaCCOcXusBY8TIIplq4uwG+Y8F/9J0bmAfppKoe7Sl7XBzBd3b0BxL5Zay/LlmsB4qVKF7YxObQf3bL/1uFlN6Eu0gIAD9X1XshTAUi6q22Ce8B+lkVgZWgG2zYU9asj+AjVVeJHStF1CAj/cWkYqEoU7nYCaPSHumQKw3FJ/0VpZ59KA6yVsQviQUozCHCGF2uus4op6PYIkRMZCiKhohYvaoqcIxiVbxjLUbEBsR1RQPUoh+qWFCWe2/JEFC5iIQUX18xxOJc790fyhAv1v4YnwvM5rHCaB8uoieLV27oxIcpIV7CwXqgdN1xsEeBqXi5mDCkLiC3yGD25pTop016aDqAw4iiOPgeELFuI16TQmlZxBmvWXxS+7OYbaLjQpHch3mqgtNwMV6NsQnAYkiqssJs4SoZxvBjQb4GzPgS4MAWemIYC+CUjeFTGU0S5sI1zBrAiwuYDNqfkI3CnddeC5tdcRLrphhvp5I1p4erXCyxo7+7ILfn+zrpO4Bmj4UFEwSk9+YSwk75D/xJKfnXZTi8ies/+0tV6SLyF3K19G3pGukm6cfSbdKd0r3SI9Jj0lPS09Iz0gvSi9LL0qvS36S3pQ+IRHKynKxPNiKbkS3JgeQw8nFyjPAq4JrQZ8h55EJyCbmcfJ18h1xLbhD7jm8ltxN8B8fD5DHyFHmGPE/+KnYYvwuY16URrdIa4N25dFO6Bz2AXgBz52f0MfpH+hf6Hr78hMWsAdg0ZfMAny5h6wE6nWYbAD7F2Led2R6ATvcWu38PBnR6rCShaxFUVZAhxgTLF18LGYhXZOS4gNTCMKbGUhFAD6oM8EOho9DcrtMk5L2o+0TEhKGbGY5KDw1NJp2W8BxDCtCJ+TCZJj3PbifpezkgXV0VqFZAtiScpugvBuSjYHxSESelhIAck2bYbnbA7k6boH6T9lSmdoJ22AgnoZhm3Aon0xYY/mEzbcaT6GZp8iloPuhLwMCAhXgOgHiYThOec+F5FvtssTPhbPWxi1tZ45Cj/wPd1MlS1mwnIg/UAHo452GaFwFNuLMSNyiioyDFPZ6AmKfJMAWIFUIOrI2k00RAVcQ9vbiefsRTu7NEgAHEXgK38CLOJcWHAuYUbneRXpxConEiapsmKbrNoTEx7qHIXdwwWjzEABeAE2GcZBhXK8L0EPc0Ee7AQMM/QD7ZEtxniu4SDL9BJ7LYLQG4CJ3xIcbZcbHCILa1dsAiWaKEfFjse8b0CLwBRqKl0AmLyLNMNDJE+L6UiV2phXMG9292KS5JDuO+UaDpZBugXTvAuDq0HwTxEfzFxTpjLwAvd8VYxU1kSJe2ebsXjQaWAMMFRyDyROGcB0oAtHZJPE3EASAevpyrNRXixtJxHAVxn+PwQzZg92ACIP5kSwEwGQPFoe0cTY0JgiWjtzyJoacJ2FxKsfUYW76UjOIiBhpRGe6jTdpgaIU54nmAa+kSSv5A81lvc08lgozeyDR7antmdRUABe8rUAxUAehkTpEBtfBgiD1tvaij+z+BYcZUm9kYboyvFTRB1oT69iXVZguMKSIb6KZh27iXin2ZxOZFfC9TOMh6Eexbj4fUAcw2tFyTcy4bRMHlQIOUCzlngNimlZhVZBvEO0auC3hBi1gdRulHhCPF5cd+2Eyh2Ea+YpDvK/zq39W+/zvKlF0Lj0c/joi4qkBbApyhejLEG5Y4xg9RMgldtzVQN2W8r2CMs3jJVd10CdtMhK6IWJIWMeQCjs7r6Xgh2xULsJW5EBdVNZpSB5uk4EsEbaLpRbyC0GSUbExZ7lFNl3V5Sudqz6Pf65tfoiytnqzU1BIJ5uGTmXfZp+H3YqE3aRFEhLtQRa0zD4jsY10sZh8Q3v3PlfNktiMRaLiHBgEbbXRliJsQCs2NncMXXWC4hDe7iqLiUgC1i1VQAGvrY1wPOpM0Gd/zBVpeQxff2T5FXwx/S6xTs3DtZZi112PkXk34eb66Yi70GWNnvnbIPsAhitJLLVcU9Cb14rc0og8kXEO3X4TRZosEc1aIZXkKY7NgD37XJZMkjjyVCNbrc7DBGPzhry3LoSgzxkVqAwNrEOEr/ZPyARuSa1WZXXe22rj2XKDvClXs0WQu6ceHjSkfjaVirKxSTaPi7WJKXRbkQYcj6W+UNVQ6GambUDpA1H54DZld7jFrhmkaH9X4lixcaCYxWN0rFdEiOvrROJIvhAfMECspX8aIkUOJrmsW+UTJ2ri33rIdlG8zldZKPr7iDLL3lofI9dOEPIHv5cB3iwkQKmMo/ytiPjwEMJIctKmAuEg3SR2X5kifJn+VPpR2kHaR9gbMcaB0MBnmbT7JO3wx7/J1+RK+Hl/Kp/kGfGO+Od+Kb8234TvzXfhufA++J9+b78MP4ofwj/Nj+Qn8RH4qP4Ofwy/gl/LL+Zf5Ffwq/k3+HX4Nv57fyH/Af8R/zm/nv+C/4nfz3/Lf8Yf4I/wP/Cn+NP8jf4G/xP/KX+Gv8Tf4m/xt/i5/n3/A/8FnNEmjmqzhrgFDszRH8zRfC7RYq2mDWqpNautp09pybX1tY21TbTPtY9rW2rbaLtqe2t7aftoB2oHawdqh2pHaUdox2rHa8dqJ2snaKdqp2unaGdpZ2jnaedpntYu0z2uXapdrX9K+ol2pfV27SvuG9t/ad7Tvatdq12s3az/Sfqz9VPuZtkq7Q/uldpd2j/Yb7T7tfu1B7RHtUe0x7QntKe0Z7U/a89qL2kvay9pr2hvam9rftX9qMzqFea/qXNf0QE/0BfqEnulTeldfV1+mr6+v0DfWN9U317fWt9d30HfSd9Z31w/QD9IP1g/Vj9CP1k/Vz9DP0s/Wz9HP0y/QL9I/r39R/7J+pf41/Zv6t/Rv69/Rr9Zv1G/Wf6Dfot+u36Pfpz+uP6e/or+mv6H/TX9b/7v+T0MyQMAZ3EDz0jZcwzfKRmjExoAxaMwxGsZcY9RIjfnGuLHImDAyo23kRtdYYkwbK4yNjE2MLYytjG2MHY1djD2MvYyVxj7G/sYBxkHGYcYRxjHGicZJxqnGGcZZxnnGBcaFxsXGF4xLjTeMt4x3jfeM901iUlMxddM0bbNmNs0pc5m50tzH3M88xDzUPNw80jzaPNY8yTzDvNT8qnmTea/5kvlX81XzDfNDi1mypViG5VsD1rA1YiXWqDXfGrcWWU1rylrPWmYttza0NrY2tTa3PmZtZW1n7Wjtbe1rHWQdYR1lfdb6nPUF64vWV60fWrdYt1q3Wb+wfmndZz1gPWY9YT1lPWM9Z71g/Y/1svWK9ar1mvWG9ab1tvWO9a41Yyu2amu2bhu2a/t22Q7s2K7YNXvQrttD9hy7Yc+159nz7XXscXuhPWE37cxu2x07t7v2uvYSez17mb2xvam9mb2FvaW9lb21va29nb29vYO9i72bvZe90t7H3tfezz7APsw+3D7SPso+2j7GPtY+wT7J/oR9qn2afbp9ln22fY59rn2efYF9oX2RfbH9BfuL9pfsr9hX2l+1v2Z/3f4v+3v29faN9k32zfYP7Fvsn9i32j+3b7Nvt++wf2Hfaf/Svt9+0H7YfsT+vf2o/bj9pP2M/Zz9J/t5+wX7RftV+2/2W/Y79nv23+0P7dUOcVTHcVzHc0JnwBl06s6QM+w0nMRJnfnOOs4CZ5HTdFrOpDPl5M5iZ9rZwFnhbOZs4WzpbO1s62zv7ODs6Ozi7Obs5ax09nX2c/Z3DnAOcg5zDneOdI5yjnGOc453TnBOdk5xPuWc5nzaOdM52znX+axzkfM55xLnUudy58vOlc63nO8433Wuda5zfuj83LnNWeXc4dzl3O886DzsPOI86jzhPO084zzn/Ml5yXnVed35m/OW847znvN355/OjLPalVxAcC5zZVdxNddw8f9u8N2yG7qxW3MH3Lo77M5xR9wxN3XnuePuIrfpZm7bnXJzd7G7xN3I3cTd2t3J3cXd1d3D3dPdy93H3c89wD3IPcQ9zD3cPdI9xj3WPd79pHuWe7Z7jnuue557gXuhe5F7sfsF94vuZe6X3Cvdr7pfc69yr3Wvc29wb3Rvcm92f+je4v7EvdX9mXube7u7yr3D/bX7G/d+90H3Ifdh9xH3D+7j7pPu0+4z7rPuc+7z7ovuS+5f3dfc19033Dfdf7qrPckjHvVkT/W4p3mmZ3uu53uhF3mxV/XmemNe6s33xr1F3oTX9DKv4+Ve11vXW+Kt5y3zlnvrext4G3mbeJt5W3hbe9t423rbe3t5K719vQO8g7xDvMO8I7yPe0d5R3vHeSd4J3mf8E7xPuWd6p3rne993rvEu9S7zPuS92XvCu+b3jXe97zrvBu8G72bvVu9n3u/9O7y7vbu9X7t/dZ72Pu995T3R+8Z7znvT97z3qveO9573vveB96H3j992Vd923d8MJz9kh/6Vb/mz/Eb/nx/3F/gL/In/Mxf11/PX+Fv5G/sb+pv5m/h7+Dv5O/p7+2v9Pf19/MP8I/wP+4f7R/jH+sf55/on+x/yj/VP80/0z/LP9u/0L/Y/5z/Bf8S/1L/Sv8q/xv+N/3/9r/lX+1/z7/ev8G/0f+B/0P/Fv82f5V/h3+n/0v/Lv9+/0H/Mf8J/0n/af8Z/8/+8/4L/ov+X/2X/Vf8V/3X/Df8N/13/ff9D/x/+DMlqcRKckkr6SWrFJTmlOaVmqW8tKS0rLSitFFp09IWpa1K25Z2KO1c2ru0T2nf0kGlo0rHlI4rnVg6pfSp0mmlT5c+UzqvdFHp0tKVpa+VvlG6pvT90k9Lq0r3lB4pPVp6vPRU6dnSn0p/Lr1Yeqn019KrpddLb5beLr1ber80U5bLalkvLy+vKG9S3rS8eflj5a3K25a3L+9c3r28d3mf8r7l/cuHl48qH1s+sXxK+VPl08pnlM8pn1c+v/zZ8ufLl5W/Vr6q/I3yt8rXlK8r31D+cfkn5XvL95UfKj9dfrH8Uvnl8mvlN8pvld8pv1/+oPyP8kwgBWpgBE7gBUFQCWrBUNAI5gbzggXBoqAVTAWLg/WC5cEGwcbB5sGWwbbB9sHOwe7BnsE+wQHBQcFhwceDo4Pjg5ODU4LTgjODzwTnBRcGlwWXB18KrgyuCq4OvhtcF9wUfD+4Jbg1+HlwR/Cr4O7gN8H9wYPB74PHgyeDV4I3greDd4MPgplQCuVQC43QCUthEFbCwXAITPKxcF64TrggbIaT4eJwebh5+LFwy3DrcNtwj/Dg8NDwyPCY8LjwpPCT4enhWeG54fnhReEXwi+GV4RfDb8RXhv+KLwl/El4a/jzcFX4y/BX4d3hveF94YPhQ+Gj4WPh0+Ez4XPhC+FfwpfDV8PXw7fC98IPwpmIRnKkRVbkRKUoiipRLRqMhqLRaH40Hi2MFkXNaDKairrRetH60UbRJtEW0VbRNtHO0a7RntFe0d7RymjfaL9o/+iA6KDo4OjQ6PDoiOjo6Njo+OjE6OToE9Gnok9H50UXRBdGX4y+FH0l+nZ0dXRNdFP0w+hH0Y+jn0Q/je6IfhHdGd0d/TZ6KHok+n30aPSH6LHo8eiJ6Nno+eil6OXow1iOlZjHZmzFduzH1XggHoyH4jnxSDwaz4/H44XxorgZZ3Er3iDeMN4k3izePN4q3ibeLt4+3iHeMd4p3jXeM94rXhnvE+8XHxYfGR8VHxOfEJ8Ynxx/Iv5k/Kn41Pi0+NPxGfGZ8TnxefEF8Wfji+KL4y/El8RfjC+PvxRfEV8bfy++Mf5BfEv80/jW+Lb49nhVfGd8V3xf/ED8YPxs/Of4f+JX4zfit+J34nfj9+K/x/+IV1doBczCilmpVeqV4cqcykhlbmW0Mq8yv7KwMlFpVjasbFLZrLJFZcvK1pVtKttWtq/sWNm5smtlj8qelb0qKyv7VvavHFg5uHJo5bDKEZWjK8dUTqicVDm58onKpypnVy6sXFS5tPKVypWVr1X+q/LflW9Xrq5cU/le5frKDZWbK9+v/LDy48rPKqsqd1XurtxT+U3ld5UHKo9U/lB5rPJE5anK05U/Vp6tPFf5c+X5youVv1Reqvy18mrltcoblTcrb1ferbxfmak61VI1rMbVanWgOlptVierS6vT1fWrK6rbVfeo7lXdr7p/9cDqwdVDq4dVj6geXT2+enL1lOrZ1XOq51Y/X72keln1K9Urq1+rXlX9ZvU71aur361eU722en31xupN1Zur36/+sPqT6qrqL6tPVZ+pPlt9rvp89S/Vl6qvVF+tvlZ9vfpW9b3q+9UPq6trpKbU9JpZc2vlWlir1uq14dpILamN1ubVWrXJ2rLaBrUNa9vWtq/tXNu1tnttv9ohtUNrx9ROqJ1U+2Tt9NoZtbNr59c+W/tc7Yu1y2qX175cu6L21drXa/9Vu672w9qParfUbq3dXvtF7cHa72t/qD1ee7L2dO2Z2p9rz9delKQ87IZhd6DdtTtdp9FlYVduduVOl3a6DfFWrFbS7laS7k7N7D/868pK1kzQP+ZSpcPTJEXnYZBkjc4kbg9rdlLeWwhLRQR5sfiaJVmxo7BLxwnWRtpdKvxrnRxqxkCjDi7rdrqq2CsWiw1juLtMvJaP4ZYz8dY8gqGpcMpDvBkWLx9DDxsPRzpZK+/gW+T0UCxeYtwSXKZYnx6KKjsJ9tMuQpqKx+IO/CliL6hYiePiSv5PabLiBv6tyVOkE3nTripus6IyWRTG2v/eGnzl11giqlPbokX/XuZHmoaP/61ha5UGj93eA6xbPDF7HfrfW/t/S/QvfelffOQZ7RTXMDZLCQwpviGAFa1sL6VdD5vptrs6LnzGXVXso23n6Cm28K2JGF9LRQSyhryB5eRtcQfHvxOH7QxHH4fbTrBgE3kmw5enZVz44eKsv4tR0EpEoWHbiOik2NELbZ5shcVOxS4D/nOB80VpFL16PjolKVIPXxOXJ/jF/c+9V/IlMX6zFL/4EkbRORGJ3B2GlmANuBW3iXQrqlMxfo6JncXiJXdJl/R8zZ2k905JBYoZxPXeuI1DULxCj4s/ZIx2t5GE3SiES4qdSETZkLOVpaF4d2KI76TkPS86TrwJCm2BbuCjEKmu4HsUROW4sRkonXcZXozFOEQ4zeNm8cpJbJLgiGwdkqTjJBf7UrNie2rvmLUTET+SIjHGEnwLQzPFn2YDjwnHsYcTKBmDwXG3+P/Dv1EuZAFSVm4nwAMhthFPccbj7IiTHGmMPmGe4Q3x6kNokdjwKqaFeKcmjbEb+LJCClyD45ktIUk8AXyEm2WxHwnulRWNDJFS2OwuSZtYFDwqOorda4vepeIHSMlbaTx7LyzOkByxaATup85wVy2MYxPf3dfskiY6hrGCrtEJ00zcARmL8ifBExWphH1MYjHjOiIJHpB7ePHCTK2dIuNTjM1oc3ztITAj/kLOHB3nuOE4FhN/CYbXJzxfii/BwGqYGK52ICLmGcbOoOQS7WDYpyayQ4zSpYguaBfyBYhniPwi6ACpg+8kFPMKKdARtImxc/1zZJMEN+wm+ALKJFsrEWYS6xgo+Ov4NkgxmVCk9xKJd1YKjoUjvh4kxOmBY7xO8fLIcbLmHFcEkskGF+fYIVm8K5GJ95GAKpsC2Y/vxBSyLMxDZGmUTkghIewSrDXsDjba2exbGlMh9qAlLcjTLKZHV6uT7oF5ij1XhcIrUomCIQ1OLdJR8a2ehb5AyiFnAC8BrZD7cX9Cu08xQQrSv8raza4CxG20wwayl2hUp6fVcEAKPSdkHsE5nOHrYguVA5oXxqWVC6GLrAPpkRtzwWziFQRiPLr4sgCMSAG+Ehs8wg4OPsVO4EN8VSbuxI9x7aWXGNNhvQm+axX5uigBJTOQC4dKaFTobIKDJGoqduIDI+HGDmhLHhejm/WnC/IWiieQDbitBMexmF5Fbi5eZ4A5RbiwYKYwLWglZqQQe/jiTvE845gixPfD9ksXkwiHt5nhMxHVhHNSbA8Rx0yIUGwxsiCWiOzQLjgVs4iBFaKEYYSaaFAOLAbs0REb6rH49KMNT/BFrinK1QJTrOmYoBq+XrRLo1S83lQcOmHxulsWNvBNoBjzzTFDV+XANVgMJMuxKSDtOjhl4ZGQpaKbGOQXCmEATYR+/J/WzjVGkuuq433OvVW3qnqme2Z2ampn7cnsTnun4lnbMz29tc3sxh5s50GME8cgMFgQIKAARgQRRUjwAUWyhJAQEeIDSCggFKRI+EMQFq9AJPKJYCIlhIeRrAABJQFZKAoCPlhyFs7/nFvd1b2zawtndme663Xr1n2cc8+te36n3gG/RzaPRzbQMXmBhlfaie5IFU+lCe+jeq2/NDdEEzWldh2wMCotaBGU+rrxxGlV461hpe1Bq00bxDg+m5ZAW2tVrDX0zlhlqBHoZOhcPa3pHm7ulNqke0sr0NuchEO11uE41nR4jeumbQPTl3bTk2CNCFqyghYxJyi2TqKDAQ/HKNvB2j91R7KwQ/2k5nui1xQK351x0jieQ+py1U0No6Fbkuej8XwX4c26pFYjnyhxPOhCH4M8WEhOaQ6q1HQAYN0Fp1Z1tfBg+C9FeJJcLeP2eKoXyICuhOiGnoGQQRMZ22OcqD8WvpqkNykc0yuB1RaZVVfqs4ZzpU3qBVJruoJU8iKtp8ZfhTHodxm1oS1K/6u13ZaAJTeqkuX5HuRxU89ZHGi76kVmHlpjFfKQTyb4kR1XmzeaDQJVsDLWBkpvqXFmhXTqykYVOhzZYfQk+MYq0ZtiRWB4ZkNwObou99mUClYK1o5Va6llofsUTwE+MrLnTMCPdMGifZ1qx1OmSTQnjlDHHiMrqUORZlgdKjI+gebASGIcdFwD5WZ6/ySrTxIpQsibHVE69YNaWnLXqg7T0Chno1ICit2zegPfvglJiJYCVLrp7En/HxkZmRoWQTZ5I7mZ6nLVUbN/bG0JzOXyJK9LXbwSVMxCqMiuSa32J5c68EcdnZmgDpfEpmkVmEefy460hpEiJDGGZpP2lhOQ+sAugTab2JcamQIorXMP/Woy9MxnihIHvUA0oPZc6U7xIJrSUWmuknZVI/dBbo/H5RXrrupCKa0dfUuHUtpJMYaOd4EUz814h00l/zPVsCMYansTGwRYPzHTQHuSDsJxg6DWMqsws9kDacu8KWdvqvneqFoatAIkGqVlHBSXWoAq8uKwqzQv0MaiaWIdtNYVeD0oZXR+V6IXKiVuBI1qpo2OeE42IQQx0BL1C8fNGmNZjH8x0cB7ksFTHS/LzcF8n460MTQ6MI4SGIXUSJOhoKPJVaDT5TY76KllPEn2FyDZ1zpoK62ULXepSZRGq8tpvzY1P9KBYmmyy0YNR2bG+R08sw4fkLxrNQ0GLLqnVVmT0Y6u6LeMRtnV3k9LU1OWYts/KdpOVUYhnmkdxbGrHhHhFI9hMBENFFj2DeDrO4kVcbnQLk8CVA9acxMl4sSqVh5emYPIh35BQ/B6ZGBzDzKgqtD2dWx54mK8VB1/vp7u3YytGzeQjjBtVbCm0kTLOFqFMZPC5tGxlBXgayRqxUxTHb9gUkIGkjlGEGFs2g5ruoNaN9osopIsk8m7OusVPorVF/7mPxykT0SyTKAWkt0FfOiSkhS+QpF+yZ7na6xbZ1bn5j5Ii06ePmvXR1AIfaLzmmTWz21pTFxymmcAeSdYtpPnDPiJU89XSmfLioy90YJe6BpN19p10lhbPOgSdNr10xoJz24REZ/Es4Xlc6+e+LRZefOV/eW1nTOKoC0zT5LEc2ctS7uiepZId4nm8q6Wou7nBBQ+ay0y0xzvNM+9AnjojFWgNPconqcdlg8o5YeYk+6BWXW5+EfusLG9ndDtfrAaxHWSvfWZkUqWsKM7/Cw8+RkFRrd/ziXwzFll9xqXvfGfMx7blnA57+kOFXqnfL+uJ7zzlfxNf8xYxe72ZcD8utOJP+doAUIWE19uBByjP3huu8Bij+vup5UV52851j2DF7OykFznwphcUdBt7tTdk3Y5RotPGvugdJSshUO1/hK0nMHlrzHDWebma8O5dQe5Q2G716iEJRyMv20S3ZJYOn77cl1oge4OZ+jKxJeSv7VDx+RDkiZz3xGNyUBFlgWNmumPOIYMWHwQpaod3NI5aF4dyxszcbckrJg6ymChFPmMVkxLly41LMUHcAa3hmT11q7BLSvLzdJSN2hdV9l1Cli8UVxFaoDfJCqtB+lRVVlaaKm3CFtE6+kdGoBzpS5EhC9OX4Oayr9mfkWYPU//DiLmdUkZLGddSReKUkk+7uziXU627ZpIIWClLBlQ7ix5H917V2/xFIoEwfvbe16nWIzKfWidmpNZlpK2i0QvGBXos059C/pshu/oOAZZUFua+aJQOoMI+rPwaa776LcrhPm6bXadVqsLd+fKO+bTL211GlBXZc87J9PZqpgWxHQnJ27+EF0h0l+geGgIHU6SjbaCfPTac3PFgYC7S6XrWogfRZR165lntzPSSXedd3/WR1biYJHVAcxxcB1Kpp8t9F49Q425TgdouZGhc4qnOW1y/v/WvfPq5I5D/q3n+dmpy51mNhjrOPu45aoJcx/HeZNJaMHz0R7UmWdZHN0up6NsBbLfjgu/lGTmk2LeBt2s/tOlkdsCMcCqpsUHctHebKhejPktCmp9Vh9983KbZc+vtMogurTNC1P/d5+EO33FG/QrzFpSlszRpbxUYJ1h6NJ+bmvi9E293oO9w94v0D/Sfm+Vnqc/pk8qbeWv6LP0Bfp7eon+hb7Sibb4Cr1K/ysaMudVZWtd4DfxHu/zAT/Ax3yNr/ND/Ai/nR/jd/N38Hfz0/xefh+/n3+Uf4J/mj848/v/CP86f5yf4z/jF/iz4GnbFLlO0DVYhYM3UsoS3uEAd92hH0VPecx+T5tanaor2OGbcGG5dIXqK3SYlBVcmDClM1VnFjiWwP/86hiBhQGIHsp9wnQC4Fc9DtORYa4ZcRd0QYM6Jum7s4Xvc4i9wp2PEJfwWjneHOOksTJd8I5sB7hmdT9uJLPw9QeAt4ID+CSMEXxiNN5xk0YRgRqirlSo86g5ZGTEqHnxAwQ/FMjYkGBK3TfAYGO0MNIDE2UL7vDsUw8Es+Ixi6R0an2dhxkRZV7hxSZgvjOEizJSNDugC1bmWY+SDwibEZCH0fSQ4cadBMnWXpgCNIiyvzypR+rnrqSzAL+cajrSQHol0FqYGoWzUNAPoAGmijSsDP810pND9Cc3pzUQGKdw0R7pyw6dL4z75GQwBsv5+cbbalFf8TMcSbaPpMyOsVJmAue0o1HZHJdH18ZHzdb4aNLs1VuTWrbqzeNxircv5hBelQC9jLTwdXKyBCt9DPjD2FiLOpUcSkwxyM+puS6bgal0fvIzB9mbryaIh5HkA39u7j8cgBxNDYurLtmudSnyZLxcJNW/S/4caFf/bZXvctGF2KsvQHlkKpny3JSJ+gt3WCCtR7ab2VXsfe5biLI5BBdJMkwLdx4C9veUsxxEPt78N8kgJ9kQZ5ZRxucg/svnRvShUdej6ONiTs/pkFLek+xvx6E+I+Kchkif+0+7VMW2j4qxH8d7K9hYXxjpd+ZoAqf3yT3gQPW9Srr9Tyt0eodmQSE3iXkSzewANw+GYLMr3OpIF1ku6nSrIdkjCdGhjBGLDYpYH9C8rOxxTbeafE50dMXm5T1zx2fzLaNzuWJrU+474IRzjF7Bi/HOKM6s+gP+MjTzVc4jdiz+GGgmYJojtdFVnwvns6KAT1gAFSA3x+X0XJGEQZrKJj/mL4p+WyVXHHh/INqhCBu5xjvHvI5PA4WQyRDxLg+38tTvOwfQTw7QmvdDVANchKM30YEd5W2QbofYuMZnjeSutHg0Pnks2AiUV+/Gg/H9TmN0Hfc+TJ/rPdcb9nrT/SatET75ErxYR+VbpeakUX504+bvrCTPgky5EtLVnTXf672593DvSXqh92pvjd5D30lP0w/R++kZ9eYFFfJZ+kX6ZfoV+k36E/oUfZpeUA7kP9NX6WX6OveknFZ4U/mPB5H/+A7+dn6CnwLrBXKoqYD6g9iSXg9qSd3IbnzEv3OpPwXc1Ngn+ntIYEZW5S4HUCEDPHFPCUL8NDHKicYCUCik6CBgDQ2QYgLXQicglq3on6ntq4CXrcKhGyIqzDiURiErja2iDqCQzaNa11Y1iIaqLJVRrbj7Ejeoxq1LraqUUE93+QbBX1bfiBLkuC6LGttaQM1S/G631Nca+hpQnUJVDdaW+9ZvV+R+QCDX8SHm8ZMpMIcitOshKdERUMipBUaAb6cI7NEp6CYBxa1naMA3YMdU1eASjRla7RjKVooMUBYlylaTygILXOFa84D7y2YzC5yDDyM66tt0fAnVyMT5pEbVNIiKgUt4fokyIRn0XHNkNcStgiIRogOhbHjh2FTKUhJSv2s0Cfq+WV/4yXUOvPq8/NmQ33ffr0bAZn6PRkHaPi+CKYI3xBzGXLN8H8KJ/y7eSNaAZRIzx4EM7gqnZrD0iGJlcp8GJxOxcEO6+bmgjIQddiM/m2KK8mKgQFsRqdfESL5vPZtbb+3ID3JWumOBrlkr/yPc/FQmfZqvO5EXlwY/Z1xpdON0APYU8xqwsnRxKKm6KDoHTglgngZeRM/+D6ecbea5MQ4yxIRSoZhGeykD4R2QkHupMMuKizVRAIOOAYLpgYLtM9NfitRLbAUbwf4MpqL+ek7wcuVu8ohzD/nrzl3H7wZHSiQbiYDpQuo3LUqlTtBzKTpniBmXfrGSZZId349j8mTzSaInaQNXF+zWoe/OuSDy2Zlsznc3zLJf35NqbCdzoj1ofoUgPfh1KZyVJE3vahWwosZz41wy5vBwt6tXNUDcylXnLotI54f7UnO0I0ojGYouHnJ/P9VwP3KNVwDmEHF7BgdvVpMjkao/Bzi8g69tJJN4sSLMv1GBIStRI68q9z1ThoiZnIWYKWk8qoxhpTGsy9ZaR5HrjosItiWnPOyMwfC23l7vEfoyZT3upb2yt9O71NvvnYj9ACbDJ3rP9z7Z+3OlMny+92Lvn3r/2vtq7+Xe13r/03ul9w0th1VC2W6L5rqfJuA88h/wX/AX+EX+In+Jv8z/zv/BX1fiVxtdaMUN3ZrbcpXbdne7HfeAu+puuIfcW9073eNOpPi0RhRuE9QaAkNfvNbSw6XH70JITUBjakRYgdoadHEFlj+MphV4XSK0sDRjapiqUwaqNUK3FXsIY6M0EqBCphTfG3nbog06S2AROyPCEzVuFW6ssVHAemzBr1WLjVW8LOC1ygiuNXh3gAEkasVAVBaKO5jow5nGkSIFHWkwZ7i9lyIUNeiKRuBpsOABSTZgReFRxsrb1sB1ikooLbAMFiLrsrWkKhVbpqgEMbFAANNAQFKisjlM6+bU1fvT40kln9MrDopSQz3isWFw0Tgd7zVGTtZoOCaAgV2sgE1WRrk8og6gd708KYKlj/ZEfdaVwSpVDYykzoaMaDV0msjQu0Uj6MLlG7HYK1NBsquqT4HNFC0Bs4emiN4+0pBnMEiaSF4vZ39EQVXHNzSwn8YFjIgEpDfWhdSjiFHGssCx3eQG8qvUB0VpQN8gzEvUBrBftGGAe1mOdhkNRNEOCAw4vcEYHYxC3FQknLSF/TYOD0zbytbrt7+6HCEgaFODX40tP1b8e1PVk2tisoXmKByJXSgFqCbweKs8giWFCDu7VFvjvYGluiDaX5aSPqWyAaliYuzRdxG9xblfaqfoTNjqzNKHMd//s+0IOVKGJnUbLSNO/xRZlHwtJzeGUhhqgmlrbazRsdlC6963mN6sOzGHwB2ceIrBeVsDwmt4azKrSO8Hw4Bou9AhbyRSUaP+3BcHA3onNgu34mPQirsxFP8KyJOwNB44lwYQdvpRcQyTTITikDFvl4fg8i3FwA9tTm4LU6o6NZUwAFB4lq3sG4VI0XWMf/PHs4WYKW18mP42BwsTbEaCm71gDppaFl9MOo05PLRIxqkohBEtzbnqFNe+voemvk5QwWDQ4Bcpv8Dd+Zu1Qreyhh1K3adJcs5HM8VzUiA8cp6tb4Rt+bkQwpeSe39sqMMPtyG/OUjMOleZFgFmTYppYt6+m6ZI94GWCf13UsxhV45v+HXl8ostMBys8XAQZ/PU5tSCxxP63UzfpasqChvkcuSJs37WKuY4VZxBxa+v89YW+bViWxT1hRlrwKJpzD7bCVCECS0QQFKaA8yUgVZ4gc+wMZvrnc0oSjmk0PIW1sQbtexe1d3JvaoPPd2zipqTstUoQrwmGoe2YHgpP0ka3qq1el7L4iBKMUqDgvoDaaBbWDQAqin5ofWROKmYnm9fY/Yv7ORAYIDogPAAWc4BaOYtCxK4heY3f/k0DBpPhZupd92gK9wuN4hPl8GGCxpnBWsIUrS9dbUYrU3msctq/7ICT/z852ImI7McIcsTupym1TUariP5PjqCC0OdlETo6sEAj15x5bW8GGQ4Sn3wGA+Me/3ej9B/0w/0Pt37vGKxrtCUHqUn6Lvoe+i99D611D6wxO//CP0q/Rr9Bv0WfYw+Ts/RJ+h5+qMOx/9z9Df0Ir0UWf4v09dAYIK1BqKkKrHGPlXJIyKeojabwwQMIRaFxFA6NaKa7WanBHsJEeAao/mOauUt6kzV9AjK6bj1ELGJPQVJKiJ6NGks3tU46Gf7UYbl3arpj1UnxERxr8vA+Mj4QiQzIwznYQru5CHp39WwWwCNs5vDygQ1HgQj0bEIXic69dCBP1m1yOMlfPLkaDKNNONJdXT1uNyajicGbLwsJhjMsGrp86zv4PLU8bNCtpbPxVDFvtuxMixcN7u2ux1Q5mYK6rnToX6n/5IxtcjG34c8GItpIcbG2x+eOgS5QLApYM/y2ctb9tlf6uwS8/lc57loZdB3/RWxrkaSSubC5vHFDFpgRaMiL01zI8hMrtw8RA0p6OZlTOiwgpATTv+QMXEuNhniYgXvUg5JUiTDCz7NstUsOMlQyNJMrLALBSI8F4WMzv12unLewlgof5B9oi8YyX2s8gV9y7de5xd16g6RqCLsDqffTQPim1+UAwciaI5l7558XhGlgKBOmCQqQFSRR/tBgqpJGISVVcmonMHnOMRX8SmXksaRCKkHgPIHOd1ukoNK5+hZ6aO4w4bYLo+y11i83ybfRcjxvVJil0VUvUe+w1bdlG3c8XepWt+CrtzaRsltI3IqaIrTt1z3lD6zYQFENph+XF/MJj8V34rtZxpYyZ9XiciPO/eoT/K8CsPNAW+JnFDJCfltslyDm/T17UnuQvmUc0+V/DYxXFHviRs85DhHjXgUROZFtjlR0X5wXioiLcQIkqrI8hSvO6ocR4scdOlNb6YjLENEHcmgh5mfBr75ylseGnoLOqL/0xQa7EMf0sBv5MaZyw4kDSmZbE/EW1+Kez2V4pIcDOUO3y/HcmkeQ9kWjZn0JXeZHBWrTDLEyXlJYyTn1ViahRf5jBDFYnoBBcn+52X7SA5fkN9H5XIxqN3jcqsyuGxf2u/9cp/H5Zg0skyMTXc+44B5spMe02foA71EZN6l9cn6JfrMzQ/eQ884eubmn/4fpcscsAB42m2PMW7CQBREZwEThSLKBRL9dCBhZ+0CJJIqIBeUFBTpLOMYS8iLjEFCSpnz5Bw5Sw6QKgXjZRWlwM28v56d+QvgBp9QOH93eHas4OHNcQtXeHfcxgO+HHfo+XHs4VbdO+7CU090qs41p4m91bBCD6+OW+zdOG7jBR+OO/R8O/Yg+HXcRU89YgqDLY6oUCDHGjUdfaQYUCNohBhhSJ4hwYGeFXnOOyUwNdtjVeTrWvrpQCIdjoYySw7FSuaGvwumNL4dMTUlZYGMHXtumbAPiyzfbxJCbH211YqOzHYHbBe+Vf4lnecQY/h0+H8bIjZlHZsqzyQKtEzENlLDsR/5zWqX9lmyqeJc2HNhVpMWWG26scyqXWFK0ToMtNZyIeQEnThITgAAAHjabc5HTkNhDADhNwkQem+hhd7L++00JDa03IUNO+7HzQDBLLFkzcr6XDWq3/n6rNrVf/Pws1SNqkmDJmOMM0GLSaaYZoZZ5phngUWWWGaFVdZYZ4NN2myxzQ677NFhnwMOOeKYE04545wLLrnimhtuuaOmECRdevQZMOS+9fH+Nip1bQf2yT7bF/tqR38t3pViw6bt2p7tW50ytP5RHq1+0S/6Rb/oh37oh37oh37oh37oh37oh37oh37oh37op37qp37qp37qp37qp37qp37qp37qp37qd+MbJHSEsAAAAAAAAf//AAJ42mNgYGBkAIKLp/cbguhLr4rPwmgAV5sIhgAA") format("woff"); font-weight: normal; font-style: normal; }

/*  PRINT STYLES */
/*  Styling for printed content. Adapted from HTML5BP. http://html5boilerplate.com/ */
@media print { /*  Universal selector. Reset all content to transparent background, black color, and remove box and text shadows. */
  * { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
  /*  Specifies page margin */
  @page { margin: 0.5cm; }
  /*  Underline all links */
  a, a:visited { text-decoration: underline; }
  /*  Show URL after links */
  a[href]:after { content: " (" attr(href) ")"; }
  /*  Don't show URL for internal links */
  a[href^="#"]:after { content: ""; }
  /*  Specifies the minimum number of lines to print at the top and bottom of a page. */
  p, h1, h2, h3 { orphans: 3; widows: 3; }
  /*  Avoid inserting a page break after headers */
  h1, h2, h3 { page-break-after: avoid; }
  /*  Change border color on blockquotes and preformatted text. Avoid page breaks inside the content */
  pre, blockquote { border-color: #999; page-break-inside: avoid; }
  /*  Displayed as a table header row group */
  thead { display: table-header-group; }
  /*  Avoid inserting a page break inside table rows and images */
  tr, img { page-break-inside: avoid; } }

/* Custom things */
@page { margin: 0.7cm 1.4cm; }

@media print { .back-top-link { display: none !important; }
  .main-footer { margin-top: 1cm; }
  .main-footer .sitemap { display: none; }
  .main-footer a.back-top-link { display: none; }
  .main-footer .colofon li { display: none; }
  .main-footer .colofon li:first-of-type { display: block; }
  .main-header { height: 120px !important; }
  .main-header .logo { margin-left: 0 !important; }
  .main-header .logo img { display: block; }
  .main-header .toggle--navigation { display: none; }
  .nav--quick { display: none !important; }
  .page-section { display: none; }
  .widget--share { display: none; }
  .widget--tags { display: none; }
  .page-header .page-header-cnt { height: auto; }
  .page-header .container { position: static; padding-top: 0 !important; padding-bottom: 0; padding-left: 0; }
  .page-header h1 { padding-top: 0; color: #141414 !important; font-size: 34pt !important; }
  .page-header.header--overlay .page-header-cnt::after { display: none !important; }
  .page--project-detail .page-aside { float: right; width: 6cm; border-left: 1pt solid #eaeef2; font-size: 0.7777777778em; padding-left: 1cm; margin-left: 1cm; margin-bottom: 1cm; padding-top: 0; position: relative; top: -120px; }
  .page--project-detail .page-aside .widget { margin: 0; }
  .page--project-detail .page-aside .widget--summary .list--icon { display: none; }
  .page--project-detail .page-aside .widget--map { margin-bottom: 50px; }
  .page--project-detail .page-aside .widget--map figcaption { display: block; color: #fff; background: #16315b; padding: 0; position: absolute; top: 100px; }
  .page--project-detail .page-aside .widget--map figcaption strong { display: block; }
  .page-content, .page-intro { padding: 0; width: 10cm !important; font-size: 11pt; } }

/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap, .fancybox-skin, .fancybox-outer, .fancybox-inner, .fancybox-image, .fancybox-wrap iframe, .fancybox-wrap object, .fancybox-nav, .fancybox-nav span, .fancybox-tmp { padding: 0; margin: 0; border: 0; outline: none; vertical-align: top; }

.fancybox-wrap { position: absolute; top: 0; left: 0; z-index: 8020; }

.fancybox-skin { position: relative; background: #f9f9f9; color: #444; text-shadow: none; border-radius: 4px; }

.fancybox-opened { z-index: 8030; }

.fancybox-opened .fancybox-skin { box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); }

.fancybox-outer, .fancybox-inner { position: relative; }

.fancybox-inner { overflow: hidden; }

.fancybox-type-iframe .fancybox-inner { -webkit-overflow-scrolling: touch; }

.fancybox-error { color: #444; font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; margin: 0; padding: 15px; white-space: nowrap; }

.fancybox-image, .fancybox-iframe { display: block; width: 100%; height: 100%; }

.fancybox-image { max-width: 100%; max-height: 100%; }

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { background-image: url("/typo3conf/ext/boskalis_template/Resources/Public/img/Icons/fancybox_sprite.png"); }

#fancybox-loading { position: fixed; top: 50%; left: 50%; margin-top: -22px; margin-left: -22px; background-position: 0 -108px; opacity: 0.8; cursor: pointer; z-index: 8060; }

#fancybox-loading div { width: 44px; height: 44px; background: url("/typo3conf/ext/boskalis_template/Resources/Public/img/Icons/fancybox_loading.gif") center center no-repeat; }

.fancybox-close { position: absolute; top: -18px; right: -18px; width: 36px; height: 36px; cursor: pointer; z-index: 8040; }

.fancybox-nav { position: absolute; top: 0; width: 40%; height: 100%; cursor: pointer; text-decoration: none; background: transparent url("/typo3conf/ext/boskalis_template/Resources/Public/img/Icons/blank.gif"); /* helps IE */ -webkit-tap-highlight-color: rgba(0, 0, 0, 0); z-index: 8040; }

.fancybox-prev { left: 0; }

.fancybox-next { right: 0; }

.fancybox-nav span { position: absolute; top: 50%; width: 36px; height: 34px; margin-top: -18px; cursor: pointer; z-index: 8040; visibility: hidden; }

.fancybox-prev span { left: 10px; background-position: 0 -36px; }

.fancybox-next span { right: 10px; background-position: 0 -72px; }

.fancybox-nav:hover span { visibility: visible; }

.fancybox-tmp { position: absolute; top: -99999px; left: -99999px; visibility: hidden; max-width: 99999px; max-height: 99999px; overflow: visible !important; }

/* Overlay helper */
.fancybox-lock { overflow: hidden !important; width: auto; }

.fancybox-lock body { overflow: hidden !important; }

.fancybox-lock-test { overflow-y: hidden !important; }

.fancybox-overlay { position: absolute; top: 0; left: 0; overflow: hidden; display: none; z-index: 8010; background: url("/typo3conf/ext/boskalis_template/Resources/Public/img/Icons/fancybox_overlay.png"); }

.fancybox-overlay-fixed { position: fixed; bottom: 0; right: 0; }

.fancybox-lock .fancybox-overlay { overflow: auto; overflow-y: scroll; }

/* Title helper */
.fancybox-title { visibility: hidden; font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; position: relative; text-shadow: none; z-index: 8050; }

.fancybox-opened .fancybox-title { visibility: visible; }

.fancybox-title-float-wrap { position: absolute; bottom: 0; right: 50%; margin-bottom: -35px; z-index: 8050; text-align: center; }

.fancybox-title-float-wrap .child { display: inline-block; margin-right: -100%; padding: 2px 20px; background: transparent; /* Fallback for web browsers that doesn't support RGBa */ background: rgba(0, 0, 0, 0.8); border-radius: 15px; text-shadow: 0 1px 2px #222; color: #FFF; font-weight: bold; line-height: 24px; white-space: nowrap; }

.fancybox-title-outside-wrap { position: relative; margin-top: 10px; color: #fff; }

.fancybox-title-inside-wrap { padding-top: 10px; }

.fancybox-title-over-wrap { position: absolute; bottom: 0; left: 0; color: #fff; padding: 10px; background: #000; background: rgba(0, 0, 0, 0.8); }

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) { #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { background-image: url("/typo3conf/ext/boskalis_template/Resources/Public/img/Icons/fancybox_sprite@2x.png"); background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/ }
  #fancybox-loading div { background-image: url("/typo3conf/ext/boskalis_template/Resources/Public/img/Icons/fancybox_loading@2x.gif"); background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/ } }

/* --------------------------------------------------------------------- DEFAULT TYPORGAPHY  Basic styling for different typograhic elements  -------------------------------------------------------------------- */
body { font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif; font-size: 16px; line-height: 1.470588235; color: #141414; background: #ffffff; -webkit-font-smoothing: antialiased; }

@media (min-width: 1000px) { body { font-size: 18px; } }

.page-intro, strong { font-weight: bold; }

em { font-style: italic; }

sub, sup { position: relative; font-size: 85%; line-height: 0; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

::-moz-selection { color: #fff; background: #8fa8cb; }

::selection { color: #fff; background: #8fa8cb; }

::-moz-selection { color: #fff; background: #8fa8cb; }

/* ------------------------ Basic paragraph styles ----------------------- */
p { margin-bottom: 1.529411765em; }

.text--small { font-size: 0.8888888889em; }

.container > p { max-width: 80%; }

p:last-of-type { margin-bottom: 0; }

.page-content .meta { font-weight: normal; line-height: 40px; margin-right: -20px; margin-bottom: -15px; }

.page-content .meta:after { content: ""; display: table; clear: both; }

.page-content .meta .tag { background: #d5dee6; display: inline-block; font-weight: bold; height: 40px; padding: 0 20px; margin-bottom: 10px; float: left; }

.page-content .meta > * { display: inline-block; float: left; }

.page-content .meta span:nth-child(2) { clear: both; }

@media (min-width: 700px) { .page-content .meta { margin-right: 0; margin-bottom: 0; }
  .page-content .meta .tag { display: inline-block; margin-right: 20px; margin-bottom: 0; float: none; }
  .page-content .meta > * { float: none; } }

/* ------------------------ Basic Heading styles ----------------------- */
h1, h2, h3, h4, h5, h6 { line-height: 1.2; font-weight: normal; margin-bottom: 1em; padding-top: 1em; }

h1, .h1 { font-size: 4.4444444444em; line-height: 0.975em; padding-top: .5em; font-weight: bold; }

h2, .h2, .section--side-content h3 { font-size: 1.8888888889em; line-height: 1.3235294118em; font-weight: bold; }

h3, .h3, .nav li.heading strong, .block h2 { font-size: 1.3333333333em; line-height: 1.125em; font-weight: bold; }

h4, h5, h6, .h4, .h5, .h6 { font-size: 1em; font-weight: bold; }

.page-content h2, .page-content h3, .page-content h4, .page-content h5, .page-content h6 { margin-bottom: 7px; padding-top: 0; }

/* ------------------------ Blockquote ----------------------- */
blockquote { width: auto; margin: 20px -20px 0 -20px; background: #eaeef2; padding: 40px 20px; position: relative; }

blockquote span { font-style: italic; font-family: 'Adelle W01 Italic'; font-size: 1.3333333333em; display: block; line-height: 1.15; }

blockquote cite { margin-top: 20px; display: block; }

blockquote:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

blockquote::before { position: absolute; top: -40px; font-size: 3.3333333333em; }

@media (min-width: 700px) { blockquote { width: 80%; margin: 0 auto; padding: 40px; }
  blockquote span { font-size: 1.8888888889em; } }

/* ------------------------ Lists ----------------------- */
ul, ol { margin-bottom: 1.529411765em; margin-left: 2em; }

ul ul, ul ol, ol ol, ol ul { margin-bottom: 0; }

ul { list-style: disc; }

ol { list-style: decimal; }

.list--clean, .list--icon, .list--links, .widget ul, .overview.tx-solr-search-no-results ul, .section--side-content.slider ul { margin-left: 0; margin-bottom: 0; list-style: none; }

.list--clean li, .list--icon li, .list--links li, .widget ul li, .overview.tx-solr-search-no-results ul li, .section--side-content.slider ul li { position: relative; }

.list--clean li.heading, .list--icon li.heading, .list--links li.heading, .widget ul li.heading, .overview.tx-solr-search-no-results ul li.heading, .section--side-content.slider ul li.heading { padding-left: 0; margin-bottom: 5px; }

.list--bullet, .block.nav-teaser ul { padding-left: 15px !important; }

.list--bullet li, .block.nav-teaser ul li { position: relative; }

.list--bullet li::before, .block.nav-teaser ul li::before { content: '-'; position: absolute; left: -15px; font-size: 0.7222222222em; }

.list--striped li, .list--links li, .list--dropdown li, .block--list ul li, .widget--summary ul li, .widget--facts .list--icon li, .section--side-content.slider ul li { border-style: solid; border-top-width: 1px; border-color: #d5dee6; padding: 15px; }

.list--striped li:last-child, .list--links li:last-child, .list--dropdown li:last-child, .block--list ul li:last-child, .widget--summary ul li:last-child, .widget--facts .list--icon li:last-child, .section--side-content.slider ul li:last-child { border-bottom-width: 1px; }

.list--striped-light li, .list--dropdown li, .sitemap .list--links li, .block--links .list--links li, .popup aside .list--links li { border-color: rgba(255, 255, 255, 0.2); color: #fff; }

.list--striped-light li:focus, .list--striped-light li:hover, .list--striped-light li:focus + li, .list--striped-light li:hover + li, .list--dropdown li:focus, .sitemap .list--links li:focus, .block--links .list--links li:focus, .popup aside .list--links li:focus, .list--dropdown li:hover, .sitemap .list--links li:hover, .block--links .list--links li:hover, .popup aside .list--links li:hover, .list--dropdown li:focus + li, .sitemap .list--links li:focus + li, .block--links .list--links li:focus + li, .popup aside .list--links li:focus + li, .list--dropdown li:hover + li, .sitemap .list--links li:hover + li, .block--links .list--links li:hover + li, .popup aside .list--links li:hover + li { border-color: rgba(255, 255, 255, 0.2); }

.list--striped-light li > a, .list--dropdown li > a, .sitemap .list--links li > a, .block--links .list--links li > a, .popup aside .list--links li > a { color: #fff; }

.list--striped-light li > a:focus, .list--striped-light li > a:hover, .list--dropdown li > a:focus, .sitemap .list--links li > a:focus, .block--links .list--links li > a:focus, .popup aside .list--links li > a:focus, .list--dropdown li > a:hover, .sitemap .list--links li > a:hover, .block--links .list--links li > a:hover, .popup aside .list--links li > a:hover { background: #11294e; color: #fff719; }

.list--icon li { padding-left: 30px; }

.list--icon li::before { position: absolute; left: 0; }

.list--links li { padding: 0; }

.list--links a { display: block; padding: 8px 0; padding-left: 25px; font-size: 0.8888888889em; color: #141414; }

.list--links a:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.list--links a::before { position: absolute; left: 5px; font-size: 0.7em; line-height: 2.25; transition: left 100ms ease-in-out; }

.list--links a:focus, .list--links a:hover { text-decoration: none; background: #eaeef2; outline: 0; }

.list--links a:focus::before, .list--links a:hover::before { left: 7px; }

.list--links li:hover, .list--links li:hover + li { border-color: #eaeef2; }

.list--dropdown { display: none; background: #11294e; width: 100%; max-width: 500px; position: absolute; right: 0; top: 100%; z-index: 999; border: 1px solid #415471; }

@media (min-width: 1280px) { .list--dropdown.list--icon { max-width: 700px; } }

.list--dropdown li { height: auto; line-height: 1.2; padding: 14px 20px; list-style: none; }

.list--dropdown li:first-child { border-top: 0; }

.list--dropdown li:last-child { border-bottom: 0; }

.list--dropdown li:after { content: ""; display: table; clear: both; }

.list--dropdown.list--icon li { padding-left: 60px; }

.list--dropdown.list--icon li::before { left: 20px; }

.list--dropdown a { color: #fff; }

.list--dropdown a:after { content: ""; display: table; clear: both; }

.list--dropdown a:hover { color: #fff; }

.list--dropdown li > a { display: block; position: relative; }

.list--dropdown li > a:hover { color: #fff; }

.list--dropdown .actions { margin-top: 15px; }

.list--dropdown .actions .download { margin: 2px; }

@media (min-width: 700px) { .list--dropdown .actions { float: right; margin-top: 0; width: 140px; text-align: right; } }

.list--dropdown strong { font-weight: normal; display: block; }

@media (min-width: 700px) { .list--dropdown strong { float: left; width: 260px; } }

@media (min-width: 1280px) { .list--dropdown strong { width: 460px; } }

.list--dropdown a strong { float: left; }

@media (min-width: 700px) { .list--dropdown a strong { width: 80%; } }

.list--dropdown i { font-size: 0.8888888889em; }

.list--sitemap a { font-size: 0.8888888889em; border-style: solid; border-top-width: 1px; border-bottom-width: 1px; border-color: #d5dee6; padding: 8px 0; padding-left: 30px; display: block; margin-top: -1px; color: #141414; }

.list--sitemap a:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.list--sitemap a::before { color: #d5dee6; top: 8px; position: absolute; left: 5px; transition: left 100ms ease-in-out; }

.list--sitemap a span { vertical-align: text-top; }

.list--sitemap a:focus, .list--sitemap a:hover { text-decoration: none; background: #eaeef2; outline: 0; }

.list--sitemap a:focus::before, .list--sitemap a:hover::before { left: 7px; }

.list--sitemap > li > a { padding-left: 10px; }

.list--sitemap > li > a::before { display: none; }

.list--sitemap > li ul { margin-left: 20px; }

.list--sitemap > li ul ul { margin-left: 30px; }

.page-content ul, .page-content ol { margin-bottom: 1.529411765em; }

.page-content ul:not(.list--overview-action):not(.list--dropdown):not([data-pie-id]), .page-content ol { list-style: none; margin-left: 30px; }

.page-content ul:not(.list--overview-action):not(.list--dropdown):not([data-pie-id]) li, .page-content ol li { position: relative; counter-increment: step-counter; }

.page-content ul:not(.list--overview-action):not(.list--dropdown):not([data-pie-id]) li:before, .page-content ol li:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.page-content ul:not(.list--overview-action):not(.list--dropdown):not([data-pie-id]) li::before, .page-content ol li::before { content: '-'; position: absolute; left: -30px; font-size: 0.7222222222em; top: 5px; }

.page-content ul:not(.list--overview-action):not(.list--dropdown):not([data-pie-id]).list--checks li:before, .page-content ol.list--checks li:before { content: ""; }

.page-content ol li::before { content: counter(step-counter); font-family: 'Futura PT', 'futura-pt', sans-serif; font-size: inherit; top: 0; }

p:last-of-type + ul, p:last-of-type + ol { margin-top: 1.529411765em; }

ol:last-child, ul:last-child { margin-bottom: 0; }

/* ------------------------ Data Tables ----------------------- */
.responsive-table { width: 100%; overflow-x: auto; }

table { width: 100%; font-size: 0.9em; min-width: 600px; position: relative; border-collapse: collapse; }

table thead { font-weight: bold; }

table thead th { border-top-width: 3px; border-bottom-width: 2px; }

table thead h3 { margin: 0; display: inline-block; text-transform: uppercase; font-size: 1em; margin-right: 10px; }

table thead small { font-weight: normal; }

table tr { position: relative; }

table tbody tr:nth-child(odd) { background: #eaeef2; }

table th, table td { padding: 10px 10px; border-color: #cbd5df; border-style: solid; }

table th:not(:first-child), table td:not(:first-child) { text-align: right; border-left-width: 1px; }

table th:first-child, table td:first-child { min-width: 250px; text-align: left; }

table tbody tr:last-child td { border-bottom-width: 3px; }

/* ------------------------ Links ----------------------- */
a { color: #8fa8cb; text-decoration: none; transition: color 200ms ease-in-out, background 200ms ease-in-out; }

a:focus, a:hover { color: #11294e; text-decoration: none; }

a:focus img, a:hover img { border: none; background: none; }

a img { border: none; background: none; }

.link--bordered, .list--icon a, .link--phone, .block--contact ul a, .section--side-content .content--primary > a, .section--side-content.slider ul .slide-item { color: #16315b; }

.link--bordered span, .list--icon a span, .link--phone span, .block--contact ul a span, .section--side-content .content--primary > a span, .section--side-content.slider ul .slide-item span { border-bottom: 1px solid #16315b; }

.link--bordered:focus, .link--bordered:hover, .list--icon a:focus, .link--phone:focus, .block--contact ul a:focus, .section--side-content .content--primary > a:focus, .section--side-content.slider ul .slide-item:focus, .list--icon a:hover, .link--phone:hover, .block--contact ul a:hover, .section--side-content .content--primary > a:hover, .section--side-content.slider ul .slide-item:hover { text-decoration: none; }

.link--bordered:focus span, .link--bordered:hover span, .list--icon a:focus span, .link--phone:focus span, .block--contact ul a:focus span, .section--side-content .content--primary > a:focus span, .section--side-content.slider ul .slide-item:focus span, .list--icon a:hover span, .link--phone:hover span, .block--contact ul a:hover span, .section--side-content .content--primary > a:hover span, .section--side-content.slider ul .slide-item:hover span { border-color: #8fa8cb; }

.link--icon:before, .link--phone:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.link--icon::before, .link--phone::before { display: inline-block; margin-right: 10px; color: #141414; }

.link--phone:before { content: ""; }

.link--std, .content-cnt a:not(.btn) { border-bottom: 1px solid #8fa8cb; color: #8fa8cb; }

.link--std:focus, .link--std:hover, .content-cnt a:focus:not(.btn), .content-cnt a:hover:not(.btn) { text-decoration: none; border-color: #16315b; }

/* ------------------------ Images ----------------------- */
.image--page { display: block; }

@media (min-width: 700px) { .image--page { margin-right: -40px; } }

.image--page img { width: 100%; display: block; }

.image--page figcaption { background: #eaeef2; padding: 16px 20px; }

/* ------------------------ Icons ----------------------- */
[class^="icon-"]:before, [class*=" icon-"]:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.icon-arrow-alt::before { content: ""; }

.icon-arrow-down::before { content: ""; }

.icon-arrow-left::before { content: ""; }

.icon-arrow-right::before { content: ""; }

.icon-arrow-select::before { content: ""; }

.icon-arrow-top::before { content: ""; }

.icon-arrows-left::before { content: ""; }

.icon-arrows-right::before { content: ""; }

.icon-audio::before { content: ""; }

.icon-calendar::before { content: ""; }

.icon-checkmark::before { content: ""; }

.icon-close::before { content: ""; }

.icon-download::before { content: ""; }

.icon-excel::before { content: ""; }

.icon-external-link::before { content: ""; }

.icon-facebook::before, .btn.fb::before { content: ""; }

.icon-folder::before { content: ""; }

.icon-googleplus::before, .btn.gplus::before { content: ""; }

.icon-group-people::before { content: ""; }

.icon-hamburger-menu::before { content: ""; }

.icon-linkedin::before, .btn.linkedin::before { content: ""; }

.icon-mail::before, .btn.email::before { content: ""; }

.icon-marker::before { content: ""; }

.icon-min::before { content: ""; }

.icon-pdf::before { content: ""; }

.icon-phone::before { content: ""; }

.icon-play::before { content: ""; }

.icon-plus::before { content: ""; }

.icon-print::before, .btn.print::before { content: ""; }

.icon-quote::before { content: ""; }

.icon-search::before { content: ""; }

.icon-sort-grid::before { content: ""; }

.icon-sort-list::before { content: ""; }

.icon-sort-map::before { content: ""; }

.icon-sub::before { content: ""; }

.icon-twitter::before, .btn.twitter::before { content: ""; }

.icon-vessel::before { content: ""; }

.icon-vessel-hopper-barge::before { content: ""; }

.icon-vessel_barge_hopper::before { content: ""; }

.icon-vessel_barge_inland::before { content: ""; }

.icon-vessel_barge_ocean-flat-top::before { content: ""; }

.icon-vessel_barge_ocean-super-pallets::before { content: ""; }

.icon-vessel_dredger_backhoe::before { content: ""; }

.icon-vessel_dredger_cutter_suction::before { content: ""; }

.icon-vessel_dredger_floating_crane::before { content: ""; }

.icon-vessel_dredger_trailing-suction-hopper::before { content: ""; }

.icon-vessel_offshore_anchor-handling-tug::before { content: ""; }

.icon-vessel_offshore_anchor-handling-tug-2::before { content: ""; }

.icon-vessel_offshore_diving-support::before { content: ""; }

.icon-vessel_offshore_fallpipe::before { content: ""; }

.icon-vessel_offshore_floating-sheerleg::before { content: ""; }

.icon-vessel_offshore_heavy-lift::before { content: ""; }

.icon-vessel_offshore_multipurpose-cable-laying::before { content: ""; }

.icon-vimeo::before, .btn.vimeo::before { content: ""; }

.icon-world::before { content: ""; }

.icon-youtube::before, .btn.youtube::before { content: ""; }

i.download, a.download { background: url("../img/Flags/Dutch.png") no-repeat; background-size: 18px 14px; width: 20px; height: 16px; display: inline-block; border: 1px solid #fff; transition: none; }

i.download:focus, i.download:hover, a.download:focus, a.download:hover { border-color: #8fa8cb; }

.download.english { background-image: url("../img/Flags/English.png"); }

.download.french { background-image: url("../img/Flags/French.png"); }

.download.spanish { background-image: url("../img/Flags/Spanish.png"); }

.download.portuguese { background-image: url("../img/Flags/Portuguese.png"); }

.download.german { background-image: url("../img/Flags/German.png"); }

.download.swedish { background-image: url("../img/Flags/Swedish.png"); }

.download.finnish { background-image: url("../img/Flags/Finnish.png"); }

.download.estonian { background-image: url("../img/Flags/Estonian.png"); }

.download.russian { background-image: url("../img/Flags/Russian.png"); }

.download.brazilian, .download.brazilian-portuguese { background-image: url("../img/Flags/BrazilianPortuguese.png"); }

i.download { float: right; }

.inline-flag { width: 20px; vertical-align: middle; margin-top: -4px; margin-right: 10px; }

/* ------------------------ Heading section : Striped heading ----------------------- */
.heading--section { max-width: 90%; }

.heading--section, .page-content .heading--section { padding-top: 20px; }

.heading--section::before { content: ''; width: 60%; height: 10px; background: #141414; display: block; position: relative; top: -20px; }

.heading--sectionh1::before { left: 5px; }

@media (min-width: 1000px) { .heading--section { max-width: 80%; }
  .heading--section::before { width: 240px; } }

.downloads--header { margin: 30px auto; text-align: center; }

.downloads--header:before { margin: 0 auto; }

.page-section > h2.heading--section, .page-content .heading--section { text-align: center; margin: 0 auto; }

.page-section > h2.heading--section::before, .page-content .heading--section::before { margin: 0 auto; }

.page-section > h2.heading--section { margin-bottom: 22px; padding-top: 20px; }

@media (min-width: 700px) { .page-section > h2.heading--section { margin-bottom: 52px; } }

.page-content .heading--section { margin-bottom: 60px; }

.heading--center { margin-bottom: 25px; text-align: center; }

/* ------------------------ Custom functions  ----------------------- */
.text--hidden, .btn--top span, .btn--scroll span, .btn--flag span, .btn.toggle--navigation span, .block .btn.close span, .accordion-cnt .slide .btn--close span, .widget--share .btn span, .toolbar .sort .btn span, .toolbar .view-switch .btn span, .pagination .first a span, .pagination .last a span, button.btn--reset span, .fancybox-close span, .form--directions button span, .search-form button span, .search--large .label { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

@font-face { font-family: empty; src: url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAAQ0AAoAAAAAA+wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAJ4AAACeXQ48j09TLzIAAAGUAAAAYAAAAGAIIgbWY21hcAAAAfQAAABEAAAARAAyAGlnYXNwAAACOAAAAAgAAAAIAAAAEGhlYWQAAAJAAAAANgAAADb9mzB5aGhlYQAAAngAAAAkAAAAJAHiAeVobXR4AAACnAAAABAAAAAQAAAAAG1heHAAAAKsAAAABgAAAAYABFAAbmFtZQAAArQAAAFdAAABXVqZXRlwb3N0AAAEFAAAACAAAAAgAAMAAAEABAQAAQEBDHNwYWNlLWVtcHR5AAECAAEAOvgcAvgbA/gYBB4KABlT/4uLHgoAGVP/i4sMB4tr+JT4dAUdAAAAfA8dAAAAgREdAAAACR0AAACVEgAFAQEMFxkbHnNwYWNlLWVtcHR5c3BhY2UtZW1wdHl1MHUxdTIwAAACAYkAAgAEAQEEBwoN/JQO/JQO/JQO/JQO+JQU+JQViwwKAAAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAABAAAAAIAHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADAAAAAIAAgAAgAAAAEAIP/9//8AAAAAACD//f//AAH/4wADAAEAAAAAAAAAAAABAAH//wAPAAEAAAABAAAAeR2GXw889QALAgAAAAAAzz54vgAAAADPPni+AAAAAAAAAAAAAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAABQAAAEAAAAAAAOAK4AAQAAAAAAAQAWAAAAAQAAAAAAAgAOAGMAAQAAAAAAAwAWACwAAQAAAAAABAAWAHEAAQAAAAAABQAWABYAAQAAAAAABgALAEIAAQAAAAAACgAoAIcAAwABBAkAAQAWAAAAAwABBAkAAgAOAGMAAwABBAkAAwAWACwAAwABBAkABAAWAHEAAwABBAkABQAWABYAAwABBAkABgAWAE0AAwABBAkACgAoAIcAcwBwAGEAYwBlAC0AZQBtAHAAdAB5AFYAZQByAHMAaQBvAG4AIAAxAC4AMABzAHAAYQBjAGUALQBlAG0AcAB0AHlzcGFjZS1lbXB0eQBzAHAAYQBjAGUALQBlAG0AcAB0AHkAUgBlAGcAdQBsAGEAcgBzAHAAYQBjAGUALQBlAG0AcAB0AHkARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=) format("woff"); }

/*-------------------------------- Buttons and button links --------------------------------- */
.btn { display: inline-block; font-size: 0.8888888889em; padding: 0 15px; line-height: 40px; font-weight: normal; background-color: #8fa8cb; color: #fff; margin: 0; height: 40px; border-radius: 0; transition: background 650ms ease-in-out; }

.btn:active { outline: 0; }

.btn::before, .btn::after { padding: 0 5px; display: inline-block; }

.btn span { padding: 0 5px; }

.btn:focus, .btn:hover, a .btn:hover { color: #fff; }

.btn:focus, .btn:hover, a .btn:hover { background-color: #16315b; text-decoration: none; }

button, .btn { cursor: pointer; text-align: center; vertical-align: middle; -webkit-appearance: none; }

.btn:first-child, input.btn { margin-left: 0; }

button:focus, .btn:focus { outline: 0 !important; }

.btn--top, .btn--scroll, .btn--flag, .btn.toggle--navigation, .block .btn.close, .accordion-cnt .slide .btn--close, .widget--share .btn, .toolbar .sort .btn, .toolbar .view-switch .btn, .pagination .first a, .pagination .last a, button.btn--reset, .fancybox-close { width: 40px; padding: 0; /* 	&:hover::before { transform: scale(1.1); } */ }

.btn--top:before, .btn--scroll:before, .btn--flag:before, .btn.toggle--navigation:before, .block .btn.close:before, .accordion-cnt .slide .btn--close:before, .widget--share .btn:before, .toolbar .sort .btn:before, .toolbar .view-switch .btn:before, .pagination .first a:before, .pagination .last a:before, button.btn--reset:before, .fancybox-close:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--top::before, .btn--scroll::before, .btn--flag::before, .btn.toggle--navigation::before, .block .btn.close::before, .accordion-cnt .slide .btn--close::before, .widget--share .btn::before, .toolbar .sort .btn::before, .toolbar .view-switch .btn::before, .pagination .first a::before, .pagination .last a::before, button.btn--reset::before, .fancybox-close::before { position: relative; transition: all 300ms ease-in-out; }

.btn--submenu:before, .btn--back:before, .pagination .prev a:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--submenu::before, .btn--back::before, .pagination .prev a::before { font-size: 0.8em; position: relative; }

.btn--link:after, .btn--center:after, button.btn--submit:after, .powermail_fieldwrap_type_submit .btn--submit:after, .pagination .next a:after, .section-cnt[class*="teaser--"] .btn--cta:after, .list--overview-action .btn:after, .section--side-content .content--primary > a:after { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--link::after, .btn--center::after, button.btn--submit::after, .powermail_fieldwrap_type_submit .btn--submit::after, .pagination .next a::after, .section-cnt[class*="teaser--"] .btn--cta::after, .list--overview-action .btn::after, .section--side-content .content--primary > a::after { font-size: 0.8em; position: relative; }

.btn--labeled span, .list--overview-action .btn span { display: none; }

@media (min-width: 700px) { .btn--labeled span, .list--overview-action .btn span { display: inline-block; } }

.btn--submenu, .btn--back, .widget--share .btn, .btn.grid, .btn.list, .btn.map { /* 		&:hover::before { transform: scale(1.4); } */ }

.btn--submenu::before, .btn--back::before, .widget--share .btn::before, .btn.grid::before, .btn.list::before, .btn.map::before, .btn--submenu::after, .btn--back::after, .widget--share .btn::after, .btn.grid::after, .btn.list::after, .btn.map::after { -webkit-transform: scale(1.35); transform: scale(1.35); }

/*-------------------------------- Button variations _________________________________ */
.btn--link, .btn--center, button.btn--submit, .powermail_fieldwrap_type_submit .btn--submit, .pagination .next a, .section-cnt[class*="teaser--"] .btn--cta { margin: 5px; }

.btn--link:after, .btn--center:after, button.btn--submit:after, .powermail_fieldwrap_type_submit .btn--submit:after, .pagination .next a:after, .section-cnt[class*="teaser--"] .btn--cta:after { content: ""; }

.btn--link::after, .btn--center::after, button.btn--submit::after, .powermail_fieldwrap_type_submit .btn--submit::after, .pagination .next a::after, .section-cnt[class*="teaser--"] .btn--cta::after { left: 0; transition: background 100ms ease-in-out, left 100ms ease-in-out; }

.btn--link:hover::after, .btn--center:hover::after, button.btn--submit:hover::after, .powermail_fieldwrap_type_submit .btn--submit:hover::after, .pagination .next a:hover::after, .section-cnt[class*="teaser--"] .btn--cta:hover::after { left: 5px; }

.btn--center { display: block; max-width: 300px; margin: 40px auto 0; }

.cnt--overview + .btn--center { margin-top: 0; }

.btn--top { position: fixed; bottom: -40px; z-index: 40; right: 20px; transition: background 200ms ease-in-out, bottom 100ms ease-in-out; }

.btn--top:before { content: ""; }

@media (min-width: 700px) { .btn--top { right: 40px; } }

@media (min-width: 1000px) { .btn--top { right: 4vw; } }

@media (min-width: 1280px) { .btn--top { right: 8vw; } }

@media (min-width: 1441px) { .btn--top { right: 15vw; } }

.btn--top.fixed { /* 			position: fixed; */ bottom: 0; }

.btn--top::before { top: 0; }

.btn--top:hover::before { top: -3px; }

.btn--light-blue, .btn--top { background: #eaeef2; color: #141414; }

.btn--white, .popup aside .btn, .sitemap .widget--share a.btn, .block .btn.close { background: #fff; color: #16315b; }

.btn--white:hover, .popup aside .btn:hover, .sitemap .widget--share a.btn:hover, .block .btn.close:hover { background: #fff719; }

.btn--medium-blue, .section--side-content .content--primary > a { background: #d5dee6; color: #16315b; }

.btn--medium-blue:hover, .section--side-content .content--primary > a:hover { background: #8fa8cb; color: #fff; }

.btn--yellow, .page-header a.btn--link, .btn--back, .btn--toggle-overlay, .section-cnt[class*="teaser--"] .btn--cta { background: #fff719; color: #141414; }

.btn--dark-blue, .btn--submenu { background: #16315b; color: #fff; }

.btn--label { padding: 0; }

.btn--label .icon { background: #7d93b3; display: inline-block; width: 40px; height: 40px; line-height: 40px; vertical-align: initial; transition: all 0.2s ease-in-out; }

.btn--label .icon:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--label .icon::before { display: inline-block; -webkit-transform: scale(0.7); transform: scale(0.7); }

.btn--label .label { padding: 0 20px; display: inline-block; }

.btn--video { display: block; font-size: 4.4444444444em; height: 80px; width: 80px; padding: 0; line-height: 80px; background: none; color: #fff; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }

.btn--video:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--video:focus, .btn--video:hover { background: none; color: #fff719; -webkit-transform: scale(1.1); transform: scale(1.1); }

.btn--large, .section--side-content .content--primary > a { height: 60px; line-height: 60px; }

.btn--collapse-content { margin: 0 auto; width: 200px; text-align: center; background: none; display: block; text-transform: uppercase; }

.btn--collapse-content:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--collapse-content::after { display: block; font-size: 0.6666666667em; position: relative; transition: top 300ms ease-in-out; top: 0; }

.btn--collapse-content:hover::after { top: 3px; }

.btn--collapse-content.open:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--collapse-content.open::after { display: none; }

.btn--collapse-content.open::before { display: block; font-size: 0.6666666667em; position: relative; transition: top 300ms ease-in-out; top: 0; }

.btn--collapse-content.open:hover::before { top: -3px; }

@media (min-width: 700px) { .btn--collapse-content { margin-top: 40px; } }

.btn--scroll { height: 50px; background: #fff; color: #141414; }

.btn--scroll:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.btn--scroll:hover, .btn--scroll:focus { background: #fff719; color: #141414; }

.btn--flag img { width: 22px; margin-top: 11px; }

/* --------------------------------------------------------------------- DEFAULT FORM STYLING -------------------------------------------------------------------- */
form fieldset { margin-bottom: 10px; }

form fieldset:last-of-type { margin-bottom: 0; }

form label { margin-bottom: 0; display: block; }

input, textarea, select { display: block; width: 100%; font: inherit; font-size: 0.8888888889em; line-height: 40px; height: 40px; color: #141414; vertical-align: middle; padding: 0 15px; border: 0; border-radius: 0; box-sizing: border-box; }

textarea { height: 12em; padding: 15px; line-height: 1.5em; overflow-y: auto; }

input[type=file] { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: #d5dee6; cursor: text; line-height: 1; padding: 10px 15px; }

input[type="image"], input[type="checkbox"], input[type="radio"] { display: inline-block; width: auto; height: auto; padding: 0; margin-bottom: .294117647em; cursor: pointer; }

input[type="hidden"] { visibility: hidden; display: none; }

input:focus, textarea:focus { border-color: #8fa8cb; box-shadow: inset 0px 0px 0px 2px #8fa8cb; outline: 0; outline: thin dotted \9; }

input[type="file"]:focus, input[type="checkbox"]:focus, select:focus { border-color: #8fa8cb; box-shadow: inset 0px 0px 0px 2px #8fa8cb; outline: 0; outline: thin dotted \9; }

button.btn--submit { margin-bottom: 0; margin-left: 0; margin-top: 20px; }

::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color: #141414; font-style: italic; }

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: #141414; opacity: 1; font-style: italic; }

::-moz-placeholder { /* Mozilla Firefox 19+ */ color: #141414; opacity: 1; font-style: italic; }

:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #141414; font-style: italic; }

:placeholder-shown { /* Standard (https://drafts.csswg.org/selectors-4/#placeholder) */ color: #141414; font-style: italic; }

/* ------------------------ Custom Select boxes ----------------------- */
.custom-select { padding: 0; position: relative; height: 40px; margin: 0; display: block; background: #8fa8cb; color: #fff; }

.custom-select:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.custom-select::after { position: absolute; right: 0px; top: 0; display: inline-block; -webkit-transform: scale(0.8); transform: scale(0.8); pointer-events: none; line-height: 40px; width: 40px; background: #8fa8cb; text-align: center; }

.custom-select select { -webkit-appearance: none; -moz-appearance: none; appearance: none; font-size: 0.8888888889em; background: none; color: #fff; padding-right: 40px; }

.custom-select select option { color: #141414; }

.custom-select select::-ms-expand { display: none; }

.powermail_fieldset .custom-select, .toolbar .sort .custom-select, .custom-select--light { background: #eaeef2; color: #141414; }

.powermail_fieldset .custom-select select, .toolbar .sort .custom-select select, .custom-select--light select { color: #141414; }

.powermail_fieldset .custom-select::after, .toolbar .sort .custom-select::after, .custom-select--light::after { background: #eaeef2; }

.ie9 .custom-select::after { display: none; }

.ie9 .custom-select select { padding-right: 0; width: 120%; }

/* ------------------------ Custom checkboxed and radio buttons ----------------------- */
.powermail_radio_inner, .powermail_radio_inner label, .powermail_check_inner, .powermail_check_inner label, .field--checkbox, .filters label, .field--checkbox span.label, .filters label span.label { position: relative; padding-left: 22px; }

.powermail_radio_inner, .powermail_check_inner, .field--checkbox, .filters label { padding-left: 0; display: block; line-height: 16px; margin-bottom: 10px; }

.field--checkbox span.label::before, .filters label span.label::before, .powermail_check_inner label::before { box-shadow: inset 1px 2px 2px rgba(0, 0, 0, 0.2); }

.powermail_radio_inner label::before, .powermail_check_inner label::before, .field--checkbox span.label::before, .filters label span.label::before { display: block; content: ''; width: 13px; height: 13px; background-color: #fff; position: absolute; color: #141414; line-height: 13px; font-size: 9px; text-align: center; top: 50%; margin-top: -6px; left: 0; /* 		    top: 0;  */ }

.powermail_check_inner input[type=checkbox]:checked + label:before, .field--checkbox input[type=checkbox]:checked + .label:before, .filters label input[type=checkbox]:checked + .label:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.powermail_check_inner input[type=checkbox]:checked + label::before, .field--checkbox input[type=checkbox]:checked + .label::before, .filters label input[type=checkbox]:checked + .label::before { background-color: #fff719; }

.powermail_radio_inner input[type=radio], .powermail_check_inner input[type=checkbox], .field--checkbox input[type=checkbox], .filters label input[type=checkbox] { opacity: 0; position: absolute; display: block; left: -9999px; }

/* ------------------------ TYPO3 POWER MAIL ----------------------- */
.powermail_fieldwrap_type_submit { margin-top: 40px; text-align: center; }

.powermail_fieldwrap_type_submit input[type=submit] { display: inline-block; width: auto; color: #fff; background: transparent; -webkit-appearance: none; -moz-appearance: none; appearance: none; font-size: 1em; cursor: pointer; vertical-align: baseline; padding: 0 5px; }

.powermail_fieldwrap_type_submit input[type=submit]:focus { box-shadow: none; }

.powermail_legend { position: absolute; left: -99999px; }

label[class*="field--"], .powermail_fieldwrap { margin-bottom: 8px; display: block; }

.label--strong, .powermail_label { font-weight: bold; display: block; margin-bottom: 10px; }

.powermail_radio_inner label, .powermail_check_inner label { display: inline-block; font-size: 0.8888888889em; }

.powermail_radio_inner label::before, .powermail_check_inner label::before { top: 3px; }

.powermail_radio_inner label::before { border-radius: 12px; }

.powermail_radio_inner input[type=radio]:checked + label::before { background: #16315b; }

.powermail_fieldset .custom-select { background: #fff; }

.powermail_fieldset .custom-select::after { background: #fff; }

/* ------- ERROR HANDELING ---------- */
.parsley-errors-list { list-style: none; margin-left: 0; }

.parsley-custom-error-message { list-style: none; font-size: 0.8em; color: red; display: block; line-height: normal; }

/* --------------------------------------------------------------------- POPUP SUBSCRIBE FORM Some simple design tweaks for this form -------------------------------------------------------------------- */
.subscribe-popup form fieldset { margin-bottom: 0; }

.subscribe-popup .label--strong { margin-bottom: 12px; }

/* --------------------------------------------------------------------- SIMPLE INLINE FORM Just one input and a inline button, used for search, filtering inputs and directions -------------------------------------------------------------------- */
.form--directions, .search-form { position: relative; }

.form--directions input, .search-form input { color: #141414; padding-right: 50px; }

.form--directions input::-ms-clear, .search-form input::-ms-clear { display: none; }

.form--directions button, .search-form button { position: absolute; right: 0; top: 0; background: none; color: #141414; width: 40px; padding: 0; margin-bottom: 0; vertical-align: top; }

.form--directions button:before, .search-form button:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.form--directions button.btn--reset:before, .search-form button.btn--reset:before { content: ""; }

.form--directions button:focus, .search-form button:focus { background: #16315b; color: #fff; }

.compact.form--directions, .search-form.compact { width: 40px; background: #8fa8cb; float: left; }

.compact.form--directions input, .search-form.compact input { display: none; }

.compact.form--directions button, .search-form.compact button { color: #fff; position: relative; }

.form--directions button, .search-form-blue button { background: #16315b; color: #fff; }

.form--directions button:hover, .form--directions button:focus, .search-form-blue button:hover, .search-form-blue button:focus { background: #11294e; }

.search-form button { display: none; }

.search-form button.active { display: block; }

* { box-sizing: border-box; }

html { overflow-x: hidden; }

.container, .page-section .numbers-cnt, .cookie-notice[data-cookie-notice="bar"] .cn-box, .toolbar, .filter-selection-cnt, .collapse-cnt, .overview, .filter-navigation, .section--search-results .toolbar--footer { position: relative; padding: 0 20px; }

@media (min-width: 700px) { .container, .page-section .numbers-cnt, .cookie-notice[data-cookie-notice="bar"] .cn-box, .toolbar, .filter-selection-cnt, .collapse-cnt, .overview, .filter-navigation, .section--search-results .toolbar--footer { padding: 0 40px; } }

@media (min-width: 1000px) { .container, .page-section .numbers-cnt, .cookie-notice[data-cookie-notice="bar"] .cn-box, .toolbar, .filter-selection-cnt, .collapse-cnt, .overview, .filter-navigation, .section--search-results .toolbar--footer { padding: 0 4vw; } }

@media (min-width: 1280px) { .container, .page-section .numbers-cnt, .cookie-notice[data-cookie-notice="bar"] .cn-box, .toolbar, .filter-selection-cnt, .collapse-cnt, .overview, .filter-navigation, .section--search-results .toolbar--footer { padding: 0 8vw; } }

@media (min-width: 1441px) { .container, .page-section .numbers-cnt, .cookie-notice[data-cookie-notice="bar"] .cn-box, .toolbar, .filter-selection-cnt, .collapse-cnt, .overview, .filter-navigation, .section--search-results .toolbar--footer { padding: 0 15vw; } }

.container:after, .page-section .numbers-cnt:after, .cookie-notice[data-cookie-notice="bar"] .cn-box:after, .toolbar:after, .filter-selection-cnt:after, .collapse-cnt:after, .overview:after, .filter-navigation:after, .section--search-results .toolbar--footer:after { content: ""; display: table; clear: both; }

.container, .page-section .numbers-cnt { margin: 0; position: relative; width: 100%; }

@media (min-width: 1000px) { .container.compact, .page-section .compact.numbers-cnt { margin: 0 auto; max-width: 800px; padding: 0; } }

.clear { clear: both; }

.page { position: relative; z-index: 1; }

.preview { background-color: red; border: 1px solid #000000; padding: 10px; position: absolute; right: 50px; width: 90px; z-index: 99999; }

/* --------------------------------------------------------------------- PAGE HEADER Generally always large background image and a title  -------------------------------------------------------------------- */
.page-header { position: relative; /* ------------------------ Typography etc. ----------------------- */ /* ------------------------ Alternative versions ----------------------- */ }

.page-header-cnt { background: #16315b; background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; height: auto; position: relative; }

@media (min-width: 700px) { .page-header-cnt { min-height: 450px; } }

@media (min-width: 1441px) { .page-header-cnt { min-height: 540px; } }

.page-header .container { padding-bottom: 20px; padding-top: 40px; z-index: 1; }

@media (min-width: 700px) { .page-header .container { bottom: 0; padding-bottom: 40px; position: absolute; } }

@media (min-width: 1000px) { .page--cms .page-header .container { padding-left: 12vw; } }

@media (min-width: 1280px) { .page--cms .page-header .container { padding-left: 24vw; } }

@media (min-width: 1441px) { .page--cms .page-header .container { padding-left: 30vw; } }

.page-header h1 { color: #fff; font-size: 2.5em; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; hyphens: auto; margin-bottom: 0px; text-transform: uppercase; word-break: break-word; overflow-wrap: break-word; -ms-word-break: break-all; word-wrap: break-word; }

.page-header h1::before { background: #fff; height: 10px; top: -20px; width: 60%; }

.page-header h1 br { display: none; }

@media (min-width: 700px) { .page-header h1 { font-size: 3.8888888889em; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; line-height: 0.9714285714em; padding-top: 28px; -ms-word-break: normal; }
  .page-header h1::before { width: 260px; }
  .page--detail .page-header h1 { font-size: 3.3333333333em; letter-spacing: 0.01em; line-height: 0.9677419355em; }
  .page-header h1 br { display: block; } }

@media (min-height: 700px) { .page-header h1 { font-size: 4.4444444444em; line-height: 0.975em; }
  .page-header h1::before { height: 14px; top: -27px; } }

.page-header .subtitle { color: #fff; display: block; font-size: 1.2222222222em; font-weight: bold; line-height: 1em; margin-bottom: 30px; margin-top: 30px; max-width: 600px; padding-top: 0; }

@media (min-width: 700px) { .page-header .subtitle { font-size: 1.3333333333em; line-height: 1.0555555556em; } }

@media (min-height: 700px) { .page-header .subtitle { font-size: 1.7777777778em; line-height: 1.1111111111em; } }

.page-header a.btn--link { margin-left: 0; }

.page-header.header--home .page-header-cnt { height: auto; }

.page-header.header--home .page-header-cnt.video-active { background-color: transparent; transition: background 200ms ease-in-out; }

@media (min-width: 700px) { .page-header.header--home .page-header-cnt { height: 550px; } }

@media (min-width: 1000px) { .page-header.header--home .page-header-cnt { height: calc(100vh - 160px); } }

.page-header.header--home .responsive-embed { height: 100%; left: 0; opacity: 0; overflow: hidden; position: absolute; top: 0; transition: all 200ms ease-in-out; visibility: hidden; width: 100%; z-index: 1; }

.page-header.header--home .responsive-embed video { left: 50%; max-width: none; min-height: 100%; min-width: 100%; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.page-header.header--home.is-playing .responsive-embed { opacity: 1; visibility: visible; }

.page-header.header--home .btn--scroll { bottom: 0; display: block; margin-bottom: -20px; margin-top: 40px; width: 120px; right: 20px; }

@media (min-width: 700px) { .page-header.header--home .btn--scroll { right: 40px; } }

@media (min-width: 1000px) { .page-header.header--home .btn--scroll { right: 4vw; } }

@media (min-width: 1280px) { .page-header.header--home .btn--scroll { right: 8vw; } }

@media (min-width: 1441px) { .page-header.header--home .btn--scroll { right: 15vw; } }

@media (min-width: 700px) { .page-header.header--home .btn--scroll { margin: 0; position: absolute; } }

.page-header.header--home .btn--video { bottom: 20px; position: absolute; right: 20px; z-index: 50; }

@media (min-width: 700px) { .page-header.header--home .btn--video { display: none; } }

.page-header.header--search .page-header-cnt { height: auto; min-height: 100px; }

.page-header.header--search .container { padding-bottom: 40px; padding-top: 40px; position: static; z-index: 2; }

@media (min-width: 700px) { .page-header.header--search .container { padding-bottom: 100px; padding-top: 100px; } }

.page-header.header--overlay .page-header-cnt::after { /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(45deg, rgba(22, 49, 91, 0.45) 0%, rgba(22, 49, 91, 0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ content: ''; display: block; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='$dark-blue', endColorstr='$dark-blue', GradientType=1); /* IE6-9 fallback on horizontal gradient */ height: 100%; /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1e5799+0,7db9e8+100&1+0,0+100;Blue+to+Transparent */ left: 0; position: absolute; top: 0; width: 100%; }

#videoloader { background: #fff719; height: 10px; left: 0; position: absolute; top: 0; width: 0; z-index: 1; }

#videoloader.is-done { opacity: 0; }

/* --------------------------------------------------------------------- PAGE CONTENT ELEMENT Simple text type area used across the site -------------------------------------------------------------------- */
.page-content, .page-intro { padding: 20px; padding-left: 20px; }

.page-content.page-intro, .page-intro.page-intro { background: #eaeef2; }

@media (min-width: 700px) { .page-content, .page-intro { padding-left: 40px; } }

@media (min-width: 1000px) { .page-content, .page-intro { padding-left: 4vw; } }

@media (min-width: 1280px) { .page-content, .page-intro { padding-left: 8vw; } }

@media (min-width: 1441px) { .page-content, .page-intro { padding-left: 15vw; } }

@media (min-width: 700px) { .page-content, .page-intro { padding-bottom: 40px; padding-right: 40px; padding-top: 40px; } }

@media (min-width: 1000px) { .page-content, .page-intro { width: 65%; }
  .page--cms .page-content, .page--cms .page-intro { padding-left: 12vw; width: 75%; } }

@media (min-width: 1280px) { .page--cms .page-content, .page--cms .page-intro { padding-left: 24vw; } }

@media (min-width: 1441px) { .page--cms .page-content, .page--cms .page-intro { padding-left: 30vw; } }

@media print { .page-content, .page-intro { padding: 0; }
  .page-content.page-intro, .page-intro.page-intro { padding-bottom: 1cm; } }

.page-content:not(.page-intro) + .page-content { padding-top: 0; }

.no-sidebar { padding: 24px 0; }

@media (min-width: 700px) { .no-sidebar { padding: 40px 0; } }

.no-sidebar .page-content { padding: 0 20px; width: 100%; }

@media (min-width: 700px) { .no-sidebar .page-content { padding: 0 40px; } }

@media (min-width: 1000px) { .no-sidebar .page-content { padding: 0 4vw; } }

@media (min-width: 1280px) { .no-sidebar .page-content { padding: 0 8vw; } }

@media (min-width: 1441px) { .no-sidebar .page-content { padding: 0 15vw; } }

/* --------------------------------------------------------------------- PAGE ASIDE ELEMENT As used on the project detail page -------------------------------------------------------------------- */
.page-aside { padding: 20px; position: relative; }

@media (min-width: 700px) and (max-width: 1000px) { .page-aside .widget:not(.widget--translate) { float: left; width: 50%; }
  .page-aside .widget--map + .widget { margin-left: 40px; }
  .page-aside .widget:last-child { margin-bottom: 0; }
  .page-aside:after { content: ""; display: table; clear: both; } }

@media (min-width: 1000px) { .page-aside { padding: 40px; padding-right: 0; position: absolute; right: 0; top: 450px; width: 35%; }
  .page-aside .widget { margin-right: 4vw; }
  .page--cms .page-aside { width: 25%; } }

@media (min-width: 1280px) { .page-aside .widget { margin-right: 8vw; } }

@media (min-width: 1441px) { .page-aside { top: 540px; }
  .page-aside .widget { margin-right: 15vw; } }

/* --------------------------------------------------------------------- GRID Simplified grid, with thirds, quarter and halfs columns.  -------------------------------------------------------------------- */
@media (min-width: 700px) { .col-cnt { margin-left: -20px; margin-right: -20px; width: auto; } }

@media (min-width: 700px) { .col--third, .col--quart, .col--half { float: left; padding: 0 20px; } }

@media (min-width: 700px) { .col--third { width: 50%; } }

@media (min-width: 1000px) { .col--third { width: 33.3333%; } }

@media (min-width: 700px) { .col--quart { width: 50%; } }

@media (min-width: 1000px) { .col--quart { width: 25%; } }

@media (min-width: 700px) { .col--half { width: 100%; } }

@media (min-width: 1000px) { .col--half { width: 50%; } }

/* --------------------------------------------------------------------- TEMP FIND A GOOD LOCATION FOR THESE SELECTORS -------------------------------------------------------------------- */
.cnt--centered { clear: both; margin-top: 20px; text-align: center; }

@media (min-width: 700px) { .cnt--centered { margin-top: 40px; } }

.cnt--centered .btn--link { margin: 0; }

.loading { opacity: 0; transition: opacity 200ms ease-in-out; }

#big-video-wrap .vjs-big-play-button, .vjs-hidden { display: none !important; }

.vjs-control-bar { display: none; }

.v-center { height: auto; left: 50%; max-width: 800px; position: absolute; text-align: center; top: 50%; -webkit-transform: translateY(-50%) translateX(-50%); transform: translateY(-50%) translateX(-50%); width: 90%; z-index: 2; }

#preloader { background: #fff; height: 100%; left: 0; opacity: 1; position: fixed; top: 0; visibility: visible; width: 100%; z-index: 9999; }

#preloader::after { background: url(../img/loader.gif); content: ''; display: block; height: 120px; left: 50%; margin-left: -30px; margin-top: -60px; position: absolute; top: 50%; width: 60px; }

.main-header { display: block; background: #fff; height: 90px; position: relative; }

@media (min-width: 1000px) { .main-header { padding-left: 4vw; z-index: 10; } }

@media (min-width: 1280px) { .main-header { padding-left: 8vw; } }

@media (min-width: 1441px) { .main-header { padding-left: 15vw; } }

.main-header a.logo { width: 132px; display: block; margin: 0px 20px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.main-header a.logo img { width: 100%; }

@media (min-width: 700px) { .main-header a.logo { width: 180px; } }

@media (min-width: 1000px) { .main-header a.logo { margin: 0; } }

.main-header .smit-logo { max-height: 90px; max-width: 75px; }

.main-header .smit-logo svg { width: 100%; height: 100%; max-height: 90px; }

.main-header .btn.toggle--navigation { background: #8fa8cb; position: fixed; top: 20px; right: 20px; z-index: 200; }

.subsite .main-header { height: 110px; }

.btn.toggle--navigation { height: 50px; width: 50px; }

.btn.toggle--navigation:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

@media (min-width: 1000px) { .btn.toggle--navigation { display: none; } }

.top-text { display: none; position: absolute; right: 152px; top: 52px; font-size: 20px; }

@media screen and (min-width: 580px) { .top-text { display: inline; } }

@media (min-width: 1000px) { .top-text { right: 15vw; margin-right: -20px; } }

@media (min-width: 1280px) { .top-text { right: 8vw; } }

@media (min-width: 1441px) { .top-text { right: 15vw; } }

.top-text .top-link { display: inline-block; margin-left: 10px; }

.top-text .top-link a { color: #16315b; text-decoration: underline; }

/*
.btn.toggle--navigation {
	height: 40px; 
	line-height: 40px; 
	@include icon(before,hamburger-menu);
	width: auto; 
	background: $light-blue; 
	
	span { margin-left: 15px; }
	
	
}
*/
/* --------------------------------------------------------------------- FOOTER  Styles for everything in the footer, eg. Sitemap, Back to top and Colofon.  -------------------------------------------------------------------- */
.main-footer .sitemap { background: #16315b; padding: 100px 0; }

.main-footer .sitemap:after { content: ""; display: table; clear: both; }

.main-footer a.back-top-link { position: relative; display: block; background: #c1c9d0; height: 70px; text-align: center; line-height: 70px; transition: background 200ms ease-in-out; }

.main-footer a.back-top-link span { color: #fff; font-size: 1.1111111111em; text-transform: uppercase; }

.main-footer a.back-top-link span:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.main-footer a.back-top-link span::before { position: absolute; top: -22px; width: 100%; text-align: center; left: 0; font-size: 0.7222222222em; transition: top 200ms ease-in-out; }

.main-footer a.back-top-link::before { position: absolute; display: block; width: 90px; height: 20px; background: #c1c9d0; content: ''; top: -10px; left: 50%; margin-left: -45px; transition: background 200ms ease-in-out, top 200ms ease-in-out; z-index: 1; }

.main-footer a.back-top-link:focus, .main-footer a.back-top-link:hover { background: #8fa8cb; text-decoration: none; }

.main-footer a.back-top-link:focus::before, .main-footer a.back-top-link:hover::before { top: -20px; background: #8fa8cb; }

.main-footer a.back-top-link:focus span::before, .main-footer a.back-top-link:hover span::before { top: -32px; }

/* ------------------------ Sitemap ----------------------- */
.sitemap { color: #fff; }

.sitemap .heading--section { padding-top: 18px; }

.sitemap .heading--section::before { background: #fff; width: 130px; height: 7px; top: -18px; }

.sitemap .col--other:after { content: ""; display: table; clear: both; }

@media (min-width: 700px) { .sitemap .col--other ul { float: left; width: 50%; padding: 0 20px; } }

@media (min-width: 700px) and (max-width: 1000px) { .sitemap .col--other { margin-left: -20px; margin-right: -20px; width: auto; clear: both; float: none; }
  .sitemap .col--other .heading--section { margin-left: 20px; } }

@media (min-width: 1000px) { .sitemap .widget { margin-bottom: 0; }
  .sitemap .heading--section { font-size: 1.2222222222em; }
  .sitemap .col--update { float: right; }
  .sitemap .col--other ul:first-of-type { padding-left: 0; }
  .sitemap .col--other ul:last-of-type { padding-right: 0; } }

@media (min-width: 1280px) { .sitemap .heading--section { font-size: 1.3333333333em; } }

.sitemap .widget--share { display: -webkit-flex; display: -ms-flexbox; display: flex; margin-top: 20px; }

.sitemap .widget--share .btn:first-of-type { margin-left: 0; }

.sitemap .widget--share .btn:last-of-type { margin-right: 0; }

/* ------------------------ Colofon ----------------------- */
.colofon { background: #fff; }

.colofon.nav { text-align: center; min-height: 70px; margin: 0; }

.colofon.nav li { font-size: 0.8333333333em; }

@media (min-width: 700px) { .colofon.nav li { float: none; display: inline-block; padding: 0; } }

.colofon.nav li a:hover { color: #16315b; text-decoration: underline; }

.postCopyright { text-align: center; }

.postCopyright > .page-content { font-size: 0.8333333333em; padding: 1vh 14vw; width: auto; }

/* General Navigation Layout */
.nav { list-style: none; margin: 0; }

@media (min-width: 700px) { .nav:after { content: ""; display: table; clear: both; } }

.nav li { display: block; }

@media (min-width: 1000px) { .nav li { float: left; margin: 0 15px; } }

.nav a { color: #141414; }

/** Offcanvas menu --------------------------------------------- */
.doc { transition: -webkit-transform 200ms ease-in-out; transition: transform 200ms ease-in-out; transition: transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out; }

.main-navigation .nav--main { max-height: 70px; }

.main-navigation .nav--main > li > a { color: #fff; -webkit-transform: translateX(200px); transform: translateX(200px); opacity: 0; transition: opacity 200ms ease-in-out 400ms, -webkit-transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19); transition: transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19), opacity 200ms ease-in-out 400ms; transition: transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19), opacity 200ms ease-in-out 400ms, -webkit-transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19); }

@media (min-width: 1000px) { .main-navigation .nav--main > li > a { opacity: 1; -webkit-transform: translateX(0); transform: translateX(0); } }

.nav-opened .doc { -webkit-transform: translate3d(320px, 0, 0); transform: translate3d(320px, 0, 0); height: 100%; width: 100%; }

@media (min-width: 1000px) { .nav-opened .doc { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } }

.nav-opened .page::before { content: ''; background: rgba(17, 41, 78, 0.4); position: absolute; top: 0; bottom: 0; left: 0; right: 0; display: block; z-index: 1; cursor: pointer; }

.nav-opened .nav--main > li > a { -webkit-transform: translateX(0); transform: translateX(0); opacity: 1; }

.nav-opened .nav--main > li:nth-child(1) > a { transition-delay: 0; }

.nav-opened .nav--main > li:nth-child(2) > a { transition-delay: 10ms; }

.nav-opened .nav--main > li:nth-child(3) > a { transition-delay: 20ms; }

.nav-opened .nav--main > li:nth-child(4) > a { transition-delay: 30ms; }

.nav-opened .nav--main > li:nth-child(5) > a { transition-delay: 40ms; }

.nav-opened .nav--main > li:nth-child(6) > a { transition-delay: 50ms; }

/** Responsive navigational Structure --------------------------------------------- */
.main-navigation { position: absolute; top: 0; left: 0; bottom: 0; right: 0; height: 100vh; overflow: hidden; width: 320px; background: #16315b; z-index: -1; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); visibility: hidden; transition: visibility 0ms ease-in-out 500ms; padding-right: 0; padding-left: 0; }

@media (min-width: 1000px) { .main-navigation { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } }

.nav-opened .main-navigation { visibility: visible; transition: visibility 0ms ease-in-out 00ms; }

.main-navigation .nav--top { display: none; }

.main-navigation .toggle--navigation { width: 60px; height: 60px; position: absolute; top: 0; right: 0; z-index: 20; background: #11294e; }

.main-navigation .toggle--navigation:before { content: ""; }

.main-navigation .toggle--navigation span { display: none; }

.main-navigation .search-form { width: 260px; margin-bottom: 0; z-index: 21; }

.main-navigation .search-form button, .main-navigation .search-form input { height: 60px; line-height: 60px; }

@media (min-width: 1000px) { .main-navigation { position: relative; height: 70px; width: 100%; background: #eaeef2; overflow: visible; -webkit-transform: translateX(0); transform: translateX(0); z-index: 99; opacity: 1; visibility: visible; padding-right: 4vw; padding-left: 4vw; }
  .main-navigation .nav-cnt .item--top { display: none; }
  .main-navigation .nav--top { position: absolute; top: -90px; right: 4vw; padding: 0; display: block; }
  .main-navigation .search-form { position: absolute; top: 15px; right: 8vw; width: 220px; z-index: 2; }
  .main-navigation .search-form button, .main-navigation .search-form input { height: 40px; line-height: 40px; } }

@media (min-width: 1280px) { .main-navigation { padding-right: 8vw; padding-left: 8vw; }
  .main-navigation .nav--top, .main-navigation .search-form { right: 8vw; }
  .main-navigation .search-form { width: 300px; } }

@media (min-width: 1441px) { .main-navigation { padding-right: 15vw; padding-left: 15vw; }
  .main-navigation .nav--top, .main-navigation .search-form { right: 15vw; } }

.subsite .main-navigation { background-color: #8fa8cb; }

.nav-cnt, .subnav-cnt, .nav-holder { position: absolute; left: 0; top: 0; bottom: 0; right: 0; height: 100vh; overflow: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; padding-bottom: 80px; transition: left 200ms ease-in-out,  opacity 200ms ease-in-out, visibility 10ms ease-in-out 200ms; }

@media (min-width: 1000px) { .nav-cnt, .subnav-cnt, .nav-holder { padding-bottom: 0; } }

.nav-cnt { padding-top: 70px; transition: none; }

@media (min-width: 1000px) { .nav-cnt { padding-top: 0; position: static; height: auto; overflow: hidden; } }

.subnav-cnt { width: 100%; left: 100%; padding-top: 70px; transition: left 200ms ease-in-out 200ms,  opacity 200ms ease-in-out 200ms, visibility 500ms ease-in-out 00ms; }

.subnav-cnt.open { left: 0; transition: left 200ms ease-in-out 30ms,  opacity 500ms ease-in-out 0ms, visibility 500ms ease-in-out 0ms; }

.subnav-cnt.level--1 { z-index: 3; background: #16315b; }

.subnav-cnt.level--2 { z-index: 4; background: #11294e; }

.subnav-cnt.level--3 { z-index: 5; background: #11294e; }

@media (min-width: 1000px) { .subnav-cnt { width: auto; padding-top: 0; }
  .nav--quick .btn--submenu + .subnav-cnt, .nav--main > li > .subnav-cnt { left: 0; top: -500px; height: 450px; z-index: 1000; opacity: 0; visibility: hidden; margin: 0 4vw; overflow-y: hidden; transition: opacity 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); }
  .nav--quick .btn--submenu + .subnav-cnt.open, .nav--main > li > .subnav-cnt.open { opacity: 1; visibility: visible; z-index: 9999; top: 100%; }
  .nav--quick .btn--submenu + .subnav-cnt { margin: 0; }
  .nav--main > li > .subnav-cnt { width: auto; }
  .subnav-cnt .subnav-cnt { opacity: 0; visibility: hidden; height: 100%; width: 100%; overflow-y: auto; top: 0; transition: left 100ms ease-in-out 00ms,  opacity 200ms ease-in-out 200ms, visibility 0ms ease-in-out 400ms; }
  .subnav-cnt .subnav-cnt.open { left: 100%; opacity: 1; visibility: visible; transition: left 200ms ease-in-out 00ms,   visibility 0ms ease-in-out 00ms; }
  .subnav-cnt.level--3 { left: 100%; transition: left 200ms ease-in-out 00ms,  opacity 200ms ease-in-out 200ms, visibility 0ms ease-in-out 400ms; }
  .subnav-cnt.level--3.open { left: 0; transition: left 300ms ease-in-out 0ms, visibility 0ms ease-in-out 0ms; }
  .subnav-cnt li { float: none; margin: 0; }
  .subnav-cnt.level--1 > .submenu, .subnav-cnt .nav-teaser.teaser--page, .subnav-cnt .nav-teaser.block { position: absolute; height: 100%; left: 0; width: 34%; margin: 0; }
  .subnav-cnt .nav-teaser.teaser--page { left: 34%; }
  .subnav-cnt .nav-teaser.block { left: auto; right: 0; width: 32%; padding-left: 0; padding-right: 0; background: #fff; }
  .subnav-cnt .nav-teaser.block figure::before { padding-top: 53.0025971273%; }
  .subnav-cnt .nav-teaser.block .excerpt { margin-top: 10px; line-height: 1.45em; }
  .subnav-cnt .nav-teaser.block > a { height: 100%; } }

@media (min-width: 1280px) { .nav--main > li > .subnav-cnt { margin: 0 8vw; } }

@media (min-width: 1441px) { .nav--main > li > .subnav-cnt { margin: 0 15vw; } }

/** Typography & Design --------------------------------------------- */
.nav { padding: 20px 0; }

.nav ul { padding: 20px 0; margin: 0; }

.nav li { padding: 0 20px; margin: 0; }

.nav .csc-menu { padding-top: 0; }

.subsite .nav .csc-menu { bottom: 0; left: 0; position: absolute; right: 0; }

@media (min-width: 1000px) { .subsite .nav .csc-menu { position: static; } }

.nav:not(.subnav-cnt) li:first-child:not(.level-up) a { border-top: 1px solid rgba(255, 255, 255, 0.2); }

.nav li > a { position: relative; display: block; width: 100%; padding: 6px 10px; color: #fff; font-size: 1.0555555556em; border-top: 1px solid rgba(255, 255, 255, 0.2); }

.nav li > a::after, .nav li > a::before { font-size: 0.6666666667em; transition: -webkit-transform 200ms ease-in-out; transition: transform 200ms ease-in-out; transition: transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out; }

.nav li > a::after { position: absolute; right: 10px; font-size: 0.7222222222em; top: 9px; }

.nav li > a:focus::before, .nav li > a:hover::before { -webkit-transform: translateX(5px); transform: translateX(5px); }

.nav li > a:focus, .nav li > a:active, .nav li > a:hover { text-decoration: none; background: #11294e; color: #fff719; outline: 0; }

.nav li:last-child > a { border-bottom: 1px solid rgba(255, 255, 255, 0.2); }

.nav li.heading a { padding: 15px 0; border-top: 0; }

.nav li.heading a:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.nav li.heading a::after { display: inline; position: static; }

.nav li.heading a:hover { background: none; }

.nav li.heading strong { margin-right: 10px; }

.nav li.level-up a { font-weight: bold; border-top: 0; border-bottom: 0; padding-left: 0; }

.nav li.level-up a:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.nav li.level-up a span { display: none; }

.nav li.level-up a::after { content: ''; }

.nav li.level-up a::before { margin-right: 10px; font-size: 1em; }

.nav li.level-up a:hover { background: none; }

.nav li.level-up a:hover::before { -webkit-transform: translateX(0px); transform: translateX(0px); }

.nav li.has_children > a:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.nav.level--1 .current > a, .nav .level--1 .current > a { font-weight: bold; background: #11294e; }

.nav .level--2 a:focus, .nav .level--2 a:hover { background: #16315b; }

.nav .level--2 .current > a { background: #16315b; }

.nav .teaser--page .btn, .nav .subnav-cnt > .btn { background: #fff719; color: #141414; margin-left: 20px; display: inline-block; margin-bottom: 20px; }

.nav .teaser--page .btn:after, .nav .subnav-cnt > .btn:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.nav .teaser--page .btn::after, .nav .subnav-cnt > .btn::after { font-size: 0.8em; padding-left: 10px; }

.nav .teaser--page .btn:focus, .nav .teaser--page .btn:hover, .nav .subnav-cnt > .btn:focus, .nav .subnav-cnt > .btn:hover { background: #fff; outline: 0; }

.nav .subnav-cnt > .btn { opacity: 0; -webkit-transform: translateX(100%); transform: translateX(100%); transition: opacity 600ms ease-in-out 0ms, -webkit-transform 400ms cubic-bezier(0.45, 0.51, 0.71, 1.04) 50ms; transition: transform 400ms cubic-bezier(0.45, 0.51, 0.71, 1.04) 50ms, opacity 600ms ease-in-out 0ms; transition: transform 400ms cubic-bezier(0.45, 0.51, 0.71, 1.04) 50ms, opacity 600ms ease-in-out 0ms, -webkit-transform 400ms cubic-bezier(0.45, 0.51, 0.71, 1.04) 50ms; }

.nav .subnav-cnt.open > .btn { opacity: 1; -webkit-transform: translateX(0); transform: translateX(0); }

@media (min-width: 1000px) { .nav ul { padding: 40px 0; }
  .nav li { padding: 0 40px; }
  .nav li > a { font-size: 0.8888888889em; }
  .nav.nav--top li a { border-top: 0; }
  .nav.nav--main { padding: 0; }
  .nav.nav--main > li { padding: 0 10px; float: left; margin: 0; margin-right: 5px; }
  .nav.nav--main > li:first-child { padding-left: 0; }
  .nav.nav--main > li > a { height: 70px; line-height: 70px; font-size: 1em; font-weight: bold; color: #141414; text-transform: uppercase; padding: 0; border-top: 0; border-bottom: 0; }
  .nav.nav--main > li > a::before { display: none; }
  .subsite .nav.nav--main > li > a { color: #fff; }
  .nav.nav--main > li > a:focus, .nav.nav--main > li > a:hover, .nav.nav--main > li.current > a, .nav.nav--main > li.active > a, .nav.nav--main > li.active > a:hover { border-bottom: 7px solid #16315b; background: none; color: #16315b; outline: 0; }
  .subsite .nav.nav--main > li > a:focus, .subsite .nav.nav--main > li > a:hover, .subsite .nav.nav--main > li.current > a, .subsite .nav.nav--main > li.active > a, .subsite .nav.nav--main > li.active > a:hover { border-color: #fff; color: #fff; }
  .nav.nav--main > li > a:hover { border-color: #8fa8cb; }
  .nav.nav--main > li.has_children > a { padding-right: 15px; }
  .nav.nav--main > li.has_children > a:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }
  .nav.nav--main > li.has_children > a::after { top: 0; right: 0px; display: inline-block; -webkit-transform: scale(0.7); transform: scale(0.7); }
  .nav .level-up { display: none; }
  .nav .level-up span { display: none; }
  .nav .level-up a { border-top: 0; }
  .nav .level--2 .level-up { display: block; }
  .nav .item--divider a::after { content: ''; width: 1px; display: inline-block; height: 20px; background: #c1c9d0; position: static; margin-left: 30px; vertical-align: middle; margin-top: -4px; }
  .nav.nav--top li { padding: 0; margin: 0 15px; }
  .nav.nav--top li:last-child { margin-right: 0; }
  .nav.nav--top a { color: #141414; padding: 0; height: 90px; line-height: 90px; }
  .nav.nav--top a::before { display: none; }
  .nav.nav--top a:focus, .nav.nav--top a:hover { background: none; text-decoration: underline; color: #16315b; outline: 0; }
  .subsite .nav.nav--top a { color: #16315b; text-decoration: underline; }
  .nav.nav--top .environmental-menu { margin: 0; padding: 0; }
  .nav.nav--top .environmental-menu .page-content { padding: 0; width: auto; }
  .nav.nav--top .environmental-menu ul { margin: 0 !important; padding: 0; }
  .nav.nav--top .environmental-menu ul > li:before { display: none; }
  .nav li.heading { display: none; }
  .nav li.heading a { padding-top: 0; }
  .nav .subnav-cnt > .btn { margin-left: 40px; } }

@media (min-width: 1280px) { .nav.nav--main > li { margin-right: 10px; } }

.submenu { width: 100%; }

.submenu li.active { padding-right: 0; }

.submenu li.active > a { background: #11294e; color: #fff719; font-weight: bold; border-bottom-color: #11294e; border-top: 1px solid #11294e; top: 1px; z-index: 2; }

.submenu > li > a { -webkit-transform: translateX(200px); transform: translateX(200px); opacity: 0; transition: opacity 200ms ease-in-out 400ms, -webkit-transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19); transition: transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19), opacity 200ms ease-in-out 400ms; transition: transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19), opacity 200ms ease-in-out 400ms, -webkit-transform 400ms cubic-bezier(0.52, 0.07, 0.61, 1.19); }

@media (min-width: 1000px) { .submenu > li > a { -webkit-transform: translateX(100px); transform: translateX(100px); }
  .submenu .submenu > li > a { -webkit-transform: translateX(65px); transform: translateX(65px); } }

.subnav-cnt.open .submenu > li > a { -webkit-transform: translateX(0); transform: translateX(0); opacity: 1; }

.submenu > li:nth-child(1) > a { transition-delay: 0; }

.submenu > li:nth-child(2) > a { transition-delay: 10ms; }

.submenu > li:nth-child(3) > a { transition-delay: 30ms; }

.submenu > li:nth-child(4) > a { transition-delay: 50ms; }

.submenu > li:nth-child(5) > a { transition-delay: 70ms; }

.submenu > li:nth-child(6) > a { transition-delay: 90ms; }

.submenu > li:nth-child(7) > a { transition-delay: 110ms; }

.submenu > li:nth-child(8) > a { transition-delay: 130ms; }

.submenu > li:nth-child(9) > a { transition-delay: 150ms; }

.submenu > li:nth-child(10) > a { transition-delay: 170ms; }

/** Teaser elements --------------------------------------------- */
.teaser--page > *, .nav-teaser.block { display: none; }

.teaser--page .btn--link { display: block; }

.nav .btn--link span { display: block; }

.nav .btn--link::after { left: auto; }

@media (min-width: 1000px) { .teaser--page > *, .nav-teaser.block { display: block; }
  .nav-teaser { height: 100%; background: #11294e; color: #fff; display: block; }
  .teaser--page { padding: 40px; }
  .teaser--page h2 { padding-top: 0; }
  .teaser--page p { font-size: 0.8888888889em; line-height: 1.5em; margin-bottom: 20px; }
  .teaser--page .btn { background: #fff719; display: inline-block; }
  .nav .teaser--page .btn { margin-left: 0; }
  .teaser--page .btn:focus, .teaser--page .btn:hover { background: #fff; color: #141414; outline: 0; }
  .nav-teaser.block { height: 100%; }
  .nav-teaser.block .content { padding: 20px 40px 40px; }
  .nav-teaser.block figure { background: #fff; } }

@media (min-width: 2380px) { .nav-teaser.block .content { top: -40px; }
  .nav-teaser.block div:hover .thumbnail + .content, .nav-teaser.block a:hover .thumbnail + .content, .nav-teaser.block a:active .thumbnail + .content, .nav-teaser.block a:focus .thumbnail + .content { top: -80px; } }

/** Colophon Nav --------------------------------------------- */
.colofon.nav li > a { font-size: 1em; color: #141414; }

.colofon.nav li > a::before { display: none; }

.colofon.nav li > a:focus, .colofon.nav li > a:hover { background: none; }

/** Quick Navigation --------------------------------------------- - back button - submenu */
ul.nav--quick { position: absolute; z-index: 9999; list-style: none; margin: 0; padding: 0; display: none; top: 130px; left: 20px; }

@media (min-width: 700px) { ul.nav--quick { left: 40px; } }

@media (min-width: 1000px) { ul.nav--quick { left: 4vw; } }

@media (min-width: 1280px) { ul.nav--quick { left: 8vw; } }

@media (min-width: 1441px) { ul.nav--quick { left: 15vw; } }

@media (min-width: 1000px) { ul.nav--quick { display: block; top: 200px; } }

ul.nav--quick .btn--submenu { opacity: 0; visibility: hidden; -webkit-transform: translateY(-100px); transform: translateY(-100px); transition: opacity 200ms ease-in-out, -webkit-transform 600ms ease-in-out; transition: opacity 200ms ease-in-out, transform 600ms ease-in-out; transition: opacity 200ms ease-in-out, transform 600ms ease-in-out, -webkit-transform 600ms ease-in-out; }

ul.nav--quick.fixed { position: fixed; top: 0; }

ul.nav--quick.fixed .btn--submenu { opacity: 1; visibility: visible; -webkit-transform: translateY(0); transform: translateY(0); }

.hidden-landing-page ul.nav--quick { opacity: 0; visibility: hidden; }

.hidden-landing-page ul.nav--quick .btn--back { -webkit-transform: translateY(-100px); transform: translateY(-100px); transition: opacity 200ms ease-in-out, -webkit-transform 600ms ease-in-out; transition: opacity 200ms ease-in-out, transform 600ms ease-in-out; transition: opacity 200ms ease-in-out, transform 600ms ease-in-out, -webkit-transform 600ms ease-in-out; }

.hidden-landing-page ul.nav--quick.fixed { opacity: 1; visibility: visible; }

.hidden-landing-page ul.nav--quick.fixed .btn--back { -webkit-transform: translateY(0); transform: translateY(0); }

ul.nav--quick > li { margin: 0; float: right; display: block; position: relative; }

ul.nav--quick:after { content: ""; display: table; clear: both; }

ul.nav--quick > li > .btn { display: block; height: 40px; line-height: 40px; position: relative; }

ul.nav--quick .subnav-cnt { width: 340%; min-width: 750px; top: -1000px; left: 40px; z-index: 9999; padding-top: 0; }

ul.nav--quick .subnav-cnt.open { top: 0px; }

ul.nav--quick .subnav-cnt.level--1 > .submenu { width: 50%; position: absolute; }

ul.nav--quick .subnav-cnt .nav-teaser { width: 50%; position: absolute; left: 50%; }

ul.nav--quick .subnav-cnt .subnav-cnt { width: 100%; min-width: 0; left: 100%; }

ul.nav--quick .subnav-cnt .subnav-cnt.open { top: 0; }

ul.nav--quick .subnav-cnt .subnav-cnt.level--3.open { left: 0; }

@media (min-width: 1000px) { ul.nav--quick .btn--submenu + .subnav-cnt.open { top: 0; left: 40px; } }

.btn--submenu, .btn--back { transition: all 100ms ease-in-out; }

.active .btn--submenu, .btn--submenu:hover, .active .btn--back, .btn--back:hover { background: #11294e; color: #fff; }

.active .btn--submenu::before, .btn--submenu:hover::before, .active .btn--back::before, .btn--back:hover::before { -webkit-transform: scale(1.35); transform: scale(1.35); }

.btn--back:before { content: ""; }

.btn--submenu:before { content: ""; }

.active .btn--submenu { padding-left: 10px; }

.active .btn--submenu:before { content: ""; }

.active .btn--submenu span { padding-left: 10px; }

.active .btn--submenu::before { -webkit-transform: scale(1.1); transform: scale(1.1); }

.btn--submenu:hover { color: #fff719; }

/* Custom button styling */
.subnav-cnt > .btn { max-width: 260px; height: auto; padding-top: 10px; padding-bottom: 10px; padding-right: 50px; line-height: normal; text-align: left; word-wrap: break-word; }

.subnav-cnt > .btn::after { display: block; position: absolute; right: 20px; top: 50%; margin-top: -6px; }

/* --------------------------------------------------------------------- DEFAULT WIDGET STYLING Styling of all the widgets used through out the site -------------------------------------------------------------------- */
.block { position: relative; margin-bottom: 20px; font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif; -webkit-backface-visibility: hidden; vertical-align: top; }

.block > div, .block > a { position: relative; display: block; width: 100%; text-decoration: none; overflow: hidden; background-color: #fff; height: 100%; }

.block .thumbnail { background-position: center; background-repeat: no-repeat; background-size: cover; width: 100%; position: relative; overflow: hidden; background-color: #16315b; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); z-index: 1; display: block; height: 100%; }

.subnav-cnt .block .thumbnail { height: auto; }

.block .thumbnail::before { content: ""; display: block; padding-top: 100%; /* initial ratio of 1:1*/ padding-top: 50%; /* ratio of 59 : 17 */ }

.block .thumbnail img { position: absolute; top: 0; left: 0; width: 100%; transition: opacity 100ms ease-in-out, -webkit-transform 0.2s ease-in-out; transition: transform 0.2s ease-in-out, opacity 100ms ease-in-out; transition: transform 0.2s ease-in-out, opacity 100ms ease-in-out, -webkit-transform 0.2s ease-in-out; }

.block .thumbnail.portrait img { width: auto; height: 90%; left: 50%; top: 5%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

.block .content { position: relative; height: auto; padding: 20px 40px 20px 20px; background: #fff; color: #141414; text-align: left; transition: all 0.2s ease-in-out; z-index: 2; }

.block h2 { padding-top: 0; -webkit-transform: rotateY(0); transform: rotateY(0); transition: opacity 0.2s ease-in-out, -webkit-transform 100ms ease-in-out; transition: transform 100ms ease-in-out, opacity 0.2s ease-in-out; transition: transform 100ms ease-in-out, opacity 0.2s ease-in-out, -webkit-transform 100ms ease-in-out; margin-bottom: 0; }

.block h2.text--truncate { font-size: 1.3333333333em; line-height: 1.125em; max-height: 81px; overflow: hidden; }

.block h2 + ul, .block h2 + .excerpt { margin-top: 15px; }

.block .excerpt { margin-bottom: 0; width: 90%; font-size: 0.8888888889em; line-height: 1.5em; transition: opacity 0.2s ease-in-out, -webkit-transform 100ms ease-in-out; transition: transform 100ms ease-in-out, opacity 0.2s ease-in-out; transition: transform 100ms ease-in-out, opacity 0.2s ease-in-out, -webkit-transform 100ms ease-in-out; display: block; }

.block .excerpt.text--truncate { font-size: 0.8888888889em; line-height: 1.5em; max-height: 48px; overflow: hidden; }

.block .tag { position: absolute; top: -40px; left: 0; display: inline-block; height: 40px; width: auto; padding: 0 20px; background: #fff719; color: #141414; font-weight: bold; line-height: 40px; font-size: 0.8888888889em; z-index: 10; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.block .btn--video { font-size: 3.3333333333em; margin: 0 auto; width: 60px; height: 60px; line-height: 60px; }

.block .btn--video:hover { -webkit-transform: none; transform: none; background: none; }

@media (min-width: 700px) { .block .btn--video { margin-bottom: 20px; } }

.block .v-center { max-width: 400px; }

.block .v-center strong { color: #fff; font-size: 1.3333333333em; line-height: 0.7; /* 			line-height: em(27px, 24px); */ }

.block a:active, .block a:focus, .block a:hover { outline: 0; }

.block a:active img, .block a:focus img, .block a:hover img { opacity: 1; }

.block a:active .btn--video, .block a:focus .btn--video, .block a:hover .btn--video { background: none; }

@media (min-width: 700px) { .block { width: 50%; padding-left: 20px; padding-right: 20px; float: none; display: inline-block; margin-bottom: 40px; }
  .overview.list .block .excerpt--type, .overview.list .block .excerpt--property { display: inline-block; width: auto; }
  .overview.list .block .excerpt--property::before { content: '-'; display: inline-block; margin-left: 10px; margin-right: 10px; } }

@media (min-width: 1000px) { .block { width: 33.33333%; } }

.block footer a { display: block; line-height: 40px; padding: 0 20px; background: #eaeef2; font-size: 0.8888888889em; color: #16315b; text-align: left; /* 				transition: all 400ms ease-in-out, color 100ms;  */ }

.block footer a:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.block footer a::after { display: inline-block; -webkit-transform: scale(0.8); transform: scale(0.8); padding-left: 10px; position: relative; left: 0; transition: color 0ms, left 400ms ease-in-out; }

.block footer a:hover { text-decoration: none; color: #fff; background: #8fa8cb; }

.block footer a:hover::after { left: 3px; }

/* ------------------------ Variations ----------------------- */
@media (min-width: 1280px) { .block--tip, .block--visual, .block--news, .block--vessel, .block--actions { vertical-align: top; }
  .block--tip > a, .block--visual > a, .block--news > a, .block--vessel > a, .block--actions > a, .block--tip > div, .block--visual > div, .block--news > div, .block--vessel > div, .block--actions > div { height: 100%; }
  .block--tip .content, .block--visual .content, .block--news .content, .block--vessel .content, .block--actions .content { position: relative; top: 0; width: 100%; }
  .block--tip div:hover .thumbnail + .content, .block--visual div:hover .thumbnail + .content, .block--news div:hover .thumbnail + .content, .block--vessel div:hover .thumbnail + .content, .block--actions div:hover .thumbnail + .content, .block--tip a:hover .thumbnail + .content, .block--visual a:hover .thumbnail + .content, .block--news a:hover .thumbnail + .content, .block--vessel a:hover .thumbnail + .content, .block--actions a:hover .thumbnail + .content, .block--tip a:active .thumbnail + .content, .block--visual a:active .thumbnail + .content, .block--news a:active .thumbnail + .content, .block--vessel a:active .thumbnail + .content, .block--actions a:active .thumbnail + .content, .block--tip a:focus .thumbnail + .content, .block--visual a:focus .thumbnail + .content, .block--news a:focus .thumbnail + .content, .block--vessel a:focus .thumbnail + .content, .block--actions a:focus .thumbnail + .content { top: -40px; } }

.block { /* ------------------------ List view in in filter overview ----------------------- */ }

.cnt--overflow .block:focus, .cnt--carousel .block:focus { outline: 0; }

.overview.list .block { height: auto; margin-bottom: 20px; width: 100%; }

.overview.list .block:last-child { margin-bottom: 40px; }

.overview.list .block figure { display: none; z-index: 2; position: absolute; left: 0; }

.overview.list .block .content { width: 100%; padding: 10px; }

.overview.list .block .tag { position: static; margin-top: -10px; margin-left: -10px; height: 20px; line-height: 20px; margin-bottom: 10px; padding: 0 10px; }

.overview.list .block h2.text--truncate { font-size: 1.3333333333em; line-height: 1.125em; max-height: 81px; overflow: hidden; }

.overview.list .block p.excerpt.text--truncate { font-size: 0.8888888889em; line-height: 1.5em; max-height: 48px; overflow: hidden; }

.overview.list .block .tag.tag--vessel { top: 0; margin-top: 20px; margin-bottom: 0; height: 50px; line-height: 50px; }

@media (min-width: 700px) { .overview.list .block .content { position: static; padding-left: 230px; padding-top: 20px; padding-bottom: 20px; }
  .overview.list .block figure { width: 210px; display: block; }
  .overview.list .block h2.text--truncate { max-height: 27px; width: 90%; }
  .overview.list .block p.excerpt.text--truncate { max-height: 24px; }
  .overview.list .block p { margin-top: 5px; }
  .overview.list .block .tag { position: absolute; bottom: 0px; margin: 0; height: 40px; padding: 0 20px; line-height: 40px; top: auto; z-index: 2; }
  .overview.list .block .tag.tag--vessel { top: 0; z-index: 2; left: 210px; background: #eaeef2; height: 100%; line-height: 110px; margin-top: 0; } }

@media (min-width: 1280px) { .overview.list .block .content { top: 0; width: 100%; }
  .overview.list .block a:hover .content, .overview.list .block a:active .content, .overview.list .block a:focus .content { top: 0; } }

.bg--white .block--brand figure { border: 1px solid #eaeef2; }

.block--brand figure { background: #fff !important; }

.block--brand figure.thumbnail::before { padding-top: 42.3728813559%; }

.block--brand .content { background: #eaeef2; padding-bottom: 40px; }

.block--brand p.excerpt.text--truncate { font-size: 0.8888888889em; line-height: 1.25em; max-height: 60px; overflow: hidden; }

.block--tip, .maps-tip .block { padding: 0; width: 100%; font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif !important; font-size: 18px; height: 100% !important; float: none; }

@media (min-width: 700px) { .block--tip, .maps-tip .block { margin: 0; } }

.maps-tip .block { background: #fff; }

.maps-tip .block .mCSB_scrollTools .mCSB_draggerContainer { top: 10px; right: 10px; bottom: 10px; }

.block--tip { height: auto !important; }

@media (min-width: 700px) { .block--tip { width: 370px; } }

.block--vessel .tag--vessel { background: #fff; height: 50px; font-size: 90px; top: -50px; line-height: 78px; }

.block--vessel .tag--vessel:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

@media (min-width: 700px) { .overview.list .block--vessel .content { padding-left: 360px; } }

.block--teaser figure::before { padding-top: 62.5%; }

@media (min-width: 700px) { .block--teaser { height: 243px; overflow: hidden; }
  .block--teaser > a { height: 100%; }
  .block--teaser .content { position: absolute; bottom: 0; width: 100%; min-height: 40px; }
  .block--teaser h2 { font-size: 1.3333333333em; line-height: 1.125em; max-height: 27px; overflow: hidden; margin-bottom: 0; }
  .block--teaser a:hover .content, .block--teaser a:active .content, .block--teaser a:focus .content { padding-bottom: 60px; } }

.block--video .thumbnail:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.block--video .thumbnail::after { position: absolute; font-size: 2.2222222222em; top: 50%; left: 50%; margin-left: -20px; margin-top: -20px; color: #fff; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; -webkit-transform: scale(1); transform: scale(1); transition: -webkit-transform 100ms ease-in-out; transition: transform 100ms ease-in-out; transition: transform 100ms ease-in-out, -webkit-transform 100ms ease-in-out; }

.block--video a:hover .thumbnail::after { color: #fff719; -webkit-transform: scale(1.05); transform: scale(1.05); }

.block--contact .info { background: #d5dee6; position: relative; padding: 0; min-height: 115px; text-align: left; font-size: 0.8888888889em; }

.block--contact .info .btn { position: absolute; top: 50%; left: 50%; margin-left: -90px; margin-top: -20px; }

.block--contact .profile { width: 80px; position: absolute; right: 20px; top: 20px; overflow: hidden; border-radius: 100%; }

.block--contact .profile img { display: block; }

.block--contact li { display: inline-block; }

.block--contact ul { margin: 20px; }

.block--contact ul a { display: inline-block; background: #8fa8cb; height: 30px; width: 30px; line-height: 30px; color: #fff; text-align: center; }

.block--contact ul a span { display: none; }

.block--contact ul .heading { display: block; line-height: 1.3; margin-bottom: 12px; }

@media (min-width: 1000px) and (max-width: 1279px) { .block--contact ul { margin: 15px; margin-bottom: 0; }
  .block--contact ul li { padding-left: 0; }
  .block--contact ul li::before { display: none; } }

@media (min-width: 1000px) { .block--contact ul .heading { margin-bottom: 5px; }
  .block--contact ul li { display: block; margin-bottom: 5px; }
  .block--contact ul a { height: auto; width: auto; display: block; line-height: 1; text-align: left; color: inherit; background: none; font-size: 0.9375em; padding-left: 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 100%; /* &::after { background: -moz-linear-gradient(left,  rgba($medium-blue,0) 0%, rgba($medium-blue,1) 100%);  background: -webkit-linear-gradient(left,  rgba($medium-blue,0) 0%,rgba($medium-blue,1) 100%);  background: linear-gradient(left right,  rgba($medium-blue,0) 0%,rgba($medium-blue,1) 100%);  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$medium-blue', endColorstr='$medium-blue',GradientType=1 ); content: ''; position: absolute; right: 0; width: 30px;  height: 100%;  } */ }
  .block--contact ul a::before { position: absolute; left: 0; font-size: 0.8888888889em; margin-right: 20px; }
  .block--contact ul a span { display: inline-block; color: #16315b; background: #d5dee6; } }

@media (min-width: 700px) { .block--wide { width: 100%; }
  .block--wide h2 { font-size: 1.3333333333em; line-height: 1.125em; max-height: 27px; overflow: hidden; margin-bottom: 0; } }

@media (min-width: 1000px) { .block--wide { width: 66.666%; }
  .block--wide figure::before { padding-top: 0; }
  .block--wide figure { height: 100%; overflow: visible; }
  .block--wide .content { position: absolute; bottom: 0; width: 100%; top: auto; }
  .block--wide a:hover .content { padding-bottom: 60px; top: auto; } }

.block--links { text-align: left; }

.block--links > div { background: #16315b; }

.block--links .list--links { background: #16315b; padding: 20px; }

.block--links .list--links li.heading { border-top: 0; color: #fff; margin-bottom: 20px; }

.block--links .list--links a { padding-left: 20px; padding-right: 50px; }

.block--links .list--links a:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.block--links .list--links a::before { display: none; }

.block--links .list--links a::after { position: absolute; font-size: 0.7777777778em; display: block; position: absolute; right: 20px; top: 50%; margin-top: -10px; }

@media (min-width: 1280px) { .block--links .content, .block--links .list--links { padding: 40px; } }

.block--location .content { padding: 20px; }

.block--location ul { margin: 20px 0; }

.block--location a { color: #8fa8cb; }

.block--location a span { border-color: #8fa8cb; }

.block--location ul, .block--location p { font-size: 0.8888888889em; }

.maps-tip .block--location { overflow-y: auto; height: 370px; }

.block--actions .actions { background: #16315b; position: absolute; bottom: -40px; visibility: hidden; height: 40px; text-align: right; width: 100%; z-index: -1; padding: 10px 10px; transition: bottom 100ms ease-in-out; font-family: empty; }

.block--actions .actions .download { margin: 0 4px; }

@media (min-width: 700px) { .block--actions .actions { padding-top: 7px; } }

.block--actions div:hover .content { top: -40px !important; }

.block--actions div:hover .cta { bottom: 40px; }

.block--actions div:hover .cta.download.single { bottom: 0; }

.block--actions div:hover .actions { z-index: 3; bottom: 0; visibility: visible; }

.block--actions.block--teaser .content { top: auto; }

.block--actions.block--teaser div:hover .content { top: auto !important; padding-bottom: 60px; }

@media (min-width: 700px) { .overview.list .block--actions .actions { position: absolute; bottom: 0; right: 0; width: auto; display: inline-block; -webkit-transform: translateX(100%); transform: translateX(100%); transition: right 100ms ease-in-out, -webkit-transform 100ms ease-in-out; transition: transform 100ms ease-in-out, right 100ms ease-in-out; transition: transform 100ms ease-in-out, right 100ms ease-in-out, -webkit-transform 100ms ease-in-out; }
  .overview.list .block--actions div:hover .cta { bottom: 0; }
  .overview.list .block--actions div:hover .actions { -webkit-transform: translateX(0%); transform: translateX(0%); } }

@media (min-width: 1000px) { .block--grow .thumbnail::before { padding-top: 200%; } }

.block.nav-teaser ol, .block.nav-teaser ul { margin-bottom: 0; padding: 0; font-size: 0.8888888889em; line-height: 1.5em; }

.block.nav-teaser ol li, .block.nav-teaser ul li { padding-left: 0; padding-right: 0; }

.block.nav-teaser ol { list-style: decimal; counter-reset: section; padding-left: 0 !important; }

.block.nav-teaser ol li::before { counter-increment: section; content: counter(section) ". "; }

.block--list ul { padding-left: 0 !important; }

.block--list ul li { padding-top: 3px; padding-bottom: 3px; }

.block--list li::before { display: none; }

/* ------------------------ Elements used a cross block ----------------------- */
.cta { position: absolute; bottom: 0; right: 0; font-family: empty; z-index: 3; transition: bottom 100ms ease-in-out; }

.cta .btn { background: transparent; display: inline-block; color: #141414; margin: 0; border-color: #c1c9d0; border-style: solid; border-left-width: 1px; border-top-width: 1px; transition: all 100ms ease-in-out; }

.caption .cta .btn { border-left-width: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 1px; }

.is-touch .cta .btn { border-color: #fff719; background: #fff719; }

.cta a.link-label, .cta span.link-label { right: 40px; font-weight: bold; font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif; margin: 0; padding-right: 5px; margin-right: -1px; opacity: 0; -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); transition: -webkit-transform 150ms ease-in-out; transition: transform 150ms ease-in-out; transition: transform 150ms ease-in-out, -webkit-transform 150ms ease-in-out; }

.cta a.link-more, .cta span.link-more { width: 40px; padding: 0; }

.cta a.link-more:after, .cta span.link-more:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.caption .cta .btn { background: #fff; }

.cta.download span.link-more:after, .cta.download a.link-more:after { content: ""; }

.cta.video span.link-more:after, .cta.video a.link-more:after { content: ""; }

.cta.pdf span.link-more:after, .cta.pdf a.link-more:after { content: ""; }

.block > div:hover .cta .btn, a:active .cta .btn, a:focus .cta .btn, a:hover .cta .btn { background: #fff719; color: #141414; border-color: #fff719; }

.block > div:hover .cta a.link-label, .block > div:hover .cta span.link-label, a:active .cta a.link-label, a:active .cta span.link-label, a:focus .cta a.link-label, a:focus .cta span.link-label, a:hover .cta a.link-label, a:hover .cta span.link-label { opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.block .btn.close { position: absolute; top: 0; right: 0; display: none; }

.block .btn.close:before { content: ""; }

.block .btn.close::before { display: inline-block; -webkit-transform: scale(0.7); transform: scale(0.7); }

@media (min-width: 700px) { .block .btn.close { display: block; z-index: 4; } }

.maps-tip { overflow: hidden; }

@media (min-width: 1280px) { .display-flex { display: -webkit-flex; display: -ms-flexbox; display: flex; }
  .display-flex .block { width: auto; }
  .display-flex .block--links .content, .display-flex .block--links .list--links { padding: 20px; } }

.video-block .content--secondary > div { background-position: center; background-size: cover; background-repeat: no-repeat; height: 100%; min-height: 450px; position: relative; }

.video-block .content--secondary > div .btn--video { margin: 0 auto; }

/* Exceptions */
.tag--vessel.icon-vessel_offshore_floating-sheerleg { font-size: 65px; }

.cookie-notice { border-top: 1px solid #fff; bottom: 0; left: 0; opacity: 0; position: fixed; visibility: hidden; width: 100%; z-index: 5000; }

.cookie-notice[data-cookie-notice="wall"] { background-color: rgba(20, 20, 20, 0.5); height: 100%; }

.cookie-notice[data-cookie-notice="wall"] .cn-box { background-color: #16315b; left: 50%; max-width: 500px; padding: 30px; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 80%; }

.cookie-notice[data-cookie-notice="bar"] .cn-box { background-color: #16315b; display: inline-block; padding-top: 40px; padding-bottom: 40px; width: 100%; }

.cookie-notice[data-cookie-notice="bar"] .cn-button-wrapper .cn-button { margin-bottom: 5px; margin-right: 5px; padding: 0 10px; }

.cookie-notice-open .cookie-notice { opacity: 1; visibility: visible; }

.cookie-notice .cn-content { color: #fff; margin-bottom: 25px; max-width: 820px; }

.cookie-notice .cn-content h5 { font-size: 1.3333333333em; line-height: 1.125em; padding-top: 0; }

.cookie-notice .cn-content:last-child { margin-bottom: 0; }

.cookie-notice .cn-button-wrapper .cn-button { border: 0; border-radius: 0; color: #11294e; cursor: pointer; display: inline-block; font-size: 18px; left: 0; padding: 10px 15px; position: relative; text-align: center; text-transform: none; }

.cookie-notice .cn-button-wrapper .cn-button:first-child { background-color: #fff719; }

.cookie-notice .cn-button-wrapper .cn-button:first-child:hover { background-color: rgba(255, 247, 25, 0.6); }

.cookie-notice .cn-button-wrapper .cn-button:last-child { background-color: white; }

.cookie-notice .cn-button-wrapper .cn-button:last-child:hover { background-color: rgba(255, 255, 255, 0.6); }

/* --------------------------------------------------------------------- FULL-WIDTH SLIDER Intro with key figures and aside widgets for share and contact details -------------------------------------------------------------------- */
.slider--fw, .slider-highlight { position: relative; width: 100%; }

.slider--fw .slick-track, .slider-highlight .slick-track { background: #16315b; }

.slider--fw .slide, .slider-highlight .slide { position: relative; width: 100%; height: 500px; float: left; overflow: hidden; background: no-repeat center; background-size: cover; padding: 0; transition: opacity 1000ms; }

.slider--fw .slide:focus, .slider-highlight .slide:focus { outline: none; }

.slider--fw .slick-initialized .slide, .slider-highlight .slick-initialized .slide { opacity: 0.4; }

.slider--fw .slick-initialized .slide.slick-current, .slider-highlight .slick-initialized .slide.slick-current { opacity: 1; transition: opacity 1000ms; }

.highlighted-slider { margin-bottom: 20px; }

.highlighted-slider .slide { height: auto; }

.highlighted-slider .slick-dots { bottom: 0; margin-top: -32px; position: relative; z-index: 100; }

.highlighted-slider .slick-dots li.slick-active button:before { background-color: #fff; opacity: 1; }

.highlighted-slider .slick-dots li button:before { background-color: #fff; opacity: 0.6; }

.highlighted-slider .slick-dots li button:hover:before { background-color: #fff; opacity: 1; }

@media (min-width: 1000px) { .highlighted-slider { margin-bottom: 0; }
  .highlighted-slider .slider--fw { float: left; width: 50%; }
  .content--left .highlighted-slider .slider--fw { float: right; }
  .highlighted-slider .slide { height: 500px; }
  .slider-highlight .content--secondary { width: 100% !important; } }

/* ------------------------ Slider Navigation ----------------------- */
.slider-nav { position: absolute; top: 50%; height: 40px; margin-top: -20px; width: 15%; cursor: pointer; z-index: 3; }

.slider-nav span { position: absolute; width: 40px; right: 50%; top: 50%; margin-top: -20px; margin-right: -20px; padding: 0; background: #fff; color: #141414; transition: -webkit-transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); transition: transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); transition: transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19), -webkit-transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); }

.slider-nav span:before { speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.slider-nav.slider-next { right: 0; }

.slider-nav.slider-next span:before { content: ""; }

.slider-nav.slider-prev { left: 0; }

.slider-nav.slider-prev span:before { content: ""; }

.slider-nav:focus span, .slider-nav:hover span { background: #fff719; color: #141414; -webkit-transform: translateX(2px); transform: translateX(2px); }

.slider-nav:focus.slider-prev span, .slider-nav:hover.slider-prev span { -webkit-transform: translateX(-2px); transform: translateX(-2px); }

@media (min-width: 700px) { .slider-nav { width: 10%; height: 500px; margin-top: 0; top: 0; } }

@media (min-width: 1000px) { .slider-nav { width: 15%; }
  .slider-nav:hover span { background: #fff719; -webkit-transform: translateX(5px); transform: translateX(5px); color: #141414; }
  .slider-nav:hover.slider-prev span { -webkit-transform: translateX(-5px); transform: translateX(-5px); } }

@media (min-width: 1441px) { .slider-nav { width: 20%; } }

/* ------------------------ Slider caption ----------------------- */
.slide .caption { position: absolute; bottom: 0; left: 0; max-width: 100%; padding: 20px; overflow: hidden; background: #16315b; color: #fff; opacity: 0; -webkit-transform: translateY(100%); transform: translateY(100%); transition: opacity 200ms ease-in-out 100ms, -webkit-transform 300ms cubic-bezier(0.55, 0.2, 0.67, 1.04); transition: transform 300ms cubic-bezier(0.55, 0.2, 0.67, 1.04), opacity 200ms ease-in-out 100ms; transition: transform 300ms cubic-bezier(0.55, 0.2, 0.67, 1.04), opacity 200ms ease-in-out 100ms, -webkit-transform 300ms cubic-bezier(0.55, 0.2, 0.67, 1.04); transition-delay: 0ms; z-index: 5; left: 20px; }

@media (min-width: 700px) { .slide .caption { max-width: 80%; } }

@media (min-width: 1000px) { .slide .caption { padding: 40px; } }

@media (min-width: 1280px) { .slide .caption { max-width: 50%; } }

@media (min-width: 700px) { .slide .caption { left: 40px; } }

@media (min-width: 1000px) { .slide .caption { left: 4vw; } }

@media (min-width: 1280px) { .slide .caption { left: 8vw; } }

@media (min-width: 1441px) { .slide .caption { left: 15vw; } }

.slide .caption.caption--right { left: auto; right: 20px; }

@media (min-width: 700px) { .slide .caption.caption--right { right: 40px; } }

@media (min-width: 1000px) { .slide .caption.caption--right { right: 4vw; } }

@media (min-width: 1280px) { .slide .caption.caption--right { right: 8vw; } }

@media (min-width: 1441px) { .slide .caption.caption--right { right: 15vw; } }

.accordion-cnt .slide .caption, .slider--split .slide .caption { right: auto; left: 0; }

.accordion-cnt .slide .caption.caption--right, .slider--split .slide .caption.caption--right { left: auto; right: 0; }

.slide .caption h4 { margin: 0; padding: 0; font-size: 1.3333333333em; line-height: 1.2; }

.slide .caption h4 + p { margin-top: 10px; margin-bottom: 0; }

.slide .caption p { font-size: 0.8888888889em; }

.slide .caption a { display: block; text-decoration: none; color: #fff; transition: padding 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); }

.slide .caption a:hover, .slide .caption a:focus, .slide .caption a:active { padding-bottom: 40px; outline: 0; }

.slide .caption a:hover .btn, .slide .caption a:focus .btn, .slide .caption a:active .btn { border-bottom: 1px solid #fff719; }

.slick-active .caption, .slide.active .caption, .active .slide .caption { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); transition-delay: 500ms; }

/* ------------------------ Content elements ----------------------- */
div.slide a.btn--video { position: absolute; left: 50%; margin-left: -40px; top: 50%; margin-top: -40px; z-index: 6; }

/* --------------------------------------------------------------------- HORIZONTAL IMAGE ACCORDION Accordion with large background images and captions -------------------------------------------------------------------- */
.section--accordion-fw .accordion-cnt { height: auto; }

@media (min-width: 1000px) { .section--accordion-fw .accordion-cnt { height: 460px; } }

.accordion-cnt { background: #16315b; position: relative; }

.accordion-cnt:after { content: ""; display: table; clear: both; }

.accordion-cnt .slide { width: 100%; height: 200px; background-size: auto 200px; background-repeat: no-repeat; position: relative; cursor: pointer; overflow: hidden; transition: width 200ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 300ms, background-size 200ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 0ms, background-position 200ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 0ms; }

.accordion-cnt .slide::after { content: ''; background: rgba(22, 49, 91, 0.7); transition: background 200ms cubic-bezier(0.55, 0.2, 0.67, 1.04); position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 2; }

.accordion-cnt .slide:hover::after, .accordion-cnt .slide:active::after { background: rgba(22, 49, 91, 0.8); }

.accordion-cnt .slide .backstretch { width: 100% !important; height: 100% !important; }

.accordion-cnt .slide.active { height: auto; /* 			background-size: auto 250px; */ transition: width 200ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 300ms, background-size 200ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 300ms; }

.accordion-cnt .slide.active::after { background: transparent; }

.accordion-cnt .slide.active .v-center { z-index: 6; }

.accordion-cnt .slide.active > h4 { opacity: 0; -webkit-transform: translateY(-500px); transform: translateY(-500px); z-index: 1; transition: opacity 400ms linear 0ms, -webkit-transform 400ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 100ms; transition: transform 400ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 100ms, opacity 400ms linear 0ms; transition: transform 400ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 100ms, opacity 400ms linear 0ms, -webkit-transform 400ms cubic-bezier(0.55, 0.2, 0.67, 1.04) 100ms; }

.accordion-cnt .slick-dots { display: none; }

.accordion-cnt .slide .caption { max-width: none; width: 100%; position: relative; margin-top: 200px; }

@media (max-width: 720px) and (orientation: landscape) { .accordion-cnt .slide { background-size: 100% auto; }
  .accordion-cnt .slide .caption { margin-top: 41%; } }

@media (min-width: 700px) { .accordion-cnt .slide { background-size: 100% auto; }
  .accordion-cnt .slide .caption { margin-top: 41%; } }

@media (min-width: 1000px) { .accordion-cnt .slick-dots { display: block; }
  .accordion-cnt .slide { width: 33%; float: left; height: 100%; background-size: auto 460px; }
  .accordion-cnt .slide::last-of-type { width: 34%; }
  .accordion-cnt.is-opened .slide { width: 22%; }
  .accordion-cnt.is-opened .slide.active { width: 56%; height: 100%; }
  .accordion-cnt.accordion--two .slide { width: 50%; }
  .accordion-cnt.accordion--two.is-opened .slide { width: 44%; }
  .accordion-cnt.accordion--two.is-opened .slide.active { width: 56%; }
  .accordion-cnt.accordion--four .slide { width: 25%; }
  .accordion-cnt.accordion--four.is-opened .slide { width: 15%; }
  .accordion-cnt.accordion--four.is-opened .slide.active { width: 55%; }
  .accordion-cnt .slide .caption { height: auto; position: absolute; margin-top: 0; max-width: 50%; } }

@media (min-width: 1280px) { .accordion-cnt .slide:first-child > h4 { text-align: right; left: auto; right: 40px; } }

.accordion-cnt .slide > h4 { position: absolute; bottom: 40px; left: 40px; text-align: left; color: #fff; z-index: 4; margin-bottom: 0; max-width: 80%; font-size: 1.5em; line-height: 1.2; transition: opacity 700ms linear 400ms, -webkit-transform 700ms cubic-bezier(0.52, 0.07, 0.61, 1.19) 0ms; transition: transform 700ms cubic-bezier(0.52, 0.07, 0.61, 1.19) 0ms, opacity 700ms linear 400ms; transition: transform 700ms cubic-bezier(0.52, 0.07, 0.61, 1.19) 0ms, opacity 700ms linear 400ms, -webkit-transform 700ms cubic-bezier(0.52, 0.07, 0.61, 1.19) 0ms; }

.accordion-cnt .slide .btn--close { background: none; color: #fff; position: absolute; z-index: 10; left: 20px; top: 20px; opacity: 0; visibility: hidden; }

.accordion-cnt .slide .btn--close:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.accordion-cnt .slide.active .btn--close { visibility: visible; opacity: 1; }

/* --------------------------------------------------------------------- SLICK SLIDER DEFAULT STYLING Default CSS needed for the slick slider -------------------------------------------------------------------- */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }

.slick-list:focus { outline: none; }

.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slick-track { position: relative; top: 0; left: 0; display: block; }

.slick-track:before, .slick-track:after { display: table; content: ''; }

.slick-track:after { clear: both; }

.slick-loading .slick-track { visibility: hidden; }

.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }

[dir='rtl'] .slick-slide { float: right; }

.slick-slide img { display: block; }

.slick-slide.slick-loading img { display: none; }

.slick-slide.dragging img { pointer-events: none; }

.slick-initialized .slick-slide { display: block; }

.slick-loading .slick-slide { visibility: hidden; }

.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

/* --------------------------------------------------------------------- SLICK SLIDER NAVIGATION Styling for the default arrows and dotted navigation -------------------------------------------------------------------- */
.slick-dots { position: static; bottom: -35px; display: block; width: 100%; padding: 0; list-style: none; text-align: center; margin: 0; margin-top: 40px; height: 10px; }

.accordion-cnt + .slick-dots { display: none; }

.cnt--carousel .slick-dots, .cnt--overflow .slick-dots { margin-top: 0; }

@media (min-width: 1000px) { .slick-dots { /* .cnt--carousel &, .cnt--overflow & { position: absolute; } */ }
  .accordion-cnt + .slick-dots { display: block; } }

.slick-dots li { position: relative; display: inline-block; width: 10px; height: 10px; margin: 0px 7px; padding: 0; cursor: pointer; }

.slick-dots li button { display: block; width: 10px; height: 10px; cursor: pointer; color: transparent; border: 0; outline: none; background: transparent; }

.slick-dots li button::before { content: ''; display: block; width: 10px; height: 10px; background: #8fa8cb; border-radius: 30px; transition: background 200ms ease, -webkit-transform 200ms ease-in-out; transition: background 200ms ease, transform 200ms ease-in-out; transition: background 200ms ease, transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out; }

.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }

.slick-dots li button:hover::before, .slick-dots li button:focus::before { background: #8fa8cb; -webkit-transform: scale(1.4); transform: scale(1.4); }

.slick-dots li.slick-active button:before { background: #16315b; }

.slick-arrow { display: none; position: absolute; width: 40px; height: 40px; line-height: 40px; right: 50%; top: 50%; margin-top: -20px; padding: 0; background: #fff; color: transparent; overflow: hidden; border-radius: 0; z-index: 10; transition: -webkit-transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); transition: transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); transition: transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19), -webkit-transform 200ms cubic-bezier(0.52, 0.07, 0.61, 1.19); }

.slick-arrow::before { color: #141414; display: block; text-align: center; }

@media (min-width: 700px) { .slick-arrow { display: block; } }

.slick-arrow.slick-next { right: 0px; }

.slick-arrow.slick-next:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.slick-arrow.slick-next::before { color: #141414; }

.slick-arrow.slick-prev { left: 0px; right: auto; }

.slick-arrow.slick-prev:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

@media (min-width: 700px) and (max-width: 1000px) { .cnt--overflow .slick-arrow.slick-next, .cnt--overflow .slick-arrow.slick-prev { bottom: -10px; top: auto; }
  .cnt--overflow .slick-arrow.slick-next { right: 10px; }
  .cnt--overflow .slick-arrow.slick-prev { left: 10px; } }

@media (min-width: 1280px) { .slick-arrow.slick-next { right: -60px; }
  .slick-arrow.slick-prev { left: -60px; } }

.slick-arrow:focus:not(.slick-disabled), .slick-arrow:hover:not(.slick-disabled), .slick-arrow:active:not(.slick-disabled) { background: #16315b; -webkit-transform: translateX(5px); transform: translateX(5px); }

.slick-arrow:focus:not(.slick-disabled)::before, .slick-arrow:hover:not(.slick-disabled)::before, .slick-arrow:active:not(.slick-disabled)::before { color: #fff; }

.slick-arrow:focus:not(.slick-disabled).slick-prev, .slick-arrow:hover:not(.slick-disabled).slick-prev, .slick-arrow:active:not(.slick-disabled).slick-prev { -webkit-transform: translateX(-5px); transform: translateX(-5px); }

.slick-arrow.slick-disabled { opacity: 0.3; cursor: default; }

.slick-arrow-blue, .section--our-brands .slick-arrow { background: #8fa8cb; }

.slick-arrow-blue::before, .section--our-brands .slick-arrow::before { color: #fff; }

.slick-arrow-blue:focus:not(.slick-disabled), .section--our-brands .slick-arrow:focus:not(.slick-disabled), .slick-arrow-blue:hover:not(.slick-disabled), .section--our-brands .slick-arrow:hover:not(.slick-disabled), .slick-arrow-blue:active:not(.slick-disabled), .section--our-brands .slick-arrow:active:not(.slick-disabled) { background: #16315b; }

ul[data-pie-id] { list-style: none; padding: 10px; margin-bottom: 0; }

ul[data-pie-id] > *:nth-child(1)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #11294e; margin-right: 10px; border-radius: 100%; }

ul[data-pie-id] > *:nth-child(2)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #16315b; margin-right: 10px; border-radius: 100%; }

ul[data-pie-id] > *:nth-child(3)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #8fa8cb; margin-right: 10px; border-radius: 100%; }

ul[data-pie-id] > *:nth-child(4)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #b6c5d9; margin-right: 10px; border-radius: 100%; }

ul[data-pie-id] > *:nth-child(5)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #d5dee6; margin-right: 10px; border-radius: 100%; }

ul[data-pie-id] > *:nth-child(6)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #eaeef2; margin-right: 10px; border-radius: 100%; }

ul[data-pie-id] > *:nth-child(7)::before { content: ''; height: 15px; width: 15px; display: inline-block; background: #c1c9d0; margin-right: 10px; border-radius: 100%; }

@media (min-width: 1000px) { .page-content.content--chart { padding-right: 0; } }

/* Own styling */
.chart-cnt { margin: 0 auto; }

@media (min-width: 700px) { .chart--double .chart-cnt { margin: 0; float: left; width: 50%; } }

.chart--pie { position: relative; max-width: 370px; height: 0; padding-bottom: 100%; margin: 0 auto; width: 100%; }

@media (min-width: 700px) { .chart--pie { padding-bottom: 400px; } }

@media (min-width: 700px) { .chart-cnt.double .chart--pie { margin: 0; display: inline-block; width: 50%; } }

.chart--pie .chart { position: absolute; top: 0; left: 0; width: 100%; z-index: 1; height: 100%; }

.chart--pie .chart text { font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif; font-weight: bold; }

.chart--pie .inner { position: absolute; width: 70%; text-align: center; top: 50%; left: 50%; z-index: 3; height: 90px; margin-top: -45px; margin-left: -35%; }

.chart--pie .inner > * { display: block; }

.chart--pie .inner h3 { font-weight: normal; font-size: 1.1111111111em; padding-top: 0; margin-bottom: 0px; }

.chart--pie .inner strong { font-size: 1.6666666667em; font-weight: bold; color: #8fa8cb; }

.chart--pie .inner small { font-size: 0.8888888889em; }

@media (min-width: 700px) { .chart--pie .inner strong { font-size: 1.8888888889em; } }

.chart--legend { clear: both; }

.chart--legend ul:nth-child(2) { display: none; }

.chart--legend li { display: block; margin-right: 10px; margin-left: 30px; }

.chart--legend li.active::before { background: #fff719; }

@media (min-width: 700px) { .chart--legend { width: 60%; margin: 0 auto; }
  .chart--legend.legend--horizontal { width: 100%; }
  .chart--legend.legend--horizontal ul { text-align: center; margin-left: 0; }
  .chart--legend.legend--horizontal li { display: inline-block; margin: 10px; } }

.chart-cnt.double .chart--legend ul:first-child { display: none; }

.google-visualization-tooltip { background: #fff719 !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; padding: 10px !important; }

.google-visualization-tooltip-item-list { margin: 0 !important; }

.google-visualization-tooltip-item { margin: 0 !important; }

.google-visualization-tooltip-item::before { content: "" !important; }

/* --------------------------------------------------------------------- IFRAME CHART ELEMENTS Content element with big numbers to display data, used on IR landingspage -------------------------------------------------------------------- */
.content--stock-chart iframe { width: 100%; height: 100%; }

.content--stock-chart #miniChart { margin-bottom: 100px; }

.stock-chart--priceInformation iframe { height: 550px; }

.stock-chart--efficiencyCalculator iframe { height: 560px; }

.stock-chart--historicalPriceDisplay iframe { height: 375px; }

/* --------------------------------------------------------------------- NUMBERS CONTENT ELEMENT Content element with big numbers to display data, used on IR landingspage -------------------------------------------------------------------- */
.content--numbers { text-align: center; }

@media (min-width: 700px) { .content--numbers { padding-top: 100px; padding-bottom: 100px; } }

.numbers-cnt { margin-bottom: 60px; }

.numbers-cnt:after { content: ""; display: table; clear: both; }

@media (min-width: 700px) { .numbers-cnt .big-number { width: 33%; float: left; border-right: 1px solid #c1c9d0; border-bottom: 0; }
  .numbers-cnt .big-number:last-child { border-right: 0; } }

.big-number { text-align: center; border-bottom: 1px solid #c1c9d0; padding: 20px; }

.big-number h3 { font-weight: normal; padding-top: 0; margin-bottom: 10px; }

@media (min-width: 1000px) and (max-width: 1279px) { .big-number h3 { font-size: 1.1666666667em; } }

.big-number strong { color: #8fa8cb; font-size: 2.1111111111em; display: block; line-height: 1; }

.big-number:last-child { border-bottom: 0; }

/* --------------------------------------------------------------------- DIRECTIONS FORM ELEMENTS links toggle a simple form to get directions -------------------------------------------------------------------- */
.toggle-link[data-directions] { color: #8fa8cb; border-bottom: 1px solid #8fa8cb; cursor: pointer; }

.toggle-link[data-directions]:hover { text-decoration: none; color: #16315b; }

.toggle-link[data-directions].active { font-weight: bold; color: #16315b; border-bottom: 0; }

.toggle-link[data-directions].active:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.toggle-link[data-directions].active::after { font-size: 0.6em; margin-left: 5px; margin-right: 5px; }

.form--directions { position: relative; display: none; margin-top: 10px; margin-bottom: 0; }

.form--directions input { border: 1px solid #eaeef2; }

.form--directions input:focus { border-color: #8fa8cb; box-shadow: inset 0px 0px 0px 1px #8fa8cb; }

.directions-cnt { margin-top: 10px; }

.directions-cnt strong { display: block; }

/* --------------------------------------------------------------------- LIST WITH BUTTON / DROPDOWN ELEMENT Used for the calendar, download overview etc. -------------------------------------------------------------------- */
.list--overview-action { margin: 0 auto; list-style: none; /* ------------------------ Variations in layout ----------------------- */ /* ------------------------ Other elements ----------------------- */ }

.list--overview-action > li { position: relative; background: #eaeef2; padding: 10px 60px 10px 20px; margin-bottom: 1px; }

.list--overview-action > li:after { content: ""; display: table; clear: both; }

.list--overview-action > li time { margin-right: 20px; font-weight: bold; font-size: 0.8888888889em; display: block; }

.list--overview-action > li h2 { font-size: 1em; margin: 0; padding: 0; display: inline; font-weight: normal; }

.list--overview-action > li h2 strong { margin-right: 10px; }

.list--overview-action > li h2 span { font-weight: normal; display: inline; border-bottom: 1px solid transparent; }

.list--overview-action > li a.link { color: #16315b; }

.list--overview-action > li a.link span { border-color: #16315b; }

.list--overview-action > li a.link span:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.list--overview-action > li a.link span::after { position: absolute; font-size: 0.7777777778em; margin-top: 5px; margin-left: 10px; color: #16315b; }

.list--overview-action > li a.link:hover { text-decoration: none; color: #16315b; }

.list--overview-action > li a.link:hover span { border-color: #d5dee6; }

@media (min-width: 700px) { .list--overview-action > li { padding: 0 170px 0 20px; line-height: 60px; max-height: 60px; }
  .list--overview-action.list--flex-height > li { max-height: none; }
  .list--overview-action > li time { display: inline; border-bottom: 1px solid transparent; vertical-align: middle; }
  .list--overview-action > li h2 { line-height: normal; width: 100%; display: inline-block; text-overflow: ellipsis; vertical-align: middle; margin-top: -1px; padding-top: 10px; padding-bottom: 10px; padding-right: 10px; }
  .list--overview-action.list--calendar > li h2 { width: 75%; } }

.list--overview-action .btn { position: absolute; right: 0; top: 0; height: 100%; -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 50px; font-size: 1em; }

.list--overview-action .btn::after, .list--overview-action .btn::before, .list--overview-action .btn span { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 100%; padding: 0; text-align: center; left: 0; }

.list--overview-action .btn .open, .list--overview-action .btn:hover { background: #16315b; color: #fff; }

.list--overview-action .btn:focus, .list--overview-action .btn:active { background: #7d93b3; color: #fff; }

@media (min-width: 700px) { .list--overview-action .btn span { display: none; } }

@media (min-width: 700px) { .list--overview-action:not(.list--calendar) .btn { line-height: 60px; padding-top: 0; padding-bottom: 0; width: auto; min-width: 142px; }
  .list--overview-action:not(.list--calendar) .btn::after, .list--overview-action:not(.list--calendar) .btn::before, .list--overview-action:not(.list--calendar) .btn span { -webkit-transform: translateY(0%); transform: translateY(0%); position: static; width: auto; padding: 0 5px; }
  .list--overview-action:not(.list--calendar) .btn span { display: inline-block; } }

.list--overview-action.list--calendar .btn { padding: 0 30px; }

.list--overview-action.list--centered { max-width: 800px; }

.page-content .list--overview-action { list-style: none; margin-left: 0; }

.page-content .list--overview-action > li::before { display: none; }

@media (min-width: 1000px) { .cnt--aside .list--overview-action { padding-left: 20px; padding-right: calc(33.3333% + 20px); } }

.bg--light-blue .list--overview-action > li { background: #fff; }

.list--overview-action .btn--dropdown:after { content: ""; }

.list--overview-action .btn--dropdown::before { display: none; }

.list--overview-action .btn--dropdown.open { background: #11294e; }

.list--overview-action .btn--dropdown.open:after { content: ""; }

@media (min-width: 1000px) { .list--overview-action .btn--dropdown::before { display: inline-block; } }

.list--overview-action .btn.icon-calendar::before { font-size: 20px; vertical-align: middle; }

.page-content h3 + .list--overview-action { margin-top: 15px; }

/* --------------------------------------------------------------------- AUTOCOMPLETE DROPDOWN Based on jQuery UI's Autocomplete -------------------------------------------------------------------- */
.ui-autocomplete { list-style: none; border: 1px solid #fff; margin: 0; position: absolute; top: 0; left: 0; z-index: 100; }

.ui-autocomplete li a { background: #90A8CC; color: #fff; display: block; border-bottom: 1px solid rgba(255, 255, 255, 0.2); height: 50px; overflow: hidden; line-height: 50px; padding: 0 10px; width: 100%; text-overflow: ellipsis; white-space: nowrap; }

.ui-autocomplete li a strong { border-bottom: 1px solid #fff; }

.ui-autocomplete li a:hover { text-decoration: none; }

.ui-autocomplete li.ui-state-focus a { background: #16315b; }

.tx-solr-autosuggest, .ui-autocomplete { background: #90A8CC; list-style: none; border: 1px solid #fff; margin: 0; position: absolute; top: 0; left: 0; z-index: 100; }

.tx-solr-autosuggest .autocomplete-suggestion, .tx-solr-autosuggest .ui-menu-item, .ui-autocomplete .autocomplete-suggestion, .ui-autocomplete .ui-menu-item { color: #fff; display: block; border-bottom: 1px solid rgba(255, 255, 255, 0.2); height: 50px; overflow: hidden; line-height: 50px; padding: 0 10px; width: 100%; text-overflow: ellipsis; white-space: nowrap; }

.tx-solr-autosuggest .autocomplete-suggestion strong, .tx-solr-autosuggest .ui-menu-item strong, .ui-autocomplete .autocomplete-suggestion strong, .ui-autocomplete .ui-menu-item strong { border-bottom: 1px solid #fff; }

.tx-solr-autosuggest .autocomplete-suggestion:hover, .tx-solr-autosuggest .ui-menu-item:hover, .ui-autocomplete .autocomplete-suggestion:hover, .ui-autocomplete .ui-menu-item:hover { text-decoration: none; }

.tx-solr-autosuggest .autocomplete-suggestion.ui-state-focus, .tx-solr-autosuggest .autocomplete-suggestion.autocomplete-selected, .tx-solr-autosuggest .ui-menu-item.ui-state-focus, .tx-solr-autosuggest .ui-menu-item.autocomplete-selected, .ui-autocomplete .autocomplete-suggestion.ui-state-focus, .ui-autocomplete .autocomplete-suggestion.autocomplete-selected, .ui-autocomplete .ui-menu-item.ui-state-focus, .ui-autocomplete .ui-menu-item.autocomplete-selected { background: #16315b; }

.ui-menu-item { cursor: pointer; }

.small-downloads { width: 60%; }

/* --------------------------------------------------------------------- DEFAULT WIDGET STYLING Styling of all the widgets used through out the site -------------------------------------------------------------------- */
.widget { margin-bottom: 40px; /* ------------------------ Variations ----------------------- */ }

.widget h4 { font-size: 1.3333333333em; margin-bottom: 10px; padding-top: 0; }

.widget dl { line-height: 1.1em; }

.widget dt { padding-top: 15px; font-weight: bold; border-top: 1px solid #d5dee6; }

.widget dd { margin-bottom: 15px; line-height: 1.4; }

.widget dt:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.widget dt, .widget dd { padding-left: 30px; position: relative; }

.widget dt::before { position: absolute; left: 0; font-size: 0.6666666667em; }

.widget:last-of-type { margin-bottom: 0; }

.page-aside .widget { border-bottom: 1px solid #d5dee6; margin-bottom: 0; padding-bottom: 40px; padding-top: 40px; }

.page-aside .widget:last-child { border-bottom: 0; }

.widget--summary ul li { padding-left: 30px; }

.widget--summary ul a { color: #141414; }

.widget--shares dt { font-weight: normal; border-top: 0; padding-top: 0; }

.widget--shares dd { font-weight: bold; font-size: 1.5555555556em; }

.widget--contact strong { font-weight: normal; }

.widget--contact ul { margin-top: 10px; }

.widget--contact ul li { border-top: 0; border-bottom: 0; padding: 0; padding-left: 30px; }

.widget--contact ul li:last-child { border-bottom: 0; }

.widget--contact, .widget--text { padding-bottom: 40px; border-bottom: 1px solid #c1c9d0; }

.widget--text p { font-size: 0.8888888889em; max-width: 90%; margin-bottom: 20px; }

.widget--text a.btn { margin-left: 0; }

.widget--text img { width: 100%; }

.page-aside .widget--translate { padding-top: 0; padding-bottom: 0; }

.widget--translate .btn { display: block; width: 100%; text-align: left; padding-left: 50px; position: relative; }

.widget--translate .btn::before { content: ''; background: url("../img/flag_nl.png") no-repeat; background-size: 20px 16px; width: 20px; height: 16px; display: block; position: absolute; left: 20px; top: 11px; border: 1px solid #fff; padding: 0; }

.widget--translate .btn.btn--english::before { background-image: url("../img/flag_en.png"); }

@media (min-width: 1000px) { .widget--translate { margin-top: -40px; margin-left: -40px; margin-right: 0px !important; } }

.page-aside .widget--map { margin: -20px -20px 20px; position: relative; padding-top: 0; border-bottom: 0; padding-bottom: 0; }

.page-aside .widget--map img { display: block; }

@media (min-width: 1000px) { .page-aside .widget--map { margin-top: -40px; margin-right: 0; margin-left: -40px; margin-bottom: 0; } }

.page-aside .widget--map figcaption { display: block; background: #16315b; position: absolute; bottom: 0; padding: 10px 20px; width: 100%; color: #fff; }

@media (min-width: 1000px) { .page-aside .widget--map figcaption { padding: 10px 40px; } }

.widget--facts .list--icon li { padding-left: 60px; }

.widget--facts .list--icon li::before { top: 0; left: 10px; line-height: 54px; display: inline-block; -webkit-transform: scale(1.4); transform: scale(1.4); }

.widget--facts .list--icon .icon-world::before, .widget--facts .list--icon .icon-vessel::before { -webkit-transform: scale(2.9); transform: scale(2.9); }

.widget--share .btn { margin: 5px; }

@media (min-width: 1000px) { .page-aside .widget--share:first-child { margin-top: -40px; } }

.widget--tags .btn--link span { max-width: 190px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-block; }

.widget--tags .btn--link::after { float: right; }

@media (min-width: 700px) { .widget--tags .widget--tags { float: left; width: 50%; padding: 0 40px 0 0; border-right: 1px solid #d5dee6; min-height: 140px; }
  .widget--tags .widget--tags + .widget--share:not(.full-width) { float: left; width: 50%; padding: 0 40px; }
  .widget--tags .widget.full-width { width: 100%; float: none; border-right: 0; } }

@media (min-width: 1000px) { .page-aside .widget--no-pad { margin-top: -40px; margin-left: -40px; padding-left: 40px; } }

.page-aside .widget--full { padding-left: 40px; padding-right: 40px; }

@media (min-width: 1000px) { .page-aside .widget--full { margin-right: 0; } }

/* ------------------------ Icons and other elements ----------------------- */
.widget .footing { background: #11294e; height: 60px; line-height: 60px; color: #fff; padding: 0 20px; font-size: 0.8888888889em; }

.widget .footing .value { float: right; font-size: 1.3333333333em; font-weight: bold; }

@media (min-width: 700px) { .widget .footing { padding: 0 40px; margin-top: -16px; } }

footer.page-content:after { content: ""; display: table; clear: both; }

@media (min-width: 700px) { footer.page-content .widget--tags { float: left; width: 50%; padding: 0 40px 0 0; border-right: 1px solid #d5dee6; min-height: 140px; }
  footer.page-content .widget--tags + .widget--share:not(.full-width) { float: left; width: 50%; padding: 0 40px; }
  footer.page-content .widget.full-width { width: 100%; float: none; border-right: 0; } }

/* --------------------------------------------------------------------- FILTER SECTION Styling for all the filter sections used across the site. Like projects, vessels, contacts etc.  -------------------------------------------------------------------- */
.cnt--filter { /* 		overflow: visible;  */ }

.filter-cnt { position: relative; margin-top: 20px; }

.filter-cnt:after { content: ""; display: table; clear: both; }

/* ------------------------ TOOLBAR ----------------------- */
.toolbar { margin-bottom: 20px; }

.toolbar > * { width: 100%; }

.toolbar .num { display: block; text-align: center; }

.toolbar .other, .toolbar .view-switch, .toolbar .sort { float: right; display: none; font-size: 0.8888888889em; }

.toolbar .sort .btn, .toolbar .view-switch .btn { float: left; margin-right: 1px; }

.toolbar .sort { display: block; width: auto; }

.toolbar .sort .custom-select { float: left; }

.toolbar .sort .custom-select:after { content: ""; }

.toolbar .other { margin-right: 1px; display: inline-block; width: auto; }

.toolbar .align-right { text-align: center; clear: both; width: 100%; }

.toolbar .align-right > span { display: inline-block; max-width: 300px; line-height: 1.2; }

.toolbar .align-right .btn { margin: 20px auto 40px; vertical-align: top; display: block; }

@media (min-width: 700px) and (max-width: 1000px) { .toolbar .align-right > span { display: none; } }

@media (min-width: 1000px) and (max-width: 1279px) { .toolbar .align-right > span { display: none; } }

.toolbar .toggle--filter-nav { margin-bottom: 20px; }

.toolbar .search-form { margin-bottom: 0; }

.toolbar .search-form.expand { margin-bottom: 20px; }

@media (min-width: 700px) { .toolbar { margin-bottom: 40px; }
  .toolbar:after { content: ""; display: table; clear: both; }
  .toolbar > * { float: left; display: inline-block; width: auto; }
  .toolbar .toggle--filter-nav { margin-right: 20px; margin-bottom: 0; }
  .toolbar .search-form:not(.compact) { width: 240px; margin-right: 0; }
  .toolbar .search-form:not(.compact).expand { margin-bottom: 0; }
  .toolbar .other, .toolbar .view-switch, .toolbar .sort { display: inline-block; }
  .toolbar .sort { margin-right: 20px; }
  .toolbar .align-right { float: right; clear: none; width: auto; }
  .toolbar .btn.btn--link { margin: 0; margin-left: 10px; display: inline-block; } }

@media (min-width: 1280px) { .toolbar .align-right { text-align: left; display: table; }
  .toolbar .align-right > span { font-size: 0.8333333333em; }
  .toolbar .align-right > span { display: table-cell; vertical-align: middle; }
  .toolbar .search-form { width: 340px; margin-right: 0; }
  .toolbar .btn.btn--link { margin-left: 20px; } }

@media (min-width: 1280px) { .toolbar--media .search-form { width: 240px; } }

.btn.toggle--filter-nav { position: relative; }

.btn.toggle--filter-nav i { position: absolute; left: 0; top: 0; }

.btn.toggle--filter-nav i:before { content: ""; }

.btn.toggle--filter-nav:hover i { background: #11294e; }

.btn.toggle--filter-nav.filter--open { background: #16315b; }

.btn.toggle--filter-nav.filter--open i { background: #11294e; }

.btn.toggle--filter-nav.filter--open i:before { content: ""; }

.btn.toggle--filter-nav.filter--open:hover { background: #8fa8cb; }

.btn.toggle--filter-nav.filter--open:hover i { background: #7d93b3; }

@media (min-width: 700px) { .btn.toggle--filter-nav { padding-left: 40px; } }

/* ------------------------ FILTER SELECTION CONTAINER ----------------------- */
.filter-selection-cnt { overflow: hidden; overflow-x: auto; text-align: center; white-space: nowrap; }

.filter-selection-cnt em { display: inline-block; font-size: 0.8888888889em; margin-right: 20px; }

.filter-selection-cnt > span { margin-right: 20px; font-size: 0.8888888889em; font-style: italic; }

@media (min-width: 700px) { .filter-selection-cnt { text-align: left; margin-top: -20px; }
  .filter-selection-cnt em { display: inline; } }

.tag.btn--label { display: inline-block; background: #eaeef2; font-size: 0.8888888889em; position: relative; color: #141414; margin-right: 20px; margin-bottom: 0; }

.bg--light-blue .tag.btn--label { background: #fff; }

.tag.btn--label .icon { color: #fff; line-height: 40px; background: #8fa8cb; }

.tag.btn--label .icon:before { content: ""; }

.tag.btn--label .icon::before { -webkit-transform: scale(0.6); transform: scale(0.6); }

.tag.btn--label:hover .icon { background: #16315b; }

.tag small { font-size: 0.6666666667em; }

/* ------------------------ LIST & GRID VIEW ----------------------- */
.collapse-cnt, .overview { transition: width 0.2s ease-in-out; }

@media (min-width: 700px) { .collapse-cnt, .overview { margin-left: -20px; margin-right: -20px; transition: min-height 200ms ease-in-out; } }

.collapse-cnt .overview { margin-right: 0; margin-left: 0; }

@media (min-width: 1000px) { .filter-cnt.filter--open .overview { padding-left: 0; width: 65%; margin-right: -20px; float: right; z-index: 11; }
  .filter-cnt.filter--open .overview.grid > .block { width: 50%; } }

/* ------------------------ MAP VIEW ----------------------- */
.overview.map { clear: both; margin-left: 0; margin-right: 0; background: #2D466E; padding-left: 0; padding-right: 0; padding-bottom: 40px; min-height: 640px; display: none; }

.filter-cnt.filter--open .overview.map { width: 100%; margin-right: 0; }

@media (min-width: 1000px) { .filter-cnt.filter--open .overview.map { width: 75%; margin-right: 0; } }

.map-cnt { min-height: 600px; background: #2D466E; position: absolute; width: 100%; top: 0; left: 0; bottom: 0; }

.map-cnt.map--legend { bottom: 40px; }

.map-overlay { position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 2; background: rgba(17, 41, 78, 0.4); color: #fff; }

.map-overlay span { position: absolute; text-align: center; top: 50%; margin-top: -10px; width: 100%; }

.btn--toggle-overlay { position: absolute; right: 0; top: 0; z-index: 3; }

.overview.tx-solr-search-no-results { text-align: center; padding: 20px 0 40px; }

.bar--legend { margin: 0; text-align: center; height: 40px; line-height: 40px; background: #16315b; display: none; }

@media (min-width: 700px) { .bar--legend { display: block; position: absolute; bottom: 0; width: 100%; } }

.bar--legend li { list-style: none; display: inline-block; color: #fff; margin: 0 10px; font-size: 0.8888888889em; position: relative; padding-left: 15px; margin-right: 40px; }

.bar--legend li span { margin: 0 5px; }

.bar--legend li:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.bar--legend li::before { font-size: 1.3em; position: absolute; left: -10px; }

.legend--boskalis-office::before { color: #fff719; }

.legend--dredging::before { color: #842de4; }

.legend--offshore::before, .legend--head-office::before { color: #5DA14D; }

.legend--salvage::before, .legend--smit-response-center::before { color: #C53830; }

.legend--towage::before { color: #DA8D1B; }

/* ------------------------ FILTER NAVIGATION ----------------------- */
.filter-navigation { height: auto; width: 100%; display: none; -webkit-transform: translateX(-100%); transform: translateX(-100%); transition: all 0.2s ease-in-out; margin-bottom: 20px; }

.filter-cnt.filter--open .filter-navigation { -webkit-transform: translateX(0%); transform: translateX(0%); display: block; }

@media (min-width: 1000px) { .filter-navigation { position: absolute; width: 35%; /* 					float: left;  */ bottom: 40px; top: 0px; padding-right: 0; z-index: 10; margin-bottom: 0; transition: min-height 200ms ease-in-out; }
  .view--map .filter-navigation { padding-left: 0; width: 25%; bottom: 0; } }

.filter-navigation > form { background: #16315b; margin-bottom: 0; width: 100%; }

@media (min-width: 1000px) { .filter-navigation > form { height: 100%; } }

.filter-navigation fieldset { position: relative; background: #16315b; padding: 0px; margin: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.2); }

.filter-navigation fieldset legend { text-indent: -9999px; margin: 0; position: absolute; }

.filter-navigation fieldset em { font-size: 0.8888888889em; color: #fff; margin-bottom: 10px; display: block; }

.filter-navigation fieldset > button { background: none; width: 100%; height: 60px; margin: 0; font-size: 1.1111111111em; color: #fff; font-weight: bold; line-height: 60px; text-align: left; }

.filter-navigation fieldset > button:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.filter-navigation fieldset > button::after { margin-left: 8px; display: inline-block; font-size: 13px; position: absolute; top: 2px; }

.filter-navigation fieldset > button:focus, .filter-navigation fieldset > button:hover { outline: none; background: #11294e; }

.filter-navigation fieldset > button:hover { color: #fff719; }

@media (min-width: 1000px) { .filter-navigation fieldset > button { font-size: 1.3333333333em; } }

.filter-navigation .filters, .filter-navigation fieldset > button { padding-left: 40px; padding-right: 40px; }

.filter-navigation fieldset.filter--open { background: #11294e; }

.filter-navigation fieldset.filter--open > button:after { content: ""; }

.filter-navigation fieldset.filter--open .filters { display: block; }

.filters { padding-bottom: 20px; display: none; }

.filters label { font-size: 0.8888888889em; color: #fff; margin-bottom: 12px; padding-left: 0; }

.filters label:hover { color: #fff719; cursor: pointer; }

.filters .label { position: relative; display: block; line-height: 1.1111111111em; }

.filters .label small { font-size: 0.7222222222em; }

.filters label span.label::before { top: 1px; margin-top: 0; }

.filters input[disabled] + .label { opacity: 0.5; }

.filters input[disabled] + .label:hover { color: #fff; }

.filters input[type=checkbox]:checked + .label { color: #fff719; }

.filters input[type=checkbox]:focus + .label { border-bottom: 0; }

.filters .input--filter { margin-bottom: 20px; }

.filters em + .input--filter { margin-bottom: 10px; }

.filters .scroll-ctn { max-height: 310px; overflow-y: auto; overflow-x: hidden; }

.filters li { display: none; }

.filters .tx-solr-facet-show-all { display: none; }

/* ------------------------ TOOLBAR FOOTER (pagination) ----------------------- */
.toolbar--footer { padding: 20px; }

.toolbar--footer span.text--small { display: block; margin: 20px auto 0; text-align: center; max-width: 400px; margin-top: 90px; }

@media (min-width: 700px) { .toolbar--footer span.text--small { margin-top: 40px; } }

@media (min-width: 1000px) { .toolbar--footer span.text--small { float: left; text-align: left; width: 40%; margin: 0; } }

.pagination { font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif; margin: 0; text-align: center; clear: both; margin-bottom: 50px !important; white-space: nowrap; }

.pagination li { list-style: none; display: inline-block; }

.pagination li.next, .pagination li.prev, .pagination li.current { display: inline-block; }

.pagination a:not(.btn) { display: inline-block; width: 40px; height: 40px; line-height: 40px; text-align: center; vertical-align: middle; color: #141414; }

.pagination li.current a { color: #16315b; font-weight: bold; }

.pagination li.current a:hover { text-decoration: none; }

.pagination li:not(.current) a:hover { background: #16315b; color: #fff; }

.pagination .first, .pagination .prev, .pagination .next, .pagination .last { position: absolute; top: 60px; }

.pagination .last { margin-left: 18px; right: 20px; }

.pagination .first { margin-right: 18px; left: 20px; }

.pagination .next { right: 70px; }

.pagination .prev { left: 70px; }

.pagination .first a::before, .pagination .last a::before { -webkit-transform: scale(0.8); transform: scale(0.8); }

.pagination .next a { margin: 0; }

.pagination .prev a:before { content: ""; }

.pagination .first a:before { content: ""; }

.pagination .last a:before { content: ""; }

@media (min-width: 700px) { .pagination { margin-bottom: 0 !important; }
  .pagination li.first, .pagination li.prev, .pagination li.next, .pagination li.last { position: static; } }

@media (min-width: 1000px) { .pagination { text-align: right; float: right; } }

.corporate-legend { display: none; float: left; font-size: 14px; overflow: hidden; }

@media (min-width: 700px) { .corporate-legend { display: block; } }

.corporate-legend img { float: left; margin-right: 10px; max-width: 20px; }

.corporate-legend span { position: relative; top: 25px; }

/* ------------------------ ICONS / COLORS / GENERAL STYLES ----------------------- */
.sort .btn[disabled], .sort .btn.active, .view-switch .btn[disabled] { background: #16315b; color: #fff; cursor: default; }

.btn.grid:before { content: ""; }

.btn.list:before { content: ""; }

.btn.map:before { content: ""; }

.btn.up:before { content: ""; }

.btn.down:before { content: ""; }

.page-section.section--project-overview { background: #d5dee6; }

.mini-filter label, .mini-filter .custom-select { display: inline-block; vertical-align: middle; }

.mini-filter label { margin-right: 20px; font-style: italic; font-size: 0.8888888889em; }

/* --------------------------------------------------------------------- COLLAPSE CONTAINER Alternative layout used for the download center  -------------------------------------------------------------------- */
.collapse-cnt { margin: 0; }

@media (min-width: 700px) and (max-width: 1000px) { .collapse-cnt { margin-top: 20px; } }

.collapse-section { background: #fff; }

.collapse-section > h2 { position: relative; font-size: 1.3333333333em; padding: 0; margin: 0; border-bottom: 1px solid #eaeef2; }

.toggle-section { color: #141414; display: block; padding-left: 40px; padding-top: 14px; padding-bottom: 14px; transition: background 100ms linear; }

.toggle-section:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.toggle-section i { display: inline-block; font-size: 0.75em; }

.toggle-section:focus, .toggle-section:hover { outline: 0; text-decoration: none; background: #fafbfc; }

.toggle-section:focus::before, .toggle-section:hover::before { -webkit-transform: scale(0.6); transform: scale(0.6); }

.toggle-section::before { position: absolute; left: 10px; display: inline-block; -webkit-transform: scale(0.5); transform: scale(0.5); -ms-transform: scale(0.5, 0.5); transition: -webkit-transform 200ms ease-in-out; transition: transform 200ms ease-in-out; transition: transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out; pointer-events: none; }

.section--opened .toggle-section { color: #fff; background: #16315b; }

.section--opened .toggle-section:before { content: ""; }

.section--opened .toggle-section:focus, .section--opened .toggle-section:hover { background: #11294e; }

.collapse-content { padding: 20px; border-bottom: 1px solid #eaeef2; display: none; }

@media (min-width: 700px) { .collapse-content { padding: 40px; } }

.collapse-content .toggle--filter-nav { margin-bottom: 0; }

.collapse-content .list--overview-action { max-width: none; margin-bottom: 0; }

.collapse-content .toolbar { padding: 0; }

.collapse-content .filter-navigation { padding-left: 0; padding-top: 0; padding-right: 0; }

.collapse-content .overview { padding: 0; }

@media (min-width: 1000px) { .collapse-content .filter-cnt.filter--open .overview { margin-right: 0; padding-left: 40px; } }

/*-------------------------------- General section styling goes here  --------------------------------- */
.page-section { padding: 50px 0; position: relative; background: #fff; clear: both; }

@media (min-width: 700px) { .page-section { padding: 100px 0; } }

.page-section .section-cnt { position: relative; }

.page-section .section-cnt:after { content: ""; display: table; clear: both; }

.page-section.pad-top, .section--fw-teaser { padding-bottom: 0; }

.page-section.pad-bottom { padding-top: 0; }

.section--side-content, .section--contact-map { padding-top: 0; padding-bottom: 0; }

.bg--light-blue { background: #eaeef2 !important; }

.bg--medium-blue { background: #d5dee6 !important; }

.bg--blue { background: #8fa8cb !important; }

.bg--violet-blue { background: #b6c5d9 !important; }

.bg--white { background: #fff !important; }

@media (min-width: 700px) { .section-cnt.cnt--overview { margin: -20px; } }

/* Temporary fixed, preferable to change the class names in backend. Depending on amount of work needed. */
/* ------------------------ Simple Section specific fixes ----------------------- */
.page-section.section--subpages, .page-section.section--vessels { background: #eaeef2; }

.page-section.section--our-brands { background: #d5dee6; }

.page-intro + .page-section, .section--subpages + .section--side-content { margin-top: 100px; }

.section--side-content + .section--accordion-fw { margin-top: -100px; }

.page-intro + .page-section.section--link-overview, .page-intro + .page-section.bg--white { margin-top: 0; }

.section--side-content + .page-section.bg--white, .page-section.bg--white + .page-section.bg--white { padding-top: 0; }

.page-section.bg--white + .section--side-content { margin-top: 0; }

/* --------------------------------------------------------------------- SECTION VIDEO / CTA TEASER  Large background image and either a CTA button or video link -------------------------------------------------------------------- */
.section-cnt[class*="teaser--"] { height: 450px; }

@media (min-width: 1441px) { .section-cnt[class*="teaser--"] { height: 540px; } }

.section-cnt[class*="teaser--"]::before { position: absolute; top: 0; left: 0; z-index: 1; display: block; width: 100%; height: 100%; content: ''; background: rgba(22, 49, 91, 0.3); }

.section-cnt[class*="teaser--"] strong { display: block; text-align: center; color: #fff; font-weight: bold; font-size: 1.8888888889em; line-height: 1.25; }

.section-cnt[class*="teaser--"] .btn--video { display: inline-block; margin-bottom: 18px; }

.section-cnt[class*="teaser--"] .btn--cta { margin-top: 20px; }

/* --------------------------------------------------------------------- SECTION HIGHLIGHT TEASER  50/50 row with an image and text left and right and v.v. -------------------------------------------------------------------- */
.section--side-content { height: 100%; margin-top: 100px; margin-bottom: 100px; overflow: hidden; /* ------------------------ Typography Highlight teaser ----------------------- */ }

.section--side-content .content--primary { background: #eaeef2; }

.section--side-content .content--primary > div { padding: 20px; padding-left: 20px; }

@media (min-width: 700px) { .section--side-content .content--primary > div { padding-left: 40px; } }

@media (min-width: 1000px) { .section--side-content .content--primary > div { padding-left: 4vw; } }

@media (min-width: 1280px) { .section--side-content .content--primary > div { padding-left: 8vw; } }

@media (min-width: 1441px) { .section--side-content .content--primary > div { padding-left: 15vw; } }

.section--side-content .content--primary > a { padding-left: 20px; }

@media (min-width: 700px) { .section--side-content .content--primary > a { padding-left: 40px; } }

@media (min-width: 1000px) { .section--side-content .content--primary > a { padding-left: 4vw; } }

@media (min-width: 1280px) { .section--side-content .content--primary > a { padding-left: 8vw; } }

@media (min-width: 1441px) { .section--side-content .content--primary > a { padding-left: 15vw; } }

@media (min-width: 700px) { .section--side-content .content--primary > div { padding-right: 40px; padding-bottom: 40px; padding-top: 40px; } }

@media (min-width: 1000px) { .section--side-content .content--primary { width: 50%; height: 100%; position: relative; float: left; min-height: 500px; padding-bottom: 60px; }
  .section--side-content .content--primary > div { display: block; vertical-align: middle; padding-top: 40px; }
  .section--side-content .content--primary > a { position: absolute; bottom: 0; } }

.section--side-content .content--secondary { background-repeat: no-repeat; background-size: cover; background-position: top center; height: auto; overflow: hidden; }

.section--side-content .content--secondary::after { padding-bottom: 56.25%; content: ''; display: block; }

@media (min-width: 1000px) { .section--side-content .content--secondary { width: 50%; height: 100%; position: absolute; right: 0%; background-position: center; } }

.section--side-content.content--right { margin-right: 0; }

.section--side-content.content--right .content--primary > div { padding: 20px; padding-right: 20px; }

@media (min-width: 700px) { .section--side-content.content--right .content--primary > div { padding-right: 40px; } }

@media (min-width: 1000px) { .section--side-content.content--right .content--primary > div { padding-right: 4vw; } }

@media (min-width: 1280px) { .section--side-content.content--right .content--primary > div { padding-right: 8vw; } }

@media (min-width: 1441px) { .section--side-content.content--right .content--primary > div { padding-right: 15vw; } }

@media (min-width: 700px) and (max-width: 1000px) { .section--side-content.content--right .content--primary > div { padding: 40px; padding-top: 40px; } }

@media (min-width: 1000px) { .section--side-content.content--right .content--primary { float: right; right: 0; }
  .section--side-content.content--right .content--primary > div { padding-top: 40px; padding-left: 40px; padding-bottom: 40px; }
  .section--side-content.content--right .content--primary > a { padding-left: 40px; }
  .section--side-content.content--right .content--secondary { left: 0; right: auto; } }

.section--side-content h3 { margin-bottom: 20px; padding-top: 20px; }

.section--side-content .content--primary > a { width: 100%; text-align: left; display: block; font-size: 1em; }

.section--side-content .content--primary > a:after { content: ""; }

.section--side-content .content--primary > a > span { margin-right: 10px; padding: 0; }

.section--side-content .content--primary > a::after { font-size: 0.7777777778em; }

.section--side-content .content--primary > a:hover > span { border-color: #fff; }

.section--side-content p { margin-bottom: 1.529411765em; }

.section--side-content p:last-of-type { margin-bottom: 0; }

.section--side-content .widget { margin-top: 40px; margin-bottom: 0; }

/* --------------------------------------------------------------------- SECTION INTERACTIVE HIGHLIGHT TEASER  50/50 row with a bullet list with rollover which activates an image -------------------------------------------------------------------- */
.section--side-content.slider ul .slide-item { padding-left: 30px; display: block; }

.section--side-content.slider ul .slide-item:before { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }

.section--side-content.slider ul .slide-item::before { position: absolute; left: 5px; font-size: 0.7777777778em; }

@media (min-width: 700px) { .section--side-content.slider ul li { height: 50px; line-height: 50px; padding: 0; }
  .section--side-content.slider ul .slide-item { display: block; position: relative; height: 100%; margin-right: -40px; padding-left: 40px; }
  .section--side-content.slider ul .slide-item::after { content: ''; position: absolute; width: 0; height: 0; right: -50px; top: 0; border: 25px solid; border-color: transparent; z-index: 1; }
  .section--side-content.slider.content--right ul .slide-item { margin-right: 0; margin-left: -40px; padding-left: 80px; }
  .section--side-content.slider.content--right ul .slide-item::before { left: 40px; }
  .section--side-content.slider.content--right ul .slide-item::after { left: -50px; right: auto; }
  .section--side-content.slider ul li a:focus, .section--side-content.slider ul li a:hover, .section--side-content.slider ul li.active .slide-item { text-decoration: none; background: #d5dee6; outline: 0; }
  .section--side-content.slider ul li a:focus::after, .section--side-content.slider ul li a:hover::after, .section--side-content.slider ul li.active .slide-item::after { border-left-color: #d5dee6; }
  .section--side-content.slider.content--right ul li .slide-item:focus::after, .section--side-content.slider.content--right ul li .slide-item:hover::after, .section--side-content.slider.content--right ul li.active .slide-item::after { border-right-color: #d5dee6; border-left-color: transparent; } }

.content--secondary { position: relative; overflow: hidden; }

.section--activities .content--secondary { display: none; }

@media (min-width: 700px) { .section--activities .content--secondary { display: block; } }

@media (min-width: 700px) and (max-width: 1000px) { .section--side-content.slider .content--primary > div { padding-top: 100px; } }

.content--secondary .slide { height: 100%; background-repeat: no-repeat; background-size: cover; position: absolute; top: 0; width: 100%; opacity: 0; visibility: hidden; transition: opacity 200ms ease-in-out 500ms, visibility 200ms ease-in-out 500ms; }

.content--secondary .slide.active { opacity: 1; visibility: visible; transition: opacity 200ms ease-in-out, visibility 200ms ease-in-out; }

.content--secondary .slide .caption { max-width: 50%; left: auto; right: 0; }

.content--right .content--secondary .slide .caption { left: 0; right: auto; }

/* --------------------------------------------------------------------- SECTION OVERFLOW BlOCKS Custom block layout where on a smaller device the blocks change in to a slider in stead of showing up underneath eachter -------------------------------------------------------------------- */
.section-cnt.cnt--overflow { overflow: visible; }

.section-cnt.cnt--overflow.slick-slider { margin: 0 -20px; }

.section-cnt.cnt--overflow.slick-slider .block { padding-left: 10px; padding-right: 10px; }

@media (min-width: 1000px) { .section-cnt.cnt--overflow { font-family: 'empty'; text-align: center; }
  .section-cnt.cnt--overflow .block { float: none; padding-left: 20px; padding-right: 20px; } }

/* --------------------------------------------------------------------- SECTION BLOCK CAROUSEL Carousel as used by the brands -------------------------------------------------------------------- */
.page-section .cnt--carousel { margin: 0 -20px; padding: 0; overflow: visible; text-align: center; font-family: empty; }

.page-section .cnt--carousel .block { font-family: "futura-pt-alt", "futura-pt", Arial, sans-serif; padding-left: 10px; padding-right: 10px; }

.page-section .cnt--carousel .block:focus { outline: 0; }

@media (min-width: 1000px) { .page-section .cnt--carousel .block { width: 25%; display: inline-block; float: none; padding-left: 20px; padding-right: 20px; }
  .page-section .cnt--carousel .slick-arrow { margin-top: -45px; } }

/* --------------------------------------------------------------------- SECTION OVERVIEW BlOCKS General layout for displaying blocks in a grid -------------------------------------------------------------------- */
.section-cnt.cnt--overview { overflow: visible; }

.overview.grid, .cnt--overview { text-align: center; font-family: 'empty'; }

.overview.grid .btn.btn--link, .cnt--overview .btn.btn--link { font-family: "futura-pt", Arial, sans-serif; }

@media (min-width: 700px) { .section-cnt.col--1 > .block { width: 70%; } }

@media (min-width: 1000px) { .section-cnt { padding: 0; }
  .section-cnt.col--1 > .block { width: 50%; display: block; margin-left: auto; margin-right: auto; }
  .section-cnt.col--2 > .block { width: 50%; }
  .section-cnt.col--4 > .block { width: 25%; } }

@media (min-width: 700px) { .page-section .section-cnt.cnt--overview:not(.slick-slider) { margin-bottom: -40px; }
  .cnt--overview + .cnt--centered { margin-top: 40px; } }

/* ------------------------ Unique styling for a certain overview section ----------------------- */
.section--related { background: #b6c5d9; }

/* --------------------------------------------------------------------- SECTION LIST TEASER Large background image with a block containing some text and list with links used for the Markets Overview page -------------------------------------------------------------------- */
.teaser--links { padding-right: 20px; padding-right: 0; }

@media (min-width: 700px) { .teaser--links { padding-right: 40px; } }

@media (min-width: 1000px) { .teaser--links { padding-right: 4vw; } }

@media (min-width: 1280px) { .teaser--links { padding-right: 8vw; } }

@media (min-width: 1441px) { .teaser--links { padding-right: 15vw; } }

.teaser--links:after { content: ""; display: table; clear: both; }

.teaser--links .block { margin-top: 0; }

.teaser--links .widget { margin-bottom: 0; }

.teaser--links .backstretch { position: static !important; }

@media (min-width: 700px) { .teaser--links .backstretch { position: absolute !important; }
  .teaser--links .block { float: right; width: 410px; margin-top: 40px; margin-bottom: 40px; } }

/* --------------------------------------------------------------------- SECTION ASIDE  Section with a teaser block next to a list or other simple content -------------------------------------------------------------------- */
.cnt--aside { position: relative; }

.cnt--aside > .block { margin: 40px auto 0; display: block; }

@media (min-width: 1000px) { .cnt--aside > .block { width: 33.33333%; position: absolute; top: 0; margin-top: 0; right: 0; } }

/* --------------------------------------------------------------------- SECTION INTERACTIVE IMAGE  Interactive image with clickable markers which reveal a tooltip -------------------------------------------------------------------- */
.section-cnt.cnt--interactive-image { padding: 0 20px; }

@media (min-width: 700px) { .section-cnt.cnt--interactive-image { padding: 0; } }

.cnt--interactive-image .marker { position: absolute; border-radius: 100%; width: 40px; height: 40px; text-align: center; padding: 0; background: #16315b; margin-top: -20px; margin-left: -20px; color: #fff; }

.cnt--interactive-image .marker:hover { background: #11294e; }

.cnt--interactive-image .image-wrapper, .cnt--interactive-image .marker { display: none; }

.cnt--interactive-image .image-wrapper img { max-width: none; width: 100%; display: block; }

@media (min-width: 700px) { .cnt--interactive-image .block--tip { display: none; }
  .cnt--interactive-image .image-wrapper, .cnt--interactive-image .marker { display: block; } }

/* --------------------------------------------------------------------- SECTION PLAIN TEXT As copyright notice in media library -------------------------------------------------------------------- */
.container.text-cnt p { max-width: none; }

/* --------------------------------------------------------------------- SECTION CONTACT MAP Section with a large map and a block with contact details -------------------------------------------------------------------- */
.section--contact-map .overview.map { display: block; padding-bottom: 0; min-height: 0; }

.section--contact-map .map-cnt { position: static; min-height: 200px; }

@media (min-width: 700px) { .section--contact-map .map-cnt { position: absolute; bottom: 40px; min-height: 600px; } }

.section--contact-map .block--address { margin-right: 20px; margin-right: 0; margin-bottom: 0; }

@media (min-width: 700px) { .section--contact-map .block--address { margin-right: 40px; } }

@media (min-width: 1000px) { .section--contact-map .block--address { margin-right: 4vw; } }

@media (min-width: 1280px) { .section--contact-map .block--address { margin-right: 8vw; } }

@media (min-width: 1441px) { .section--contact-map .block--address { margin-right: 15vw; } }

.section--contact-map .block--address h2 { margin-bottom: 10px; }

.section--contact-map .block--address a, .section--contact-map .block--address strong, .section--contact-map .block--address p { font-size: 0.8888888889em; }

@media (min-width: 700px) { .section--contact-map .block--address { margin-top: 40px; margin-bottom: 40px; padding-left: 0; float: right; }
  .section--contact-map .block--address .content { padding: 40px; } }

@media (min-width: 1000px) { .section--contact-map .block--address { max-width: 385px; } }

.section--contact-map .block--address .content:nth-child(2) { background: #d5dee6; }

/*-------------------------------- All the unique styles for pages go here  --------------------------------- */
/* --------------------------------------------------------------------- INVESTOR RELATIONS Intro with key figures and aside widgets for share and contact details -------------------------------------------------------------------- */
.page--ir aside .widget { margin-bottom: 0; }

.page--ir .widget--shares { margin-top: 20px; }

@media (min-width: 700px) and (max-width: 1000px) { .page--ir aside .widget { border-bottom: 0; padding: 20px 40px; margin-bottom: 0; margin-top: 0; }
  .page--ir aside .widget:last-child { border-left: 1px solid #c1c9d0; } }

/* --------------------------------------------------------------------- LINK OVERVIEW Link lists split over multiple columns -------------------------------------------------------------------- */
.link-grid[data-columns]::before { content: '1 .col--full'; }

@media (min-width: 700px) { .link-grid[data-columns]::before { content: '2 .col--quart'; } }

@media (min-width: 1000px) { .link-grid[data-columns]::before { content: '3 .col--third'; } }

/* --------------------------------------------------------------------- SEARCH RESULTS Page displaying all the search results, duh! -------------------------------------------------------------------- */
.page-section.section--search-results { padding-top: 20px; background: #d5dee6; }

.page-section.section--search-results .toolbar + .filter-cnt { margin-top: -20px; }

@media (min-width: 700px) { .page-section.section--search-results { padding-top: 40px; }
  .page-section.section--search-results .toolbar + .filter-cnt { margin-top: 0px; } }

button.btn--reset:before { content: ""; }

button.btn--reset:focus, button.btn--reset:hover { background: #fff719; color: #141414; }

.search--large { margin-top: 34px; margin-bottom: 0; }

.search--large:after { content: ""; display: table; clear: both; }

.search--large input { font-style: italic; padding-right: 60px; }

@media (min-width: 700px) { .search--large label { position: relative; width: 60%; }
  .search--large input, .search--large button { height: 60px; line-height: 60px; font-size: 1.2222222222em; }
  .search--large input, .search--large .btn--search { float: left; position: static; }
  .search--large input { padding-left: 25px; padding-right: 80px; }
  .search--large button.btn--search { background: #fff719; width: auto; padding: 0 30px; font-weight: bold; margin-left: 20px; display: block; }
  .search--large button.btn--search:after { content: ""; speak: none; font-style: normal; font-weight: normal; font-family: Icons; }
  .search--large button.btn--search::before { display: none; }
  .search--large button.btn--search::after { font-size: 19px; }
  .search--large button.btn--search:hover { background: #fff; color: #141414; }
  .search--large button.btn--search span { display: inline-block; clip: auto; height: auto; margin: 0; overflow: visible; width: auto; position: relative; padding: 0 5px; }
  .search--large .btn--reset { width: 60px; font-size: 1.0555555556em; } }

@media (min-width: 1000px) { .search--large label { width: 630px; } }

/* --------------------------------------------------------------------- PROJECT DETAIL  Detail page for the projects.  -------------------------------------------------------------------- */
.page--project-detail .page-content { background: #eaeef2; }

@media (min-width: 1000px) { .page--project-detail .page-aside + .page-content { padding-top: 0; } }

.page--project-detail-intro { font-weight: 700; padding: 35px 0 25px 0; }

.page-content.content-main[itemprop="articleBody"] { min-height: 450px; }

/* --------------------------------------------------------------------- HOMEPAGE Custom styling for the homepage -------------------------------------------------------------------- */
@media (min-width: 1000px) { .section--quick-links .block--links { height: 330px; }
  .section--quick-links .block--links > div { position: absolute; width: calc(100% - 40px); }
  .section--quick-links .block--links .footing { position: absolute; bottom: 0; width: 100%; } }

.section--quick-links .widget { margin-bottom: 20px; }

.section--quick-links .widget:last-of-type { margin-bottom: 20px; }

.fancybox-overlay { background: rgba(0, 0, 0, 0.5); }

.fb--subscribe .fancybox-skin { box-shadow: none; border-radius: 0; }

.fb--subscribe .popup { display: block; }

.fancybox-inner .mCSB_inside > .mCSB_container { margin-right: 0; }

.fancybox-inner .mCSB_scrollTools { top: 80px; bottom: 30px; right: 10px; }

.fancybox-close { background: none; top: 0; right: 0; width: 50px; height: 50px; text-align: center; line-height: 50px; font-size: 0.5555555556em; color: #141414; background: #fff; }

.fancybox-close:before { content: ""; }

.fancybox-close:hover { background: #fff719; }

.popup { color: #141414; background: #16315b; font-size: 18px; }

.popup:after { content: ""; display: table; clear: both; }

.popup header, .popup form, .popup aside { padding: 30px 40px; margin: 0; }

.popup header { background: #fff; padding-top: 40px; }

.popup header .heading--section { margin-bottom: 12px; }

.popup form { background: #d5dee6; /* 		.btn { font-size: em(18px); } */ }

.popup form .label--strong, .popup form .label { font-size: 0.8888888889em; }

.popup aside { background: #16315b; color: #fff; }

.popup aside .btn:first-of-type { margin-left: 0; }

.popup aside .list--links { margin-bottom: 40px; }

.popup aside strong { font-weight: normal; font-size: 0.8888888889em; display: block; line-height: 1.4; margin-bottom: 10px; }

@media (min-width: 700px) { .popup form, .popup aside { float: left; }
  .popup form { width: 60%; }
  .popup aside { width: 40%; }
  .popup .label--strong { margin-top: 5px; margin-bottom: 5px; }
  .popup form fieldset:first-child .label--strong { margin-top: 0; } }

.notification { font-size: 12px; font-weight: bold; }

.video-poster { background: no-repeat 50% 50%; background-size: cover; min-height: 250px; }

.nav-opened .big-video-vid-dimensions { left: 0 !important; }

.emergency-box { background-color: #16315b; color: #fff; padding: 10px 20px 0; position: fixed; width: 246px; right: -246px; top: 50%; transition: all 0.3s linear; -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index: 200; }

@media (min-width: 700px) { .emergency-box { width: 306px; right: -306px; padding: 10px 30px; } }

@media (min-width: 1000px) { .emergency-box { padding: 40px; } }

.emergency-box .btn { background-color: #fff719; color: #141414; margin-left: 0; }

.emergency-box .btn:hover { background-color: #fff719; }

.emergency-box h4, .emergency-box p { margin: 0 0 10px; }

.emergency-box .trigger { background-color: #16315b; color: #fff; font-size: 16px; padding: 30px 10px; position: absolute; top: 0; right: 100%; text-align: center; width: 74px; }

.emergency-box .trigger span:before { content: "\f10c"; font-family: Icons; }

.box-open .emergency-box .trigger span:before { content: "\f10d"; }

.box-open .emergency-box { right: 0; }

.maps-tip .hidden { display: none; }

.maps-tip .slick-arrow.slick-prev, .maps-tip .slick-arrow.slick-next { background-color: #8fa8cb; margin-top: 0; top: 0; transition: background .65s ease-in-out; }

.maps-tip .slick-arrow.slick-prev:before, .maps-tip .slick-arrow.slick-next:before { color: #fff; }

.maps-tip .slick-arrow.slick-prev:hover, .maps-tip .slick-arrow.slick-prev:focus, .maps-tip .slick-arrow.slick-next:hover, .maps-tip .slick-arrow.slick-next:focus { background-color: #16315b; -webkit-transform: translateX(0); transform: translateX(0); }

.maps-tip .slick-arrow.slick-prev { left: 0; }

.maps-tip .slick-arrow.slick-prev:hover { left: 0; -webkit-transform: translateX(0); transform: translateX(0); }

.maps-tip .slick-arrow.slick-next { left: 41px; right: auto; }

.maps-tip .slick-arrow.slick-next:hover { right: auto; -webkit-transform: translateX(0); transform: translateX(0); }

.maps-tip .block.block--location, .maps-tip .block.block--location:focus { outline: none; }

.maps-tip .block--location .content { padding-top: 50px; }

.maps-tip .slick-slide { height: 370px; }

.badge img { margin-top: 20px; }

.badge-left { margin-right: 10px; }

/* --------------------------------------------------------------------- DEFAULT PRELOADER STYLING -------------------------------------------------------------------- */
.preloader-popup { background-color: rgba(0, 0, 0, 0.5); position: fixed; z-index: 1000; bottom: 0; right: 0; left: 0; top: 0; }

.preloader-popup .popup__container { position: absolute; width: 100%; max-width: 960px; top: 50%; right: 0; bottom: auto; left: 0; margin: 0 auto; overflow: visible; -webkit-transform: translateY(-50%); transform: translateY(-50%); -webkit-overflow-scrolling: touch; }

@media (min-width: 300px) { .preloader-popup .popup__container { max-width: 600px; padding: 20px; } }

.preloader-popup .popup__close { width: 24px; height: 24px; position: absolute; z-index: 110; top: -35px; right: -10px; border: 0; padding: 0; cursor: pointer; background: url(../img/Icons/icon-close.svg); }

@media (min-width: 300px) { .preloader-popup .popup__close { top: -20px; right: 20px; } }

.preloader-popup .popup__content { background-color: #fff; padding: 100px 50px; text-align: center; }

@media (min-width: 300px) { .preloader-popup .popup__content { padding: 20px; } }

.preloader-popup .animation { height: 150px; position: relative; margin-top: 40px; }

@media (min-width: 300px) { .preloader-popup .animation { height: 100%; min-height: 150px; } }

.preloader-popup .animation .animation__item { width: 400px; height: 150px; position: absolute; top: 0; left: 0; right: 0; margin: 0 auto; }

@media (min-width: 300px) { .preloader-popup .animation .animation__item { width: 100%; height: 100%; min-height: 150px; max-width: 400px; } }

@-webkit-keyframes first { 0% { opacity: 1; }
  100% { opacity: 0; } }

@keyframes first { 0% { opacity: 1; }
  100% { opacity: 0; } }

@-webkit-keyframes second { 0% { opacity: 0; }
  100% { opacity: 1; } }

@keyframes second { 0% { opacity: 0; }
  100% { opacity: 1; } }

.preloader-popup .animation .first { background-size: 100% auto; background-repeat: no-repeat; -webkit-animation: first 5s normal forwards ease; animation: first 5s normal forwards ease; -webkit-animation-delay: 500ms; animation-delay: 500ms; }

.preloader-popup .animation .second { background-size: 100% auto; background-repeat: no-repeat; -webkit-animation: second 5s normal forwards ease; animation: second 5s normal forwards ease; -webkit-animation-delay: 2s; animation-delay: 2s; opacity: 0; }

.flash-messages-container { margin-bottom: 20px; }

.flash-messages-container .flash-messages-container-inner .typo3-messages { margin: 0; }

.flash-messages-container .flash-messages-container-inner .alert { border: 1px solid #7d93b3; list-style: none; padding: 20px; }

.flash-messages-container .flash-messages-container-inner .alert:last-child { padding-bottom: 2em; }

.flash-messages-container .flash-messages-container-inner .alert > .alert-message::before { content: '-'; margin: 0 0.5em; }

.flash-messages-container .flash-messages-container-inner .alert.alert-notice { background-color: #8fa8cb; }

.flash-messages-container .flash-messages-container-inner .alert.alert-warning { background-color: #fff719; }

.flash-messages-container .flash-messages-container-inner .alert.alert-error { background-color: #C53830; color: #fff; }

/* Tipped - A Complete Javascript Tooltip Solution - v4.4.2 (c) 2012-2015 Nick Stakenburg http://www.tippedjs.com License: http://www.tippedjs.com/license */
.tpd-tooltip { position: absolute; }

/* Fix for CSS frameworks that don't keep the use of box-sizing: border-box within their own namespace */
.tpd-tooltip, .tpd-tooltip [class^="tpd-"] { box-sizing: content-box; }

/* Content */
.tpd-content-wrapper { position: absolute; top: 0; left: 0; float: left; width: 100%; height: 100%; overflow: hidden; }

.tpd-content-spacer, .tpd-content-relative, .tpd-content-relative-padder { float: left; position: relative; }

.tpd-content-relative { width: 100%; }

.tpd-content { float: left; clear: both; position: relative; padding: 10px; font-size: 11px; line-height: 16px; color: #fff; }

.tpd-has-inner-close .tpd-content-relative .tpd-content { padding-right: 0 !important; }

.tpd-tooltip .tpd-content-no-padding { padding: 0 !important; }

.tpd-title-wrapper { float: left; position: relative; overflow: hidden; }

.tpd-title-spacer { float: left; }

.tpd-title-relative, .tpd-title-relative-padder { float: left; position: relative; }

.tpd-title-relative { width: 100%; }

.tpd-title { float: left; position: relative; font-size: 11px; line-height: 16px; padding: 10px; font-weight: bold; text-transform: uppercase; color: #fff; }

.tpd-has-title-close .tpd-title { padding-right: 0 !important; }

.tpd-close { position: absolute; top: 0; right: 0; width: 28px; height: 28px; cursor: pointer; overflow: hidden; color: #fff; }

.tpd-close-icon { float: left; font-family: Arial, Baskerville, monospace; font-weight: normal; font-style: normal; text-decoration: none; width: 28px; height: 28px; font-size: 28px; line-height: 28px; text-align: center; }

/* Skin */
.tpd-skin { position: absolute; top: 0; left: 0; }

.tpd-frames { position: absolute; top: 0; left: 0; }

.tpd-frames .tpd-frame { float: left; width: 100%; height: 100%; clear: both; display: none; }

.tpd-visible-frame-top .tpd-frame-top { display: block; }

.tpd-visible-frame-bottom .tpd-frame-bottom { display: block; }

.tpd-visible-frame-left .tpd-frame-left { display: block; }

.tpd-visible-frame-right .tpd-frame-right { display: block; }

.tpd-backgrounds { position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-transform-origin: 0% 0%; transform-origin: 0% 0%; }

.tpd-background-shadow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: transparent; pointer-events: none; }

.tpd-no-shadow .tpd-skin .tpd-background-shadow { box-shadow: none !important; }

.tpd-background-box { position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; }

/* only the top background box should be shown when not using a stem */
.tpd-no-stem .tpd-background-box, .tpd-no-stem .tpd-shift-stem { display: none; }

.tpd-no-stem .tpd-background-box-top { display: block; }

.tpd-background-box-shift, .tpd-background-box-shift-further { position: relative; float: left; width: 100%; height: 100%; }

.tpd-background { border-radius: 10px; float: left; clear: both; background: none; /* Safari */ background-clip: padding-box; /* IE9+, Firefox 4+, Opera, Chrome */ border-style: solid; border-width: 1px; border-color: #fff; border-color: rgba(255, 255, 255, 0.1); /* opacity here bugs out in firefox, .tpd-background-content should have no opacity if this opacity is less than 1 */ }

.tpd-background-loading { display: none; }

/* no radius */
.tpd-no-radius .tpd-skin .tpd-frames .tpd-frame .tpd-backgrounds .tpd-background { border-radius: 0; }

.tpd-background-title { float: left; clear: both; width: 100%; background-color: #fff; }

.tpd-background-content { float: left; clear: both; width: 100%; background-color: #fff; }

.tpd-background-border-hack { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-style: solid; }

.tpd-background-box-top { top: 0; }

.tpd-background-box-bottom { bottom: 0; }

.tpd-background-box-left { left: 0; }

.tpd-background-box-right { right: 0; }

/* iframeshim IE6 */
.tpd-iframeshim { position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; zoom: 1; filter: alpha(opacity=0); opacity: 0; }

/* Skin / Stems */
.tpd-shift-stem { position: absolute; top: 0; left: 0; overflow: hidden; }

.tpd-shift-stem-side { position: absolute; }

.tpd-frame-top .tpd-shift-stem-side, .tpd-frame-bottom .tpd-shift-stem-side { width: 100%; }

.tpd-frame-left .tpd-shift-stem-side, .tpd-frame-right .tpd-shift-stem-side { height: 100%; }

.tpd-stem { position: absolute; top: 0; left: 0; overflow: hidden; /* shows possible invalid subpx rendering */ width: 16px; /* best cross browser stem: width = 2 x height (90deg angle) */ height: 8px; margin-left: 3px; /* space from the side */ margin-top: 2px; /* space between target and stem */ -webkit-transform-origin: 0% 0%; transform-origin: 0% 0%; }

/* remove margins once we're done measuring */
.tpd-tooltip .tpd-skin .tpd-frames .tpd-frame .tpd-shift-stem .tpd-stem-reset { margin: 0 !important; }

.tpd-stem-spacer { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.tpd-stem-reset .tpd-stem-spacer { margin-top: 0; }

.tpd-stem-point { width: 100px; position: absolute; top: 0; left: 50%; }

.tpd-stem-downscale, .tpd-stem-transform { float: left; width: 100%; height: 100%; -webkit-transform-origin: 0% 0%; transform-origin: 0% 0%; position: relative; }

.tpd-stem-side { width: 50%; height: 100%; float: left; position: relative; overflow: hidden; }

.tpd-stem-side-inversed { -webkit-transform: scale(-1, 1); transform: scale(-1, 1); }

.tpd-stem-triangle { width: 0; height: 0; border-bottom-style: solid; border-left-color: transparent; border-left-style: solid; position: absolute; top: 0; left: 0; }

.tpd-stem-border { width: 20px; height: 100%; position: absolute; top: 0; left: 50%; background-color: #fff; /* will become transparent */ border-right-color: #fff; border-right-style: solid; border-right-width: 0; }

.tpd-stem-border-corner { position: absolute; top: 0; left: 50%; height: 100%; border-right-style: solid; border-right-width: 0; }

/* fixes rendering issue in IE */
.tpd-stem * { z-index: 0; zoom: 1; }

/* used by IE < 9 */
.tpd-stem-border-center-offset, .tpd-stem-border-center-offset-inverse { float: left; position: relative; width: 100%; height: 100%; overflow: hidden; }

.tpd-stem-notransform { float: left; width: 100%; height: 100%; position: relative; }

.tpd-stem-notransform .tpd-stem-border { height: 100%; position: relative; float: left; top: 0; left: 0; margin: 0; }

.tpd-stem-notransform .tpd-stem-border-center { position: absolute; }

.tpd-stem-notransform .tpd-stem-border-corner { background: #fff; border: 0; top: auto; left: auto; }

.tpd-stem-notransform .tpd-stem-border-center, .tpd-stem-notransform .tpd-stem-triangle { height: 0; border: 0; left: 50%; }

/* transformations for left/right/bottom */
.tpd-stem-transform-left { -webkit-transform: rotate(-90deg) scale(-1, 1); transform: rotate(-90deg) scale(-1, 1); }

.tpd-stem-transform-right { -webkit-transform: rotate(90deg) translate(0, -100%); transform: rotate(90deg) translate(0, -100%); }

.tpd-stem-transform-bottom { -webkit-transform: scale(1, -1) translate(0, -100%); transform: scale(1, -1) translate(0, -100%); }

/* Spinner */
.tpd-spinner { position: absolute; top: 50%; left: 50%; width: 46px; height: 36px; }

.tpd-spinner-spin { position: relative; float: left; margin: 8px 0 0 13px; text-indent: -9999em; border-top: 2px solid rgba(255, 255, 255, 0.2); border-right: 2px solid rgba(255, 255, 255, 0.2); border-bottom: 2px solid rgba(255, 255, 255, 0.2); border-left: 2px solid #fff; -webkit-animation: tpd-spinner-animation 1.1s infinite linear; animation: tpd-spinner-animation 1.1s infinite linear; box-sizing: border-box !important; }

.tpd-spinner-spin, .tpd-spinner-spin:after { border-radius: 50%; width: 20px; height: 20px; }

@-webkit-keyframes tpd-spinner-animation { 0% { -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes tpd-spinner-animation { 0% { -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* show the loader while loading and hide all the content */
.tpd-is-loading .tpd-content-wrapper, .tpd-is-loading .tpd-title-wrapper { display: none; }

.tpd-is-loading .tpd-background { display: none; }

.tpd-is-loading .tpd-background-loading { display: block; }

/* Resets while measuring content */
.tpd-tooltip-measuring { top: 0; left: 0; position: absolute; max-width: 100%; width: 100%; }

.tpd-tooltip-measuring .tpd-skin, .tpd-tooltip-measuring .tpd-spinner { display: none; }

.tpd-tooltip-measuring .tpd-content-wrapper, .tpd-tooltip-measuring .tpd-title-wrapper { display: block; }

/* Links */
/*
.tpd-tooltip a,
.tpd-tooltip a:hover { color: #808080; text-decoration: underline; }
.tpd-tooltip a:hover { color: #6c6c6c; }
*/
/* Sizes */
/* x-small */
.tpd-size-x-small .tpd-content, .tpd-size-x-small .tpd-title { padding: 7px 8px; font-size: 10px; line-height: 15px; }

.tpd-size-x-small .tpd-background { border-radius: 5px; }

.tpd-size-x-small .tpd-stem { width: 12px; height: 6px; margin-left: 4px; margin-top: 2px; /* space between target and stem */ }

.tpd-size-x-small.tpd-no-radius .tpd-stem { margin-left: 7px; }

.tpd-size-x-small .tpd-close { margin-bottom: 1px; }

.tpd-size-x-small .tpd-spinner { width: 35px; height: 29px; }

.tpd-size-x-small .tpd-spinner-spin { margin: 6px 0 0 9px; }

.tpd-size-x-small .tpd-spinner-spin, .tpd-size-x-small .tpd-spinner-spin:after { width: 17px; height: 17px; }

/* small */
.tpd-size-small .tpd-content, .tpd-size-small .tpd-title { padding: 8px; font-size: 10px; line-height: 16px; }

.tpd-size-small .tpd-background { border-radius: 6px; }

.tpd-size-small .tpd-stem { width: 14px; height: 7px; margin-left: 5px; margin-top: 2px; /* space between target and stem */ }

.tpd-size-small.tpd-no-radius .tpd-stem { margin-left: 8px; }

.tpd-size-small .tpd-close { margin: 2px 1px; }

.tpd-size-small .tpd-spinner { width: 42px; height: 32px; }

.tpd-size-small .tpd-spinner-spin { margin: 7px 0 0 13px; }

.tpd-size-small .tpd-spinner-spin, .tpd-size-small .tpd-spinner-spin:after { width: 18px; height: 18px; }

/* medium (default) */
.tpd-size-medium .tpd-content, .tpd-size-medium .tpd-title { padding: 10px; font-size: 11px; line-height: 16px; }

.tpd-size-medium .tpd-background { border-radius: 8px; }

.tpd-size-medium .tpd-stem { width: 16px; /* best cross browser stem width is 2xheight, for a 90deg angle */ height: 8px; margin-left: 6px; /* space from the side */ margin-top: 2px; /* space between target and stem */ }

.tpd-size-medium.tpd-no-radius .tpd-stem { margin-left: 10px; }

.tpd-size-medium .tpd-close { margin: 4px 2px; }

/* ideal spinner dimensions don't cause movement op top and on the stem when switching to text using position:'topleft' */
.tpd-size-medium .tpd-spinner { width: 50px; height: 36px; }

.tpd-size-medium .tpd-spinner-spin { margin: 8px 0 0 15px; }

.tpd-size-medium .tpd-spinner-spin, .tpd-size-medium .tpd-spinner-spin:after { width: 20px; height: 20px; }

/* large */
.tpd-size-large .tpd-content, .tpd-size-large .tpd-title { padding: 10px; font-size: 13px; line-height: 18px; }

.tpd-size-large .tpd-background { border-radius: 8px; }

.tpd-size-large .tpd-stem { width: 18px; height: 9px; margin-left: 7px; margin-top: 2px; /* space between target and stem */ }

.tpd-size-large.tpd-no-radius .tpd-stem { margin-left: 10px; }

.tpd-size-large .tpd-close { margin: 5px 2px 5px 2px; }

.tpd-size-large .tpd-spinner { width: 54px; height: 38px; }

.tpd-size-large .tpd-spinner-spin { margin: 9px 0 0 17px; }

.tpd-size-large .tpd-spinner-spin, .tpd-size-large .tpd-spinner-spin:after { width: 20px; height: 20px; }

/* Skins */
/* default (dark) */
.tpd-skin-dark .tpd-content, .tpd-skin-dark .tpd-title, .tpd-skin-dark .tpd-close { color: #fff; }

.tpd-skin-dark .tpd-background-content, .tpd-skin-dark .tpd-background-title { background-color: #FFF; }

/* line below the title */
.tpd-skin-dark .tpd-title-wrapper { border-bottom: 1px solid #404040; }

/* spinner */
.tpd-skin-dark .tpd-spinner-spin { border-left-color: #fff; }

/* links */
.tpd-skin-dark a { color: #ccc; }

.tpd-skin-dark a:hover { color: #c0c0c0; }

/*
== malihu jquery custom scrollbar plugin ==
Plugin URI: http://manos.malihu.gr/jquery-custom-content-scroller
*/
/* CONTENTS:  1. BASIC STYLE - Plugin's basic/essential CSS properties (normally, should not be edited).  2. VERTICAL SCROLLBAR - Positioning and dimensions of vertical scrollbar.  3. HORIZONTAL SCROLLBAR - Positioning and dimensions of horizontal scrollbar. 4. VERTICAL AND HORIZONTAL SCROLLBARS - Positioning and dimensions of 2-axis scrollbars.  5. TRANSITIONS - CSS3 transitions for hover events, auto-expanded and auto-hidden scrollbars.  6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS  6.1 THEMES - Scrollbar colors, opacity, dimensions, backgrounds etc. via ready-to-use themes. */
/* 
------------------------------------------------------------------------------------------------------------------------
1. BASIC STYLE  
------------------------------------------------------------------------------------------------------------------------
*/
.mCustomScrollbar { -ms-touch-action: pinch-zoom; touch-action: pinch-zoom; /* direct pointer events to js */ }

.mCustomScrollbar.mCS_no_scrollbar, .mCustomScrollbar.mCS_touch_action { -ms-touch-action: auto; touch-action: auto; }

.mCustomScrollBox { /* contains plugin's markup */ position: relative; overflow: hidden; height: 100%; max-width: 100%; outline: none; direction: ltr; }

.mCSB_container { /* contains the original content */ overflow: hidden; width: auto; height: auto; }

/* 
------------------------------------------------------------------------------------------------------------------------
2. VERTICAL SCROLLBAR 
y-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_inside > .mCSB_container { margin-right: 30px; }

.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden { margin-right: 0; }

/* non-visible scrollbar */
.mCS-dir-rtl > .mCSB_inside > .mCSB_container { /* RTL direction/left-side scrollbar */ margin-right: 0; margin-left: 30px; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden { margin-left: 0; }

/* RTL direction/left-side scrollbar */
.mCSB_scrollTools { /* contains scrollbar markup (draggable element, dragger rail, buttons etc.) */ position: absolute; width: 16px; height: auto; left: auto; top: 0; right: 0; bottom: 0; }

.mCSB_outside + .mCSB_scrollTools { right: -26px; }

/* scrollbar position: outside */
.mCS-dir-rtl > .mCSB_inside > .mCSB_scrollTools, .mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools { /* RTL direction/left-side scrollbar */ right: auto; left: 0; }

.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools { left: -26px; }

/* RTL direction/left-side scrollbar (scrollbar position: outside) */
.mCSB_scrollTools .mCSB_draggerContainer { /* contains the draggable element and dragger rail markup */ position: absolute; top: 0; left: 0; bottom: 0; right: 0; height: auto; }

.mCSB_scrollTools a + .mCSB_draggerContainer { margin: 20px 0; }

.mCSB_scrollTools .mCSB_draggerRail { width: 2px; height: 100%; margin: 0 auto; border-radius: 16px; }

.mCSB_scrollTools .mCSB_dragger { /* the draggable element */ cursor: pointer; width: 100%; height: 30px; /* minimum dragger height */ z-index: 1; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { /* the dragger element */ position: relative; width: 4px; height: 100%; margin: 0 auto; border-radius: 16px; text-align: center; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar, .mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar { width: 12px; /* auto-expanded scrollbar */ }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail, .mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail { width: 8px; /* auto-expanded scrollbar */ }

.mCSB_scrollTools .mCSB_buttonUp, .mCSB_scrollTools .mCSB_buttonDown { display: block; position: absolute; height: 20px; width: 100%; overflow: hidden; margin: 0 auto; cursor: pointer; }

.mCSB_scrollTools .mCSB_buttonDown { bottom: 0; }

/* 
------------------------------------------------------------------------------------------------------------------------
3. HORIZONTAL SCROLLBAR 
x-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_horizontal.mCSB_inside > .mCSB_container { margin-right: 0; margin-bottom: 30px; }

.mCSB_horizontal.mCSB_outside > .mCSB_container { min-height: 100%; }

.mCSB_horizontal > .mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden { margin-bottom: 0; }

/* non-visible scrollbar */
.mCSB_scrollTools.mCSB_scrollTools_horizontal { width: auto; height: 16px; top: auto; right: 0; bottom: 0; left: 0; }

.mCustomScrollBox + .mCSB_scrollTools.mCSB_scrollTools_horizontal, .mCustomScrollBox + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal { bottom: -26px; }

/* scrollbar position: outside */
.mCSB_scrollTools.mCSB_scrollTools_horizontal a + .mCSB_draggerContainer { margin: 0 20px; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail { width: 100%; height: 2px; margin: 7px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger { width: 30px; /* minimum dragger width */ height: 100%; left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar { width: 100%; height: 4px; margin: 6px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar, .mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar { height: 12px; /* auto-expanded scrollbar */ margin: 2px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail, .mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail { height: 8px; /* auto-expanded scrollbar */ margin: 4px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft, .mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight { display: block; position: absolute; width: 20px; height: 100%; overflow: hidden; margin: 0 auto; cursor: pointer; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft { left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight { right: 0; }

/* 
------------------------------------------------------------------------------------------------------------------------
4. VERTICAL AND HORIZONTAL SCROLLBARS 
yx-axis 
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_container_wrapper { position: absolute; height: auto; width: auto; overflow: hidden; top: 0; left: 0; right: 0; bottom: 0; margin-right: 30px; margin-bottom: 30px; }

.mCSB_container_wrapper > .mCSB_container { padding-right: 30px; padding-bottom: 30px; box-sizing: border-box; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_vertical { bottom: 20px; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_horizontal { right: 20px; }

/* non-visible horizontal scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden + .mCSB_scrollTools.mCSB_scrollTools_vertical { bottom: 0; }

/* non-visible vertical scrollbar/RTL direction/left-side scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal, .mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal { right: 0; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal { left: 20px; }

/* non-visible scrollbar/RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal { left: 0; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container_wrapper { /* RTL direction/left-side scrollbar */ margin-right: 0; margin-left: 30px; }

.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden > .mCSB_container { padding-right: 0; }

.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden > .mCSB_container { padding-bottom: 0; }

.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden { margin-right: 0; /* non-visible scrollbar */ margin-left: 0; }

/* non-visible horizontal scrollbar */
.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden { margin-bottom: 0; }

/* 
------------------------------------------------------------------------------------------------------------------------
5. TRANSITIONS  
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_scrollTools, .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_buttonUp, .mCSB_scrollTools .mCSB_buttonDown, .mCSB_scrollTools .mCSB_buttonLeft, .mCSB_scrollTools .mCSB_buttonRight { transition: opacity .2s ease-in-out, background-color .2s ease-in-out; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar, .mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail, .mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar, .mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail { transition: width .2s ease-out .2s, height .2s ease-out .2s,  margin-left .2s ease-out .2s, margin-right .2s ease-out .2s,  margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out; }

/* 
------------------------------------------------------------------------------------------------------------------------
6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS  
------------------------------------------------------------------------------------------------------------------------
*/
/*  ---------------------------------------- 6.1 THEMES  ---------------------------------------- */
/* default theme ("light") */
.mCSB_scrollTools { opacity: 0.75; filter: "alpha(opacity=75)"; -ms-filter: "alpha(opacity=75)"; }

.mCS-autoHide > .mCustomScrollBox > .mCSB_scrollTools, .mCS-autoHide > .mCustomScrollBox ~ .mCSB_scrollTools { opacity: 0; filter: "alpha(opacity=0)"; -ms-filter: "alpha(opacity=0)"; }

.mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag, .mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag, .mCustomScrollBox:hover > .mCSB_scrollTools, .mCustomScrollBox:hover ~ .mCSB_scrollTools, .mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools, .mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools { opacity: 1; filter: "alpha(opacity=100)"; -ms-filter: "alpha(opacity=100)"; }

.mCSB_scrollTools .mCSB_draggerRail { background-color: #000; background-color: rgba(0, 0, 0, 0.4); filter: "alpha(opacity=40)"; -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { background-color: #fff; background-color: rgba(255, 255, 255, 0.75); filter: "alpha(opacity=75)"; -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar { background-color: #fff; background-color: rgba(255, 255, 255, 0.85); filter: "alpha(opacity=85)"; -ms-filter: "alpha(opacity=85)"; }

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar { background-color: #fff; background-color: rgba(255, 255, 255, 0.9); filter: "alpha(opacity=90)"; -ms-filter: "alpha(opacity=90)"; }

.mCSB_scrollTools .mCSB_buttonUp, .mCSB_scrollTools .mCSB_buttonDown, .mCSB_scrollTools .mCSB_buttonLeft, .mCSB_scrollTools .mCSB_buttonRight { background-image: url(mCSB_buttons.png); /* css sprites */ background-repeat: no-repeat; opacity: 0.4; filter: "alpha(opacity=40)"; -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_buttonUp { background-position: 0 0; /*  sprites locations  light: 0 0, -16px 0, -32px 0, -48px 0, 0 -72px, -16px -72px, -32px -72px dark: -80px 0, -96px 0, -112px 0, -128px 0, -80px -72px, -96px -72px, -112px -72px */ }

.mCSB_scrollTools .mCSB_buttonDown { background-position: 0 -20px; /*  sprites locations light: 0 -20px, -16px -20px, -32px -20px, -48px -20px, 0 -92px, -16px -92px, -32px -92px dark: -80px -20px, -96px -20px, -112px -20px, -128px -20px, -80px -92px, -96px -92px, -112 -92px */ }

.mCSB_scrollTools .mCSB_buttonLeft { background-position: 0 -40px; /*  sprites locations  light: 0 -40px, -20px -40px, -40px -40px, -60px -40px, 0 -112px, -20px -112px, -40px -112px dark: -80px -40px, -100px -40px, -120px -40px, -140px -40px, -80px -112px, -100px -112px, -120px -112px */ }

.mCSB_scrollTools .mCSB_buttonRight { background-position: 0 -56px; /*  sprites locations  light: 0 -56px, -20px -56px, -40px -56px, -60px -56px, 0 -128px, -20px -128px, -40px -128px dark: -80px -56px, -100px -56px, -120px -56px, -140px -56px, -80px -128px, -100px -128px, -120px -128px */ }

.mCSB_scrollTools .mCSB_buttonUp:hover, .mCSB_scrollTools .mCSB_buttonDown:hover, .mCSB_scrollTools .mCSB_buttonLeft:hover, .mCSB_scrollTools .mCSB_buttonRight:hover { opacity: 0.75; filter: "alpha(opacity=75)"; -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_buttonUp:active, .mCSB_scrollTools .mCSB_buttonDown:active, .mCSB_scrollTools .mCSB_buttonLeft:active, .mCSB_scrollTools .mCSB_buttonRight:active { opacity: 0.9; filter: "alpha(opacity=90)"; -ms-filter: "alpha(opacity=90)"; }

/* theme: boskalis */
.mCS-boskalis.mCSB_scrollTools .mCSB_draggerRail { width: 6px; background-color: #0c1e39; }

.mCS-boskalis.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { width: 6px; }

.mCS-boskalis.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar, .mCS-boskalis.mCSB_scrollTools_horizontal .mCSB_draggerRail { width: 100%; height: 6px; margin: 5px 0; }

.mCS-boskalis.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail, .mCS-boskalis.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail { width: 12px; }

.mCS-boskalis.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail, .mCS-boskalis.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail { height: 12px; margin: 2px 0; }

.mCS-boskalis.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { background-color: #8fa8cb; }

.mCS-boskalis.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar { background-color: #eaeef2; }

.mCS-boskalis.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-boskalis.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar { background-color: #eaeef2; }

.tooltip { position: absolute; right: 10px; bottom: 100%; width: 33px; z-index: 5; }

.tooltip:before { border-top: 10px solid #fff; border-left: 10px solid transparent; border-right: 10px solid transparent; bottom: 100%; content: ""; display: none; height: 0; left: 50%; margin-bottom: 5px; position: absolute; -webkit-transform: translateX(-50%); transform: translateX(-50%); width: 0; }

.tooltip:after { background-color: #fff; bottom: 100%; content: attr(data-text); display: none; font-size: 14px; right: 0; margin-bottom: 15px; padding: 3px 5px; position: absolute; white-space: nowrap; }

.tooltip:hover:before, .tooltip:hover:after { display: block; }

.map-content-trigger { padding: 20px 20px 0 40px; }

.map-content-trigger strong { font-size: 24px !important; }

.map-content-trigger .headquarter-title { float: left; width: 80%; }

.map-content-trigger .headquarter-trigger { float: right; width: 20%; }

.map-content-trigger .map-trigger { background-color: #7d93b3; color: #fff; cursor: pointer; float: right; height: 40px; position: relative; text-align: center; width: 40px; }

.map-content-trigger .map-trigger:after { content: '-'; left: 50%; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.map-content-closed .map-content-trigger .map-trigger:after { content: '+'; }

.map-content-closed .map-content-trigger { padding-bottom: 20px; }

.map-content-closed .content { display: none; }

@media (min-width: 700px) { .filter--open .section--contact-map .block--address { display: none; width: 45%; } }

.section--contact-map .block--address .content { padding: 20px 40px 20px 20px; }

@media (min-width: 700px) { .section--contact-map .block--address .content { padding: 20px 40px; } }

.section--contact-map .block--address .content:nth-child(2) { background: #fff; }

.section--contact-map .block--address .content:nth-child(3) { background: #d5dee6; }

.contact--list { margin-left: 0; margin-bottom: 0; list-style: none; }

.contact--list li { position: relative; }

.contact--list a { color: #16315b; }

.contact--list a:hover { border-bottom: 1px solid #d5dee6; }

.contact--list a:before { color: #141414; margin-right: 10px; }

.contact--list span { border-bottom: 1px solid #16315b; }

.subsite .top--right-logo img { display: none; max-width: 150px; position: absolute; top: 20px; right: 15vw; z-index: 2; }

@media (min-width: 1000px) { .subsite .top--right-logo img { display: block; } }

/* ---- COFRA ------- */
.cofra .logo svg { height: 70px; margin-top: 10px; }

.cofra .toggle-link[data-directions] { color: #B20000; border-bottom-color: #B20000; }

.cofra .toggle-link[data-directions]:hover, .cofra .toggle-link[data-directions]:focus { color: #990000; }

.cofra .main-navigation { background-color: #f0f0f0; }

.cofra .main-navigation .nav-cnt { background-color: #f0f0f0; }

.cofra .main-navigation .nav--main li > a, .cofra .main-navigation .nav--main li:last-child > a { border-color: #141414; color: #141414; }

@media screen and (max-width: 1000px) { .cofra .main-navigation .nav--main li:last-of-type > a { border-bottom: 1px solid #141414; } }

.cofra .subnav-cnt.level--1 { background-color: #DEDEDE; color: #141414; }

.cofra .subnav-cnt.level--1 .submenu li a:not(.btn) { background-color: transparent; color: #141414; }

.cofra .subnav-cnt.level--1 .submenu li a:not(.btn):hover, .cofra .subnav-cnt.level--1 .submenu li a:not(.btn):focus { background-color: #d1d1d1; }

.cofra .subnav-cnt.level--1 .submenu li.active { padding-right: 40px; }

.cofra .subnav-cnt.level--1 .submenu li.active a:not(.btn) { background-color: #d1d1d1; }

.cofra .subnav-cnt.level--1 .submenu li.active .subnav-cnt.level--2 a:not(.btn) { background-color: transparent; border-color: #FEF834; color: #FEF834; }

.cofra .subnav-cnt.level--1 .submenu li.active .subnav-cnt.level--2 a:not(.btn):hover, .cofra .subnav-cnt.level--1 .submenu li.active .subnav-cnt.level--2 a:not(.btn):focus { background-color: #16315b; }

.cofra .subnav-cnt.level--1 .submenu li.current a:not(.btn) { background-color: transparent; }

.cofra .subnav-cnt.level--1 .submenu li.current a:not(.btn):hover, .cofra .subnav-cnt.level--1 .submenu li.current a:not(.btn):focus { background-color: transparent; }

@media (min-width: 1000px) { .cofra .nav-teaser { background-color: #d1d1d1; color: #141414; }
  .cofra .nav.nav--main > li.active > a, .cofra .nav.nav--main > li.active > a:hover, .cofra .nav.nav--main > li.current > a, .cofra .nav.nav--main > li > a:focus, .cofra .nav.nav--main > li > a:hover { border-color: #141414; color: #141414; } }

.cofra .page-section.section--subpages, .cofra .page-section.section--vessels, .cofra .page-section.section--search-results, .cofra .page-section.section--project-overview { background-color: #f0f0f0; }

.cofra .page-header-cnt { background-color: #d1d1d1; }

.cofra .section-cnt[class*=teaser--]:before { background-color: rgba(209, 209, 209, 0.3); }

.cofra .bg--light-gray { background: #f0f0f0; }

.cofra .bg--dark-gray { background: #d1d1d1; }

.cofra .main-footer .sitemap { background-color: #B20000; }

.cofra .main-footer .back-top-link span { color: #141414; }

.cofra .main-footer .back-top-link, .cofra .main-footer .back-top-link:before { background: #f0f0f0; }

.cofra .main-footer .back-top-link:hover, .cofra .main-footer .back-top-link:focus { background: #DEDEDE; }

.cofra .main-footer .back-top-link:hover:before, .cofra .main-footer .back-top-link:focus:before { background: #DEDEDE; }

.cofra .main-footer .badge { display: block; margin-bottom: 0; }

.cofra .main-footer .badge img { margin-top: 10px; }

.cofra .block > div:hover .cta .btn, .cofra a:active .cta .btn, .cofra a:focus .cta .btn, .cofra a:hover .cta .btn { color: #fff; background: #B20000; border-color: #B20000; font-weight: normal; }

.cofra .link--phone { color: #B20000; }

.cofra .link--phone:before { color: inherit; }

.cofra .link--phone span { border-bottom-color: #B20000; }

.cofra .block .tag { background: #FEF834; }

.cofra .block--contact .info { background-color: #fff; }

.cofra .block--contact ul a { color: #B20000; }

.cofra .block--contact ul a span { background-color: transparent; color: #B20000; border-color: #B20000; }

.cofra .block--links > div, .cofra .block--links .list--links { background: #f0f0f0; }

.cofra .block--links li.heading, .cofra .block--links li.heading a, .cofra .block--links .list--links li, .cofra .block--links .list--links li a { color: #141414; }

.cofra .block--links .list--links li > a:focus, .cofra .block--links .list--links li > a:hover, .cofra .list--dropdown li > a:focus, .cofra .list--dropdown li > a:hover, .cofra .list--striped-light li > a:focus, .cofra .list--striped-light li > a:hover, .cofra .popup aside .list--links li > a:focus, .cofra .popup aside .list--links li > a:hover { color: #fff; }

.cofra .sitemap .list--links li > a:focus, .cofra .sitemap .list--links li > a:hover { background: #fff; color: #B20000; }

.cofra .block footer a, .cofra .widget .footing { background-color: #DEDEDE; color: #141414; }

.cofra .section--side-content .content--primary { background-color: #f0f0f0; }

.cofra .section--opened .toggle-section { color: #fff; }

.cofra .btn { background-color: #f0f0f0; color: #141414; }

.cofra .btn.btn--video { color: #fff; background: none; }

.cofra .btn.btn--video:focus, .cofra .btn.btn--video:hover { color: #fff; background: none; }

.cofra a.video-poster:hover .btn--video, .cofra a.video-poster:focus .btn--video { color: #fff; background: none; }

.cofra .btn:focus, .cofra .btn:hover, .cofra a .btn:hover { background-color: #B20000; color: #fff; }

.cofra .btn:focus span, .cofra .btn:hover span, .cofra a .btn:hover span { border-color: #fff; }

.cofra .pagination li:not(.current) a:hover { background-color: #DEDEDE; color: #141414; }

.cofra .pagination li.current a { color: #141414; }

.cofra .btn.toggle--filter-nav, .cofra .btn.btn--submit { background: #D12324; color: #fff; }

.cofra .btn.toggle--filter-nav:focus, .cofra .btn.toggle--filter-nav:hover, .cofra .btn.toggle--filter-nav a .btn:focus, .cofra .btn.toggle--filter-nav a .btn:hover, .cofra .btn.btn--submit:focus, .cofra .btn.btn--submit:hover, .cofra .btn.btn--submit a .btn:focus, .cofra .btn.btn--submit a .btn:hover { background-color: #B20000; }

.cofra .btn--label .icon { background: #B20000; color: #fff; }

.cofra .btn.toggle--filter-nav:hover i { background-color: #990000; }

.cofra .sort .btn.active, .cofra .sort .btn[disabled], .cofra .view-switch .btn[disabled] { background-color: #B20000; }

.cofra .btn--back, .cofra .btn--toggle-overlay, .cofra .btn--yellow, .cofra .page-header a.btn--link, .cofra .section-cnt[class*=teaser--] .btn--cta { background: #FEF834; }

.cofra .btn--back:hover, .cofra .btn--back:focus, .cofra .btn--toggle-overlay:hover, .cofra .btn--toggle-overlay:focus, .cofra .btn--yellow:hover, .cofra .btn--yellow:focus, .cofra .page-header a.btn--link:hover, .cofra .page-header a.btn--link:focus, .cofra .section-cnt[class*=teaser--] .btn--cta:hover, .cofra .section-cnt[class*=teaser--] .btn--cta:focus { background: #B20000; color: #fff; }

.cofra .active .btn--back, .cofra .active .btn--submenu, .cofra .btn--back:hover, .cofra .btn--submenu:hover { background: #141414; color: #fff; }

.cofra .cta span.btn.link-more { background: #fff; }

.cofra a:hover .cta span.btn.link-more, .cofra a:focus .cta span.btn.link-more { background: #B20000; }

.cofra .list--overview-action > li { background: #f0f0f0; }

.cofra .list--overview-action > li .btn { background: #E0E0E0; transition: unset; }

.cofra .list--overview-action > li .btn:hover, .cofra .list--overview-action > li .btn:focus { background: #B20000; color: #fff; }

.cofra .bar--legend { background-color: #f0f0f0; color: #141414; }

.cofra .bar--legend li { color: #141414; }

.cofra .legend--boskalis-office:before { color: #D98C18; }

.cofra .legend--barriers:before { color: #C53830; }

.cofra .legend--compaction:before { color: #5DA14D; }

.cofra .legend--consolidation:before { color: #842de4; }

.cofra .legend--elements:before { color: #DA8D1B; }

.cofra blockquote { background-color: #E0E0E0; }

.cofra blockquote:before { color: #B20000; }

@media (min-width: 700px) { .cofra blockquote { margin: 0; } }

.cofra .page-content.page-intro, .cofra .page-intro.page-intro { background-color: #E0E0E0; }

.cofra .slide .caption { background-color: #E0E0E0; color: #141414; }

.cofra .slide .caption a { color: #141414; }

.cofra .slick-dots li button:before { background-color: #D12324; }

.cofra .slick-dots li.slick-active button:before { background-color: #B20000; }

.cofra .slider--fw .slick-track { background-color: #9e9e9e; }

@media (min-width: 700px) { .cofra .section--side-content.slider ul li.active a, .cofra .section--side-content.slider ul li a:focus, .cofra .section--side-content.slider ul li a:hover { background-color: #B20000; color: #fff; }
  .cofra .section--side-content.slider ul li.active a span, .cofra .section--side-content.slider ul li a:focus span, .cofra .section--side-content.slider ul li a:hover span { border-color: #fff; }
  .cofra .section--side-content.slider ul li.active a:after, .cofra .section--side-content.slider ul li a:focus:after, .cofra .section--side-content.slider ul li a:hover:after { border-left-color: #B20000; } }

.cofra .link--bordered, .cofra .list--icon a, .cofra .section--side-content .content--primary > a, .cofra .section--side-content.slider ul .slide-item { color: #141414; }

.cofra .link--bordered span, .cofra .list--icon a span, .cofra .section--side-content .content--primary > a span, .cofra .section--side-content.slider ul .slide-item span { border-bottom-color: #141414; }

.cofra .section--side-content .content--primary > a { background-color: #DEDEDE; }

.cofra .section--side-content .content--primary > a:hover, .cofra .section--side-content .content--primary > a:focus { background-color: #B20000; color: #fff; }

.cofra .section--side-content .content--primary > a:hover span, .cofra .section--side-content .content--primary > a:focus span { border-color: #fff; }

.cofra .accordion-cnt { background: #E0E0E0; }

.cofra .accordion-cnt .slide:after { background: rgba(158, 158, 158, 0.7); }

.cofra .accordion-cnt .slide.active:after { background: transparent; }

.cofra .list--links a:focus, .cofra .list--links a:hover { background: #f0f0f0; }

.cofra a:focus, .cofra a:hover { color: #141414; }

.cofra .emergency-box { background: #B20000; }

.cofra .emergency-box .trigger { background: #B20000; color: #fff; }

.cofra .IRTable th, .cofra #quotetable th, .cofra .IRTableCalcRes_hor th { background-color: #DEDEDE; }

.cofra .chart--pie .inner strong { color: #B20000; }

.cofra .big-number strong { color: #141414; }

.cofra .section--contact-map .block--address .content:nth-child(3) { background-color: #DEDEDE; }

.cofra .display-flex .block--links .list--links li:first-of-type a { border-top: 1px solid #d1d1d1; }

.cofra .display-flex .block--links .list--links a { color: #B20000; padding-left: 0; border-bottom: 1px solid #d1d1d1; }

.cofra .display-flex .block--links .list--links a span { text-decoration: underline; }

.cofra .display-flex .block--links .list--links a:before { color: #B20000; content: ""; display: inline-block; font-size: .77778em; font-style: normal; font-weight: 400; font-family: Icons; margin-right: 10px; line-height: 2.25; position: static; transition: left .1s ease-in-out; }

.cofra .display-flex .block--links .list--links a:after { display: none; }

.cofra .display-flex .block--links .list--links a:hover, .cofra .display-flex .block--links .list--links a:focus { background: none; }

.cofra .display-flex .block--links .list--links a:hover span, .cofra .display-flex .block--links .list--links a:focus span { text-decoration: none; }

.cofra .nav .subnav-cnt .btn:hover, .cofra .nav .subnav-cnt .btn:focus { background-color: #B20000; }

/* ---- GARDLINE ------- */
.gardline .col--quart.widget.col--links .logo_iso { max-width: 80px; }

.landing .main-navigation { height: 0 !important; }

.landing .language-switch { display: block; list-style: none; margin-top: 29px; position: absolute; right: 6px; top: 0; }

@media (min-width: 1000px) { .landing .language-switch { display: none; } }

.landing .language-switch a { text-align: center; }

.landing .language-switch a span { display: block; color: #141414; }

.landing .language-switch img { display: block; margin: 0 auto; }

/* ---- NEDERLAND ------- */
.nederland .main-navigation .search-form, .nederland .main-navigation .autocomplete-suggestions.tx-solr-autosuggest { width: 230px; }

/* --------------------------------------------------------------------- UNISON JS -------------------------------------------------------------------- */
@media screen and (min-width: 300px) { head { font-family: "usn-phone 300px"; }
  body:after { display: none; content: "usn-phone - min-width: 300px"; } }

@media screen and (min-width: 700px) { head { font-family: "usn-tablet 700px"; }
  body:after { display: none; content: "usn-tablet - min-width: 700px"; } }

@media screen and (min-width: 1000px) { head { font-family: "usn-laptop 1000px"; }
  body:after { display: none; content: "usn-laptop - min-width: 1000px"; } }

@media screen and (min-width: 1280px) { head { font-family: "usn-desktop 1280px"; }
  body:after { display: none; content: "usn-desktop - min-width: 1280px"; } }

@media screen and (min-width: 1441px) { head { font-family: "usn-desktop-xl 1441px"; }
  body:after { display: none; content: "usn-desktop-xl - min-width: 1441px"; } }

head { clear: both; }

head title { font-family: "usn-phone 300px, usn-tablet 700px, usn-laptop 1000px, usn-desktop 1280px, usn-desktop-xl 1441px"; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJsaWIvX21peGlucy5zY3NzIiwibGliL19yZXNldC5zY3NzIiwibGliL19mb250cy5zY3NzIiwibGliL19pY29uLWZvbnQuc2NzcyIsImxpYi9fcHJpbnQuc2NzcyIsImxpYi9fZmFuY3lib3guY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL0Bjb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9fYnJlYWtwb2ludC5zY3NzIiwibGliL19mb250LWljb25zLnNjc3MiLCJiYXNlL19idXR0b25zLnNjc3MiLCJiYXNlL19mb3Jtcy5zY3NzIiwiYmFzZS9fc3RydWN0dXJlLnNjc3MiLCJiYXNlL19oZWFkZXIuc2NzcyIsImJhc2UvX2Zvb3Rlci5zY3NzIiwiYmFzZS9fbmF2LnNjc3MiLCJwYXJ0aWFscy9fYmxvY2tzLnNjc3MiLCJwYXJ0aWFscy9fY29va2llLW5vdGljZS5zY3NzIiwicGFydGlhbHMvX3NsaWRlci5zY3NzIiwicGFydGlhbHMvX2NoYXJ0cy5zY3NzIiwicGFydGlhbHMvX2VsZW1lbnRzLnNjc3MiLCJwYXJ0aWFscy9fd2lkZ2V0cy5zY3NzIiwicGFydGlhbHMvX2ZpbHRlci5zY3NzIiwicGFydGlhbHMvX3NlY3Rpb25zLnNjc3MiLCJwYXJ0aWFscy9fcGFnZXMuc2NzcyIsInBhcnRpYWxzL19wb3B1cHMuc2NzcyIsInBhcnRpYWxzL192aWRlby5zY3NzIiwicGFydGlhbHMvX2VtZXJnZW5jeS1ib3guc2NzcyIsInBhcnRpYWxzL19tYXBzLXNsaWRlci5zY3NzIiwicGFydGlhbHMvX2JhZGdlLnNjc3MiLCJwYXJ0aWFscy9fcHJlbG9hZGVyLnNjc3MiLCJwYXJ0aWFscy9fbWVzc2FnZXMuc2NzcyIsImV4dC9fdGlwcGVkLnNjc3MiLCJleHQvX3Njcm9sbGVyLnNjc3MiLCJfc3Vic2l0ZXMuc2NzcyIsIl9jb2ZyYS5zY3NzIiwiX2dhcmRsaW5lLnNjc3MiLCJfbGFuZGluZ3NwYWdlLnNjc3MiLCJfbmVkZXJsYW5kLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQ2pCLHNDQUVVO0FBT1QsMEpBSXVFO0FBNEZ2RSx3SkFJdUU7QUN6QnhFOztVQUVVO0FDdkZWLGdCQUFnQjtBQUNoQix5REFBeUQ7QUFFekQsNkJBQTZCO0FDeUQ3QixnREFBWTtBQTRCWixtR0FBWTtBRHBGWixvQkFBb0Isb0JBQW1CO0VBQUUsVUFBUyxFQUFBOztBQUMvQyxpQkFBaUIsb0JBQW1CO0VBQUUsVUFBUyxFQUFBOztBQUM5QyxnQkFBZ0Isb0JBQW1CO0VBQUUsVUFBUyxFQUFBOztBQUUxQyxZQUFZLG9CQUFtQjtFQUFFLFVBQVMsRUFBQTs7QUFFbEQsOEJBQThCO0FBQzlCLHFmQWFJLFVBQVMsQ0FDVCxXQUFVLENBQ1YsVUFBUyxDQUNULGlEQUFnRCxDQUNoRCxnQkFBZSxDQUNmLGNBQWEsQ0FDYix5QkFBd0IsRUFDM0I7O0FBRUQsbURBQW1EO0FBQ25ELDBGQUVJLGVBQWMsRUFDakI7O0FBRUQsa0dBQzZDO0FBQzdDLE9BQ0ksbUJBQWtCLENBQ2xCLCtCQUE4QixDQUMxQiwyQkFBMEIsRUFDakM7O0FBRUQsMEVBQTBFO0FBQzFFLHVCQUNJLHNCQUFxQixFQUNyQixnQkFBZ0IsRUFDaEIsUUFBUSxFQUNYOztBQUVELHNFQUFzRTtBQUN0RSx3QkFDSSxjQUFhLEVBQ2hCOztBQUVELDJGQUM4QztBQUM5QyxhQUNJLGdCQUFlLENBQ2YsYUFBWSxFQUNmOztBQUVELHVHQUN1RDtBQUN2RCx3QkFDSSxnQkFBZSxFQUNsQjs7QUFFRCwyREFBMkQ7QUFDM0QsTUFDSSxnQ0FBK0IsRUFDbEM7O0FBRUQsdUVBQXVFO0FBQ3ZFLHdCQUVJLHFCQUFvQixDQUNwQixvREFBbUQsQ0FDbkQsOEJBQTZCLEVBQ2hDOztBQUVELCtFQUErRTtBQUMvRSxvQkFDSSxXQUFVLEVBQ2I7O0FDeEZELGtnRUEwREU7QUFJRjs7Ozs7Ozs7RUFRRTtBQUdG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QUFBOztBRit0QmIsK0NBQ0ksYUUvdEJhLEVBQUE7O0FGOHRCakIsNkJBQ0ksYUU5dEJlLEVBQUE7O0FGNnRCbkIsK0JBQ0ksYUU3dEJpQixFQUFBOztBRjR0QnJCLGdEQUNJLGFFNXRCVyxFQUFBOztBRjJ0QmYseUNBQ0ksYUUzdEJPLEVBQUE7O0FGMHRCWCx1QkFDSSxhRTF0QlMsRUFBQTs7QUZ5dEJiLG9CQUNJLGFFenRCTSxFQUFBOztBRnd0QlYsb0JBQ0ksYUV4dEJNLEVBQUE7O0FGdXRCVixzQkFDSSxhRXZ0QlEsRUFBQTs7QUZzdEJaLHFCQUNJLGFFdHRCTyxFQUFBOztBRnF0QlgscUJBQ0ksYUVydEJPLEVBQUE7O0FGb3RCWCwwQ0FDSSxhRXB0QlEsRUFBQTs7QUZtdEJaLHNCQUNJLGFFbnRCUSxFQUFBOztBRmt0QlosdUJBQ0ksYUVsdEJTLEVBQUE7O0FGaXRCYiwwQkFDSSxhRWp0QlksRUFBQTs7QUZndEJoQiwwQkFDSSxhRWh0QlksRUFBQTs7QUYrc0JoQix5QkFDSSxhRS9zQlcsRUFBQTs7QUY4c0JmLG9CQUNJLGFFOXNCTSxFQUFBOztBRjZzQlYsOENBQ0ksYUU3c0JVLEVBQUE7O0FGNHNCZCx1QkFDSSxhRTVzQlMsRUFBQTs7QUYyc0JiLG9DQUNJLGFFM3NCc0IsRUFBQTs7QUYwc0IxQixvQ0FDSSxhRTFzQnNCLEVBQUE7O0FGeXNCMUIsb0NBQ0ksYUV6c0JzQixFQUFBOztBRndzQjFCLDRDQUNJLGFFeHNCOEIsRUFBQTs7QUZ1c0JsQyxpREFDSSxhRXZzQm1DLEVBQUE7O0FGc3NCdkMsdUNBQ0ksYUV0c0J5QixFQUFBOztBRnFzQjdCLDhDQUNJLGFFcnNCZ0MsRUFBQTs7QUZvc0JwQyw4Q0FDSSxhRXBzQmdDLEVBQUE7O0FGbXNCcEMsdURBQ0ksYUVuc0J5QyxFQUFBOztBRmtzQjdDLG9EQUNJLGFFbHNCc0MsRUFBQTs7QUZpc0IxQyxzREFDSSxhRWpzQndDLEVBQUE7O0FGZ3NCNUMsK0NBQ0ksYUVoc0JpQyxFQUFBOztBRityQnJDLHlDQUNJLGFFL3JCMkIsRUFBQTs7QUY4ckIv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QixFQUVuQjs7QUFwYVQsNERBNGFRLDBCbkNqVlksQ21Da1ZaLFluQ3JZSyxFbUM2WVI7O0FBcmJMLDJFQWliWSxtQm5DellDLEVtQzJZSjs7QUFuYlQsOENBeWJRLDBCbkN2Vm9CLENtQ3dWcEIsZW5DdllRLEVtQ3lZWDs7QUE1Ykwsa0NBZ2NRLGVuQzdZUSxFbUMrWVg7O0FBbGNMLDBEQXVjUSxvQm5DM1drQixDbUM0V2xCLFluQ2hhSyxFbUMyYVI7O0FBbmRMLGlUQStjWSwwQm5DcFhRLEVtQ3NYWDs7QUFqZFQsMkJBdWRRLG9CbkM1WFksQ21DNlhaLFluQ2hiSyxFbUNrYlI7O0FBMWRMLHlDQThkUSwwQm5DallnQyxFbUNtWW5DOztBQWhlTCw0RkFzZVEsMEJuQzNZWSxFbUM2WWY7O0FBeGVMLHVKQWdmUSxvQm5DbFplLEVtQzRabEI7O0FBMWZMLHlXQXFmWSxvQm5DMVpRLENtQzJaUixZbkM5Y0MsRW1DZ2RKOztBQXhmVCwrR0FpZ0JRLG9CbkM5Y1EsQ21DK2NSLFluQzFkSyxFbUM0ZFI7O0FBcGdCTCxpQ0F3Z0JRLGlCbkNoZUssRW1Da2VSOztBQTFnQkwsaUZBaWhCWSxvQm5DdGJRLEVtQ3diWDs7QUFuaEJULHFDQTJoQlEsb0JuQzNiYSxFbUM0Y2hCOztBQTVpQkwsMENBK2hCWSxvQm5DOWJlLENtQytiZixrQkFBaUIsRUFVcEI7O0FBMWlCVCwrRkFxaUJnQixvQm5DMWNJLENtQzJjSixZbkM5ZkgsRW1DZ2dCQTs7QUF4aUJiLHNCQWtqQlEsMEJuQ2xkYSxDbUNtZGIsZW5DaGdCUSxFbUN3Z0JYOztBQTNqQkwseUJBdWpCWSxlbkNwZ0JJLEVtQ3NnQlA7O0FBempCVCx5Q0ErakJRLGVuQ2hlb0IsRW1Da2V2Qjs7QUFqa0JMLGtDQXFrQlEsZW5DN2dCVSxFbUMrZ0JiOztBQXZrQkwsb0NBMmtCUSxlbkNyaEJZLEVtQ3VoQmY7O0FBN2tCTCx1Q0FpbEJRLGVuQzVoQlksRW1DOGhCZjs7QUFubEJMLGtDQXVsQlEsZW5DaGlCUyxFbUNraUJaOztBQXpsQkwsb0JBK2xCUSwwQm5DOWZtQixFbUNz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QyxFQUFJO0VBQ3ZELGFBQWEsY0FBYSxDQUFFLHlDQUFxRCxFQUFJLEVBQUE7O0FBRnZGLHdDQUNFLE9BQU8saUNBQTRDLEVBQUk7RUFDdkQsYUFBYSxjQUFhLENBQUUsMENBQXFELEVBQUksRUFBQTs7QUFGdkYsd0NBQ0UsT0FBTyxrQ0FBNEMsRUFBSTtFQUN2RCxhQUFhLGNBQWEsQ0FBRSwyQ0FBcUQsRUFBSSxFQUFBOztBQUZ2Rix3Q0FDRSxPQUFPLHFDQUE0QyxFQUFJO0VBQ3ZELGFBQWEsY0FBYSxDQUFFLDhDQUFxRCxFQUFJLEVBQUE7O0FBRHJGLE9BT0YsWUFBVyxFQUdaOztBQUxELGFBSVUsK0dBQTBCLEVBQUkiLCJmaWxlIjoic3R5bGUubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIC0tLS0gIEJPV0VSIENPTVBPTkVOVFMgICAtLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVkFSSUFCTEVTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSU1QT1JUUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLVxyXG5cdE1peGluIGZvciBjbGVhcmZpeGluZyBhbiBlbGVtZW50IFxyXG4tLS0tLS0tICovXG4vKiAgQ1NTIFJFU0VUICovXG4vKiAgTWV5ZXIncyBDU1MgUmVzZXQsIE5vcm1hbGl6ZWQuY3NzLCBhbmQgY3VzdG9tIGNvZGUgKi9cbi8qICBNb2JpbGUgU2NyZWVuIFJlc2l6aW5nICovXG5AaW1wb3J0IHVybChcIi8vaGVsbG8ubXlmb250cy5uZXQvY291bnQvMmY1YzU1XCIpO1xuQGltcG9ydCB1cmwoXCIvL2Zhc3QuZm9udHMubmV0L3QvMS5jc3M/YXBpVHlwZT1jc3MmcHJvamVjdGlkPWVjZjM1OGM2LTU0ZDQtNGQzZi04NTI0LTM4MTkzYWRiZThmYlwiKTtcbkAtd2Via2l0LXZpZXdwb3J0IHsgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgem9vbTogMS4wOyB9XG5cbkAtbW96LXZpZXdwb3J0IHsgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgem9vbTogMS4wOyB9XG5cbkAtbXMtdmlld3BvcnQgeyB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB6b29tOiAxLjA7IH1cblxuQC1vLXZpZXdwb3J0IHsgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgem9vbTogMS4wOyB9XG5cbkB2aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7XG4gIHpvb206IDEuMDsgfVxuXG4vKiAgUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdHMgKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLCBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsIGRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCwgc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhciwgYiwgdSwgaSwgY2VudGVyLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBidXR0b24sIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLCB0YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsIGZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgYm9yZGVyOiAwOyBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxMDAlOyBmb250OiBpbmhlcml0OyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLyogIFNldCBkaXNwbGF5IHR5cGUgZm9yIEhUTUw1IHNlbWFudGljIGVsZW1lbnRzICovXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24geyBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiAgRm9yY2Ugc2Nyb2xsYmFyIGRpc3BsYXkgdG8gcHJldmVudCBqdW1waW5nIG9uIHBhZ2VzLiBGaXggdGV4dCByZXNpemUgYnVnIG9uIG1vYmlsZSBkZXZpY2VzLiAqL1xuaHRtbCB7IG92ZXJmbG93LXk6IHNjcm9sbDsgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgfVxuXG4vKiAgRGlzcGxheSBhdWRpbywgY2FudmFzLCBhbmQgdmlkZW8gZWxlbWVudHMgYXMgaW5saW5lIGJsb2NrIGVsZW1lbnRzLiAqL1xuYXVkaW8sIGNhbnZhcywgdmlkZW8geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7ICpkaXNwbGF5OiBpbmxpbmU7ICp6b29tOiAxOyB9XG5cbi8qICBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYXVkaW8gd2l0aG91dCBjb250cm9scy4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLyogIFByZXZlbnQgaW1nIGFuZCB2aWRlbyBlbGVtZW50cyBmcm9tIHNwaWxsaW5nIG91dHNpZGUgb2YgdGhlIHBhZ2Ugb24gc21hbGxlciBzY3JlZW5zLiAqL1xuaW1nLCB2aWRlbyB7IG1heC13aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qICBQcmV2ZW50IGlmcmFtZSwgb2JqZWN0LCBhbmQgZW1iZWQgZWxlbWVudHMgZnJvbSBzcGlsbGluZyBvdXRzaWRlIG9mIHRoZSBwYWdlIG9uIHNtYWxsZXIgc2NyZWVucy4gKi9cbmlmcmFtZSwgb2JqZWN0LCBlbWJlZCB7IG1heC13aWR0aDogMTAwJTsgfVxuXG4vKiAgUHJldmVudHMgSUUgZnJvbSBtYWtpbmcgc2NhbGVkIGltYWdlcyBsb29rIGxpa2UgY3JhcCAqL1xuaW1nIHsgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG4vKiAgQWRkcmVzcyBvdXRsaW5lIGluY29uc2lzdGVuY3kgYmV0d2VlbiBDaHJvbWUgYW5kIG90aGVyIGJyb3dzZXJzLiAqL1xuYTpmb2N1cywgYnV0dG9uOmZvY3VzIHsgb3V0bGluZTogdGhpbiBkb3R0ZWQ7IG91dGxpbmU6IC4yOTQxMTc2NDdlbSBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjsgb3V0bGluZS1vZmZzZXQ6IC0uMTQyODU3MTQzZW07IH1cblxuLyogIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLiAqL1xuYTpob3ZlciwgYTphY3RpdmUgeyBvdXRsaW5lOiAwOyB9XG5cbi8qKiBAbGljZW5zZSBNeUZvbnRzIFdlYmZvbnQgQnVpbGQgSUQgMzEwMzgyOSwgMjAxNS0xMC0wN1QwOToxNjozNC0wNDAwIFRoZSBmb250cyBsaXN0ZWQgaW4gdGhpcyBub3RpY2UgYXJlIHN1YmplY3QgdG8gdGhlIEVuZCBVc2VyIExpY2Vuc2UgQWdyZWVtZW50KHMpIGVudGVyZWQgaW50byBieSB0aGUgd2Vic2l0ZSBvd25lci4gQWxsIG90aGVyIHBhcnRpZXMgYXJlICBleHBsaWNpdGx5IHJlc3RyaWN0ZWQgZnJvbSB1c2luZyB0aGUgTGljZW5zZWQgV2ViZm9udHMocykuIFlvdSBtYXkgb2J0YWluIGEgdmFsaWQgbGljZW5zZSBhdCB0aGUgVVJMcyBiZWxvdy4gV2ViZm9udDogRnV0dXJhUFQtQm9vayBieSBQYXJhVHlwZSBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZnV0dXJhLWJvb2svIFdlYmZvbnQ6IEZ1dHVyYVBULUxpZ2h0IGJ5IFBhcmFUeXBlIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9mdXR1cmEtbGlnaHQvIFdlYmZvbnQ6IEZ1dHVyYVBULU1lZGl1bSBieSBQYXJhVHlwZSBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZnV0dXJhLW1lZGl1bS8gV2ViZm9udDogRnV0dXJhUFQtRGVtaSBieSBQYXJhVHlwZSBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZnV0dXJhLWRlbWkvIFdlYmZvbnQ6IEZ1dHVyYVBULUhlYXZ5IGJ5IFBhcmFUeXBlIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9oZWF2eS8gV2ViZm9udDogRnV0dXJhUFQtQm9sZCBieSBQYXJhVHlwZSBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svYm9sZC8gV2ViZm9udDogRnV0dXJhUFQtRXh0cmFCb2xkIGJ5IFBhcmFUeXBlIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9leHRyYS1ib2xkLyBXZWJmb250OiBGdXR1cmFQVC1MaWdodE9ibCBieSBQYXJhVHlwZSBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZnV0dXJhLWxpZ2h0LWl0YWxpYy8gV2ViZm9udDogRnV0dXJhUFQtQm9va09ibCBieSBQYXJhVHlwZSBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svaXRhbGljLyBXZWJmb250OiBGdXR1cmFQVC1NZWRpdW1PYmwgYnkgUGFyYVR5cGUgVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2Z1dHVyYS1tZWRpdW0taXRhbGljLyBXZWJmb250OiBGdXR1cmFQVC1EZW1pT2JsIGJ5IFBhcmFUeXBlIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9mdXR1cmEtZGVtaS1pdGFsaWMvIFdlYmZvbnQ6IEZ1dHVyYVBULUhlYXZ5T2JsIGJ5IFBhcmFUeXBlIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9oZWF2eS1vYmwvIFdlYmZvbnQ6IEZ1dHVyYVBULUJvbGRPYmwgYnkgUGFyYVR5cGUgVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2JvbGQtb2JsLyBXZWJmb250OiBGdXR1cmFQVC1FeHRyYUJvbGRPYmwgYnkgUGFyYVR5cGUgVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2V4dHJhLWJvbGQtb2JsLyBMaWNlbnNlOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL3ZpZXdsaWNlbnNlP3R5cGU9d2ViJmJ1aWxkaWQ9MzEwMzgyOSBMaWNlbnNlZCBwYWdldmlld3M6IDMwMCwwMDAgV2ViZm9udHMgY29weXJpZ2h0OiBDb3B5cmlnaHQgJiN4MDBBOTsgMTk5NSBQYXJhR3JhcGggSW50bC4sICYjeDAwQTk7IDE5OTggUGFyYVR5cGUgSW5jLiwgUGFyYVR5cGUgTHRkLiBBbGwgcmlnaHRzIHJlc2VydmVkLiDCqSAyMDE1IE15Rm9udHMgSW5jICovXG4vKlxuQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdmdXR1cmEtcHQtYWx0JzsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyBzcmM6IHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfMF8wLmVvdCcpO3NyYzogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV8wXzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzBfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzBfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV8wXzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO31cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXN0eWxlOiBub3JtYWw7IHNyYzogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV80XzAuZW90Jyk7c3JjOiB1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzRfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfNF8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfNF8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzRfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7fVxuQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdmdXR1cmEtcHQtYWx0JzsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogaXRhbGljOyBzcmM6IHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfOF8wLmVvdCcpO3NyYzogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV84XzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzhfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzhfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV84XzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO31cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV9CXzAuZW90Jyk7c3JjOiB1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfQl8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfQl8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7fVxuXG5AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV80XzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzRfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzRfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV80XzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO31cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV9CXzAuZW90Jyk7c3JjOiB1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfQl8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfQl8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSx1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7fVxuKi9cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXN0eWxlOiBub3JtYWw7IHNyYzogdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfMF8wLmVvdFwiKTsgc3JjOiB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV8wXzAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfMF8wLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV8wXzAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV8wXzAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpOyB9XG5cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfOF8wLmVvdFwiKTsgc3JjOiB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV84XzAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfOF8wLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV84XzAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV84XzAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpOyB9XG5cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogYm9sZDsgZm9udC1zdHlsZTogbm9ybWFsOyBzcmM6IHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzRfMC5lb3RcIik7IHNyYzogdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfNF8wLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1XzRfMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfNF8wLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8yRjVDNTVfNF8wLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTsgfVxuXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6ICdmdXR1cmEtcHQtYWx0JzsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc3R5bGU6IGl0YWxpYzsgc3JjOiB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV9CXzAuZW90XCIpOyBzcmM6IHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzJGNUM1NV9CXzAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMkY1QzU1X0JfMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuLyogQWRlbGxlIEl0YWxpYyBXZWJmb250ICovXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IFwiQWRlbGxlIFcwMSBJdGFsaWNcIjsgc3JjOiB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzFhMWMxZjM5LTg1MTItNDcxNS05NzZjLTYwNjIxMDhkN2RmZS5lb3Q/I2llZml4XCIpOyBzcmM6IHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvMWExYzFmMzktODUxMi00NzE1LTk3NmMtNjA2MjEwOGQ3ZGZlLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzL2ExMDA3MmIzLWU3YTgtNGVhOS1iZDQ0LWQ0YWVjNmEwOTQ1Ny53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy9lNjZiOTBmZC1mMjAxLTQ1MjUtYjVlZS04YTg1NDIyMTM2N2Mud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ZvbnRzLzZkN2I5ZmM0LTYwYWQtNGMwMy05MmE0LTQ4NDQ0NTc5YmViMi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvZm9udHMvYjUxNzk2MGEtMmRjZC00ODI3LThhMmMtYzYyNjgxZDM0MzQyLnN2ZyNiNTE3OTYwYS0yZGNkLTQ4MjctOGEyYy1jNjI2ODFkMzQzNDJcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogSWNvbnM7IHNyYzogdXJsKFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUmdBQkFBQUFBR2FvQUEwQUFBQUFya2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFCbWpBQUFBQm9BQUFBY2Q2Q216RTlUTHpJQUFBR2dBQUFBU1FBQUFHQlArRjFjWTIxaGNBQUFBbFFBQUFCV0FBQUJZdUtaNldkamRuUWdBQUFDckFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUdhRUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBR0ZQQUFDbHNEZnRnbmRvWldGa0FBQUJNQUFBQURBQUFBQTJCdnNvRldob1pXRUFBQUZnQUFBQUhnQUFBQ1FEK0FISWFHMTBlQUFBQWV3QUFBQm5BQUFBakJCeEE4SnNiMk5oQUFBQ3NBQUFBSG9BQUFCNmRiNUZabTFoZUhBQUFBR0FBQUFBSUFBQUFDQUdxUnNZYm1GdFpRQUFaSHdBQUFFbEFBQUI3MzZTNkpKd2IzTjBBQUJscEFBQUFONEFBQUphTnlZYmwzamFZMkJrWUdBQVlsUE9iMnZqK1cyK01uQXpNWURBcFZmRloySDAvLy8vOXpGeE1CNEFjamtZd05JQWIyOE9HSGphWTJCa1lHQTg4SDhmZ3g0VHczOGdZT0pnQUlxZ0FDNEFxcDRHd1FBQUFBRUFBQUE4R3VjR0t3QUFBQUFBQWdBQUFBRUFBUUFBQUVBQUxnQUFBQUI0Mm1OZ1lmekZPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQVFZRUNFaHpUV0ZvWUZENDZNUjQ0UDhCQmozR0F3eE9JRFZJU2hRWUdBRlFEZ3YzQUFBQWVOcE55enNPUUZBUWhlSGZ1MEJFcVJDdldpU2lVU29VU3IzQ1FoUjNQYlpnQTNiRlhDRnhKbDh5T1puaElFWm5GeWVZWUF0RDZGMFpGOHA4RHJCZmkzRDVZZ21IaUkwVVg3OFE4RTlJSWJOUzRWRXprVkhTTVRKTGs1RFQwREpJNTlQZnIvc0pQd0I0Mm1OZ1lHQm1nR0FaQmtZR0VJZ0I4aGpCZkJZR0J5RE53OERCd0FSa0szeGsrTWorMGY2ajAvLy9RRkVJanh2RSsvK1luNFh2SDk5dnZwOVFFK0NBa1kwQkxzVElCQ1NZR05BVVFLd2V6Z0FBb2o4U3dRQUFBQkVCUkFBQUFDb0FLZ0FxQUNvQVNnQjhBSTRBb0FDeUFNUUJMQUpZQW5JQ3NBTGNBeElEdUFQMkJGWUVqZ1VvQmRJR05BWndDY1FMREFzd0MxSUw2QXhNREdRTkhBMG9EVHdTMEJNeUUySVRnQk80RTlZVDhoUU1GTzRWVkJhRUZwSVlDQjVVSUVBalBDWU9LMVF2aGtZQ1NUUkpVRXdXVUI1U3lGTFlBQUI0MnBSOUI1d2tWYlYzM1h1cjZsWU8zUlc2ZTZabmRycDJwbmFaM1oydTd1bXBiWmJkV1ZneWtuTmVja1p5RUFVRUpBcW9DS2lnOHZTcENCSU5xQ2dzb2dRVmlTSlJRQUY1RWlVTE92dWRjNnQ3ZGxIZjkvdSszdW5xQ2plZWUrNDUvM1B1dWJVU2xYeEprcjVNZHBTWXhLVkZOeEZwWXIyYnVTeTkycnBKVlo1YTcyWkc0VlM2aWVGdEJXL2Z6Rlh5ai9WdUpuaS83YmY5dE8wbi9ya25IbmdnMlhIbVdwKzBvVFFpeWF2dkl1K1RuMG11SkkwbU1VOTVtaWQ1bXNkNXpFbWRQbDEvOHVtaFp5bDlkdWpwSit0UHIzcDA3dE5QejMyVVBwbzgvWFR5S0dTWHFFUlczMEZXazl1a1dCcVdKQ1ZTdWRxWUlHTWROV21NVFU3RnJTZ01lQ3RXVzFPVFl3MDFJTytyaEt0bGZpcGR2TVZPcDV5eTA4Nm5URkQ2OG5rclY1NjNUd1Z1cStxcGxFNmNjdDBwNUpTZE4xMUNoK0QyUHVkQkd5VnBPVlMwWEZJa3ljZVdLYU5QUGptNldpS2pBL2ZkTi9DQ0pQcHgrdXBWNUhTeUN0T1FtTWVja1FQRVU3SUtFNU4vVFJPbjBNbnlGU0xKOHFLNG9weTE2aHBGYW94U3FTaGc5MzVsVkpKV1AwQUp1VVphSkcwQnFWcGhWQ2NCVjhkSkl4M3IrSlA1MUJMU3dsdDRoNnVoSDhRUjNNbW5scExKcVhZNTRrQVNJTThFS1VnMU9VMGdXNUdMbkMvTGxVcmp0U1N1Vk9Ma1hzWTV1N2ZrMkxZVnZPRzdGbWRucWt4V05LNjJibVdxUElleG43VVVSZFkvenk5bE10dHZiZzArYzRrMFZxdHhGakxWZFlQVlVtUzc4THNmNDhUUjFLOGFNdWRUOXpDV01NN3VtZEs0cm5CSmNpUlpZdVNmNURqSmdsRk1wS1kwRGYzYVd6cGVPa2U2UXJwVytybjBPK2taNkdlRFQ2Yll5RmdOeDlMR0l0S1puR3BGZ1JwRHIxTThEUU4xRFB1dFl1K3dSNVBMU0k2M0haSkFHbzczcHRvaVhZN3BlTk5oU1dkeUVVMm5Pc1dOaHNQaHhoaGNjNGZVeWRnRTFMR01MYUVSOEJFUFJmcUd1RWZhMEFBcVRxQThxRERHOUl2a0xJVXFscEFnSDB2eEViUTBpRlUrbGpUeXFRNDBIaElYbDN5TUtMWm5LdnFFcnBpVzYxYmRPUXZuekZsbWFheFduMSt2UHp5LzdpdTJFd3g5Nk1SMk1BUUgwNkNmRFlicVlWQ3ZiemN3eXJqcHhxYnVCRlp3U20yTUVTb3JYRE5NbXcvSDVaOVVoc2NhVExXOHdGaEhadHZXUmduVGJMOWlyN09RK1VQK3BVYlo1blpzaC9VQmFneFc2bGJrV3FveU9qQSt5Z2FWQWEvc3FoWmhucTFjYUNwdTROV1VZYWJiaHFlOHBybytwWTRuRDlzVko2clhGOVIzVVFmZFlLQmVEZ2IzR2d5WVZkWGdkTWlLYkZJdk81R2xESnlCandhRFlIQmliclZGR1BDSFkwVWxXeTdIemRGYUJ0eEw0VU9vVnhuajVYZzNOYTI2ektDWlVYWk50UmJOcldZVXM5ZzA4d2U5L1RUTE4reklIaXg3QThwQ2RhemlZbm1VWnRXNWxXMkdMYTlzbVc2NXhKaEd2TUN5bkpMakRURU8wNGZCUEhrRjV0SW5oYnd5WWU2T2hDTmhaeVJVNEV1bEdhbjRrbE1XWDdmdXV0L3RkbkgrTVpCSEQ0QTh1VkVha0ZKcEhMZ3VCSTZBQVZQckpGbVBUSzNIMG5hZGRLYmFRMlFVQmpNb09HMktnWFFqTTRmbnFjK09JT1NJWkhyeGhqTWJEWXlReHVCQUl4azQ0dnlmWHJmWlBMWDhReldjWG5mVGZJRTZRVWhPdG5obXVGcVpNeEpYNXN6TUlSdk4zQXF6UUpJR29EMjdTYXBrZ0t5Tm9QWTBqMkQra3BIWUpXSnFENU04SHNuSmgxZDlnODNVeVozS0MvOWs3QnU3Yi9UbG1lVmZIYi9nWXM1V1N6cVpSKy9aRnlTdnhJelBiYi8wbkhPZ1QzdXMvaFg1SnNnZFg2cEtJNUpVQW00T1ZKZW9qWFNSM0ptTWVzSlJ6Q2FRbWo4L2V5WDUyTmlZYkNscU9EbHY1TVJkcHFkM21kNTZjWm91VHNtcWxTdm1YejI5bkhPanNmZDJ1MVZYZkczWnJ0UFR1eDQxTDAvVEhPbW5BczF2ZzRGZEJUMElwRGt3bHcrUWpwR2s4dGcwaVVPVVBDNXBKU3JQcHZMVzFHZ1Q1aHdLclU2N1ZRWmkra0ROa1FaMmM2cE5sdEY4TW9XWm9pWmpNTDA3VSttWUVHWlI3RkFPOHczbUp3L2lNSTdhSU5mYVV6bjhwbEU4UkdGNkpWUDUxS3VHd1ppaXFEc3JTbFRuUThRZ2NNM0xpYnBnc3RLZ2pjck1NWlZHbzBLT3BJcE1tVFdsVkRUTEhuSXJGVnRSUGE0eWcxbW1xb1dSWEJsZ3pHVmEwbUpzY0tkNUMrenJuQ0VDZkxtZ3JTcDJoY3dacXpHb3BxTEswWjB0NWcrcTQ1UXdSeWFMUnFxOUNpNnFOR1p1cEpwS1RiVU1rN2ErUU42cW9rYkpVRjFMQm0wcnRZazlZaHVxckxGZG1HbVZUeGllQzV4TjFNQ0l1b0lYVmRDTkg1Q2ZTaVZwU0pvSDNCQWgvWkRsUUpJdm95QmZjc0dEeUlMTFNMazFsWXR4ak1peGhuR0pxbWdHVTFSWlVZY091b1JlOHJ0TFZoeXpZbzh6eUJrL091UDBod3pWVmxZeVUxc2xjNFd4OHk4NTZLQkxMamxvdzJOWHpNei85QjY3bndGSnhEamVDZk5nRmJRaUJLNXBTN20wUVRFYldCdW5CRlEvMGhvQ29RYzM0Qm9uUTRnS1J4eXdnVVVyWVNRN1NVaGF5MEJxRm0xYit2VTVkSTZpbWFxMFduUDFPWE51SjlOMm1aU2M1U1ZueGk0dnQ4dGxtK3k1bWt6RHczS3RYRjR4Wnc3WmMvbHlidXFLN3VqTGw4LzhHYktVN2R2dDhrcE11bEtjenZ6WDdiZUw0dURXUUFuNVVJZjJ2d3h6NmZMZTNIZWxNdWlXQWNBSUNjaUJUanZrdlc5NTdYUG9XZGc3UHdZL080bmpEdUpJbHUrMDA3VTc3WFROemp1VEhXZlBydTJkaVBvZWgvcXVncnBpYVZTYWtKWklINU4ya2xaS1J3TDM0OFJLUUdQQktNRmtBNVVEMUVIVjBCaERIUVdFeE9keWtXcE1UTWpaTktNOUJUWWlCcG0yMWJWVFRZNzEwL1NtRHBhMnBKSWtGVy9ROVFia2lxL1pJRHl2VW5VaUF5Q1pWSFJkbWNtYThMemFtT2c5Skk4b09qeWMrYTJpVTFtbFY4dys5YTNpSVdUNXJVaENybXBNTk55QjRRRjNSOC9VTE0yelRDK0VpV0NHYnJEalNCUDR2ZEwyVEc1cHJtWE9pN2hzR3dGbnVzRXZiRFJIUnZCWjVPR1QwSTBpRHJrRWpsa0ZORnNGSTNTTWtFcEMvTVFCVG1xWTlZSm5PdkNUVDQxeGRTeWZXZ1JBWlNwZkJrZjQxM0JJREhMZW9lSUlXQWFmcW5HMGpLQVlHR0p4QkRmeFBtVEV2SFFaQVUwUHFFRzk3SkhMNEcvT1dYdnNzcHhSUnBTSXFCNElCOTJhdzBoUVpiemtSbk9JT2p4bm5obFloTVJWVDZZRFpVWmhxb0FLTkJTL1Z2SkNWdzBkaFZMRGtJZURrTkhTc01vTnltdVV1YnBTcnJHU3J3NnVBNFNwa1ZXaXRrUDNPR3NKa3pYTkJmVEVURk9uUEFiZDV6dVEyaDFSMU9IeW9vck5ZREpxbnU1d3BWVGlza3cwYm9TRWxBSkNFZy9tc1NuWEk1WGFacTNrK0M3WGE4eFFiTGRoYUk3blcxNXNPSTQrTVpBQmZtU1NEVmpxWUdrcHlvdGNUUncybGtaVE9aQkJUYWVBckZQeElwSkhjUlREUFM2K1FDbVdBS1dtVUlDR21KYmNPVGdVajFtYkgzVGtFYVBKMFdtMU5MRFF0K0lKdmFaVVFySmxwMXllTzA1VnIwS3JDMldxNklaT2lFYVRaUVloeEoycm03L1RXWlI5YkpTMVczTkpTaHVXa2xqVVRHVmlON3lCdWhuc09hRG9IclAwa2dZWUV1alBpTndhSmJJTUlFYXA5ekR3NmhjQklYeE5tZ3NYRVJkNExzWGhCVDBNZllCLzJINGgrdk1wdURkRnZyOFZrL2MvYUxNRnczeUFWMnBxbzFKck5nZUc1bkxkS2dmKzhEQlZ4dnhvakZ4QjkvbllhZWRzVnoyZ3NsMWxLRjQ0enVpOEJmblNyVnV0Z1hIdFpBbTRVSkVXa1grUWpRRnhQazNlb3liTjZCYjBORW5LVzNGVUtCMmFxYURGMUJnUU5VTEt5YW5PMkJUcXBuUXNCM3pYR0JQS2Fpd0lBMnh0WjBwY2NUVUZ4c09rK1ZSekttODNrVCtqYWRMcXhFUEEybkVUNXV3VWd0SXdpTEpBelFMTUFzSUIraGNHN2Raa2UwcFVOTm1PTXVoMFBqVk1ZSnhJRmlWam9rME5hRlVka1Q5bXcrZVFCMytpdUJuRmVSQUhYR2hNTVJPd3pmbFVPcG1NNGN3Q0pZYldrWXFTQm5vVk9EUlJBeXdUQU0waUNnVkRjZGhiSGpZeGQyY3FneHF3b1FrOEFEMEVQUlNKVTJ5R2lvZ2NSZ2k2T29iTkZpV25UV2hVTUVSQzZFdUFGV0RIQkIweEI4eEZ6QUlOR2hNWGt6aWNRSndwYkg0Q0FyRFRTS0FzYUd1QzlXQzZaRXpVVmRCakdVQ2lzWGJlQW9tUUFWVmErQ01Tb0NDY0lGajJwT0NXR0FrMlROb1JwbWlEY0JVMXhEa2thNHNFUVA4czZwR05UNEVGQWExc3VHUVNTc2EvS1k3RWJlQXdGbVBRektkQ2dQMkFZcWJROG1wd0lHQ1FBd25qSUdraWxSdFRHUkI0TW02aHVSSUJBR2xIQXJFVVQwRjRJYjJBZFRBUnNqRTJDOW1nVGxEMEkzUGZhSEtpRU83QjdGQ3B3TXFFYWpLZ0E1bHlNS2FZVFdSQ0RLNFFBQTlnMHlveW9CYlpacEFNRTNHaXdkRW1oRkZESVRFRCthOVFCbi93b3dBd0FxMFA0QnZrbWN3SmhaSVlwbFFCYzNQQ21SQ0s4QmlLTWpRVkxEV2NwSng1bEpPbW9sQU9oVEhSSHJnTEV4ak1EN2F1UXVhb0NwWUlNa0JSb0gwS0ZpRWFveEVFK3NTaENoYXBVbWdsekhzVXBwQ2VHRkNBQ3RrQTBBTk1rcUZtVG1SWFZkRStrS25KUUNySVlOOWdZdml6b0tGRXczSVUxVkIwb0lKaVdBREJkS2FBWlNrcldEc0R3aEJCTlNoV2czSkJQR0hQcVlhaWhrTzVERnNDWldKcVNuUUtacGZvTGVId0IwU211aUpvZ0dJTnlsQWN6YlB0a2d4NHlsME1IVUpOUUVRbGRCUVR5bGdZTkFnS1Zoa1dDV2RFSll1QU1vcWdENVFMMVRDMGVhQnowRmU4UVZIRUd6Sm1wa0FFZ3RVeG9CSEhnaitua3JMTVBTQUlqSmVNSklEUlp3YllaalVZSUdySkt1VEVVZENSNXFyRk5GKzJLS0JNRlFmZklKVDNTa1FTNDBEaEx6SVB3ZTZKY2NMV3dVQ0Exb0V4VVVIK0VoeDQ1QTZnSllCZWh1eEFOV3ltQVkyRWJGQUxzeFVPUmNPL3k0SGxZSXhobkhUZ1B4Z3lIUWdBUFdBdTBXT0s0eS80Q3htQUFtY1lpZ25FVUhCQW9GRllFR29MQW1WcHhBS3VCRTVpcUFxUVkweUE2MkQ3eVV6WFlheUpHQ1lWR2NZQkFzRUl3a09acUZBbzhiRXZ4VU1DN2FVTmFDOG1KNFlwYXpZQjBzRTRRSFdLS2thTHNvSkRpOTdEZEpDaEtBVXBoTE5Bc0JXbEtrZGRoTW1CSXNDUU92VVVJdXFCd1VHNEQvZWdQcUEwc2hQVVRqeFY0VEMrSzJTY2RCellvWmdJd0dZN1lrVUs4aUprSTloSWdyUlRWVTIwVWhVdEVqTkl6UEFTekhDRjZoVG5LQlNOZkFvVVVwRDUwUnJHTzVBZjBlenF1OGx2eUsxZ1g4MlhXdEoyZ0o1T2xiNGdmVk82WFhwSmVodFJ1aEN5Q0JvRlZFSWduaU53UXFTSndrWHB0QUdWdDhOMk9XM0hlWnVIU1p3VWdnd0YrVkthMUdrQUFoeEVJb3JIc00yRWFFWUJpZjh3WmREVHlxTDREa0MyRm5xWEFPRURvQloyRzhjS2NxR3dRSEMzaWx4Z2NQYmFnb0l2WFVyYXFPY3dLOW9VdlJMakpPdzdzK0ErSkU5N2FoVC9RU2s5WjFabkxFMTZYaXRRVStUWEtyUDFRV2ZtTWNjeEhBdUh4eklHSFRMUEdkUkIzc3g4Yys2K3c4UE92TGxCTUhjMFdUbUVUTUUwT2t3dFZTa0Q1MVFIbU1vMTErRXFDQW5rQWNYUUFlR2ltQndBZkFOLyt6cXFZdG4xS3JGMW1HVUttd3NjSzNNNFUxaEE2Q0R3aVRvd0FvWEkwTWpqS2lBSWdFVllCNFpRVnczZFVHRmdIY2RtZ05MSVFGMVdnUzlsK1lwTFhFT3pkVjJXRFZ0empVc2NrOXU2WWVnMk43OS9SYVZ5SlRsc3R4VXJkanZrazlzN01QTEFVNGJxN0xpOUI5Z1JHRWlGMG4yeXMxVjJVSmpDakZHOXVSRzBVTWQ1b2pHTFIyVkU3cHR4WGVjelA5Nm9yRE56OHZzbXlCbW96TnNkbUhJcmhwMVQ4ZWN5WkVwbUhISVlpQll1SDNhK3FZQVVVWjkwSVFFa0hDNEhwbUlJSmNSazFkVEw4NnVXNmVnT2JYb2dtVUFiQVY3NzVPcFY1QURBOFRIWU91Z3dJMkhTUUlkWW15YysvT3UwcnlkbXNHQm95OFdxd2JjMk5qbzR5OGllbXR1SXk3dUJIRnR2cDlWUXhFNkkrK3FyN3lHdmtwK2pueGx3SC9vbk10VGhyV0ZTbm1xUlA3cnV6SHRxU2IyRTJ5Vis1dCs1VDM3a2xtYldWZFhiMU1EbTE1TmJ3R2lWSlhQMXI4Z3JVTWFVdEtHMGczUVVlbU9EaEk4VFlVYnhFRlQ3RUJzbVF5enNtVkhBakczMGYwNFRZYUxoalhaNUVwZ0xYYWRpQ3FSZ2NhQ2xoZGVneVZ0S0M3Z1FMZDF4Z25ZdWN2UVN5TGVFQUkrVERWRUtwWXZLZnNrSFFjRkp4WFpMMm01YnI5Z2ttN2M5cFNXRnFNNUl1ekovWW91TjZxbWIxdk5sN2ZGVzIxRHBncm1EdnUybXRSb1pvR0NxREpKbGhPQVArVG1WbzdtVGxkUjNxTzhBZDRHMExadHVYUE5ibXkwZWE5ZHJDbzBDQnlUMDhLTHFaREp2NXJCS28yNlVzcmtMUnQ4eEJyWHhyYUp5UFc2dkU4a0RESXdkc3B6UUFYa2E1TTIwOENQVDFTK0JWcndNNUFqWTlqaFpVV2lNQWRRV3dxSWxJSkZMRVBCeG1QM0syby9wdnoyT28yK1BEMVVjWS9tOEZYUEtycXFIdTdWQkhLc2d1Q3hWWGo1U2lRS3laMlNZL2NkT2EvMEc2RjZVM1JabjYrUHowc1FqMXFKMW1tTVpXelN3NVNaelByWVNvSVM2QUhUZDhlYXk4YXgvdTdYVmdqWDNWYnZ3aC84RDdNaXpBTCtESFY1RzczdWFqNFFqMTRkZi9XcDRmWjM4ZWFaT3poeTQrdHYxTzhOUjRSdXdWditHZkVCK0JsYjZZZEtKMGluU2FkS1owam5TQmRMRklEdUhTTUVaYVZLNG9wYVFucHNYMkZsNG5OZjZCV2xLd2piS3NoeVlQSndxamtBS0FIYkNGU0ljSVd2OUlvZWhhOFFob1I5RW95Q0ZRVXdLU1l4ZWxSeStITDVwVzl6RHdoSnlYV044bTN6ZUN1OGVOd2pjS1lCNWlyYVZab2p2WWljaU02ZmZRZFIyeDV6RDJ1V1M3c255WWszWHRoWmZHUkl2QnBnamt4Mm5wd1A0dTYzZDNyMy9oNS9mZU92UFc3ejF3bEYweXJsQkZaSnJTcldxYVAxanBlek0vSXJLbmh6NzgwYm5Ec3dEaVhBVlZXdjRxRFo3aEZ3MXFHVG1QcVpZNGZSMHVJelU1czJiVnhIZnErZjExelMrQzRQMEdIcGtPekF1NkhkOWJKRkVWcTllZmJ1dy8wM2hXWUlPUTVlaDAxUjZxZm5TUzgzSDhQRFNTOUxmSVA5eG9ERDNJdDhtVjVOcnlMWGtlK1FHY2pQNVBybUYvSmpjU200anQ1TmZrRHZKTDhuZDVOZmtQdklBZVpnOFNoNG5UNUNueWJQa3orUkY4ajhnRVY0bmI1SjN5UHZrUXpLRHFod1lENEFmOWFoUFN6U2dJWTNwSUIyaVkzUWhiZEdjTHFITDZZWjBjN29sUFpSK2luNkRmb2RlUzIrZ045S2I2QS9vTGZUSDlGWjZHNzJEL3BMK2l0NUY3NmIzMEh2cHIrbDk5QUg2RUgyWS9wNCtUcCtnVDlFLzBqL1I1K2tMOUNYNk1uMkZ2azdmcE8vUTkrbUhkSWFoRDVFemc5bk1ZejRMV0lVTnNDRTJ3bEkyempaam03TXQyRTVzZDdhUzdjZjJad2V5ZzlraDdEQjJCRHVhSGM5T1lxZXhDOWpGN0hwMkUvc2grd243RmJ1WDNjY2VaSSt3eDloVDdCbjJMSHVSL1pXOXh0NWpNd0J1cUd6SUEvSmllVnY1Y1BrSStTajVXUGs0K1FUNUpQbGsrWXZ5VmZMMzVMdmtlK1hmeXZmTEQ4aVB5SCtRSDVlZmtKK1UveWcvSno4di8wWCtxL3l5L0lyOG12eTIvQTk1dFNJQktnU1lveGlLbzNoS29FUktSUmxTVW1XK01xNHNWQllwbVRLcDVNcTZ5bEpsdWJLK3NvR3lvYktKc3FXeXJiS2Rzck95cTdLN3NwK3l2M0tnY3JCeXFIS1c4blhseDhwRHlzUEtvOHJqeWhQSysycFpYYVJ1b3E1VVQxRlBCejdJWEJxTzRBcGVOcG1EV2RUcHlwMjBTd1JmREpNc2JIZEozS1Z4RytabG81TzNNMGhBNEE5dTV4bW15eWJiOFJKNDNncXp1QXVUczVOMnNuYmFwVG1VME5VN1hacndicW5kbGVOMk53NnpzRnNHbElMVHNOMWxuYnhyeDUwdUx5NjZJeUhrN3daSjhkV0xIN2tOZVVqUzVYREVKaVZkd3Jzc3ljUzh4WE1LTGFRNXBBdWhtWEF6enNJMDYyUkpxTFJEVEJORFpYa25EVUZVeEZndFNJTk9XL3psL1JNODcvejdyYlhQUmY3ZVphODBQSTNUTUpzZ0xaNTN4a21jTFNIUTc1UkRqVHhyOERiY0M1ZWdOeGF4Myt3SmZOTWt6T01FYUJKMlZaaURlZGNJczA1WHhXZHdEMDdsSk94MEdYUXE3Y281a29iRldSb0tJWlZpL2l6bUhVZ2N3cjFFL0hGNEVQS2xKSVllODdpVElnMWdQRG91YWVRWlpNdnhqbmpra3JnRGlkTC8reEVhSDJhOGt5WTVUL2swQ2ROV0VrQTlHYzk1bGs2VERFWXlobE1ZZ0RUalloUjR4dHRabWtOdUdHcW9ESVZwWEVoVTZIdkdNL1FiWkdvamFPVklvQnhLQnQ0Q0Z1TFkwQ3p2WkV2Sk9pUm9RY0lzaDIvL1dQekwyM1hpQWhlUW5Bc0tRTWtUeUdzSnNCcCtlWSs0T2JBbHRDUHVYMmJRaUU2Q05jMVNQOE1Pd3FNT05HT2FJazJ5c1hnc2hpNURaNURUK245aERvTUpROUZWWStDdUJzNERIQmtjTlJnVWVTbnBLdUlaanRNMFNjTk9Yb2ZaME1sZzBuVHdrWUxNMjJVY1VIZVdRQ2ZiTFdDanRjNUZvbDVoTVE0c0RnOEhEZ3B4VnFWSjd3WlF0UmhUSE5LdVhDZVFINjV3aE5JY0JqV05ZVXFtR1p4bVVGQ09hVUxCU1RSRTBrSkpNQkdSWmpnUHd0NUpCd2dQZzlDVmVkWktVcHhCTUs1WjJFcndYMWFIYVMvWXA5OE40RUdZdmtyL21uMkVFUG1hQ3lBUzY4Mk9ZWmhtL2Z0QXZPSmZWaEN0S0JKbWRnNU1qeWtVYUVDTVJlRlR4Z1VISWZFVVVRUmRxem9WL3NFTjFPSlU4aW1aR1FKTDBnRGtyYU1EaFNxdVZWNFhqUFFLQUIwbUd4VFVDcVByY3M0VUE0MW9nTlVhVVN6MHZPQ0hlMkJPY2dySENwUUJWbmlIejV3ckhxREhBVXhMK3YveFFWTVY0YnV3TDlIYkFPQ2QwRVc0VWp3b3F4RXhCdHdCYWxUdFlWbWp6NnlkVWNZUDVBZER2MStoVElobUdFWWtERkVza0N2dzBTRkIyYktzaW1tYUlUd080T3RpbFF3ZENRb1dvYUF6aVZiOERwWkJ4eXpLTERsUWJLMFVpVjVCRlFyYTBoVldHc1NFbEM1U1dKdGFaVENaRFJrZEU2aW9rWkRXT2tQT0Foc0lDdTBIQWxzS21NZ0t0VmpaY2REaG9VV0dRVjFEcmhsMXB6eDNMcFJENUJSU0s5Z2Vac2dyZE5zMHRPV3FLVU1aMENZRERHMENScmlHZmlZc1N4dzRYNThGR256UWZTTStKZWhhaFZLVEd0QlhiaGp3aEJxUW8yanMycCtlQ2QrN0Qxa3BaQkMwb05nT1JUV3BJSXo0Y0s1Um5WTUQvOGx5cnpUZ2tGV3ByQXlnamFaclJKN1B3VVFrZEZTMUxVSkRkSDBKSnhpdlUyNmd2NEVJandGZkJGMGdRRmp1UUtIVWhYRUdvc2ZBTUFiM3JaMHR1Z1hrMFZUaEZhSFRsTWlGSDYzblRsdnJyRGhoaGVOakVTRXBXZXlOcmd2S25vSEJxYzkrTE9yY2dTNDdhcXFjd0FpSUVnZW9RNVhRcm0rUFppclp6TEVkeWx2T2dPUFdCN0JpWkNnc2xzdmlYTFNsV3ppNy9wZURvYUlWcmxEaHdBTEt3R2xORmo2Vk1ub0ZiYkJEb1JUZEtEeVpDdlZsWDhZZWhBWStSbjVGcnVXaVAxeW1yc1kxWGRmS3NzWWJ3S1NHRDd3Q0g0ZTRCaFNDTjhDY05lYklJWEVMSXRQQ2l6VGZza3pndHpKOEhlRTJnbll3NWluS0FtQmJpd1l5dEpSVTRLbmxOa1VPOVBJVS9VTzJKY09DcUlvWDBycklUZTBTbGowQWVabk9sV0hoVmhMMXlZTDIxRVczTEtOK0lCTVBuWm1LTWhlS0xNSHBpS2hmU1ZRVlc2UGdNOVdTNVFxNnIzQytHUWJhdnYyMWQxY2FBZHRtZllEZS83S3NYZ2JEeE1XRlJiQmdveVVFVjh0YStkU2tXRGdMdURwTU1FeGxyUEQ4QjNoc2tidldXakMveStYTkJUaHJGelpWdDJZcFEwTm1aSWFoYVM1ZHNFQzJGTk5NUmsxVHNjbXFqeXlBWDN1dHhwVlJydTZoYUtPSzVzcHpkaHFHYk5IUzBMU1NoUnNzWDZCQXhySFdaTU15RldITDlmc3c4Ty90SjJtZThEUUJYSkhISDJrWldiYjc3dXN1VzdhdU9QNUwvY2RjZE5IaGgrTzN0N1kwQXpiSGFlaGpLTWZ0SWs1cXR2ejcydmVGUTBQaHpJRjRKS2MyQjhJM3l2VjZtY3dKQmpHdnZmcVhZRXY4Rk94bGFSUXNYMGVzS0lLMVBrMm1vbUdDYXlMRFpBaXZZdkswYVk4YmpTVXJkbHUwb09QSmxwYW92cnFuNDYxVEd0bG1hTVJxT0k3bTJBTmMxZW9iZDlwN0xjOEg5VVFoNm1HT1hTOHYzRzJ3cENXMkE3UVlXYjJLdkNIaXhjeCtWRm01aUMzN3ZRZ0dpd1ovKzl2QjUvc1Jaa1RxUjVwSi81cTNpRFpqNHJoczRMN2ZEYjVRV1R2eWJMWFVqMENqMGtxbzZTcHlacEZ2bW1BY1hpNmk4bGJHNTUwWFgzV1ZPRjdzbjM2NmYvRmI0Z2dqbFVnbms3OFFXL3FFc0tVdmxENG5YU0pkTG4xZHVrcjZiK2xhNlRycGV1a0c2VWEwOFZ3NmtpSytCbFNlQW5ySFAwQmZnTXhRK3dPa0FnZ1dJMDRMRVJlbm1CQndPNkpUanBnUy9tRnFTSVFaNFJldGdzN1lVb3FtSTV4bWlFSUZMSTBCQVlubkllWnZLenhPeDJrSE1TdWdEV3hBRExnWnlnU0xPMCtnVUVBSk1XRHVFTElsUEl5VkRPb2tMekttem56V3I0U2F3ZWlBS2xZeEtIcjRHVTVYQldXbFFxdm96eVVtclM1VnZtU2I2Q05HaGN2RTRnZFZBZ0t5dHd5NFlEK3p6RHlReElXRFdvbGxESzJUVFNFd0lia3U1QlpaUUkycnFBTUNSckhoMm1DcTRhRWNHa2hBZXRFd2dxclNTSVdpM1JXRVFjRWxGUmM3NEM2a3RianBnTnFrcHNiWWxNMkVWQUJwYTRZcWFIUnFLMHd6NVEwVXFCMmVZVGx6aEI4ZjZxeURxTUp4NTZ2dklYOG50NERjMkFSR0toZ0NrY2VCd1ZGWXBJdllNdEx6ZWNDREdOM0krVEkyaWZFZGtZSWVPcUFuSGpBQkhEQklwVUhlQVZsb1Zzb0xkMXh2ejNuZWdGZUtUV2lyWVJyRU5Hd3k3czExZFZPaG5qdno2czZLb1U0elpSNVRwMVZEV2FuWVIrbnIxTk5hbWZTaXhNclZ0TDZPanA3TXZTelR3VFp6dGFTWU94cWFObWNIeFRib2l3cGdBUFlpMVcxbEswV1NQR21oZERwNWtNalNkNlZyZ08vdWxuNHJQU0E5SmowclBTZTlJTDBxdlM2OUlmMU5lbE42Ri9yWkRsMkNMSWtnRkd5aUNkcmpTb0M3TVVMZHVJM3VIcmcxMW9vUzVNOXNsa003eVZJeWxvTUZBL0FWMkRVUEJhenRRSWFzenY1M2xrM0EvSUFDSjlQSnpsU0hvOU1IR2Jld1REQ0Z5RlR3Yjc2R2YwT3dhV0hPaE9oYTdmRndsbURHOWpESngybk9ZWm9XTXlMT0MzNU8xbWJvdGxJbmtBS21DYmtmcURkempSODVSRlZ3ellQV1ZLRmxTZkZCbFN2V1lZcWxGVkxnRENvVWVDeDQzV0R4WW5xaFpZcWJRdXZKcEZqYkV3TW1sNGtHT2d0NC9reVRNQk1RRmE1ZDlVcG5vYzlJRFIzUHVPS200eXFhRFBQQUVGVUNuQ0g2dnZTLzJZQUNnTUhFMVMxWjBSMlJrVVkrS0dzQzA2QmNvcmdTRkpnNktacEZnaGdYWGpRUyt6cGhYQ1V3ZnhCbG9GbzBUVTJETzFDNGpETVB3QUlwelRIRjhvK0F5QVpvV3RUVkprRVVCc2hNV1ErNkxGYUxUSnpvSkJrQ1hTdk9xbFJRaGFFZTJBejQ2d0dRYzNDUmovQ1J6Y25aMXN6WkY5b2dQNGVrWVhqMm5QUzJWQkt4ZHZOZ1BwMGlmVnI2akhTdThDOWVLbjFaK2krUWlMK1FIcFZlQWs1OFMvb25pajFTSjZOZ2J5NGdMYktZckFkOFdiZ0d3RUJCZGhLbU5nN3JVZ0kyUEk3dU9DQUsvQ0hpSnRpZndNZnl5QVRoaVRDdndPSWpZUWNNMVhBa0Z4STBGcm5BMmt6QmtzdkNwUlNGS3JBTDhBWWFvemxLWUtnTGhDQTZNWUJ2UUZTbWdvRTdDakpRRzJWeEx1em5kbWNVakQ0ZWRuZ0NkaFVQd2Q1dW8ya0hObEFiS3NkREZuTDR4UVBjUlNPTGlINTBDZlpsOWc2SFFtREtqWk5PR3dXejhQRWtTaUhKdzc1NFQ0b3llcmE3a083aUZ3eGthRlFueDVZSlA0UndvcWJrQmhpbFFCZnJlSUliVVE2RFNVWkhkUVk4eFdlKzQxZFpBd2VTSEk2TGVFUUZZVUk4NHBxWWVoQU9uRTF5b29tbFRmZ29NNWYxcG9PTzh2OEc1RGhPcXVUZlA1eU9GTE9CUlBDZGVTSUxnVTNMY0d1QzBtT0JBeThGY2JzVlN2bEZwRGRyQ1BtNVlXdVJ5QklDSmkwbTRlelhJNHNVdVZqZVpOVmlSUnRNRnZoQVlYVlBMbW9WaHA2SDdFd0Fwc3FUaXVKQUNzQ0hTakdoMGJSSUlaa0s1aHBXeVlyWnpmN1QyUmptYUdMbHBUbHpaREFhWVdMTEkxaEN6OXdodUNKQmk5WWp4cmhZYXF4K25id21QU1VkSWgwcUhTWWRMcDFMNzZNUDB6L1FKOEdrL0RQOUMzMlp2azdmb3UvUkQrbHFOSHRBR3Jpc3pHSTJ3SVpaSXJ5ZFRUYkpwbGlYcmN1V3NRM1l4bXh6dGhYYmp1M0VkbU43c1gzWUFld1FkaWc3a2gzRGptTW5zSlBZS2V5VDdGUjJCdnNNTzVkZHdDNWluMmVYc2kreEs5bFY3RnAyUGZzKyt5bTdsZDNPZnNYdVlRK3gzN00vc09mWXkreDE5amYyRm51WGZjQlc0M0t2cklKcDZjZ2xPWkxueVZQeXRMeEMzbHplUXQ1RjNsWGVUZDVEM2xjK1VENVlQa3crVWo1Ry9veDhwZnd6K1RmeWcvS3o4dlBDRi9xbS9JRUNCclJTVnVyS3FES21MQVJ4c1Z6WlNObEMyVWJaWHRsSjJWWFpROW1uNStrOFREbGFPVkg1cEhJcXpHWVF2VWtHMzJuU0NWUFVEQW1vRVZBY2RaTHlqR2NBYWVPTXR3SGJ1cUJzNGdUbTNUZzZzZElNRjVaZ1VuWEpFcEkwTzVBZDB1VTRpL08wblM5bFVFb2laaS9vbERoMUFYbG1PQk5SS1lFMmdrbVg1VmtIS2tjWUJYcUJvMk1VUkFFUFhUNE90azRIb0dTYlE3NjBuVTZUdGt1RUR6T2ZJTk1nUzJCd1F2Uzl3UHpNazJ3cHpYQzZ3Y1dFdUFQelB1MElrZExGS1p5blFtdTJweGxVZzdXRitWSVNoM2tCMGRJRS9aa1pIdkpZQ0p5d2NCSXVwWFhXam9WZVJRM1pGdjR3MUxpbzIxQWdnSVJxbzdEcTBsQzRmb3M3V1pnSkpaaUJZRUJ4VVB4QjAwWFpJSGtTWEczcFpFdG9UNEFLcngySzFCeWxraEIzUytRVXZhd1p1ajlCV1FJOW9IMUFyMkVrQXFBWWJFUzduMTFVdk1SSmloUDBBRVBSN2Q1OWtIOUFIaXdUOHZMMjdQMTJBb2xpS0xkdzljR1l6ZUpSNFMxdEY0QWdGbGQ0bXFHWFU2Q0RQQTJ4dFZCc25lSk5nS2pRRXBDRlF1bkRzSVFvUzRHK2lCMEVFSUZhNFFZNjlCSThReWljWjIwWVZCQ1JNZElMM2E3WXRHR2tkUXo4aFRvRllBUlBRWW1rYlk2K1V5QTlUWkRjS08xN0tCblM0aTE0VUVCeFhLU0NoNkxwU0ZBRUl1SHNOODk2MXpnSUdaYVJvbXNVa1ZFUlpkdGIyUXA3cTF4WVNYKzFpd1BjU3FHMXFFU2dRY2lSNkNRR0xRUFZpbW1USjJESGdPSlpTa0ZQNVRCNXdqakJSc0ZOTHVyckZRNzBBQlVGTlNPK0wxYlNvRG91VnRjNHFoL2U0ZFBvMUlSTDdBcFFDcm9JWlVOdng1Rm5zbUdhNFlUcFFERjVXaFROSjJCT3dSQW5pS0xpbmpMS2tDVERCRVlweVlDa1lqa1BXZ1hEQStNT2xVSlArRktZdkRHcTFSNVprR2xUYkJiY3crVFFWWFFaRnhtQUJLanhzaGhKa0FESmdJbDd5aEQ0VERqY01Sa01qV0FESE5FWUxSMllrOWtTSmhoOWxrY3l6QXd0endWSGhvSlhpclpuWWhvQjRvWEhTYnhHM1dKK29IWFd1NEtxWTVqOExwQWIrVFlYY2lqTW9Lbm80VTB3T1VkM2JZcjFnWVVJVXdEYm5JZHI1bVNJNFNWQTlMeWRDdENCc3pzV3lLU2RBcXZEZ0VPbjBCc1BWajB3S1lCWitBVktRUytRWDVKaFFvNFUzcldld21NOXBZZkljYTd3bTdDK1Npb3daSEdXa3JsekN5ZzcrNURZR0NyWFU1dEZ0aE9VMlljaWRBbDBYaE1yRys2QldUYXIzZUY2Q09QS1poN21tcWJJczJnWm51aUtnWUZDUmFsRm5RUmpneWh4Wk5TdkdLSlZ0QnQvRFkvaGdteVpxQll4aTlBbXVjQ1ZscTZMRkNZWHNXVndZV0c4Rmw1cG9yOEszb01IVllHNEJ5eUsrd2JrSWw2TTl2b3BFb3JnSW9xb1J4TkZpV0E5VWtCd3pSSkpsVjVTZ2Q2aFdNNkw1K0tBampjOVdOTjF1ZWNPNjVFRHFoUU5lUWd3bHJFUjJhdm5OTVltOTV6RmZYclFOVWNaUGNZWU1GVkFscDZmVk9tN0hpbk5SRFljUC9GRDVEWFFLZ1J3RGdZdzBYVXdrMlBTOTZMMlI1ZXhBazlabWs3aS9uQ0trRVppVWJPd0lkbkJ4ZmdXajNrUnluVWRJN1BqWCtSQ20wZVpJMHp4cFFWVnNSbEd3UXk5OERHRzBBeUhEdDNUYUdMUE1rTUZiRnNCTVpTUzhKUGoyRkNaZVJVRlFWdlJMUFRjeVVYNElSNUdvSEZEY1A4STBtTVNwYWdxeGNRK1JvQ3FSSGdlTUpaVG1DOEdDd2tyZTVpNG9nNExZbjBld1M3OExqWi96NVg3bDYxQUxpenNNVUZ1MGVGSkVhSW9yMlhvRWJBMHdLZ25JaW50TTN1SktLYmNHN1FlMjRxUk9JZzRwRGRVUlJFSUNzRmVXZU03eHNUS2d0NlkwTm1LS0liOWtTS2dUdTNQS1ZsNHpBRnJxd3JqT0YxR1F3V3BaU2k5cGpuUUtsbFV6elNLWkZWa1ZaWGhXNVNzOXJ3d01wSzdMeGpVSG8xMStDZUlUUHBNcEJZUmZaQUFJTDBNdVlrTmFUbXVBUWc3ZERZdkliMHpNQnBoZ25MZ0tMMTNYK2Q5SmtFay9SRzJXWnVtdmJsSVNjRGswQlJlSFRSYkM4clpZbllZNHBiMkg1WnNlaVZCMDNWWFFiNERVVUhMMUFmekZHTzhsSUk5Wm1zckloMDlzWXlDUG1IeHNVaU5pT0RmMldSaXJhQVlIOHBWUVpLNGNQVURWNHJlY25lZ045NE5RY25aMmI2MkNQUzR1SytDdU5BWVVNZVNOUkdOQzZNSU54VytWc3Y2YzVkaERUM3pZcTJTUHZxWkQ5OEZXTlV1cEtpQjJWaXZoMUc3MFBiK2hLWnpVWXl4RVRHM2xhSjNXR3F2dGNDT2lXN1FvOUV1R1pRbXdRYS9sK3lJQXd0VWRFSGNWc0M0R3lGallHTTNZUzZzUzlZbm01RnRvTW85eUw3a1VISTBPWmw4aW55YW5FTXVKRmVRcTRWZktPRWp3dWpGQlh2VTNLamYwRmhkQXVvQnI5Rmduc0JManV1OEFvd0NOczdSSGdlMHhBdU1taVBJUy9NVU5TcTZsNGp3ZEFJY1FpczNXVktZeEppamcvZ0JFbzNqTFliSVQ4UTAxQ25ZMG5VQk1OdmlQSVJUVlBOMU9VTzNUaEVtVURpUCt2Q0hvNmt2L0ZENFJXY29GL3BkVkwyRWlNcFF1UXRQRXZRRm9DN2N4ai9BZFNsWUtRalQ0aUlTQ1FvQ2xReWR6NFhUcVlPaEFsZ2lkRDlHRDBLYW9COGlIYWZZRm53TVNBamRFbkFYQ0VIUjlTUWlGTWJSczd2bU1hU09BWURCWlk2ZWZBU0JnQlRGSXUwRWtCZGR3M1VtUXFNQVgweVR1QUFXQ2JrTDV0RE1tU0FHdGNGdWd4Z1dMKzhnQXQ2Qm94ZUFmS29UMndtSk4wZ1dvVldyS3phSUhsbWpuRnNrb0d4dEJsVFI2OE9MUDluRjZQUmhGMWpLVVZUUU5pai9ERjVWWkY0b0pPUTFTS09BYUFBeG90NXQyMDNpVkVIK3BLWFMrYktZT0JydGlUMjRuQVMxNW1pRXhqQWxRRk55L09FTWZpeFoxbEJrb1RRcW5sSGRaQ3BZMmZLR1ZBWkpwQkZqQXdBQUlITytpalBXaUZGZStOZjZOWTJidmYyeXJEZkxVSzhSMjRVc3BzNWM0ZW1Bd2dkTVhzYXdiWlhybGpHb2RHaGYvQk14UFl0QWZFTDgvbGxwRnYxQWh5MmhMR1NMMEFnRkZQcExWRFB3RFVNMWUycEFGaTR3aW5OYTFlVVNGVUJqRTlETXBsRElEbnJybUtrcmpEaEMxZElDemtEbEZweWFvaDN6MUNybityL2NSTlhlVkNkUnhjcXlRdFZXVDlZSlNWVUlMNWpYeTZTTnBIUEpEV1N4SklIdVdrWldrRTNJbG1SYm1PZTdrYjNKL3VRUWNnUTVocHhBUGtGT0pXZVFzOG41NUdKeUNmazYrU2E1bW55UC9JRDhsTnhHZmtIdUlyOG1ENUEva0QrU1A1RVh5YXZrYitRZDhnK1FocHc2dEFSZEg2UUpCU09BZGtVRTJBNTBGN29IUFp3ZVJZK2pKOUZUY0RmUWFJeE9ZOEdRd0xYQ0lrWW1SYnNDVFM5QTJtQzVMS1VweW94eDRYNU44SFVHWVBvQ3E2TWZOK054NGV5ZHhsbUNWcC93R1pNRS9XSkZSRTR1b29TRUhZT2lJU3pNNFM3R0NxR1ptT0MyUzBENlhkcS9JVlpLUkxRVG10QVp5cFlFTGROUU9KVHhUbUczOHNMRURndnhGT09UZHQvNVhDZTlwUGhVK1A0S24xd2JSQUZJTk9oQ1czZ1J4UUlMYnhmU1Izam94QzBlVDlPbFJMZ2VSY1ZGU0pLbzFTWGp0QU5USFNnU0M3TVNmWGE1a0F4Q2tJQ0loSklUZEliSE9aaG5zOC9hY1QvUnYveUN2UURrRTA1U0lHb2lha1UvWlFlOUNrS3lwV0lOcVFpajdJaEt4R09RTkZCOW5Jb29LckRPWWRCaUlabElVYTVvM3BwTEVGdThsMmdwRVJWQU8rUGlORVh2QzBjVEdPUFhlODlqN0dtUkdpd2RjVEVzUENadDBYYXdidk1VR0llRFJJc3hIUnBoSVRUcEkzZEZ6K0xlRjllcFlCU0pmYmxacHNyZm5McHFxOHlXUVI0QlR0Qk94NDFBdUU5Q0Z5QmZnSWlrcDhNOUlwdUZlV1FiaFpYeFVkWExQb3AraVhESkV5TTBCTm9FZk91QW5OUk5xaW0rd0E5S3FKYjc4eEdrekdqZnEvK29Cb3I2NDFWTmM4VCtubG9VMGVwUVR3S0lBOU45bndaK2hNZEZsUW9abVBCOXBWSUZBYmFvVVBDemNTYjlDNFVwbGtxSloxRE5YdU5qeFkrd2JYUlZ4QVlJcEtIU0FyUGhMeFZoQUdwL0hRTnRuMUxmK2lzc0liTm9WMDhBeWdJNHFVV2ZpZ1UrdktmQ255emJHTGlnUGtXdFFiV0srNlFDYW1pNkxQYXRBRkMxVFdIbG9Ka2x6Q1pScWtKTWhjbDk2NFNvZzdaY0txaXVybGxkUVdUWHR4Y0x6RWQ3ZDNzMkNKbkYzbXV3RkZneTFNSmdCOWtSdTd3b3Fnc1MrYk5GeDJEMXFpQlRtK1VTV1VnQXZ4WXZXUUJkV1ZoYkFIM2dwa1lVVFJ3QW1jRmhMdkpBVTQxN3VBMlNZMFFFNGtqRHNGVGNOZ1Y5OHQxaFU5TTBRSzk2bTZKUmhhM1JOQjJFWlhHbUtjcEkvNEdqbEl1ZnRlK3RmWUlEcnBQbGE4WUEyclorNFZtbWZjNmkwNkk5VlJzSUprbmowcmJTSmVSbFFHMmdXQURlamdGbVhFZ3lrcE1sWkFPeU1Ua2UwTnRwNUFKeU9VajZhOGt0NUE1eU4za1lKUHlmeWV2a0xmSWhTSFlUVUhRTWNqMmxDMEd5WTNUdk5GMUJ0NmJiMDUzcDhZajJpbGVpcU1sSU9nWWlJK0lZM2c5Q2VCRkppdVVVRUpub3NSQ1NFNFQzRWlaV25vWDRFd0djd3ZtWlR1WlRjU0hSODZsaGxyY25RU1JQSWZScWhVTE1aM21kSUp5S0V6NE1rcFUzRWJJMWVUdHBKaDJldy9RUHNyQ2pKbUdua2NJWHdaYVFzUmg3bDZMdkdHTUxvYm9jRjRRUU5DSStiQmZPRktGUE1uU3FkdHJOUEd4QVh2UWFCcWcvbXFBVmNQOU5qckYyazYyNjhDT0Z4ZEk2S0NtWHRLQ0xTUU5TZzh5YkhDZHcxc3JhcmVLOFRvSWxwTVZ4ZjFBYjRHdU8wck5PaEdpTml6MUV2ZE1PRjRnUjNaTG9OaGFud3IyWkY5N05vc2xpTmJVbDVHbUlMWXZYcWlULzEvTW1uR05EUUFoUFprQ29zQWxQTXBFS0pHMXgxaFFyUTgwVU15MGxvdlZSYTdMeGtmei85cXlKZUxTVi9pLzNVWnJIY05ySWlncFZmTmJxVERhQzZLTm4wUC9pRjVSOFd5enp4bmlOMzdqVmJ1SW0wbXdzRFZLVmo2V1Q3Vlo3c28zYnJ3TWVrVlhqdUh0Y1ZtYStWV3g3WTRwU0JEb1ZrbUErelAxMTBGb2xqb2NXbTZ5c1pXbjZ5MmFOUHdTVFRQbklNbFFoTlJqanFTb0x1NWU1Y245dHR1Y2hFMkpmUWJOY1JRT0o2V3F3czJQS255cldZSldlNVNmY1VESlppRGJzZ2Rwd3VyNWhHRU1tTVl3cUhkY2Fpbzd2MTdBaWdTNHRvdHJVQUlrOGo5SEMxT3RsRnRzS0o1allzNGZYNVNJQ1RLNFVseGo0SVBwUVhBSXBES0pwL1V1bGQ2bjF6RWNWVzhLTS9sR1ZPVUJPTmdyaXVxcGlYdE1Fck1ub1dzcXNKMDRmWDhmVWdOcVdjUHNwRk16TFdGajlJRGNOelpheEJzNUFOS2tpcWtvdUxNdlpndWdzcFl0dGdhVFlOYnFXOGUvWW9IRWcvM3hhNE9UZVE5UlVsbWdHU0ZJQnJiRkdxQWJYMWxTeExaUXlVK2h1ZEdjVW0zQ0poMTROc0F2bWNlNVVOTTBvZnZ5aFNMRjdKanpsQmhUdEJZR0hYejVHNlNJdzhXM1d0N0w3ZjNMUlp2R05aYmtzYnVlMDFiZkZ4UlhZSkdPOVU1dkpyb3l2R1dEWWFyZDNyTW15UStNNXpJbDFXWWxwYmlxOThMaFpqd1grU01kSmlYUVlTTjJ3dDkvaWIrUnQ4aDc1Z09LeXUwRXQ2b0w4SGFaejZBaHRnQnllUzBmcEdFamplWFErWFFmUTlnSTZRVnVBdU5jRHVid0IvUmpkbHU1Szk2UjcwMzNwb2ZSb2VqdzltWjVHejZMbjBzL1N6OUhMNkpYMEt2b04raTM2UFhvRHZabitrTjVKNzZlUDBtZm9LL1J0K2o3OUI1TVl2c0hGRWZzcTVySjEyQVRyc0M1Ynl0Wm5HN0hOMkpac1c3WWoyNVh0eWZaaEIvWldGMDlnbjJDbnNjK3c4OW5GN1BQc0J2Wmo5ak94cytJSjlrZjJGL1lTZTBWZUxxK1FONVkzbFRlWFB5NGZLMThzWDRKMmdFc1JYTWRnbHVOcUU5Z0RZUk5Yb0xJaWtBTlg5eEtPWHU4T0xnMWtUUkhTaEZoK25FeklHRGFDYXdNSWZCRzBKeG5JNEZTVUErZ2I5eEYwTmNEM0dLR2RBNXdHVUpqRklneGF1UGFGRTZHVHRoSFdvc1dNRUxxRHpuTkFqejBKQm5DeWtHK0Zwc3FTU1Z3WlNIczdEdExKSkFVakptaHlGUnVmanVYTlBHdTE4eWFnZnhTc1VPOFVBT3dwa0dJeGJtSVFHeitGMXNpV01Pd3BXQURqcE5pNkZFSTlTVnE0U1VETlRWTmM1d010TlMxVzBRVCs1dENsMEdWeGlKb0JTSUw2b0U3NmhnUFNyejNiMGlSTWVxNFdJVktYaUpVTHNaRS9ReWRGMXNwYUFPY2pLRnV0azJaSHJIeTF3bFl6aTNnZHQ2YzFFM1RNY0ZBWFdES1NpMGRaSUJiQWhCWVM2NUhGb2hzWURhRFpDbk1qeGxVWTNQS1JOYk9rTThYUlJvRDhIVnhWYmJZeFZFZHRCUW5QTU5LbnlVVTNFdnhCcEoveVlRckRGK2N3NENsMEZSZFh3SFlDM1NSV1BlTjJPa3pRd3hHQVlvMG5XMkVUR28vK2tUUnNUc2E0d3BUQ3FLRFJ3WmVnWVNtVzRIaGI3QXdBSnNreHlCNFh6UElRT2FTTmljQ3dMSTVkQ21xL21lVnBtRGJCdm9UNmtoaXdSRFpCTXJEYk1tZzJ3QVdNeVllTVdSaUFNWUtuelRqdmJUK1lGR1pXQmd3Ry9Ba0dUUU9vbmdlNGJxWTJKbHU1TUo0UzhTUVZ5MGU0ZE5ocHJ3Y1U1eDJoSFVQVWxER2tEU0VYK29lRWo2elRNMTd3TjhLQ2VyWlZYdHhEbXdmWGg5VGlFVjlUZkM4TnJqSEcwTkVPRitvV3pTUVM0eUVGSFp1MThvZzMwaWFNcTVwT2RocDhMRy9Gelh3c204SVhjK0FySzRDZlVXdW51S1Z4OWlMcm1hcUNVWEV4SHVOSWtEaG9OWXN0SW5rWDk0c2t1TklzZHVyZ0V3Uk11RUc2bldkaXE1RmI4TEF3MlB0NzF0RGloS0lFY2VCSlBOWEJ0ME0wc3FDdEptTjVJMnVFWTUycHJCMWtnQUNTS1JpNFp0Z01vT3NpWVNNUnlUb2lVVHlaVFNaVDdhaDRUbjRLbXBMcEdsWHVwbjB6Z2M4dWhHMGIrbzRQWmtqZmpqTVQxSlhEeFZxRUxielVjVjhOOXQwOElMM1ZPUWcwZEJHTzNZTVU5aHF0dGNhempQQ0FGU3RIYkRhNkMvUjFxanEycWdPNElDTEVKdTRaTXFFb2l1bUtUbHpYSVVxcHBDYXlzRXI3eUVNVDVvZ2kxSHR2d2Fwd084dkVXZU5HbDhkVkRPRk9oTCtKRG5PWkhiaFdhSm9pdEpwaUN0ODBFeTgzMkZvaEhrWng0eHNzZGl5YUtTQVJoczhyUmQ5bXJVRkNwd280MVZ1UDZ2dmQwZXZXNzdlQVY2UmhpWGJ5NHNGVkRNTm5xRmh1ZzJwMHNhUzJpNEUyMnpoalhoSGRqWDFpK0ZhR05lc0RCWWxGTktoNG9WM1BNbVJGdEJsQ3YrSmF2RGFDQ09jWHVzQlk4VElJcGxxNHV3RytZOEYvOUowYm1BZnBwS29lN1NsN1hCekJkM2IwQnhMNVpheS9MbG1zQjRxVktGN1l4T2JRZjNiTC8xdUZsTjZFdTBnSUFEOVgxWHNoVEFVaTZxMjJDZThCK2xrVmdaV2dHMnpZVTlhc2orQWpWVmVKSFN0RjFDQWovY1drWXFFb1U3bllDYVBTSHVtUUt3M0ZKLzBWcFo1OUtBNnlWc1F2aVFVb3pDSENHRjJ1dXM0b3A2UFlJa1JNWkNpS2hvaFl2YW9xY0l4aVZieGpMVWJFQnNSMVJRUFVvaCtxV0ZDV2UyL0pFRkM1aUlRVVgxOHh4T0pjNzkwZnloQXYxdjRZbnd2TTVySENhQjh1b2llTFYyN294SWNwSVY3Q3dYcWdkTjF4c0VlQnFYaTVtRENrTGlDM3lHRDI1cFRvcDAxNmFEcUF3NGlpT1BnZUVMRnVJMTZUUW1sWnhCbXZXWHhTKzdPWWJhTGpRcEhjaDNtcWd0TndNVjZOc1FuQVlraXFzc0pzNFNvWnh2QmpRYjRHelBnUzRNQVdlbUlZQytDVWplRlRHVTBTNXNJMXpCckFpd3VZRE5xZmtJM0NuZGRlQzV0ZGNSTHJwaGh2cDVJMXA0ZXJYQ3l4bzcrN0lMZm4renJwTzRCbWo0VUZFd1NrOStZU3drNzVEL3hKS2ZuWFpUaThpZXMvKzB0VjZTTHlGM0sxOUczcEd1a202Y2ZTYmRLZDByM1NJOUpqMGxQUzA5SXowZ3ZTaTlMTDBxdlMzNlMzcFErSVJIS3luS3hQTmlLYmtTM0pnZVF3OG5GeWpQQXE0SnJRWjhoNTVFSnlDYm1jZkoxOGgxeExiaEQ3am04bHR4TjhCOGZENURIeUZIbUdQRS8rS25ZWXZ3dVkxNlVScmRJYTROMjVkRk82QnoyQVhnQno1MmYwTWZwSCtoZjZIcjc4aE1Xc0FkZzBaZk1Bbnk1aDZ3RTZuV1liQUQ3RjJMZWQyUjZBVHZjV3UzOFBCblI2ckNTaGF4RlVWWkFoeGdUTEYxOExHWWhYWk9TNGdOVENNS2JHVWhGQUQ2b004RU9obzlEY3J0TWs1TDJvKzBURWhLR2JHWTVLRHcxTkpwMlc4QnhEQ3RDSitUQ1pKajNQYmlmcGV6a2dYVjBWcUZaQXRpU2NwdWd2QnVTallIeFNFU2VsaElBY2syYllibmJBN2s2Ym9INlQ5bFNtZG9KMjJBZ25vWmhtM0FvbjB4WVkvbUV6YmNhVDZHWnA4aWxvUHVoTHdNQ0FoWGdPZ0hpWVRoT2VjK0Y1RnZ0c3NUUGhiUFd4aTF0WjQ1Q2ovd1BkMU1sUzFtd25JZy9VQUhvNDUyR2FGd0ZOdUxNU055aWlveURGUFo2QW1LZkpNQVdJRlVJT3JJMmswMFJBVmNROXZiaWVmc1JUdTdORWdBSEVYZ0szOENMT0pjV0hBdVlVYm5lUlhweENvbkVpYXBzbUtick5vVEV4N3FISVhkd3dXanpFQUJlQUUyR2NaQmhYSzhMMEVQYzBFZTdBUU1NL1FEN1pFdHhuaXU0U0RMOUJKN0xZTFFHNENKM3hJY2JaY2JIQ0lMYTFkc0FpV2FLRWZGanNlOGIwQ0x3QlJxS2wwQW1MeUxOTU5ESkUrTDZVaVYycGhYTUc5MjkyS1M1SkR1TytVYURwWkJ1Z1hUdkF1RHEwSHdUeEVmekZ4VHBqTHdBdmQ4Vll4VTFrU0plMmVic1hqUWFXQU1NRlJ5RHlST0djQjBvQXRIWkpQRTNFQVNBZXZweXJOUlhpeHRKeEhBVnhuK1B3UXpaZzkyQUNJUDVrU3dFd0dRUEZvZTBjVFkwSmdpV2p0enlKb2FjSjJGeEtzZlVZVzc2VWpPSWlCaHBSR2U2alRkcGdhSVU1NG5tQWEra1NTdjVBODFsdmMwOGxnb3pleURSN2FudG1kUlVBQmU4clVBeFVBZWhrVHBFQnRmQmdpRDF0dmFpait6K0JZY1pVbTlrWWJveXZGVFJCMW9UNjlpWFZaZ3VNS1NJYjZLWmgyN2lYaW4yWnhPWkZmQzlUT01oNkVleGJqNGZVQWN3MnRGeVRjeTRiUk1IbFFJT1VDemxuZ05pbWxaaFZaQnZFTzBhdUMzaEJpMWdkUnVsSGhDUEY1Y2QrMkV5aDJFYStZcER2Sy96cTM5VysvenZLbEYwTGowYy9qb2k0cWtCYkFweWhlakxFRzVZNHhnOVJNZ2xkdHpWUU4yVzhyMkNNczNqSlZkMTBDZHRNaEs2SVdKSVdNZVFDanM3cjZYZ2gyeFVMc0pXNUVCZFZOWnBTQjV1azRFc0ViYUxwUmJ5QzBHU1ViRXhaN2xGTmwzVjVTdWRxejZQZjY1dGZvaXl0bnF6VTFCSUo1dUdUbVhmWnArSDNZcUUzYVJGRWhMdFFSYTB6RDRqc1kxMHNaaDhRM3YzUGxmTmt0aU1SYUxpSEJnRWJiWFJsaUpzUUNzMk5uY01YWFdDNGhEZTdpcUxpVWdDMWkxVlFBR3ZyWTF3UE9wTTBHZC96QlZwZVF4ZmYyVDVGWHd4L1M2eFRzM0R0WlppMTEyUGtYazM0ZWI2NllpNzBHV05udm5iSVBzQWhpdEpMTFZjVTlDYjE0cmMwb2c4a1hFTzNYNFRSWm9zRWMxYUlaWGtLWTdOZ0QzN1hKWk1ramp5VkNOYnJjN0RCR1B6aHJ5M0xvU2d6eGtWcUF3TnJFT0VyL1pQeUFSdVNhMVdaWFhlMjJyajJYS0R2Q2xYczBXUXU2Y2VIalNrZmphVmlyS3hTVGFQaTdXSktYUmJrUVljajZXK1VOVlE2R2FtYlVEcEExSDU0RFpsZDdqRnJobWthSDlYNGxpeGNhQ1l4V04wckZkRWlPdnJST0pJdmhBZk1FQ3NwWDhhSWtVT0pybXNXK1VUSjJyaTMzcklkbEc4emxkWktQcjdpRExMM2xvZkk5ZE9FUElIdjVjQjNpd2tRS21Nby95dGlQandFTUpJY3RLbUF1RWczU1IyWDVraWZKbitWUHBSMmtIYVI5Z2JNY2FCME1Cbm1iVDdKTzN3eDcvSjErUksrSGwvS3Ava0dmR08rT2QrS2I4MjM0VHZ6WGZodWZBKytKOStiNzhNUDRvZndqL05qK1FuOFJINHFQNE9md3kvZ2wvTEwrWmY1RmZ3cS9rMytIWDROdjU3ZnlIL0FmOFIvem0vbnYrQy80bmZ6My9MZjhZZjRJL3dQL0NuK05QOGpmNEcveFAvS1grR3Y4VGY0bS94dC9pNS9uMy9BLzhGbk5FbWptcXpocmdGRHN6Ukg4elJmQzdSWXEybURXcXBOYXV0cDA5cHliWDF0WTIxVGJUUHRZOXJXMnJiYUx0cWUydDdhZnRvQjJvSGF3ZHFoMnBIYVVkb3gyckhhOGRxSjJzbmFLZHFwMnVuYUdkcFoyam5hZWRwbnRZdTB6MnVYYXBkclg5SytvbDJwZlYyN1N2dUc5dC9hZDdUdmF0ZHExMnMzYXovU2ZxejlWUHVadGtxN1EvdWxkcGQyai9ZYjdUN3RmdTFCN1JIdFVlMHg3UW50S2UwWjdVL2E4OXFMMmt2YXk5cHIyaHZhbTlyZnRYOXFNenFGZWEvcVhOZjBRRS8wQmZxRW51bFRlbGRmVjErbXI2K3YwRGZXTjlVMzE3Zld0OWQzMEhmU2Q5WjMxdy9RRDlJUDFnL1ZqOUNQMWsvVno5RFAwcy9XejlIUDB5L1FMOUkvcjM5Ui83SitwZjQxL1p2NnQvUnY2OS9ScjladjFHL1dmNkRmb3QrdTM2UGZweit1UDZlL29yK212NkgvVFg5Yi83ditUME15UU1BWjNFRHowalpjd3pmS1JtakV4b0F4YU13eEdzWmNZOVJJamZuR3VMSEltREF5bzIza1J0ZFlZa3diSzR5TmpFMk1MWXl0akcyTUhZMWRqRDJNdll5VnhqN0cvc1lCeGtIR1ljWVJ4akhHaWNaSnhxbkdHY1paeG5uR0JjYUZ4c1hHRjR4TGpUZU10NHgzamZlTTkwMWlVbE14ZGRNMGJiTm1OczBwYzVtNTB0ekgzTTg4eER6VVBOdzgwanphUE5ZOHlUekR2TlQ4cW5tVGVhLzVrdmxYODFYekRmTkRpMW15cFZpRzVWc0QxckExWWlYV3FEWGZHcmNXV1UxcnlsclBXbVl0dHphME5yWTJ0VGEzUG1adFpXMW43V2p0YmUxckhXUWRZUjFsZmRiNm5QVUY2NHZXVjYwZldyZFl0MXEzV2Ird2ZtbmRaejFnUFdZOVlUMWxQV005WjcxZy9ZLzFzdldLOWFyMW12V0c5YWIxdHZXTzlhNDFZeXUyYW11MmJodTJhL3QyMlE3czJLN1lOWHZRcnR0RDloeTdZYysxNTluejdYWHNjWHVoUFdFMzdjeHUyeDA3dDd2MnV2WVNlejE3bWIyeHZhbTltYjJGdmFXOWxiMjF2YTI5bmIyOXZZTzlpNzJidlplOTB0N0gzdGZleno3QVBzdyszRDdTUHNvKzJqN0dQdFkrd1Q3Si9vUjlxbjJhZmJwOWxuMjJmWTU5cm4yZWZZRjlvWDJSZmJIOUJmdUw5cGZzcjloWDJsKzF2MlovM2Y0diszdjI5ZmFOOWszMnpmWVA3RnZzbjlpMzJqKzNiN052dCsrd2YySGZhZi9TdnQ5KzBIN1lmc1QrdmYyby9iajlwUDJNL1p6OUovdDUrd1g3UmZ0VisyLzJXL1k3OW52MjMrMFA3ZFVPY1ZUSGNWekhjMEpud0JsMDZzNlFNK3cwbk1SSm5mbk9PczRDWjVIVGRGck9wRFBsNU01aVo5clp3Rm5oYk9aczRXenBiTzFzNjJ6djdPRHM2T3ppN09iczVheDA5blgyYy9aM0RuQU9jZzV6RG5lT2RJNXlqbkdPYzQ1M1RuQk9kazV4UHVXYzVuemFPZE01MnpuWCtheHprZk01NXhMblV1ZHk1OHZPbGM2M25PODQzM1d1ZGE1emZ1ajgzTG5OV2VYYzRkemwzTzg4NkR6c1BPSTg2anpoUE8wODR6em4vTWw1eVhuVmVkMzVtL09XODQ3em52TjM1NS9PakxQYWxWeEFjQzV6WlZkeE5kZHc4Zjl1OE4yeUc3cXhXM01IM0xvNzdNNXhSOXd4TjNYbnVlUHVJcmZwWm03Ym5YSnpkN0c3eE4zSTNjVGQydDNKM2NYZDFkM0QzZFBkeTkzSDNjODl3RDNJUGNROXpEM2NQZEk5eGozV1BkNzlwSHVXZTdaN2pudXVlNTU3Z1h1aGU1RjdzZnNGOTR2dVplNlgzQ3ZkcjdwZmM2OXlyM1d2YzI5d2IzUnZjbTkyZitqZTR2N0V2ZFg5bVh1YmU3dTd5cjNEL2JYN0cvZCs5MEgzSWZkaDl4SDNEKzdqN3BQdTArNHo3clB1Yys3ejdvdnVTKzVmM2RmYzE5MDMzRGZkZjdxclBja2pIdlZrVC9XNHAzbW1aM3V1NTN1aEYzbXhWL1htZW1OZTZzMzN4cjFGM29UWDlES3Y0K1ZlMTF2WFcrS3Q1eTN6bG52cmV4dDRHM21iZUp0NVczaGJlOXQ0MjNyYmUzdDVLNzE5dlFPOGc3eER2TU84STd5UGUwZDVSM3ZIZVNkNEozbWY4RTd4UHVXZDZwM3JuZTk5M3J2RXU5Uzd6UHVTOTJYdkN1K2IzalhlOTd6cnZCdThHNzJidlZ1OW4zdS85Tzd5N3ZidTlYN3QvZFo3MlB1OTk1VDNSKzhaN3pudlQ5N3ozcXZlTzk1NzN2dmVCOTZIM2o5OTJWZDkyM2Q4TUp6OWtoLzZWYi9tei9FYi9ueC8zRi9nTC9Jbi9NeGYxMS9QWCtGdjVHL3NiK3B2NW0vaDcrRHY1Ty9wNysydjlQZjE5L01QOEkvd1ArNGY3Ui9qSCtzZjU1L29uK3gveWovVlA4MC8wei9MUDl1LzBML1kvNXovQmY4Uy8xTC9TdjhxL3h2K04vMy85ci9sWCsxL3o3L2V2OEcvMGYrQi8wUC9GdjgyZjVWL2gzK24vMHYvTHY5Ky8wSC9NZjhKLzBuL2FmOFovOC8rOC80TC9vditYLzJYL1ZmOFYvM1gvRGY4Ti8xMy9mZjlEL3gvK0RNbHFjUktja2tyNlNXckZKVG1sT2FWbXFXOHRLUzByTFNpdEZGcDA5SVdwYTFLMjVaMktPMWMycnUwVDJuZjBrR2xvMHJIbEk0cm5WZzZwZlNwMG1tbFQ1YytVenF2ZEZIcDB0S1ZwYStWdmxHNnB2VDkwazlMcTByM2xCNHBQVnA2dlBSVTZkblNuMHAvTHIxWWVxbjAxOUtycGRkTGI1YmVMcjFiZXI4MFU1YkxhbGt2THkrdktHOVMzclM4ZWZsajVhM0syNWEzTCs5YzNyMjhkM21mOHI3bC9jdUhsNDhxSDFzK3NYeEsrVlBsMDhwbmxNOHBuMWMrdi96Wjh1ZkxsNVcvVnI2cS9JM3l0OHJYbEs4cjMxRCtjZmtuNVh2TDk1VWZLajlkZnJIOFV2bmw4bXZsTjhwdmxkOHB2MS8rb1B5UDhrd2dCV3BnQkU3Z0JVRlFDV3JCVU5BSTVnYnpnZ1hCb3FBVlRBV0xnL1dDNWNFR3djYkI1c0dXd2JiQjlzSE93ZTdCbnNFK3dRSEJRY0Zod2NlRG80UGpnNU9EVTRMVGdqT0R6d1RuQlJjR2x3V1hCMThLcmd5dUNxNE92aHRjRjl3VWZEKzRKYmcxK0hsd1IvQ3I0TzdnTjhIOXdZUEI3NFBIZ3llRFY0STNncmVEZDRNUGdwbFFDdVZRQzQzUUNVdGhFRmJDd1hBSVRQS3hjRjY0VHJnZ2JJYVQ0ZUp3ZWJoNStMRnd5M0RyY050d2ovRGc4TkR3eVBDWThMandwUENUNGVuaFdlRzU0Zm5oUmVFWHdpK0dWNFJmRGI4UlhoditLTHdsL0VsNGEvanpjRlg0eS9CWDRkM2h2ZUY5NFlQaFErR2o0V1BoMCtFejRYUGhDK0Zmd3BmRFY4UFh3N2ZDOThJUHdwbUlSbktrUlZia1JLVW9paXBSTFJxTWhxTFJhSDQwSGkyTUZrWE5hREthaXJyUmV0SDYwVWJSSnRFVzBWYlJOdEhPMGE3Um50RmUwZDdSeW1qZmFMOW8vK2lBNktEbzRPalE2UERvaU9qbzZOam8rT2pFNk9Ub0U5R25vazlINTBVWFJCZEdYNHkrRkgwbCtuWjBkWFJOZEZQMHcraEgwWStqbjBRL2plNklmaEhkR2QwZC9UWjZLSG9rK24zMGFQU0g2TEhvOGVpSjZObm8rZWlsNk9Yb3cxaU9sWmpIWm16RmR1ekgxWGdnSG95SDRqbnhTRHdhejQvSDQ0WHhvcmdaWjNFcjNpRGVNTjRrM2l6ZVBONHEzaWJlTHQ0KzNpSGVNZDRwM2pYZU05NHJYaG52RSs4WEh4WWZHUjhWSHhPZkVKOFlueHgvSXY1ay9LbjQxUGkwK05QeEdmR1o4VG54ZWZFRjhXZmppK0tMNHkvRWw4UmZqQytQdnhSZkVWOGJmeSsrTWY1QmZFdjgwL2pXK0xiNDluaFZmR2Q4VjN4Zi9FRDhZUHhzL09mNGYrSlg0emZpdCtKMzRuZmo5K0sveC8rSVYxZG9CY3pDaWxtcFZlcVY0Y3FjeWtobGJtVzBNcTh5djdLd01sRnBWamFzYkZMWnJMSkZaY3ZLMXBWdEt0dFd0cS9zV05tNXNtdGxqOHFlbGIwcUt5djdWdmF2SEZnNXVISm81YkRLRVpXaks4ZFVUcWljVkRtNThvbktweXBuVnk2c1hGUzV0UEtWeXBXVnIxWCtxL0xmbFc5WHJxNWNVL2xlNWZyS0RaV2JLOSt2L0xEeTQ4clBLcXNxZDFYdXJ0eFQrVTNsZDVVSEtvOVUvbEI1clBKRTVhbkswNVUvVnA2dFBGZjVjK1g1eW91VnYxUmVxdnkxOG1ybHRjb2JsVGNyYjFmZXJieGZtYWs2MVZJMXJNYlZhbldnT2xwdFZpZXJTNnZUMWZXcks2cmJWZmVvN2xYZHI3cC85Y0Rxd2RWRHE0ZFZqNmdlWFQyK2VuTDFsT3JaMVhPcTUxWS9YNzJrZWxuMUs5VXJxMStyWGxYOVp2VTcxYXVyMzYxZVU3MjJlbjMxeHVwTjFadXIzNi8rc1BxVDZxcnFMNnRQVlorcFBsdDlydnA4OVMvVmw2cXZWRit0dmxaOXZmcFc5YjNxKzlVUHE2dHJwS2JVOUpwWmMydmxXbGlyMXVxMTRkcElMYW1OMXViVldyWEoyckxhQnJVTmE5dld0cS90WE51MXRudHR2OW9odFVOcng5Uk9xSjFVKzJUdDlOb1p0Yk5yNTljK1cvdGM3WXUxeTJxWDE3NWN1NkwyMWRyWGEvOVZ1NjcydzlxUGFyZlVicTNkWHZ0RjdjSGE3MnQvcUQxZWU3TDJkTzJaMnA5cno5ZGVsS1E4N0laaGQ2RGR0VHRkcDlGbFlWZHVkdVZPbDNhNkRmRldyRmJTN2xhUzdrN043RC84NjhwSzFrelFQK1pTcGNQVEpFWG5ZWkJramM0a2JnOXJkbExlV3doTFJRUjVzZmlhSlZteG83Qkx4d25XUnRwZEt2eHJuUnhxeGtDakRpN3JkcnFxMkNzV2l3MWp1THRNdkphUDRaWXo4ZFk4Z3FHcGNNcER2QmtXTHg5RER4c1BSenBaSysvZ1crVDBVQ3hlWXR3U1hLWllueDZLS2pzSjl0TXVRcHFLeCtJTy9DbGlMNmhZaWVQaVN2NVBhYkxpQnY2dHlWT2tFM25UcmlwdXM2SXlXUlRHMnYvZUduemwxMWdpcWxQYm9rWC9YdVpIbW9hUC82MWhhNVVHajkzZUE2eGJQREY3SGZyZlcvdC9TL1F2ZmVsZmZPUVo3UlRYTURaTENRd3B2aUdBRmExc0w2VmRENXZwdHJzNkxuekdYVlhzbzIzbjZDbTI4SzJKR0Y5TFJRU3locnlCNWVSdGNRZkh2eE9IN1F4SEg0ZmJUckJnRTNrbXc1ZW5aVno0NGVLc3Y0dFIwRXBFb1dIYmlPaWsyTkVMYlo1c2hjVk94UzREL25PQjgwVnBGTDE2UGpvbEtWSVBYeE9YSi9qRi9jKzlWL0lsTVg2ekZMLzRFa2JST1JHSjNCMkdsbUFOdUJXM2lYUXJxbE14Zm82Sm5jWGlKWGRKbC9SOHpaMms5MDVKQllvWnhQWGV1STFEVUx4Q2o0cy9aSXgydDVHRTNTaUVTNHFkU0VUWmtMT1ZwYUY0ZDJLSTc2VGtQUzg2VHJ3SkNtMkJidUNqRUttdTRIc1VST1c0c1Jrb25YY1pYb3pGT0VRNHplTm04Y3BKYkpMZ2lHd2RrcVRqSkJmN1VyTmllMnJ2bUxVVEVUK1NJakhHRW53TFF6UEZuMllEanduSHNZY1RLQm1Ed1hHMytQL0R2MUV1WkFGU1ZtNG53QU1odGhGUGNjYmo3SWlUSEdtTVBtR2U0UTN4NmtOb2tkandLcWFGZUtjbWpiRWIrTEpDQ2x5RDQ1a3RJVWs4QVh5RW0yV3hId251bFJXTkRKRlMyT3d1U1p0WUZEd3FPb3JkYTR2ZXBlSUhTTWxiYVR4N0x5ek9rQnl4YUFUdXA4NXdWeTJNWXhQZjNkZnNraVk2aHJHQ3J0RUowMHpjQVJtTDhpZkJFeFdwaEgxTVlqSGpPaUlKSHBCN2VQSENUSzJkSXVOVGpNMW9jM3p0SVRBai9rTE9IQjNudU9FNEZoTi9DWWJYSnp4ZmlpL0J3R3FZR0s1MklDTG1HY2JPb09RUzdXRFlweWF5UTR6U3BZZ3VhQmZ5QllobmlQd2k2QUNwZys4a0ZQTUtLZEFSdElteGMvMXpaSk1FTit3bStBTEtKRnNyRVdZUzZ4Z28rT3Y0TmtneG1WQ2s5eEtKZDFZS2pvVWp2aDRreE9tQlk3eE84ZkxJY2JMbUhGY0Vrc2tHRitmWUlWbThLNUdKOTVHQUtwc0MyWS92eEJTeUxNeERaR21VVGtnaElld1NyRFhzRGpiYTJleGJHbE1oOXFBbExjalRMS1pIVjZ1VDdvRjVpajFYaGNJclVvbUNJUTFPTGRKUjhhMmVoYjVBeWlGbkFDOEJyWkQ3Y1g5Q3UwOHhRUXJTdjhyYXphNEN4RzIwd3dheWwyaFVwNmZWY0VBS1BTZGtIc0U1bk9IcllndVZBNW9YeHFXVkM2R0xyQVBwa1J0endXemlGUVJpUExyNHNnQ01TQUcrRWhzOHdnNE9Qc1ZPNEVOOFZTYnV4STl4N2FXWEdOTmh2UW0rYXhYNXVpZ0JKVE9RQzRkS2FGVG9iSUtESkdvcWR1SURJK0hHRG1oTEhoZWptL1duQy9JV2lpZVFEYml0Qk1leG1GNUZiaTVlWjRBNVJiaXdZS1l3TFdnbFpxUVFlL2ppVHZFODQ1Z2l4UGZEOWtzWGt3aUh0NW5oTXhIVmhITlNiQThSeDB5SVVHd3hzaUNXaU96UUxqZ1ZzNGlCRmFLRVlZU2FhRkFPTEFiczBSRWI2ckg0OUtNTlQvQkZyaW5LMVFKVHJPbVlvQnErWHJSTG8xUzgzbFFjT21IeHVsc1dOdkJOb0JqenpURkRWK1hBTlZnTUpNdXhLU0R0T2pobDRaR1FwYUtiR09RWENtRUFUWVIrL0ovV3pqVkdrdXVxNDMzT3ZWVzNxbnFtZTJaMmFtcG43Y25zVG51bjRsbmJNejI5dGMzc3hoNXM1MEdNRThjZ01GZ1FJS0FBUmdRUlJVandBVVd5aEpBUUVlSURTQ2dnRktSSStFTVFGcTlBSlBLSllDSWxoSWVSckFBQkpRRlpLQW9DUGxoeUZzNy9uRnZkMWIyemF3dG5kbWU2NjNYcjFuMmNjOCt0ZTM2bjNnRy9SemFQUnpiUU1YbUJobGZhaWU1SUZVK2xDZStqZXEyL05EZEVFeldsZGgyd01Db3RhQkdVK3JyeHhHbFY0NjFocGUxQnEwMGJ4RGcrbTVaQVcydFZyRFgwemxobHFCSG9aT2hjUGEzcEhtN3VsTnFrZTBzcjBOdWNoRU8xMXVFNDFuUjRqZXVtYlFQVGwzYlRrMkNOQ0ZxeWdoWXhKeWkyVHFLREFRL0hLTnZCMmo5MVI3S3dRLzJrNW51aTF4UUszNTF4MGppZVErcHkxVTBObzZGYmt1ZWo4WHdYNGMyNnBGWWpueWh4UE9oQ0g0TThXRWhPYVE2cTFIUUFZTjBGcDFaMXRmQmcrQzlGZUpKY0xlUDJlS29YeUlDdWhPaUdub0dRUVJNWjIyT2NxRDhXdnBxa055a2MweXVCMVJhWlZWZnFzNFp6cFUzcUJWSnJ1b0pVOGlLdHA4WmZoVEhvZHhtMW9TMUsvNnUxM1phQUpUZXFrdVg1SHVSeFU4OVpIR2k3NmtWbUhscGpGZktRVHliNGtSMVhtemVhRFFKVnNETFdCa3B2cVhGbWhYVHF5a1lWT2h6WllmUWsrTVlxMFp0aVJXQjRaa053T2JvdTk5bVVDbFlLMW81VmE2bGxvZnNVVHdFK01yTG5UTUNQZE1HaWZaMXF4MU9tU1RRbmpsREhIaU1ycVVPUlpsZ2RLakkrZ2ViQVNHSWNkRndENVdaNi95U3JUeElwUXNpYkhWRTY5WU5hV25MWHFnN1QwQ2hubzFJQ2l0MnplZ1BmdmdsSmlKWUNWTHJwN0VuL0h4a1ptUm9XUVRaNUk3bVo2bkxWVWJOL2JHMEp6T1h5Sks5TFhid1NWTXhDcU1pdVNhMzJKNWM2OEVjZG5abWdEcGZFcG1rVm1FZWZ5NDYwaHBFaUpER0dacFAybGhPUStzQXVnVGFiMkpjYW1RSW9yWE1QL1dveTlNeG5paElIdlVBMG9QWmM2VTd4SUpyU1VXbXVrblpWSS9kQmJvL0g1UlhycnVwQ0thMGRmVXVIVXRwSk1ZYU9kNEVVejgxNGgwMGwvelBWc0NNWWFuc1RHd1JZUHpIVFFIdVNEc0p4ZzZEV01xc3dzOWtEYWN1OEtXZHZxdm5lcUZvYXRBSWtHcVZsSEJTWFdvQXE4dUt3cXpRdjBNYWlhV0lkdE5ZVmVEMG9aWFIrVjZJWEtpVnVCSTFxcG8yT2VFNDJJUVF4MEJMMUM4Zk5HbU5aakg4eDBjQjdrc0ZUSFMvTHpjRjhuNDYwTVRRNk1JNFNHSVhVU0pPaG9LUEpWYURUNVRZNzZLbGxQRW4yRnlEWjF6cG9LNjJVTFhlcFNaUkdxOHRwdnpZMVA5S0JZbW15eTBZTlIyYkcrUjA4c3c0ZmtMeHJOUTBHTExxblZWbVQwWTZ1NkxlTVJ0blYzazlMVTFPV1l0cy9LZHBPVlVZaG5ta2R4YkdySGhIaEZJOWhNQkVORkZqMkRlRHJPNGtWY2JuUUxrOENWQTlhY3hNbDRzU3FWaDVlbVlQSWgzNUJRL0I2WkdCekR6S2dxdEQyZFd4NTRtSzhWQjEvdnA3dTNZeXRHemVRampCdFZiQ20wa1RMT0ZxRk1aUEM1dEd4bEJYZ2F5UnF4VXhUSGI5Z1VrSUdramxHRUdGczJnNXJ1b05hTjlvc29wSXNrOG03T3VzVlBvclZGLzdtUHh5a1QwU3lUS0FXa3QwRmZPaVNraFMrUXBGK3laN25hNnhiWjFibjVqNUlpMDZlUG12WFIxQUlmYUx6bW1UV3oyMXBURnh5bW1jQWVTZFl0cFBuRFBpSlU4OVhTbWZMaW95OTBZSmU2QnBOMTlwMTBsaGJQT2dTZE5yMTB4b0p6MjRSRVovRXM0WGxjNitlK0xSWmVmT1YvZVcxblRPS29DMHpUNUxFYzJjdFM3dWllcFpJZDRubThxNldvdTduQkJRK2F5MHkweHp2Tk0rOUFuam9qRldnTlBjb25xY2RsZzhvNVllWWsrNkJXWFc1K0VmdXNMRzluZER0ZnJBYXhIV1N2Zldaa1VxV3NLTTcvQ3c4K1JrRlJyZC96aVh3ekZsbDl4cVh2ZkdmTXg3YmxuQTU3K2tPRlhxbmZMK3VKN3p6bGZ4TmY4eFl4ZTcyWmNEOHV0T0pQK2RvQVVJV0UxOXVCQnlqUDNodXU4QmlqK3Z1cDVVVjUyODUxajJERjdPeWtGem53cGhjVWRCdDd0VGRrM1k1Um90UEd2dWdkSlNzaFVPMS9oSzBuTUhscnpIRFdlYm1hOE81ZFFlNVEyRzcxNmlFSlJ5TXYyMFMzWkpZT243N2NsMW9nZTRPWitqS3hKZVN2N1ZEeCtSRGtpWnozeEdOeVVCRmxnV05tdW1QT0lZTVdId1FwYW9kM05JNWFGNGR5eHN6Y2Jja3JKZzZ5bUNoRlBtTVZreExseTQxTE1VSGNBYTNobVQxMXE3QkxTdkx6ZEpTTjJoZFY5bDFDbGk4VVZ4RmFvRGZKQ3F0QitsUlZWbGFhS20zQ0Z0RTYra2RHb0J6cFM1RWhDOU9YNE9heXI5bWZrV1lQVS8vRGlMbWRVa1pMR2RkU1JlS1Vrays3dXppWFU2MjdacElJV0NsTEJsUTdpeDVIOTE3VjIveEZJb0V3ZnZiZTE2bldJektmV2lkbXBOWmxwSzJpMFF2R0JYb3MwNTlDL3BzaHUvb09BWlpVRnVhK2FKUU9vTUkrclB3YWE3NzZMY3JoUG02YlhhZFZxc0xkK2ZLTytiVEwyMTFHbEJYWmM4N0o5UFpxcGdXeEhRbkoyNytFRjBoMGwrZ2VHZ0lIVTZTamJhQ2ZQVGFjM1BGZ1lDN1M2WHJXb2dmUlpSMTY1bG50elBTU1hlZGQzL1dSMWJpWUpIVkFjeHhjQjFLcHA4dDlGNDlRNDI1VGdkb3VaR2hjNHFuT1cxeS92L1d2ZlBxNUk1RC9xM24rZG1weTUxbU5oanJPUHU0NWFvSmN4L0hlWk5KYU1IejBSN1VtV2RaSE4wdXA2TnNCYkxmamd1L2xHVG1rMkxlQnQycy90T2xrZHNDTWNDcXBzVUhjdEhlYktoZWpQa3RDbXA5Vmg5OTgzS2JaYyt2dE1vZ3VyVE5DMVAvZDUrRU8zM0ZHL1FyekZwU2xzelJwYnhVWUoxaDZOSitibXZpOUUyOTNvTzl3OTR2MEQvU2ZtK1ZucWMvcGs4cWJlV3Y2TFAwQmZwN2VvbitoYjdTaWJiNENyMUsveXNhTXVkVlpXdGQ0RGZ4SHUvekFUL0F4M3lOci9ORC9BaS9uUi9qZC9OMzhIZnowL3hlZmgrL24zK1VmNEovbWo4NDgvdi9DUDg2ZjV5ZjR6L2pGL2l6NEduYkZMbE8wRFZZaFlNM1Vzb1MzdUVBZDkyaEgwVlBlY3grVDV0YW5hb3IyT0diY0dHNWRJWHFLM1NZbEJWY21EQ2xNMVZuRmppV3dQLzg2aGlCaFFHSUhzcDl3blFDNEZjOUR0T1JZYTRaY1JkMFFZTTZKdW03czRYdmM0aTl3cDJQRUpmd1dqbmVIT09rc1RKZDhJNXNCN2htZFQ5dUpMUHc5UWVBdDRJRCtDU01FWHhpTk41eGswWVJnUnFpcmxTbzg2ZzVaR1RFcUhueEF3US9GTWpZa0dCSzNUZkFZR08wTU5JREUyVUw3dkRzVXc4RXMrSXhpNlIwYW4yZGh4a1JaVjdoeFNaZ3ZqT0VpekpTTkR1Z0MxYm1XWStTRHdpYkVaQ0gwZlNRNGNhZEJNbldYcGdDTklpeXZ6eXBSK3JucnFTekFMK2NhanJTUUhvbDBGcVlHb1d6VU5BUG9BR21palNzRFA4MTBwTkQ5Q2MzcHpVUUdLZHcwUjdweXc2ZEw0ejc1R1F3QnN2NStjYmJhbEZmOFRNY1NiYVBwTXlPc1ZKbUF1ZTBvMUhaSEpkSDE4Wkh6ZGI0YU5MczFWdVRXcmJxemVOeGlyY3Y1aEJlbFFDOWpMVHdkWEt5QkN0OURQakQyRmlMT3BVY1Nrd3h5TStwdVM2YmdhbDBmdkl6QjltYnJ5YUloNUhrQTM5dTdqOGNnQnhORFl1ckx0bXVkU255Wkx4Y0pOVy9TLzRjYUZmL2JaWHZjdEdGMktzdlFIbGtLcG55M0pTSitndDNXQ0N0UjdhYjJWWHNmZTViaUxJNUJCZEpNa3dMZHg0Qzl2ZVVzeHhFUHQ3OE44a2dKOWtRWjVaUnh1Y2cvc3ZuUnZTaFVkZWo2T05pVHMvcGtGTGVrK3h2eDZFK0krS2Noa2lmKzArN1ZNVzJqNHF4SDhkN0s5aFlYeGpwZCtab0FxZjN5VDNnUVBXOVNycjlUeXQwZW9kbVFTRTNpWGtTemV3QU53K0dZTE1yM09wSUYxa3U2blNySWRrakNkR2hqQkdMRFlwWUg5QzhyT3h4VGJlYWZFNTBkTVhtNVQxengyZnpMYU56dVdKclUrNDc0SVJ6akY3QmkvSE9LTTZzK2dQK01qVHpWYzRqZGl6K0dHZ21ZSm9qdGRGVm53dm5zNktBVDFnQUZTQTN4K1gwWEpHRVFacktKai9tTDRwK1d5VlhISGgvSU5xaENCdTV4anZIdkk1UEE0V1F5UkR4TGcrMzh0VHZPd2ZRVHc3UW12ZERWQU5jaEtNMzBZRWQ1VzJRYm9mWXVNWm5qZVN1dEhnMFBua3MyQWlVVisvR2cvSDlUbU4wSGZjK1RKL3JQZGNiOW5yVC9TYXRFVDc1RXJ4WVIrVmJwZWFrVVg1MDQrYnZyQ1RQZ2t5NUV0TFZuVFhmNjcyNTkzRHZTWHFoOTJwdmpkNUQzMGxQMHcvUisra1o5ZVlGRmZKWitrWDZaZm9WK2szNkUvb1VmWnBlVUE3a1A5Tlg2V1g2T3Zla25GWjRVL21QQjVILytBNytkbjZDbndMckJYS29xWUQ2ZzlpU1hnOXFTZDNJYm56RXYzT3BQd1hjMU5nbitudElZRVpXNVM0SFVDRURQSEZQQ1VMOE5ESEtpY1lDVUNpazZDQmdEUTJRWWdMWFFpY2dscTNvbjZudHE0Q1hyY0toR3lJcXpEaVVSaUVyamEyaURxQ1F6YU5hMTFZMWlJYXFMSlZScmJqN0VqZW94cTFMcmFxVVVFOTMrUWJCWDFiZmlCTGt1QzZMR3R0YVFNMVMvRzYzMU5jYStocFFuVUpWRGRhVys5WnZWK1IrUUNEWDhTSG04Wk1wTUljaXRPc2hLZEVSVU1pcEJVYUFiNmNJN05FcDZDWUJ4YTFuYU1BM1lNZFUxZUFTalJsYTdSaktWb29NVUJZbHlsYVR5Z0lMWE9GYTg0RDd5Mll6QzV5RER5TTY2dHQwZkFuVnlNVDVwRWJWTklpS2dVdDRmb2t5SVJuMFhITmtOY1N0Z2lJUm9nT2hiSGpoMkZUS1VoSlN2MnMwQ2ZxK1dWLzR5WFVPdlBxOC9ObVEzM2ZmcjBiQVpuNlBSa0hhUGkrQ0tZSTN4QnpHWExOOEg4S0oveTdlU05hQVpSSXp4NEVNN2dxblpyRDBpR0psY3A4R0p4T3hjRU82K2JtZ2pJUWRkaU0vbTJLSzhtS2dRRnNScWRmRVNMNXZQWnRiYiszSUQzSld1bU9Ccmxrci95UGMvRlFtZlpxdk81RVhsd1kvWjF4cGRPTjBBUFlVOHhxd3NuUnhLS202S0RvSFRnbGduZ1plUk0vK0Q2ZWNiZWE1TVE0eXhJUlNvWmhHZXlrRDRSMlFrSHVwTU11S2l6VlJBSU9PQVlMcGdZTHRNOU5maXRSTGJBVWJ3ZjRNcHFMK2VrN3djdVZ1OG9oekQvbnJ6bDNIN3daSFNpUWJpWURwUXVvM0xVcWxUdEJ6S1RwbmlCbVhmckdTWlpJZDM0OWo4bVR6U2FJbmFRTlhGK3pXb2UvT3VTRHkyWmxzem5jM3pMSmYzNU5xYkNkem9qMW9mb1VnUGZoMUtaeVZKRTN2YWhXd29zWno0MXd5NXZCd3Q2dFhOVURjeWxYbkxvdEk1NGY3VW5PMEkwb2pHWW91SG5KL1A5VndQM0tOVndEbUVIRjdCZ2R2VnBNamthby9Cemk4ZzY5dEpKTjRzU0xNdjFHQklTdFJJNjhxOXoxVGhvaVpuSVdZS1drOHFveGhwVEdzeTlaYVI1SHJqb3NJdGlXblBPeU13ZkMyM2w3dkVmb3laVDN1cGIyeXQ5TzcxTnZ2bllqOUFDYkRKM3JQOXo3WiszT2xNbnkrOTJMdm4zci8ydnRxNytYZTEzci8wM3VsOXcwdGgxVkMyVzZMNXJxZkp1QTg4aC93WC9BWCtFWCtJbitKdjh6L3p2L0JYMWZpVnh0ZGFNVU4zWnJiY3BYYmRuZTdIZmVBdStwdXVJZmNXOTA3M2VOT3BQaTBSaFJ1RTlRYUFrTmZ2TmJTdzZYSDcwSklUVUJqYWtSWWdkb2FkSEVGbGorTXBoVjRYU0swc0RSamFwaXFVd2FxTlVLM0ZYc0lZNk0wRXFCQ3BoVGZHM25ib2cwNlMyQVJPeVBDRXpWdUZXNnNzVkhBZW16QnIxV0xqVlc4TE9DMXlnaXVOWGgzZ0FFa2FzVkFWQmFLTzVqb3c1bkdrU0lGSFdrd1o3aTlseUlVTmVpS1J1QnBzT0FCU1RaZ1JlRlJ4c3JiMXNCMWlrb29MYkFNRmlMcnNyV2tLaFZicHFnRU1iRkFBTk5BUUZLaXNqbE02K2JVMWZ2VDQwa2xuOU1yRG9wU1F6M2lzV0Z3MFRnZDd6VkdUdFpvT0NhQWdWMnNnRTFXUnJrOG9nNmdkNzA4S1lLbGovWkVmZGFWd1NwVkRZeWt6b2FNYURWMG1zalF1MFVqNk1MbEc3SFlLMU5Cc3F1cVQ0SE5GQzBCczRlbWlONCswcEJuTUVpYVNGNHZaMzlFUVZYSE56U3duOFlGaklnRXBEZldoZFNqaUZIR3NzQ3gzZVFHOHF2VUIwVnBRTjhnekV2VUJyQmZ0R0dBZTFtT2Roa05STkVPQ0F3NHZjRVlIWXhDM0ZRa25MU0YvVFlPRDB6Ynl0YnJ0Nys2SENFZ2FGT0RYNDB0UDFiOGUxUFZrMnRpc29YbUtCeUpYU2dGcUNid2VLczhnaVdGQ0R1N1ZGdmp2WUdsdWlEYVg1YVNQcVd5QWFsaVl1elJkeEc5eGJsZmFxZm9UTmpxek5LSE1kLy9zKzBJT1ZLR0puVWJMU05PL3hSWmxId3RKemVHVWhocWdtbHJiYXpSc2RsQzY5NjNtTjZzT3pHSHdCMmNlSXJCZVZzRHdtdDRhektyU084SHc0Qm91OUFoYnlSU1VhUCszQmNIQTNvbk5ndTM0bVBRaXJzeEZQOEt5Sk93TkI0NGx3WVFkdnBSY1F5VFRJVGlrREZ2bDRmZzhpM0Z3QTl0VG00TFU2bzZOWlV3QUZCNGxxM3NHNFZJMFhXTWYvUEhzNFdZS1cxOG1QNDJCd3NUYkVhQ203MWdEcHBhRmw5TU9vMDVQTFJJeHFrb2hCRXR6Ym5xRk5lK3ZvZW12azVRd1dEUTRCY3B2OERkK1p1MVFyZXloaDFLM2FkSmNzNUhNOFZ6VWlBOGNwNnRiNFJ0K2JrUXdwZVNlMzlzcU1NUHR5Ry9PVWpNT2xlWkZnRm1UWXBwWXQ2K202Wkk5NEdXQ2YxM1VzeGhWNDV2K0hYbDhvc3RNQnlzOFhBUVovUFU1dFNDeHhQNjNVemZwYXNxQ2h2a2N1U0pzMzdXS3VZNFZaeEJ4YSt2ODlZVytiVmlXeFQxaFJscndLSnB6RDdiQ1ZDRUNTMFFRRkthQTh5VWdWWjRnYyt3TVp2cm5jMG9Tam1rMFBJVzFzUWJ0ZXhlMWQzSnZhb1BQZDJ6aXBxVHN0VW9RcndtR29lMllIZ3BQMGthM3FxMWVsN0w0aUJLTVVxRGd2b0RhYUJiV0RRQXFpbjVvZldST0ttWW5tOWZZL1l2N09SQVlJRG9nUEFBV2M0QmFPWXRDeEs0aGVZM2YvazBEQnBQaFp1cGQ5MmdLOXd1TjRoUGw4R0dDeHBuQldzSVVyUzlkYlVZclUzbXNjdHEvN0lDVC96ODUySW1JN01jSWNzVHVweW0xVFVhcmlQNVBqcUNDME9kbEVUbzZzRUFqMTV4NWJXOEdHUTRTbjN3R0ErTWUvM2VqOUIvMHcvMFB0Mzd2R0t4cnRDVUhxVW42THZvZStpOTlENjExRDZ3eE8vL0NQMHEvUnI5QnYwV2ZZdytUcy9SSitoNStxTU94Lzl6OURmMElyMFVXZjR2MDlkQVlJSzFCcUtrS3JIR1BsWEpJeUtlb2phYnd3UU1JUmFGeEZBNk5hS2E3V2FuQkhzSkVlQWFvL21PYXVVdDZrelY5QWpLNmJqMUVMR0pQUVZKS2lKNk5Ha3MzdFU0NkdmN1VZYmwzYXJwajFVbnhFUnhyOHZBK01qNFFpUXpJd3puWVFydTVDSHAzOVd3V3dDTnM1dkR5Z1ExSGdRajBiRUlYaWM2OWRDQlAxbTF5T01sZlBMa2FES05OT05KZFhUMXVOeWFqaWNHYkx3c0poak1zR3JwODZ6djRQTFU4Yk5DdHBiUHhWREZ2dHV4TWl4Y043dTJ1eDFRNW1ZSzZyblRvWDZuLzVJeHRjakczNGM4R0l0cEljYkcyeCtlT2dTNVFMQXBZTS95MmN0Yjl0bGY2dXdTOC9sYzU3bG9aZEIzL1JXeHJrYVNTdWJDNXZIRkRGcGdSYU1pTDAxekk4aE1ydHc4UkEwcDZPWmxUT2l3Z3BBVFR2K1FNWEV1TmhuaVlnWHZVZzVKVWlUREN6N05zdFVzT01sUXlOSk1yTEFMQlNJOEY0V016djEydW5MZXdsZ29mNUI5b2k4WXlYMnM4Z1Y5eTdkZTV4ZDE2ZzZScUNMc0RxZmZUUVBpbTErVUF3Y2lhSTVsNzU1OFhoR2xnS0JPbUNRcVFGU1JSL3RCZ3FwSkdJU1ZWY21vbk1Ibk9NUlg4U21Ya3NhUkNLa0hnUElIT2QxdWtvTks1K2haNmFPNHc0YllMbyt5MTFpODN5YmZSY2p4dlZKaWwwVlV2VWUrdzFiZGxHM2M4WGVwV3QrQ3J0emFSc2x0STNJcWFJclR0MXozbEQ2ellRRkVOcGgrWEYvTUpqOFYzNHJ0WnhwWXlaOVhpY2lQTy9lb1QvSzhDc1BOQVcrSm5GREpDZmx0c2x5RG0vVDE3VW51UXZtVWMwK1YvRFl4WEZIdmlSczg1RGhIalhnVVJPWkZ0amxSMFg1d1hpb2lMY1FJa3FySThoU3ZPNm9jUjRzY2RPbE5iNllqTEVORUhjbWdoNW1mQnI3NXlsc2VHbm9MT3FMLzB4UWE3RU1mMHNCdjVNYVp5dzRrRFNtWmJFL0VXMStLZXoyVjRwSWNET1VPM3kvSGNta2VROWtXalpuMEpYZVpIQldyVERMRXlYbEpZeVRuMVZpYWhSZjVqQkRGWW5vQkJjbis1Mlg3U0E1ZmtOOUg1WEl4cU4zamNxc3l1R3hmMnUvOWNwL0g1Wmcwc2t5TVRYYys0NEI1c3BNZTAyZm9BNzFFWk42bDljbjZKZnJNelEvZVE4ODRldWJtbi80ZnBjc2NzQUI0Mm0yUE1XN0NRQlJFWndFVGhTTEtCUkw5ZENCaForMENKSklxSUJlVUZCVHBMT01ZUzhpTGpFRkNTcG56NUJ3NVN3NlFLZ1hqWlJXbHdNMjh2NTZkK1F2Z0JwOVFPSDkzZUhhczRPSE5jUXRYZUhmY3hnTytISGZvK1hIczRWYmRPKzdDVTA5MHFzNDFwNG05MWJCQ0Q2K09XK3pkT0c3akJSK09PL1I4Ty9ZZytIWGNSVTg5WWdxRExZNm9VQ0RIR2pVZGZhUVlVQ05vaEJoaFNKNGh3WUdlRlhuT095VXdOZHRqVmVUcld2cnBRQ0lkam9ZeVN3N0ZTdWFHdnd1bU5MNGRNVFVsWllHTUhYdHVtYkFQaXl6ZmJ4SkNiSDIxMVlxT3pIWUhiQmUrVmY0bG5lY1FZL2gwK0g4YklqWmxIWnNxenlRS3RFekVObExEc1IvNXpXcVg5bG15cWVKYzJITmhWcE1XV0cyNnNjeXFYV0ZLMFRvTXROWnlJZVFFblRoSVRnQUFBSGphYmM1SFRrTmhEQURoTndrUWVtK2hoZDdMKyswMEpEYTAzSVVOTys3SHpRREJMTEZremNyNlhEV3EzL242ck5yVmYvUHdzMVNOcWttREptT01NMEdMU2FhWVpvWlo1cGhuZ1VXV1dHYUZWZFpZWjROTjJteXh6UTY3N05GaG53TU9PZUtZRTA0NTQ1d0xMcm5pbWh0dXVhT21FQ1JkZXZRWk1PUys5ZkgrTmlwMWJRZjJ5VDdiRi90cVIzOHQzcFZpdzZidDJwN3RXNTB5dFA1UkhxMSswUy82UmIvb2gzN29oMzdvaDM3b2gzN29oMzdvaDM3b2gzN29oMzdvcDM3cXAzN3FwMzdxcDM3cXAzN3FwMzdxcDM3cXAzN3FkK01iSkhTRXNBQUFBQUFBQWYvL0FBSjQybU5nWUdCa0FJS0xwL2NiZ3VoTHI0clB3bWdBVjVzSWhnQUFcIikgZm9ybWF0KFwid29mZlwiKTsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi8qICBQUklOVCBTVFlMRVMgKi9cbi8qICBTdHlsaW5nIGZvciBwcmludGVkIGNvbnRlbnQuIEFkYXB0ZWQgZnJvbSBIVE1MNUJQLiBodHRwOi8vaHRtbDVib2lsZXJwbGF0ZS5jb20vICovXG5AbWVkaWEgcHJpbnQgeyAvKiAgVW5pdmVyc2FsIHNlbGVjdG9yLiBSZXNldCBhbGwgY29udGVudCB0byB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kLCBibGFjayBjb2xvciwgYW5kIHJlbW92ZSBib3ggYW5kIHRleHQgc2hhZG93cy4gKi9cbiAgKiB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAvKiAgU3BlY2lmaWVzIHBhZ2UgbWFyZ2luICovXG4gIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuICAvKiAgVW5kZXJsaW5lIGFsbCBsaW5rcyAqL1xuICBhLCBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAvKiAgU2hvdyBVUkwgYWZ0ZXIgbGlua3MgKi9cbiAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC8qICBEb24ndCBzaG93IFVSTCBmb3IgaW50ZXJuYWwgbGlua3MgKi9cbiAgYVtocmVmXj1cIiNcIl06YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyB9XG4gIC8qICBTcGVjaWZpZXMgdGhlIG1pbmltdW0gbnVtYmVyIG9mIGxpbmVzIHRvIHByaW50IGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBhIHBhZ2UuICovXG4gIHAsIGgxLCBoMiwgaDMgeyBvcnBoYW5zOiAzOyB3aWRvd3M6IDM7IH1cbiAgLyogIEF2b2lkIGluc2VydGluZyBhIHBhZ2UgYnJlYWsgYWZ0ZXIgaGVhZGVycyAqL1xuICBoMSwgaDIsIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLyogIENoYW5nZSBib3JkZXIgY29sb3Igb24gYmxvY2txdW90ZXMgYW5kIHByZWZvcm1hdHRlZCB0ZXh0LiBBdm9pZCBwYWdlIGJyZWFrcyBpbnNpZGUgdGhlIGNvbnRlbnQgKi9cbiAgcHJlLCBibG9ja3F1b3RlIHsgYm9yZGVyLWNvbG9yOiAjOTk5OyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgLyogIERpc3BsYXllZCBhcyBhIHRhYmxlIGhlYWRlciByb3cgZ3JvdXAgKi9cbiAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgLyogIEF2b2lkIGluc2VydGluZyBhIHBhZ2UgYnJlYWsgaW5zaWRlIHRhYmxlIHJvd3MgYW5kIGltYWdlcyAqL1xuICB0ciwgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9IH1cblxuLyogQ3VzdG9tIHRoaW5ncyAqL1xuQHBhZ2UgeyBtYXJnaW46IDAuN2NtIDEuNGNtOyB9XG5cbkBtZWRpYSBwcmludCB7IC5iYWNrLXRvcC1saW5rIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5tYWluLWZvb3RlciB7IG1hcmdpbi10b3A6IDFjbTsgfVxuICAubWFpbi1mb290ZXIgLnNpdGVtYXAgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5tYWluLWZvb3RlciBhLmJhY2stdG9wLWxpbmsgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5tYWluLWZvb3RlciAuY29sb2ZvbiBsaSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1haW4tZm9vdGVyIC5jb2xvZm9uIGxpOmZpcnN0LW9mLXR5cGUgeyBkaXNwbGF5OiBibG9jazsgfVxuICAubWFpbi1oZWFkZXIgeyBoZWlnaHQ6IDEyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1haW4taGVhZGVyIC5sb2dvIHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubWFpbi1oZWFkZXIgLmxvZ28gaW1nIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1haW4taGVhZGVyIC50b2dnbGUtLW5hdmlnYXRpb24geyBkaXNwbGF5OiBub25lOyB9XG4gIC5uYXYtLXF1aWNrIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5wYWdlLXNlY3Rpb24geyBkaXNwbGF5OiBub25lOyB9XG4gIC53aWRnZXQtLXNoYXJlIHsgZGlzcGxheTogbm9uZTsgfVxuICAud2lkZ2V0LS10YWdzIHsgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS1oZWFkZXIgLnBhZ2UtaGVhZGVyLWNudCB7IGhlaWdodDogYXV0bzsgfVxuICAucGFnZS1oZWFkZXIgLmNvbnRhaW5lciB7IHBvc2l0aW9uOiBzdGF0aWM7IHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IHBhZGRpbmctYm90dG9tOiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnBhZ2UtaGVhZGVyIGgxIHsgcGFkZGluZy10b3A6IDA7IGNvbG9yOiAjMTQxNDE0ICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZTogMzRwdCAhaW1wb3J0YW50OyB9XG4gIC5wYWdlLWhlYWRlci5oZWFkZXItLW92ZXJsYXkgLnBhZ2UtaGVhZGVyLWNudDo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnBhZ2UtLXByb2plY3QtZGV0YWlsIC5wYWdlLWFzaWRlIHsgZmxvYXQ6IHJpZ2h0OyB3aWR0aDogNmNtOyBib3JkZXItbGVmdDogMXB0IHNvbGlkICNlYWVlZjI7IGZvbnQtc2l6ZTogMC43Nzc3Nzc3Nzc4ZW07IHBhZGRpbmctbGVmdDogMWNtOyBtYXJnaW4tbGVmdDogMWNtOyBtYXJnaW4tYm90dG9tOiAxY207IHBhZGRpbmctdG9wOiAwOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogLTEyMHB4OyB9XG4gIC5wYWdlLS1wcm9qZWN0LWRldGFpbCAucGFnZS1hc2lkZSAud2lkZ2V0IHsgbWFyZ2luOiAwOyB9XG4gIC5wYWdlLS1wcm9qZWN0LWRldGFpbCAucGFnZS1hc2lkZSAud2lkZ2V0LS1zdW1tYXJ5IC5saXN0LS1pY29uIHsgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS0tcHJvamVjdC1kZXRhaWwgLnBhZ2UtYXNpZGUgLndpZGdldC0tbWFwIHsgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAucGFnZS0tcHJvamVjdC1kZXRhaWwgLnBhZ2UtYXNpZGUgLndpZGdldC0tbWFwIGZpZ2NhcHRpb24geyBkaXNwbGF5OiBibG9jazsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6ICMxNjMxNWI7IHBhZGRpbmc6IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBweDsgfVxuICAucGFnZS0tcHJvamVjdC1kZXRhaWwgLnBhZ2UtYXNpZGUgLndpZGdldC0tbWFwIGZpZ2NhcHRpb24gc3Ryb25nIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8geyBwYWRkaW5nOiAwOyB3aWR0aDogMTBjbSAhaW1wb3J0YW50OyBmb250LXNpemU6IDExcHQ7IH0gfVxuXG4vKiEgZmFuY3lCb3ggdjIuMS41IGZhbmN5YXBwcy5jb20gfCBmYW5jeWFwcHMuY29tL2ZhbmN5Ym94LyNsaWNlbnNlICovXG4uZmFuY3lib3gtd3JhcCwgLmZhbmN5Ym94LXNraW4sIC5mYW5jeWJveC1vdXRlciwgLmZhbmN5Ym94LWlubmVyLCAuZmFuY3lib3gtaW1hZ2UsIC5mYW5jeWJveC13cmFwIGlmcmFtZSwgLmZhbmN5Ym94LXdyYXAgb2JqZWN0LCAuZmFuY3lib3gtbmF2LCAuZmFuY3lib3gtbmF2IHNwYW4sIC5mYW5jeWJveC10bXAgeyBwYWRkaW5nOiAwOyBtYXJnaW46IDA7IGJvcmRlcjogMDsgb3V0bGluZTogbm9uZTsgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4uZmFuY3lib3gtd3JhcCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB6LWluZGV4OiA4MDIwOyB9XG5cbi5mYW5jeWJveC1za2luIHsgcG9zaXRpb246IHJlbGF0aXZlOyBiYWNrZ3JvdW5kOiAjZjlmOWY5OyBjb2xvcjogIzQ0NDsgdGV4dC1zaGFkb3c6IG5vbmU7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDRweDsgYm9yZGVyLXJhZGl1czogNHB4OyB9XG5cbi5mYW5jeWJveC1vcGVuZWQgeyB6LWluZGV4OiA4MDMwOyB9XG5cbi5mYW5jeWJveC1vcGVuZWQgLmZhbmN5Ym94LXNraW4geyAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsgLW1vei1ib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuNSk7IGJveC1zaGFkb3c6IDAgMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4uZmFuY3lib3gtb3V0ZXIsIC5mYW5jeWJveC1pbm5lciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZmFuY3lib3gtaW5uZXIgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5mYW5jeWJveC10eXBlLWlmcmFtZSAuZmFuY3lib3gtaW5uZXIgeyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cblxuLmZhbmN5Ym94LWVycm9yIHsgY29sb3I6ICM0NDQ7IGZvbnQ6IDE0cHgvMjBweCBcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7IG1hcmdpbjogMDsgcGFkZGluZzogMTVweDsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uZmFuY3lib3gtaW1hZ2UsIC5mYW5jeWJveC1pZnJhbWUgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgfVxuXG4uZmFuY3lib3gtaW1hZ2UgeyBtYXgtd2lkdGg6IDEwMCU7IG1heC1oZWlnaHQ6IDEwMCU7IH1cblxuI2ZhbmN5Ym94LWxvYWRpbmcsIC5mYW5jeWJveC1jbG9zZSwgLmZhbmN5Ym94LXByZXYgc3BhbiwgLmZhbmN5Ym94LW5leHQgc3BhbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvaW1nL0ljb25zL2ZhbmN5Ym94X3Nwcml0ZS5wbmdcIik7IH1cblxuI2ZhbmN5Ym94LWxvYWRpbmcgeyBwb3NpdGlvbjogZml4ZWQ7IHRvcDogNTAlOyBsZWZ0OiA1MCU7IG1hcmdpbi10b3A6IC0yMnB4OyBtYXJnaW4tbGVmdDogLTIycHg7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwOHB4OyBvcGFjaXR5OiAwLjg7IGN1cnNvcjogcG9pbnRlcjsgei1pbmRleDogODA2MDsgfVxuXG4jZmFuY3lib3gtbG9hZGluZyBkaXYgeyB3aWR0aDogNDRweDsgaGVpZ2h0OiA0NHB4OyBiYWNrZ3JvdW5kOiB1cmwoXCIvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ltZy9JY29ucy9mYW5jeWJveF9sb2FkaW5nLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4uZmFuY3lib3gtY2xvc2UgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTE4cHg7IHJpZ2h0OiAtMThweDsgd2lkdGg6IDM2cHg7IGhlaWdodDogMzZweDsgY3Vyc29yOiBwb2ludGVyOyB6LWluZGV4OiA4MDQwOyB9XG5cbi5mYW5jeWJveC1uYXYgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgd2lkdGg6IDQwJTsgaGVpZ2h0OiAxMDAlOyBjdXJzb3I6IHBvaW50ZXI7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9pbWcvSWNvbnMvYmxhbmsuZ2lmXCIpOyAvKiBoZWxwcyBJRSAqLyAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IHotaW5kZXg6IDgwNDA7IH1cblxuLmZhbmN5Ym94LXByZXYgeyBsZWZ0OiAwOyB9XG5cbi5mYW5jeWJveC1uZXh0IHsgcmlnaHQ6IDA7IH1cblxuLmZhbmN5Ym94LW5hdiBzcGFuIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgd2lkdGg6IDM2cHg7IGhlaWdodDogMzRweDsgbWFyZ2luLXRvcDogLTE4cHg7IGN1cnNvcjogcG9pbnRlcjsgei1pbmRleDogODA0MDsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5mYW5jeWJveC1wcmV2IHNwYW4geyBsZWZ0OiAxMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNnB4OyB9XG5cbi5mYW5jeWJveC1uZXh0IHNwYW4geyByaWdodDogMTBweDsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzJweDsgfVxuXG4uZmFuY3lib3gtbmF2OmhvdmVyIHNwYW4geyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5mYW5jeWJveC10bXAgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTk5OTk5cHg7IGxlZnQ6IC05OTk5OXB4OyB2aXNpYmlsaXR5OiBoaWRkZW47IG1heC13aWR0aDogOTk5OTlweDsgbWF4LWhlaWdodDogOTk5OTlweDsgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDsgfVxuXG4vKiBPdmVybGF5IGhlbHBlciAqL1xuLmZhbmN5Ym94LWxvY2sgeyBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7IHdpZHRoOiBhdXRvOyB9XG5cbi5mYW5jeWJveC1sb2NrIGJvZHkgeyBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7IH1cblxuLmZhbmN5Ym94LWxvY2stdGVzdCB7IG92ZXJmbG93LXk6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cbi5mYW5jeWJveC1vdmVybGF5IHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IG92ZXJmbG93OiBoaWRkZW47IGRpc3BsYXk6IG5vbmU7IHotaW5kZXg6IDgwMTA7IGJhY2tncm91bmQ6IHVybChcIi90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvaW1nL0ljb25zL2ZhbmN5Ym94X292ZXJsYXkucG5nXCIpOyB9XG5cbi5mYW5jeWJveC1vdmVybGF5LWZpeGVkIHsgcG9zaXRpb246IGZpeGVkOyBib3R0b206IDA7IHJpZ2h0OiAwOyB9XG5cbi5mYW5jeWJveC1sb2NrIC5mYW5jeWJveC1vdmVybGF5IHsgb3ZlcmZsb3c6IGF1dG87IG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4vKiBUaXRsZSBoZWxwZXIgKi9cbi5mYW5jeWJveC10aXRsZSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgZm9udDogbm9ybWFsIDEzcHgvMjBweCBcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdGV4dC1zaGFkb3c6IG5vbmU7IHotaW5kZXg6IDgwNTA7IH1cblxuLmZhbmN5Ym94LW9wZW5lZCAuZmFuY3lib3gtdGl0bGUgeyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5mYW5jeWJveC10aXRsZS1mbG9hdC13cmFwIHsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IHJpZ2h0OiA1MCU7IG1hcmdpbi1ib3R0b206IC0zNXB4OyB6LWluZGV4OiA4MDUwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZhbmN5Ym94LXRpdGxlLWZsb2F0LXdyYXAgLmNoaWxkIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6IC0xMDAlOyBwYWRkaW5nOiAycHggMjBweDsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IC8qIEZhbGxiYWNrIGZvciB3ZWIgYnJvd3NlcnMgdGhhdCBkb2Vzbid0IHN1cHBvcnQgUkdCYSAqLyBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTVweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNXB4OyBib3JkZXItcmFkaXVzOiAxNXB4OyB0ZXh0LXNoYWRvdzogMCAxcHggMnB4ICMyMjI7IGNvbG9yOiAjRkZGOyBmb250LXdlaWdodDogYm9sZDsgbGluZS1oZWlnaHQ6IDI0cHg7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmZhbmN5Ym94LXRpdGxlLW91dHNpZGUtd3JhcCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWFyZ2luLXRvcDogMTBweDsgY29sb3I6ICNmZmY7IH1cblxuLmZhbmN5Ym94LXRpdGxlLWluc2lkZS13cmFwIHsgcGFkZGluZy10b3A6IDEwcHg7IH1cblxuLmZhbmN5Ym94LXRpdGxlLW92ZXItd3JhcCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwOyBsZWZ0OiAwOyBjb2xvcjogI2ZmZjsgcGFkZGluZzogMTBweDsgYmFja2dyb3VuZDogIzAwMDsgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpOyB9XG5cbi8qUmV0aW5hIGdyYXBoaWNzISovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSkgeyAjZmFuY3lib3gtbG9hZGluZywgLmZhbmN5Ym94LWNsb3NlLCAuZmFuY3lib3gtcHJldiBzcGFuLCAuZmFuY3lib3gtbmV4dCBzcGFuIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9pbWcvSWNvbnMvZmFuY3lib3hfc3ByaXRlQDJ4LnBuZ1wiKTsgYmFja2dyb3VuZC1zaXplOiA0NHB4IDE1MnB4OyAvKlRoZSBzaXplIG9mIHRoZSBub3JtYWwgaW1hZ2UsIGhhbGYgdGhlIHNpemUgb2YgdGhlIGhpLXJlcyBpbWFnZSovIH1cbiAgI2ZhbmN5Ym94LWxvYWRpbmcgZGl2IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9pbWcvSWNvbnMvZmFuY3lib3hfbG9hZGluZ0AyeC5naWZcIik7IGJhY2tncm91bmQtc2l6ZTogMjRweCAyNHB4OyAvKlRoZSBzaXplIG9mIHRoZSBub3JtYWwgaW1hZ2UsIGhhbGYgdGhlIHNpemUgb2YgdGhlIGhpLXJlcyBpbWFnZSovIH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gREVGQVVMVCBUWVBPUkdBUEhZICBCYXNpYyBzdHlsaW5nIGZvciBkaWZmZXJlbnQgdHlwb2dyYWhpYyBlbGVtZW50cyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkgeyBmb250LWZhbWlseTogXCJmdXR1cmEtcHQtYWx0XCIsIFwiZnV0dXJhLXB0XCIsIEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE2cHg7IGxpbmUtaGVpZ2h0OiAxLjQ3MDU4ODIzNTsgY29sb3I6ICMxNDE0MTQ7IGJhY2tncm91bmQ6ICNmZmZmZmY7IC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgYm9keSB7IGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi5wYWdlLWludHJvLCBzdHJvbmcgeyBmb250LXdlaWdodDogYm9sZDsgfVxuXG5lbSB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5zdWIsIHN1cCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZm9udC1zaXplOiA4NSU7IGxpbmUtaGVpZ2h0OiAwOyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHsgdG9wOiAtMC41ZW07IH1cblxuc3ViIHsgYm90dG9tOiAtMC4yNWVtOyB9XG5cbjo6c2VsZWN0aW9uIHsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IH1cblxuOjotbW96LXNlbGVjdGlvbiB7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kOiAjOGZhOGNiOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBCYXNpYyBwYXJhZ3JhcGggc3R5bGVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5wIHsgbWFyZ2luLWJvdHRvbTogMS41Mjk0MTE3NjVlbTsgfVxuXG4udGV4dC0tc21hbGwgeyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyB9XG5cbi5jb250YWluZXIgPiBwIHsgbWF4LXdpZHRoOiA4MCU7IH1cblxucDpsYXN0LW9mLXR5cGUgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYWdlLWNvbnRlbnQgLm1ldGEgeyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogNDBweDsgbWFyZ2luLXJpZ2h0OiAtMjBweDsgbWFyZ2luLWJvdHRvbTogLTE1cHg7IH1cblxuLnBhZ2UtY29udGVudCAubWV0YTphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG4ucGFnZS1jb250ZW50IC5tZXRhIC50YWcgeyBiYWNrZ3JvdW5kOiAjZDVkZWU2OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtd2VpZ2h0OiBib2xkOyBoZWlnaHQ6IDQwcHg7IHBhZGRpbmc6IDAgMjBweDsgbWFyZ2luLWJvdHRvbTogMTBweDsgZmxvYXQ6IGxlZnQ7IH1cblxuLnBhZ2UtY29udGVudCAubWV0YSA+ICogeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZsb2F0OiBsZWZ0OyB9XG5cbi5wYWdlLWNvbnRlbnQgLm1ldGEgc3BhbjpudGgtY2hpbGQoMikgeyBjbGVhcjogYm90aDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2UtY29udGVudCAubWV0YSB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFnZS1jb250ZW50IC5tZXRhIC50YWcgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDogMjBweDsgbWFyZ2luLWJvdHRvbTogMDsgZmxvYXQ6IG5vbmU7IH1cbiAgLnBhZ2UtY29udGVudCAubWV0YSA+ICogeyBmbG9hdDogbm9uZTsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBCYXNpYyBIZWFkaW5nIHN0eWxlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7IGxpbmUtaGVpZ2h0OiAxLjI7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IG1hcmdpbi1ib3R0b206IDFlbTsgcGFkZGluZy10b3A6IDFlbTsgfVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiA0LjQ0NDQ0NDQ0NDRlbTsgbGluZS1oZWlnaHQ6IDAuOTc1ZW07IHBhZGRpbmctdG9wOiAuNWVtOyBmb250LXdlaWdodDogYm9sZDsgfVxuXG5oMiwgLmgyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50IGgzIHsgZm9udC1zaXplOiAxLjg4ODg4ODg4ODllbTsgbGluZS1oZWlnaHQ6IDEuMzIzNTI5NDExOGVtOyBmb250LXdlaWdodDogYm9sZDsgfVxuXG5oMywgLmgzLCAubmF2IGxpLmhlYWRpbmcgc3Ryb25nLCAuYmxvY2sgaDIgeyBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtOyBsaW5lLWhlaWdodDogMS4xMjVlbTsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuaDQsIGg1LCBoNiwgLmg0LCAuaDUsIC5oNiB7IGZvbnQtc2l6ZTogMWVtOyBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ucGFnZS1jb250ZW50IGgyLCAucGFnZS1jb250ZW50IGgzLCAucGFnZS1jb250ZW50IGg0LCAucGFnZS1jb250ZW50IGg1LCAucGFnZS1jb250ZW50IGg2IHsgbWFyZ2luLWJvdHRvbTogN3B4OyBwYWRkaW5nLXRvcDogMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQmxvY2txdW90ZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYmxvY2txdW90ZSB7IHdpZHRoOiBhdXRvOyBtYXJnaW46IDIwcHggLTIwcHggMCAtMjBweDsgYmFja2dyb3VuZDogI2VhZWVmMjsgcGFkZGluZzogNDBweCAyMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuYmxvY2txdW90ZSBzcGFuIHsgZm9udC1zdHlsZTogaXRhbGljOyBmb250LWZhbWlseTogJ0FkZWxsZSBXMDEgSXRhbGljJzsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgZGlzcGxheTogYmxvY2s7IGxpbmUtaGVpZ2h0OiAxLjE1OyB9XG5cbmJsb2NrcXVvdGUgY2l0ZSB7IG1hcmdpbi10b3A6IDIwcHg7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJsb2NrcXVvdGU6YmVmb3JlIHsgY29udGVudDogXCLvhKJcIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbmJsb2NrcXVvdGU6OmJlZm9yZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAtNDBweDsgZm9udC1zaXplOiAzLjMzMzMzMzMzMzNlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgYmxvY2txdW90ZSB7IHdpZHRoOiA4MCU7IG1hcmdpbjogMCBhdXRvOyBwYWRkaW5nOiA0MHB4OyB9XG4gIGJsb2NrcXVvdGUgc3BhbiB7IGZvbnQtc2l6ZTogMS44ODg4ODg4ODg5ZW07IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTGlzdHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbnVsLCBvbCB7IG1hcmdpbi1ib3R0b206IDEuNTI5NDExNzY1ZW07IG1hcmdpbi1sZWZ0OiAyZW07IH1cblxudWwgdWwsIHVsIG9sLCBvbCBvbCwgb2wgdWwgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbnVsIHsgbGlzdC1zdHlsZTogZGlzYzsgfVxuXG5vbCB7IGxpc3Qtc3R5bGU6IGRlY2ltYWw7IH1cblxuLmxpc3QtLWNsZWFuLCAubGlzdC0taWNvbiwgLmxpc3QtLWxpbmtzLCAud2lkZ2V0IHVsLCAub3ZlcnZpZXcudHgtc29sci1zZWFyY2gtbm8tcmVzdWx0cyB1bCwgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgeyBtYXJnaW4tbGVmdDogMDsgbWFyZ2luLWJvdHRvbTogMDsgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubGlzdC0tY2xlYW4gbGksIC5saXN0LS1pY29uIGxpLCAubGlzdC0tbGlua3MgbGksIC53aWRnZXQgdWwgbGksIC5vdmVydmlldy50eC1zb2xyLXNlYXJjaC1uby1yZXN1bHRzIHVsIGxpLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGlzdC0tY2xlYW4gbGkuaGVhZGluZywgLmxpc3QtLWljb24gbGkuaGVhZGluZywgLmxpc3QtLWxpbmtzIGxpLmhlYWRpbmcsIC53aWRnZXQgdWwgbGkuaGVhZGluZywgLm92ZXJ2aWV3LnR4LXNvbHItc2VhcmNoLW5vLXJlc3VsdHMgdWwgbGkuaGVhZGluZywgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkuaGVhZGluZyB7IHBhZGRpbmctbGVmdDogMDsgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbi5saXN0LS1idWxsZXQsIC5ibG9jay5uYXYtdGVhc2VyIHVsIHsgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7IH1cblxuLmxpc3QtLWJ1bGxldCBsaSwgLmJsb2NrLm5hdi10ZWFzZXIgdWwgbGkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmxpc3QtLWJ1bGxldCBsaTo6YmVmb3JlLCAuYmxvY2submF2LXRlYXNlciB1bCBsaTo6YmVmb3JlIHsgY29udGVudDogJy0nOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC0xNXB4OyBmb250LXNpemU6IDAuNzIyMjIyMjIyMmVtOyB9XG5cbi5saXN0LS1zdHJpcGVkIGxpLCAubGlzdC0tbGlua3MgbGksIC5saXN0LS1kcm9wZG93biBsaSwgLmJsb2NrLS1saXN0IHVsIGxpLCAud2lkZ2V0LS1zdW1tYXJ5IHVsIGxpLCAud2lkZ2V0LS1mYWN0cyAubGlzdC0taWNvbiBsaSwgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkgeyBib3JkZXItc3R5bGU6IHNvbGlkOyBib3JkZXItdG9wLXdpZHRoOiAxcHg7IGJvcmRlci1jb2xvcjogI2Q1ZGVlNjsgcGFkZGluZzogMTVweDsgfVxuXG4ubGlzdC0tc3RyaXBlZCBsaTpsYXN0LWNoaWxkLCAubGlzdC0tbGlua3MgbGk6bGFzdC1jaGlsZCwgLmxpc3QtLWRyb3Bkb3duIGxpOmxhc3QtY2hpbGQsIC5ibG9jay0tbGlzdCB1bCBsaTpsYXN0LWNoaWxkLCAud2lkZ2V0LS1zdW1tYXJ5IHVsIGxpOmxhc3QtY2hpbGQsIC53aWRnZXQtLWZhY3RzIC5saXN0LS1pY29uIGxpOmxhc3QtY2hpbGQsIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cblxuLmxpc3QtLXN0cmlwZWQtbGlnaHQgbGksIC5saXN0LS1kcm9wZG93biBsaSwgLnNpdGVtYXAgLmxpc3QtLWxpbmtzIGxpLCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBsaSwgLnBvcHVwIGFzaWRlIC5saXN0LS1saW5rcyBsaSB7IGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyBjb2xvcjogI2ZmZjsgfVxuXG4ubGlzdC0tc3RyaXBlZC1saWdodCBsaTpmb2N1cywgLmxpc3QtLXN0cmlwZWQtbGlnaHQgbGk6aG92ZXIsIC5saXN0LS1zdHJpcGVkLWxpZ2h0IGxpOmZvY3VzICsgbGksIC5saXN0LS1zdHJpcGVkLWxpZ2h0IGxpOmhvdmVyICsgbGksIC5saXN0LS1kcm9wZG93biBsaTpmb2N1cywgLnNpdGVtYXAgLmxpc3QtLWxpbmtzIGxpOmZvY3VzLCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBsaTpmb2N1cywgLnBvcHVwIGFzaWRlIC5saXN0LS1saW5rcyBsaTpmb2N1cywgLmxpc3QtLWRyb3Bkb3duIGxpOmhvdmVyLCAuc2l0ZW1hcCAubGlzdC0tbGlua3MgbGk6aG92ZXIsIC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGxpOmhvdmVyLCAucG9wdXAgYXNpZGUgLmxpc3QtLWxpbmtzIGxpOmhvdmVyLCAubGlzdC0tZHJvcGRvd24gbGk6Zm9jdXMgKyBsaSwgLnNpdGVtYXAgLmxpc3QtLWxpbmtzIGxpOmZvY3VzICsgbGksIC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGxpOmZvY3VzICsgbGksIC5wb3B1cCBhc2lkZSAubGlzdC0tbGlua3MgbGk6Zm9jdXMgKyBsaSwgLmxpc3QtLWRyb3Bkb3duIGxpOmhvdmVyICsgbGksIC5zaXRlbWFwIC5saXN0LS1saW5rcyBsaTpob3ZlciArIGxpLCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBsaTpob3ZlciArIGxpLCAucG9wdXAgYXNpZGUgLmxpc3QtLWxpbmtzIGxpOmhvdmVyICsgbGkgeyBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsgfVxuXG4ubGlzdC0tc3RyaXBlZC1saWdodCBsaSA+IGEsIC5saXN0LS1kcm9wZG93biBsaSA+IGEsIC5zaXRlbWFwIC5saXN0LS1saW5rcyBsaSA+IGEsIC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGxpID4gYSwgLnBvcHVwIGFzaWRlIC5saXN0LS1saW5rcyBsaSA+IGEgeyBjb2xvcjogI2ZmZjsgfVxuXG4ubGlzdC0tc3RyaXBlZC1saWdodCBsaSA+IGE6Zm9jdXMsIC5saXN0LS1zdHJpcGVkLWxpZ2h0IGxpID4gYTpob3ZlciwgLmxpc3QtLWRyb3Bkb3duIGxpID4gYTpmb2N1cywgLnNpdGVtYXAgLmxpc3QtLWxpbmtzIGxpID4gYTpmb2N1cywgLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgbGkgPiBhOmZvY3VzLCAucG9wdXAgYXNpZGUgLmxpc3QtLWxpbmtzIGxpID4gYTpmb2N1cywgLmxpc3QtLWRyb3Bkb3duIGxpID4gYTpob3ZlciwgLnNpdGVtYXAgLmxpc3QtLWxpbmtzIGxpID4gYTpob3ZlciwgLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgbGkgPiBhOmhvdmVyLCAucG9wdXAgYXNpZGUgLmxpc3QtLWxpbmtzIGxpID4gYTpob3ZlciB7IGJhY2tncm91bmQ6ICMxMTI5NGU7IGNvbG9yOiAjZmZmNzE5OyB9XG5cbi5saXN0LS1pY29uIGxpIHsgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG5cbi5saXN0LS1pY29uIGxpOjpiZWZvcmUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IH1cblxuLmxpc3QtLWxpbmtzIGxpIHsgcGFkZGluZzogMDsgfVxuXG4ubGlzdC0tbGlua3MgYSB7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiA4cHggMDsgcGFkZGluZy1sZWZ0OiAyNXB4OyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4ubGlzdC0tbGlua3MgYTpiZWZvcmUgeyBjb250ZW50OiBcIu+EjVwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLmxpc3QtLWxpbmtzIGE6OmJlZm9yZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogNXB4OyBmb250LXNpemU6IDAuN2VtOyBsaW5lLWhlaWdodDogMi4yNTsgdHJhbnNpdGlvbjogbGVmdCAxMDBtcyBlYXNlLWluLW91dDsgfVxuXG4ubGlzdC0tbGlua3MgYTpmb2N1cywgLmxpc3QtLWxpbmtzIGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJhY2tncm91bmQ6ICNlYWVlZjI7IG91dGxpbmU6IDA7IH1cblxuLmxpc3QtLWxpbmtzIGE6Zm9jdXM6OmJlZm9yZSwgLmxpc3QtLWxpbmtzIGE6aG92ZXI6OmJlZm9yZSB7IGxlZnQ6IDdweDsgfVxuXG4ubGlzdC0tbGlua3MgbGk6aG92ZXIsIC5saXN0LS1saW5rcyBsaTpob3ZlciArIGxpIHsgYm9yZGVyLWNvbG9yOiAjZWFlZWYyOyB9XG5cbi5saXN0LS1kcm9wZG93biB7IGRpc3BsYXk6IG5vbmU7IGJhY2tncm91bmQ6ICMxMTI5NGU7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDUwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDEwMCU7IHotaW5kZXg6IDk5OTsgYm9yZGVyOiAxcHggc29saWQgIzQxNTQ3MTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5saXN0LS1kcm9wZG93bi5saXN0LS1pY29uIHsgbWF4LXdpZHRoOiA3MDBweDsgfSB9XG5cbi5saXN0LS1kcm9wZG93biBsaSB7IGhlaWdodDogYXV0bzsgbGluZS1oZWlnaHQ6IDEuMjsgcGFkZGluZzogMTRweCAyMHB4OyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5saXN0LS1kcm9wZG93biBsaTpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cblxuLmxpc3QtLWRyb3Bkb3duIGxpOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbi5saXN0LS1kcm9wZG93biBsaTphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG4ubGlzdC0tZHJvcGRvd24ubGlzdC0taWNvbiBsaSB7IHBhZGRpbmctbGVmdDogNjBweDsgfVxuXG4ubGlzdC0tZHJvcGRvd24ubGlzdC0taWNvbiBsaTo6YmVmb3JlIHsgbGVmdDogMjBweDsgfVxuXG4ubGlzdC0tZHJvcGRvd24gYSB7IGNvbG9yOiAjZmZmOyB9XG5cbi5saXN0LS1kcm9wZG93biBhOmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9XG5cbi5saXN0LS1kcm9wZG93biBhOmhvdmVyIHsgY29sb3I6ICNmZmY7IH1cblxuLmxpc3QtLWRyb3Bkb3duIGxpID4gYSB7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmxpc3QtLWRyb3Bkb3duIGxpID4gYTpob3ZlciB7IGNvbG9yOiAjZmZmOyB9XG5cbi5saXN0LS1kcm9wZG93biAuYWN0aW9ucyB7IG1hcmdpbi10b3A6IDE1cHg7IH1cblxuLmxpc3QtLWRyb3Bkb3duIC5hY3Rpb25zIC5kb3dubG9hZCB7IG1hcmdpbjogMnB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAubGlzdC0tZHJvcGRvd24gLmFjdGlvbnMgeyBmbG9hdDogcmlnaHQ7IG1hcmdpbi10b3A6IDA7IHdpZHRoOiAxNDBweDsgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuXG4ubGlzdC0tZHJvcGRvd24gc3Ryb25nIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5saXN0LS1kcm9wZG93biBzdHJvbmcgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDI2MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAubGlzdC0tZHJvcGRvd24gc3Ryb25nIHsgd2lkdGg6IDQ2MHB4OyB9IH1cblxuLmxpc3QtLWRyb3Bkb3duIGEgc3Ryb25nIHsgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5saXN0LS1kcm9wZG93biBhIHN0cm9uZyB7IHdpZHRoOiA4MCU7IH0gfVxuXG4ubGlzdC0tZHJvcGRvd24gaSB7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IH1cblxuLmxpc3QtLXNpdGVtYXAgYSB7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IGJvcmRlci1zdHlsZTogc29saWQ7IGJvcmRlci10b3Atd2lkdGg6IDFweDsgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyBib3JkZXItY29sb3I6ICNkNWRlZTY7IHBhZGRpbmc6IDhweCAwOyBwYWRkaW5nLWxlZnQ6IDMwcHg7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tdG9wOiAtMXB4OyBjb2xvcjogIzE0MTQxNDsgfVxuXG4ubGlzdC0tc2l0ZW1hcCBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WCXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4ubGlzdC0tc2l0ZW1hcCBhOjpiZWZvcmUgeyBjb2xvcjogI2Q1ZGVlNjsgdG9wOiA4cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogNXB4OyB0cmFuc2l0aW9uOiBsZWZ0IDEwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5saXN0LS1zaXRlbWFwIGEgc3BhbiB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDsgfVxuXG4ubGlzdC0tc2l0ZW1hcCBhOmZvY3VzLCAubGlzdC0tc2l0ZW1hcCBhOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyBvdXRsaW5lOiAwOyB9XG5cbi5saXN0LS1zaXRlbWFwIGE6Zm9jdXM6OmJlZm9yZSwgLmxpc3QtLXNpdGVtYXAgYTpob3Zlcjo6YmVmb3JlIHsgbGVmdDogN3B4OyB9XG5cbi5saXN0LS1zaXRlbWFwID4gbGkgPiBhIHsgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG5cbi5saXN0LS1zaXRlbWFwID4gbGkgPiBhOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0LS1zaXRlbWFwID4gbGkgdWwgeyBtYXJnaW4tbGVmdDogMjBweDsgfVxuXG4ubGlzdC0tc2l0ZW1hcCA+IGxpIHVsIHVsIHsgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLnBhZ2UtY29udGVudCB1bCwgLnBhZ2UtY29udGVudCBvbCB7IG1hcmdpbi1ib3R0b206IDEuNTI5NDExNzY1ZW07IH1cblxuLnBhZ2UtY29udGVudCB1bDpub3QoLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbik6bm90KC5saXN0LS1kcm9wZG93bik6bm90KFtkYXRhLXBpZS1pZF0pLCAucGFnZS1jb250ZW50IG9sIHsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLnBhZ2UtY29udGVudCB1bDpub3QoLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbik6bm90KC5saXN0LS1kcm9wZG93bik6bm90KFtkYXRhLXBpZS1pZF0pIGxpLCAucGFnZS1jb250ZW50IG9sIGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyBjb3VudGVyLWluY3JlbWVudDogc3RlcC1jb3VudGVyOyB9XG5cbi5wYWdlLWNvbnRlbnQgdWw6bm90KC5saXN0LS1vdmVydmlldy1hY3Rpb24pOm5vdCgubGlzdC0tZHJvcGRvd24pOm5vdChbZGF0YS1waWUtaWRdKSBsaTpiZWZvcmUsIC5wYWdlLWNvbnRlbnQgb2wgbGk6YmVmb3JlIHsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5wYWdlLWNvbnRlbnQgdWw6bm90KC5saXN0LS1vdmVydmlldy1hY3Rpb24pOm5vdCgubGlzdC0tZHJvcGRvd24pOm5vdChbZGF0YS1waWUtaWRdKSBsaTo6YmVmb3JlLCAucGFnZS1jb250ZW50IG9sIGxpOjpiZWZvcmUgeyBjb250ZW50OiAnLSc7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTMwcHg7IGZvbnQtc2l6ZTogMC43MjIyMjIyMjIyZW07IHRvcDogNXB4OyB9XG5cbi5wYWdlLWNvbnRlbnQgdWw6bm90KC5saXN0LS1vdmVydmlldy1hY3Rpb24pOm5vdCgubGlzdC0tZHJvcGRvd24pOm5vdChbZGF0YS1waWUtaWRdKS5saXN0LS1jaGVja3MgbGk6YmVmb3JlLCAucGFnZS1jb250ZW50IG9sLmxpc3QtLWNoZWNrcyBsaTpiZWZvcmUgeyBjb250ZW50OiBcIu+EoFwiOyB9XG5cbi5wYWdlLWNvbnRlbnQgb2wgbGk6OmJlZm9yZSB7IGNvbnRlbnQ6IGNvdW50ZXIoc3RlcC1jb3VudGVyKTsgZm9udC1mYW1pbHk6ICdGdXR1cmEgUFQnLCAnZnV0dXJhLXB0Jywgc2Fucy1zZXJpZjsgZm9udC1zaXplOiBpbmhlcml0OyB0b3A6IDA7IH1cblxucDpsYXN0LW9mLXR5cGUgKyB1bCwgcDpsYXN0LW9mLXR5cGUgKyBvbCB7IG1hcmdpbi10b3A6IDEuNTI5NDExNzY1ZW07IH1cblxub2w6bGFzdC1jaGlsZCwgdWw6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIERhdGEgVGFibGVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucmVzcG9uc2l2ZS10YWJsZSB7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlIHsgd2lkdGg6IDEwMCU7IGZvbnQtc2l6ZTogMC45ZW07IG1pbi13aWR0aDogNjAwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG50YWJsZSB0aGVhZCB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbnRhYmxlIHRoZWFkIHRoIHsgYm9yZGVyLXRvcC13aWR0aDogM3B4OyBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7IH1cblxudGFibGUgdGhlYWQgaDMgeyBtYXJnaW46IDA7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgZm9udC1zaXplOiAxZW07IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG50YWJsZSB0aGVhZCBzbWFsbCB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxudGFibGUgdHIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkgeyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyB9XG5cbnRhYmxlIHRoLCB0YWJsZSB0ZCB7IHBhZGRpbmc6IDEwcHggMTBweDsgYm9yZGVyLWNvbG9yOiAjY2JkNWRmOyBib3JkZXItc3R5bGU6IHNvbGlkOyB9XG5cbnRhYmxlIHRoOm5vdCg6Zmlyc3QtY2hpbGQpLCB0YWJsZSB0ZDpub3QoOmZpcnN0LWNoaWxkKSB7IHRleHQtYWxpZ246IHJpZ2h0OyBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9XG5cbnRhYmxlIHRoOmZpcnN0LWNoaWxkLCB0YWJsZSB0ZDpmaXJzdC1jaGlsZCB7IG1pbi13aWR0aDogMjUwcHg7IHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGFibGUgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZCB7IGJvcmRlci1ib3R0b20td2lkdGg6IDNweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTGlua3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmEgeyBjb2xvcjogIzhmYThjYjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAyMDBtcyBlYXNlLWluLW91dDsgfVxuXG5hOmZvY3VzLCBhOmhvdmVyIHsgY29sb3I6ICMxMTI5NGU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5hOmZvY3VzIGltZywgYTpob3ZlciBpbWcgeyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuYSBpbWcgeyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmxpbmstLWJvcmRlcmVkLCAubGlzdC0taWNvbiBhLCAubGluay0tcGhvbmUsIC5ibG9jay0tY29udGFjdCB1bCBhLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSwgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgLnNsaWRlLWl0ZW0geyBjb2xvcjogIzE2MzE1YjsgfVxuXG4ubGluay0tYm9yZGVyZWQgc3BhbiwgLmxpc3QtLWljb24gYSBzcGFuLCAubGluay0tcGhvbmUgc3BhbiwgLmJsb2NrLS1jb250YWN0IHVsIGEgc3BhbiwgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGEgc3BhbiwgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgLnNsaWRlLWl0ZW0gc3BhbiB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTYzMTViOyB9XG5cbi5saW5rLS1ib3JkZXJlZDpmb2N1cywgLmxpbmstLWJvcmRlcmVkOmhvdmVyLCAubGlzdC0taWNvbiBhOmZvY3VzLCAubGluay0tcGhvbmU6Zm9jdXMsIC5ibG9jay0tY29udGFjdCB1bCBhOmZvY3VzLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYTpmb2N1cywgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgLnNsaWRlLWl0ZW06Zm9jdXMsIC5saXN0LS1pY29uIGE6aG92ZXIsIC5saW5rLS1waG9uZTpob3ZlciwgLmJsb2NrLS1jb250YWN0IHVsIGE6aG92ZXIsIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmhvdmVyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCAuc2xpZGUtaXRlbTpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubGluay0tYm9yZGVyZWQ6Zm9jdXMgc3BhbiwgLmxpbmstLWJvcmRlcmVkOmhvdmVyIHNwYW4sIC5saXN0LS1pY29uIGE6Zm9jdXMgc3BhbiwgLmxpbmstLXBob25lOmZvY3VzIHNwYW4sIC5ibG9jay0tY29udGFjdCB1bCBhOmZvY3VzIHNwYW4sIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmZvY3VzIHNwYW4sIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIC5zbGlkZS1pdGVtOmZvY3VzIHNwYW4sIC5saXN0LS1pY29uIGE6aG92ZXIgc3BhbiwgLmxpbmstLXBob25lOmhvdmVyIHNwYW4sIC5ibG9jay0tY29udGFjdCB1bCBhOmhvdmVyIHNwYW4sIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmhvdmVyIHNwYW4sIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIC5zbGlkZS1pdGVtOmhvdmVyIHNwYW4geyBib3JkZXItY29sb3I6ICM4ZmE4Y2I7IH1cblxuLmxpbmstLWljb246YmVmb3JlLCAubGluay0tcGhvbmU6YmVmb3JlIHsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5saW5rLS1pY29uOjpiZWZvcmUsIC5saW5rLS1waG9uZTo6YmVmb3JlIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5saW5rLS1waG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Eq1wiOyB9XG5cbi5saW5rLS1zdGQsIC5jb250ZW50LWNudCBhOm5vdCguYnRuKSB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGZhOGNiOyBjb2xvcjogIzhmYThjYjsgfVxuXG4ubGluay0tc3RkOmZvY3VzLCAubGluay0tc3RkOmhvdmVyLCAuY29udGVudC1jbnQgYTpmb2N1czpub3QoLmJ0biksIC5jb250ZW50LWNudCBhOmhvdmVyOm5vdCguYnRuKSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLWNvbG9yOiAjMTYzMTViOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBJbWFnZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pbWFnZS0tcGFnZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuaW1hZ2UtLXBhZ2UgeyBtYXJnaW4tcmlnaHQ6IC00MHB4OyB9IH1cblxuLmltYWdlLS1wYWdlIGltZyB7IHdpZHRoOiAxMDAlOyBkaXNwbGF5OiBibG9jazsgfVxuXG4uaW1hZ2UtLXBhZ2UgZmlnY2FwdGlvbiB7IGJhY2tncm91bmQ6ICNlYWVlZjI7IHBhZGRpbmc6IDE2cHggMjBweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSWNvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5pY29uLWFycm93LWFsdDo6YmVmb3JlIHsgY29udGVudDogXCLvhKNcIjsgfVxuXG4uaWNvbi1hcnJvdy1kb3duOjpiZWZvcmUgeyBjb250ZW50OiBcIu+Ei1wiOyB9XG5cbi5pY29uLWFycm93LWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SMXCI7IH1cblxuLmljb24tYXJyb3ctcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SNXCI7IH1cblxuLmljb24tYXJyb3ctc2VsZWN0OjpiZWZvcmUgeyBjb250ZW50OiBcIu+ErlwiOyB9XG5cbi5pY29uLWFycm93LXRvcDo6YmVmb3JlIHsgY29udGVudDogXCLvhI5cIjsgfVxuXG4uaWNvbi1hcnJvd3MtbGVmdDo6YmVmb3JlIHsgY29udGVudDogXCLvhKxcIjsgfVxuXG4uaWNvbi1hcnJvd3MtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74StXCI7IH1cblxuLmljb24tYXVkaW86OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SoXCI7IH1cblxuLmljb24tY2FsZW5kYXI6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SkXCI7IH1cblxuLmljb24tY2hlY2ttYXJrOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EoFwiOyB9XG5cbi5pY29uLWNsb3NlOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyB9XG5cbi5pY29uLWRvd25sb2FkOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EsFwiOyB9XG5cbi5pY29uLWV4Y2VsOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EqVwiOyB9XG5cbi5pY29uLWV4dGVybmFsLWxpbms6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SPXCI7IH1cblxuLmljb24tZmFjZWJvb2s6OmJlZm9yZSwgLmJ0bi5mYjo6YmVmb3JlIHsgY29udGVudDogXCLvhJ9cIjsgfVxuXG4uaWNvbi1mb2xkZXI6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SqXCI7IH1cblxuLmljb24tZ29vZ2xlcGx1czo6YmVmb3JlLCAuYnRuLmdwbHVzOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EoVwiOyB9XG5cbi5pY29uLWdyb3VwLXBlb3BsZTo6YmVmb3JlIHsgY29udGVudDogXCLvhJBcIjsgfVxuXG4uaWNvbi1oYW1idXJnZXItbWVudTo6YmVmb3JlIHsgY29udGVudDogXCLvhJFcIjsgfVxuXG4uaWNvbi1saW5rZWRpbjo6YmVmb3JlLCAuYnRuLmxpbmtlZGluOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EklwiOyB9XG5cbi5pY29uLW1haWw6OmJlZm9yZSwgLmJ0bi5lbWFpbDo6YmVmb3JlIHsgY29udGVudDogXCLvhJNcIjsgfVxuXG4uaWNvbi1tYXJrZXI6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SUXCI7IH1cblxuLmljb24tbWluOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EpVwiOyB9XG5cbi5pY29uLXBkZjo6YmVmb3JlIHsgY29udGVudDogXCLvhJVcIjsgfVxuXG4uaWNvbi1waG9uZTo6YmVmb3JlIHsgY29udGVudDogXCLvhKtcIjsgfVxuXG4uaWNvbi1wbGF5OjpiZWZvcmUgeyBjb250ZW50OiBcIu+EllwiOyB9XG5cbi5pY29uLXBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SmXCI7IH1cblxuLmljb24tcHJpbnQ6OmJlZm9yZSwgLmJ0bi5wcmludDo6YmVmb3JlIHsgY29udGVudDogXCLvhJdcIjsgfVxuXG4uaWNvbi1xdW90ZTo6YmVmb3JlIHsgY29udGVudDogXCLvhKJcIjsgfVxuXG4uaWNvbi1zZWFyY2g6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SHXCI7IH1cblxuLmljb24tc29ydC1ncmlkOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EmFwiOyB9XG5cbi5pY29uLXNvcnQtbGlzdDo6YmVmb3JlIHsgY29udGVudDogXCLvhJlcIjsgfVxuXG4uaWNvbi1zb3J0LW1hcDo6YmVmb3JlIHsgY29udGVudDogXCLvhJpcIjsgfVxuXG4uaWNvbi1zdWI6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WCXCI7IH1cblxuLmljb24tdHdpdHRlcjo6YmVmb3JlLCAuYnRuLnR3aXR0ZXI6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SbXCI7IH1cblxuLmljb24tdmVzc2VsOjpiZWZvcmUgeyBjb250ZW50OiBcIu+Ep1wiOyB9XG5cbi5pY29uLXZlc3NlbC1ob3BwZXItYmFyZ2U6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SvXCI7IH1cblxuLmljb24tdmVzc2VsX2JhcmdlX2hvcHBlcjo6YmVmb3JlIHsgY29udGVudDogXCLvhLFcIjsgfVxuXG4uaWNvbi12ZXNzZWxfYmFyZ2VfaW5sYW5kOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EslwiOyB9XG5cbi5pY29uLXZlc3NlbF9iYXJnZV9vY2Vhbi1mbGF0LXRvcDo6YmVmb3JlIHsgY29udGVudDogXCLvhLNcIjsgfVxuXG4uaWNvbi12ZXNzZWxfYmFyZ2Vfb2NlYW4tc3VwZXItcGFsbGV0czo6YmVmb3JlIHsgY29udGVudDogXCLvhLxcIjsgfVxuXG4uaWNvbi12ZXNzZWxfZHJlZGdlcl9iYWNraG9lOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EvVwiOyB9XG5cbi5pY29uLXZlc3NlbF9kcmVkZ2VyX2N1dHRlcl9zdWN0aW9uOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EvlwiOyB9XG5cbi5pY29uLXZlc3NlbF9kcmVkZ2VyX2Zsb2F0aW5nX2NyYW5lOjpiZWZvcmUgeyBjb250ZW50OiBcIu+Ev1wiOyB9XG5cbi5pY29uLXZlc3NlbF9kcmVkZ2VyX3RyYWlsaW5nLXN1Y3Rpb24taG9wcGVyOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EtFwiOyB9XG5cbi5pY29uLXZlc3NlbF9vZmZzaG9yZV9hbmNob3ItaGFuZGxpbmctdHVnOjpiZWZvcmUgeyBjb250ZW50OiBcIu+EtVwiOyB9XG5cbi5pY29uLXZlc3NlbF9vZmZzaG9yZV9hbmNob3ItaGFuZGxpbmctdHVnLTI6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S2XCI7IH1cblxuLmljb24tdmVzc2VsX29mZnNob3JlX2RpdmluZy1zdXBwb3J0OjpiZWZvcmUgeyBjb250ZW50OiBcIu+Et1wiOyB9XG5cbi5pY29uLXZlc3NlbF9vZmZzaG9yZV9mYWxscGlwZTo6YmVmb3JlIHsgY29udGVudDogXCLvhLhcIjsgfVxuXG4uaWNvbi12ZXNzZWxfb2Zmc2hvcmVfZmxvYXRpbmctc2hlZXJsZWc6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S5XCI7IH1cblxuLmljb24tdmVzc2VsX29mZnNob3JlX2hlYXZ5LWxpZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S6XCI7IH1cblxuLmljb24tdmVzc2VsX29mZnNob3JlX211bHRpcHVycG9zZS1jYWJsZS1sYXlpbmc6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S7XCI7IH1cblxuLmljb24tdmltZW86OmJlZm9yZSwgLmJ0bi52aW1lbzo6YmVmb3JlIHsgY29udGVudDogXCLvhJxcIjsgfVxuXG4uaWNvbi13b3JsZDo6YmVmb3JlIHsgY29udGVudDogXCLvhJ1cIjsgfVxuXG4uaWNvbi15b3V0dWJlOjpiZWZvcmUsIC5idG4ueW91dHViZTo6YmVmb3JlIHsgY29udGVudDogXCLvhJ5cIjsgfVxuXG5pLmRvd25sb2FkLCBhLmRvd25sb2FkIHsgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL0ZsYWdzL0R1dGNoLnBuZ1wiKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogMThweCAxNHB4OyB3aWR0aDogMjBweDsgaGVpZ2h0OiAxNnB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJvcmRlcjogMXB4IHNvbGlkICNmZmY7IHRyYW5zaXRpb246IG5vbmU7IH1cblxuaS5kb3dubG9hZDpmb2N1cywgaS5kb3dubG9hZDpob3ZlciwgYS5kb3dubG9hZDpmb2N1cywgYS5kb3dubG9hZDpob3ZlciB7IGJvcmRlci1jb2xvcjogIzhmYThjYjsgfVxuXG4uZG93bmxvYWQuZW5nbGlzaCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9FbmdsaXNoLnBuZ1wiKTsgfVxuXG4uZG93bmxvYWQuZnJlbmNoIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL0ZsYWdzL0ZyZW5jaC5wbmdcIik7IH1cblxuLmRvd25sb2FkLnNwYW5pc2ggeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvRmxhZ3MvU3BhbmlzaC5wbmdcIik7IH1cblxuLmRvd25sb2FkLnBvcnR1Z3Vlc2UgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvRmxhZ3MvUG9ydHVndWVzZS5wbmdcIik7IH1cblxuLmRvd25sb2FkLmdlcm1hbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9HZXJtYW4ucG5nXCIpOyB9XG5cbi5kb3dubG9hZC5zd2VkaXNoIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL0ZsYWdzL1N3ZWRpc2gucG5nXCIpOyB9XG5cbi5kb3dubG9hZC5maW5uaXNoIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL0ZsYWdzL0Zpbm5pc2gucG5nXCIpOyB9XG5cbi5kb3dubG9hZC5lc3RvbmlhbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9Fc3Rvbmlhbi5wbmdcIik7IH1cblxuLmRvd25sb2FkLnJ1c3NpYW4geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvRmxhZ3MvUnVzc2lhbi5wbmdcIik7IH1cblxuLmRvd25sb2FkLmJyYXppbGlhbiwgLmRvd25sb2FkLmJyYXppbGlhbi1wb3J0dWd1ZXNlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL0ZsYWdzL0JyYXppbGlhblBvcnR1Z3Vlc2UucG5nXCIpOyB9XG5cbmkuZG93bmxvYWQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLmlubGluZS1mbGFnIHsgd2lkdGg6IDIwcHg7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1hcmdpbi10b3A6IC00cHg7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSGVhZGluZyBzZWN0aW9uIDogU3RyaXBlZCBoZWFkaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaGVhZGluZy0tc2VjdGlvbiB7IG1heC13aWR0aDogOTAlOyB9XG5cbi5oZWFkaW5nLS1zZWN0aW9uLCAucGFnZS1jb250ZW50IC5oZWFkaW5nLS1zZWN0aW9uIHsgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuLmhlYWRpbmctLXNlY3Rpb246OmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB3aWR0aDogNjAlOyBoZWlnaHQ6IDEwcHg7IGJhY2tncm91bmQ6ICMxNDE0MTQ7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogLTIwcHg7IH1cblxuLmhlYWRpbmctLXNlY3Rpb25oMTo6YmVmb3JlIHsgbGVmdDogNXB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmhlYWRpbmctLXNlY3Rpb24geyBtYXgtd2lkdGg6IDgwJTsgfVxuICAuaGVhZGluZy0tc2VjdGlvbjo6YmVmb3JlIHsgd2lkdGg6IDI0MHB4OyB9IH1cblxuLmRvd25sb2Fkcy0taGVhZGVyIHsgbWFyZ2luOiAzMHB4IGF1dG87IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZG93bmxvYWRzLS1oZWFkZXI6YmVmb3JlIHsgbWFyZ2luOiAwIGF1dG87IH1cblxuLnBhZ2Utc2VjdGlvbiA+IGgyLmhlYWRpbmctLXNlY3Rpb24sIC5wYWdlLWNvbnRlbnQgLmhlYWRpbmctLXNlY3Rpb24geyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbjogMCBhdXRvOyB9XG5cbi5wYWdlLXNlY3Rpb24gPiBoMi5oZWFkaW5nLS1zZWN0aW9uOjpiZWZvcmUsIC5wYWdlLWNvbnRlbnQgLmhlYWRpbmctLXNlY3Rpb246OmJlZm9yZSB7IG1hcmdpbjogMCBhdXRvOyB9XG5cbi5wYWdlLXNlY3Rpb24gPiBoMi5oZWFkaW5nLS1zZWN0aW9uIHsgbWFyZ2luLWJvdHRvbTogMjJweDsgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5wYWdlLXNlY3Rpb24gPiBoMi5oZWFkaW5nLS1zZWN0aW9uIHsgbWFyZ2luLWJvdHRvbTogNTJweDsgfSB9XG5cbi5wYWdlLWNvbnRlbnQgLmhlYWRpbmctLXNlY3Rpb24geyBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG5cbi5oZWFkaW5nLS1jZW50ZXIgeyBtYXJnaW4tYm90dG9tOiAyNXB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEN1c3RvbSBmdW5jdGlvbnMgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGV4dC0taGlkZGVuLCAuYnRuLS10b3Agc3BhbiwgLmJ0bi0tc2Nyb2xsIHNwYW4sIC5idG4tLWZsYWcgc3BhbiwgLmJ0bi50b2dnbGUtLW5hdmlnYXRpb24gc3BhbiwgLmJsb2NrIC5idG4uY2xvc2Ugc3BhbiwgLmFjY29yZGlvbi1jbnQgLnNsaWRlIC5idG4tLWNsb3NlIHNwYW4sIC53aWRnZXQtLXNoYXJlIC5idG4gc3BhbiwgLnRvb2xiYXIgLnNvcnQgLmJ0biBzcGFuLCAudG9vbGJhciAudmlldy1zd2l0Y2ggLmJ0biBzcGFuLCAucGFnaW5hdGlvbiAuZmlyc3QgYSBzcGFuLCAucGFnaW5hdGlvbiAubGFzdCBhIHNwYW4sIGJ1dHRvbi5idG4tLXJlc2V0IHNwYW4sIC5mYW5jeWJveC1jbG9zZSBzcGFuLCAuZm9ybS0tZGlyZWN0aW9ucyBidXR0b24gc3BhbiwgLnNlYXJjaC1mb3JtIGJ1dHRvbiBzcGFuLCAuc2VhcmNoLS1sYXJnZSAubGFiZWwgeyBib3JkZXI6IDA7IGNsaXA6IHJlY3QoMCAwIDAgMCk7IGhlaWdodDogMXB4OyBtYXJnaW46IC0xcHg7IG92ZXJmbG93OiBoaWRkZW47IHBhZGRpbmc6IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDFweDsgfVxuXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IGVtcHR5OyBzcmM6IHVybChkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxkMDlHUms5VVZFOEFBQVEwQUFvQUFBQUFBK3dBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkRSa1lnQUFBQTlBQUFBSjRBQUFDZVhRNDhqMDlUTHpJQUFBR1VBQUFBWUFBQUFHQUlJZ2JXWTIxaGNBQUFBZlFBQUFCRUFBQUFSQUF5QUdsbllYTndBQUFDT0FBQUFBZ0FBQUFJQUFBQUVHaGxZV1FBQUFKQUFBQUFOZ0FBQURiOW16QjVhR2hsWVFBQUFuZ0FBQUFrQUFBQUpBSGlBZVZvYlhSNEFBQUNuQUFBQUJBQUFBQVFBQUFBQUcxaGVIQUFBQUtzQUFBQUJnQUFBQVlBQkZBQWJtRnRaUUFBQXJRQUFBRmRBQUFCWFZxWlhSbHdiM04wQUFBRUZBQUFBQ0FBQUFBZ0FBTUFBQUVBQkFRQUFRRUJESE53WVdObExXVnRjSFI1QUFFQ0FBRUFPdmdjQXZnYkEvZ1lCQjRLQUJsVC80dUxIZ29BR1ZQL2k0c01CNHRyK0pUNGRBVWRBQUFBZkE4ZEFBQUFnUkVkQUFBQUNSMEFBQUNWRWdBRkFRRU1GeGtiSG5Od1lXTmxMV1Z0Y0hSNWMzQmhZMlV0Wlcxd2RIbDFNSFV4ZFRJd0FBQUNBWWtBQWdBRUFRRUVCd29OL0pRTy9KUU8vSlFPL0pRTytKUVUrSlFWaXd3S0FBQUFBd0lBQVpBQUJRQUFBVXdCWmdBQUFFY0JUQUZtQUFBQTlRQVpBSVFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUFBSUFIZy8rRC80QUhnQUNBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVBREFBQUFBSUFBZ0FBZ0FBQUFFQUlQLzkvLzhBQUFBQUFDRC8vZi8vQUFILzR3QURBQUVBQUFBQUFBQUFBQUFCQUFILy93QVBBQUVBQUFBQkFBQUFlUjJHWHc4ODlRQUxBZ0FBQUFBQXp6NTR2Z0FBQUFEUFBuaStBQUFBQUFBQUFBQUFBQUFJQUFJQUFBQUFBQUFBQVFBQUFlRC80QUFBQWdBQUFBQUFBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJRQUFBRUFBQUFBQUFPQUs0QUFRQUFBQUFBQVFBV0FBQUFBUUFBQUFBQUFnQU9BR01BQVFBQUFBQUFBd0FXQUN3QUFRQUFBQUFBQkFBV0FIRUFBUUFBQUFBQUJRQVdBQllBQVFBQUFBQUFCZ0FMQUVJQUFRQUFBQUFBQ2dBb0FJY0FBd0FCQkFrQUFRQVdBQUFBQXdBQkJBa0FBZ0FPQUdNQUF3QUJCQWtBQXdBV0FDd0FBd0FCQkFrQUJBQVdBSEVBQXdBQkJBa0FCUUFXQUJZQUF3QUJCQWtBQmdBV0FFMEFBd0FCQkFrQUNnQW9BSWNBY3dCd0FHRUFZd0JsQUMwQVpRQnRBSEFBZEFCNUFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJ6QUhBQVlRQmpBR1VBTFFCbEFHMEFjQUIwQUhsemNHRmpaUzFsYlhCMGVRQnpBSEFBWVFCakFHVUFMUUJsQUcwQWNBQjBBSGtBVWdCbEFHY0FkUUJzQUdFQWNnQnpBSEFBWVFCakFHVUFMUUJsQUcwQWNBQjBBSGtBUndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJKQUdNQWJ3Qk5BRzhBYndCdUFBQUFBQU1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPSkgZm9ybWF0KFwid29mZlwiKTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEJ1dHRvbnMgYW5kIGJ1dHRvbiBsaW5rcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5idG4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IHBhZGRpbmc6IDAgMTVweDsgbGluZS1oZWlnaHQ6IDQwcHg7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGJhY2tncm91bmQtY29sb3I6ICM4ZmE4Y2I7IGNvbG9yOiAjZmZmOyBtYXJnaW46IDA7IGhlaWdodDogNDBweDsgYm9yZGVyLXJhZGl1czogMDsgdHJhbnNpdGlvbjogYmFja2dyb3VuZCA2NTBtcyBlYXNlLWluLW91dDsgfVxuXG4uYnRuOmFjdGl2ZSB7IG91dGxpbmU6IDA7IH1cblxuLmJ0bjo6YmVmb3JlLCAuYnRuOjphZnRlciB7IHBhZGRpbmc6IDAgNXB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmJ0biBzcGFuIHsgcGFkZGluZzogMCA1cHg7IH1cblxuLmJ0bjpmb2N1cywgLmJ0bjpob3ZlciwgYSAuYnRuOmhvdmVyIHsgY29sb3I6ICNmZmY7IH1cblxuLmJ0bjpmb2N1cywgLmJ0bjpob3ZlciwgYSAuYnRuOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogIzE2MzE1YjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmJ1dHRvbiwgLmJ0biB7IGN1cnNvcjogcG9pbnRlcjsgdGV4dC1hbGlnbjogY2VudGVyOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLmJ0bjpmaXJzdC1jaGlsZCwgaW5wdXQuYnRuIHsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYnV0dG9uOmZvY3VzLCAuYnRuOmZvY3VzIHsgb3V0bGluZTogMCAhaW1wb3J0YW50OyB9XG5cbi5idG4tLXRvcCwgLmJ0bi0tc2Nyb2xsLCAuYnRuLS1mbGFnLCAuYnRuLnRvZ2dsZS0tbmF2aWdhdGlvbiwgLmJsb2NrIC5idG4uY2xvc2UsIC5hY2NvcmRpb24tY250IC5zbGlkZSAuYnRuLS1jbG9zZSwgLndpZGdldC0tc2hhcmUgLmJ0biwgLnRvb2xiYXIgLnNvcnQgLmJ0biwgLnRvb2xiYXIgLnZpZXctc3dpdGNoIC5idG4sIC5wYWdpbmF0aW9uIC5maXJzdCBhLCAucGFnaW5hdGlvbiAubGFzdCBhLCBidXR0b24uYnRuLS1yZXNldCwgLmZhbmN5Ym94LWNsb3NlIHsgd2lkdGg6IDQwcHg7IHBhZGRpbmc6IDA7IC8qIFx0Jjpob3Zlcjo6YmVmb3JlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9ICovIH1cblxuLmJ0bi0tdG9wOmJlZm9yZSwgLmJ0bi0tc2Nyb2xsOmJlZm9yZSwgLmJ0bi0tZmxhZzpiZWZvcmUsIC5idG4udG9nZ2xlLS1uYXZpZ2F0aW9uOmJlZm9yZSwgLmJsb2NrIC5idG4uY2xvc2U6YmVmb3JlLCAuYWNjb3JkaW9uLWNudCAuc2xpZGUgLmJ0bi0tY2xvc2U6YmVmb3JlLCAud2lkZ2V0LS1zaGFyZSAuYnRuOmJlZm9yZSwgLnRvb2xiYXIgLnNvcnQgLmJ0bjpiZWZvcmUsIC50b29sYmFyIC52aWV3LXN3aXRjaCAuYnRuOmJlZm9yZSwgLnBhZ2luYXRpb24gLmZpcnN0IGE6YmVmb3JlLCAucGFnaW5hdGlvbiAubGFzdCBhOmJlZm9yZSwgYnV0dG9uLmJ0bi0tcmVzZXQ6YmVmb3JlLCAuZmFuY3lib3gtY2xvc2U6YmVmb3JlIHsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5idG4tLXRvcDo6YmVmb3JlLCAuYnRuLS1zY3JvbGw6OmJlZm9yZSwgLmJ0bi0tZmxhZzo6YmVmb3JlLCAuYnRuLnRvZ2dsZS0tbmF2aWdhdGlvbjo6YmVmb3JlLCAuYmxvY2sgLmJ0bi5jbG9zZTo6YmVmb3JlLCAuYWNjb3JkaW9uLWNudCAuc2xpZGUgLmJ0bi0tY2xvc2U6OmJlZm9yZSwgLndpZGdldC0tc2hhcmUgLmJ0bjo6YmVmb3JlLCAudG9vbGJhciAuc29ydCAuYnRuOjpiZWZvcmUsIC50b29sYmFyIC52aWV3LXN3aXRjaCAuYnRuOjpiZWZvcmUsIC5wYWdpbmF0aW9uIC5maXJzdCBhOjpiZWZvcmUsIC5wYWdpbmF0aW9uIC5sYXN0IGE6OmJlZm9yZSwgYnV0dG9uLmJ0bi0tcmVzZXQ6OmJlZm9yZSwgLmZhbmN5Ym94LWNsb3NlOjpiZWZvcmUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDsgfVxuXG4uYnRuLS1zdWJtZW51OmJlZm9yZSwgLmJ0bi0tYmFjazpiZWZvcmUsIC5wYWdpbmF0aW9uIC5wcmV2IGE6YmVmb3JlIHsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5idG4tLXN1Ym1lbnU6OmJlZm9yZSwgLmJ0bi0tYmFjazo6YmVmb3JlLCAucGFnaW5hdGlvbiAucHJldiBhOjpiZWZvcmUgeyBmb250LXNpemU6IDAuOGVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJ0bi0tbGluazphZnRlciwgLmJ0bi0tY2VudGVyOmFmdGVyLCBidXR0b24uYnRuLS1zdWJtaXQ6YWZ0ZXIsIC5wb3dlcm1haWxfZmllbGR3cmFwX3R5cGVfc3VibWl0IC5idG4tLXN1Ym1pdDphZnRlciwgLnBhZ2luYXRpb24gLm5leHQgYTphZnRlciwgLnNlY3Rpb24tY250W2NsYXNzKj1cInRlYXNlci0tXCJdIC5idG4tLWN0YTphZnRlciwgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiAuYnRuOmFmdGVyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYTphZnRlciB7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYnRuLS1saW5rOjphZnRlciwgLmJ0bi0tY2VudGVyOjphZnRlciwgYnV0dG9uLmJ0bi0tc3VibWl0OjphZnRlciwgLnBvd2VybWFpbF9maWVsZHdyYXBfdHlwZV9zdWJtaXQgLmJ0bi0tc3VibWl0OjphZnRlciwgLnBhZ2luYXRpb24gLm5leHQgYTo6YWZ0ZXIsIC5zZWN0aW9uLWNudFtjbGFzcyo9XCJ0ZWFzZXItLVwiXSAuYnRuLS1jdGE6OmFmdGVyLCAubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG46OmFmdGVyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYTo6YWZ0ZXIgeyBmb250LXNpemU6IDAuOGVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJ0bi0tbGFiZWxlZCBzcGFuLCAubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4gc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5idG4tLWxhYmVsZWQgc3BhbiwgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiAuYnRuIHNwYW4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4uYnRuLS1zdWJtZW51LCAuYnRuLS1iYWNrLCAud2lkZ2V0LS1zaGFyZSAuYnRuLCAuYnRuLmdyaWQsIC5idG4ubGlzdCwgLmJ0bi5tYXAgeyAvKiBcdFx0Jjpob3Zlcjo6YmVmb3JlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjQpOyB9ICovIH1cblxuLmJ0bi0tc3VibWVudTo6YmVmb3JlLCAuYnRuLS1iYWNrOjpiZWZvcmUsIC53aWRnZXQtLXNoYXJlIC5idG46OmJlZm9yZSwgLmJ0bi5ncmlkOjpiZWZvcmUsIC5idG4ubGlzdDo6YmVmb3JlLCAuYnRuLm1hcDo6YmVmb3JlLCAuYnRuLS1zdWJtZW51OjphZnRlciwgLmJ0bi0tYmFjazo6YWZ0ZXIsIC53aWRnZXQtLXNoYXJlIC5idG46OmFmdGVyLCAuYnRuLmdyaWQ6OmFmdGVyLCAuYnRuLmxpc3Q6OmFmdGVyLCAuYnRuLm1hcDo6YWZ0ZXIgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMzUpOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQnV0dG9uIHZhcmlhdGlvbnMgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fICovXG4uYnRuLS1saW5rLCAuYnRuLS1jZW50ZXIsIGJ1dHRvbi5idG4tLXN1Ym1pdCwgLnBvd2VybWFpbF9maWVsZHdyYXBfdHlwZV9zdWJtaXQgLmJ0bi0tc3VibWl0LCAucGFnaW5hdGlvbiAubmV4dCBhLCAuc2VjdGlvbi1jbnRbY2xhc3MqPVwidGVhc2VyLS1cIl0gLmJ0bi0tY3RhIHsgbWFyZ2luOiA1cHg7IH1cblxuLmJ0bi0tbGluazphZnRlciwgLmJ0bi0tY2VudGVyOmFmdGVyLCBidXR0b24uYnRuLS1zdWJtaXQ6YWZ0ZXIsIC5wb3dlcm1haWxfZmllbGR3cmFwX3R5cGVfc3VibWl0IC5idG4tLXN1Ym1pdDphZnRlciwgLnBhZ2luYXRpb24gLm5leHQgYTphZnRlciwgLnNlY3Rpb24tY250W2NsYXNzKj1cInRlYXNlci0tXCJdIC5idG4tLWN0YTphZnRlciB7IGNvbnRlbnQ6IFwi74SNXCI7IH1cblxuLmJ0bi0tbGluazo6YWZ0ZXIsIC5idG4tLWNlbnRlcjo6YWZ0ZXIsIGJ1dHRvbi5idG4tLXN1Ym1pdDo6YWZ0ZXIsIC5wb3dlcm1haWxfZmllbGR3cmFwX3R5cGVfc3VibWl0IC5idG4tLXN1Ym1pdDo6YWZ0ZXIsIC5wYWdpbmF0aW9uIC5uZXh0IGE6OmFmdGVyLCAuc2VjdGlvbi1jbnRbY2xhc3MqPVwidGVhc2VyLS1cIl0gLmJ0bi0tY3RhOjphZnRlciB7IGxlZnQ6IDA7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMTAwbXMgZWFzZS1pbi1vdXQsIGxlZnQgMTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLmJ0bi0tbGluazpob3Zlcjo6YWZ0ZXIsIC5idG4tLWNlbnRlcjpob3Zlcjo6YWZ0ZXIsIGJ1dHRvbi5idG4tLXN1Ym1pdDpob3Zlcjo6YWZ0ZXIsIC5wb3dlcm1haWxfZmllbGR3cmFwX3R5cGVfc3VibWl0IC5idG4tLXN1Ym1pdDpob3Zlcjo6YWZ0ZXIsIC5wYWdpbmF0aW9uIC5uZXh0IGE6aG92ZXI6OmFmdGVyLCAuc2VjdGlvbi1jbnRbY2xhc3MqPVwidGVhc2VyLS1cIl0gLmJ0bi0tY3RhOmhvdmVyOjphZnRlciB7IGxlZnQ6IDVweDsgfVxuXG4uYnRuLS1jZW50ZXIgeyBkaXNwbGF5OiBibG9jazsgbWF4LXdpZHRoOiAzMDBweDsgbWFyZ2luOiA0MHB4IGF1dG8gMDsgfVxuXG4uY250LS1vdmVydmlldyArIC5idG4tLWNlbnRlciB7IG1hcmdpbi10b3A6IDA7IH1cblxuLmJ0bi0tdG9wIHsgcG9zaXRpb246IGZpeGVkOyBib3R0b206IC00MHB4OyB6LWluZGV4OiA0MDsgcmlnaHQ6IDIwcHg7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgZWFzZS1pbi1vdXQsIGJvdHRvbSAxMDBtcyBlYXNlLWluLW91dDsgfVxuXG4uYnRuLS10b3A6YmVmb3JlIHsgY29udGVudDogXCLvhI5cIjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmJ0bi0tdG9wIHsgcmlnaHQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5idG4tLXRvcCB7IHJpZ2h0OiA0dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5idG4tLXRvcCB7IHJpZ2h0OiA4dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5idG4tLXRvcCB7IHJpZ2h0OiAxNXZ3OyB9IH1cblxuLmJ0bi0tdG9wLmZpeGVkIHsgLyogXHRcdFx0cG9zaXRpb246IGZpeGVkOyAqLyBib3R0b206IDA7IH1cblxuLmJ0bi0tdG9wOjpiZWZvcmUgeyB0b3A6IDA7IH1cblxuLmJ0bi0tdG9wOmhvdmVyOjpiZWZvcmUgeyB0b3A6IC0zcHg7IH1cblxuLmJ0bi0tbGlnaHQtYmx1ZSwgLmJ0bi0tdG9wIHsgYmFja2dyb3VuZDogI2VhZWVmMjsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmJ0bi0td2hpdGUsIC5wb3B1cCBhc2lkZSAuYnRuLCAuc2l0ZW1hcCAud2lkZ2V0LS1zaGFyZSBhLmJ0biwgLmJsb2NrIC5idG4uY2xvc2UgeyBiYWNrZ3JvdW5kOiAjZmZmOyBjb2xvcjogIzE2MzE1YjsgfVxuXG4uYnRuLS13aGl0ZTpob3ZlciwgLnBvcHVwIGFzaWRlIC5idG46aG92ZXIsIC5zaXRlbWFwIC53aWRnZXQtLXNoYXJlIGEuYnRuOmhvdmVyLCAuYmxvY2sgLmJ0bi5jbG9zZTpob3ZlciB7IGJhY2tncm91bmQ6ICNmZmY3MTk7IH1cblxuLmJ0bi0tbWVkaXVtLWJsdWUsIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhIHsgYmFja2dyb3VuZDogI2Q1ZGVlNjsgY29sb3I6ICMxNjMxNWI7IH1cblxuLmJ0bi0tbWVkaXVtLWJsdWU6aG92ZXIsIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmhvdmVyIHsgYmFja2dyb3VuZDogIzhmYThjYjsgY29sb3I6ICNmZmY7IH1cblxuLmJ0bi0teWVsbG93LCAucGFnZS1oZWFkZXIgYS5idG4tLWxpbmssIC5idG4tLWJhY2ssIC5idG4tLXRvZ2dsZS1vdmVybGF5LCAuc2VjdGlvbi1jbnRbY2xhc3MqPVwidGVhc2VyLS1cIl0gLmJ0bi0tY3RhIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmJ0bi0tZGFyay1ibHVlLCAuYnRuLS1zdWJtZW51IHsgYmFja2dyb3VuZDogIzE2MzE1YjsgY29sb3I6ICNmZmY7IH1cblxuLmJ0bi0tbGFiZWwgeyBwYWRkaW5nOiAwOyB9XG5cbi5idG4tLWxhYmVsIC5pY29uIHsgYmFja2dyb3VuZDogIzdkOTNiMzsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogNDBweDsgdmVydGljYWwtYWxpZ246IGluaXRpYWw7IHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG5cbi5idG4tLWxhYmVsIC5pY29uOmJlZm9yZSB7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYnRuLS1sYWJlbCAuaWNvbjo6YmVmb3JlIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7IH1cblxuLmJ0bi0tbGFiZWwgLmxhYmVsIHsgcGFkZGluZzogMCAyMHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmJ0bi0tdmlkZW8geyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOiA0LjQ0NDQ0NDQ0NDRlbTsgaGVpZ2h0OiA4MHB4OyB3aWR0aDogODBweDsgcGFkZGluZzogMDsgbGluZS1oZWlnaHQ6IDgwcHg7IGJhY2tncm91bmQ6IG5vbmU7IGNvbG9yOiAjZmZmOyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB9XG5cbi5idG4tLXZpZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SWXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYnRuLS12aWRlbzpmb2N1cywgLmJ0bi0tdmlkZW86aG92ZXIgeyBiYWNrZ3JvdW5kOiBub25lOyBjb2xvcjogI2ZmZjcxOTsgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9XG5cbi5idG4tLWxhcmdlLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSB7IGhlaWdodDogNjBweDsgbGluZS1oZWlnaHQ6IDYwcHg7IH1cblxuLmJ0bi0tY29sbGFwc2UtY29udGVudCB7IG1hcmdpbjogMCBhdXRvOyB3aWR0aDogMjAwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgYmFja2dyb3VuZDogbm9uZTsgZGlzcGxheTogYmxvY2s7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmJ0bi0tY29sbGFwc2UtY29udGVudDphZnRlciB7IGNvbnRlbnQ6IFwi74SLXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYnRuLS1jb2xsYXBzZS1jb250ZW50OjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDAuNjY2NjY2NjY2N2VtOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRyYW5zaXRpb246IHRvcCAzMDBtcyBlYXNlLWluLW91dDsgdG9wOiAwOyB9XG5cbi5idG4tLWNvbGxhcHNlLWNvbnRlbnQ6aG92ZXI6OmFmdGVyIHsgdG9wOiAzcHg7IH1cblxuLmJ0bi0tY29sbGFwc2UtY29udGVudC5vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SOXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYnRuLS1jb2xsYXBzZS1jb250ZW50Lm9wZW46OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uYnRuLS1jb2xsYXBzZS1jb250ZW50Lm9wZW46OmJlZm9yZSB7IGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDAuNjY2NjY2NjY2N2VtOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRyYW5zaXRpb246IHRvcCAzMDBtcyBlYXNlLWluLW91dDsgdG9wOiAwOyB9XG5cbi5idG4tLWNvbGxhcHNlLWNvbnRlbnQub3Blbjpob3Zlcjo6YmVmb3JlIHsgdG9wOiAtM3B4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuYnRuLS1jb2xsYXBzZS1jb250ZW50IHsgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbi5idG4tLXNjcm9sbCB7IGhlaWdodDogNTBweDsgYmFja2dyb3VuZDogI2ZmZjsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmJ0bi0tc2Nyb2xsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SLXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYnRuLS1zY3JvbGw6aG92ZXIsIC5idG4tLXNjcm9sbDpmb2N1cyB7IGJhY2tncm91bmQ6ICNmZmY3MTk7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5idG4tLWZsYWcgaW1nIHsgd2lkdGg6IDIycHg7IG1hcmdpbi10b3A6IDExcHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIERFRkFVTFQgRk9STSBTVFlMSU5HIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5mb3JtIGZpZWxkc2V0IHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG5mb3JtIGZpZWxkc2V0Omxhc3Qtb2YtdHlwZSB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuZm9ybSBsYWJlbCB7IG1hcmdpbi1ib3R0b206IDA7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBmb250OiBpbmhlcml0OyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBsaW5lLWhlaWdodDogNDBweDsgaGVpZ2h0OiA0MHB4OyBjb2xvcjogIzE0MTQxNDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgcGFkZGluZzogMCAxNXB4OyBib3JkZXI6IDA7IGJvcmRlci1yYWRpdXM6IDA7IC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbnRleHRhcmVhIHsgaGVpZ2h0OiAxMmVtOyBwYWRkaW5nOiAxNXB4OyBsaW5lLWhlaWdodDogMS41ZW07IG92ZXJmbG93LXk6IGF1dG87IH1cblxuaW5wdXRbdHlwZT1maWxlXSB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLW1vei1hcHBlYXJhbmNlOiBub25lOyBhcHBlYXJhbmNlOiBub25lOyBiYWNrZ3JvdW5kOiAjZDVkZWU2OyBjdXJzb3I6IHRleHQ7IGxpbmUtaGVpZ2h0OiAxOyBwYWRkaW5nOiAxMHB4IDE1cHg7IH1cblxuaW5wdXRbdHlwZT1cImltYWdlXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IGF1dG87IGhlaWdodDogYXV0bzsgcGFkZGluZzogMDsgbWFyZ2luLWJvdHRvbTogLjI5NDExNzY0N2VtOyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuaW5wdXRbdHlwZT1cImhpZGRlblwiXSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgZGlzcGxheTogbm9uZTsgfVxuXG5pbnB1dDpmb2N1cywgdGV4dGFyZWE6Zm9jdXMgeyBib3JkZXItY29sb3I6ICM4ZmE4Y2I7IGJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDJweCAjOGZhOGNiOyBvdXRsaW5lOiAwOyBvdXRsaW5lOiB0aGluIGRvdHRlZCBcXDk7IH1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cywgc2VsZWN0OmZvY3VzIHsgYm9yZGVyLWNvbG9yOiAjOGZhOGNiOyBib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAycHggIzhmYThjYjsgb3V0bGluZTogMDsgb3V0bGluZTogdGhpbiBkb3R0ZWQgXFw5OyB9XG5cbmJ1dHRvbi5idG4tLXN1Ym1pdCB7IG1hcmdpbi1ib3R0b206IDA7IG1hcmdpbi1sZWZ0OiAwOyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIFdlYktpdCwgQmxpbmssIEVkZ2UgKi8gY29sb3I6ICMxNDE0MTQ7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG46LW1vei1wbGFjZWhvbGRlciB7IC8qIE1vemlsbGEgRmlyZWZveCA0IHRvIDE4ICovIGNvbG9yOiAjMTQxNDE0OyBvcGFjaXR5OiAxOyBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuOjotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDE5KyAqLyBjb2xvcjogIzE0MTQxNDsgb3BhY2l0eTogMTsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMC0xMSAqLyBjb2xvcjogIzE0MTQxNDsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbjpwbGFjZWhvbGRlci1zaG93biB7IC8qIFN0YW5kYXJkIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQvI3BsYWNlaG9sZGVyKSAqLyBjb2xvcjogIzE0MTQxNDsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDdXN0b20gU2VsZWN0IGJveGVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY3VzdG9tLXNlbGVjdCB7IHBhZGRpbmc6IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgaGVpZ2h0OiA0MHB4OyBtYXJnaW46IDA7IGRpc3BsYXk6IGJsb2NrOyBiYWNrZ3JvdW5kOiAjOGZhOGNiOyBjb2xvcjogI2ZmZjsgfVxuXG4uY3VzdG9tLXNlbGVjdDphZnRlciB7IGNvbnRlbnQ6IFwi74SLXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uY3VzdG9tLXNlbGVjdDo6YWZ0ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwcHg7IHRvcDogMDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IHBvaW50ZXItZXZlbnRzOiBub25lOyBsaW5lLWhlaWdodDogNDBweDsgd2lkdGg6IDQwcHg7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY3VzdG9tLXNlbGVjdCBzZWxlY3QgeyBhcHBlYXJhbmNlOiBub25lOyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBiYWNrZ3JvdW5kOiBub25lOyBjb2xvcjogI2ZmZjsgcGFkZGluZy1yaWdodDogNDBweDsgfVxuXG4uY3VzdG9tLXNlbGVjdCBzZWxlY3Qgb3B0aW9uIHsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmN1c3RvbS1zZWxlY3Qgc2VsZWN0OjotbXMtZXhwYW5kIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ucG93ZXJtYWlsX2ZpZWxkc2V0IC5jdXN0b20tc2VsZWN0LCAudG9vbGJhciAuc29ydCAuY3VzdG9tLXNlbGVjdCwgLmN1c3RvbS1zZWxlY3QtLWxpZ2h0IHsgYmFja2dyb3VuZDogI2VhZWVmMjsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLnBvd2VybWFpbF9maWVsZHNldCAuY3VzdG9tLXNlbGVjdCBzZWxlY3QsIC50b29sYmFyIC5zb3J0IC5jdXN0b20tc2VsZWN0IHNlbGVjdCwgLmN1c3RvbS1zZWxlY3QtLWxpZ2h0IHNlbGVjdCB7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5wb3dlcm1haWxfZmllbGRzZXQgLmN1c3RvbS1zZWxlY3Q6OmFmdGVyLCAudG9vbGJhciAuc29ydCAuY3VzdG9tLXNlbGVjdDo6YWZ0ZXIsIC5jdXN0b20tc2VsZWN0LS1saWdodDo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyB9XG5cbi5pZTkgLmN1c3RvbS1zZWxlY3Q6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uaWU5IC5jdXN0b20tc2VsZWN0IHNlbGVjdCB7IHBhZGRpbmctcmlnaHQ6IDA7IHdpZHRoOiAxMjAlOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDdXN0b20gY2hlY2tib3hlZCBhbmQgcmFkaW8gYnV0dG9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvd2VybWFpbF9yYWRpb19pbm5lciwgLnBvd2VybWFpbF9yYWRpb19pbm5lciBsYWJlbCwgLnBvd2VybWFpbF9jaGVja19pbm5lciwgLnBvd2VybWFpbF9jaGVja19pbm5lciBsYWJlbCwgLmZpZWxkLS1jaGVja2JveCwgLmZpbHRlcnMgbGFiZWwsIC5maWVsZC0tY2hlY2tib3ggc3Bhbi5sYWJlbCwgLmZpbHRlcnMgbGFiZWwgc3Bhbi5sYWJlbCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1sZWZ0OiAyMnB4OyB9XG5cbi5wb3dlcm1haWxfcmFkaW9faW5uZXIsIC5wb3dlcm1haWxfY2hlY2tfaW5uZXIsIC5maWVsZC0tY2hlY2tib3gsIC5maWx0ZXJzIGxhYmVsIHsgcGFkZGluZy1sZWZ0OiAwOyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDE2cHg7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmZpZWxkLS1jaGVja2JveCBzcGFuLmxhYmVsOjpiZWZvcmUsIC5maWx0ZXJzIGxhYmVsIHNwYW4ubGFiZWw6OmJlZm9yZSwgLnBvd2VybWFpbF9jaGVja19pbm5lciBsYWJlbDo6YmVmb3JlIHsgYm94LXNoYWRvdzogaW5zZXQgMXB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5wb3dlcm1haWxfcmFkaW9faW5uZXIgbGFiZWw6OmJlZm9yZSwgLnBvd2VybWFpbF9jaGVja19pbm5lciBsYWJlbDo6YmVmb3JlLCAuZmllbGQtLWNoZWNrYm94IHNwYW4ubGFiZWw6OmJlZm9yZSwgLmZpbHRlcnMgbGFiZWwgc3Bhbi5sYWJlbDo6YmVmb3JlIHsgZGlzcGxheTogYmxvY2s7IGNvbnRlbnQ6ICcnOyB3aWR0aDogMTNweDsgaGVpZ2h0OiAxM3B4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBwb3NpdGlvbjogYWJzb2x1dGU7IGNvbG9yOiAjMTQxNDE0OyBsaW5lLWhlaWdodDogMTNweDsgZm9udC1zaXplOiA5cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC02cHg7IGxlZnQ6IDA7IC8qIFx0XHQgICAgdG9wOiAwOyAgKi8gfVxuXG4ucG93ZXJtYWlsX2NoZWNrX2lubmVyIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5maWVsZC0tY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5sYWJlbDpiZWZvcmUsIC5maWx0ZXJzIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAubGFiZWw6YmVmb3JlIHsgY29udGVudDogXCLvhKBcIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5wb3dlcm1haWxfY2hlY2tfaW5uZXIgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUsIC5maWVsZC0tY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5sYWJlbDo6YmVmb3JlLCAuZmlsdGVycyBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmxhYmVsOjpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNzE5OyB9XG5cbi5wb3dlcm1haWxfcmFkaW9faW5uZXIgaW5wdXRbdHlwZT1yYWRpb10sIC5wb3dlcm1haWxfY2hlY2tfaW5uZXIgaW5wdXRbdHlwZT1jaGVja2JveF0sIC5maWVsZC0tY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0sIC5maWx0ZXJzIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdIHsgb3BhY2l0eTogMDsgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jazsgbGVmdDogLTk5OTlweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVFlQTzMgUE9XRVIgTUFJTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvd2VybWFpbF9maWVsZHdyYXBfdHlwZV9zdWJtaXQgeyBtYXJnaW4tdG9wOiA0MHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnBvd2VybWFpbF9maWVsZHdyYXBfdHlwZV9zdWJtaXQgaW5wdXRbdHlwZT1zdWJtaXRdIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogYXV0bzsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBhcHBlYXJhbmNlOiBub25lOyBmb250LXNpemU6IDFlbTsgY3Vyc29yOiBwb2ludGVyOyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IHBhZGRpbmc6IDAgNXB4OyB9XG5cbi5wb3dlcm1haWxfZmllbGR3cmFwX3R5cGVfc3VibWl0IGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7IGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnBvd2VybWFpbF9sZWdlbmQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5OXB4OyB9XG5cbmxhYmVsW2NsYXNzKj1cImZpZWxkLS1cIl0sIC5wb3dlcm1haWxfZmllbGR3cmFwIHsgbWFyZ2luLWJvdHRvbTogOHB4OyBkaXNwbGF5OiBibG9jazsgfVxuXG4ubGFiZWwtLXN0cm9uZywgLnBvd2VybWFpbF9sYWJlbCB7IGZvbnQtd2VpZ2h0OiBib2xkOyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4ucG93ZXJtYWlsX3JhZGlvX2lubmVyIGxhYmVsLCAucG93ZXJtYWlsX2NoZWNrX2lubmVyIGxhYmVsIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyB9XG5cbi5wb3dlcm1haWxfcmFkaW9faW5uZXIgbGFiZWw6OmJlZm9yZSwgLnBvd2VybWFpbF9jaGVja19pbm5lciBsYWJlbDo6YmVmb3JlIHsgdG9wOiAzcHg7IH1cblxuLnBvd2VybWFpbF9yYWRpb19pbm5lciBsYWJlbDo6YmVmb3JlIHsgYm9yZGVyLXJhZGl1czogMTJweDsgfVxuXG4ucG93ZXJtYWlsX3JhZGlvX2lubmVyIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgfVxuXG4ucG93ZXJtYWlsX2ZpZWxkc2V0IC5jdXN0b20tc2VsZWN0IHsgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ucG93ZXJtYWlsX2ZpZWxkc2V0IC5jdXN0b20tc2VsZWN0OjphZnRlciB7IGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLyogLS0tLS0tLSBFUlJPUiBIQU5ERUxJTkcgLS0tLS0tLS0tLSAqL1xuLnBhcnNsZXktZXJyb3JzLWxpc3QgeyBsaXN0LXN0eWxlOiBub25lOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4ucGFyc2xleS1jdXN0b20tZXJyb3ItbWVzc2FnZSB7IGxpc3Qtc3R5bGU6IG5vbmU7IGZvbnQtc2l6ZTogMC44ZW07IGNvbG9yOiByZWQ7IGRpc3BsYXk6IGJsb2NrOyBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQT1BVUCBTVUJTQ1JJQkUgRk9STSBTb21lIHNpbXBsZSBkZXNpZ24gdHdlYWtzIGZvciB0aGlzIGZvcm0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zdWJzY3JpYmUtcG9wdXAgZm9ybSBmaWVsZHNldCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnN1YnNjcmliZS1wb3B1cCAubGFiZWwtLXN0cm9uZyB7IG1hcmdpbi1ib3R0b206IDEycHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNJTVBMRSBJTkxJTkUgRk9STSBKdXN0IG9uZSBpbnB1dCBhbmQgYSBpbmxpbmUgYnV0dG9uLCB1c2VkIGZvciBzZWFyY2gsIGZpbHRlcmluZyBpbnB1dHMgYW5kIGRpcmVjdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mb3JtLS1kaXJlY3Rpb25zLCAuc2VhcmNoLWZvcm0geyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZvcm0tLWRpcmVjdGlvbnMgaW5wdXQsIC5zZWFyY2gtZm9ybSBpbnB1dCB7IGNvbG9yOiAjMTQxNDE0OyBwYWRkaW5nLXJpZ2h0OiA1MHB4OyB9XG5cbi5mb3JtLS1kaXJlY3Rpb25zIGlucHV0OjotbXMtY2xlYXIsIC5zZWFyY2gtZm9ybSBpbnB1dDo6LW1zLWNsZWFyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9ybS0tZGlyZWN0aW9ucyBidXR0b24sIC5zZWFyY2gtZm9ybSBidXR0b24geyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDA7IGJhY2tncm91bmQ6IG5vbmU7IGNvbG9yOiAjMTQxNDE0OyB3aWR0aDogNDBweDsgcGFkZGluZzogMDsgbWFyZ2luLWJvdHRvbTogMDsgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4uZm9ybS0tZGlyZWN0aW9ucyBidXR0b246YmVmb3JlLCAuc2VhcmNoLWZvcm0gYnV0dG9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SHXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uZm9ybS0tZGlyZWN0aW9ucyBidXR0b24uYnRuLS1yZXNldDpiZWZvcmUsIC5zZWFyY2gtZm9ybSBidXR0b24uYnRuLS1yZXNldDpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyB9XG5cbi5mb3JtLS1kaXJlY3Rpb25zIGJ1dHRvbjpmb2N1cywgLnNlYXJjaC1mb3JtIGJ1dHRvbjpmb2N1cyB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IGNvbG9yOiAjZmZmOyB9XG5cbi5jb21wYWN0LmZvcm0tLWRpcmVjdGlvbnMsIC5zZWFyY2gtZm9ybS5jb21wYWN0IHsgd2lkdGg6IDQwcHg7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IGZsb2F0OiBsZWZ0OyB9XG5cbi5jb21wYWN0LmZvcm0tLWRpcmVjdGlvbnMgaW5wdXQsIC5zZWFyY2gtZm9ybS5jb21wYWN0IGlucHV0IHsgZGlzcGxheTogbm9uZTsgfVxuXG4uY29tcGFjdC5mb3JtLS1kaXJlY3Rpb25zIGJ1dHRvbiwgLnNlYXJjaC1mb3JtLmNvbXBhY3QgYnV0dG9uIHsgY29sb3I6ICNmZmY7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZm9ybS0tZGlyZWN0aW9ucyBidXR0b24sIC5zZWFyY2gtZm9ybS1ibHVlIGJ1dHRvbiB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IGNvbG9yOiAjZmZmOyB9XG5cbi5mb3JtLS1kaXJlY3Rpb25zIGJ1dHRvbjpob3ZlciwgLmZvcm0tLWRpcmVjdGlvbnMgYnV0dG9uOmZvY3VzLCAuc2VhcmNoLWZvcm0tYmx1ZSBidXR0b246aG92ZXIsIC5zZWFyY2gtZm9ybS1ibHVlIGJ1dHRvbjpmb2N1cyB7IGJhY2tncm91bmQ6ICMxMTI5NGU7IH1cblxuLnNlYXJjaC1mb3JtIGJ1dHRvbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLnNlYXJjaC1mb3JtIGJ1dHRvbi5hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4qIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5odG1sIHsgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbi5jb250YWluZXIsIC5wYWdlLXNlY3Rpb24gLm51bWJlcnMtY250LCAuY29va2llLW5vdGljZVtkYXRhLWNvb2tpZS1ub3RpY2U9XCJiYXJcIl0gLmNuLWJveCwgLnRvb2xiYXIsIC5maWx0ZXItc2VsZWN0aW9uLWNudCwgLmNvbGxhcHNlLWNudCwgLm92ZXJ2aWV3LCAuZmlsdGVyLW5hdmlnYXRpb24sIC5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyAudG9vbGJhci0tZm9vdGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAwIDIwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb250YWluZXIsIC5wYWdlLXNlY3Rpb24gLm51bWJlcnMtY250LCAuY29va2llLW5vdGljZVtkYXRhLWNvb2tpZS1ub3RpY2U9XCJiYXJcIl0gLmNuLWJveCwgLnRvb2xiYXIsIC5maWx0ZXItc2VsZWN0aW9uLWNudCwgLmNvbGxhcHNlLWNudCwgLm92ZXJ2aWV3LCAuZmlsdGVyLW5hdmlnYXRpb24sIC5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyAudG9vbGJhci0tZm9vdGVyIHsgcGFkZGluZzogMCA0MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuY29udGFpbmVyLCAucGFnZS1zZWN0aW9uIC5udW1iZXJzLWNudCwgLmNvb2tpZS1ub3RpY2VbZGF0YS1jb29raWUtbm90aWNlPVwiYmFyXCJdIC5jbi1ib3gsIC50b29sYmFyLCAuZmlsdGVyLXNlbGVjdGlvbi1jbnQsIC5jb2xsYXBzZS1jbnQsIC5vdmVydmlldywgLmZpbHRlci1uYXZpZ2F0aW9uLCAuc2VjdGlvbi0tc2VhcmNoLXJlc3VsdHMgLnRvb2xiYXItLWZvb3RlciB7IHBhZGRpbmc6IDAgNHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAuY29udGFpbmVyLCAucGFnZS1zZWN0aW9uIC5udW1iZXJzLWNudCwgLmNvb2tpZS1ub3RpY2VbZGF0YS1jb29raWUtbm90aWNlPVwiYmFyXCJdIC5jbi1ib3gsIC50b29sYmFyLCAuZmlsdGVyLXNlbGVjdGlvbi1jbnQsIC5jb2xsYXBzZS1jbnQsIC5vdmVydmlldywgLmZpbHRlci1uYXZpZ2F0aW9uLCAuc2VjdGlvbi0tc2VhcmNoLXJlc3VsdHMgLnRvb2xiYXItLWZvb3RlciB7IHBhZGRpbmc6IDAgOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAuY29udGFpbmVyLCAucGFnZS1zZWN0aW9uIC5udW1iZXJzLWNudCwgLmNvb2tpZS1ub3RpY2VbZGF0YS1jb29raWUtbm90aWNlPVwiYmFyXCJdIC5jbi1ib3gsIC50b29sYmFyLCAuZmlsdGVyLXNlbGVjdGlvbi1jbnQsIC5jb2xsYXBzZS1jbnQsIC5vdmVydmlldywgLmZpbHRlci1uYXZpZ2F0aW9uLCAuc2VjdGlvbi0tc2VhcmNoLXJlc3VsdHMgLnRvb2xiYXItLWZvb3RlciB7IHBhZGRpbmc6IDAgMTV2dzsgfSB9XG5cbi5jb250YWluZXI6YWZ0ZXIsIC5wYWdlLXNlY3Rpb24gLm51bWJlcnMtY250OmFmdGVyLCAuY29va2llLW5vdGljZVtkYXRhLWNvb2tpZS1ub3RpY2U9XCJiYXJcIl0gLmNuLWJveDphZnRlciwgLnRvb2xiYXI6YWZ0ZXIsIC5maWx0ZXItc2VsZWN0aW9uLWNudDphZnRlciwgLmNvbGxhcHNlLWNudDphZnRlciwgLm92ZXJ2aWV3OmFmdGVyLCAuZmlsdGVyLW5hdmlnYXRpb246YWZ0ZXIsIC5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyAudG9vbGJhci0tZm9vdGVyOmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9XG5cbi5jb250YWluZXIsIC5wYWdlLXNlY3Rpb24gLm51bWJlcnMtY250IHsgbWFyZ2luOiAwOyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmNvbnRhaW5lci5jb21wYWN0LCAucGFnZS1zZWN0aW9uIC5jb21wYWN0Lm51bWJlcnMtY250IHsgbWFyZ2luOiAwIGF1dG87IG1heC13aWR0aDogODAwcHg7IHBhZGRpbmc6IDA7IH0gfVxuXG4uY2xlYXIgeyBjbGVhcjogYm90aDsgfVxuXG4ucGFnZSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsgfVxuXG4ucHJldmlldyB7IGJhY2tncm91bmQtY29sb3I6IHJlZDsgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDsgcGFkZGluZzogMTBweDsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogNTBweDsgd2lkdGg6IDkwcHg7IHotaW5kZXg6IDk5OTk5OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQQUdFIEhFQURFUiBHZW5lcmFsbHkgYWx3YXlzIGxhcmdlIGJhY2tncm91bmQgaW1hZ2UgYW5kIGEgdGl0bGUgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnZS1oZWFkZXIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBUeXBvZ3JhcGh5IGV0Yy4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEFsdGVybmF0aXZlIHZlcnNpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIH1cblxuLnBhZ2UtaGVhZGVyLWNudCB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGhlaWdodDogYXV0bzsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAucGFnZS1oZWFkZXItY250IHsgbWluLWhlaWdodDogNDUwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5wYWdlLWhlYWRlci1jbnQgeyBtaW4taGVpZ2h0OiA1NDBweDsgfSB9XG5cbi5wYWdlLWhlYWRlciAuY29udGFpbmVyIHsgcGFkZGluZy1ib3R0b206IDIwcHg7IHBhZGRpbmctdG9wOiA0MHB4OyB6LWluZGV4OiAxOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAucGFnZS1oZWFkZXIgLmNvbnRhaW5lciB7IGJvdHRvbTogMDsgcGFkZGluZy1ib3R0b206IDQwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtLWNtcyAucGFnZS1oZWFkZXIgLmNvbnRhaW5lciB7IHBhZGRpbmctbGVmdDogMTJ2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLnBhZ2UtLWNtcyAucGFnZS1oZWFkZXIgLmNvbnRhaW5lciB7IHBhZGRpbmctbGVmdDogMjR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLnBhZ2UtLWNtcyAucGFnZS1oZWFkZXIgLmNvbnRhaW5lciB7IHBhZGRpbmctbGVmdDogMzB2dzsgfSB9XG5cbi5wYWdlLWhlYWRlciBoMSB7IGNvbG9yOiAjZmZmOyBmb250LXNpemU6IDIuNWVtOyBoeXBoZW5zOiBhdXRvOyBtYXJnaW4tYm90dG9tOiAwcHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7IC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGw7IHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuXG4ucGFnZS1oZWFkZXIgaDE6OmJlZm9yZSB7IGJhY2tncm91bmQ6ICNmZmY7IGhlaWdodDogMTBweDsgdG9wOiAtMjBweDsgd2lkdGg6IDYwJTsgfVxuXG4ucGFnZS1oZWFkZXIgaDEgYnIgeyBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAucGFnZS1oZWFkZXIgaDEgeyBmb250LXNpemU6IDMuODg4ODg4ODg4OWVtOyBoeXBoZW5zOiBub25lOyBsaW5lLWhlaWdodDogMC45NzE0Mjg1NzE0ZW07IHBhZGRpbmctdG9wOiAyOHB4OyAtbXMtd29yZC1icmVhazogbm9ybWFsOyB9XG4gIC5wYWdlLWhlYWRlciBoMTo6YmVmb3JlIHsgd2lkdGg6IDI2MHB4OyB9XG4gIC5wYWdlLS1kZXRhaWwgLnBhZ2UtaGVhZGVyIGgxIHsgZm9udC1zaXplOiAzLjMzMzMzMzMzMzNlbTsgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTsgbGluZS1oZWlnaHQ6IDAuOTY3NzQxOTM1NWVtOyB9XG4gIC5wYWdlLWhlYWRlciBoMSBiciB7IGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIChtaW4taGVpZ2h0OiA3MDBweCkgeyAucGFnZS1oZWFkZXIgaDEgeyBmb250LXNpemU6IDQuNDQ0NDQ0NDQ0NGVtOyBsaW5lLWhlaWdodDogMC45NzVlbTsgfVxuICAucGFnZS1oZWFkZXIgaDE6OmJlZm9yZSB7IGhlaWdodDogMTRweDsgdG9wOiAtMjdweDsgfSB9XG5cbi5wYWdlLWhlYWRlciAuc3VidGl0bGUgeyBjb2xvcjogI2ZmZjsgZGlzcGxheTogYmxvY2s7IGZvbnQtc2l6ZTogMS4yMjIyMjIyMjIyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyBsaW5lLWhlaWdodDogMWVtOyBtYXJnaW4tYm90dG9tOiAzMHB4OyBtYXJnaW4tdG9wOiAzMHB4OyBtYXgtd2lkdGg6IDYwMHB4OyBwYWRkaW5nLXRvcDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2UtaGVhZGVyIC5zdWJ0aXRsZSB7IGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzZW07IGxpbmUtaGVpZ2h0OiAxLjA1NTU1NTU1NTZlbTsgfSB9XG5cbkBtZWRpYSAobWluLWhlaWdodDogNzAwcHgpIHsgLnBhZ2UtaGVhZGVyIC5zdWJ0aXRsZSB7IGZvbnQtc2l6ZTogMS43Nzc3Nzc3Nzc4ZW07IGxpbmUtaGVpZ2h0OiAxLjExMTExMTExMTFlbTsgfSB9XG5cbi5wYWdlLWhlYWRlciBhLmJ0bi0tbGluayB7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUgLnBhZ2UtaGVhZGVyLWNudCB7IGhlaWdodDogYXV0bzsgfVxuXG4ucGFnZS1oZWFkZXIuaGVhZGVyLS1ob21lIC5wYWdlLWhlYWRlci1jbnQudmlkZW8tYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUgLnBhZ2UtaGVhZGVyLWNudCB7IGhlaWdodDogNTUwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUgLnBhZ2UtaGVhZGVyLWNudCB7IGhlaWdodDogY2FsYygxMDB2aCAtIDE2MHB4KTsgfSB9XG5cbi5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUgLnJlc3BvbnNpdmUtZW1iZWQgeyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDA7IG9wYWNpdHk6IDA7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IHZpc2liaWxpdHk6IGhpZGRlbjsgd2lkdGg6IDEwMCU7IHotaW5kZXg6IDE7IH1cblxuLnBhZ2UtaGVhZGVyLmhlYWRlci0taG9tZSAucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyB7IGxlZnQ6IDUwJTsgbWF4LXdpZHRoOiBub25lOyBtaW4taGVpZ2h0OiAxMDAlOyBtaW4td2lkdGg6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUuaXMtcGxheWluZyAucmVzcG9uc2l2ZS1lbWJlZCB7IG9wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLnBhZ2UtaGVhZGVyLmhlYWRlci0taG9tZSAuYnRuLS1zY3JvbGwgeyBib3R0b206IDA7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiAtMjBweDsgbWFyZ2luLXRvcDogNDBweDsgd2lkdGg6IDEyMHB4OyByaWdodDogMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2UtaGVhZGVyLmhlYWRlci0taG9tZSAuYnRuLS1zY3JvbGwgeyByaWdodDogNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtaGVhZGVyLmhlYWRlci0taG9tZSAuYnRuLS1zY3JvbGwgeyByaWdodDogNHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAucGFnZS1oZWFkZXIuaGVhZGVyLS1ob21lIC5idG4tLXNjcm9sbCB7IHJpZ2h0OiA4dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUgLmJ0bi0tc2Nyb2xsIHsgcmlnaHQ6IDE1dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2UtaGVhZGVyLmhlYWRlci0taG9tZSAuYnRuLS1zY3JvbGwgeyBtYXJnaW46IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbi5wYWdlLWhlYWRlci5oZWFkZXItLWhvbWUgLmJ0bi0tdmlkZW8geyBib3R0b206IDIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDIwcHg7IHotaW5kZXg6IDUwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAucGFnZS1oZWFkZXIuaGVhZGVyLS1ob21lIC5idG4tLXZpZGVvIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5wYWdlLWhlYWRlci5oZWFkZXItLXNlYXJjaCAucGFnZS1oZWFkZXItY250IHsgaGVpZ2h0OiBhdXRvOyBtaW4taGVpZ2h0OiAxMDBweDsgfVxuXG4ucGFnZS1oZWFkZXIuaGVhZGVyLS1zZWFyY2ggLmNvbnRhaW5lciB7IHBhZGRpbmctYm90dG9tOiA0MHB4OyBwYWRkaW5nLXRvcDogNDBweDsgcG9zaXRpb246IHN0YXRpYzsgei1pbmRleDogMjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2UtaGVhZGVyLmhlYWRlci0tc2VhcmNoIC5jb250YWluZXIgeyBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IHBhZGRpbmctdG9wOiAxMDBweDsgfSB9XG5cbi5wYWdlLWhlYWRlci5oZWFkZXItLW92ZXJsYXkgLnBhZ2UtaGVhZGVyLWNudDo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyMiwgNDksIDkxLCAwLjQ1KSAwJSwgcmdiYSgyMiwgNDksIDkxLCAwKSAxMDAlKTsgLyogRkYzLjYtMTUgKi8gYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjIsIDQ5LCA5MSwgMC40NSkgMCUsIHJnYmEoMjIsIDQ5LCA5MSwgMCkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyMiwgNDksIDkxLCAwLjQ1KSAwJSwgcmdiYSgyMiwgNDksIDkxLCAwKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovIGNvbnRlbnQ6ICcnOyBkaXNwbGF5OiBibG9jazsgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJGRhcmstYmx1ZScsIGVuZENvbG9yc3RyPSckZGFyay1ibHVlJywgR3JhZGllbnRUeXBlPTEpOyAvKiBJRTYtOSBmYWxsYmFjayBvbiBob3Jpem9udGFsIGdyYWRpZW50ICovIGhlaWdodDogMTAwJTsgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzFlNTc5OSswLDdkYjllOCsxMDAmMSswLDArMTAwO0JsdWUrdG8rVHJhbnNwYXJlbnQgKi8gbGVmdDogMDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHdpZHRoOiAxMDAlOyB9XG5cbiN2aWRlb2xvYWRlciB7IGJhY2tncm91bmQ6ICNmZmY3MTk7IGhlaWdodDogMTBweDsgbGVmdDogMDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHdpZHRoOiAwOyB6LWluZGV4OiAxOyB9XG5cbiN2aWRlb2xvYWRlci5pcy1kb25lIHsgb3BhY2l0eTogMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUEFHRSBDT05URU5UIEVMRU1FTlQgU2ltcGxlIHRleHQgdHlwZSBhcmVhIHVzZWQgYWNyb3NzIHRoZSBzaXRlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnZS1jb250ZW50LCAucGFnZS1pbnRybyB7IHBhZGRpbmc6IDIwcHg7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG4ucGFnZS1jb250ZW50LnBhZ2UtaW50cm8sIC5wYWdlLWludHJvLnBhZ2UtaW50cm8geyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAucGFnZS1jb250ZW50LCAucGFnZS1pbnRybyB7IHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8geyBwYWRkaW5nLWxlZnQ6IDR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8geyBwYWRkaW5nLWxlZnQ6IDh2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8geyBwYWRkaW5nLWxlZnQ6IDE1dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8geyBwYWRkaW5nLWJvdHRvbTogNDBweDsgcGFkZGluZy1yaWdodDogNDBweDsgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5wYWdlLWNvbnRlbnQsIC5wYWdlLWludHJvIHsgd2lkdGg6IDY1JTsgfVxuICAucGFnZS0tY21zIC5wYWdlLWNvbnRlbnQsIC5wYWdlLS1jbXMgLnBhZ2UtaW50cm8geyBwYWRkaW5nLWxlZnQ6IDEydnc7IHdpZHRoOiA3NSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5wYWdlLS1jbXMgLnBhZ2UtY29udGVudCwgLnBhZ2UtLWNtcyAucGFnZS1pbnRybyB7IHBhZGRpbmctbGVmdDogMjR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLnBhZ2UtLWNtcyAucGFnZS1jb250ZW50LCAucGFnZS0tY21zIC5wYWdlLWludHJvIHsgcGFkZGluZy1sZWZ0OiAzMHZ3OyB9IH1cblxuQG1lZGlhIHByaW50IHsgLnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8geyBwYWRkaW5nOiAwOyB9XG4gIC5wYWdlLWNvbnRlbnQucGFnZS1pbnRybywgLnBhZ2UtaW50cm8ucGFnZS1pbnRybyB7IHBhZGRpbmctYm90dG9tOiAxY207IH0gfVxuXG4ucGFnZS1jb250ZW50Om5vdCgucGFnZS1pbnRybykgKyAucGFnZS1jb250ZW50IHsgcGFkZGluZy10b3A6IDA7IH1cblxuLm5vLXNpZGViYXIgeyBwYWRkaW5nOiAyNHB4IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5uby1zaWRlYmFyIHsgcGFkZGluZzogNDBweCAwOyB9IH1cblxuLm5vLXNpZGViYXIgLnBhZ2UtY29udGVudCB7IHBhZGRpbmc6IDAgMjBweDsgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5uby1zaWRlYmFyIC5wYWdlLWNvbnRlbnQgeyBwYWRkaW5nOiAwIDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5uby1zaWRlYmFyIC5wYWdlLWNvbnRlbnQgeyBwYWRkaW5nOiAwIDR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLm5vLXNpZGViYXIgLnBhZ2UtY29udGVudCB7IHBhZGRpbmc6IDAgOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAubm8tc2lkZWJhciAucGFnZS1jb250ZW50IHsgcGFkZGluZzogMCAxNXZ3OyB9IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFBBR0UgQVNJREUgRUxFTUVOVCBBcyB1c2VkIG9uIHRoZSBwcm9qZWN0IGRldGFpbCBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnZS1hc2lkZSB7IHBhZGRpbmc6IDIwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtYXNpZGUgLndpZGdldDpub3QoLndpZGdldC0tdHJhbnNsYXRlKSB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyB9XG4gIC5wYWdlLWFzaWRlIC53aWRnZXQtLW1hcCArIC53aWRnZXQgeyBtYXJnaW4tbGVmdDogNDBweDsgfVxuICAucGFnZS1hc2lkZSAud2lkZ2V0Omxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWdlLWFzaWRlOmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAucGFnZS1hc2lkZSB7IHBhZGRpbmc6IDQwcHg7IHBhZGRpbmctcmlnaHQ6IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDA7IHRvcDogNDUwcHg7IHdpZHRoOiAzNSU7IH1cbiAgLnBhZ2UtYXNpZGUgLndpZGdldCB7IG1hcmdpbi1yaWdodDogNHZ3OyB9XG4gIC5wYWdlLS1jbXMgLnBhZ2UtYXNpZGUgeyB3aWR0aDogMjUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAucGFnZS1hc2lkZSAud2lkZ2V0IHsgbWFyZ2luLXJpZ2h0OiA4dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5wYWdlLWFzaWRlIHsgdG9wOiA1NDBweDsgfVxuICAucGFnZS1hc2lkZSAud2lkZ2V0IHsgbWFyZ2luLXJpZ2h0OiAxNXZ3OyB9IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEdSSUQgU2ltcGxpZmllZCBncmlkLCB3aXRoIHRoaXJkcywgcXVhcnRlciBhbmQgaGFsZnMgY29sdW1ucy4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmNvbC1jbnQgeyBtYXJnaW4tbGVmdDogLTIwcHg7IG1hcmdpbi1yaWdodDogLTIwcHg7IHdpZHRoOiBhdXRvOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb2wtLXRoaXJkLCAuY29sLS1xdWFydCwgLmNvbC0taGFsZiB7IGZsb2F0OiBsZWZ0OyBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmNvbC0tdGhpcmQgeyB3aWR0aDogNTAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuY29sLS10aGlyZCB7IHdpZHRoOiAzMy4zMzMzJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuY29sLS1xdWFydCB7IHdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5jb2wtLXF1YXJ0IHsgd2lkdGg6IDI1JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuY29sLS1oYWxmIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5jb2wtLWhhbGYgeyB3aWR0aDogNTAlOyB9IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRFTVAgRklORCBBIEdPT0QgTE9DQVRJT04gRk9SIFRIRVNFIFNFTEVDVE9SUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNudC0tY2VudGVyZWQgeyBjbGVhcjogYm90aDsgbWFyZ2luLXRvcDogMjBweDsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuY250LS1jZW50ZXJlZCB7IG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuXG4uY250LS1jZW50ZXJlZCAuYnRuLS1saW5rIHsgbWFyZ2luOiAwOyB9XG5cbi5sb2FkaW5nIHsgb3BhY2l0eTogMDsgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDsgfVxuXG4jYmlnLXZpZGVvLXdyYXAgLnZqcy1iaWctcGxheS1idXR0b24sIC52anMtaGlkZGVuIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52anMtY29udHJvbC1iYXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbi52LWNlbnRlciB7IGhlaWdodDogYXV0bzsgbGVmdDogNTAlOyBtYXgtd2lkdGg6IDgwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRleHQtYWxpZ246IGNlbnRlcjsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpOyB3aWR0aDogOTAlOyB6LWluZGV4OiAyOyB9XG5cbiNwcmVsb2FkZXIgeyBiYWNrZ3JvdW5kOiAjZmZmOyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDA7IG9wYWNpdHk6IDE7IHBvc2l0aW9uOiBmaXhlZDsgdG9wOiAwOyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB3aWR0aDogMTAwJTsgei1pbmRleDogOTk5OTsgfVxuXG4jcHJlbG9hZGVyOjphZnRlciB7IGJhY2tncm91bmQ6IHVybCguLi9pbWcvbG9hZGVyLmdpZik7IGNvbnRlbnQ6ICcnOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAxMjBweDsgbGVmdDogNTAlOyBtYXJnaW4tbGVmdDogLTMwcHg7IG1hcmdpbi10b3A6IC02MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyB3aWR0aDogNjBweDsgfVxuXG4ubWFpbi1oZWFkZXIgeyBkaXNwbGF5OiBibG9jazsgYmFja2dyb3VuZDogI2ZmZjsgaGVpZ2h0OiA5MHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubWFpbi1oZWFkZXIgeyBwYWRkaW5nLWxlZnQ6IDR2dzsgei1pbmRleDogMTA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5tYWluLWhlYWRlciB7IHBhZGRpbmctbGVmdDogOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAubWFpbi1oZWFkZXIgeyBwYWRkaW5nLWxlZnQ6IDE1dnc7IH0gfVxuXG4ubWFpbi1oZWFkZXIgYS5sb2dvIHsgd2lkdGg6IDEzMnB4OyBkaXNwbGF5OiBibG9jazsgbWFyZ2luOiAwcHggMjBweDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5tYWluLWhlYWRlciBhLmxvZ28gaW1nIHsgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5tYWluLWhlYWRlciBhLmxvZ28geyB3aWR0aDogMTgwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5tYWluLWhlYWRlciBhLmxvZ28geyBtYXJnaW46IDA7IH0gfVxuXG4ubWFpbi1oZWFkZXIgLnNtaXQtbG9nbyB7IG1heC1oZWlnaHQ6IDkwcHg7IG1heC13aWR0aDogNzVweDsgfVxuXG4ubWFpbi1oZWFkZXIgLnNtaXQtbG9nbyBzdmcgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBtYXgtaGVpZ2h0OiA5MHB4OyB9XG5cbi5tYWluLWhlYWRlciAuYnRuLnRvZ2dsZS0tbmF2aWdhdGlvbiB7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IHBvc2l0aW9uOiBmaXhlZDsgdG9wOiAyMHB4OyByaWdodDogMjBweDsgei1pbmRleDogMjAwOyB9XG5cbi5zdWJzaXRlIC5tYWluLWhlYWRlciB7IGhlaWdodDogMTEwcHg7IH1cblxuLmJ0bi50b2dnbGUtLW5hdmlnYXRpb24geyBoZWlnaHQ6IDUwcHg7IHdpZHRoOiA1MHB4OyB9XG5cbi5idG4udG9nZ2xlLS1uYXZpZ2F0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SRXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5idG4udG9nZ2xlLS1uYXZpZ2F0aW9uIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbi50b3AtdGV4dCB7IGRpc3BsYXk6IG5vbmU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDE1MnB4OyB0b3A6IDUycHg7IGZvbnQtc2l6ZTogMjBweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1ODBweCkgeyAudG9wLXRleHQgeyBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC50b3AtdGV4dCB7IHJpZ2h0OiAxNXZ3OyBtYXJnaW4tcmlnaHQ6IC0yMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAudG9wLXRleHQgeyByaWdodDogOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAudG9wLXRleHQgeyByaWdodDogMTV2dzsgfSB9XG5cbi50b3AtdGV4dCAudG9wLWxpbmsgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi50b3AtdGV4dCAudG9wLWxpbmsgYSB7IGNvbG9yOiAjMTYzMTViOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4vKlxuLmJ0bi50b2dnbGUtLW5hdmlnYXRpb24ge1xuXHRoZWlnaHQ6IDQwcHg7IFxuXHRsaW5lLWhlaWdodDogNDBweDsgXG5cdEBpbmNsdWRlIGljb24oYmVmb3JlLGhhbWJ1cmdlci1tZW51KTtcblx0d2lkdGg6IGF1dG87IFxuXHRiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTsgXG5cdFxuXHRzcGFuIHsgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cblx0XG5cdFxufVxuKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT09URVIgIFN0eWxlcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgZm9vdGVyLCBlZy4gU2l0ZW1hcCwgQmFjayB0byB0b3AgYW5kIENvbG9mb24uICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm1haW4tZm9vdGVyIC5zaXRlbWFwIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgcGFkZGluZzogMTAwcHggMDsgfVxuXG4ubWFpbi1mb290ZXIgLnNpdGVtYXA6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiB0YWJsZTsgY2xlYXI6IGJvdGg7IH1cblxuLm1haW4tZm9vdGVyIGEuYmFjay10b3AtbGluayB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogYmxvY2s7IGJhY2tncm91bmQ6ICNjMWM5ZDA7IGhlaWdodDogNzBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBsaW5lLWhlaWdodDogNzBweDsgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMDBtcyBlYXNlLWluLW91dDsgfVxuXG4ubWFpbi1mb290ZXIgYS5iYWNrLXRvcC1saW5rIHNwYW4geyBjb2xvcjogI2ZmZjsgZm9udC1zaXplOiAxLjExMTExMTExMTFlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ubWFpbi1mb290ZXIgYS5iYWNrLXRvcC1saW5rIHNwYW46YmVmb3JlIHsgY29udGVudDogXCLvhI5cIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5tYWluLWZvb3RlciBhLmJhY2stdG9wLWxpbmsgc3Bhbjo6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IC0yMnB4OyB3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyBsZWZ0OiAwOyBmb250LXNpemU6IDAuNzIyMjIyMjIyMmVtOyB0cmFuc2l0aW9uOiB0b3AgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLm1haW4tZm9vdGVyIGEuYmFjay10b3AtbGluazo6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDkwcHg7IGhlaWdodDogMjBweDsgYmFja2dyb3VuZDogI2MxYzlkMDsgY29udGVudDogJyc7IHRvcDogLTEwcHg7IGxlZnQ6IDUwJTsgbWFyZ2luLWxlZnQ6IC00NXB4OyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDIwMG1zIGVhc2UtaW4tb3V0LCB0b3AgMjAwbXMgZWFzZS1pbi1vdXQ7IHotaW5kZXg6IDE7IH1cblxuLm1haW4tZm9vdGVyIGEuYmFjay10b3AtbGluazpmb2N1cywgLm1haW4tZm9vdGVyIGEuYmFjay10b3AtbGluazpob3ZlciB7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubWFpbi1mb290ZXIgYS5iYWNrLXRvcC1saW5rOmZvY3VzOjpiZWZvcmUsIC5tYWluLWZvb3RlciBhLmJhY2stdG9wLWxpbms6aG92ZXI6OmJlZm9yZSB7IHRvcDogLTIwcHg7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IH1cblxuLm1haW4tZm9vdGVyIGEuYmFjay10b3AtbGluazpmb2N1cyBzcGFuOjpiZWZvcmUsIC5tYWluLWZvb3RlciBhLmJhY2stdG9wLWxpbms6aG92ZXIgc3Bhbjo6YmVmb3JlIHsgdG9wOiAtMzJweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU2l0ZW1hcCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGVtYXAgeyBjb2xvcjogI2ZmZjsgfVxuXG4uc2l0ZW1hcCAuaGVhZGluZy0tc2VjdGlvbiB7IHBhZGRpbmctdG9wOiAxOHB4OyB9XG5cbi5zaXRlbWFwIC5oZWFkaW5nLS1zZWN0aW9uOjpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjZmZmOyB3aWR0aDogMTMwcHg7IGhlaWdodDogN3B4OyB0b3A6IC0xOHB4OyB9XG5cbi5zaXRlbWFwIC5jb2wtLW90aGVyOmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2l0ZW1hcCAuY29sLS1vdGhlciB1bCB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHsgLnNpdGVtYXAgLmNvbC0tb3RoZXIgeyBtYXJnaW4tbGVmdDogLTIwcHg7IG1hcmdpbi1yaWdodDogLTIwcHg7IHdpZHRoOiBhdXRvOyBjbGVhcjogYm90aDsgZmxvYXQ6IG5vbmU7IH1cbiAgLnNpdGVtYXAgLmNvbC0tb3RoZXIgLmhlYWRpbmctLXNlY3Rpb24geyBtYXJnaW4tbGVmdDogMjBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnNpdGVtYXAgLndpZGdldCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNpdGVtYXAgLmhlYWRpbmctLXNlY3Rpb24geyBmb250LXNpemU6IDEuMjIyMjIyMjIyMmVtOyB9XG4gIC5zaXRlbWFwIC5jb2wtLXVwZGF0ZSB7IGZsb2F0OiByaWdodDsgfVxuICAuc2l0ZW1hcCAuY29sLS1vdGhlciB1bDpmaXJzdC1vZi10eXBlIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5zaXRlbWFwIC5jb2wtLW90aGVyIHVsOmxhc3Qtb2YtdHlwZSB7IHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5zaXRlbWFwIC5oZWFkaW5nLS1zZWN0aW9uIHsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgfSB9XG5cbi5zaXRlbWFwIC53aWRnZXQtLXNoYXJlIHsgZGlzcGxheTogZmxleDsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uc2l0ZW1hcCAud2lkZ2V0LS1zaGFyZSAuYnRuOmZpcnN0LW9mLXR5cGUgeyBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc2l0ZW1hcCAud2lkZ2V0LS1zaGFyZSAuYnRuOmxhc3Qtb2YtdHlwZSB7IG1hcmdpbi1yaWdodDogMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ29sb2ZvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbG9mb24geyBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5jb2xvZm9uLm5hdiB7IHRleHQtYWxpZ246IGNlbnRlcjsgbWluLWhlaWdodDogNzBweDsgbWFyZ2luOiAwOyB9XG5cbi5jb2xvZm9uLm5hdiBsaSB7IGZvbnQtc2l6ZTogMC44MzMzMzMzMzMzZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb2xvZm9uLm5hdiBsaSB7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBhZGRpbmc6IDA7IH0gfVxuXG4uY29sb2Zvbi5uYXYgbGkgYTpob3ZlciB7IGNvbG9yOiAjMTYzMTViOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucG9zdENvcHlyaWdodCB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucG9zdENvcHlyaWdodCA+IC5wYWdlLWNvbnRlbnQgeyBmb250LXNpemU6IDAuODMzMzMzMzMzM2VtOyBwYWRkaW5nOiAxdmggMTR2dzsgd2lkdGg6IGF1dG87IH1cblxuLyogR2VuZXJhbCBOYXZpZ2F0aW9uIExheW91dCAqL1xuLm5hdiB7IGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbjogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLm5hdjphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfSB9XG5cbi5uYXYgbGkgeyBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5uYXYgbGkgeyBmbG9hdDogbGVmdDsgbWFyZ2luOiAwIDE1cHg7IH0gfVxuXG4ubmF2IGEgeyBjb2xvcjogIzE0MTQxNDsgfVxuXG4vKiogT2ZmY2FudmFzIG1lbnUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZG9jIHsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5tYWluLW5hdmlnYXRpb24gLm5hdi0tbWFpbiB7IG1heC1oZWlnaHQ6IDcwcHg7IH1cblxuLm1haW4tbmF2aWdhdGlvbiAubmF2LS1tYWluID4gbGkgPiBhIHsgY29sb3I6ICNmZmY7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDBweCk7IG9wYWNpdHk6IDA7IHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcyBjdWJpYy1iZXppZXIoMC41MiwgMC4wNywgMC42MSwgMS4xOSksIG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQgNDAwbXM7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubWFpbi1uYXZpZ2F0aW9uIC5uYXYtLW1haW4gPiBsaSA+IGEgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH0gfVxuXG4ubmF2LW9wZW5lZCAuZG9jIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMjBweCwgMCwgMCk7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubmF2LW9wZW5lZCAuZG9jIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbi5uYXYtb3BlbmVkIC5wYWdlOjpiZWZvcmUgeyBjb250ZW50OiAnJzsgYmFja2dyb3VuZDogcmdiYSgxNywgNDEsIDc4LCAwLjQpOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgZGlzcGxheTogYmxvY2s7IHotaW5kZXg6IDE7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubmF2LW9wZW5lZCAubmF2LS1tYWluID4gbGkgPiBhIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyBvcGFjaXR5OiAxOyB9XG5cbi5uYXYtb3BlbmVkIC5uYXYtLW1haW4gPiBsaTpudGgtY2hpbGQoMSkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG4ubmF2LW9wZW5lZCAubmF2LS1tYWluID4gbGk6bnRoLWNoaWxkKDIpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDEwbXM7IH1cblxuLm5hdi1vcGVuZWQgLm5hdi0tbWFpbiA+IGxpOm50aC1jaGlsZCgzKSA+IGEgeyB0cmFuc2l0aW9uLWRlbGF5OiAyMG1zOyB9XG5cbi5uYXYtb3BlbmVkIC5uYXYtLW1haW4gPiBsaTpudGgtY2hpbGQoNCkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMzBtczsgfVxuXG4ubmF2LW9wZW5lZCAubmF2LS1tYWluID4gbGk6bnRoLWNoaWxkKDUpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDQwbXM7IH1cblxuLm5hdi1vcGVuZWQgLm5hdi0tbWFpbiA+IGxpOm50aC1jaGlsZCg2KSA+IGEgeyB0cmFuc2l0aW9uLWRlbGF5OiA1MG1zOyB9XG5cbi8qKiBSZXNwb25zaXZlIG5hdmlnYXRpb25hbCBTdHJ1Y3R1cmUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubWFpbi1uYXZpZ2F0aW9uIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7IGhlaWdodDogMTAwdmg7IG92ZXJmbG93OiBoaWRkZW47IHdpZHRoOiAzMjBweDsgYmFja2dyb3VuZDogIzE2MzE1Yjsgei1pbmRleDogLTE7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB2aXNpYmlsaXR5OiBoaWRkZW47IHRyYW5zaXRpb246IHZpc2liaWxpdHkgMG1zIGVhc2UtaW4tb3V0IDUwMG1zOyBwYWRkaW5nLXJpZ2h0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubWFpbi1uYXZpZ2F0aW9uIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbi5uYXYtb3BlbmVkIC5tYWluLW5hdmlnYXRpb24geyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBtcyBlYXNlLWluLW91dCAwMG1zOyB9XG5cbi5tYWluLW5hdmlnYXRpb24gLm5hdi0tdG9wIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ubWFpbi1uYXZpZ2F0aW9uIC50b2dnbGUtLW5hdmlnYXRpb24geyB3aWR0aDogNjBweDsgaGVpZ2h0OiA2MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgcmlnaHQ6IDA7IHotaW5kZXg6IDIwOyBiYWNrZ3JvdW5kOiAjMTEyOTRlOyB9XG5cbi5tYWluLW5hdmlnYXRpb24gLnRvZ2dsZS0tbmF2aWdhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyB9XG5cbi5tYWluLW5hdmlnYXRpb24gLnRvZ2dsZS0tbmF2aWdhdGlvbiBzcGFuIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ubWFpbi1uYXZpZ2F0aW9uIC5zZWFyY2gtZm9ybSB7IHdpZHRoOiAyNjBweDsgbWFyZ2luLWJvdHRvbTogMDsgei1pbmRleDogMjE7IH1cblxuLm1haW4tbmF2aWdhdGlvbiAuc2VhcmNoLWZvcm0gYnV0dG9uLCAubWFpbi1uYXZpZ2F0aW9uIC5zZWFyY2gtZm9ybSBpbnB1dCB7IGhlaWdodDogNjBweDsgbGluZS1oZWlnaHQ6IDYwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubWFpbi1uYXZpZ2F0aW9uIHsgcG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDcwcHg7IHdpZHRoOiAxMDAlOyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyBvdmVyZmxvdzogdmlzaWJsZTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB6LWluZGV4OiA5OTsgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgcGFkZGluZy1yaWdodDogNHZ3OyBwYWRkaW5nLWxlZnQ6IDR2dzsgfVxuICAubWFpbi1uYXZpZ2F0aW9uIC5uYXYtY250IC5pdGVtLS10b3AgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5tYWluLW5hdmlnYXRpb24gLm5hdi0tdG9wIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IC05MHB4OyByaWdodDogNHZ3OyBwYWRkaW5nOiAwOyBkaXNwbGF5OiBibG9jazsgfVxuICAubWFpbi1uYXZpZ2F0aW9uIC5zZWFyY2gtZm9ybSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxNXB4OyByaWdodDogOHZ3OyB3aWR0aDogMjIwcHg7IHotaW5kZXg6IDI7IH1cbiAgLm1haW4tbmF2aWdhdGlvbiAuc2VhcmNoLWZvcm0gYnV0dG9uLCAubWFpbi1uYXZpZ2F0aW9uIC5zZWFyY2gtZm9ybSBpbnB1dCB7IGhlaWdodDogNDBweDsgbGluZS1oZWlnaHQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5tYWluLW5hdmlnYXRpb24geyBwYWRkaW5nLXJpZ2h0OiA4dnc7IHBhZGRpbmctbGVmdDogOHZ3OyB9XG4gIC5tYWluLW5hdmlnYXRpb24gLm5hdi0tdG9wLCAubWFpbi1uYXZpZ2F0aW9uIC5zZWFyY2gtZm9ybSB7IHJpZ2h0OiA4dnc7IH1cbiAgLm1haW4tbmF2aWdhdGlvbiAuc2VhcmNoLWZvcm0geyB3aWR0aDogMzAwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5tYWluLW5hdmlnYXRpb24geyBwYWRkaW5nLXJpZ2h0OiAxNXZ3OyBwYWRkaW5nLWxlZnQ6IDE1dnc7IH1cbiAgLm1haW4tbmF2aWdhdGlvbiAubmF2LS10b3AsIC5tYWluLW5hdmlnYXRpb24gLnNlYXJjaC1mb3JtIHsgcmlnaHQ6IDE1dnc7IH0gfVxuXG4uc3Vic2l0ZSAubWFpbi1uYXZpZ2F0aW9uIHsgYmFja2dyb3VuZC1jb2xvcjogIzhmYThjYjsgfVxuXG4ubmF2LWNudCwgLnN1Ym5hdi1jbnQsIC5uYXYtaG9sZGVyIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7IGhlaWdodDogMTAwdmg7IG92ZXJmbG93OiBoaWRkZW47IG92ZXJmbG93LXk6IGF1dG87IC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgcGFkZGluZy1ib3R0b206IDgwcHg7IHRyYW5zaXRpb246IGxlZnQgMjAwbXMgZWFzZS1pbi1vdXQsICBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDEwbXMgZWFzZS1pbi1vdXQgMjAwbXM7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubmF2LWNudCwgLnN1Ym5hdi1jbnQsIC5uYXYtaG9sZGVyIHsgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4ubmF2LWNudCB7IHBhZGRpbmctdG9wOiA3MHB4OyB0cmFuc2l0aW9uOiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLm5hdi1jbnQgeyBwYWRkaW5nLXRvcDogMDsgcG9zaXRpb246IHN0YXRpYzsgaGVpZ2h0OiBhdXRvOyBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuLnN1Ym5hdi1jbnQgeyB3aWR0aDogMTAwJTsgbGVmdDogMTAwJTsgcGFkZGluZy10b3A6IDcwcHg7IHRyYW5zaXRpb246IGxlZnQgMjAwbXMgZWFzZS1pbi1vdXQgMjAwbXMsICBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0IDIwMG1zLCB2aXNpYmlsaXR5IDUwMG1zIGVhc2UtaW4tb3V0IDAwbXM7IH1cblxuLnN1Ym5hdi1jbnQub3BlbiB7IGxlZnQ6IDA7IHRyYW5zaXRpb246IGxlZnQgMjAwbXMgZWFzZS1pbi1vdXQgMzBtcywgIG9wYWNpdHkgNTAwbXMgZWFzZS1pbi1vdXQgMG1zLCB2aXNpYmlsaXR5IDUwMG1zIGVhc2UtaW4tb3V0IDBtczsgfVxuXG4uc3VibmF2LWNudC5sZXZlbC0tMSB7IHotaW5kZXg6IDM7IGJhY2tncm91bmQ6ICMxNjMxNWI7IH1cblxuLnN1Ym5hdi1jbnQubGV2ZWwtLTIgeyB6LWluZGV4OiA0OyBiYWNrZ3JvdW5kOiAjMTEyOTRlOyB9XG5cbi5zdWJuYXYtY250LmxldmVsLS0zIHsgei1pbmRleDogNTsgYmFja2dyb3VuZDogIzExMjk0ZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zdWJuYXYtY250IHsgd2lkdGg6IGF1dG87IHBhZGRpbmctdG9wOiAwOyB9XG4gIC5uYXYtLXF1aWNrIC5idG4tLXN1Ym1lbnUgKyAuc3VibmF2LWNudCwgLm5hdi0tbWFpbiA+IGxpID4gLnN1Ym5hdi1jbnQgeyBsZWZ0OiAwOyB0b3A6IC01MDBweDsgaGVpZ2h0OiA0NTBweDsgei1pbmRleDogMTAwMDsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyBtYXJnaW46IDAgNHZ3OyBvdmVyZmxvdy15OiBoaWRkZW47IHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTIsIDAuMDcsIDAuNjEsIDEuMTkpOyB9XG4gIC5uYXYtLXF1aWNrIC5idG4tLXN1Ym1lbnUgKyAuc3VibmF2LWNudC5vcGVuLCAubmF2LS1tYWluID4gbGkgPiAuc3VibmF2LWNudC5vcGVuIHsgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgei1pbmRleDogOTk5OTsgdG9wOiAxMDAlOyB9XG4gIC5uYXYtLXF1aWNrIC5idG4tLXN1Ym1lbnUgKyAuc3VibmF2LWNudCB7IG1hcmdpbjogMDsgfVxuICAubmF2LS1tYWluID4gbGkgPiAuc3VibmF2LWNudCB7IHdpZHRoOiBhdXRvOyB9XG4gIC5zdWJuYXYtY250IC5zdWJuYXYtY250IHsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdy15OiBhdXRvOyB0b3A6IDA7IHRyYW5zaXRpb246IGxlZnQgMTAwbXMgZWFzZS1pbi1vdXQgMDBtcywgIG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQgMjAwbXMsIHZpc2liaWxpdHkgMG1zIGVhc2UtaW4tb3V0IDQwMG1zOyB9XG4gIC5zdWJuYXYtY250IC5zdWJuYXYtY250Lm9wZW4geyBsZWZ0OiAxMDAlOyBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB0cmFuc2l0aW9uOiBsZWZ0IDIwMG1zIGVhc2UtaW4tb3V0IDAwbXMsICAgdmlzaWJpbGl0eSAwbXMgZWFzZS1pbi1vdXQgMDBtczsgfVxuICAuc3VibmF2LWNudC5sZXZlbC0tMyB7IGxlZnQ6IDEwMCU7IHRyYW5zaXRpb246IGxlZnQgMjAwbXMgZWFzZS1pbi1vdXQgMDBtcywgIG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQgMjAwbXMsIHZpc2liaWxpdHkgMG1zIGVhc2UtaW4tb3V0IDQwMG1zOyB9XG4gIC5zdWJuYXYtY250LmxldmVsLS0zLm9wZW4geyBsZWZ0OiAwOyB0cmFuc2l0aW9uOiBsZWZ0IDMwMG1zIGVhc2UtaW4tb3V0IDBtcywgdmlzaWJpbGl0eSAwbXMgZWFzZS1pbi1vdXQgMG1zOyB9XG4gIC5zdWJuYXYtY250IGxpIHsgZmxvYXQ6IG5vbmU7IG1hcmdpbjogMDsgfVxuICAuc3VibmF2LWNudC5sZXZlbC0tMSA+IC5zdWJtZW51LCAuc3VibmF2LWNudCAubmF2LXRlYXNlci50ZWFzZXItLXBhZ2UsIC5zdWJuYXYtY250IC5uYXYtdGVhc2VyLmJsb2NrIHsgcG9zaXRpb246IGFic29sdXRlOyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDA7IHdpZHRoOiAzNCU7IG1hcmdpbjogMDsgfVxuICAuc3VibmF2LWNudCAubmF2LXRlYXNlci50ZWFzZXItLXBhZ2UgeyBsZWZ0OiAzNCU7IH1cbiAgLnN1Ym5hdi1jbnQgLm5hdi10ZWFzZXIuYmxvY2sgeyBsZWZ0OiBhdXRvOyByaWdodDogMDsgd2lkdGg6IDMyJTsgcGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLXJpZ2h0OiAwOyBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIC5zdWJuYXYtY250IC5uYXYtdGVhc2VyLmJsb2NrIGZpZ3VyZTo6YmVmb3JlIHsgcGFkZGluZy10b3A6IDUzLjAwMjU5NzEyNzMlOyB9XG4gIC5zdWJuYXYtY250IC5uYXYtdGVhc2VyLmJsb2NrIC5leGNlcnB0IHsgbWFyZ2luLXRvcDogMTBweDsgbGluZS1oZWlnaHQ6IDEuNDVlbTsgfVxuICAuc3VibmF2LWNudCAubmF2LXRlYXNlci5ibG9jayA+IGEgeyBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5uYXYtLW1haW4gPiBsaSA+IC5zdWJuYXYtY250IHsgbWFyZ2luOiAwIDh2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLm5hdi0tbWFpbiA+IGxpID4gLnN1Ym5hdi1jbnQgeyBtYXJnaW46IDAgMTV2dzsgfSB9XG5cbi8qKiBUeXBvZ3JhcGh5ICYgRGVzaWduIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5hdiB7IHBhZGRpbmc6IDIwcHggMDsgfVxuXG4ubmF2IHVsIHsgcGFkZGluZzogMjBweCAwOyBtYXJnaW46IDA7IH1cblxuLm5hdiBsaSB7IHBhZGRpbmc6IDAgMjBweDsgbWFyZ2luOiAwOyB9XG5cbi5uYXYgLmNzYy1tZW51IHsgcGFkZGluZy10b3A6IDA7IH1cblxuLnN1YnNpdGUgLm5hdiAuY3NjLW1lbnUgeyBib3R0b206IDA7IGxlZnQ6IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc3Vic2l0ZSAubmF2IC5jc2MtbWVudSB7IHBvc2l0aW9uOiBzdGF0aWM7IH0gfVxuXG4ubmF2Om5vdCguc3VibmF2LWNudCkgbGk6Zmlyc3QtY2hpbGQ6bm90KC5sZXZlbC11cCkgYSB7IGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH1cblxuLm5hdiBsaSA+IGEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgcGFkZGluZzogNnB4IDEwcHg7IGNvbG9yOiAjZmZmOyBmb250LXNpemU6IDEuMDU1NTU1NTU1NmVtOyBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5uYXYgbGkgPiBhOjphZnRlciwgLm5hdiBsaSA+IGE6OmJlZm9yZSB7IGZvbnQtc2l6ZTogMC42NjY2NjY2NjY3ZW07IHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLWluLW91dDsgfVxuXG4ubmF2IGxpID4gYTo6YWZ0ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAxMHB4OyBmb250LXNpemU6IDAuNzIyMjIyMjIyMmVtOyB0b3A6IDlweDsgfVxuXG4ubmF2IGxpID4gYTpmb2N1czo6YmVmb3JlLCAubmF2IGxpID4gYTpob3Zlcjo6YmVmb3JlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7IH1cblxuLm5hdiBsaSA+IGE6Zm9jdXMsIC5uYXYgbGkgPiBhOmFjdGl2ZSwgLm5hdiBsaSA+IGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJhY2tncm91bmQ6ICMxMTI5NGU7IGNvbG9yOiAjZmZmNzE5OyBvdXRsaW5lOiAwOyB9XG5cbi5uYXYgbGk6bGFzdC1jaGlsZCA+IGEgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5uYXYgbGkuaGVhZGluZyBhIHsgcGFkZGluZzogMTVweCAwOyBib3JkZXItdG9wOiAwOyB9XG5cbi5uYXYgbGkuaGVhZGluZyBhOmFmdGVyIHsgY29udGVudDogXCLvhI1cIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5uYXYgbGkuaGVhZGluZyBhOjphZnRlciB7IGRpc3BsYXk6IGlubGluZTsgcG9zaXRpb246IHN0YXRpYzsgfVxuXG4ubmF2IGxpLmhlYWRpbmcgYTpob3ZlciB7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLm5hdiBsaS5oZWFkaW5nIHN0cm9uZyB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4ubmF2IGxpLmxldmVsLXVwIGEgeyBmb250LXdlaWdodDogYm9sZDsgYm9yZGVyLXRvcDogMDsgYm9yZGVyLWJvdHRvbTogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5uYXYgbGkubGV2ZWwtdXAgYTpiZWZvcmUgeyBjb250ZW50OiBcIu+Eo1wiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLm5hdiBsaS5sZXZlbC11cCBhIHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG5cbi5uYXYgbGkubGV2ZWwtdXAgYTo6YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4ubmF2IGxpLmxldmVsLXVwIGE6OmJlZm9yZSB7IG1hcmdpbi1yaWdodDogMTBweDsgZm9udC1zaXplOiAxZW07IH1cblxuLm5hdiBsaS5sZXZlbC11cCBhOmhvdmVyIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4ubmF2IGxpLmxldmVsLXVwIGE6aG92ZXI6OmJlZm9yZSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XG5cbi5uYXYgbGkuaGFzX2NoaWxkcmVuID4gYTphZnRlciB7IGNvbnRlbnQ6IFwi74SNXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4ubmF2LmxldmVsLS0xIC5jdXJyZW50ID4gYSwgLm5hdiAubGV2ZWwtLTEgLmN1cnJlbnQgPiBhIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IGJhY2tncm91bmQ6ICMxMTI5NGU7IH1cblxuLm5hdiAubGV2ZWwtLTIgYTpmb2N1cywgLm5hdiAubGV2ZWwtLTIgYTpob3ZlciB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IH1cblxuLm5hdiAubGV2ZWwtLTIgLmN1cnJlbnQgPiBhIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgfVxuXG4ubmF2IC50ZWFzZXItLXBhZ2UgLmJ0biwgLm5hdiAuc3VibmF2LWNudCA+IC5idG4geyBiYWNrZ3JvdW5kOiAjZmZmNzE5OyBjb2xvcjogIzE0MTQxNDsgbWFyZ2luLWxlZnQ6IDIwcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4ubmF2IC50ZWFzZXItLXBhZ2UgLmJ0bjphZnRlciwgLm5hdiAuc3VibmF2LWNudCA+IC5idG46YWZ0ZXIgeyBjb250ZW50OiBcIu+EjVwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLm5hdiAudGVhc2VyLS1wYWdlIC5idG46OmFmdGVyLCAubmF2IC5zdWJuYXYtY250ID4gLmJ0bjo6YWZ0ZXIgeyBmb250LXNpemU6IDAuOGVtOyBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuLm5hdiAudGVhc2VyLS1wYWdlIC5idG46Zm9jdXMsIC5uYXYgLnRlYXNlci0tcGFnZSAuYnRuOmhvdmVyLCAubmF2IC5zdWJuYXYtY250ID4gLmJ0bjpmb2N1cywgLm5hdiAuc3VibmF2LWNudCA+IC5idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjZmZmOyBvdXRsaW5lOiAwOyB9XG5cbi5uYXYgLnN1Ym5hdi1jbnQgPiAuYnRuIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgY3ViaWMtYmV6aWVyKDAuNDUsIDAuNTEsIDAuNzEsIDEuMDQpIDUwbXMsIG9wYWNpdHkgNjAwbXMgZWFzZS1pbi1vdXQgMG1zOyB9XG5cbi5uYXYgLnN1Ym5hdi1jbnQub3BlbiA+IC5idG4geyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubmF2IHVsIHsgcGFkZGluZzogNDBweCAwOyB9XG4gIC5uYXYgbGkgeyBwYWRkaW5nOiAwIDQwcHg7IH1cbiAgLm5hdiBsaSA+IGEgeyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyB9XG4gIC5uYXYubmF2LS10b3AgbGkgYSB7IGJvcmRlci10b3A6IDA7IH1cbiAgLm5hdi5uYXYtLW1haW4geyBwYWRkaW5nOiAwOyB9XG4gIC5uYXYubmF2LS1tYWluID4gbGkgeyBwYWRkaW5nOiAwIDEwcHg7IGZsb2F0OiBsZWZ0OyBtYXJnaW46IDA7IG1hcmdpbi1yaWdodDogNXB4OyB9XG4gIC5uYXYubmF2LS1tYWluID4gbGk6Zmlyc3QtY2hpbGQgeyBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5hdi5uYXYtLW1haW4gPiBsaSA+IGEgeyBoZWlnaHQ6IDcwcHg7IGxpbmUtaGVpZ2h0OiA3MHB4OyBmb250LXNpemU6IDFlbTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjMTQxNDE0OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBwYWRkaW5nOiAwOyBib3JkZXItdG9wOiAwOyBib3JkZXItYm90dG9tOiAwOyB9XG4gIC5uYXYubmF2LS1tYWluID4gbGkgPiBhOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5zdWJzaXRlIC5uYXYubmF2LS1tYWluID4gbGkgPiBhIHsgY29sb3I6ICNmZmY7IH1cbiAgLm5hdi5uYXYtLW1haW4gPiBsaSA+IGE6Zm9jdXMsIC5uYXYubmF2LS1tYWluID4gbGkgPiBhOmhvdmVyLCAubmF2Lm5hdi0tbWFpbiA+IGxpLmN1cnJlbnQgPiBhLCAubmF2Lm5hdi0tbWFpbiA+IGxpLmFjdGl2ZSA+IGEsIC5uYXYubmF2LS1tYWluID4gbGkuYWN0aXZlID4gYTpob3ZlciB7IGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAjMTYzMTViOyBiYWNrZ3JvdW5kOiBub25lOyBjb2xvcjogIzE2MzE1Yjsgb3V0bGluZTogMDsgfVxuICAuc3Vic2l0ZSAubmF2Lm5hdi0tbWFpbiA+IGxpID4gYTpmb2N1cywgLnN1YnNpdGUgLm5hdi5uYXYtLW1haW4gPiBsaSA+IGE6aG92ZXIsIC5zdWJzaXRlIC5uYXYubmF2LS1tYWluID4gbGkuY3VycmVudCA+IGEsIC5zdWJzaXRlIC5uYXYubmF2LS1tYWluID4gbGkuYWN0aXZlID4gYSwgLnN1YnNpdGUgLm5hdi5uYXYtLW1haW4gPiBsaS5hY3RpdmUgPiBhOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiAjZmZmOyBjb2xvcjogI2ZmZjsgfVxuICAubmF2Lm5hdi0tbWFpbiA+IGxpID4gYTpob3ZlciB7IGJvcmRlci1jb2xvcjogIzhmYThjYjsgfVxuICAubmF2Lm5hdi0tbWFpbiA+IGxpLmhhc19jaGlsZHJlbiA+IGEgeyBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gIC5uYXYubmF2LS1tYWluID4gbGkuaGFzX2NoaWxkcmVuID4gYTphZnRlciB7IGNvbnRlbnQ6IFwi74SLXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuICAubmF2Lm5hdi0tbWFpbiA+IGxpLmhhc19jaGlsZHJlbiA+IGE6OmFmdGVyIHsgdG9wOiAwOyByaWdodDogMHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogc2NhbGUoMC43KTsgfVxuICAubmF2IC5sZXZlbC11cCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdiAubGV2ZWwtdXAgc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdiAubGV2ZWwtdXAgYSB7IGJvcmRlci10b3A6IDA7IH1cbiAgLm5hdiAubGV2ZWwtLTIgLmxldmVsLXVwIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLm5hdiAuaXRlbS0tZGl2aWRlciBhOjphZnRlciB7IGNvbnRlbnQ6ICcnOyB3aWR0aDogMXB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGhlaWdodDogMjBweDsgYmFja2dyb3VuZDogI2MxYzlkMDsgcG9zaXRpb246IHN0YXRpYzsgbWFyZ2luLWxlZnQ6IDMwcHg7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1hcmdpbi10b3A6IC00cHg7IH1cbiAgLm5hdi5uYXYtLXRvcCBsaSB7IHBhZGRpbmc6IDA7IG1hcmdpbjogMCAxNXB4OyB9XG4gIC5uYXYubmF2LS10b3AgbGk6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxuICAubmF2Lm5hdi0tdG9wIGEgeyBjb2xvcjogIzE0MTQxNDsgcGFkZGluZzogMDsgaGVpZ2h0OiA5MHB4OyBsaW5lLWhlaWdodDogOTBweDsgfVxuICAubmF2Lm5hdi0tdG9wIGE6OmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdi5uYXYtLXRvcCBhOmZvY3VzLCAubmF2Lm5hdi0tdG9wIGE6aG92ZXIgeyBiYWNrZ3JvdW5kOiBub25lOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgY29sb3I6ICMxNjMxNWI7IG91dGxpbmU6IDA7IH1cbiAgLnN1YnNpdGUgLm5hdi5uYXYtLXRvcCBhIHsgY29sb3I6ICMxNjMxNWI7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5uYXYubmF2LS10b3AgLmVudmlyb25tZW50YWwtbWVudSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgfVxuICAubmF2Lm5hdi0tdG9wIC5lbnZpcm9ubWVudGFsLW1lbnUgLnBhZ2UtY29udGVudCB7IHBhZGRpbmc6IDA7IHdpZHRoOiBhdXRvOyB9XG4gIC5uYXYubmF2LS10b3AgLmVudmlyb25tZW50YWwtbWVudSB1bCB7IG1hcmdpbjogMCAhaW1wb3J0YW50OyBwYWRkaW5nOiAwOyB9XG4gIC5uYXYubmF2LS10b3AgLmVudmlyb25tZW50YWwtbWVudSB1bCA+IGxpOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdiBsaS5oZWFkaW5nIHsgZGlzcGxheTogbm9uZTsgfVxuICAubmF2IGxpLmhlYWRpbmcgYSB7IHBhZGRpbmctdG9wOiAwOyB9XG4gIC5uYXYgLnN1Ym5hdi1jbnQgPiAuYnRuIHsgbWFyZ2luLWxlZnQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5uYXYubmF2LS1tYWluID4gbGkgeyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfVxuXG4uc3VibWVudSB7IHdpZHRoOiAxMDAlOyB9XG5cbi5zdWJtZW51IGxpLmFjdGl2ZSB7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLnN1Ym1lbnUgbGkuYWN0aXZlID4gYSB7IGJhY2tncm91bmQ6ICMxMTI5NGU7IGNvbG9yOiAjZmZmNzE5OyBmb250LXdlaWdodDogYm9sZDsgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzExMjk0ZTsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxMTI5NGU7IHRvcDogMXB4OyB6LWluZGV4OiAyOyB9XG5cbi5zdWJtZW51ID4gbGkgPiBhIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMHB4KTsgb3BhY2l0eTogMDsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDQwMG1zIGN1YmljLWJlemllcigwLjUyLCAwLjA3LCAwLjYxLCAxLjE5KSwgb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dCA0MDBtczsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zdWJtZW51ID4gbGkgPiBhIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHB4KTsgfVxuICAuc3VibWVudSAuc3VibWVudSA+IGxpID4gYSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2NXB4KTsgfSB9XG5cbi5zdWJuYXYtY250Lm9wZW4gLnN1Ym1lbnUgPiBsaSA+IGEgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IG9wYWNpdHk6IDE7IH1cblxuLnN1Ym1lbnUgPiBsaTpudGgtY2hpbGQoMSkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG4uc3VibWVudSA+IGxpOm50aC1jaGlsZCgyKSA+IGEgeyB0cmFuc2l0aW9uLWRlbGF5OiAxMG1zOyB9XG5cbi5zdWJtZW51ID4gbGk6bnRoLWNoaWxkKDMpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDMwbXM7IH1cblxuLnN1Ym1lbnUgPiBsaTpudGgtY2hpbGQoNCkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogNTBtczsgfVxuXG4uc3VibWVudSA+IGxpOm50aC1jaGlsZCg1KSA+IGEgeyB0cmFuc2l0aW9uLWRlbGF5OiA3MG1zOyB9XG5cbi5zdWJtZW51ID4gbGk6bnRoLWNoaWxkKDYpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDkwbXM7IH1cblxuLnN1Ym1lbnUgPiBsaTpudGgtY2hpbGQoNykgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMTEwbXM7IH1cblxuLnN1Ym1lbnUgPiBsaTpudGgtY2hpbGQoOCkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMTMwbXM7IH1cblxuLnN1Ym1lbnUgPiBsaTpudGgtY2hpbGQoOSkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMTUwbXM7IH1cblxuLnN1Ym1lbnUgPiBsaTpudGgtY2hpbGQoMTApID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDE3MG1zOyB9XG5cbi8qKiBUZWFzZXIgZWxlbWVudHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGVhc2VyLS1wYWdlID4gKiwgLm5hdi10ZWFzZXIuYmxvY2sgeyBkaXNwbGF5OiBub25lOyB9XG5cbi50ZWFzZXItLXBhZ2UgLmJ0bi0tbGluayB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXYgLmJ0bi0tbGluayBzcGFuIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLm5hdiAuYnRuLS1saW5rOjphZnRlciB7IGxlZnQ6IGF1dG87IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAudGVhc2VyLS1wYWdlID4gKiwgLm5hdi10ZWFzZXIuYmxvY2sgeyBkaXNwbGF5OiBibG9jazsgfVxuICAubmF2LXRlYXNlciB7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogIzExMjk0ZTsgY29sb3I6ICNmZmY7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC50ZWFzZXItLXBhZ2UgeyBwYWRkaW5nOiA0MHB4OyB9XG4gIC50ZWFzZXItLXBhZ2UgaDIgeyBwYWRkaW5nLXRvcDogMDsgfVxuICAudGVhc2VyLS1wYWdlIHAgeyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBsaW5lLWhlaWdodDogMS41ZW07IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnRlYXNlci0tcGFnZSAuYnRuIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5uYXYgLnRlYXNlci0tcGFnZSAuYnRuIHsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnRlYXNlci0tcGFnZSAuYnRuOmZvY3VzLCAudGVhc2VyLS1wYWdlIC5idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjZmZmOyBjb2xvcjogIzE0MTQxNDsgb3V0bGluZTogMDsgfVxuICAubmF2LXRlYXNlci5ibG9jayB7IGhlaWdodDogMTAwJTsgfVxuICAubmF2LXRlYXNlci5ibG9jayAuY29udGVudCB7IHBhZGRpbmc6IDIwcHggNDBweCA0MHB4OyB9XG4gIC5uYXYtdGVhc2VyLmJsb2NrIGZpZ3VyZSB7IGJhY2tncm91bmQ6ICNmZmY7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjM4MHB4KSB7IC5uYXYtdGVhc2VyLmJsb2NrIC5jb250ZW50IHsgdG9wOiAtNDBweDsgfVxuICAubmF2LXRlYXNlci5ibG9jayBkaXY6aG92ZXIgLnRodW1ibmFpbCArIC5jb250ZW50LCAubmF2LXRlYXNlci5ibG9jayBhOmhvdmVyIC50aHVtYm5haWwgKyAuY29udGVudCwgLm5hdi10ZWFzZXIuYmxvY2sgYTphY3RpdmUgLnRodW1ibmFpbCArIC5jb250ZW50LCAubmF2LXRlYXNlci5ibG9jayBhOmZvY3VzIC50aHVtYm5haWwgKyAuY29udGVudCB7IHRvcDogLTgwcHg7IH0gfVxuXG4vKiogQ29sb3Bob24gTmF2IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbG9mb24ubmF2IGxpID4gYSB7IGZvbnQtc2l6ZTogMWVtOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29sb2Zvbi5uYXYgbGkgPiBhOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5jb2xvZm9uLm5hdiBsaSA+IGE6Zm9jdXMsIC5jb2xvZm9uLm5hdiBsaSA+IGE6aG92ZXIgeyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi8qKiBRdWljayBOYXZpZ2F0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAtIGJhY2sgYnV0dG9uIC0gc3VibWVudSAqL1xudWwubmF2LS1xdWljayB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogOTk5OTsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBkaXNwbGF5OiBub25lOyB0b3A6IDEzMHB4OyBsZWZ0OiAyMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyB1bC5uYXYtLXF1aWNrIHsgbGVmdDogNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgdWwubmF2LS1xdWljayB7IGxlZnQ6IDR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgdWwubmF2LS1xdWljayB7IGxlZnQ6IDh2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgdWwubmF2LS1xdWljayB7IGxlZnQ6IDE1dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IHVsLm5hdi0tcXVpY2sgeyBkaXNwbGF5OiBibG9jazsgdG9wOiAyMDBweDsgfSB9XG5cbnVsLm5hdi0tcXVpY2sgLmJ0bi0tc3VibWVudSB7IG9wYWNpdHk6IDA7IHZpc2liaWxpdHk6IGhpZGRlbjsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7IHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSA2MDBtcyBlYXNlLWluLW91dDsgfVxuXG51bC5uYXYtLXF1aWNrLmZpeGVkIHsgcG9zaXRpb246IGZpeGVkOyB0b3A6IDA7IH1cblxudWwubmF2LS1xdWljay5maXhlZCAuYnRuLS1zdWJtZW51IHsgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5oaWRkZW4tbGFuZGluZy1wYWdlIHVsLm5hdi0tcXVpY2sgeyBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmhpZGRlbi1sYW5kaW5nLXBhZ2UgdWwubmF2LS1xdWljayAuYnRuLS1iYWNrIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7IHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSA2MDBtcyBlYXNlLWluLW91dDsgfVxuXG4uaGlkZGVuLWxhbmRpbmctcGFnZSB1bC5uYXYtLXF1aWNrLmZpeGVkIHsgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uaGlkZGVuLWxhbmRpbmctcGFnZSB1bC5uYXYtLXF1aWNrLmZpeGVkIC5idG4tLWJhY2sgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxudWwubmF2LS1xdWljayA+IGxpIHsgbWFyZ2luOiAwOyBmbG9hdDogcmlnaHQ7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxudWwubmF2LS1xdWljazphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG51bC5uYXYtLXF1aWNrID4gbGkgPiAuYnRuIHsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogNDBweDsgbGluZS1oZWlnaHQ6IDQwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG51bC5uYXYtLXF1aWNrIC5zdWJuYXYtY250IHsgd2lkdGg6IDM0MCU7IG1pbi13aWR0aDogNzUwcHg7IHRvcDogLTEwMDBweDsgbGVmdDogNDBweDsgei1pbmRleDogOTk5OTsgcGFkZGluZy10b3A6IDA7IH1cblxudWwubmF2LS1xdWljayAuc3VibmF2LWNudC5vcGVuIHsgdG9wOiAwcHg7IH1cblxudWwubmF2LS1xdWljayAuc3VibmF2LWNudC5sZXZlbC0tMSA+IC5zdWJtZW51IHsgd2lkdGg6IDUwJTsgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbnVsLm5hdi0tcXVpY2sgLnN1Ym5hdi1jbnQgLm5hdi10ZWFzZXIgeyB3aWR0aDogNTAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDUwJTsgfVxuXG51bC5uYXYtLXF1aWNrIC5zdWJuYXYtY250IC5zdWJuYXYtY250IHsgd2lkdGg6IDEwMCU7IG1pbi13aWR0aDogMDsgbGVmdDogMTAwJTsgfVxuXG51bC5uYXYtLXF1aWNrIC5zdWJuYXYtY250IC5zdWJuYXYtY250Lm9wZW4geyB0b3A6IDA7IH1cblxudWwubmF2LS1xdWljayAuc3VibmF2LWNudCAuc3VibmF2LWNudC5sZXZlbC0tMy5vcGVuIHsgbGVmdDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IHVsLm5hdi0tcXVpY2sgLmJ0bi0tc3VibWVudSArIC5zdWJuYXYtY250Lm9wZW4geyB0b3A6IDA7IGxlZnQ6IDQwcHg7IH0gfVxuXG4uYnRuLS1zdWJtZW51LCAuYnRuLS1iYWNrIHsgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5hY3RpdmUgLmJ0bi0tc3VibWVudSwgLmJ0bi0tc3VibWVudTpob3ZlciwgLmFjdGl2ZSAuYnRuLS1iYWNrLCAuYnRuLS1iYWNrOmhvdmVyIHsgYmFja2dyb3VuZDogIzExMjk0ZTsgY29sb3I6ICNmZmY7IH1cblxuLmFjdGl2ZSAuYnRuLS1zdWJtZW51OjpiZWZvcmUsIC5idG4tLXN1Ym1lbnU6aG92ZXI6OmJlZm9yZSwgLmFjdGl2ZSAuYnRuLS1iYWNrOjpiZWZvcmUsIC5idG4tLWJhY2s6aG92ZXI6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMS4zNSk7IH1cblxuLmJ0bi0tYmFjazpiZWZvcmUgeyBjb250ZW50OiBcIu+EjFwiOyB9XG5cbi5idG4tLXN1Ym1lbnU6YmVmb3JlIHsgY29udGVudDogXCLvhJFcIjsgfVxuXG4uYWN0aXZlIC5idG4tLXN1Ym1lbnUgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuLmFjdGl2ZSAuYnRuLS1zdWJtZW51OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SAXCI7IH1cblxuLmFjdGl2ZSAuYnRuLS1zdWJtZW51IHNwYW4geyBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuLmFjdGl2ZSAuYnRuLS1zdWJtZW51OjpiZWZvcmUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuLmJ0bi0tc3VibWVudTpob3ZlciB7IGNvbG9yOiAjZmZmNzE5OyB9XG5cbi8qIEN1c3RvbSBidXR0b24gc3R5bGluZyAqL1xuLnN1Ym5hdi1jbnQgPiAuYnRuIHsgbWF4LXdpZHRoOiAyNjBweDsgaGVpZ2h0OiBhdXRvOyBwYWRkaW5nLXRvcDogMTBweDsgcGFkZGluZy1ib3R0b206IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDUwcHg7IGxpbmUtaGVpZ2h0OiBub3JtYWw7IHRleHQtYWxpZ246IGxlZnQ7IHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuXG4uc3VibmF2LWNudCA+IC5idG46OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDIwcHg7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtNnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBERUZBVUxUIFdJREdFVCBTVFlMSU5HIFN0eWxpbmcgb2YgYWxsIHRoZSB3aWRnZXRzIHVzZWQgdGhyb3VnaCBvdXQgdGhlIHNpdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5ibG9jayB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWFyZ2luLWJvdHRvbTogMjBweDsgZm9udC1mYW1pbHk6IFwiZnV0dXJhLXB0LWFsdFwiLCBcImZ1dHVyYS1wdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjsgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLmJsb2NrID4gZGl2LCAuYmxvY2sgPiBhIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgb3ZlcmZsb3c6IGhpZGRlbjsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgaGVpZ2h0OiAxMDAlOyB9XG5cbi5ibG9jayAudGh1bWJuYWlsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB3aWR0aDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdzogaGlkZGVuOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMTYzMTViOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB6LWluZGV4OiAxOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zdWJuYXYtY250IC5ibG9jayAudGh1bWJuYWlsIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ibG9jayAudGh1bWJuYWlsOjpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZy10b3A6IDEwMCU7IC8qIGluaXRpYWwgcmF0aW8gb2YgMToxKi8gcGFkZGluZy10b3A6IDUwJTsgLyogcmF0aW8gb2YgNTkgOiAxNyAqLyB9XG5cbi5ibG9jayAudGh1bWJuYWlsIGltZyB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLmJsb2NrIC50aHVtYm5haWwucG9ydHJhaXQgaW1nIHsgd2lkdGg6IGF1dG87IGhlaWdodDogOTAlOyBsZWZ0OiA1MCU7IHRvcDogNSU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4uYmxvY2sgLmNvbnRlbnQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogYXV0bzsgcGFkZGluZzogMjBweCA0MHB4IDIwcHggMjBweDsgYmFja2dyb3VuZDogI2ZmZjsgY29sb3I6ICMxNDE0MTQ7IHRleHQtYWxpZ246IGxlZnQ7IHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB6LWluZGV4OiAyOyB9XG5cbi5ibG9jayBoMiB7IHBhZGRpbmctdG9wOiAwOyB0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlLWluLW91dCwgb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0OyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ibG9jayBoMi50ZXh0LS10cnVuY2F0ZSB7IGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzZW07IGxpbmUtaGVpZ2h0OiAxLjEyNWVtOyBtYXgtaGVpZ2h0OiA4MXB4OyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5ibG9jayBoMiArIHVsLCAuYmxvY2sgaDIgKyAuZXhjZXJwdCB7IG1hcmdpbi10b3A6IDE1cHg7IH1cblxuLmJsb2NrIC5leGNlcnB0IHsgbWFyZ2luLWJvdHRvbTogMDsgd2lkdGg6IDkwJTsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgbGluZS1oZWlnaHQ6IDEuNWVtOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDsgZGlzcGxheTogYmxvY2s7IH1cblxuLmJsb2NrIC5leGNlcnB0LnRleHQtLXRydW5jYXRlIHsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgbGluZS1oZWlnaHQ6IDEuNWVtOyBtYXgtaGVpZ2h0OiA0OHB4OyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5ibG9jayAudGFnIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IC00MHB4OyBsZWZ0OiAwOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGhlaWdodDogNDBweDsgd2lkdGg6IGF1dG87IHBhZGRpbmc6IDAgMjBweDsgYmFja2dyb3VuZDogI2ZmZjcxOTsgY29sb3I6ICMxNDE0MTQ7IGZvbnQtd2VpZ2h0OiBib2xkOyBsaW5lLWhlaWdodDogNDBweDsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgei1pbmRleDogMTA7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLmJsb2NrIC5idG4tLXZpZGVvIHsgZm9udC1zaXplOiAzLjMzMzMzMzMzMzNlbTsgbWFyZ2luOiAwIGF1dG87IHdpZHRoOiA2MHB4OyBoZWlnaHQ6IDYwcHg7IGxpbmUtaGVpZ2h0OiA2MHB4OyB9XG5cbi5ibG9jayAuYnRuLS12aWRlbzpob3ZlciB7IHRyYW5zZm9ybTogbm9uZTsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmJsb2NrIC5idG4tLXZpZGVvIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbi5ibG9jayAudi1jZW50ZXIgeyBtYXgtd2lkdGg6IDQwMHB4OyB9XG5cbi5ibG9jayAudi1jZW50ZXIgc3Ryb25nIHsgY29sb3I6ICNmZmY7IGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzZW07IGxpbmUtaGVpZ2h0OiAwLjc7IC8qIFx0XHRcdGxpbmUtaGVpZ2h0OiBlbSgyN3B4LCAyNHB4KTsgKi8gfVxuXG4uYmxvY2sgYTphY3RpdmUsIC5ibG9jayBhOmZvY3VzLCAuYmxvY2sgYTpob3ZlciB7IG91dGxpbmU6IDA7IH1cblxuLmJsb2NrIGE6YWN0aXZlIGltZywgLmJsb2NrIGE6Zm9jdXMgaW1nLCAuYmxvY2sgYTpob3ZlciBpbWcgeyBvcGFjaXR5OiAxOyB9XG5cbi5ibG9jayBhOmFjdGl2ZSAuYnRuLS12aWRlbywgLmJsb2NrIGE6Zm9jdXMgLmJ0bi0tdmlkZW8sIC5ibG9jayBhOmhvdmVyIC5idG4tLXZpZGVvIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmJsb2NrIHsgd2lkdGg6IDUwJTsgcGFkZGluZy1sZWZ0OiAyMHB4OyBwYWRkaW5nLXJpZ2h0OiAyMHB4OyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIC5vdmVydmlldy5saXN0IC5ibG9jayAuZXhjZXJwdC0tdHlwZSwgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIC5leGNlcnB0LS1wcm9wZXJ0eSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IGF1dG87IH1cbiAgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIC5leGNlcnB0LS1wcm9wZXJ0eTo6YmVmb3JlIHsgY29udGVudDogJy0nOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1sZWZ0OiAxMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5ibG9jayB7IHdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuXG4uYmxvY2sgZm9vdGVyIGEgeyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDQwcHg7IHBhZGRpbmc6IDAgMjBweDsgYmFja2dyb3VuZDogI2VhZWVmMjsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgY29sb3I6ICMxNjMxNWI7IHRleHQtYWxpZ246IGxlZnQ7IC8qIFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2UtaW4tb3V0LCBjb2xvciAxMDBtczsgICovIH1cblxuLmJsb2NrIGZvb3RlciBhOmFmdGVyIHsgY29udGVudDogXCLvhI1cIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5ibG9jayBmb290ZXIgYTo6YWZ0ZXIgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogc2NhbGUoMC44KTsgcGFkZGluZy1sZWZ0OiAxMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDA7IHRyYW5zaXRpb246IGNvbG9yIDBtcywgbGVmdCA0MDBtcyBlYXNlLWluLW91dDsgfVxuXG4uYmxvY2sgZm9vdGVyIGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kOiAjOGZhOGNiOyB9XG5cbi5ibG9jayBmb290ZXIgYTpob3Zlcjo6YWZ0ZXIgeyBsZWZ0OiAzcHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFZhcmlhdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLmJsb2NrLS10aXAsIC5ibG9jay0tdmlzdWFsLCAuYmxvY2stLW5ld3MsIC5ibG9jay0tdmVzc2VsLCAuYmxvY2stLWFjdGlvbnMgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gIC5ibG9jay0tdGlwID4gYSwgLmJsb2NrLS12aXN1YWwgPiBhLCAuYmxvY2stLW5ld3MgPiBhLCAuYmxvY2stLXZlc3NlbCA+IGEsIC5ibG9jay0tYWN0aW9ucyA+IGEsIC5ibG9jay0tdGlwID4gZGl2LCAuYmxvY2stLXZpc3VhbCA+IGRpdiwgLmJsb2NrLS1uZXdzID4gZGl2LCAuYmxvY2stLXZlc3NlbCA+IGRpdiwgLmJsb2NrLS1hY3Rpb25zID4gZGl2IHsgaGVpZ2h0OiAxMDAlOyB9XG4gIC5ibG9jay0tdGlwIC5jb250ZW50LCAuYmxvY2stLXZpc3VhbCAuY29udGVudCwgLmJsb2NrLS1uZXdzIC5jb250ZW50LCAuYmxvY2stLXZlc3NlbCAuY29udGVudCwgLmJsb2NrLS1hY3Rpb25zIC5jb250ZW50IHsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDA7IHdpZHRoOiAxMDAlOyB9XG4gIC5ibG9jay0tdGlwIGRpdjpob3ZlciAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tdmlzdWFsIGRpdjpob3ZlciAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tbmV3cyBkaXY6aG92ZXIgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLXZlc3NlbCBkaXY6aG92ZXIgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLWFjdGlvbnMgZGl2OmhvdmVyIC50aHVtYm5haWwgKyAuY29udGVudCwgLmJsb2NrLS10aXAgYTpob3ZlciAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tdmlzdWFsIGE6aG92ZXIgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLW5ld3MgYTpob3ZlciAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tdmVzc2VsIGE6aG92ZXIgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLWFjdGlvbnMgYTpob3ZlciAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tdGlwIGE6YWN0aXZlIC50aHVtYm5haWwgKyAuY29udGVudCwgLmJsb2NrLS12aXN1YWwgYTphY3RpdmUgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLW5ld3MgYTphY3RpdmUgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLXZlc3NlbCBhOmFjdGl2ZSAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tYWN0aW9ucyBhOmFjdGl2ZSAudGh1bWJuYWlsICsgLmNvbnRlbnQsIC5ibG9jay0tdGlwIGE6Zm9jdXMgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLXZpc3VhbCBhOmZvY3VzIC50aHVtYm5haWwgKyAuY29udGVudCwgLmJsb2NrLS1uZXdzIGE6Zm9jdXMgLnRodW1ibmFpbCArIC5jb250ZW50LCAuYmxvY2stLXZlc3NlbCBhOmZvY3VzIC50aHVtYm5haWwgKyAuY29udGVudCwgLmJsb2NrLS1hY3Rpb25zIGE6Zm9jdXMgLnRodW1ibmFpbCArIC5jb250ZW50IHsgdG9wOiAtNDBweDsgfSB9XG5cbi5ibG9jayB7IC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMaXN0IHZpZXcgaW4gaW4gZmlsdGVyIG92ZXJ2aWV3IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIH1cblxuLmNudC0tb3ZlcmZsb3cgLmJsb2NrOmZvY3VzLCAuY250LS1jYXJvdXNlbCAuYmxvY2s6Zm9jdXMgeyBvdXRsaW5lOiAwOyB9XG5cbi5vdmVydmlldy5saXN0IC5ibG9jayB7IGhlaWdodDogYXV0bzsgbWFyZ2luLWJvdHRvbTogMjBweDsgd2lkdGg6IDEwMCU7IH1cblxuLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5vdmVydmlldy5saXN0IC5ibG9jayBmaWd1cmUgeyBkaXNwbGF5OiBub25lOyB6LWluZGV4OiAyOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IH1cblxuLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIC5jb250ZW50IHsgd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDEwcHg7IH1cblxuLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIC50YWcgeyBwb3NpdGlvbjogc3RhdGljOyBtYXJnaW4tdG9wOiAtMTBweDsgbWFyZ2luLWxlZnQ6IC0xMHB4OyBoZWlnaHQ6IDIwcHg7IGxpbmUtaGVpZ2h0OiAyMHB4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIGgyLnRleHQtLXRydW5jYXRlIHsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgbGluZS1oZWlnaHQ6IDEuMTI1ZW07IG1heC1oZWlnaHQ6IDgxcHg7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIHAuZXhjZXJwdC50ZXh0LS10cnVuY2F0ZSB7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IGxpbmUtaGVpZ2h0OiAxLjVlbTsgbWF4LWhlaWdodDogNDhweDsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub3ZlcnZpZXcubGlzdCAuYmxvY2sgLnRhZy50YWctLXZlc3NlbCB7IHRvcDogMDsgbWFyZ2luLXRvcDogMjBweDsgbWFyZ2luLWJvdHRvbTogMDsgaGVpZ2h0OiA1MHB4OyBsaW5lLWhlaWdodDogNTBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIC5jb250ZW50IHsgcG9zaXRpb246IHN0YXRpYzsgcGFkZGluZy1sZWZ0OiAyMzBweDsgcGFkZGluZy10b3A6IDIwcHg7IHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIC5vdmVydmlldy5saXN0IC5ibG9jayBmaWd1cmUgeyB3aWR0aDogMjEwcHg7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5vdmVydmlldy5saXN0IC5ibG9jayBoMi50ZXh0LS10cnVuY2F0ZSB7IG1heC1oZWlnaHQ6IDI3cHg7IHdpZHRoOiA5MCU7IH1cbiAgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIHAuZXhjZXJwdC50ZXh0LS10cnVuY2F0ZSB7IG1heC1oZWlnaHQ6IDI0cHg7IH1cbiAgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIHAgeyBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIC50YWcgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMHB4OyBtYXJnaW46IDA7IGhlaWdodDogNDBweDsgcGFkZGluZzogMCAyMHB4OyBsaW5lLWhlaWdodDogNDBweDsgdG9wOiBhdXRvOyB6LWluZGV4OiAyOyB9XG4gIC5vdmVydmlldy5saXN0IC5ibG9jayAudGFnLnRhZy0tdmVzc2VsIHsgdG9wOiAwOyB6LWluZGV4OiAyOyBsZWZ0OiAyMTBweDsgYmFja2dyb3VuZDogI2VhZWVmMjsgaGVpZ2h0OiAxMDAlOyBsaW5lLWhlaWdodDogMTEwcHg7IG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5vdmVydmlldy5saXN0IC5ibG9jayAuY29udGVudCB7IHRvcDogMDsgd2lkdGg6IDEwMCU7IH1cbiAgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIGE6aG92ZXIgLmNvbnRlbnQsIC5vdmVydmlldy5saXN0IC5ibG9jayBhOmFjdGl2ZSAuY29udGVudCwgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrIGE6Zm9jdXMgLmNvbnRlbnQgeyB0b3A6IDA7IH0gfVxuXG4uYmctLXdoaXRlIC5ibG9jay0tYnJhbmQgZmlndXJlIHsgYm9yZGVyOiAxcHggc29saWQgI2VhZWVmMjsgfVxuXG4uYmxvY2stLWJyYW5kIGZpZ3VyZSB7IGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsgfVxuXG4uYmxvY2stLWJyYW5kIGZpZ3VyZS50aHVtYm5haWw6OmJlZm9yZSB7IHBhZGRpbmctdG9wOiA0Mi4zNzI4ODEzNTU5JTsgfVxuXG4uYmxvY2stLWJyYW5kIC5jb250ZW50IHsgYmFja2dyb3VuZDogI2VhZWVmMjsgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cblxuLmJsb2NrLS1icmFuZCBwLmV4Y2VycHQudGV4dC0tdHJ1bmNhdGUgeyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBsaW5lLWhlaWdodDogMS4yNWVtOyBtYXgtaGVpZ2h0OiA2MHB4OyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5ibG9jay0tdGlwLCAubWFwcy10aXAgLmJsb2NrIHsgcGFkZGluZzogMDsgd2lkdGg6IDEwMCU7IGZvbnQtZmFtaWx5OiBcImZ1dHVyYS1wdC1hbHRcIiwgXCJmdXR1cmEtcHRcIiwgQXJpYWwsIHNhbnMtc2VyaWYgIWltcG9ydGFudDsgZm9udC1zaXplOiAxOHB4OyBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgZmxvYXQ6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5ibG9jay0tdGlwLCAubWFwcy10aXAgLmJsb2NrIHsgbWFyZ2luOiAwOyB9IH1cblxuLm1hcHMtdGlwIC5ibG9jayB7IGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLm1hcHMtdGlwIC5ibG9jayAubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHsgdG9wOiAxMHB4OyByaWdodDogMTBweDsgYm90dG9tOiAxMHB4OyB9XG5cbi5ibG9jay0tdGlwIHsgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5ibG9jay0tdGlwIHsgd2lkdGg6IDM3MHB4OyB9IH1cblxuLmJsb2NrLS12ZXNzZWwgLnRhZy0tdmVzc2VsIHsgYmFja2dyb3VuZDogI2ZmZjsgaGVpZ2h0OiA1MHB4OyBmb250LXNpemU6IDkwcHg7IHRvcDogLTUwcHg7IGxpbmUtaGVpZ2h0OiA3OHB4OyB9XG5cbi5ibG9jay0tdmVzc2VsIC50YWctLXZlc3NlbDpiZWZvcmUgeyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5vdmVydmlldy5saXN0IC5ibG9jay0tdmVzc2VsIC5jb250ZW50IHsgcGFkZGluZy1sZWZ0OiAzNjBweDsgfSB9XG5cbi5ibG9jay0tdGVhc2VyIGZpZ3VyZTo6YmVmb3JlIHsgcGFkZGluZy10b3A6IDYyLjUlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuYmxvY2stLXRlYXNlciB7IGhlaWdodDogMjQzcHg7IG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmJsb2NrLS10ZWFzZXIgPiBhIHsgaGVpZ2h0OiAxMDAlOyB9XG4gIC5ibG9jay0tdGVhc2VyIC5jb250ZW50IHsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IHdpZHRoOiAxMDAlOyBtaW4taGVpZ2h0OiA0MHB4OyB9XG4gIC5ibG9jay0tdGVhc2VyIGgyIHsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgbGluZS1oZWlnaHQ6IDEuMTI1ZW07IG1heC1oZWlnaHQ6IDI3cHg7IG92ZXJmbG93OiBoaWRkZW47IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmJsb2NrLS10ZWFzZXIgYTpob3ZlciAuY29udGVudCwgLmJsb2NrLS10ZWFzZXIgYTphY3RpdmUgLmNvbnRlbnQsIC5ibG9jay0tdGVhc2VyIGE6Zm9jdXMgLmNvbnRlbnQgeyBwYWRkaW5nLWJvdHRvbTogNjBweDsgfSB9XG5cbi5ibG9jay0tdmlkZW8gLnRodW1ibmFpbDphZnRlciB7IGNvbnRlbnQ6IFwi74SWXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYmxvY2stLXZpZGVvIC50aHVtYm5haWw6OmFmdGVyIHsgcG9zaXRpb246IGFic29sdXRlOyBmb250LXNpemU6IDIuMjIyMjIyMjIyMmVtOyB0b3A6IDUwJTsgbGVmdDogNTAlOyBtYXJnaW4tbGVmdDogLTIwcHg7IG1hcmdpbi10b3A6IC0yMHB4OyBjb2xvcjogI2ZmZjsgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5ibG9jay0tdmlkZW8gYTpob3ZlciAudGh1bWJuYWlsOjphZnRlciB7IGNvbG9yOiAjZmZmNzE5OyB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9XG5cbi5ibG9jay0tY29udGFjdCAuaW5mbyB7IGJhY2tncm91bmQ6ICNkNWRlZTY7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMDsgbWluLWhlaWdodDogMTE1cHg7IHRleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IH1cblxuLmJsb2NrLS1jb250YWN0IC5pbmZvIC5idG4geyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyBsZWZ0OiA1MCU7IG1hcmdpbi1sZWZ0OiAtOTBweDsgbWFyZ2luLXRvcDogLTIwcHg7IH1cblxuLmJsb2NrLS1jb250YWN0IC5wcm9maWxlIHsgd2lkdGg6IDgwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDIwcHg7IHRvcDogMjBweDsgb3ZlcmZsb3c6IGhpZGRlbjsgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuXG4uYmxvY2stLWNvbnRhY3QgLnByb2ZpbGUgaW1nIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmJsb2NrLS1jb250YWN0IGxpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5ibG9jay0tY29udGFjdCB1bCB7IG1hcmdpbjogMjBweDsgfVxuXG4uYmxvY2stLWNvbnRhY3QgdWwgYSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgYmFja2dyb3VuZDogIzhmYThjYjsgaGVpZ2h0OiAzMHB4OyB3aWR0aDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7IGNvbG9yOiAjZmZmOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmJsb2NrLS1jb250YWN0IHVsIGEgc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmJsb2NrLS1jb250YWN0IHVsIC5oZWFkaW5nIHsgZGlzcGxheTogYmxvY2s7IGxpbmUtaGVpZ2h0OiAxLjM7IG1hcmdpbi1ib3R0b206IDEycHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkgeyAuYmxvY2stLWNvbnRhY3QgdWwgeyBtYXJnaW46IDE1cHg7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmJsb2NrLS1jb250YWN0IHVsIGxpIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5ibG9jay0tY29udGFjdCB1bCBsaTo6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmJsb2NrLS1jb250YWN0IHVsIC5oZWFkaW5nIHsgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5ibG9jay0tY29udGFjdCB1bCBsaSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgLmJsb2NrLS1jb250YWN0IHVsIGEgeyBoZWlnaHQ6IGF1dG87IHdpZHRoOiBhdXRvOyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDE7IHRleHQtYWxpZ246IGxlZnQ7IGNvbG9yOiBpbmhlcml0OyBiYWNrZ3JvdW5kOiBub25lOyBmb250LXNpemU6IDAuOTM3NWVtOyBwYWRkaW5nLWxlZnQ6IDIwcHg7IHdoaXRlLXNwYWNlOiBub3dyYXA7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aWR0aDogMTAwJTsgLyogJjo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgkbWVkaXVtLWJsdWUsMCkgMCUsIHJnYmEoJG1lZGl1bS1ibHVlLDEpIDEwMCUpOyAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoJG1lZGl1bS1ibHVlLDApIDAlLHJnYmEoJG1lZGl1bS1ibHVlLDEpIDEwMCUpOyAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KGxlZnQgcmlnaHQsICByZ2JhKCRtZWRpdW0tYmx1ZSwwKSAwJSxyZ2JhKCRtZWRpdW0tYmx1ZSwxKSAxMDAlKTsgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPSckbWVkaXVtLWJsdWUnLCBlbmRDb2xvcnN0cj0nJG1lZGl1bS1ibHVlJyxHcmFkaWVudFR5cGU9MSApOyBjb250ZW50OiAnJzsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMDsgd2lkdGg6IDMwcHg7ICBoZWlnaHQ6IDEwMCU7ICB9ICovIH1cbiAgLmJsb2NrLS1jb250YWN0IHVsIGE6OmJlZm9yZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gIC5ibG9jay0tY29udGFjdCB1bCBhIHNwYW4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbG9yOiAjMTYzMTViOyBiYWNrZ3JvdW5kOiAjZDVkZWU2OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5ibG9jay0td2lkZSB7IHdpZHRoOiAxMDAlOyB9XG4gIC5ibG9jay0td2lkZSBoMiB7IGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzZW07IGxpbmUtaGVpZ2h0OiAxLjEyNWVtOyBtYXgtaGVpZ2h0OiAyN3B4OyBvdmVyZmxvdzogaGlkZGVuOyBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuYmxvY2stLXdpZGUgeyB3aWR0aDogNjYuNjY2JTsgfVxuICAuYmxvY2stLXdpZGUgZmlndXJlOjpiZWZvcmUgeyBwYWRkaW5nLXRvcDogMDsgfVxuICAuYmxvY2stLXdpZGUgZmlndXJlIHsgaGVpZ2h0OiAxMDAlOyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAuYmxvY2stLXdpZGUgLmNvbnRlbnQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgd2lkdGg6IDEwMCU7IHRvcDogYXV0bzsgfVxuICAuYmxvY2stLXdpZGUgYTpob3ZlciAuY29udGVudCB7IHBhZGRpbmctYm90dG9tOiA2MHB4OyB0b3A6IGF1dG87IH0gfVxuXG4uYmxvY2stLWxpbmtzIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uYmxvY2stLWxpbmtzID4gZGl2IHsgYmFja2dyb3VuZDogIzE2MzE1YjsgfVxuXG4uYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IHBhZGRpbmc6IDIwcHg7IH1cblxuLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgbGkuaGVhZGluZyB7IGJvcmRlci10b3A6IDA7IGNvbG9yOiAjZmZmOyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGEgeyBwYWRkaW5nLWxlZnQ6IDIwcHg7IHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cblxuLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgYTphZnRlciB7IGNvbnRlbnQ6IFwi74SNXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGE6OmFmdGVyIHsgcG9zaXRpb246IGFic29sdXRlOyBmb250LXNpemU6IDAuNzc3Nzc3Nzc3OGVtOyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMjBweDsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC0xMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLmJsb2NrLS1saW5rcyAuY29udGVudCwgLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgeyBwYWRkaW5nOiA0MHB4OyB9IH1cblxuLmJsb2NrLS1sb2NhdGlvbiAuY29udGVudCB7IHBhZGRpbmc6IDIwcHg7IH1cblxuLmJsb2NrLS1sb2NhdGlvbiB1bCB7IG1hcmdpbjogMjBweCAwOyB9XG5cbi5ibG9jay0tbG9jYXRpb24gYSB7IGNvbG9yOiAjOGZhOGNiOyB9XG5cbi5ibG9jay0tbG9jYXRpb24gYSBzcGFuIHsgYm9yZGVyLWNvbG9yOiAjOGZhOGNiOyB9XG5cbi5ibG9jay0tbG9jYXRpb24gdWwsIC5ibG9jay0tbG9jYXRpb24gcCB7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IH1cblxuLm1hcHMtdGlwIC5ibG9jay0tbG9jYXRpb24geyBvdmVyZmxvdy15OiBhdXRvOyBoZWlnaHQ6IDM3MHB4OyB9XG5cbi5ibG9jay0tYWN0aW9ucyAuYWN0aW9ucyB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAtNDBweDsgdmlzaWJpbGl0eTogaGlkZGVuOyBoZWlnaHQ6IDQwcHg7IHRleHQtYWxpZ246IHJpZ2h0OyB3aWR0aDogMTAwJTsgei1pbmRleDogLTE7IHBhZGRpbmc6IDEwcHggMTBweDsgdHJhbnNpdGlvbjogYm90dG9tIDEwMG1zIGVhc2UtaW4tb3V0OyBmb250LWZhbWlseTogZW1wdHk7IH1cblxuLmJsb2NrLS1hY3Rpb25zIC5hY3Rpb25zIC5kb3dubG9hZCB7IG1hcmdpbjogMCA0cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5ibG9jay0tYWN0aW9ucyAuYWN0aW9ucyB7IHBhZGRpbmctdG9wOiA3cHg7IH0gfVxuXG4uYmxvY2stLWFjdGlvbnMgZGl2OmhvdmVyIC5jb250ZW50IHsgdG9wOiAtNDBweCAhaW1wb3J0YW50OyB9XG5cbi5ibG9jay0tYWN0aW9ucyBkaXY6aG92ZXIgLmN0YSB7IGJvdHRvbTogNDBweDsgfVxuXG4uYmxvY2stLWFjdGlvbnMgZGl2OmhvdmVyIC5jdGEuZG93bmxvYWQuc2luZ2xlIHsgYm90dG9tOiAwOyB9XG5cbi5ibG9jay0tYWN0aW9ucyBkaXY6aG92ZXIgLmFjdGlvbnMgeyB6LWluZGV4OiAzOyBib3R0b206IDA7IHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmJsb2NrLS1hY3Rpb25zLmJsb2NrLS10ZWFzZXIgLmNvbnRlbnQgeyB0b3A6IGF1dG87IH1cblxuLmJsb2NrLS1hY3Rpb25zLmJsb2NrLS10ZWFzZXIgZGl2OmhvdmVyIC5jb250ZW50IHsgdG9wOiBhdXRvICFpbXBvcnRhbnQ7IHBhZGRpbmctYm90dG9tOiA2MHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAub3ZlcnZpZXcubGlzdCAuYmxvY2stLWFjdGlvbnMgLmFjdGlvbnMgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgcmlnaHQ6IDA7IHdpZHRoOiBhdXRvOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2UtaW4tb3V0LCByaWdodCAxMDBtcyBlYXNlLWluLW91dDsgfVxuICAub3ZlcnZpZXcubGlzdCAuYmxvY2stLWFjdGlvbnMgZGl2OmhvdmVyIC5jdGEgeyBib3R0b206IDA7IH1cbiAgLm92ZXJ2aWV3Lmxpc3QgLmJsb2NrLS1hY3Rpb25zIGRpdjpob3ZlciAuYWN0aW9ucyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5ibG9jay0tZ3JvdyAudGh1bWJuYWlsOjpiZWZvcmUgeyBwYWRkaW5nLXRvcDogMjAwJTsgfSB9XG5cbi5ibG9jay5uYXYtdGVhc2VyIG9sLCAuYmxvY2submF2LXRlYXNlciB1bCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmc6IDA7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuXG4uYmxvY2submF2LXRlYXNlciBvbCBsaSwgLmJsb2NrLm5hdi10ZWFzZXIgdWwgbGkgeyBwYWRkaW5nLWxlZnQ6IDA7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLmJsb2NrLm5hdi10ZWFzZXIgb2wgeyBsaXN0LXN0eWxlOiBkZWNpbWFsOyBjb3VudGVyLXJlc2V0OiBzZWN0aW9uOyBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4uYmxvY2submF2LXRlYXNlciBvbCBsaTo6YmVmb3JlIHsgY291bnRlci1pbmNyZW1lbnQ6IHNlY3Rpb247IGNvbnRlbnQ6IGNvdW50ZXIoc2VjdGlvbikgXCIuIFwiOyB9XG5cbi5ibG9jay0tbGlzdCB1bCB7IHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi5ibG9jay0tbGlzdCB1bCBsaSB7IHBhZGRpbmctdG9wOiAzcHg7IHBhZGRpbmctYm90dG9tOiAzcHg7IH1cblxuLmJsb2NrLS1saXN0IGxpOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBFbGVtZW50cyB1c2VkIGEgY3Jvc3MgYmxvY2sgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jdGEgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgcmlnaHQ6IDA7IGZvbnQtZmFtaWx5OiBlbXB0eTsgei1pbmRleDogMzsgdHJhbnNpdGlvbjogYm90dG9tIDEwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5jdGEgLmJ0biB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbG9yOiAjMTQxNDE0OyBtYXJnaW46IDA7IGJvcmRlci1jb2xvcjogI2MxYzlkMDsgYm9yZGVyLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLmNhcHRpb24gLmN0YSAuYnRuIHsgYm9yZGVyLWxlZnQtd2lkdGg6IDBweDsgYm9yZGVyLXRvcC13aWR0aDogMHB4OyBib3JkZXItcmlnaHQtd2lkdGg6IDBweDsgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XG5cbi5pcy10b3VjaCAuY3RhIC5idG4geyBib3JkZXItY29sb3I6ICNmZmY3MTk7IGJhY2tncm91bmQ6ICNmZmY3MTk7IH1cblxuLmN0YSBhLmxpbmstbGFiZWwsIC5jdGEgc3Bhbi5saW5rLWxhYmVsIHsgcmlnaHQ6IDQwcHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LWZhbWlseTogXCJmdXR1cmEtcHQtYWx0XCIsIFwiZnV0dXJhLXB0XCIsIEFyaWFsLCBzYW5zLXNlcmlmOyBtYXJnaW46IDA7IHBhZGRpbmctcmlnaHQ6IDVweDsgbWFyZ2luLXJpZ2h0OiAtMXB4OyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLmN0YSBhLmxpbmstbW9yZSwgLmN0YSBzcGFuLmxpbmstbW9yZSB7IHdpZHRoOiA0MHB4OyBwYWRkaW5nOiAwOyB9XG5cbi5jdGEgYS5saW5rLW1vcmU6YWZ0ZXIsIC5jdGEgc3Bhbi5saW5rLW1vcmU6YWZ0ZXIgeyBjb250ZW50OiBcIu+EjVwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLmNhcHRpb24gLmN0YSAuYnRuIHsgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uY3RhLmRvd25sb2FkIHNwYW4ubGluay1tb3JlOmFmdGVyLCAuY3RhLmRvd25sb2FkIGEubGluay1tb3JlOmFmdGVyIHsgY29udGVudDogXCLvhLBcIjsgfVxuXG4uY3RhLnZpZGVvIHNwYW4ubGluay1tb3JlOmFmdGVyLCAuY3RhLnZpZGVvIGEubGluay1tb3JlOmFmdGVyIHsgY29udGVudDogXCLvhJZcIjsgfVxuXG4uY3RhLnBkZiBzcGFuLmxpbmstbW9yZTphZnRlciwgLmN0YS5wZGYgYS5saW5rLW1vcmU6YWZ0ZXIgeyBjb250ZW50OiBcIu+ElVwiOyB9XG5cbi5ibG9jayA+IGRpdjpob3ZlciAuY3RhIC5idG4sIGE6YWN0aXZlIC5jdGEgLmJ0biwgYTpmb2N1cyAuY3RhIC5idG4sIGE6aG92ZXIgLmN0YSAuYnRuIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgY29sb3I6ICMxNDE0MTQ7IGJvcmRlci1jb2xvcjogI2ZmZjcxOTsgfVxuXG4uYmxvY2sgPiBkaXY6aG92ZXIgLmN0YSBhLmxpbmstbGFiZWwsIC5ibG9jayA+IGRpdjpob3ZlciAuY3RhIHNwYW4ubGluay1sYWJlbCwgYTphY3RpdmUgLmN0YSBhLmxpbmstbGFiZWwsIGE6YWN0aXZlIC5jdGEgc3Bhbi5saW5rLWxhYmVsLCBhOmZvY3VzIC5jdGEgYS5saW5rLWxhYmVsLCBhOmZvY3VzIC5jdGEgc3Bhbi5saW5rLWxhYmVsLCBhOmhvdmVyIC5jdGEgYS5saW5rLWxhYmVsLCBhOmhvdmVyIC5jdGEgc3Bhbi5saW5rLWxhYmVsIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uYmxvY2sgLmJ0bi5jbG9zZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyByaWdodDogMDsgZGlzcGxheTogbm9uZTsgfVxuXG4uYmxvY2sgLmJ0bi5jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyB9XG5cbi5ibG9jayAuYnRuLmNsb3NlOjpiZWZvcmUgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogc2NhbGUoMC43KTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmJsb2NrIC5idG4uY2xvc2UgeyBkaXNwbGF5OiBibG9jazsgei1pbmRleDogNDsgfSB9XG5cbi5tYXBzLXRpcCB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAuZGlzcGxheS1mbGV4IHsgZGlzcGxheTogZmxleDsgfVxuICAuZGlzcGxheS1mbGV4IC5ibG9jayB7IHdpZHRoOiBhdXRvOyB9XG4gIC5kaXNwbGF5LWZsZXggLmJsb2NrLS1saW5rcyAuY29udGVudCwgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyB7IHBhZGRpbmc6IDIwcHg7IH0gfVxuXG4udmlkZW8tYmxvY2sgLmNvbnRlbnQtLXNlY29uZGFyeSA+IGRpdiB7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgaGVpZ2h0OiAxMDAlOyBtaW4taGVpZ2h0OiA0NTBweDsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi52aWRlby1ibG9jayAuY29udGVudC0tc2Vjb25kYXJ5ID4gZGl2IC5idG4tLXZpZGVvIHsgbWFyZ2luOiAwIGF1dG87IH1cblxuLyogRXhjZXB0aW9ucyAqL1xuLnRhZy0tdmVzc2VsLmljb24tdmVzc2VsX29mZnNob3JlX2Zsb2F0aW5nLXNoZWVybGVnIHsgZm9udC1zaXplOiA2NXB4OyB9XG5cbi5jb29raWUtbm90aWNlIHsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7IGJvdHRvbTogMDsgbGVmdDogMDsgb3BhY2l0eTogMDsgcG9zaXRpb246IGZpeGVkOyB2aXNpYmlsaXR5OiBoaWRkZW47IHdpZHRoOiAxMDAlOyB6LWluZGV4OiA1MDAwOyB9XG5cbi5jb29raWUtbm90aWNlW2RhdGEtY29va2llLW5vdGljZT1cIndhbGxcIl0geyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwLCAyMCwgMjAsIDAuNSk7IGhlaWdodDogMTAwJTsgfVxuXG4uY29va2llLW5vdGljZVtkYXRhLWNvb2tpZS1ub3RpY2U9XCJ3YWxsXCJdIC5jbi1ib3ggeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMTYzMTViOyBsZWZ0OiA1MCU7IG1heC13aWR0aDogNTAwcHg7IHBhZGRpbmc6IDMwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB3aWR0aDogODAlOyB9XG5cbi5jb29raWUtbm90aWNlW2RhdGEtY29va2llLW5vdGljZT1cImJhclwiXSAuY24tYm94IHsgYmFja2dyb3VuZC1jb2xvcjogIzE2MzE1YjsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwYWRkaW5nLXRvcDogNDBweDsgcGFkZGluZy1ib3R0b206IDQwcHg7IHdpZHRoOiAxMDAlOyB9XG5cbi5jb29raWUtbm90aWNlW2RhdGEtY29va2llLW5vdGljZT1cImJhclwiXSAuY24tYnV0dG9uLXdyYXBwZXIgLmNuLWJ1dHRvbiB7IG1hcmdpbi1ib3R0b206IDVweDsgbWFyZ2luLXJpZ2h0OiA1cHg7IHBhZGRpbmc6IDAgMTBweDsgfVxuXG4uY29va2llLW5vdGljZS1vcGVuIC5jb29raWUtbm90aWNlIHsgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uY29va2llLW5vdGljZSAuY24tY29udGVudCB7IGNvbG9yOiAjZmZmOyBtYXJnaW4tYm90dG9tOiAyNXB4OyBtYXgtd2lkdGg6IDgyMHB4OyB9XG5cbi5jb29raWUtbm90aWNlIC5jbi1jb250ZW50IGg1IHsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgbGluZS1oZWlnaHQ6IDEuMTI1ZW07IHBhZGRpbmctdG9wOiAwOyB9XG5cbi5jb29raWUtbm90aWNlIC5jbi1jb250ZW50Omxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jb29raWUtbm90aWNlIC5jbi1idXR0b24td3JhcHBlciAuY24tYnV0dG9uIHsgYm9yZGVyOiAwOyBib3JkZXItcmFkaXVzOiAwOyBjb2xvcjogIzExMjk0ZTsgY3Vyc29yOiBwb2ludGVyOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMThweDsgbGVmdDogMDsgcGFkZGluZzogMTBweCAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRleHQtYWxpZ246IGNlbnRlcjsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLmNvb2tpZS1ub3RpY2UgLmNuLWJ1dHRvbi13cmFwcGVyIC5jbi1idXR0b246Zmlyc3QtY2hpbGQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNzE5OyB9XG5cbi5jb29raWUtbm90aWNlIC5jbi1idXR0b24td3JhcHBlciAuY24tYnV0dG9uOmZpcnN0LWNoaWxkOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI0NywgMjUsIDAuNik7IH1cblxuLmNvb2tpZS1ub3RpY2UgLmNuLWJ1dHRvbi13cmFwcGVyIC5jbi1idXR0b246bGFzdC1jaGlsZCB7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5jb29raWUtbm90aWNlIC5jbi1idXR0b24td3JhcHBlciAuY24tYnV0dG9uOmxhc3QtY2hpbGQ6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZVTEwtV0lEVEggU0xJREVSIEludHJvIHdpdGgga2V5IGZpZ3VyZXMgYW5kIGFzaWRlIHdpZGdldHMgZm9yIHNoYXJlIGFuZCBjb250YWN0IGRldGFpbHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zbGlkZXItLWZ3LCAuc2xpZGVyLWhpZ2hsaWdodCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDEwMCU7IH1cblxuLnNsaWRlci0tZncgLnNsaWNrLXRyYWNrLCAuc2xpZGVyLWhpZ2hsaWdodCAuc2xpY2stdHJhY2sgeyBiYWNrZ3JvdW5kOiAjMTYzMTViOyB9XG5cbi5zbGlkZXItLWZ3IC5zbGlkZSwgLnNsaWRlci1oaWdobGlnaHQgLnNsaWRlIHsgcG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1MDBweDsgZmxvYXQ6IGxlZnQ7IG92ZXJmbG93OiBoaWRkZW47IGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IHBhZGRpbmc6IDA7IHRyYW5zaXRpb246IG9wYWNpdHkgMTAwMG1zOyB9XG5cbi5zbGlkZXItLWZ3IC5zbGlkZTpmb2N1cywgLnNsaWRlci1oaWdobGlnaHQgLnNsaWRlOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxuXG4uc2xpZGVyLS1mdyAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWRlLCAuc2xpZGVyLWhpZ2hsaWdodCAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWRlIHsgb3BhY2l0eTogMC40OyB9XG5cbi5zbGlkZXItLWZ3IC5zbGljay1pbml0aWFsaXplZCAuc2xpZGUuc2xpY2stY3VycmVudCwgLnNsaWRlci1oaWdobGlnaHQgLnNsaWNrLWluaXRpYWxpemVkIC5zbGlkZS5zbGljay1jdXJyZW50IHsgb3BhY2l0eTogMTsgdHJhbnNpdGlvbjogb3BhY2l0eSAxMDAwbXM7IH1cblxuLmhpZ2hsaWdodGVkLXNsaWRlciB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmhpZ2hsaWdodGVkLXNsaWRlciAuc2xpZGUgeyBoZWlnaHQ6IGF1dG87IH1cblxuLmhpZ2hsaWdodGVkLXNsaWRlciAuc2xpY2stZG90cyB7IGJvdHRvbTogMDsgbWFyZ2luLXRvcDogLTMycHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTAwOyB9XG5cbi5oaWdobGlnaHRlZC1zbGlkZXIgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBvcGFjaXR5OiAxOyB9XG5cbi5oaWdobGlnaHRlZC1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IG9wYWNpdHk6IDAuNjsgfVxuXG4uaGlnaGxpZ2h0ZWQtc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBvcGFjaXR5OiAxOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmhpZ2hsaWdodGVkLXNsaWRlciB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmhpZ2hsaWdodGVkLXNsaWRlciAuc2xpZGVyLS1mdyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyB9XG4gIC5jb250ZW50LS1sZWZ0IC5oaWdobGlnaHRlZC1zbGlkZXIgLnNsaWRlci0tZncgeyBmbG9hdDogcmlnaHQ7IH1cbiAgLmhpZ2hsaWdodGVkLXNsaWRlciAuc2xpZGUgeyBoZWlnaHQ6IDUwMHB4OyB9XG4gIC5zbGlkZXItaGlnaGxpZ2h0IC5jb250ZW50LS1zZWNvbmRhcnkgeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNsaWRlciBOYXZpZ2F0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2xpZGVyLW5hdiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IGhlaWdodDogNDBweDsgbWFyZ2luLXRvcDogLTIwcHg7IHdpZHRoOiAxNSU7IGN1cnNvcjogcG9pbnRlcjsgei1pbmRleDogMzsgfVxuXG4uc2xpZGVyLW5hdiBzcGFuIHsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogNDBweDsgcmlnaHQ6IDUwJTsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC0yMHB4OyBtYXJnaW4tcmlnaHQ6IC0yMHB4OyBwYWRkaW5nOiAwOyBiYWNrZ3JvdW5kOiAjZmZmOyBjb2xvcjogIzE0MTQxNDsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjUyLCAwLjA3LCAwLjYxLCAxLjE5KTsgfVxuXG4uc2xpZGVyLW5hdiBzcGFuOmJlZm9yZSB7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uc2xpZGVyLW5hdi5zbGlkZXItbmV4dCB7IHJpZ2h0OiAwOyB9XG5cbi5zbGlkZXItbmF2LnNsaWRlci1uZXh0IHNwYW46YmVmb3JlIHsgY29udGVudDogXCLvhI1cIjsgfVxuXG4uc2xpZGVyLW5hdi5zbGlkZXItcHJldiB7IGxlZnQ6IDA7IH1cblxuLnNsaWRlci1uYXYuc2xpZGVyLXByZXYgc3BhbjpiZWZvcmUgeyBjb250ZW50OiBcIu+EjFwiOyB9XG5cbi5zbGlkZXItbmF2OmZvY3VzIHNwYW4sIC5zbGlkZXItbmF2OmhvdmVyIHNwYW4geyBiYWNrZ3JvdW5kOiAjZmZmNzE5OyBjb2xvcjogIzE0MTQxNDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCk7IH1cblxuLnNsaWRlci1uYXY6Zm9jdXMuc2xpZGVyLXByZXYgc3BhbiwgLnNsaWRlci1uYXY6aG92ZXIuc2xpZGVyLXByZXYgc3BhbiB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNsaWRlci1uYXYgeyB3aWR0aDogMTAlOyBoZWlnaHQ6IDUwMHB4OyBtYXJnaW4tdG9wOiAwOyB0b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zbGlkZXItbmF2IHsgd2lkdGg6IDE1JTsgfVxuICAuc2xpZGVyLW5hdjpob3ZlciBzcGFuIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7IGNvbG9yOiAjMTQxNDE0OyB9XG4gIC5zbGlkZXItbmF2OmhvdmVyLnNsaWRlci1wcmV2IHNwYW4geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5zbGlkZXItbmF2IHsgd2lkdGg6IDIwJTsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTbGlkZXIgY2FwdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNsaWRlIC5jYXB0aW9uIHsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IGxlZnQ6IDA7IG1heC13aWR0aDogMTAwJTsgcGFkZGluZzogMjBweDsgb3ZlcmZsb3c6IGhpZGRlbjsgYmFja2dyb3VuZDogIzE2MzE1YjsgY29sb3I6ICNmZmY7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjU1LCAwLjIsIDAuNjcsIDEuMDQpLCBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0IDEwMG1zOyB0cmFuc2l0aW9uLWRlbGF5OiAwbXM7IHotaW5kZXg6IDU7IGxlZnQ6IDIwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5zbGlkZSAuY2FwdGlvbiB7IG1heC13aWR0aDogODAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2xpZGUgLmNhcHRpb24geyBwYWRkaW5nOiA0MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAuc2xpZGUgLmNhcHRpb24geyBtYXgtd2lkdGg6IDUwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2xpZGUgLmNhcHRpb24geyBsZWZ0OiA0MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2xpZGUgLmNhcHRpb24geyBsZWZ0OiA0dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5zbGlkZSAuY2FwdGlvbiB7IGxlZnQ6IDh2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLnNsaWRlIC5jYXB0aW9uIHsgbGVmdDogMTV2dzsgfSB9XG5cbi5zbGlkZSAuY2FwdGlvbi5jYXB0aW9uLS1yaWdodCB7IGxlZnQ6IGF1dG87IHJpZ2h0OiAyMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2xpZGUgLmNhcHRpb24uY2FwdGlvbi0tcmlnaHQgeyByaWdodDogNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnNsaWRlIC5jYXB0aW9uLmNhcHRpb24tLXJpZ2h0IHsgcmlnaHQ6IDR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLnNsaWRlIC5jYXB0aW9uLmNhcHRpb24tLXJpZ2h0IHsgcmlnaHQ6IDh2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLnNsaWRlIC5jYXB0aW9uLmNhcHRpb24tLXJpZ2h0IHsgcmlnaHQ6IDE1dnc7IH0gfVxuXG4uYWNjb3JkaW9uLWNudCAuc2xpZGUgLmNhcHRpb24sIC5zbGlkZXItLXNwbGl0IC5zbGlkZSAuY2FwdGlvbiB7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAwOyB9XG5cbi5hY2NvcmRpb24tY250IC5zbGlkZSAuY2FwdGlvbi5jYXB0aW9uLS1yaWdodCwgLnNsaWRlci0tc3BsaXQgLnNsaWRlIC5jYXB0aW9uLmNhcHRpb24tLXJpZ2h0IHsgbGVmdDogYXV0bzsgcmlnaHQ6IDA7IH1cblxuLnNsaWRlIC5jYXB0aW9uIGg0IHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtOyBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi5zbGlkZSAuY2FwdGlvbiBoNCArIHAgeyBtYXJnaW4tdG9wOiAxMHB4OyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zbGlkZSAuY2FwdGlvbiBwIHsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgfVxuXG4uc2xpZGUgLmNhcHRpb24gYSB7IGRpc3BsYXk6IGJsb2NrOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGNvbG9yOiAjZmZmOyB0cmFuc2l0aW9uOiBwYWRkaW5nIDIwMG1zIGN1YmljLWJlemllcigwLjUyLCAwLjA3LCAwLjYxLCAxLjE5KTsgfVxuXG4uc2xpZGUgLmNhcHRpb24gYTpob3ZlciwgLnNsaWRlIC5jYXB0aW9uIGE6Zm9jdXMsIC5zbGlkZSAuY2FwdGlvbiBhOmFjdGl2ZSB7IHBhZGRpbmctYm90dG9tOiA0MHB4OyBvdXRsaW5lOiAwOyB9XG5cbi5zbGlkZSAuY2FwdGlvbiBhOmhvdmVyIC5idG4sIC5zbGlkZSAuY2FwdGlvbiBhOmZvY3VzIC5idG4sIC5zbGlkZSAuY2FwdGlvbiBhOmFjdGl2ZSAuYnRuIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY3MTk7IH1cblxuLnNsaWNrLWFjdGl2ZSAuY2FwdGlvbiwgLnNsaWRlLmFjdGl2ZSAuY2FwdGlvbiwgLmFjdGl2ZSAuc2xpZGUgLmNhcHRpb24geyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDb250ZW50IGVsZW1lbnRzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5kaXYuc2xpZGUgYS5idG4tLXZpZGVvIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiA1MCU7IG1hcmdpbi1sZWZ0OiAtNDBweDsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC00MHB4OyB6LWluZGV4OiA2OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBIT1JJWk9OVEFMIElNQUdFIEFDQ09SRElPTiBBY2NvcmRpb24gd2l0aCBsYXJnZSBiYWNrZ3JvdW5kIGltYWdlcyBhbmQgY2FwdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWN0aW9uLS1hY2NvcmRpb24tZncgLmFjY29yZGlvbi1jbnQgeyBoZWlnaHQ6IGF1dG87IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2VjdGlvbi0tYWNjb3JkaW9uLWZ3IC5hY2NvcmRpb24tY250IHsgaGVpZ2h0OiA0NjBweDsgfSB9XG5cbi5hY2NvcmRpb24tY250IHsgYmFja2dyb3VuZDogIzE2MzE1YjsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5hY2NvcmRpb24tY250OmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9XG5cbi5hY2NvcmRpb24tY250IC5zbGlkZSB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwcHg7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgY3Vyc29yOiBwb2ludGVyOyBvdmVyZmxvdzogaGlkZGVuOyB0cmFuc2l0aW9uOiB3aWR0aCAyMDBtcyBjdWJpYy1iZXppZXIoMC41NSwgMC4yLCAwLjY3LCAxLjA0KSAzMDBtcywgYmFja2dyb3VuZC1zaXplIDIwMG1zIGN1YmljLWJlemllcigwLjU1LCAwLjIsIDAuNjcsIDEuMDQpIDBtcywgYmFja2dyb3VuZC1wb3NpdGlvbiAyMDBtcyBjdWJpYy1iZXppZXIoMC41NSwgMC4yLCAwLjY3LCAxLjA0KSAwbXM7IH1cblxuLmFjY29yZGlvbi1jbnQgLnNsaWRlOjphZnRlciB7IGNvbnRlbnQ6ICcnOyBiYWNrZ3JvdW5kOiByZ2JhKDIyLCA0OSwgOTEsIDAuNyk7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMiwgMC42NywgMS4wNCk7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyB6LWluZGV4OiAyOyB9XG5cbi5hY2NvcmRpb24tY250IC5zbGlkZTpob3Zlcjo6YWZ0ZXIsIC5hY2NvcmRpb24tY250IC5zbGlkZTphY3RpdmU6OmFmdGVyIHsgYmFja2dyb3VuZDogcmdiYSgyMiwgNDksIDkxLCAwLjgpOyB9XG5cbi5hY2NvcmRpb24tY250IC5zbGlkZSAuYmFja3N0cmV0Y2ggeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uLWNudCAuc2xpZGUuYWN0aXZlIHsgaGVpZ2h0OiBhdXRvOyAvKiBcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjUwcHg7ICovIHRyYW5zaXRpb246IHdpZHRoIDIwMG1zIGN1YmljLWJlemllcigwLjU1LCAwLjIsIDAuNjcsIDEuMDQpIDMwMG1zLCBiYWNrZ3JvdW5kLXNpemUgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMiwgMC42NywgMS4wNCkgMzAwbXM7IH1cblxuLmFjY29yZGlvbi1jbnQgLnNsaWRlLmFjdGl2ZTo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uYWNjb3JkaW9uLWNudCAuc2xpZGUuYWN0aXZlIC52LWNlbnRlciB7IHotaW5kZXg6IDY7IH1cblxuLmFjY29yZGlvbi1jbnQgLnNsaWRlLmFjdGl2ZSA+IGg0IHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MDBweCk7IHotaW5kZXg6IDE7IHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcyBjdWJpYy1iZXppZXIoMC41NSwgMC4yLCAwLjY3LCAxLjA0KSAxMDBtcywgb3BhY2l0eSA0MDBtcyBsaW5lYXIgMG1zOyB9XG5cbi5hY2NvcmRpb24tY250IC5zbGljay1kb3RzIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uYWNjb3JkaW9uLWNudCAuc2xpZGUgLmNhcHRpb24geyBtYXgtd2lkdGg6IG5vbmU7IHdpZHRoOiAxMDAlOyBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbi10b3A6IDIwMHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3MjBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7IC5hY2NvcmRpb24tY250IC5zbGlkZSB7IGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvOyB9XG4gIC5hY2NvcmRpb24tY250IC5zbGlkZSAuY2FwdGlvbiB7IG1hcmdpbi10b3A6IDQxJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuYWNjb3JkaW9uLWNudCAuc2xpZGUgeyBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bzsgfVxuICAuYWNjb3JkaW9uLWNudCAuc2xpZGUgLmNhcHRpb24geyBtYXJnaW4tdG9wOiA0MSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5hY2NvcmRpb24tY250IC5zbGljay1kb3RzIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLmFjY29yZGlvbi1jbnQgLnNsaWRlIHsgd2lkdGg6IDMzJTsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZC1zaXplOiBhdXRvIDQ2MHB4OyB9XG4gIC5hY2NvcmRpb24tY250IC5zbGlkZTo6bGFzdC1vZi10eXBlIHsgd2lkdGg6IDM0JTsgfVxuICAuYWNjb3JkaW9uLWNudC5pcy1vcGVuZWQgLnNsaWRlIHsgd2lkdGg6IDIyJTsgfVxuICAuYWNjb3JkaW9uLWNudC5pcy1vcGVuZWQgLnNsaWRlLmFjdGl2ZSB7IHdpZHRoOiA1NiU7IGhlaWdodDogMTAwJTsgfVxuICAuYWNjb3JkaW9uLWNudC5hY2NvcmRpb24tLXR3byAuc2xpZGUgeyB3aWR0aDogNTAlOyB9XG4gIC5hY2NvcmRpb24tY250LmFjY29yZGlvbi0tdHdvLmlzLW9wZW5lZCAuc2xpZGUgeyB3aWR0aDogNDQlOyB9XG4gIC5hY2NvcmRpb24tY250LmFjY29yZGlvbi0tdHdvLmlzLW9wZW5lZCAuc2xpZGUuYWN0aXZlIHsgd2lkdGg6IDU2JTsgfVxuICAuYWNjb3JkaW9uLWNudC5hY2NvcmRpb24tLWZvdXIgLnNsaWRlIHsgd2lkdGg6IDI1JTsgfVxuICAuYWNjb3JkaW9uLWNudC5hY2NvcmRpb24tLWZvdXIuaXMtb3BlbmVkIC5zbGlkZSB7IHdpZHRoOiAxNSU7IH1cbiAgLmFjY29yZGlvbi1jbnQuYWNjb3JkaW9uLS1mb3VyLmlzLW9wZW5lZCAuc2xpZGUuYWN0aXZlIHsgd2lkdGg6IDU1JTsgfVxuICAuYWNjb3JkaW9uLWNudCAuc2xpZGUgLmNhcHRpb24geyBoZWlnaHQ6IGF1dG87IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbWFyZ2luLXRvcDogMDsgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5hY2NvcmRpb24tY250IC5zbGlkZTpmaXJzdC1jaGlsZCA+IGg0IHsgdGV4dC1hbGlnbjogcmlnaHQ7IGxlZnQ6IGF1dG87IHJpZ2h0OiA0MHB4OyB9IH1cblxuLmFjY29yZGlvbi1jbnQgLnNsaWRlID4gaDQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogNDBweDsgbGVmdDogNDBweDsgdGV4dC1hbGlnbjogbGVmdDsgY29sb3I6ICNmZmY7IHotaW5kZXg6IDQ7IG1hcmdpbi1ib3R0b206IDA7IG1heC13aWR0aDogODAlOyBmb250LXNpemU6IDEuNWVtOyBsaW5lLWhlaWdodDogMS4yOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNzAwbXMgY3ViaWMtYmV6aWVyKDAuNTIsIDAuMDcsIDAuNjEsIDEuMTkpIDBtcywgb3BhY2l0eSA3MDBtcyBsaW5lYXIgNDAwbXM7IH1cblxuLmFjY29yZGlvbi1jbnQgLnNsaWRlIC5idG4tLWNsb3NlIHsgYmFja2dyb3VuZDogbm9uZTsgY29sb3I6ICNmZmY7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogMTA7IGxlZnQ6IDIwcHg7IHRvcDogMjBweDsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5hY2NvcmRpb24tY250IC5zbGlkZSAuYnRuLS1jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLmFjY29yZGlvbi1jbnQgLnNsaWRlLmFjdGl2ZSAuYnRuLS1jbG9zZSB7IHZpc2liaWxpdHk6IHZpc2libGU7IG9wYWNpdHk6IDE7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNMSUNLIFNMSURFUiBERUZBVUxUIFNUWUxJTkcgRGVmYXVsdCBDU1MgbmVlZGVkIGZvciB0aGUgc2xpY2sgc2xpZGVyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2xpY2stc2xpZGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAtbW96LXVzZXItc2VsZWN0OiBub25lOyAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IHVzZXItc2VsZWN0OiBub25lOyAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7IHRvdWNoLWFjdGlvbjogcGFuLXk7IC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3QgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGJsb2NrOyBvdmVyZmxvdzogaGlkZGVuOyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH1cblxuLnNsaWNrLWxpc3Q6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cbi5zbGljay1saXN0LmRyYWdnaW5nIHsgY3Vyc29yOiBwb2ludGVyOyBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3QgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNsaWNrLXRyYWNrIHsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDA7IGxlZnQ6IDA7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7IGRpc3BsYXk6IHRhYmxlOyBjb250ZW50OiAnJzsgfVxuXG4uc2xpY2stdHJhY2s6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHsgZGlzcGxheTogbm9uZTsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogMTAwJTsgbWluLWhlaWdodDogMXB4OyB9XG5cbltkaXI9J3J0bCddIC5zbGljay1zbGlkZSB7IGZsb2F0OiByaWdodDsgfVxuXG4uc2xpY2stc2xpZGUgaW1nIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogYXV0bzsgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNMSUNLIFNMSURFUiBOQVZJR0FUSU9OIFN0eWxpbmcgZm9yIHRoZSBkZWZhdWx0IGFycm93cyBhbmQgZG90dGVkIG5hdmlnYXRpb24gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zbGljay1kb3RzIHsgcG9zaXRpb246IHN0YXRpYzsgYm90dG9tOiAtMzVweDsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBwYWRkaW5nOiAwOyBsaXN0LXN0eWxlOiBub25lOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbjogMDsgbWFyZ2luLXRvcDogNDBweDsgaGVpZ2h0OiAxMHB4OyB9XG5cbi5hY2NvcmRpb24tY250ICsgLnNsaWNrLWRvdHMgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5jbnQtLWNhcm91c2VsIC5zbGljay1kb3RzLCAuY250LS1vdmVyZmxvdyAuc2xpY2stZG90cyB7IG1hcmdpbi10b3A6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2xpY2stZG90cyB7IC8qIC5jbnQtLWNhcm91c2VsICYsIC5jbnQtLW92ZXJmbG93ICYgeyBwb3NpdGlvbjogYWJzb2x1dGU7IH0gKi8gfVxuICAuYWNjb3JkaW9uLWNudCArIC5zbGljay1kb3RzIHsgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uc2xpY2stZG90cyBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogMTBweDsgaGVpZ2h0OiAxMHB4OyBtYXJnaW46IDBweCA3cHg7IHBhZGRpbmc6IDA7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc2xpY2stZG90cyBsaSBidXR0b24geyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwcHg7IGhlaWdodDogMTBweDsgY3Vyc29yOiBwb2ludGVyOyBjb2xvcjogdHJhbnNwYXJlbnQ7IGJvcmRlcjogMDsgb3V0bGluZTogbm9uZTsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOjpiZWZvcmUgeyBjb250ZW50OiAnJzsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IGJvcmRlci1yYWRpdXM6IDMwcHg7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgZWFzZSwgdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxuXG4uc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6OmJlZm9yZSwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOjpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjOGZhOGNiOyB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7IH1cblxuLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjMTYzMTViOyB9XG5cbi5zbGljay1hcnJvdyB7IGRpc3BsYXk6IG5vbmU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDQwcHg7IGhlaWdodDogNDBweDsgbGluZS1oZWlnaHQ6IDQwcHg7IHJpZ2h0OiA1MCU7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtMjBweDsgcGFkZGluZzogMDsgYmFja2dyb3VuZDogI2ZmZjsgY29sb3I6IHRyYW5zcGFyZW50OyBvdmVyZmxvdzogaGlkZGVuOyBib3JkZXItcmFkaXVzOiAwOyB6LWluZGV4OiAxMDsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjUyLCAwLjA3LCAwLjYxLCAxLjE5KTsgfVxuXG4uc2xpY2stYXJyb3c6OmJlZm9yZSB7IGNvbG9yOiAjMTQxNDE0OyBkaXNwbGF5OiBibG9jazsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2xpY2stYXJyb3cgeyBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5zbGljay1hcnJvdy5zbGljay1uZXh0IHsgcmlnaHQ6IDBweDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2stbmV4dDpiZWZvcmUgeyBjb250ZW50OiBcIu+EjVwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6OmJlZm9yZSB7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1wcmV2IHsgbGVmdDogMHB4OyByaWdodDogYXV0bzsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2stcHJldjpiZWZvcmUgeyBjb250ZW50OiBcIu+EjFwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7IC5jbnQtLW92ZXJmbG93IC5zbGljay1hcnJvdy5zbGljay1uZXh0LCAuY250LS1vdmVyZmxvdyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7IGJvdHRvbTogLTEwcHg7IHRvcDogYXV0bzsgfVxuICAuY250LS1vdmVyZmxvdyAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7IHJpZ2h0OiAxMHB4OyB9XG4gIC5jbnQtLW92ZXJmbG93IC5zbGljay1hcnJvdy5zbGljay1wcmV2IHsgbGVmdDogMTBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLnNsaWNrLWFycm93LnNsaWNrLW5leHQgeyByaWdodDogLTYwcHg7IH1cbiAgLnNsaWNrLWFycm93LnNsaWNrLXByZXYgeyBsZWZ0OiAtNjBweDsgfSB9XG5cbi5zbGljay1hcnJvdzpmb2N1czpub3QoLnNsaWNrLWRpc2FibGVkKSwgLnNsaWNrLWFycm93OmhvdmVyOm5vdCguc2xpY2stZGlzYWJsZWQpLCAuc2xpY2stYXJyb3c6YWN0aXZlOm5vdCguc2xpY2stZGlzYWJsZWQpIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7IH1cblxuLnNsaWNrLWFycm93OmZvY3VzOm5vdCguc2xpY2stZGlzYWJsZWQpOjpiZWZvcmUsIC5zbGljay1hcnJvdzpob3Zlcjpub3QoLnNsaWNrLWRpc2FibGVkKTo6YmVmb3JlLCAuc2xpY2stYXJyb3c6YWN0aXZlOm5vdCguc2xpY2stZGlzYWJsZWQpOjpiZWZvcmUgeyBjb2xvcjogI2ZmZjsgfVxuXG4uc2xpY2stYXJyb3c6Zm9jdXM6bm90KC5zbGljay1kaXNhYmxlZCkuc2xpY2stcHJldiwgLnNsaWNrLWFycm93OmhvdmVyOm5vdCguc2xpY2stZGlzYWJsZWQpLnNsaWNrLXByZXYsIC5zbGljay1hcnJvdzphY3RpdmU6bm90KC5zbGljay1kaXNhYmxlZCkuc2xpY2stcHJldiB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2stZGlzYWJsZWQgeyBvcGFjaXR5OiAwLjM7IGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uc2xpY2stYXJyb3ctYmx1ZSwgLnNlY3Rpb24tLW91ci1icmFuZHMgLnNsaWNrLWFycm93IHsgYmFja2dyb3VuZDogIzhmYThjYjsgfVxuXG4uc2xpY2stYXJyb3ctYmx1ZTo6YmVmb3JlLCAuc2VjdGlvbi0tb3VyLWJyYW5kcyAuc2xpY2stYXJyb3c6OmJlZm9yZSB7IGNvbG9yOiAjZmZmOyB9XG5cbi5zbGljay1hcnJvdy1ibHVlOmZvY3VzOm5vdCguc2xpY2stZGlzYWJsZWQpLCAuc2VjdGlvbi0tb3VyLWJyYW5kcyAuc2xpY2stYXJyb3c6Zm9jdXM6bm90KC5zbGljay1kaXNhYmxlZCksIC5zbGljay1hcnJvdy1ibHVlOmhvdmVyOm5vdCguc2xpY2stZGlzYWJsZWQpLCAuc2VjdGlvbi0tb3VyLWJyYW5kcyAuc2xpY2stYXJyb3c6aG92ZXI6bm90KC5zbGljay1kaXNhYmxlZCksIC5zbGljay1hcnJvdy1ibHVlOmFjdGl2ZTpub3QoLnNsaWNrLWRpc2FibGVkKSwgLnNlY3Rpb24tLW91ci1icmFuZHMgLnNsaWNrLWFycm93OmFjdGl2ZTpub3QoLnNsaWNrLWRpc2FibGVkKSB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IH1cblxudWxbZGF0YS1waWUtaWRdIHsgbGlzdC1zdHlsZTogbm9uZTsgcGFkZGluZzogMTBweDsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG51bFtkYXRhLXBpZS1pZF0gPiAqOm50aC1jaGlsZCgxKTo6YmVmb3JlIHsgY29udGVudDogJyc7IGhlaWdodDogMTVweDsgd2lkdGg6IDE1cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgYmFja2dyb3VuZDogIzExMjk0ZTsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG5cbnVsW2RhdGEtcGllLWlkXSA+ICo6bnRoLWNoaWxkKDIpOjpiZWZvcmUgeyBjb250ZW50OiAnJzsgaGVpZ2h0OiAxNXB4OyB3aWR0aDogMTVweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBiYWNrZ3JvdW5kOiAjMTYzMTViOyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cblxudWxbZGF0YS1waWUtaWRdID4gKjpudGgtY2hpbGQoMyk6OmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyBoZWlnaHQ6IDE1cHg7IHdpZHRoOiAxNXB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IG1hcmdpbi1yaWdodDogMTBweDsgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuXG51bFtkYXRhLXBpZS1pZF0gPiAqOm50aC1jaGlsZCg0KTo6YmVmb3JlIHsgY29udGVudDogJyc7IGhlaWdodDogMTVweDsgd2lkdGg6IDE1cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgYmFja2dyb3VuZDogI2I2YzVkOTsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG5cbnVsW2RhdGEtcGllLWlkXSA+ICo6bnRoLWNoaWxkKDUpOjpiZWZvcmUgeyBjb250ZW50OiAnJzsgaGVpZ2h0OiAxNXB4OyB3aWR0aDogMTVweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBiYWNrZ3JvdW5kOiAjZDVkZWU2OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cblxudWxbZGF0YS1waWUtaWRdID4gKjpudGgtY2hpbGQoNik6OmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyBoZWlnaHQ6IDE1cHg7IHdpZHRoOiAxNXB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6ICNlYWVlZjI7IG1hcmdpbi1yaWdodDogMTBweDsgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuXG51bFtkYXRhLXBpZS1pZF0gPiAqOm50aC1jaGlsZCg3KTo6YmVmb3JlIHsgY29udGVudDogJyc7IGhlaWdodDogMTVweDsgd2lkdGg6IDE1cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgYmFja2dyb3VuZDogI2MxYzlkMDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtY29udGVudC5jb250ZW50LS1jaGFydCB7IHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4vKiBPd24gc3R5bGluZyAqL1xuLmNoYXJ0LWNudCB7IG1hcmdpbjogMCBhdXRvOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuY2hhcnQtLWRvdWJsZSAuY2hhcnQtY250IHsgbWFyZ2luOiAwOyBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgfSB9XG5cbi5jaGFydC0tcGllIHsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXgtd2lkdGg6IDM3MHB4OyBoZWlnaHQ6IDA7IHBhZGRpbmctYm90dG9tOiAxMDAlOyBtYXJnaW46IDAgYXV0bzsgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jaGFydC0tcGllIHsgcGFkZGluZy1ib3R0b206IDQwMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jaGFydC1jbnQuZG91YmxlIC5jaGFydC0tcGllIHsgbWFyZ2luOiAwOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA1MCU7IH0gfVxuXG4uY2hhcnQtLXBpZSAuY2hhcnQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IHotaW5kZXg6IDE7IGhlaWdodDogMTAwJTsgfVxuXG4uY2hhcnQtLXBpZSAuY2hhcnQgdGV4dCB7IGZvbnQtZmFtaWx5OiBcImZ1dHVyYS1wdC1hbHRcIiwgXCJmdXR1cmEtcHRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5jaGFydC0tcGllIC5pbm5lciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDcwJTsgdGV4dC1hbGlnbjogY2VudGVyOyB0b3A6IDUwJTsgbGVmdDogNTAlOyB6LWluZGV4OiAzOyBoZWlnaHQ6IDkwcHg7IG1hcmdpbi10b3A6IC00NXB4OyBtYXJnaW4tbGVmdDogLTM1JTsgfVxuXG4uY2hhcnQtLXBpZSAuaW5uZXIgPiAqIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmNoYXJ0LS1waWUgLmlubmVyIGgzIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zaXplOiAxLjExMTExMTExMTFlbTsgcGFkZGluZy10b3A6IDA7IG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG4uY2hhcnQtLXBpZSAuaW5uZXIgc3Ryb25nIHsgZm9udC1zaXplOiAxLjY2NjY2NjY2NjdlbTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjOGZhOGNiOyB9XG5cbi5jaGFydC0tcGllIC5pbm5lciBzbWFsbCB7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jaGFydC0tcGllIC5pbm5lciBzdHJvbmcgeyBmb250LXNpemU6IDEuODg4ODg4ODg4OWVtOyB9IH1cblxuLmNoYXJ0LS1sZWdlbmQgeyBjbGVhcjogYm90aDsgfVxuXG4uY2hhcnQtLWxlZ2VuZCB1bDpudGgtY2hpbGQoMikgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5jaGFydC0tbGVnZW5kIGxpIHsgZGlzcGxheTogYmxvY2s7IG1hcmdpbi1yaWdodDogMTBweDsgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLmNoYXJ0LS1sZWdlbmQgbGkuYWN0aXZlOjpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjZmZmNzE5OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuY2hhcnQtLWxlZ2VuZCB7IHdpZHRoOiA2MCU7IG1hcmdpbjogMCBhdXRvOyB9XG4gIC5jaGFydC0tbGVnZW5kLmxlZ2VuZC0taG9yaXpvbnRhbCB7IHdpZHRoOiAxMDAlOyB9XG4gIC5jaGFydC0tbGVnZW5kLmxlZ2VuZC0taG9yaXpvbnRhbCB1bCB7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmNoYXJ0LS1sZWdlbmQubGVnZW5kLS1ob3Jpem9udGFsIGxpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IDEwcHg7IH0gfVxuXG4uY2hhcnQtY250LmRvdWJsZSAuY2hhcnQtLWxlZ2VuZCB1bDpmaXJzdC1jaGlsZCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmdvb2dsZS12aXN1YWxpemF0aW9uLXRvb2x0aXAgeyBiYWNrZ3JvdW5kOiAjZmZmNzE5ICFpbXBvcnRhbnQ7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgcGFkZGluZzogMTBweCAhaW1wb3J0YW50OyB9XG5cbi5nb29nbGUtdmlzdWFsaXphdGlvbi10b29sdGlwLWl0ZW0tbGlzdCB7IG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5nb29nbGUtdmlzdWFsaXphdGlvbi10b29sdGlwLWl0ZW0geyBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4uZ29vZ2xlLXZpc3VhbGl6YXRpb24tdG9vbHRpcC1pdGVtOjpiZWZvcmUgeyBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIElGUkFNRSBDSEFSVCBFTEVNRU5UUyBDb250ZW50IGVsZW1lbnQgd2l0aCBiaWcgbnVtYmVycyB0byBkaXNwbGF5IGRhdGEsIHVzZWQgb24gSVIgbGFuZGluZ3NwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29udGVudC0tc3RvY2stY2hhcnQgaWZyYW1lIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgfVxuXG4uY29udGVudC0tc3RvY2stY2hhcnQgI21pbmlDaGFydCB7IG1hcmdpbi1ib3R0b206IDEwMHB4OyB9XG5cbi5zdG9jay1jaGFydC0tcHJpY2VJbmZvcm1hdGlvbiBpZnJhbWUgeyBoZWlnaHQ6IDU1MHB4OyB9XG5cbi5zdG9jay1jaGFydC0tZWZmaWNpZW5jeUNhbGN1bGF0b3IgaWZyYW1lIHsgaGVpZ2h0OiA1NjBweDsgfVxuXG4uc3RvY2stY2hhcnQtLWhpc3RvcmljYWxQcmljZURpc3BsYXkgaWZyYW1lIHsgaGVpZ2h0OiAzNzVweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTlVNQkVSUyBDT05URU5UIEVMRU1FTlQgQ29udGVudCBlbGVtZW50IHdpdGggYmlnIG51bWJlcnMgdG8gZGlzcGxheSBkYXRhLCB1c2VkIG9uIElSIGxhbmRpbmdzcGFnZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbnRlbnQtLW51bWJlcnMgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb250ZW50LS1udW1iZXJzIHsgcGFkZGluZy10b3A6IDEwMHB4OyBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IH0gfVxuXG4ubnVtYmVycy1jbnQgeyBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG5cbi5udW1iZXJzLWNudDphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLm51bWJlcnMtY250IC5iaWctbnVtYmVyIHsgd2lkdGg6IDMzJTsgZmxvYXQ6IGxlZnQ7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjMWM5ZDA7IGJvcmRlci1ib3R0b206IDA7IH1cbiAgLm51bWJlcnMtY250IC5iaWctbnVtYmVyOmxhc3QtY2hpbGQgeyBib3JkZXItcmlnaHQ6IDA7IH0gfVxuXG4uYmlnLW51bWJlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjMWM5ZDA7IHBhZGRpbmc6IDIwcHg7IH1cblxuLmJpZy1udW1iZXIgaDMgeyBmb250LXdlaWdodDogbm9ybWFsOyBwYWRkaW5nLXRvcDogMDsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7IC5iaWctbnVtYmVyIGgzIHsgZm9udC1zaXplOiAxLjE2NjY2NjY2NjdlbTsgfSB9XG5cbi5iaWctbnVtYmVyIHN0cm9uZyB7IGNvbG9yOiAjOGZhOGNiOyBmb250LXNpemU6IDIuMTExMTExMTExMWVtOyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDE7IH1cblxuLmJpZy1udW1iZXI6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIERJUkVDVElPTlMgRk9STSBFTEVNRU5UUyBsaW5rcyB0b2dnbGUgYSBzaW1wbGUgZm9ybSB0byBnZXQgZGlyZWN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnRvZ2dsZS1saW5rW2RhdGEtZGlyZWN0aW9uc10geyBjb2xvcjogIzhmYThjYjsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4ZmE4Y2I7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udG9nZ2xlLWxpbmtbZGF0YS1kaXJlY3Rpb25zXTpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgY29sb3I6ICMxNjMxNWI7IH1cblxuLnRvZ2dsZS1saW5rW2RhdGEtZGlyZWN0aW9uc10uYWN0aXZlIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjMTYzMTViOyBib3JkZXItYm90dG9tOiAwOyB9XG5cbi50b2dnbGUtbGlua1tkYXRhLWRpcmVjdGlvbnNdLmFjdGl2ZTphZnRlciB7IGNvbnRlbnQ6IFwi74SAXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4udG9nZ2xlLWxpbmtbZGF0YS1kaXJlY3Rpb25zXS5hY3RpdmU6OmFmdGVyIHsgZm9udC1zaXplOiAwLjZlbTsgbWFyZ2luLWxlZnQ6IDVweDsgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cblxuLmZvcm0tLWRpcmVjdGlvbnMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IG5vbmU7IG1hcmdpbi10b3A6IDEwcHg7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tLWRpcmVjdGlvbnMgaW5wdXQgeyBib3JkZXI6IDFweCBzb2xpZCAjZWFlZWYyOyB9XG5cbi5mb3JtLS1kaXJlY3Rpb25zIGlucHV0OmZvY3VzIHsgYm9yZGVyLWNvbG9yOiAjOGZhOGNiOyBib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAxcHggIzhmYThjYjsgfVxuXG4uZGlyZWN0aW9ucy1jbnQgeyBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5kaXJlY3Rpb25zLWNudCBzdHJvbmcgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTElTVCBXSVRIIEJVVFRPTiAvIERST1BET1dOIEVMRU1FTlQgVXNlZCBmb3IgdGhlIGNhbGVuZGFyLCBkb3dubG9hZCBvdmVydmlldyBldGMuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uIHsgbWFyZ2luOiAwIGF1dG87IGxpc3Qtc3R5bGU6IG5vbmU7IC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBWYXJpYXRpb25zIGluIGxheW91dCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLyAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gT3RoZXIgZWxlbWVudHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8gfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uID4gbGkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGJhY2tncm91bmQ6ICNlYWVlZjI7IHBhZGRpbmc6IDEwcHggNjBweCAxMHB4IDIwcHg7IG1hcmdpbi1ib3R0b206IDFweDsgfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uID4gbGk6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiB0YWJsZTsgY2xlYXI6IGJvdGg7IH1cblxuLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIHRpbWUgeyBtYXJnaW4tcmlnaHQ6IDIwcHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBkaXNwbGF5OiBibG9jazsgfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uID4gbGkgaDIgeyBmb250LXNpemU6IDFlbTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBkaXNwbGF5OiBpbmxpbmU7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIGgyIHN0cm9uZyB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uID4gbGkgaDIgc3BhbiB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGRpc3BsYXk6IGlubGluZTsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSBhLmxpbmsgeyBjb2xvcjogIzE2MzE1YjsgfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uID4gbGkgYS5saW5rIHNwYW4geyBib3JkZXItY29sb3I6ICMxNjMxNWI7IH1cblxuLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIGEubGluayBzcGFuOmFmdGVyIHsgY29udGVudDogXCLvhI1cIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSBhLmxpbmsgc3Bhbjo6YWZ0ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGZvbnQtc2l6ZTogMC43Nzc3Nzc3Nzc4ZW07IG1hcmdpbi10b3A6IDVweDsgbWFyZ2luLWxlZnQ6IDEwcHg7IGNvbG9yOiAjMTYzMTViOyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSBhLmxpbms6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGNvbG9yOiAjMTYzMTViOyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSBhLmxpbms6aG92ZXIgc3BhbiB7IGJvcmRlci1jb2xvcjogI2Q1ZGVlNjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIHsgcGFkZGluZzogMCAxNzBweCAwIDIwcHg7IGxpbmUtaGVpZ2h0OiA2MHB4OyBtYXgtaGVpZ2h0OiA2MHB4OyB9XG4gIC5saXN0LS1vdmVydmlldy1hY3Rpb24ubGlzdC0tZmxleC1oZWlnaHQgPiBsaSB7IG1heC1oZWlnaHQ6IG5vbmU7IH1cbiAgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIHRpbWUgeyBkaXNwbGF5OiBpbmxpbmU7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubGlzdC0tb3ZlcnZpZXctYWN0aW9uID4gbGkgaDIgeyBsaW5lLWhlaWdodDogbm9ybWFsOyB3aWR0aDogMTAwJTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgbWFyZ2luLXRvcDogLTFweDsgcGFkZGluZy10b3A6IDEwcHg7IHBhZGRpbmctYm90dG9tOiAxMHB4OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIC5saXN0LS1vdmVydmlldy1hY3Rpb24ubGlzdC0tY2FsZW5kYXIgPiBsaSBoMiB7IHdpZHRoOiA3NSU7IH0gfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4geyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDA7IGhlaWdodDogMTAwJTsgYXBwZWFyYW5jZTogbm9uZTsgd2lkdGg6IDUwcHg7IGZvbnQtc2l6ZTogMWVtOyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gLmJ0bjo6YWZ0ZXIsIC5saXN0LS1vdmVydmlldy1hY3Rpb24gLmJ0bjo6YmVmb3JlLCAubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4gc3BhbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgbGVmdDogMDsgfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4gLm9wZW4sIC5saXN0LS1vdmVydmlldy1hY3Rpb24gLmJ0bjpob3ZlciB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IGNvbG9yOiAjZmZmOyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gLmJ0bjpmb2N1cywgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiAuYnRuOmFjdGl2ZSB7IGJhY2tncm91bmQ6ICM3ZDkzYjM7IGNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4gc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbjpub3QoLmxpc3QtLWNhbGVuZGFyKSAuYnRuIHsgbGluZS1oZWlnaHQ6IDYwcHg7IHBhZGRpbmctdG9wOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgd2lkdGg6IGF1dG87IG1pbi13aWR0aDogMTQycHg7IH1cbiAgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbjpub3QoLmxpc3QtLWNhbGVuZGFyKSAuYnRuOjphZnRlciwgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbjpub3QoLmxpc3QtLWNhbGVuZGFyKSAuYnRuOjpiZWZvcmUsIC5saXN0LS1vdmVydmlldy1hY3Rpb246bm90KC5saXN0LS1jYWxlbmRhcikgLmJ0biBzcGFuIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTsgcG9zaXRpb246IHN0YXRpYzsgd2lkdGg6IGF1dG87IHBhZGRpbmc6IDAgNXB4OyB9XG4gIC5saXN0LS1vdmVydmlldy1hY3Rpb246bm90KC5saXN0LS1jYWxlbmRhcikgLmJ0biBzcGFuIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbi5saXN0LS1jYWxlbmRhciAuYnRuIHsgcGFkZGluZzogMCAzMHB4OyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24ubGlzdC0tY2VudGVyZWQgeyBtYXgtd2lkdGg6IDgwMHB4OyB9XG5cbi5wYWdlLWNvbnRlbnQgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiB7IGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5wYWdlLWNvbnRlbnQgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmNudC0tYXNpZGUgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiB7IHBhZGRpbmctbGVmdDogMjBweDsgcGFkZGluZy1yaWdodDogY2FsYygzMy4zMzMzJSArIDIwcHgpOyB9IH1cblxuLmJnLS1saWdodC1ibHVlIC5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSB7IGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiAuYnRuLS1kcm9wZG93bjphZnRlciB7IGNvbnRlbnQ6IFwi74SLXCI7IH1cblxuLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiAuYnRuLS1kcm9wZG93bjo6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4tLWRyb3Bkb3duLm9wZW4geyBiYWNrZ3JvdW5kOiAjMTEyOTRlOyB9XG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24gLmJ0bi0tZHJvcGRvd24ub3BlbjphZnRlciB7IGNvbnRlbnQ6IFwi74SOXCI7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4tLWRyb3Bkb3duOjpiZWZvcmUgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4ubGlzdC0tb3ZlcnZpZXctYWN0aW9uIC5idG4uaWNvbi1jYWxlbmRhcjo6YmVmb3JlIHsgZm9udC1zaXplOiAyMHB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5wYWdlLWNvbnRlbnQgaDMgKyAubGlzdC0tb3ZlcnZpZXctYWN0aW9uIHsgbWFyZ2luLXRvcDogMTVweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQVVUT0NPTVBMRVRFIERST1BET1dOIEJhc2VkIG9uIGpRdWVyeSBVSSdzIEF1dG9jb21wbGV0ZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnVpLWF1dG9jb21wbGV0ZSB7IGxpc3Qtc3R5bGU6IG5vbmU7IGJvcmRlcjogMXB4IHNvbGlkICNmZmY7IG1hcmdpbjogMDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHotaW5kZXg6IDEwMDsgfVxuXG4udWktYXV0b2NvbXBsZXRlIGxpIGEgeyBiYWNrZ3JvdW5kOiAjOTBBOENDOyBjb2xvcjogI2ZmZjsgZGlzcGxheTogYmxvY2s7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IGhlaWdodDogNTBweDsgb3ZlcmZsb3c6IGhpZGRlbjsgbGluZS1oZWlnaHQ6IDUwcHg7IHBhZGRpbmc6IDAgMTBweDsgd2lkdGg6IDEwMCU7IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi51aS1hdXRvY29tcGxldGUgbGkgYSBzdHJvbmcgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsgfVxuXG4udWktYXV0b2NvbXBsZXRlIGxpIGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnVpLWF1dG9jb21wbGV0ZSBsaS51aS1zdGF0ZS1mb2N1cyBhIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgfVxuXG4udHgtc29sci1hdXRvc3VnZ2VzdCwgLnVpLWF1dG9jb21wbGV0ZSB7IGJhY2tncm91bmQ6ICM5MEE4Q0M7IGxpc3Qtc3R5bGU6IG5vbmU7IGJvcmRlcjogMXB4IHNvbGlkICNmZmY7IG1hcmdpbjogMDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHotaW5kZXg6IDEwMDsgfVxuXG4udHgtc29sci1hdXRvc3VnZ2VzdCAuYXV0b2NvbXBsZXRlLXN1Z2dlc3Rpb24sIC50eC1zb2xyLWF1dG9zdWdnZXN0IC51aS1tZW51LWl0ZW0sIC51aS1hdXRvY29tcGxldGUgLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9uLCAudWktYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW0geyBjb2xvcjogI2ZmZjsgZGlzcGxheTogYmxvY2s7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IGhlaWdodDogNTBweDsgb3ZlcmZsb3c6IGhpZGRlbjsgbGluZS1oZWlnaHQ6IDUwcHg7IHBhZGRpbmc6IDAgMTBweDsgd2lkdGg6IDEwMCU7IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi50eC1zb2xyLWF1dG9zdWdnZXN0IC5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbiBzdHJvbmcsIC50eC1zb2xyLWF1dG9zdWdnZXN0IC51aS1tZW51LWl0ZW0gc3Ryb25nLCAudWktYXV0b2NvbXBsZXRlIC5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbiBzdHJvbmcsIC51aS1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbSBzdHJvbmcgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsgfVxuXG4udHgtc29sci1hdXRvc3VnZ2VzdCAuYXV0b2NvbXBsZXRlLXN1Z2dlc3Rpb246aG92ZXIsIC50eC1zb2xyLWF1dG9zdWdnZXN0IC51aS1tZW51LWl0ZW06aG92ZXIsIC51aS1hdXRvY29tcGxldGUgLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9uOmhvdmVyLCAudWktYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW06aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnR4LXNvbHItYXV0b3N1Z2dlc3QgLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9uLnVpLXN0YXRlLWZvY3VzLCAudHgtc29sci1hdXRvc3VnZ2VzdCAuYXV0b2NvbXBsZXRlLXN1Z2dlc3Rpb24uYXV0b2NvbXBsZXRlLXNlbGVjdGVkLCAudHgtc29sci1hdXRvc3VnZ2VzdCAudWktbWVudS1pdGVtLnVpLXN0YXRlLWZvY3VzLCAudHgtc29sci1hdXRvc3VnZ2VzdCAudWktbWVudS1pdGVtLmF1dG9jb21wbGV0ZS1zZWxlY3RlZCwgLnVpLWF1dG9jb21wbGV0ZSAuYXV0b2NvbXBsZXRlLXN1Z2dlc3Rpb24udWktc3RhdGUtZm9jdXMsIC51aS1hdXRvY29tcGxldGUgLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9uLmF1dG9jb21wbGV0ZS1zZWxlY3RlZCwgLnVpLWF1dG9jb21wbGV0ZSAudWktbWVudS1pdGVtLnVpLXN0YXRlLWZvY3VzLCAudWktYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW0uYXV0b2NvbXBsZXRlLXNlbGVjdGVkIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgfVxuXG4udWktbWVudS1pdGVtIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5zbWFsbC1kb3dubG9hZHMgeyB3aWR0aDogNjAlOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBERUZBVUxUIFdJREdFVCBTVFlMSU5HIFN0eWxpbmcgb2YgYWxsIHRoZSB3aWRnZXRzIHVzZWQgdGhyb3VnaCBvdXQgdGhlIHNpdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQgeyBtYXJnaW4tYm90dG9tOiA0MHB4OyAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVmFyaWF0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLyB9XG5cbi53aWRnZXQgaDQgeyBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtOyBtYXJnaW4tYm90dG9tOiAxMHB4OyBwYWRkaW5nLXRvcDogMDsgfVxuXG4ud2lkZ2V0IGRsIHsgbGluZS1oZWlnaHQ6IDEuMWVtOyB9XG5cbi53aWRnZXQgZHQgeyBwYWRkaW5nLXRvcDogMTVweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDVkZWU2OyB9XG5cbi53aWRnZXQgZGQgeyBtYXJnaW4tYm90dG9tOiAxNXB4OyBsaW5lLWhlaWdodDogMS40OyB9XG5cbi53aWRnZXQgZHQ6YmVmb3JlIHsgY29udGVudDogXCLvhI1cIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi53aWRnZXQgZHQsIC53aWRnZXQgZGQgeyBwYWRkaW5nLWxlZnQ6IDMwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ud2lkZ2V0IGR0OjpiZWZvcmUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IGZvbnQtc2l6ZTogMC42NjY2NjY2NjY3ZW07IH1cblxuLndpZGdldDpsYXN0LW9mLXR5cGUgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYWdlLWFzaWRlIC53aWRnZXQgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q1ZGVlNjsgbWFyZ2luLWJvdHRvbTogMDsgcGFkZGluZy1ib3R0b206IDQwcHg7IHBhZGRpbmctdG9wOiA0MHB4OyB9XG5cbi5wYWdlLWFzaWRlIC53aWRnZXQ6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuLndpZGdldC0tc3VtbWFyeSB1bCBsaSB7IHBhZGRpbmctbGVmdDogMzBweDsgfVxuXG4ud2lkZ2V0LS1zdW1tYXJ5IHVsIGEgeyBjb2xvcjogIzE0MTQxNDsgfVxuXG4ud2lkZ2V0LS1zaGFyZXMgZHQgeyBmb250LXdlaWdodDogbm9ybWFsOyBib3JkZXItdG9wOiAwOyBwYWRkaW5nLXRvcDogMDsgfVxuXG4ud2lkZ2V0LS1zaGFyZXMgZGQgeyBmb250LXdlaWdodDogYm9sZDsgZm9udC1zaXplOiAxLjU1NTU1NTU1NTZlbTsgfVxuXG4ud2lkZ2V0LS1jb250YWN0IHN0cm9uZyB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLndpZGdldC0tY29udGFjdCB1bCB7IG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLndpZGdldC0tY29udGFjdCB1bCBsaSB7IGJvcmRlci10b3A6IDA7IGJvcmRlci1ib3R0b206IDA7IHBhZGRpbmc6IDA7IHBhZGRpbmctbGVmdDogMzBweDsgfVxuXG4ud2lkZ2V0LS1jb250YWN0IHVsIGxpOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbi53aWRnZXQtLWNvbnRhY3QsIC53aWRnZXQtLXRleHQgeyBwYWRkaW5nLWJvdHRvbTogNDBweDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjMWM5ZDA7IH1cblxuLndpZGdldC0tdGV4dCBwIHsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgbWF4LXdpZHRoOiA5MCU7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLndpZGdldC0tdGV4dCBhLmJ0biB7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi53aWRnZXQtLXRleHQgaW1nIHsgd2lkdGg6IDEwMCU7IH1cblxuLnBhZ2UtYXNpZGUgLndpZGdldC0tdHJhbnNsYXRlIHsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi53aWRnZXQtLXRyYW5zbGF0ZSAuYnRuIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBsZWZ0OyBwYWRkaW5nLWxlZnQ6IDUwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ud2lkZ2V0LS10cmFuc2xhdGUgLmJ0bjo6YmVmb3JlIHsgY29udGVudDogJyc7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFnX25sLnBuZ1wiKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogMjBweCAxNnB4OyB3aWR0aDogMjBweDsgaGVpZ2h0OiAxNnB4OyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAyMHB4OyB0b3A6IDExcHg7IGJvcmRlcjogMXB4IHNvbGlkICNmZmY7IHBhZGRpbmc6IDA7IH1cblxuLndpZGdldC0tdHJhbnNsYXRlIC5idG4uYnRuLS1lbmdsaXNoOjpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZmxhZ19lbi5wbmdcIik7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAud2lkZ2V0LS10cmFuc2xhdGUgeyBtYXJnaW4tdG9wOiAtNDBweDsgbWFyZ2luLWxlZnQ6IC00MHB4OyBtYXJnaW4tcmlnaHQ6IDBweCAhaW1wb3J0YW50OyB9IH1cblxuLnBhZ2UtYXNpZGUgLndpZGdldC0tbWFwIHsgbWFyZ2luOiAtMjBweCAtMjBweCAyMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctdG9wOiAwOyBib3JkZXItYm90dG9tOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ucGFnZS1hc2lkZSAud2lkZ2V0LS1tYXAgaW1nIHsgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAucGFnZS1hc2lkZSAud2lkZ2V0LS1tYXAgeyBtYXJnaW4tdG9wOiAtNDBweDsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogLTQwcHg7IG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ucGFnZS1hc2lkZSAud2lkZ2V0LS1tYXAgZmlnY2FwdGlvbiB7IGRpc3BsYXk6IGJsb2NrOyBiYWNrZ3JvdW5kOiAjMTYzMTViOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgcGFkZGluZzogMTBweCAyMHB4OyB3aWR0aDogMTAwJTsgY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAucGFnZS1hc2lkZSAud2lkZ2V0LS1tYXAgZmlnY2FwdGlvbiB7IHBhZGRpbmc6IDEwcHggNDBweDsgfSB9XG5cbi53aWRnZXQtLWZhY3RzIC5saXN0LS1pY29uIGxpIHsgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XG5cbi53aWRnZXQtLWZhY3RzIC5saXN0LS1pY29uIGxpOjpiZWZvcmUgeyB0b3A6IDA7IGxlZnQ6IDEwcHg7IGxpbmUtaGVpZ2h0OiA1NHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogc2NhbGUoMS40KTsgfVxuXG4ud2lkZ2V0LS1mYWN0cyAubGlzdC0taWNvbiAuaWNvbi13b3JsZDo6YmVmb3JlLCAud2lkZ2V0LS1mYWN0cyAubGlzdC0taWNvbiAuaWNvbi12ZXNzZWw6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMi45KTsgfVxuXG4ud2lkZ2V0LS1zaGFyZSAuYnRuIHsgbWFyZ2luOiA1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAucGFnZS1hc2lkZSAud2lkZ2V0LS1zaGFyZTpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IC00MHB4OyB9IH1cblxuLndpZGdldC0tdGFncyAuYnRuLS1saW5rIHNwYW4geyBtYXgtd2lkdGg6IDE5MHB4OyB3aGl0ZS1zcGFjZTogbm93cmFwOyBvdmVyZmxvdzogaGlkZGVuOyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi53aWRnZXQtLXRhZ3MgLmJ0bi0tbGluazo6YWZ0ZXIgeyBmbG9hdDogcmlnaHQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC53aWRnZXQtLXRhZ3MgLndpZGdldC0tdGFncyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyBwYWRkaW5nOiAwIDQwcHggMCAwOyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDVkZWU2OyBtaW4taGVpZ2h0OiAxNDBweDsgfVxuICAud2lkZ2V0LS10YWdzIC53aWRnZXQtLXRhZ3MgKyAud2lkZ2V0LS1zaGFyZTpub3QoLmZ1bGwtd2lkdGgpIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IHBhZGRpbmc6IDAgNDBweDsgfVxuICAud2lkZ2V0LS10YWdzIC53aWRnZXQuZnVsbC13aWR0aCB7IHdpZHRoOiAxMDAlOyBmbG9hdDogbm9uZTsgYm9yZGVyLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAucGFnZS1hc2lkZSAud2lkZ2V0LS1uby1wYWQgeyBtYXJnaW4tdG9wOiAtNDBweDsgbWFyZ2luLWxlZnQ6IC00MHB4OyBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuXG4ucGFnZS1hc2lkZSAud2lkZ2V0LS1mdWxsIHsgcGFkZGluZy1sZWZ0OiA0MHB4OyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtYXNpZGUgLndpZGdldC0tZnVsbCB7IG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBJY29ucyBhbmQgb3RoZXIgZWxlbWVudHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQgLmZvb3RpbmcgeyBiYWNrZ3JvdW5kOiAjMTEyOTRlOyBoZWlnaHQ6IDYwcHg7IGxpbmUtaGVpZ2h0OiA2MHB4OyBjb2xvcjogI2ZmZjsgcGFkZGluZzogMCAyMHB4OyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyB9XG5cbi53aWRnZXQgLmZvb3RpbmcgLnZhbHVlIHsgZmxvYXQ6IHJpZ2h0OyBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtOyBmb250LXdlaWdodDogYm9sZDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLndpZGdldCAuZm9vdGluZyB7IHBhZGRpbmc6IDAgNDBweDsgbWFyZ2luLXRvcDogLTE2cHg7IH0gfVxuXG5mb290ZXIucGFnZS1jb250ZW50OmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyBmb290ZXIucGFnZS1jb250ZW50IC53aWRnZXQtLXRhZ3MgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgcGFkZGluZzogMCA0MHB4IDAgMDsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Q1ZGVlNjsgbWluLWhlaWdodDogMTQwcHg7IH1cbiAgZm9vdGVyLnBhZ2UtY29udGVudCAud2lkZ2V0LS10YWdzICsgLndpZGdldC0tc2hhcmU6bm90KC5mdWxsLXdpZHRoKSB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyBwYWRkaW5nOiAwIDQwcHg7IH1cbiAgZm9vdGVyLnBhZ2UtY29udGVudCAud2lkZ2V0LmZ1bGwtd2lkdGggeyB3aWR0aDogMTAwJTsgZmxvYXQ6IG5vbmU7IGJvcmRlci1yaWdodDogMDsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGSUxURVIgU0VDVElPTiBTdHlsaW5nIGZvciBhbGwgdGhlIGZpbHRlciBzZWN0aW9ucyB1c2VkIGFjcm9zcyB0aGUgc2l0ZS4gTGlrZSBwcm9qZWN0cywgdmVzc2VscywgY29udGFjdHMgZXRjLiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jbnQtLWZpbHRlciB7IC8qIFx0XHRvdmVyZmxvdzogdmlzaWJsZTsgICovIH1cblxuLmZpbHRlci1jbnQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLmZpbHRlci1jbnQ6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiB0YWJsZTsgY2xlYXI6IGJvdGg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRPT0xCQVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50b29sYmFyIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4udG9vbGJhciA+ICogeyB3aWR0aDogMTAwJTsgfVxuXG4udG9vbGJhciAubnVtIHsgZGlzcGxheTogYmxvY2s7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udG9vbGJhciAub3RoZXIsIC50b29sYmFyIC52aWV3LXN3aXRjaCwgLnRvb2xiYXIgLnNvcnQgeyBmbG9hdDogcmlnaHQ7IGRpc3BsYXk6IG5vbmU7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IH1cblxuLnRvb2xiYXIgLnNvcnQgLmJ0biwgLnRvb2xiYXIgLnZpZXctc3dpdGNoIC5idG4geyBmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiAxcHg7IH1cblxuLnRvb2xiYXIgLnNvcnQgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IGF1dG87IH1cblxuLnRvb2xiYXIgLnNvcnQgLmN1c3RvbS1zZWxlY3QgeyBmbG9hdDogbGVmdDsgfVxuXG4udG9vbGJhciAuc29ydCAuY3VzdG9tLXNlbGVjdDphZnRlciB7IGNvbnRlbnQ6IFwi74SuXCI7IH1cblxuLnRvb2xiYXIgLm90aGVyIHsgbWFyZ2luLXJpZ2h0OiAxcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IGF1dG87IH1cblxuLnRvb2xiYXIgLmFsaWduLXJpZ2h0IHsgdGV4dC1hbGlnbjogY2VudGVyOyBjbGVhcjogYm90aDsgd2lkdGg6IDEwMCU7IH1cblxuLnRvb2xiYXIgLmFsaWduLXJpZ2h0ID4gc3BhbiB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWF4LXdpZHRoOiAzMDBweDsgbGluZS1oZWlnaHQ6IDEuMjsgfVxuXG4udG9vbGJhciAuYWxpZ24tcmlnaHQgLmJ0biB7IG1hcmdpbjogMjBweCBhdXRvIDQwcHg7IHZlcnRpY2FsLWFsaWduOiB0b3A7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMDBweCkgeyAudG9vbGJhciAuYWxpZ24tcmlnaHQgPiBzcGFuIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHsgLnRvb2xiYXIgLmFsaWduLXJpZ2h0ID4gc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4udG9vbGJhciAudG9nZ2xlLS1maWx0ZXItbmF2IHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4udG9vbGJhciAuc2VhcmNoLWZvcm0geyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi50b29sYmFyIC5zZWFyY2gtZm9ybS5leHBhbmQgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAudG9vbGJhciB7IG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLnRvb2xiYXI6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiB0YWJsZTsgY2xlYXI6IGJvdGg7IH1cbiAgLnRvb2xiYXIgPiAqIHsgZmxvYXQ6IGxlZnQ7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IGF1dG87IH1cbiAgLnRvb2xiYXIgLnRvZ2dsZS0tZmlsdGVyLW5hdiB7IG1hcmdpbi1yaWdodDogMjBweDsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudG9vbGJhciAuc2VhcmNoLWZvcm06bm90KC5jb21wYWN0KSB7IHdpZHRoOiAyNDBweDsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC50b29sYmFyIC5zZWFyY2gtZm9ybTpub3QoLmNvbXBhY3QpLmV4cGFuZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRvb2xiYXIgLm90aGVyLCAudG9vbGJhciAudmlldy1zd2l0Y2gsIC50b29sYmFyIC5zb3J0IHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC50b29sYmFyIC5zb3J0IHsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gIC50b29sYmFyIC5hbGlnbi1yaWdodCB7IGZsb2F0OiByaWdodDsgY2xlYXI6IG5vbmU7IHdpZHRoOiBhdXRvOyB9XG4gIC50b29sYmFyIC5idG4uYnRuLS1saW5rIHsgbWFyZ2luOiAwOyBtYXJnaW4tbGVmdDogMTBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAudG9vbGJhciAuYWxpZ24tcmlnaHQgeyB0ZXh0LWFsaWduOiBsZWZ0OyBkaXNwbGF5OiB0YWJsZTsgfVxuICAudG9vbGJhciAuYWxpZ24tcmlnaHQgPiBzcGFuIHsgZm9udC1zaXplOiAwLjgzMzMzMzMzMzNlbTsgfVxuICAudG9vbGJhciAuYWxpZ24tcmlnaHQgPiBzcGFuIHsgZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAudG9vbGJhciAuc2VhcmNoLWZvcm0geyB3aWR0aDogMzQwcHg7IG1hcmdpbi1yaWdodDogMDsgfVxuICAudG9vbGJhciAuYnRuLmJ0bi0tbGluayB7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAudG9vbGJhci0tbWVkaWEgLnNlYXJjaC1mb3JtIHsgd2lkdGg6IDI0MHB4OyB9IH1cblxuLmJ0bi50b2dnbGUtLWZpbHRlci1uYXYgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJ0bi50b2dnbGUtLWZpbHRlci1uYXYgaSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgdG9wOiAwOyB9XG5cbi5idG4udG9nZ2xlLS1maWx0ZXItbmF2IGk6YmVmb3JlIHsgY29udGVudDogXCLvhKZcIjsgfVxuXG4uYnRuLnRvZ2dsZS0tZmlsdGVyLW5hdjpob3ZlciBpIHsgYmFja2dyb3VuZDogIzExMjk0ZTsgfVxuXG4uYnRuLnRvZ2dsZS0tZmlsdGVyLW5hdi5maWx0ZXItLW9wZW4geyBiYWNrZ3JvdW5kOiAjMTYzMTViOyB9XG5cbi5idG4udG9nZ2xlLS1maWx0ZXItbmF2LmZpbHRlci0tb3BlbiBpIHsgYmFja2dyb3VuZDogIzExMjk0ZTsgfVxuXG4uYnRuLnRvZ2dsZS0tZmlsdGVyLW5hdi5maWx0ZXItLW9wZW4gaTpiZWZvcmUgeyBjb250ZW50OiBcIu+EpVwiOyB9XG5cbi5idG4udG9nZ2xlLS1maWx0ZXItbmF2LmZpbHRlci0tb3Blbjpob3ZlciB7IGJhY2tncm91bmQ6ICM4ZmE4Y2I7IH1cblxuLmJ0bi50b2dnbGUtLWZpbHRlci1uYXYuZmlsdGVyLS1vcGVuOmhvdmVyIGkgeyBiYWNrZ3JvdW5kOiAjN2Q5M2IzOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuYnRuLnRvZ2dsZS0tZmlsdGVyLW5hdiB7IHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGSUxURVIgU0VMRUNUSU9OIENPTlRBSU5FUiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZpbHRlci1zZWxlY3Rpb24tY250IHsgb3ZlcmZsb3c6IGhpZGRlbjsgb3ZlcmZsb3cteDogYXV0bzsgdGV4dC1hbGlnbjogY2VudGVyOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5maWx0ZXItc2VsZWN0aW9uLWNudCBlbSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbi5maWx0ZXItc2VsZWN0aW9uLWNudCA+IHNwYW4geyBtYXJnaW4tcmlnaHQ6IDIwcHg7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmZpbHRlci1zZWxlY3Rpb24tY250IHsgdGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLXRvcDogLTIwcHg7IH1cbiAgLmZpbHRlci1zZWxlY3Rpb24tY250IGVtIHsgZGlzcGxheTogaW5saW5lOyB9IH1cblxuLnRhZy5idG4tLWxhYmVsIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IGNvbG9yOiAjMTQxNDE0OyBtYXJnaW4tcmlnaHQ6IDIwcHg7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmJnLS1saWdodC1ibHVlIC50YWcuYnRuLS1sYWJlbCB7IGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnRhZy5idG4tLWxhYmVsIC5pY29uIHsgY29sb3I6ICNmZmY7IGxpbmUtaGVpZ2h0OiA0MHB4OyBiYWNrZ3JvdW5kOiAjOGZhOGNiOyB9XG5cbi50YWcuYnRuLS1sYWJlbCAuaWNvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyB9XG5cbi50YWcuYnRuLS1sYWJlbCAuaWNvbjo6YmVmb3JlIHsgdHJhbnNmb3JtOiBzY2FsZSgwLjYpOyB9XG5cbi50YWcuYnRuLS1sYWJlbDpob3ZlciAuaWNvbiB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IH1cblxuLnRhZyBzbWFsbCB7IGZvbnQtc2l6ZTogMC42NjY2NjY2NjY3ZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExJU1QgJiBHUklEIFZJRVcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jb2xsYXBzZS1jbnQsIC5vdmVydmlldyB7IHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb2xsYXBzZS1jbnQsIC5vdmVydmlldyB7IG1hcmdpbi1sZWZ0OiAtMjBweDsgbWFyZ2luLXJpZ2h0OiAtMjBweDsgdHJhbnNpdGlvbjogbWluLWhlaWdodCAyMDBtcyBlYXNlLWluLW91dDsgfSB9XG5cbi5jb2xsYXBzZS1jbnQgLm92ZXJ2aWV3IHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5maWx0ZXItY250LmZpbHRlci0tb3BlbiAub3ZlcnZpZXcgeyBwYWRkaW5nLWxlZnQ6IDA7IHdpZHRoOiA2NSU7IG1hcmdpbi1yaWdodDogLTIwcHg7IGZsb2F0OiByaWdodDsgei1pbmRleDogMTE7IH1cbiAgLmZpbHRlci1jbnQuZmlsdGVyLS1vcGVuIC5vdmVydmlldy5ncmlkID4gLmJsb2NrIHsgd2lkdGg6IDUwJTsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNQVAgVklFVyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm92ZXJ2aWV3Lm1hcCB7IGNsZWFyOiBib3RoOyBtYXJnaW4tbGVmdDogMDsgbWFyZ2luLXJpZ2h0OiAwOyBiYWNrZ3JvdW5kOiAjMkQ0NjZFOyBwYWRkaW5nLWxlZnQ6IDA7IHBhZGRpbmctcmlnaHQ6IDA7IHBhZGRpbmctYm90dG9tOiA0MHB4OyBtaW4taGVpZ2h0OiA2NDBweDsgZGlzcGxheTogbm9uZTsgfVxuXG4uZmlsdGVyLWNudC5maWx0ZXItLW9wZW4gLm92ZXJ2aWV3Lm1hcCB7IHdpZHRoOiAxMDAlOyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuZmlsdGVyLWNudC5maWx0ZXItLW9wZW4gLm92ZXJ2aWV3Lm1hcCB7IHdpZHRoOiA3NSU7IG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5tYXAtY250IHsgbWluLWhlaWdodDogNjAwcHg7IGJhY2tncm91bmQ6ICMyRDQ2NkU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgYm90dG9tOiAwOyB9XG5cbi5tYXAtY250Lm1hcC0tbGVnZW5kIHsgYm90dG9tOiA0MHB4OyB9XG5cbi5tYXAtb3ZlcmxheSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyB6LWluZGV4OiAyOyBiYWNrZ3JvdW5kOiByZ2JhKDE3LCA0MSwgNzgsIDAuNCk7IGNvbG9yOiAjZmZmOyB9XG5cbi5tYXAtb3ZlcmxheSBzcGFuIHsgcG9zaXRpb246IGFic29sdXRlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtMTBweDsgd2lkdGg6IDEwMCU7IH1cblxuLmJ0bi0tdG9nZ2xlLW92ZXJsYXkgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDA7IHotaW5kZXg6IDM7IH1cblxuLm92ZXJ2aWV3LnR4LXNvbHItc2VhcmNoLW5vLXJlc3VsdHMgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDIwcHggMCA0MHB4OyB9XG5cbi5iYXItLWxlZ2VuZCB7IG1hcmdpbjogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBoZWlnaHQ6IDQwcHg7IGxpbmUtaGVpZ2h0OiA0MHB4OyBiYWNrZ3JvdW5kOiAjMTYzMTViOyBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuYmFyLS1sZWdlbmQgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IHdpZHRoOiAxMDAlOyB9IH1cblxuLmJhci0tbGVnZW5kIGxpIHsgbGlzdC1zdHlsZTogbm9uZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb2xvcjogI2ZmZjsgbWFyZ2luOiAwIDEwcHg7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1sZWZ0OiAxNXB4OyBtYXJnaW4tcmlnaHQ6IDQwcHg7IH1cblxuLmJhci0tbGVnZW5kIGxpIHNwYW4geyBtYXJnaW46IDAgNXB4OyB9XG5cbi5iYXItLWxlZ2VuZCBsaTpiZWZvcmUgeyBjb250ZW50OiBcIu+ElFwiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cblxuLmJhci0tbGVnZW5kIGxpOjpiZWZvcmUgeyBmb250LXNpemU6IDEuM2VtOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC0xMHB4OyB9XG5cbi5sZWdlbmQtLWJvc2thbGlzLW9mZmljZTo6YmVmb3JlIHsgY29sb3I6ICNmZmY3MTk7IH1cblxuLmxlZ2VuZC0tZHJlZGdpbmc6OmJlZm9yZSB7IGNvbG9yOiAjODQyZGU0OyB9XG5cbi5sZWdlbmQtLW9mZnNob3JlOjpiZWZvcmUsIC5sZWdlbmQtLWhlYWQtb2ZmaWNlOjpiZWZvcmUgeyBjb2xvcjogIzVEQTE0RDsgfVxuXG4ubGVnZW5kLS1zYWx2YWdlOjpiZWZvcmUsIC5sZWdlbmQtLXNtaXQtcmVzcG9uc2UtY2VudGVyOjpiZWZvcmUgeyBjb2xvcjogI0M1MzgzMDsgfVxuXG4ubGVnZW5kLS10b3dhZ2U6OmJlZm9yZSB7IGNvbG9yOiAjREE4RDFCOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGSUxURVIgTkFWSUdBVElPTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZpbHRlci1uYXZpZ2F0aW9uIHsgaGVpZ2h0OiBhdXRvOyB3aWR0aDogMTAwJTsgZGlzcGxheTogbm9uZTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmZpbHRlci1jbnQuZmlsdGVyLS1vcGVuIC5maWx0ZXItbmF2aWdhdGlvbiB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmZpbHRlci1uYXZpZ2F0aW9uIHsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMzUlOyAvKiBcdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7ICAqLyBib3R0b206IDQwcHg7IHRvcDogMHB4OyBwYWRkaW5nLXJpZ2h0OiAwOyB6LWluZGV4OiAxMDsgbWFyZ2luLWJvdHRvbTogMDsgdHJhbnNpdGlvbjogbWluLWhlaWdodCAyMDBtcyBlYXNlLWluLW91dDsgfVxuICAudmlldy0tbWFwIC5maWx0ZXItbmF2aWdhdGlvbiB7IHBhZGRpbmctbGVmdDogMDsgd2lkdGg6IDI1JTsgYm90dG9tOiAwOyB9IH1cblxuLmZpbHRlci1uYXZpZ2F0aW9uID4gZm9ybSB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IG1hcmdpbi1ib3R0b206IDA7IHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmZpbHRlci1uYXZpZ2F0aW9uID4gZm9ybSB7IGhlaWdodDogMTAwJTsgfSB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiBmaWVsZHNldCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgYmFja2dyb3VuZDogIzE2MzE1YjsgcGFkZGluZzogMHB4OyBtYXJnaW46IDA7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH1cblxuLmZpbHRlci1uYXZpZ2F0aW9uIGZpZWxkc2V0IGxlZ2VuZCB7IHRleHQtaW5kZW50OiAtOTk5OXB4OyBtYXJnaW46IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uZmlsdGVyLW5hdmlnYXRpb24gZmllbGRzZXQgZW0geyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBjb2xvcjogI2ZmZjsgbWFyZ2luLWJvdHRvbTogMTBweDsgZGlzcGxheTogYmxvY2s7IH1cblxuLmZpbHRlci1uYXZpZ2F0aW9uIGZpZWxkc2V0ID4gYnV0dG9uIHsgYmFja2dyb3VuZDogbm9uZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogNjBweDsgbWFyZ2luOiAwOyBmb250LXNpemU6IDEuMTExMTExMTExMWVtOyBjb2xvcjogI2ZmZjsgZm9udC13ZWlnaHQ6IGJvbGQ7IGxpbmUtaGVpZ2h0OiA2MHB4OyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiBmaWVsZHNldCA+IGJ1dHRvbjphZnRlciB7IGNvbnRlbnQ6IFwi74SNXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uZmlsdGVyLW5hdmlnYXRpb24gZmllbGRzZXQgPiBidXR0b246OmFmdGVyIHsgbWFyZ2luLWxlZnQ6IDhweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDEzcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAycHg7IH1cblxuLmZpbHRlci1uYXZpZ2F0aW9uIGZpZWxkc2V0ID4gYnV0dG9uOmZvY3VzLCAuZmlsdGVyLW5hdmlnYXRpb24gZmllbGRzZXQgPiBidXR0b246aG92ZXIgeyBvdXRsaW5lOiBub25lOyBiYWNrZ3JvdW5kOiAjMTEyOTRlOyB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiBmaWVsZHNldCA+IGJ1dHRvbjpob3ZlciB7IGNvbG9yOiAjZmZmNzE5OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmZpbHRlci1uYXZpZ2F0aW9uIGZpZWxkc2V0ID4gYnV0dG9uIHsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgfSB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiAuZmlsdGVycywgLmZpbHRlci1uYXZpZ2F0aW9uIGZpZWxkc2V0ID4gYnV0dG9uIHsgcGFkZGluZy1sZWZ0OiA0MHB4OyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiBmaWVsZHNldC5maWx0ZXItLW9wZW4geyBiYWNrZ3JvdW5kOiAjMTEyOTRlOyB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiBmaWVsZHNldC5maWx0ZXItLW9wZW4gPiBidXR0b246YWZ0ZXIgeyBjb250ZW50OiBcIu+Ei1wiOyB9XG5cbi5maWx0ZXItbmF2aWdhdGlvbiBmaWVsZHNldC5maWx0ZXItLW9wZW4gLmZpbHRlcnMgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmlsdGVycyB7IHBhZGRpbmctYm90dG9tOiAyMHB4OyBkaXNwbGF5OiBub25lOyB9XG5cbi5maWx0ZXJzIGxhYmVsIHsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgY29sb3I6ICNmZmY7IG1hcmdpbi1ib3R0b206IDEycHg7IHBhZGRpbmctbGVmdDogMDsgfVxuXG4uZmlsdGVycyBsYWJlbDpob3ZlciB7IGNvbG9yOiAjZmZmNzE5OyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmZpbHRlcnMgLmxhYmVsIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDEuMTExMTExMTExMWVtOyB9XG5cbi5maWx0ZXJzIC5sYWJlbCBzbWFsbCB7IGZvbnQtc2l6ZTogMC43MjIyMjIyMjIyZW07IH1cblxuLmZpbHRlcnMgbGFiZWwgc3Bhbi5sYWJlbDo6YmVmb3JlIHsgdG9wOiAxcHg7IG1hcmdpbi10b3A6IDA7IH1cblxuLmZpbHRlcnMgaW5wdXRbZGlzYWJsZWRdICsgLmxhYmVsIHsgb3BhY2l0eTogMC41OyB9XG5cbi5maWx0ZXJzIGlucHV0W2Rpc2FibGVkXSArIC5sYWJlbDpob3ZlciB7IGNvbG9yOiAjZmZmOyB9XG5cbi5maWx0ZXJzIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAubGFiZWwgeyBjb2xvcjogI2ZmZjcxOTsgfVxuXG4uZmlsdGVycyBpbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cyArIC5sYWJlbCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuLmZpbHRlcnMgLmlucHV0LS1maWx0ZXIgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5maWx0ZXJzIGVtICsgLmlucHV0LS1maWx0ZXIgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5maWx0ZXJzIC5zY3JvbGwtY3RuIHsgbWF4LWhlaWdodDogMzEwcHg7IG92ZXJmbG93LXk6IGF1dG87IG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuXG4uZmlsdGVycyBsaSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmZpbHRlcnMgLnR4LXNvbHItZmFjZXQtc2hvdy1hbGwgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBUT09MQkFSIEZPT1RFUiAocGFnaW5hdGlvbikgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50b29sYmFyLS1mb290ZXIgeyBwYWRkaW5nOiAyMHB4OyB9XG5cbi50b29sYmFyLS1mb290ZXIgc3Bhbi50ZXh0LS1zbWFsbCB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDIwcHggYXV0byAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1heC13aWR0aDogNDAwcHg7IG1hcmdpbi10b3A6IDkwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC50b29sYmFyLS1mb290ZXIgc3Bhbi50ZXh0LS1zbWFsbCB7IG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC50b29sYmFyLS1mb290ZXIgc3Bhbi50ZXh0LS1zbWFsbCB7IGZsb2F0OiBsZWZ0OyB0ZXh0LWFsaWduOiBsZWZ0OyB3aWR0aDogNDAlOyBtYXJnaW46IDA7IH0gfVxuXG4ucGFnaW5hdGlvbiB7IGZvbnQtZmFtaWx5OiBcImZ1dHVyYS1wdC1hbHRcIiwgXCJmdXR1cmEtcHRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7IG1hcmdpbjogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjbGVhcjogYm90aDsgbWFyZ2luLWJvdHRvbTogNTBweCAhaW1wb3J0YW50OyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5wYWdpbmF0aW9uIGxpIHsgbGlzdC1zdHlsZTogbm9uZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5wYWdpbmF0aW9uIGxpLm5leHQsIC5wYWdpbmF0aW9uIGxpLnByZXYsIC5wYWdpbmF0aW9uIGxpLmN1cnJlbnQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnBhZ2luYXRpb24gYTpub3QoLmJ0bikgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IGxpbmUtaGVpZ2h0OiA0MHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5wYWdpbmF0aW9uIGxpLmN1cnJlbnQgYSB7IGNvbG9yOiAjMTYzMTViOyBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ucGFnaW5hdGlvbiBsaS5jdXJyZW50IGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnBhZ2luYXRpb24gbGk6bm90KC5jdXJyZW50KSBhOmhvdmVyIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgY29sb3I6ICNmZmY7IH1cblxuLnBhZ2luYXRpb24gLmZpcnN0LCAucGFnaW5hdGlvbiAucHJldiwgLnBhZ2luYXRpb24gLm5leHQsIC5wYWdpbmF0aW9uIC5sYXN0IHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDYwcHg7IH1cblxuLnBhZ2luYXRpb24gLmxhc3QgeyBtYXJnaW4tbGVmdDogMThweDsgcmlnaHQ6IDIwcHg7IH1cblxuLnBhZ2luYXRpb24gLmZpcnN0IHsgbWFyZ2luLXJpZ2h0OiAxOHB4OyBsZWZ0OiAyMHB4OyB9XG5cbi5wYWdpbmF0aW9uIC5uZXh0IHsgcmlnaHQ6IDcwcHg7IH1cblxuLnBhZ2luYXRpb24gLnByZXYgeyBsZWZ0OiA3MHB4OyB9XG5cbi5wYWdpbmF0aW9uIC5maXJzdCBhOjpiZWZvcmUsIC5wYWdpbmF0aW9uIC5sYXN0IGE6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMC44KTsgfVxuXG4ucGFnaW5hdGlvbiAubmV4dCBhIHsgbWFyZ2luOiAwOyB9XG5cbi5wYWdpbmF0aW9uIC5wcmV2IGE6YmVmb3JlIHsgY29udGVudDogXCLvhIxcIjsgfVxuXG4ucGFnaW5hdGlvbiAuZmlyc3QgYTpiZWZvcmUgeyBjb250ZW50OiBcIu+ErFwiOyB9XG5cbi5wYWdpbmF0aW9uIC5sYXN0IGE6YmVmb3JlIHsgY29udGVudDogXCLvhK1cIjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2luYXRpb24geyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBhZ2luYXRpb24gbGkuZmlyc3QsIC5wYWdpbmF0aW9uIGxpLnByZXYsIC5wYWdpbmF0aW9uIGxpLm5leHQsIC5wYWdpbmF0aW9uIGxpLmxhc3QgeyBwb3NpdGlvbjogc3RhdGljOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAucGFnaW5hdGlvbiB7IHRleHQtYWxpZ246IHJpZ2h0OyBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uY29ycG9yYXRlLWxlZ2VuZCB7IGRpc3BsYXk6IG5vbmU7IGZsb2F0OiBsZWZ0OyBmb250LXNpemU6IDE0cHg7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb3Jwb3JhdGUtbGVnZW5kIHsgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY29ycG9yYXRlLWxlZ2VuZCBpbWcgeyBmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBtYXgtd2lkdGg6IDIwcHg7IH1cblxuLmNvcnBvcmF0ZS1sZWdlbmQgc3BhbiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiAyNXB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBJQ09OUyAvIENPTE9SUyAvIEdFTkVSQUwgU1RZTEVTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc29ydCAuYnRuW2Rpc2FibGVkXSwgLnNvcnQgLmJ0bi5hY3RpdmUsIC52aWV3LXN3aXRjaCAuYnRuW2Rpc2FibGVkXSB7IGJhY2tncm91bmQ6ICMxNjMxNWI7IGNvbG9yOiAjZmZmOyBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLmJ0bi5ncmlkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SYXCI7IH1cblxuLmJ0bi5saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SZXCI7IH1cblxuLmJ0bi5tYXA6YmVmb3JlIHsgY29udGVudDogXCLvhJpcIjsgfVxuXG4uYnRuLnVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SOXCI7IH1cblxuLmJ0bi5kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SLXCI7IH1cblxuLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1wcm9qZWN0LW92ZXJ2aWV3IHsgYmFja2dyb3VuZDogI2Q1ZGVlNjsgfVxuXG4ubWluaS1maWx0ZXIgbGFiZWwsIC5taW5pLWZpbHRlciAuY3VzdG9tLXNlbGVjdCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4ubWluaS1maWx0ZXIgbGFiZWwgeyBtYXJnaW4tcmlnaHQ6IDIwcHg7IGZvbnQtc3R5bGU6IGl0YWxpYzsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09MTEFQU0UgQ09OVEFJTkVSIEFsdGVybmF0aXZlIGxheW91dCB1c2VkIGZvciB0aGUgZG93bmxvYWQgY2VudGVyICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbGxhcHNlLWNudCB7IG1hcmdpbjogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHsgLmNvbGxhcHNlLWNudCB7IG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4uY29sbGFwc2Utc2VjdGlvbiB7IGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLmNvbGxhcHNlLXNlY3Rpb24gPiBoMiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTsgcGFkZGluZzogMDsgbWFyZ2luOiAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWVmMjsgfVxuXG4udG9nZ2xlLXNlY3Rpb24geyBjb2xvcjogIzE0MTQxNDsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmctbGVmdDogNDBweDsgcGFkZGluZy10b3A6IDE0cHg7IHBhZGRpbmctYm90dG9tOiAxNHB4OyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDEwMG1zIGxpbmVhcjsgfVxuXG4udG9nZ2xlLXNlY3Rpb246YmVmb3JlIHsgY29udGVudDogXCLvhKZcIjsgc3BlYWs6IG5vbmU7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi50b2dnbGUtc2VjdGlvbiBpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDAuNzVlbTsgfVxuXG4udG9nZ2xlLXNlY3Rpb246Zm9jdXMsIC50b2dnbGUtc2VjdGlvbjpob3ZlciB7IG91dGxpbmU6IDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYmFja2dyb3VuZDogI2ZhZmJmYzsgfVxuXG4udG9nZ2xlLXNlY3Rpb246Zm9jdXM6OmJlZm9yZSwgLnRvZ2dsZS1zZWN0aW9uOmhvdmVyOjpiZWZvcmUgeyB0cmFuc2Zvcm06IHNjYWxlKDAuNik7IH1cblxuLnRvZ2dsZS1zZWN0aW9uOjpiZWZvcmUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDEwcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdHJhbnNmb3JtOiBzY2FsZSgwLjUpOyAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLWluLW91dDsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnNlY3Rpb24tLW9wZW5lZCAudG9nZ2xlLXNlY3Rpb24geyBjb2xvcjogI2ZmZjsgYmFja2dyb3VuZDogIzE2MzE1YjsgfVxuXG4uc2VjdGlvbi0tb3BlbmVkIC50b2dnbGUtc2VjdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+EpVwiOyB9XG5cbi5zZWN0aW9uLS1vcGVuZWQgLnRvZ2dsZS1zZWN0aW9uOmZvY3VzLCAuc2VjdGlvbi0tb3BlbmVkIC50b2dnbGUtc2VjdGlvbjpob3ZlciB7IGJhY2tncm91bmQ6ICMxMTI5NGU7IH1cblxuLmNvbGxhcHNlLWNvbnRlbnQgeyBwYWRkaW5nOiAyMHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWVmMjsgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmNvbGxhcHNlLWNvbnRlbnQgeyBwYWRkaW5nOiA0MHB4OyB9IH1cblxuLmNvbGxhcHNlLWNvbnRlbnQgLnRvZ2dsZS0tZmlsdGVyLW5hdiB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNvbGxhcHNlLWNvbnRlbnQgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiB7IG1heC13aWR0aDogbm9uZTsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY29sbGFwc2UtY29udGVudCAudG9vbGJhciB7IHBhZGRpbmc6IDA7IH1cblxuLmNvbGxhcHNlLWNvbnRlbnQgLmZpbHRlci1uYXZpZ2F0aW9uIHsgcGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLXRvcDogMDsgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uY29sbGFwc2UtY29udGVudCAub3ZlcnZpZXcgeyBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmNvbGxhcHNlLWNvbnRlbnQgLmZpbHRlci1jbnQuZmlsdGVyLS1vcGVuIC5vdmVydmlldyB7IG1hcmdpbi1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBHZW5lcmFsIHNlY3Rpb24gc3R5bGluZyBnb2VzIGhlcmUgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2Utc2VjdGlvbiB7IHBhZGRpbmc6IDUwcHggMDsgcG9zaXRpb246IHJlbGF0aXZlOyBiYWNrZ3JvdW5kOiAjZmZmOyBjbGVhcjogYm90aDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2Utc2VjdGlvbiB7IHBhZGRpbmc6IDEwMHB4IDA7IH0gfVxuXG4ucGFnZS1zZWN0aW9uIC5zZWN0aW9uLWNudCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucGFnZS1zZWN0aW9uIC5zZWN0aW9uLWNudDphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG4ucGFnZS1zZWN0aW9uLnBhZC10b3AsIC5zZWN0aW9uLS1mdy10ZWFzZXIgeyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ucGFnZS1zZWN0aW9uLnBhZC1ib3R0b20geyBwYWRkaW5nLXRvcDogMDsgfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50LCAuc2VjdGlvbi0tY29udGFjdC1tYXAgeyBwYWRkaW5nLXRvcDogMDsgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmJnLS1saWdodC1ibHVlIHsgYmFja2dyb3VuZDogI2VhZWVmMiAhaW1wb3J0YW50OyB9XG5cbi5iZy0tbWVkaXVtLWJsdWUgeyBiYWNrZ3JvdW5kOiAjZDVkZWU2ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS1ibHVlIHsgYmFja2dyb3VuZDogIzhmYThjYiAhaW1wb3J0YW50OyB9XG5cbi5iZy0tdmlvbGV0LWJsdWUgeyBiYWNrZ3JvdW5kOiAjYjZjNWQ5ICFpbXBvcnRhbnQ7IH1cblxuLmJnLS13aGl0ZSB7IGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNlY3Rpb24tY250LmNudC0tb3ZlcnZpZXcgeyBtYXJnaW46IC0yMHB4OyB9IH1cblxuLyogVGVtcG9yYXJ5IGZpeGVkLCBwcmVmZXJhYmxlIHRvIGNoYW5nZSB0aGUgY2xhc3MgbmFtZXMgaW4gYmFja2VuZC4gRGVwZW5kaW5nIG9uIGFtb3VudCBvZiB3b3JrIG5lZWRlZC4gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTaW1wbGUgU2VjdGlvbiBzcGVjaWZpYyBmaXhlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1zdWJwYWdlcywgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS12ZXNzZWxzIHsgYmFja2dyb3VuZDogI2VhZWVmMjsgfVxuXG4ucGFnZS1zZWN0aW9uLnNlY3Rpb24tLW91ci1icmFuZHMgeyBiYWNrZ3JvdW5kOiAjZDVkZWU2OyB9XG5cbi5wYWdlLWludHJvICsgLnBhZ2Utc2VjdGlvbiwgLnNlY3Rpb24tLXN1YnBhZ2VzICsgLnNlY3Rpb24tLXNpZGUtY29udGVudCB7IG1hcmdpbi10b3A6IDEwMHB4OyB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgKyAuc2VjdGlvbi0tYWNjb3JkaW9uLWZ3IHsgbWFyZ2luLXRvcDogLTEwMHB4OyB9XG5cbi5wYWdlLWludHJvICsgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1saW5rLW92ZXJ2aWV3LCAucGFnZS1pbnRybyArIC5wYWdlLXNlY3Rpb24uYmctLXdoaXRlIHsgbWFyZ2luLXRvcDogMDsgfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50ICsgLnBhZ2Utc2VjdGlvbi5iZy0td2hpdGUsIC5wYWdlLXNlY3Rpb24uYmctLXdoaXRlICsgLnBhZ2Utc2VjdGlvbi5iZy0td2hpdGUgeyBwYWRkaW5nLXRvcDogMDsgfVxuXG4ucGFnZS1zZWN0aW9uLmJnLS13aGl0ZSArIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTRUNUSU9OIFZJREVPIC8gQ1RBIFRFQVNFUiAgTGFyZ2UgYmFja2dyb3VuZCBpbWFnZSBhbmQgZWl0aGVyIGEgQ1RBIGJ1dHRvbiBvciB2aWRlbyBsaW5rIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2VjdGlvbi1jbnRbY2xhc3MqPVwidGVhc2VyLS1cIl0geyBoZWlnaHQ6IDQ1MHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQxcHgpIHsgLnNlY3Rpb24tY250W2NsYXNzKj1cInRlYXNlci0tXCJdIHsgaGVpZ2h0OiA1NDBweDsgfSB9XG5cbi5zZWN0aW9uLWNudFtjbGFzcyo9XCJ0ZWFzZXItLVwiXTo6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHotaW5kZXg6IDE7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBjb250ZW50OiAnJzsgYmFja2dyb3VuZDogcmdiYSgyMiwgNDksIDkxLCAwLjMpOyB9XG5cbi5zZWN0aW9uLWNudFtjbGFzcyo9XCJ0ZWFzZXItLVwiXSBzdHJvbmcgeyBkaXNwbGF5OiBibG9jazsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogI2ZmZjsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc2l6ZTogMS44ODg4ODg4ODg5ZW07IGxpbmUtaGVpZ2h0OiAxLjI1OyB9XG5cbi5zZWN0aW9uLWNudFtjbGFzcyo9XCJ0ZWFzZXItLVwiXSAuYnRuLS12aWRlbyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLWJvdHRvbTogMThweDsgfVxuXG4uc2VjdGlvbi1jbnRbY2xhc3MqPVwidGVhc2VyLS1cIl0gLmJ0bi0tY3RhIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VDVElPTiBISUdITElHSFQgVEVBU0VSICA1MC81MCByb3cgd2l0aCBhbiBpbWFnZSBhbmQgdGV4dCBsZWZ0IGFuZCByaWdodCBhbmQgdi52LiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlY3Rpb24tLXNpZGUtY29udGVudCB7IGhlaWdodDogMTAwJTsgbWFyZ2luLXRvcDogMTAwcHg7IG1hcmdpbi1ib3R0b206IDEwMHB4OyBvdmVyZmxvdzogaGlkZGVuOyAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVHlwb2dyYXBoeSBIaWdobGlnaHQgdGVhc2VyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIH1cblxuLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSB7IGJhY2tncm91bmQ6ICNlYWVlZjI7IH1cblxuLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IHBhZGRpbmc6IDIwcHg7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IHBhZGRpbmctbGVmdDogNHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHsgcGFkZGluZy1sZWZ0OiA4dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBkaXYgeyBwYWRkaW5nLWxlZnQ6IDE1dnc7IH0gfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSB7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGEgeyBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhIHsgcGFkZGluZy1sZWZ0OiA0dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhIHsgcGFkZGluZy1sZWZ0OiA4dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MXB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhIHsgcGFkZGluZy1sZWZ0OiAxNXZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBkaXYgeyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyBwYWRkaW5nLWJvdHRvbTogNDBweDsgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgeyB3aWR0aDogNTAlOyBoZWlnaHQ6IDEwMCU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZmxvYXQ6IGxlZnQ7IG1pbi1oZWlnaHQ6IDUwMHB4OyBwYWRkaW5nLWJvdHRvbTogNjBweDsgfVxuICAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHsgZGlzcGxheTogYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhIHsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IH0gfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1zZWNvbmRhcnkgeyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyOyBoZWlnaHQ6IGF1dG87IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tc2Vjb25kYXJ5OjphZnRlciB7IHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IGNvbnRlbnQ6ICcnOyBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXNlY29uZGFyeSB7IHdpZHRoOiA1MCU7IGhlaWdodDogMTAwJTsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMCU7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfSB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuY29udGVudC0tcmlnaHQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNlY3Rpb24tLXNpZGUtY29udGVudC5jb250ZW50LS1yaWdodCAuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IHBhZGRpbmc6IDIwcHg7IHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuY29udGVudC0tcmlnaHQgLmNvbnRlbnQtLXByaW1hcnkgPiBkaXYgeyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2VjdGlvbi0tc2lkZS1jb250ZW50LmNvbnRlbnQtLXJpZ2h0IC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHsgcGFkZGluZy1yaWdodDogNHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgeyAuc2VjdGlvbi0tc2lkZS1jb250ZW50LmNvbnRlbnQtLXJpZ2h0IC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHsgcGFkZGluZy1yaWdodDogOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAuc2VjdGlvbi0tc2lkZS1jb250ZW50LmNvbnRlbnQtLXJpZ2h0IC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHsgcGFkZGluZy1yaWdodDogMTV2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMDBweCkgeyAuc2VjdGlvbi0tc2lkZS1jb250ZW50LmNvbnRlbnQtLXJpZ2h0IC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHsgcGFkZGluZzogNDBweDsgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuY29udGVudC0tcmlnaHQgLmNvbnRlbnQtLXByaW1hcnkgeyBmbG9hdDogcmlnaHQ7IHJpZ2h0OiAwOyB9XG4gIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuY29udGVudC0tcmlnaHQgLmNvbnRlbnQtLXByaW1hcnkgPiBkaXYgeyBwYWRkaW5nLXRvcDogNDBweDsgcGFkZGluZy1sZWZ0OiA0MHB4OyBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuICAuc2VjdGlvbi0tc2lkZS1jb250ZW50LmNvbnRlbnQtLXJpZ2h0IC5jb250ZW50LS1wcmltYXJ5ID4gYSB7IHBhZGRpbmctbGVmdDogNDBweDsgfVxuICAuc2VjdGlvbi0tc2lkZS1jb250ZW50LmNvbnRlbnQtLXJpZ2h0IC5jb250ZW50LS1zZWNvbmRhcnkgeyBsZWZ0OiAwOyByaWdodDogYXV0bzsgfSB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgaDMgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyBwYWRkaW5nLXRvcDogMjBweDsgfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSB7IHdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBsZWZ0OyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOiAxZW07IH1cblxuLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGE6YWZ0ZXIgeyBjb250ZW50OiBcIu+EjVwiOyB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhID4gc3BhbiB7IG1hcmdpbi1yaWdodDogMTBweDsgcGFkZGluZzogMDsgfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYTo6YWZ0ZXIgeyBmb250LXNpemU6IDAuNzc3Nzc3Nzc3OGVtOyB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmhvdmVyID4gc3BhbiB7IGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50IHAgeyBtYXJnaW4tYm90dG9tOiAxLjUyOTQxMTc2NWVtOyB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgcDpsYXN0LW9mLXR5cGUgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLndpZGdldCB7IG1hcmdpbi10b3A6IDQwcHg7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNFQ1RJT04gSU5URVJBQ1RJVkUgSElHSExJR0hUIFRFQVNFUiAgNTAvNTAgcm93IHdpdGggYSBidWxsZXQgbGlzdCB3aXRoIHJvbGxvdmVyIHdoaWNoIGFjdGl2YXRlcyBhbiBpbWFnZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgLnNsaWRlLWl0ZW0geyBwYWRkaW5nLWxlZnQ6IDMwcHg7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIC5zbGlkZS1pdGVtOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SNXCI7IHNwZWFrOiBub25lOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5OiBJY29uczsgfVxuXG4uc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCAuc2xpZGUtaXRlbTo6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiA1cHg7IGZvbnQtc2l6ZTogMC43Nzc3Nzc3Nzc4ZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpIHsgaGVpZ2h0OiA1MHB4OyBsaW5lLWhlaWdodDogNTBweDsgcGFkZGluZzogMDsgfVxuICAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCAuc2xpZGUtaXRlbSB7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogMTAwJTsgbWFyZ2luLXJpZ2h0OiAtNDBweDsgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XG4gIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIC5zbGlkZS1pdGVtOjphZnRlciB7IGNvbnRlbnQ6ICcnOyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IHJpZ2h0OiAtNTBweDsgdG9wOiAwOyBib3JkZXI6IDI1cHggc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IHotaW5kZXg6IDE7IH1cbiAgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIuY29udGVudC0tcmlnaHQgdWwgLnNsaWRlLWl0ZW0geyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAtNDBweDsgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XG4gIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyLmNvbnRlbnQtLXJpZ2h0IHVsIC5zbGlkZS1pdGVtOjpiZWZvcmUgeyBsZWZ0OiA0MHB4OyB9XG4gIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyLmNvbnRlbnQtLXJpZ2h0IHVsIC5zbGlkZS1pdGVtOjphZnRlciB7IGxlZnQ6IC01MHB4OyByaWdodDogYXV0bzsgfVxuICAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaSBhOmZvY3VzLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaSBhOmhvdmVyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaS5hY3RpdmUgLnNsaWRlLWl0ZW0geyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJhY2tncm91bmQ6ICNkNWRlZTY7IG91dGxpbmU6IDA7IH1cbiAgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkgYTpmb2N1czo6YWZ0ZXIsIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpIGE6aG92ZXI6OmFmdGVyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaS5hY3RpdmUgLnNsaWRlLWl0ZW06OmFmdGVyIHsgYm9yZGVyLWxlZnQtY29sb3I6ICNkNWRlZTY7IH1cbiAgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIuY29udGVudC0tcmlnaHQgdWwgbGkgLnNsaWRlLWl0ZW06Zm9jdXM6OmFmdGVyLCAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlci5jb250ZW50LS1yaWdodCB1bCBsaSAuc2xpZGUtaXRlbTpob3Zlcjo6YWZ0ZXIsIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyLmNvbnRlbnQtLXJpZ2h0IHVsIGxpLmFjdGl2ZSAuc2xpZGUtaXRlbTo6YWZ0ZXIgeyBib3JkZXItcmlnaHQtY29sb3I6ICNkNWRlZTY7IGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbi5jb250ZW50LS1zZWNvbmRhcnkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnNlY3Rpb24tLWFjdGl2aXRpZXMgLmNvbnRlbnQtLXNlY29uZGFyeSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5zZWN0aW9uLS1hY3Rpdml0aWVzIC5jb250ZW50LS1zZWNvbmRhcnkgeyBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMDBweCkgeyAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciAuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IHBhZGRpbmctdG9wOiAxMDBweDsgfSB9XG5cbi5jb250ZW50LS1zZWNvbmRhcnkgLnNsaWRlIHsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgd2lkdGg6IDEwMCU7IG9wYWNpdHk6IDA7IHZpc2liaWxpdHk6IGhpZGRlbjsgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dCA1MDBtcywgdmlzaWJpbGl0eSAyMDBtcyBlYXNlLWluLW91dCA1MDBtczsgfVxuXG4uY29udGVudC0tc2Vjb25kYXJ5IC5zbGlkZS5hY3RpdmUgeyBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDIwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5jb250ZW50LS1zZWNvbmRhcnkgLnNsaWRlIC5jYXB0aW9uIHsgbWF4LXdpZHRoOiA1MCU7IGxlZnQ6IGF1dG87IHJpZ2h0OiAwOyB9XG5cbi5jb250ZW50LS1yaWdodCAuY29udGVudC0tc2Vjb25kYXJ5IC5zbGlkZSAuY2FwdGlvbiB7IGxlZnQ6IDA7IHJpZ2h0OiBhdXRvOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTRUNUSU9OIE9WRVJGTE9XIEJsT0NLUyBDdXN0b20gYmxvY2sgbGF5b3V0IHdoZXJlIG9uIGEgc21hbGxlciBkZXZpY2UgdGhlIGJsb2NrcyBjaGFuZ2UgaW4gdG8gYSBzbGlkZXIgaW4gc3RlYWQgb2Ygc2hvd2luZyB1cCB1bmRlcm5lYXRoIGVhY2h0ZXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWN0aW9uLWNudC5jbnQtLW92ZXJmbG93IHsgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnNlY3Rpb24tY250LmNudC0tb3ZlcmZsb3cuc2xpY2stc2xpZGVyIHsgbWFyZ2luOiAwIC0yMHB4OyB9XG5cbi5zZWN0aW9uLWNudC5jbnQtLW92ZXJmbG93LnNsaWNrLXNsaWRlciAuYmxvY2sgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2VjdGlvbi1jbnQuY250LS1vdmVyZmxvdyB7IGZvbnQtZmFtaWx5OiAnZW1wdHknOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlY3Rpb24tY250LmNudC0tb3ZlcmZsb3cgLmJsb2NrIHsgZmxvYXQ6IG5vbmU7IHBhZGRpbmctbGVmdDogMjBweDsgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTRUNUSU9OIEJMT0NLIENBUk9VU0VMIENhcm91c2VsIGFzIHVzZWQgYnkgdGhlIGJyYW5kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2Utc2VjdGlvbiAuY250LS1jYXJvdXNlbCB7IG1hcmdpbjogMCAtMjBweDsgcGFkZGluZzogMDsgb3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGNlbnRlcjsgZm9udC1mYW1pbHk6IGVtcHR5OyB9XG5cbi5wYWdlLXNlY3Rpb24gLmNudC0tY2Fyb3VzZWwgLmJsb2NrIHsgZm9udC1mYW1pbHk6IFwiZnV0dXJhLXB0LWFsdFwiLCBcImZ1dHVyYS1wdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjsgcGFkZGluZy1sZWZ0OiAxMHB4OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi5wYWdlLXNlY3Rpb24gLmNudC0tY2Fyb3VzZWwgLmJsb2NrOmZvY3VzIHsgb3V0bGluZTogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5wYWdlLXNlY3Rpb24gLmNudC0tY2Fyb3VzZWwgLmJsb2NrIHsgd2lkdGg6IDI1JTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmbG9hdDogbm9uZTsgcGFkZGluZy1sZWZ0OiAyMHB4OyBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gIC5wYWdlLXNlY3Rpb24gLmNudC0tY2Fyb3VzZWwgLnNsaWNrLWFycm93IHsgbWFyZ2luLXRvcDogLTQ1cHg7IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VDVElPTiBPVkVSVklFVyBCbE9DS1MgR2VuZXJhbCBsYXlvdXQgZm9yIGRpc3BsYXlpbmcgYmxvY2tzIGluIGEgZ3JpZCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlY3Rpb24tY250LmNudC0tb3ZlcnZpZXcgeyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4ub3ZlcnZpZXcuZ3JpZCwgLmNudC0tb3ZlcnZpZXcgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtZmFtaWx5OiAnZW1wdHknOyB9XG5cbi5vdmVydmlldy5ncmlkIC5idG4uYnRuLS1saW5rLCAuY250LS1vdmVydmlldyAuYnRuLmJ0bi0tbGluayB7IGZvbnQtZmFtaWx5OiBcImZ1dHVyYS1wdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNlY3Rpb24tY250LmNvbC0tMSA+IC5ibG9jayB7IHdpZHRoOiA3MCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zZWN0aW9uLWNudCB7IHBhZGRpbmc6IDA7IH1cbiAgLnNlY3Rpb24tY250LmNvbC0tMSA+IC5ibG9jayB7IHdpZHRoOiA1MCU7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5zZWN0aW9uLWNudC5jb2wtLTIgPiAuYmxvY2sgeyB3aWR0aDogNTAlOyB9XG4gIC5zZWN0aW9uLWNudC5jb2wtLTQgPiAuYmxvY2sgeyB3aWR0aDogMjUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5wYWdlLXNlY3Rpb24gLnNlY3Rpb24tY250LmNudC0tb3ZlcnZpZXc6bm90KC5zbGljay1zbGlkZXIpIHsgbWFyZ2luLWJvdHRvbTogLTQwcHg7IH1cbiAgLmNudC0tb3ZlcnZpZXcgKyAuY250LS1jZW50ZXJlZCB7IG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVW5pcXVlIHN0eWxpbmcgZm9yIGEgY2VydGFpbiBvdmVydmlldyBzZWN0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2VjdGlvbi0tcmVsYXRlZCB7IGJhY2tncm91bmQ6ICNiNmM1ZDk7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNFQ1RJT04gTElTVCBURUFTRVIgTGFyZ2UgYmFja2dyb3VuZCBpbWFnZSB3aXRoIGEgYmxvY2sgY29udGFpbmluZyBzb21lIHRleHQgYW5kIGxpc3Qgd2l0aCBsaW5rcyB1c2VkIGZvciB0aGUgTWFya2V0cyBPdmVydmlldyBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGVhc2VyLS1saW5rcyB7IHBhZGRpbmctcmlnaHQ6IDIwcHg7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC50ZWFzZXItLWxpbmtzIHsgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnRlYXNlci0tbGlua3MgeyBwYWRkaW5nLXJpZ2h0OiA0dnc7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7IC50ZWFzZXItLWxpbmtzIHsgcGFkZGluZy1yaWdodDogOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAudGVhc2VyLS1saW5rcyB7IHBhZGRpbmctcmlnaHQ6IDE1dnc7IH0gfVxuXG4udGVhc2VyLS1saW5rczphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG4udGVhc2VyLS1saW5rcyAuYmxvY2sgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi50ZWFzZXItLWxpbmtzIC53aWRnZXQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi50ZWFzZXItLWxpbmtzIC5iYWNrc3RyZXRjaCB7IHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnRlYXNlci0tbGlua3MgLmJhY2tzdHJldGNoIHsgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IH1cbiAgLnRlYXNlci0tbGlua3MgLmJsb2NrIHsgZmxvYXQ6IHJpZ2h0OyB3aWR0aDogNDEwcHg7IG1hcmdpbi10b3A6IDQwcHg7IG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VDVElPTiBBU0lERSAgU2VjdGlvbiB3aXRoIGEgdGVhc2VyIGJsb2NrIG5leHQgdG8gYSBsaXN0IG9yIG90aGVyIHNpbXBsZSBjb250ZW50IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY250LS1hc2lkZSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY250LS1hc2lkZSA+IC5ibG9jayB7IG1hcmdpbjogNDBweCBhdXRvIDA7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmNudC0tYXNpZGUgPiAuYmxvY2sgeyB3aWR0aDogMzMuMzMzMzMlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbWFyZ2luLXRvcDogMDsgcmlnaHQ6IDA7IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VDVElPTiBJTlRFUkFDVElWRSBJTUFHRSAgSW50ZXJhY3RpdmUgaW1hZ2Ugd2l0aCBjbGlja2FibGUgbWFya2VycyB3aGljaCByZXZlYWwgYSB0b29sdGlwIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2VjdGlvbi1jbnQuY250LS1pbnRlcmFjdGl2ZS1pbWFnZSB7IHBhZGRpbmc6IDAgMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNlY3Rpb24tY250LmNudC0taW50ZXJhY3RpdmUtaW1hZ2UgeyBwYWRkaW5nOiAwOyB9IH1cblxuLmNudC0taW50ZXJhY3RpdmUtaW1hZ2UgLm1hcmtlciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm9yZGVyLXJhZGl1czogMTAwJTsgd2lkdGg6IDQwcHg7IGhlaWdodDogNDBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBwYWRkaW5nOiAwOyBiYWNrZ3JvdW5kOiAjMTYzMTViOyBtYXJnaW4tdG9wOiAtMjBweDsgbWFyZ2luLWxlZnQ6IC0yMHB4OyBjb2xvcjogI2ZmZjsgfVxuXG4uY250LS1pbnRlcmFjdGl2ZS1pbWFnZSAubWFya2VyOmhvdmVyIHsgYmFja2dyb3VuZDogIzExMjk0ZTsgfVxuXG4uY250LS1pbnRlcmFjdGl2ZS1pbWFnZSAuaW1hZ2Utd3JhcHBlciwgLmNudC0taW50ZXJhY3RpdmUtaW1hZ2UgLm1hcmtlciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmNudC0taW50ZXJhY3RpdmUtaW1hZ2UgLmltYWdlLXdyYXBwZXIgaW1nIHsgbWF4LXdpZHRoOiBub25lOyB3aWR0aDogMTAwJTsgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jbnQtLWludGVyYWN0aXZlLWltYWdlIC5ibG9jay0tdGlwIHsgZGlzcGxheTogbm9uZTsgfVxuICAuY250LS1pbnRlcmFjdGl2ZS1pbWFnZSAuaW1hZ2Utd3JhcHBlciwgLmNudC0taW50ZXJhY3RpdmUtaW1hZ2UgLm1hcmtlciB7IGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNFQ1RJT04gUExBSU4gVEVYVCBBcyBjb3B5cmlnaHQgbm90aWNlIGluIG1lZGlhIGxpYnJhcnkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jb250YWluZXIudGV4dC1jbnQgcCB7IG1heC13aWR0aDogbm9uZTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VDVElPTiBDT05UQUNUIE1BUCBTZWN0aW9uIHdpdGggYSBsYXJnZSBtYXAgYW5kIGEgYmxvY2sgd2l0aCBjb250YWN0IGRldGFpbHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWN0aW9uLS1jb250YWN0LW1hcCAub3ZlcnZpZXcubWFwIHsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmctYm90dG9tOiAwOyBtaW4taGVpZ2h0OiAwOyB9XG5cbi5zZWN0aW9uLS1jb250YWN0LW1hcCAubWFwLWNudCB7IHBvc2l0aW9uOiBzdGF0aWM7IG1pbi1oZWlnaHQ6IDIwMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2VjdGlvbi0tY29udGFjdC1tYXAgLm1hcC1jbnQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogNDBweDsgbWluLWhlaWdodDogNjAwcHg7IH0gfVxuXG4uc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIHsgbWFyZ2luLXJpZ2h0OiAyMHB4OyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgeyBtYXJnaW4tcmlnaHQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgeyBtYXJnaW4tcmlnaHQ6IDR2dzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHsgLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyB7IG1hcmdpbi1yaWdodDogOHZ3OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDFweCkgeyAuc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIHsgbWFyZ2luLXJpZ2h0OiAxNXZ3OyB9IH1cblxuLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyBoMiB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyBhLCAuc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIHN0cm9uZywgLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyBwIHsgZm9udC1zaXplOiAwLjg4ODg4ODg4ODllbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyB7IG1hcmdpbi10b3A6IDQwcHg7IG1hcmdpbi1ib3R0b206IDQwcHg7IHBhZGRpbmctbGVmdDogMDsgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgLmNvbnRlbnQgeyBwYWRkaW5nOiA0MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIHsgbWF4LXdpZHRoOiAzODVweDsgfSB9XG5cbi5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgLmNvbnRlbnQ6bnRoLWNoaWxkKDIpIHsgYmFja2dyb3VuZDogI2Q1ZGVlNjsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEFsbCB0aGUgdW5pcXVlIHN0eWxlcyBmb3IgcGFnZXMgZ28gaGVyZSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSU5WRVNUT1IgUkVMQVRJT05TIEludHJvIHdpdGgga2V5IGZpZ3VyZXMgYW5kIGFzaWRlIHdpZGdldHMgZm9yIHNoYXJlIGFuZCBjb250YWN0IGRldGFpbHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYWdlLS1pciBhc2lkZSAud2lkZ2V0IHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFnZS0taXIgLndpZGdldC0tc2hhcmVzIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtLWlyIGFzaWRlIC53aWRnZXQgeyBib3JkZXItYm90dG9tOiAwOyBwYWRkaW5nOiAyMHB4IDQwcHg7IG1hcmdpbi1ib3R0b206IDA7IG1hcmdpbi10b3A6IDA7IH1cbiAgLnBhZ2UtLWlyIGFzaWRlIC53aWRnZXQ6bGFzdC1jaGlsZCB7IGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2MxYzlkMDsgfSB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMSU5LIE9WRVJWSUVXIExpbmsgbGlzdHMgc3BsaXQgb3ZlciBtdWx0aXBsZSBjb2x1bW5zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGluay1ncmlkW2RhdGEtY29sdW1uc106OmJlZm9yZSB7IGNvbnRlbnQ6ICcxIC5jb2wtLWZ1bGwnOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAubGluay1ncmlkW2RhdGEtY29sdW1uc106OmJlZm9yZSB7IGNvbnRlbnQ6ICcyIC5jb2wtLXF1YXJ0JzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmxpbmstZ3JpZFtkYXRhLWNvbHVtbnNdOjpiZWZvcmUgeyBjb250ZW50OiAnMyAuY29sLS10aGlyZCc7IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VBUkNIIFJFU1VMVFMgUGFnZSBkaXNwbGF5aW5nIGFsbCB0aGUgc2VhcmNoIHJlc3VsdHMsIGR1aCEgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYWdlLXNlY3Rpb24uc2VjdGlvbi0tc2VhcmNoLXJlc3VsdHMgeyBwYWRkaW5nLXRvcDogMjBweDsgYmFja2dyb3VuZDogI2Q1ZGVlNjsgfVxuXG4ucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXNlYXJjaC1yZXN1bHRzIC50b29sYmFyICsgLmZpbHRlci1jbnQgeyBtYXJnaW4tdG9wOiAtMjBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyB7IHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gIC5wYWdlLXNlY3Rpb24uc2VjdGlvbi0tc2VhcmNoLXJlc3VsdHMgLnRvb2xiYXIgKyAuZmlsdGVyLWNudCB7IG1hcmdpbi10b3A6IDBweDsgfSB9XG5cbmJ1dHRvbi5idG4tLXJlc2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SAXCI7IH1cblxuYnV0dG9uLmJ0bi0tcmVzZXQ6Zm9jdXMsIGJ1dHRvbi5idG4tLXJlc2V0OmhvdmVyIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLnNlYXJjaC0tbGFyZ2UgeyBtYXJnaW4tdG9wOiAzNHB4OyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zZWFyY2gtLWxhcmdlOmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyB9XG5cbi5zZWFyY2gtLWxhcmdlIGlucHV0IHsgZm9udC1zdHlsZTogaXRhbGljOyBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2VhcmNoLS1sYXJnZSBsYWJlbCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDYwJTsgfVxuICAuc2VhcmNoLS1sYXJnZSBpbnB1dCwgLnNlYXJjaC0tbGFyZ2UgYnV0dG9uIHsgaGVpZ2h0OiA2MHB4OyBsaW5lLWhlaWdodDogNjBweDsgZm9udC1zaXplOiAxLjIyMjIyMjIyMjJlbTsgfVxuICAuc2VhcmNoLS1sYXJnZSBpbnB1dCwgLnNlYXJjaC0tbGFyZ2UgLmJ0bi0tc2VhcmNoIHsgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgLnNlYXJjaC0tbGFyZ2UgaW5wdXQgeyBwYWRkaW5nLWxlZnQ6IDI1cHg7IHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cbiAgLnNlYXJjaC0tbGFyZ2UgYnV0dG9uLmJ0bi0tc2VhcmNoIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgd2lkdGg6IGF1dG87IHBhZGRpbmc6IDAgMzBweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IG1hcmdpbi1sZWZ0OiAyMHB4OyBkaXNwbGF5OiBibG9jazsgfVxuICAuc2VhcmNoLS1sYXJnZSBidXR0b24uYnRuLS1zZWFyY2g6YWZ0ZXIgeyBjb250ZW50OiBcIu+Eh1wiOyBzcGVhazogbm9uZTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LWZhbWlseTogSWNvbnM7IH1cbiAgLnNlYXJjaC0tbGFyZ2UgYnV0dG9uLmJ0bi0tc2VhcmNoOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWFyY2gtLWxhcmdlIGJ1dHRvbi5idG4tLXNlYXJjaDo6YWZ0ZXIgeyBmb250LXNpemU6IDE5cHg7IH1cbiAgLnNlYXJjaC0tbGFyZ2UgYnV0dG9uLmJ0bi0tc2VhcmNoOmhvdmVyIHsgYmFja2dyb3VuZDogI2ZmZjsgY29sb3I6ICMxNDE0MTQ7IH1cbiAgLnNlYXJjaC0tbGFyZ2UgYnV0dG9uLmJ0bi0tc2VhcmNoIHNwYW4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNsaXA6IGF1dG87IGhlaWdodDogYXV0bzsgbWFyZ2luOiAwOyBvdmVyZmxvdzogdmlzaWJsZTsgd2lkdGg6IGF1dG87IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMCA1cHg7IH1cbiAgLnNlYXJjaC0tbGFyZ2UgLmJ0bi0tcmVzZXQgeyB3aWR0aDogNjBweDsgZm9udC1zaXplOiAxLjA1NTU1NTU1NTZlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnNlYXJjaC0tbGFyZ2UgbGFiZWwgeyB3aWR0aDogNjMwcHg7IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUFJPSkVDVCBERVRBSUwgIERldGFpbCBwYWdlIGZvciB0aGUgcHJvamVjdHMuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2UtLXByb2plY3QtZGV0YWlsIC5wYWdlLWNvbnRlbnQgeyBiYWNrZ3JvdW5kOiAjZWFlZWYyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnBhZ2UtLXByb2plY3QtZGV0YWlsIC5wYWdlLWFzaWRlICsgLnBhZ2UtY29udGVudCB7IHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLnBhZ2UtLXByb2plY3QtZGV0YWlsLWludHJvIHsgZm9udC13ZWlnaHQ6IDcwMDsgcGFkZGluZzogMzVweCAwIDI1cHggMDsgfVxuXG4ucGFnZS1jb250ZW50LmNvbnRlbnQtbWFpbltpdGVtcHJvcD1cImFydGljbGVCb2R5XCJdIHsgbWluLWhlaWdodDogNDUwcHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEhPTUVQQUdFIEN1c3RvbSBzdHlsaW5nIGZvciB0aGUgaG9tZXBhZ2UgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLnNlY3Rpb24tLXF1aWNrLWxpbmtzIC5ibG9jay0tbGlua3MgeyBoZWlnaHQ6IDMzMHB4OyB9XG4gIC5zZWN0aW9uLS1xdWljay1saW5rcyAuYmxvY2stLWxpbmtzID4gZGl2IHsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cbiAgLnNlY3Rpb24tLXF1aWNrLWxpbmtzIC5ibG9jay0tbGlua3MgLmZvb3RpbmcgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc2VjdGlvbi0tcXVpY2stbGlua3MgLndpZGdldCB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLnNlY3Rpb24tLXF1aWNrLWxpbmtzIC53aWRnZXQ6bGFzdC1vZi10eXBlIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uZmFuY3lib3gtb3ZlcmxheSB7IGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4uZmItLXN1YnNjcmliZSAuZmFuY3lib3gtc2tpbiB7IGJveC1zaGFkb3c6IG5vbmU7IGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmZiLS1zdWJzY3JpYmUgLnBvcHVwIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmZhbmN5Ym94LWlubmVyIC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7IG1hcmdpbi1yaWdodDogMDsgfVxuXG4uZmFuY3lib3gtaW5uZXIgLm1DU0Jfc2Nyb2xsVG9vbHMgeyB0b3A6IDgwcHg7IGJvdHRvbTogMzBweDsgcmlnaHQ6IDEwcHg7IH1cblxuLmZhbmN5Ym94LWNsb3NlIHsgYmFja2dyb3VuZDogbm9uZTsgdG9wOiAwOyByaWdodDogMDsgd2lkdGg6IDUwcHg7IGhlaWdodDogNTBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBsaW5lLWhlaWdodDogNTBweDsgZm9udC1zaXplOiAwLjU1NTU1NTU1NTZlbTsgY29sb3I6ICMxNDE0MTQ7IGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLmZhbmN5Ym94LWNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SAXCI7IH1cblxuLmZhbmN5Ym94LWNsb3NlOmhvdmVyIHsgYmFja2dyb3VuZDogI2ZmZjcxOTsgfVxuXG4ucG9wdXAgeyBjb2xvcjogIzE0MTQxNDsgYmFja2dyb3VuZDogIzE2MzE1YjsgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5wb3B1cDphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDsgfVxuXG4ucG9wdXAgaGVhZGVyLCAucG9wdXAgZm9ybSwgLnBvcHVwIGFzaWRlIHsgcGFkZGluZzogMzBweCA0MHB4OyBtYXJnaW46IDA7IH1cblxuLnBvcHVwIGhlYWRlciB7IGJhY2tncm91bmQ6ICNmZmY7IHBhZGRpbmctdG9wOiA0MHB4OyB9XG5cbi5wb3B1cCBoZWFkZXIgLmhlYWRpbmctLXNlY3Rpb24geyBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XG5cbi5wb3B1cCBmb3JtIHsgYmFja2dyb3VuZDogI2Q1ZGVlNjsgLyogXHRcdC5idG4geyBmb250LXNpemU6IGVtKDE4cHgpOyB9ICovIH1cblxuLnBvcHVwIGZvcm0gLmxhYmVsLS1zdHJvbmcsIC5wb3B1cCBmb3JtIC5sYWJlbCB7IGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5ZW07IH1cblxuLnBvcHVwIGFzaWRlIHsgYmFja2dyb3VuZDogIzE2MzE1YjsgY29sb3I6ICNmZmY7IH1cblxuLnBvcHVwIGFzaWRlIC5idG46Zmlyc3Qtb2YtdHlwZSB7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5wb3B1cCBhc2lkZSAubGlzdC0tbGlua3MgeyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5wb3B1cCBhc2lkZSBzdHJvbmcgeyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtOyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDEuNDsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLnBvcHVwIGZvcm0sIC5wb3B1cCBhc2lkZSB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5wb3B1cCBmb3JtIHsgd2lkdGg6IDYwJTsgfVxuICAucG9wdXAgYXNpZGUgeyB3aWR0aDogNDAlOyB9XG4gIC5wb3B1cCAubGFiZWwtLXN0cm9uZyB7IG1hcmdpbi10b3A6IDVweDsgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5wb3B1cCBmb3JtIGZpZWxkc2V0OmZpcnN0LWNoaWxkIC5sYWJlbC0tc3Ryb25nIHsgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5ub3RpZmljYXRpb24geyBmb250LXNpemU6IDEycHg7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi52aWRlby1wb3N0ZXIgeyBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIDUwJTsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgbWluLWhlaWdodDogMjUwcHg7IH1cblxuLm5hdi1vcGVuZWQgLmJpZy12aWRlby12aWQtZGltZW5zaW9ucyB7IGxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4uZW1lcmdlbmN5LWJveCB7IGJhY2tncm91bmQtY29sb3I6ICMxNjMxNWI7IGNvbG9yOiAjZmZmOyBwYWRkaW5nOiAxMHB4IDIwcHggMDsgcG9zaXRpb246IGZpeGVkOyB3aWR0aDogMjQ2cHg7IHJpZ2h0OiAtMjQ2cHg7IHRvcDogNTAlOyB0cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgei1pbmRleDogMjAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuZW1lcmdlbmN5LWJveCB7IHdpZHRoOiAzMDZweDsgcmlnaHQ6IC0zMDZweDsgcGFkZGluZzogMTBweCAzMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAuZW1lcmdlbmN5LWJveCB7IHBhZGRpbmc6IDQwcHg7IH0gfVxuXG4uZW1lcmdlbmN5LWJveCAuYnRuIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjcxOTsgY29sb3I6ICMxNDE0MTQ7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5lbWVyZ2VuY3ktYm94IC5idG46aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNzE5OyB9XG5cbi5lbWVyZ2VuY3ktYm94IGg0LCAuZW1lcmdlbmN5LWJveCBwIHsgbWFyZ2luOiAwIDAgMTBweDsgfVxuXG4uZW1lcmdlbmN5LWJveCAudHJpZ2dlciB7IGJhY2tncm91bmQtY29sb3I6ICMxNjMxNWI7IGNvbG9yOiAjZmZmOyBmb250LXNpemU6IDE2cHg7IHBhZGRpbmc6IDMwcHggMTBweDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHJpZ2h0OiAxMDAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHdpZHRoOiA3NHB4OyB9XG5cbi5lbWVyZ2VuY3ktYm94IC50cmlnZ2VyIHNwYW46YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGNcIjsgZm9udC1mYW1pbHk6IEljb25zOyB9XG5cbi5ib3gtb3BlbiAuZW1lcmdlbmN5LWJveCAudHJpZ2dlciBzcGFuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTBkXCI7IH1cblxuLmJveC1vcGVuIC5lbWVyZ2VuY3ktYm94IHsgcmlnaHQ6IDA7IH1cblxuLm1hcHMtdGlwIC5oaWRkZW4geyBkaXNwbGF5OiBub25lOyB9XG5cbi5tYXBzLXRpcCAuc2xpY2stYXJyb3cuc2xpY2stcHJldiwgLm1hcHMtdGlwIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHsgYmFja2dyb3VuZC1jb2xvcjogIzhmYThjYjsgbWFyZ2luLXRvcDogMDsgdG9wOiAwOyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC42NXMgZWFzZS1pbi1vdXQ7IH1cblxuLm1hcHMtdGlwIC5zbGljay1hcnJvdy5zbGljay1wcmV2OmJlZm9yZSwgLm1hcHMtdGlwIC5zbGljay1hcnJvdy5zbGljay1uZXh0OmJlZm9yZSB7IGNvbG9yOiAjZmZmOyB9XG5cbi5tYXBzLXRpcCAuc2xpY2stYXJyb3cuc2xpY2stcHJldjpob3ZlciwgLm1hcHMtdGlwIC5zbGljay1hcnJvdy5zbGljay1wcmV2OmZvY3VzLCAubWFwcy10aXAgLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6aG92ZXIsIC5tYXBzLXRpcCAuc2xpY2stYXJyb3cuc2xpY2stbmV4dDpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICMxNjMxNWI7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4ubWFwcy10aXAgLnNsaWNrLWFycm93LnNsaWNrLXByZXYgeyBsZWZ0OiAwOyB9XG5cbi5tYXBzLXRpcCAuc2xpY2stYXJyb3cuc2xpY2stcHJldjpob3ZlciB7IGxlZnQ6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4ubWFwcy10aXAgLnNsaWNrLWFycm93LnNsaWNrLW5leHQgeyBsZWZ0OiA0MXB4OyByaWdodDogYXV0bzsgfVxuXG4ubWFwcy10aXAgLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6aG92ZXIgeyByaWdodDogYXV0bzsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5tYXBzLXRpcCAuYmxvY2suYmxvY2stLWxvY2F0aW9uLCAubWFwcy10aXAgLmJsb2NrLmJsb2NrLS1sb2NhdGlvbjpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLm1hcHMtdGlwIC5ibG9jay0tbG9jYXRpb24gLmNvbnRlbnQgeyBwYWRkaW5nLXRvcDogNTBweDsgfVxuXG4ubWFwcy10aXAgLnNsaWNrLXNsaWRlIHsgaGVpZ2h0OiAzNzBweDsgfVxuXG4uYmFkZ2UgaW1nIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uYmFkZ2UtbGVmdCB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gREVGQVVMVCBQUkVMT0FERVIgU1RZTElORyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnByZWxvYWRlci1wb3B1cCB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgcG9zaXRpb246IGZpeGVkOyB6LWluZGV4OiAxMDAwOyBib3R0b206IDA7IHJpZ2h0OiAwOyBsZWZ0OiAwOyB0b3A6IDA7IH1cblxuLnByZWxvYWRlci1wb3B1cCAucG9wdXBfX2NvbnRhaW5lciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IG1heC13aWR0aDogOTYwcHg7IHRvcDogNTAlOyByaWdodDogMDsgYm90dG9tOiBhdXRvOyBsZWZ0OiAwOyBtYXJnaW46IDAgYXV0bzsgb3ZlcmZsb3c6IHZpc2libGU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMDBweCkgeyAucHJlbG9hZGVyLXBvcHVwIC5wb3B1cF9fY29udGFpbmVyIHsgbWF4LXdpZHRoOiA2MDBweDsgcGFkZGluZzogMjBweDsgfSB9XG5cbi5wcmVsb2FkZXItcG9wdXAgLnBvcHVwX19jbG9zZSB7IHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDI0cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogMTEwOyB0b3A6IC0zNXB4OyByaWdodDogLTEwcHg7IGJvcmRlcjogMDsgcGFkZGluZzogMDsgY3Vyc29yOiBwb2ludGVyOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL0ljb25zL2ljb24tY2xvc2Uuc3ZnKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzAwcHgpIHsgLnByZWxvYWRlci1wb3B1cCAucG9wdXBfX2Nsb3NlIHsgdG9wOiAtMjBweDsgcmlnaHQ6IDIwcHg7IH0gfVxuXG4ucHJlbG9hZGVyLXBvcHVwIC5wb3B1cF9fY29udGVudCB7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IHBhZGRpbmc6IDEwMHB4IDUwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzAwcHgpIHsgLnByZWxvYWRlci1wb3B1cCAucG9wdXBfX2NvbnRlbnQgeyBwYWRkaW5nOiAyMHB4OyB9IH1cblxuLnByZWxvYWRlci1wb3B1cCAuYW5pbWF0aW9uIHsgaGVpZ2h0OiAxNTBweDsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW4tdG9wOiA0MHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMDBweCkgeyAucHJlbG9hZGVyLXBvcHVwIC5hbmltYXRpb24geyBoZWlnaHQ6IDEwMCU7IG1pbi1oZWlnaHQ6IDE1MHB4OyB9IH1cblxuLnByZWxvYWRlci1wb3B1cCAuYW5pbWF0aW9uIC5hbmltYXRpb25fX2l0ZW0geyB3aWR0aDogNDAwcHg7IGhlaWdodDogMTUwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgbWFyZ2luOiAwIGF1dG87IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwMHB4KSB7IC5wcmVsb2FkZXItcG9wdXAgLmFuaW1hdGlvbiAuYW5pbWF0aW9uX19pdGVtIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgbWluLWhlaWdodDogMTUwcHg7IG1heC13aWR0aDogNDAwcHg7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZpcnN0IHsgMCUgeyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBzZWNvbmQgeyAwJSB7IG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH0gfVxuXG4ucHJlbG9hZGVyLXBvcHVwIC5hbmltYXRpb24gLmZpcnN0IHsgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGFuaW1hdGlvbjogZmlyc3QgNXMgbm9ybWFsIGZvcndhcmRzIGVhc2U7IGFuaW1hdGlvbi1kZWxheTogNTAwbXM7IH1cblxuLnByZWxvYWRlci1wb3B1cCAuYW5pbWF0aW9uIC5zZWNvbmQgeyBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bzsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYW5pbWF0aW9uOiBzZWNvbmQgNXMgbm9ybWFsIGZvcndhcmRzIGVhc2U7IGFuaW1hdGlvbi1kZWxheTogMnM7IG9wYWNpdHk6IDA7IH1cblxuLmZsYXNoLW1lc3NhZ2VzLWNvbnRhaW5lciB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmZsYXNoLW1lc3NhZ2VzLWNvbnRhaW5lciAuZmxhc2gtbWVzc2FnZXMtY29udGFpbmVyLWlubmVyIC50eXBvMy1tZXNzYWdlcyB7IG1hcmdpbjogMDsgfVxuXG4uZmxhc2gtbWVzc2FnZXMtY29udGFpbmVyIC5mbGFzaC1tZXNzYWdlcy1jb250YWluZXItaW5uZXIgLmFsZXJ0IHsgYm9yZGVyOiAxcHggc29saWQgIzdkOTNiMzsgbGlzdC1zdHlsZTogbm9uZTsgcGFkZGluZzogMjBweDsgfVxuXG4uZmxhc2gtbWVzc2FnZXMtY29udGFpbmVyIC5mbGFzaC1tZXNzYWdlcy1jb250YWluZXItaW5uZXIgLmFsZXJ0Omxhc3QtY2hpbGQgeyBwYWRkaW5nLWJvdHRvbTogMmVtOyB9XG5cbi5mbGFzaC1tZXNzYWdlcy1jb250YWluZXIgLmZsYXNoLW1lc3NhZ2VzLWNvbnRhaW5lci1pbm5lciAuYWxlcnQgPiAuYWxlcnQtbWVzc2FnZTo6YmVmb3JlIHsgY29udGVudDogJy0nOyBtYXJnaW46IDAgMC41ZW07IH1cblxuLmZsYXNoLW1lc3NhZ2VzLWNvbnRhaW5lciAuZmxhc2gtbWVzc2FnZXMtY29udGFpbmVyLWlubmVyIC5hbGVydC5hbGVydC1ub3RpY2UgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjOGZhOGNiOyB9XG5cbi5mbGFzaC1tZXNzYWdlcy1jb250YWluZXIgLmZsYXNoLW1lc3NhZ2VzLWNvbnRhaW5lci1pbm5lciAuYWxlcnQuYWxlcnQtd2FybmluZyB7IGJhY2tncm91bmQtY29sb3I6ICNmZmY3MTk7IH1cblxuLmZsYXNoLW1lc3NhZ2VzLWNvbnRhaW5lciAuZmxhc2gtbWVzc2FnZXMtY29udGFpbmVyLWlubmVyIC5hbGVydC5hbGVydC1lcnJvciB7IGJhY2tncm91bmQtY29sb3I6ICNDNTM4MzA7IGNvbG9yOiAjZmZmOyB9XG5cbi8qIFRpcHBlZCAtIEEgQ29tcGxldGUgSmF2YXNjcmlwdCBUb29sdGlwIFNvbHV0aW9uIC0gdjQuNC4yIChjKSAyMDEyLTIwMTUgTmljayBTdGFrZW5idXJnIGh0dHA6Ly93d3cudGlwcGVkanMuY29tIExpY2Vuc2U6IGh0dHA6Ly93d3cudGlwcGVkanMuY29tL2xpY2Vuc2UgKi9cbi50cGQtdG9vbHRpcCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4vKiBGaXggZm9yIENTUyBmcmFtZXdvcmtzIHRoYXQgZG9uJ3Qga2VlcCB0aGUgdXNlIG9mIGJveC1zaXppbmc6IGJvcmRlci1ib3ggd2l0aGluIHRoZWlyIG93biBuYW1lc3BhY2UgKi9cbi50cGQtdG9vbHRpcCwgLnRwZC10b29sdGlwIFtjbGFzc149XCJ0cGQtXCJdIHsgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuLyogQ29udGVudCAqL1xuLnRwZC1jb250ZW50LXdyYXBwZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnRwZC1jb250ZW50LXNwYWNlciwgLnRwZC1jb250ZW50LXJlbGF0aXZlLCAudHBkLWNvbnRlbnQtcmVsYXRpdmUtcGFkZGVyIHsgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udHBkLWNvbnRlbnQtcmVsYXRpdmUgeyB3aWR0aDogMTAwJTsgfVxuXG4udHBkLWNvbnRlbnQgeyBmbG9hdDogbGVmdDsgY2xlYXI6IGJvdGg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMTBweDsgZm9udC1zaXplOiAxMXB4OyBsaW5lLWhlaWdodDogMTZweDsgY29sb3I6ICNmZmY7IH1cblxuLnRwZC1oYXMtaW5uZXItY2xvc2UgLnRwZC1jb250ZW50LXJlbGF0aXZlIC50cGQtY29udGVudCB7IHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4udHBkLXRvb2x0aXAgLnRwZC1jb250ZW50LW5vLXBhZGRpbmcgeyBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnRwZC10aXRsZS13cmFwcGVyIHsgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4udHBkLXRpdGxlLXNwYWNlciB7IGZsb2F0OiBsZWZ0OyB9XG5cbi50cGQtdGl0bGUtcmVsYXRpdmUsIC50cGQtdGl0bGUtcmVsYXRpdmUtcGFkZGVyIHsgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udHBkLXRpdGxlLXJlbGF0aXZlIHsgd2lkdGg6IDEwMCU7IH1cblxuLnRwZC10aXRsZSB7IGZsb2F0OiBsZWZ0OyBwb3NpdGlvbjogcmVsYXRpdmU7IGZvbnQtc2l6ZTogMTFweDsgbGluZS1oZWlnaHQ6IDE2cHg7IHBhZGRpbmc6IDEwcHg7IGZvbnQtd2VpZ2h0OiBib2xkOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogI2ZmZjsgfVxuXG4udHBkLWhhcy10aXRsZS1jbG9zZSAudHBkLXRpdGxlIHsgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi50cGQtY2xvc2UgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgcmlnaHQ6IDA7IHdpZHRoOiAyOHB4OyBoZWlnaHQ6IDI4cHg7IGN1cnNvcjogcG9pbnRlcjsgb3ZlcmZsb3c6IGhpZGRlbjsgY29sb3I6ICNmZmY7IH1cblxuLnRwZC1jbG9zZS1pY29uIHsgZmxvYXQ6IGxlZnQ7IGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHdpZHRoOiAyOHB4OyBoZWlnaHQ6IDI4cHg7IGZvbnQtc2l6ZTogMjhweDsgbGluZS1oZWlnaHQ6IDI4cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKiBTa2luICovXG4udHBkLXNraW4geyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgfVxuXG4udHBkLWZyYW1lcyB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB9XG5cbi50cGQtZnJhbWVzIC50cGQtZnJhbWUgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgY2xlYXI6IGJvdGg7IGRpc3BsYXk6IG5vbmU7IH1cblxuLnRwZC12aXNpYmxlLWZyYW1lLXRvcCAudHBkLWZyYW1lLXRvcCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50cGQtdmlzaWJsZS1mcmFtZS1ib3R0b20gLnRwZC1mcmFtZS1ib3R0b20geyBkaXNwbGF5OiBibG9jazsgfVxuXG4udHBkLXZpc2libGUtZnJhbWUtbGVmdCAudHBkLWZyYW1lLWxlZnQgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4udHBkLXZpc2libGUtZnJhbWUtcmlnaHQgLnRwZC1mcmFtZS1yaWdodCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50cGQtYmFja2dyb3VuZHMgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwJSAwJTsgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7IH1cblxuLnRwZC1iYWNrZ3JvdW5kLXNoYWRvdyB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnRwZC1uby1zaGFkb3cgLnRwZC1za2luIC50cGQtYmFja2dyb3VuZC1zaGFkb3cgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRwZC1iYWNrZ3JvdW5kLWJveCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIG9ubHkgdGhlIHRvcCBiYWNrZ3JvdW5kIGJveCBzaG91bGQgYmUgc2hvd24gd2hlbiBub3QgdXNpbmcgYSBzdGVtICovXG4udHBkLW5vLXN0ZW0gLnRwZC1iYWNrZ3JvdW5kLWJveCwgLnRwZC1uby1zdGVtIC50cGQtc2hpZnQtc3RlbSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLnRwZC1uby1zdGVtIC50cGQtYmFja2dyb3VuZC1ib3gtdG9wIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLnRwZC1iYWNrZ3JvdW5kLWJveC1zaGlmdCwgLnRwZC1iYWNrZ3JvdW5kLWJveC1zaGlmdC1mdXJ0aGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBmbG9hdDogbGVmdDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgfVxuXG4udHBkLWJhY2tncm91bmQgeyBib3JkZXItcmFkaXVzOiAxMHB4OyBmbG9hdDogbGVmdDsgY2xlYXI6IGJvdGg7IGJhY2tncm91bmQ6IG5vbmU7IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsgLyogU2FmYXJpICovIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7IC8qIElFOSssIEZpcmVmb3ggNCssIE9wZXJhLCBDaHJvbWUgKi8gYm9yZGVyLXN0eWxlOiBzb2xpZDsgYm9yZGVyLXdpZHRoOiAxcHg7IGJvcmRlci1jb2xvcjogI2ZmZjsgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IC8qIG9wYWNpdHkgaGVyZSBidWdzIG91dCBpbiBmaXJlZm94LCAudHBkLWJhY2tncm91bmQtY29udGVudCBzaG91bGQgaGF2ZSBubyBvcGFjaXR5IGlmIHRoaXMgb3BhY2l0eSBpcyBsZXNzIHRoYW4gMSAqLyB9XG5cbi50cGQtYmFja2dyb3VuZC1sb2FkaW5nIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBubyByYWRpdXMgKi9cbi50cGQtbm8tcmFkaXVzIC50cGQtc2tpbiAudHBkLWZyYW1lcyAudHBkLWZyYW1lIC50cGQtYmFja2dyb3VuZHMgLnRwZC1iYWNrZ3JvdW5kIHsgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4udHBkLWJhY2tncm91bmQtdGl0bGUgeyBmbG9hdDogbGVmdDsgY2xlYXI6IGJvdGg7IHdpZHRoOiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi50cGQtYmFja2dyb3VuZC1jb250ZW50IHsgZmxvYXQ6IGxlZnQ7IGNsZWFyOiBib3RoOyB3aWR0aDogMTAwJTsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4udHBkLWJhY2tncm91bmQtYm9yZGVyLWhhY2sgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4udHBkLWJhY2tncm91bmQtYm94LXRvcCB7IHRvcDogMDsgfVxuXG4udHBkLWJhY2tncm91bmQtYm94LWJvdHRvbSB7IGJvdHRvbTogMDsgfVxuXG4udHBkLWJhY2tncm91bmQtYm94LWxlZnQgeyBsZWZ0OiAwOyB9XG5cbi50cGQtYmFja2dyb3VuZC1ib3gtcmlnaHQgeyByaWdodDogMDsgfVxuXG4vKiBpZnJhbWVzaGltIElFNiAqL1xuLnRwZC1pZnJhbWVzaGltIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgem9vbTogMTsgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApOyBvcGFjaXR5OiAwOyB9XG5cbi8qIFNraW4gLyBTdGVtcyAqL1xuLnRwZC1zaGlmdC1zdGVtIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnRwZC1zaGlmdC1zdGVtLXNpZGUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnRwZC1mcmFtZS10b3AgLnRwZC1zaGlmdC1zdGVtLXNpZGUsIC50cGQtZnJhbWUtYm90dG9tIC50cGQtc2hpZnQtc3RlbS1zaWRlIHsgd2lkdGg6IDEwMCU7IH1cblxuLnRwZC1mcmFtZS1sZWZ0IC50cGQtc2hpZnQtc3RlbS1zaWRlLCAudHBkLWZyYW1lLXJpZ2h0IC50cGQtc2hpZnQtc3RlbS1zaWRlIHsgaGVpZ2h0OiAxMDAlOyB9XG5cbi50cGQtc3RlbSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBvdmVyZmxvdzogaGlkZGVuOyAvKiBzaG93cyBwb3NzaWJsZSBpbnZhbGlkIHN1YnB4IHJlbmRlcmluZyAqLyB3aWR0aDogMTZweDsgLyogYmVzdCBjcm9zcyBicm93c2VyIHN0ZW06IHdpZHRoID0gMiB4IGhlaWdodCAoOTBkZWcgYW5nbGUpICovIGhlaWdodDogOHB4OyBtYXJnaW4tbGVmdDogM3B4OyAvKiBzcGFjZSBmcm9tIHRoZSBzaWRlICovIG1hcmdpbi10b3A6IDJweDsgLyogc3BhY2UgYmV0d2VlbiB0YXJnZXQgYW5kIHN0ZW0gKi8gLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwJSAwJTsgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7IH1cblxuLyogcmVtb3ZlIG1hcmdpbnMgb25jZSB3ZSdyZSBkb25lIG1lYXN1cmluZyAqL1xuLnRwZC10b29sdGlwIC50cGQtc2tpbiAudHBkLWZyYW1lcyAudHBkLWZyYW1lIC50cGQtc2hpZnQtc3RlbSAudHBkLXN0ZW0tcmVzZXQgeyBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4udHBkLXN0ZW0tc3BhY2VyIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IH1cblxuLnRwZC1zdGVtLXJlc2V0IC50cGQtc3RlbS1zcGFjZXIgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi50cGQtc3RlbS1wb2ludCB7IHdpZHRoOiAxMDBweDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDUwJTsgfVxuXG4udHBkLXN0ZW0tZG93bnNjYWxlLCAudHBkLXN0ZW0tdHJhbnNmb3JtIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7IHRyYW5zZm9ybS1vcmlnaW46IDAlIDAlOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnRwZC1zdGVtLXNpZGUgeyB3aWR0aDogNTAlOyBoZWlnaHQ6IDEwMCU7IGZsb2F0OiBsZWZ0OyBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnRwZC1zdGVtLXNpZGUtaW52ZXJzZWQgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpOyB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsgfVxuXG4udHBkLXN0ZW0tdHJpYW5nbGUgeyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB9XG5cbi50cGQtc3RlbS1ib3JkZXIgeyB3aWR0aDogMjBweDsgaGVpZ2h0OiAxMDAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogNTAlOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyAvKiB3aWxsIGJlY29tZSB0cmFuc3BhcmVudCAqLyBib3JkZXItcmlnaHQtY29sb3I6ICNmZmY7IGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7IGJvcmRlci1yaWdodC13aWR0aDogMDsgfVxuXG4udHBkLXN0ZW0tYm9yZGVyLWNvcm5lciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiA1MCU7IGhlaWdodDogMTAwJTsgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9XG5cbi8qIGZpeGVzIHJlbmRlcmluZyBpc3N1ZSBpbiBJRSAqL1xuLnRwZC1zdGVtICogeyB6LWluZGV4OiAwOyB6b29tOiAxOyB9XG5cbi8qIHVzZWQgYnkgSUUgPCA5ICovXG4udHBkLXN0ZW0tYm9yZGVyLWNlbnRlci1vZmZzZXQsIC50cGQtc3RlbS1ib3JkZXItY2VudGVyLW9mZnNldC1pbnZlcnNlIHsgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4udHBkLXN0ZW0tbm90cmFuc2Zvcm0geyBmbG9hdDogbGVmdDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi50cGQtc3RlbS1ub3RyYW5zZm9ybSAudHBkLXN0ZW0tYm9yZGVyIHsgaGVpZ2h0OiAxMDAlOyBwb3NpdGlvbjogcmVsYXRpdmU7IGZsb2F0OiBsZWZ0OyB0b3A6IDA7IGxlZnQ6IDA7IG1hcmdpbjogMDsgfVxuXG4udHBkLXN0ZW0tbm90cmFuc2Zvcm0gLnRwZC1zdGVtLWJvcmRlci1jZW50ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnRwZC1zdGVtLW5vdHJhbnNmb3JtIC50cGQtc3RlbS1ib3JkZXItY29ybmVyIHsgYmFja2dyb3VuZDogI2ZmZjsgYm9yZGVyOiAwOyB0b3A6IGF1dG87IGxlZnQ6IGF1dG87IH1cblxuLnRwZC1zdGVtLW5vdHJhbnNmb3JtIC50cGQtc3RlbS1ib3JkZXItY2VudGVyLCAudHBkLXN0ZW0tbm90cmFuc2Zvcm0gLnRwZC1zdGVtLXRyaWFuZ2xlIHsgaGVpZ2h0OiAwOyBib3JkZXI6IDA7IGxlZnQ6IDUwJTsgfVxuXG4vKiB0cmFuc2Zvcm1hdGlvbnMgZm9yIGxlZnQvcmlnaHQvYm90dG9tICovXG4udHBkLXN0ZW0tdHJhbnNmb3JtLWxlZnQgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgc2NhbGUoLTEsIDEpOyB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHNjYWxlKC0xLCAxKTsgfVxuXG4udHBkLXN0ZW0tdHJhbnNmb3JtLXJpZ2h0IHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDAsIC0xMDAlKTsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSgwLCAtMTAwJSk7IH1cblxuLnRwZC1zdGVtLXRyYW5zZm9ybS1ib3R0b20geyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpIHRyYW5zbGF0ZSgwLCAtMTAwJSk7IHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpIHRyYW5zbGF0ZSgwLCAtMTAwJSk7IH1cblxuLyogU3Bpbm5lciAqL1xuLnRwZC1zcGlubmVyIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogNTAlOyB3aWR0aDogNDZweDsgaGVpZ2h0OiAzNnB4OyB9XG5cbi50cGQtc3Bpbm5lci1zcGluIHsgcG9zaXRpb246IHJlbGF0aXZlOyBmbG9hdDogbGVmdDsgbWFyZ2luOiA4cHggMCAwIDEzcHg7IHRleHQtaW5kZW50OiAtOTk5OWVtOyBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZjsgLXdlYmtpdC1hbmltYXRpb246IHRwZC1zcGlubmVyLWFuaW1hdGlvbiAxLjFzIGluZmluaXRlIGxpbmVhcjsgYW5pbWF0aW9uOiB0cGQtc3Bpbm5lci1hbmltYXRpb24gMS4xcyBpbmZpbml0ZSBsaW5lYXI7IGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDsgfVxuXG4udHBkLXNwaW5uZXItc3BpbiwgLnRwZC1zcGlubmVyLXNwaW46YWZ0ZXIgeyBib3JkZXItcmFkaXVzOiA1MCU7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHRwZC1zcGlubmVyLWFuaW1hdGlvbiB7IDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHRwZC1zcGlubmVyLWFuaW1hdGlvbiB7IDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4vKiBzaG93IHRoZSBsb2FkZXIgd2hpbGUgbG9hZGluZyBhbmQgaGlkZSBhbGwgdGhlIGNvbnRlbnQgKi9cbi50cGQtaXMtbG9hZGluZyAudHBkLWNvbnRlbnQtd3JhcHBlciwgLnRwZC1pcy1sb2FkaW5nIC50cGQtdGl0bGUtd3JhcHBlciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLnRwZC1pcy1sb2FkaW5nIC50cGQtYmFja2dyb3VuZCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLnRwZC1pcy1sb2FkaW5nIC50cGQtYmFja2dyb3VuZC1sb2FkaW5nIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLyogUmVzZXRzIHdoaWxlIG1lYXN1cmluZyBjb250ZW50ICovXG4udHBkLXRvb2x0aXAtbWVhc3VyaW5nIHsgdG9wOiAwOyBsZWZ0OiAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IG1heC13aWR0aDogMTAwJTsgd2lkdGg6IDEwMCU7IH1cblxuLnRwZC10b29sdGlwLW1lYXN1cmluZyAudHBkLXNraW4sIC50cGQtdG9vbHRpcC1tZWFzdXJpbmcgLnRwZC1zcGlubmVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4udHBkLXRvb2x0aXAtbWVhc3VyaW5nIC50cGQtY29udGVudC13cmFwcGVyLCAudHBkLXRvb2x0aXAtbWVhc3VyaW5nIC50cGQtdGl0bGUtd3JhcHBlciB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIExpbmtzICovXG4vKlxuLnRwZC10b29sdGlwIGEsXG4udHBkLXRvb2x0aXAgYTpob3ZlciB7IGNvbG9yOiAjODA4MDgwOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuLnRwZC10b29sdGlwIGE6aG92ZXIgeyBjb2xvcjogIzZjNmM2YzsgfVxuKi9cbi8qIFNpemVzICovXG4vKiB4LXNtYWxsICovXG4udHBkLXNpemUteC1zbWFsbCAudHBkLWNvbnRlbnQsIC50cGQtc2l6ZS14LXNtYWxsIC50cGQtdGl0bGUgeyBwYWRkaW5nOiA3cHggOHB4OyBmb250LXNpemU6IDEwcHg7IGxpbmUtaGVpZ2h0OiAxNXB4OyB9XG5cbi50cGQtc2l6ZS14LXNtYWxsIC50cGQtYmFja2dyb3VuZCB7IGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4udHBkLXNpemUteC1zbWFsbCAudHBkLXN0ZW0geyB3aWR0aDogMTJweDsgaGVpZ2h0OiA2cHg7IG1hcmdpbi1sZWZ0OiA0cHg7IG1hcmdpbi10b3A6IDJweDsgLyogc3BhY2UgYmV0d2VlbiB0YXJnZXQgYW5kIHN0ZW0gKi8gfVxuXG4udHBkLXNpemUteC1zbWFsbC50cGQtbm8tcmFkaXVzIC50cGQtc3RlbSB7IG1hcmdpbi1sZWZ0OiA3cHg7IH1cblxuLnRwZC1zaXplLXgtc21hbGwgLnRwZC1jbG9zZSB7IG1hcmdpbi1ib3R0b206IDFweDsgfVxuXG4udHBkLXNpemUteC1zbWFsbCAudHBkLXNwaW5uZXIgeyB3aWR0aDogMzVweDsgaGVpZ2h0OiAyOXB4OyB9XG5cbi50cGQtc2l6ZS14LXNtYWxsIC50cGQtc3Bpbm5lci1zcGluIHsgbWFyZ2luOiA2cHggMCAwIDlweDsgfVxuXG4udHBkLXNpemUteC1zbWFsbCAudHBkLXNwaW5uZXItc3BpbiwgLnRwZC1zaXplLXgtc21hbGwgLnRwZC1zcGlubmVyLXNwaW46YWZ0ZXIgeyB3aWR0aDogMTdweDsgaGVpZ2h0OiAxN3B4OyB9XG5cbi8qIHNtYWxsICovXG4udHBkLXNpemUtc21hbGwgLnRwZC1jb250ZW50LCAudHBkLXNpemUtc21hbGwgLnRwZC10aXRsZSB7IHBhZGRpbmc6IDhweDsgZm9udC1zaXplOiAxMHB4OyBsaW5lLWhlaWdodDogMTZweDsgfVxuXG4udHBkLXNpemUtc21hbGwgLnRwZC1iYWNrZ3JvdW5kIHsgYm9yZGVyLXJhZGl1czogNnB4OyB9XG5cbi50cGQtc2l6ZS1zbWFsbCAudHBkLXN0ZW0geyB3aWR0aDogMTRweDsgaGVpZ2h0OiA3cHg7IG1hcmdpbi1sZWZ0OiA1cHg7IG1hcmdpbi10b3A6IDJweDsgLyogc3BhY2UgYmV0d2VlbiB0YXJnZXQgYW5kIHN0ZW0gKi8gfVxuXG4udHBkLXNpemUtc21hbGwudHBkLW5vLXJhZGl1cyAudHBkLXN0ZW0geyBtYXJnaW4tbGVmdDogOHB4OyB9XG5cbi50cGQtc2l6ZS1zbWFsbCAudHBkLWNsb3NlIHsgbWFyZ2luOiAycHggMXB4OyB9XG5cbi50cGQtc2l6ZS1zbWFsbCAudHBkLXNwaW5uZXIgeyB3aWR0aDogNDJweDsgaGVpZ2h0OiAzMnB4OyB9XG5cbi50cGQtc2l6ZS1zbWFsbCAudHBkLXNwaW5uZXItc3BpbiB7IG1hcmdpbjogN3B4IDAgMCAxM3B4OyB9XG5cbi50cGQtc2l6ZS1zbWFsbCAudHBkLXNwaW5uZXItc3BpbiwgLnRwZC1zaXplLXNtYWxsIC50cGQtc3Bpbm5lci1zcGluOmFmdGVyIHsgd2lkdGg6IDE4cHg7IGhlaWdodDogMThweDsgfVxuXG4vKiBtZWRpdW0gKGRlZmF1bHQpICovXG4udHBkLXNpemUtbWVkaXVtIC50cGQtY29udGVudCwgLnRwZC1zaXplLW1lZGl1bSAudHBkLXRpdGxlIHsgcGFkZGluZzogMTBweDsgZm9udC1zaXplOiAxMXB4OyBsaW5lLWhlaWdodDogMTZweDsgfVxuXG4udHBkLXNpemUtbWVkaXVtIC50cGQtYmFja2dyb3VuZCB7IGJvcmRlci1yYWRpdXM6IDhweDsgfVxuXG4udHBkLXNpemUtbWVkaXVtIC50cGQtc3RlbSB7IHdpZHRoOiAxNnB4OyAvKiBiZXN0IGNyb3NzIGJyb3dzZXIgc3RlbSB3aWR0aCBpcyAyeGhlaWdodCwgZm9yIGEgOTBkZWcgYW5nbGUgKi8gaGVpZ2h0OiA4cHg7IG1hcmdpbi1sZWZ0OiA2cHg7IC8qIHNwYWNlIGZyb20gdGhlIHNpZGUgKi8gbWFyZ2luLXRvcDogMnB4OyAvKiBzcGFjZSBiZXR3ZWVuIHRhcmdldCBhbmQgc3RlbSAqLyB9XG5cbi50cGQtc2l6ZS1tZWRpdW0udHBkLW5vLXJhZGl1cyAudHBkLXN0ZW0geyBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4udHBkLXNpemUtbWVkaXVtIC50cGQtY2xvc2UgeyBtYXJnaW46IDRweCAycHg7IH1cblxuLyogaWRlYWwgc3Bpbm5lciBkaW1lbnNpb25zIGRvbid0IGNhdXNlIG1vdmVtZW50IG9wIHRvcCBhbmQgb24gdGhlIHN0ZW0gd2hlbiBzd2l0Y2hpbmcgdG8gdGV4dCB1c2luZyBwb3NpdGlvbjondG9wbGVmdCcgKi9cbi50cGQtc2l6ZS1tZWRpdW0gLnRwZC1zcGlubmVyIHsgd2lkdGg6IDUwcHg7IGhlaWdodDogMzZweDsgfVxuXG4udHBkLXNpemUtbWVkaXVtIC50cGQtc3Bpbm5lci1zcGluIHsgbWFyZ2luOiA4cHggMCAwIDE1cHg7IH1cblxuLnRwZC1zaXplLW1lZGl1bSAudHBkLXNwaW5uZXItc3BpbiwgLnRwZC1zaXplLW1lZGl1bSAudHBkLXNwaW5uZXItc3BpbjphZnRlciB7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IH1cblxuLyogbGFyZ2UgKi9cbi50cGQtc2l6ZS1sYXJnZSAudHBkLWNvbnRlbnQsIC50cGQtc2l6ZS1sYXJnZSAudHBkLXRpdGxlIHsgcGFkZGluZzogMTBweDsgZm9udC1zaXplOiAxM3B4OyBsaW5lLWhlaWdodDogMThweDsgfVxuXG4udHBkLXNpemUtbGFyZ2UgLnRwZC1iYWNrZ3JvdW5kIHsgYm9yZGVyLXJhZGl1czogOHB4OyB9XG5cbi50cGQtc2l6ZS1sYXJnZSAudHBkLXN0ZW0geyB3aWR0aDogMThweDsgaGVpZ2h0OiA5cHg7IG1hcmdpbi1sZWZ0OiA3cHg7IG1hcmdpbi10b3A6IDJweDsgLyogc3BhY2UgYmV0d2VlbiB0YXJnZXQgYW5kIHN0ZW0gKi8gfVxuXG4udHBkLXNpemUtbGFyZ2UudHBkLW5vLXJhZGl1cyAudHBkLXN0ZW0geyBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4udHBkLXNpemUtbGFyZ2UgLnRwZC1jbG9zZSB7IG1hcmdpbjogNXB4IDJweCA1cHggMnB4OyB9XG5cbi50cGQtc2l6ZS1sYXJnZSAudHBkLXNwaW5uZXIgeyB3aWR0aDogNTRweDsgaGVpZ2h0OiAzOHB4OyB9XG5cbi50cGQtc2l6ZS1sYXJnZSAudHBkLXNwaW5uZXItc3BpbiB7IG1hcmdpbjogOXB4IDAgMCAxN3B4OyB9XG5cbi50cGQtc2l6ZS1sYXJnZSAudHBkLXNwaW5uZXItc3BpbiwgLnRwZC1zaXplLWxhcmdlIC50cGQtc3Bpbm5lci1zcGluOmFmdGVyIHsgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgfVxuXG4vKiBTa2lucyAqL1xuLyogZGVmYXVsdCAoZGFyaykgKi9cbi50cGQtc2tpbi1kYXJrIC50cGQtY29udGVudCwgLnRwZC1za2luLWRhcmsgLnRwZC10aXRsZSwgLnRwZC1za2luLWRhcmsgLnRwZC1jbG9zZSB7IGNvbG9yOiAjZmZmOyB9XG5cbi50cGQtc2tpbi1kYXJrIC50cGQtYmFja2dyb3VuZC1jb250ZW50LCAudHBkLXNraW4tZGFyayAudHBkLWJhY2tncm91bmQtdGl0bGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG5cbi8qIGxpbmUgYmVsb3cgdGhlIHRpdGxlICovXG4udHBkLXNraW4tZGFyayAudHBkLXRpdGxlLXdyYXBwZXIgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQwNDA0MDsgfVxuXG4vKiBzcGlubmVyICovXG4udHBkLXNraW4tZGFyayAudHBkLXNwaW5uZXItc3BpbiB7IGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmOyB9XG5cbi8qIGxpbmtzICovXG4udHBkLXNraW4tZGFyayBhIHsgY29sb3I6ICNjY2M7IH1cblxuLnRwZC1za2luLWRhcmsgYTpob3ZlciB7IGNvbG9yOiAjYzBjMGMwOyB9XG5cbi8qXG49PSBtYWxpaHUganF1ZXJ5IGN1c3RvbSBzY3JvbGxiYXIgcGx1Z2luID09XG5QbHVnaW4gVVJJOiBodHRwOi8vbWFub3MubWFsaWh1LmdyL2pxdWVyeS1jdXN0b20tY29udGVudC1zY3JvbGxlclxuKi9cbi8qIENPTlRFTlRTOiAgMS4gQkFTSUMgU1RZTEUgLSBQbHVnaW4ncyBiYXNpYy9lc3NlbnRpYWwgQ1NTIHByb3BlcnRpZXMgKG5vcm1hbGx5LCBzaG91bGQgbm90IGJlIGVkaXRlZCkuICAyLiBWRVJUSUNBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiB2ZXJ0aWNhbCBzY3JvbGxiYXIuICAzLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIGhvcml6b250YWwgc2Nyb2xsYmFyLiA0LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgMi1heGlzIHNjcm9sbGJhcnMuICA1LiBUUkFOU0lUSU9OUyAtIENTUzMgdHJhbnNpdGlvbnMgZm9yIGhvdmVyIGV2ZW50cywgYXV0by1leHBhbmRlZCBhbmQgYXV0by1oaWRkZW4gc2Nyb2xsYmFycy4gIDYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTICA2LjEgVEhFTUVTIC0gU2Nyb2xsYmFyIGNvbG9ycywgb3BhY2l0eSwgZGltZW5zaW9ucywgYmFja2dyb3VuZHMgZXRjLiB2aWEgcmVhZHktdG8tdXNlIHRoZW1lcy4gKi9cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBCQVNJQyBTVFlMRSAgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ubUN1c3RvbVNjcm9sbGJhciB7IC1tcy10b3VjaC1hY3Rpb246IHBpbmNoLXpvb207IHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTsgLyogZGlyZWN0IHBvaW50ZXIgZXZlbnRzIHRvIGpzICovIH1cblxuLm1DdXN0b21TY3JvbGxiYXIubUNTX25vX3Njcm9sbGJhciwgLm1DdXN0b21TY3JvbGxiYXIubUNTX3RvdWNoX2FjdGlvbiB7IC1tcy10b3VjaC1hY3Rpb246IGF1dG87IHRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCB7IC8qIGNvbnRhaW5zIHBsdWdpbidzIG1hcmt1cCAqLyBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93OiBoaWRkZW47IGhlaWdodDogMTAwJTsgbWF4LXdpZHRoOiAxMDAlOyBvdXRsaW5lOiBub25lOyBkaXJlY3Rpb246IGx0cjsgfVxuXG4ubUNTQl9jb250YWluZXIgeyAvKiBjb250YWlucyB0aGUgb3JpZ2luYWwgY29udGVudCAqLyBvdmVyZmxvdzogaGlkZGVuOyB3aWR0aDogYXV0bzsgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBWRVJUSUNBTCBTQ1JPTExCQVIgXG55LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7IG1hcmdpbi1yaWdodDogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7IG1hcmdpbi1yaWdodDogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqLyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuIHsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTQl9zY3JvbGxUb29scyB7IC8qIGNvbnRhaW5zIHNjcm9sbGJhciBtYXJrdXAgKGRyYWdnYWJsZSBlbGVtZW50LCBkcmFnZ2VyIHJhaWwsIGJ1dHRvbnMgZXRjLikgKi8gcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTZweDsgaGVpZ2h0OiBhdXRvOyBsZWZ0OiBhdXRvOyB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IH1cblxuLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHsgcmlnaHQ6IC0yNnB4OyB9XG5cbi8qIHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSAqL1xuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMsIC5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTQl9zY3JvbGxUb29scyB7IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqLyByaWdodDogYXV0bzsgbGVmdDogMDsgfVxuXG4ubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHMgeyBsZWZ0OiAtMjZweDsgfVxuXG4vKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSkgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIgeyAvKiBjb250YWlucyB0aGUgZHJhZ2dhYmxlIGVsZW1lbnQgYW5kIGRyYWdnZXIgcmFpbCBtYXJrdXAgKi8gcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7IGhlaWdodDogYXV0bzsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyBhICsgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7IG1hcmdpbjogMjBweCAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHsgd2lkdGg6IDJweDsgaGVpZ2h0OiAxMDAlOyBtYXJnaW46IDAgYXV0bzsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7IGJvcmRlci1yYWRpdXM6IDE2cHg7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciB7IC8qIHRoZSBkcmFnZ2FibGUgZWxlbWVudCAqLyBjdXJzb3I6IHBvaW50ZXI7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDMwcHg7IC8qIG1pbmltdW0gZHJhZ2dlciBoZWlnaHQgKi8gei1pbmRleDogMTsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHsgLyogdGhlIGRyYWdnZXIgZWxlbWVudCAqLyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiA0cHg7IGhlaWdodDogMTAwJTsgbWFyZ2luOiAwIGF1dG87IC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7IHdpZHRoOiAxMnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwgeyB3aWR0aDogOHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgaGVpZ2h0OiAyMHB4OyB3aWR0aDogMTAwJTsgb3ZlcmZsb3c6IGhpZGRlbjsgbWFyZ2luOiAwIGF1dG87IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHsgYm90dG9tOiAwOyB9XG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4zLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiBcbngtYXhpc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm1DU0JfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4ubUNTQl9ob3Jpem9udGFsLm1DU0Jfb3V0c2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7IG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuLm1DU0JfaG9yaXpvbnRhbCA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7IHdpZHRoOiBhdXRvOyBoZWlnaHQ6IDE2cHg7IHRvcDogYXV0bzsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCwgLm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scyArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7IGJvdHRvbTogLTI2cHg7IH1cblxuLyogc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlICovXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXIgeyBtYXJnaW46IDAgMjBweDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAycHg7IG1hcmdpbjogN3B4IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgeyB3aWR0aDogMzBweDsgLyogbWluaW11bSBkcmFnZ2VyIHdpZHRoICovIGhlaWdodDogMTAwJTsgbGVmdDogMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDRweDsgbWFyZ2luOiA2cHggYXV0bzsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsIC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7IGhlaWdodDogMTJweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gbWFyZ2luOiAycHggYXV0bzsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCB7IGhlaWdodDogOHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyBtYXJnaW46IDRweCAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0LCAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHQgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjBweDsgaGVpZ2h0OiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyBtYXJnaW46IDAgYXV0bzsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0IHsgbGVmdDogMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHQgeyByaWdodDogMDsgfVxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSUyBcbnl4LWF4aXMgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ubUNTQl9jb250YWluZXJfd3JhcHBlciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgaGVpZ2h0OiBhdXRvOyB3aWR0aDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgYm90dG9tOiAwOyBtYXJnaW4tcmlnaHQ6IDMwcHg7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIgPiAubUNTQl9jb250YWluZXIgeyBwYWRkaW5nLXJpZ2h0OiAzMHB4OyBwYWRkaW5nLWJvdHRvbTogMzBweDsgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgeyBib3R0b206IDIwcHg7IH1cblxuLm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7IHJpZ2h0OiAyMHB4OyB9XG5cbi8qIG5vbi12aXNpYmxlIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7IGJvdHRvbTogMDsgfVxuXG4vKiBub24tdmlzaWJsZSB2ZXJ0aWNhbCBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsIC5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7IHJpZ2h0OiAwOyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHsgbGVmdDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgeyBsZWZ0OiAwOyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyIHsgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovIG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lciB7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lciB7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4geyBtYXJnaW4tcmlnaHQ6IDA7IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqLyBtYXJnaW4tbGVmdDogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjUuIFRSQU5TSVRJT05TICBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCwgLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biwgLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCwgLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQgeyAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyX2JhciwgLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlsLCAubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyX2JhciwgLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlclJhaWwgeyAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycywgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyAtbW96LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycywgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyAtby10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTICBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi8qICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIDYuMSBUSEVNRVMgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIGRlZmF1bHQgdGhlbWUgKFwibGlnaHRcIikgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzIHsgb3BhY2l0eTogMC43NTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG4ubUNTLWF1dG9IaWRlID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scywgLm1DUy1hdXRvSGlkZSA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHMgeyBvcGFjaXR5OiAwOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjsgfVxuXG4ubUN1c3RvbVNjcm9sbGJhciA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19vbkRyYWcsIC5tQ3VzdG9tU2Nyb2xsYmFyID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZywgLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgPiAubUNTQl9zY3JvbGxUb29scywgLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgfiAubUNTQl9zY3JvbGxUb29scywgLm1DUy1hdXRvSGlkZTpob3ZlciA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMsIC5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHsgb3BhY2l0eTogMTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsIC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sIC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsIC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKG1DU0JfYnV0dG9ucy5wbmcpOyAvKiBjc3Mgc3ByaXRlcyAqLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBvcGFjaXR5OiAwLjQ7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IC8qICBzcHJpdGVzIGxvY2F0aW9ucyAgbGlnaHQ6IDAgMCwgLTE2cHggMCwgLTMycHggMCwgLTQ4cHggMCwgMCAtNzJweCwgLTE2cHggLTcycHgsIC0zMnB4IC03MnB4IGRhcms6IC04MHB4IDAsIC05NnB4IDAsIC0xMTJweCAwLCAtMTI4cHggMCwgLTgwcHggLTcycHgsIC05NnB4IC03MnB4LCAtMTEycHggLTcycHggKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDsgLyogIHNwcml0ZXMgbG9jYXRpb25zIGxpZ2h0OiAwIC0yMHB4LCAtMTZweCAtMjBweCwgLTMycHggLTIwcHgsIC00OHB4IC0yMHB4LCAwIC05MnB4LCAtMTZweCAtOTJweCwgLTMycHggLTkycHggZGFyazogLTgwcHggLTIwcHgsIC05NnB4IC0yMHB4LCAtMTEycHggLTIwcHgsIC0xMjhweCAtMjBweCwgLTgwcHggLTkycHgsIC05NnB4IC05MnB4LCAtMTEyIC05MnB4ICovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7IC8qICBzcHJpdGVzIGxvY2F0aW9ucyAgbGlnaHQ6IDAgLTQwcHgsIC0yMHB4IC00MHB4LCAtNDBweCAtNDBweCwgLTYwcHggLTQwcHgsIDAgLTExMnB4LCAtMjBweCAtMTEycHgsIC00MHB4IC0xMTJweCBkYXJrOiAtODBweCAtNDBweCwgLTEwMHB4IC00MHB4LCAtMTIwcHggLTQwcHgsIC0xNDBweCAtNDBweCwgLTgwcHggLTExMnB4LCAtMTAwcHggLTExMnB4LCAtMTIwcHggLTExMnB4ICovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01NnB4OyAvKiAgc3ByaXRlcyBsb2NhdGlvbnMgIGxpZ2h0OiAwIC01NnB4LCAtMjBweCAtNTZweCwgLTQwcHggLTU2cHgsIC02MHB4IC01NnB4LCAwIC0xMjhweCwgLTIwcHggLTEyOHB4LCAtNDBweCAtMTI4cHggZGFyazogLTgwcHggLTU2cHgsIC0xMDBweCAtNTZweCwgLTEyMHB4IC01NnB4LCAtMTQwcHggLTU2cHgsIC04MHB4IC0xMjhweCwgLTEwMHB4IC0xMjhweCwgLTEyMHB4IC0xMjhweCAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmhvdmVyLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmhvdmVyLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmhvdmVyLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDpob3ZlciB7IG9wYWNpdHk6IDAuNzU7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXA6YWN0aXZlLCAubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmFjdGl2ZSwgLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDphY3RpdmUsIC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0OmFjdGl2ZSB7IG9wYWNpdHk6IDAuOTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgfVxuXG4vKiB0aGVtZTogYm9za2FsaXMgKi9cbi5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7IHdpZHRoOiA2cHg7IGJhY2tncm91bmQtY29sb3I6ICMwYzFlMzk7IH1cblxuLm1DUy1ib3NrYWxpcy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIgeyB3aWR0aDogNnB4OyB9XG5cbi5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIC5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogNnB4OyBtYXJnaW46IDVweCAwOyB9XG5cbi5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIC5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCB7IHdpZHRoOiAxMnB4OyB9XG5cbi5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgLm1DUy1ib3NrYWxpcy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwgeyBoZWlnaHQ6IDEycHg7IG1hcmdpbjogMnB4IDA7IH1cblxuLm1DUy1ib3NrYWxpcy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjOGZhOGNiOyB9XG5cbi5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHsgYmFja2dyb3VuZC1jb2xvcjogI2VhZWVmMjsgfVxuXG4ubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsIC5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZWYyOyB9XG5cbi50b29sdGlwIHsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMTBweDsgYm90dG9tOiAxMDAlOyB3aWR0aDogMzNweDsgei1pbmRleDogNTsgfVxuXG4udG9vbHRpcDpiZWZvcmUgeyBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNmZmY7IGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50OyBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7IGJvdHRvbTogMTAwJTsgY29udGVudDogXCJcIjsgZGlzcGxheTogbm9uZTsgaGVpZ2h0OiAwOyBsZWZ0OiA1MCU7IG1hcmdpbi1ib3R0b206IDVweDsgcG9zaXRpb246IGFic29sdXRlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IHdpZHRoOiAwOyB9XG5cbi50b29sdGlwOmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYm90dG9tOiAxMDAlOyBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7IGRpc3BsYXk6IG5vbmU7IGZvbnQtc2l6ZTogMTRweDsgcmlnaHQ6IDA7IG1hcmdpbi1ib3R0b206IDE1cHg7IHBhZGRpbmc6IDNweCA1cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udG9vbHRpcDpob3ZlcjpiZWZvcmUsIC50b29sdGlwOmhvdmVyOmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLm1hcC1jb250ZW50LXRyaWdnZXIgeyBwYWRkaW5nOiAyMHB4IDIwcHggMCA0MHB4OyB9XG5cbi5tYXAtY29udGVudC10cmlnZ2VyIHN0cm9uZyB7IGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5tYXAtY29udGVudC10cmlnZ2VyIC5oZWFkcXVhcnRlci10aXRsZSB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogODAlOyB9XG5cbi5tYXAtY29udGVudC10cmlnZ2VyIC5oZWFkcXVhcnRlci10cmlnZ2VyIHsgZmxvYXQ6IHJpZ2h0OyB3aWR0aDogMjAlOyB9XG5cbi5tYXAtY29udGVudC10cmlnZ2VyIC5tYXAtdHJpZ2dlciB7IGJhY2tncm91bmQtY29sb3I6ICM3ZDkzYjM7IGNvbG9yOiAjZmZmOyBjdXJzb3I6IHBvaW50ZXI7IGZsb2F0OiByaWdodDsgaGVpZ2h0OiA0MHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6IDQwcHg7IH1cblxuLm1hcC1jb250ZW50LXRyaWdnZXIgLm1hcC10cmlnZ2VyOmFmdGVyIHsgY29udGVudDogJy0nOyBsZWZ0OiA1MCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5tYXAtY29udGVudC1jbG9zZWQgLm1hcC1jb250ZW50LXRyaWdnZXIgLm1hcC10cmlnZ2VyOmFmdGVyIHsgY29udGVudDogJysnOyB9XG5cbi5tYXAtY29udGVudC1jbG9zZWQgLm1hcC1jb250ZW50LXRyaWdnZXIgeyBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuXG4ubWFwLWNvbnRlbnQtY2xvc2VkIC5jb250ZW50IHsgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmZpbHRlci0tb3BlbiAuc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIHsgZGlzcGxheTogbm9uZTsgd2lkdGg6IDQ1JTsgfSB9XG5cbi5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgLmNvbnRlbnQgeyBwYWRkaW5nOiAyMHB4IDQwcHggMjBweCAyMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgeyAuc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIC5jb250ZW50IHsgcGFkZGluZzogMjBweCA0MHB4OyB9IH1cblxuLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyAuY29udGVudDpudGgtY2hpbGQoMikgeyBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgLmNvbnRlbnQ6bnRoLWNoaWxkKDMpIHsgYmFja2dyb3VuZDogI2Q1ZGVlNjsgfVxuXG4uY29udGFjdC0tbGlzdCB7IG1hcmdpbi1sZWZ0OiAwOyBtYXJnaW4tYm90dG9tOiAwOyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5jb250YWN0LS1saXN0IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jb250YWN0LS1saXN0IGEgeyBjb2xvcjogIzE2MzE1YjsgfVxuXG4uY29udGFjdC0tbGlzdCBhOmhvdmVyIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNWRlZTY7IH1cblxuLmNvbnRhY3QtLWxpc3QgYTpiZWZvcmUgeyBjb2xvcjogIzE0MTQxNDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5jb250YWN0LS1saXN0IHNwYW4geyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzE2MzE1YjsgfVxuXG4uc3Vic2l0ZSAudG9wLS1yaWdodC1sb2dvIGltZyB7IGRpc3BsYXk6IG5vbmU7IG1heC13aWR0aDogMTUwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAyMHB4OyByaWdodDogMTV2dzsgei1pbmRleDogMjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7IC5zdWJzaXRlIC50b3AtLXJpZ2h0LWxvZ28gaW1nIHsgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4vKiAtLS0tIENPRlJBIC0tLS0tLS0gKi9cbi5jb2ZyYSAubG9nbyBzdmcgeyBoZWlnaHQ6IDcwcHg7IG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmNvZnJhIC50b2dnbGUtbGlua1tkYXRhLWRpcmVjdGlvbnNdIHsgY29sb3I6ICNCMjAwMDA7IGJvcmRlci1ib3R0b20tY29sb3I6ICNCMjAwMDA7IH1cblxuLmNvZnJhIC50b2dnbGUtbGlua1tkYXRhLWRpcmVjdGlvbnNdOmhvdmVyLCAuY29mcmEgLnRvZ2dsZS1saW5rW2RhdGEtZGlyZWN0aW9uc106Zm9jdXMgeyBjb2xvcjogIzk5MDAwMDsgfVxuXG4uY29mcmEgLm1haW4tbmF2aWdhdGlvbiB7IGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cblxuLmNvZnJhIC5tYWluLW5hdmlnYXRpb24gLm5hdi1jbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XG5cbi5jb2ZyYSAubWFpbi1uYXZpZ2F0aW9uIC5uYXYtLW1haW4gbGkgPiBhLCAuY29mcmEgLm1haW4tbmF2aWdhdGlvbiAubmF2LS1tYWluIGxpOmxhc3QtY2hpbGQgPiBhIHsgYm9yZGVyLWNvbG9yOiAjMTQxNDE0OyBjb2xvcjogIzE0MTQxNDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHsgLmNvZnJhIC5tYWluLW5hdmlnYXRpb24gLm5hdi0tbWFpbiBsaTpsYXN0LW9mLXR5cGUgPiBhIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxNDE0MTQ7IH0gfVxuXG4uY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgLnN1Ym1lbnUgbGkgYTpub3QoLmJ0bikgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmNvZnJhIC5zdWJuYXYtY250LmxldmVsLS0xIC5zdWJtZW51IGxpIGE6bm90KC5idG4pOmhvdmVyLCAuY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgLnN1Ym1lbnUgbGkgYTpub3QoLmJ0bik6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFkMWQxOyB9XG5cbi5jb2ZyYSAuc3VibmF2LWNudC5sZXZlbC0tMSAuc3VibWVudSBsaS5hY3RpdmUgeyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG5cbi5jb2ZyYSAuc3VibmF2LWNudC5sZXZlbC0tMSAuc3VibWVudSBsaS5hY3RpdmUgYTpub3QoLmJ0bikgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFkMWQxOyB9XG5cbi5jb2ZyYSAuc3VibmF2LWNudC5sZXZlbC0tMSAuc3VibWVudSBsaS5hY3RpdmUgLnN1Ym5hdi1jbnQubGV2ZWwtLTIgYTpub3QoLmJ0bikgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyLWNvbG9yOiAjRkVGODM0OyBjb2xvcjogI0ZFRjgzNDsgfVxuXG4uY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgLnN1Ym1lbnUgbGkuYWN0aXZlIC5zdWJuYXYtY250LmxldmVsLS0yIGE6bm90KC5idG4pOmhvdmVyLCAuY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgLnN1Ym1lbnUgbGkuYWN0aXZlIC5zdWJuYXYtY250LmxldmVsLS0yIGE6bm90KC5idG4pOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogIzE2MzE1YjsgfVxuXG4uY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgLnN1Ym1lbnUgbGkuY3VycmVudCBhOm5vdCguYnRuKSB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5jb2ZyYSAuc3VibmF2LWNudC5sZXZlbC0tMSAuc3VibWVudSBsaS5jdXJyZW50IGE6bm90KC5idG4pOmhvdmVyLCAuY29mcmEgLnN1Ym5hdi1jbnQubGV2ZWwtLTEgLnN1Ym1lbnUgbGkuY3VycmVudCBhOm5vdCguYnRuKTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHsgLmNvZnJhIC5uYXYtdGVhc2VyIHsgYmFja2dyb3VuZC1jb2xvcjogI2QxZDFkMTsgY29sb3I6ICMxNDE0MTQ7IH1cbiAgLmNvZnJhIC5uYXYubmF2LS1tYWluID4gbGkuYWN0aXZlID4gYSwgLmNvZnJhIC5uYXYubmF2LS1tYWluID4gbGkuYWN0aXZlID4gYTpob3ZlciwgLmNvZnJhIC5uYXYubmF2LS1tYWluID4gbGkuY3VycmVudCA+IGEsIC5jb2ZyYSAubmF2Lm5hdi0tbWFpbiA+IGxpID4gYTpmb2N1cywgLmNvZnJhIC5uYXYubmF2LS1tYWluID4gbGkgPiBhOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiAjMTQxNDE0OyBjb2xvcjogIzE0MTQxNDsgfSB9XG5cbi5jb2ZyYSAucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXN1YnBhZ2VzLCAuY29mcmEgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS12ZXNzZWxzLCAuY29mcmEgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cywgLmNvZnJhIC5wYWdlLXNlY3Rpb24uc2VjdGlvbi0tcHJvamVjdC1vdmVydmlldyB7IGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cblxuLmNvZnJhIC5wYWdlLWhlYWRlci1jbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFkMWQxOyB9XG5cbi5jb2ZyYSAuc2VjdGlvbi1jbnRbY2xhc3MqPXRlYXNlci0tXTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwOSwgMjA5LCAyMDksIDAuMyk7IH1cblxuLmNvZnJhIC5iZy0tbGlnaHQtZ3JheSB7IGJhY2tncm91bmQ6ICNmMGYwZjA7IH1cblxuLmNvZnJhIC5iZy0tZGFyay1ncmF5IHsgYmFja2dyb3VuZDogI2QxZDFkMTsgfVxuXG4uY29mcmEgLm1haW4tZm9vdGVyIC5zaXRlbWFwIHsgYmFja2dyb3VuZC1jb2xvcjogI0IyMDAwMDsgfVxuXG4uY29mcmEgLm1haW4tZm9vdGVyIC5iYWNrLXRvcC1saW5rIHNwYW4geyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLm1haW4tZm9vdGVyIC5iYWNrLXRvcC1saW5rLCAuY29mcmEgLm1haW4tZm9vdGVyIC5iYWNrLXRvcC1saW5rOmJlZm9yZSB7IGJhY2tncm91bmQ6ICNmMGYwZjA7IH1cblxuLmNvZnJhIC5tYWluLWZvb3RlciAuYmFjay10b3AtbGluazpob3ZlciwgLmNvZnJhIC5tYWluLWZvb3RlciAuYmFjay10b3AtbGluazpmb2N1cyB7IGJhY2tncm91bmQ6ICNERURFREU7IH1cblxuLmNvZnJhIC5tYWluLWZvb3RlciAuYmFjay10b3AtbGluazpob3ZlcjpiZWZvcmUsIC5jb2ZyYSAubWFpbi1mb290ZXIgLmJhY2stdG9wLWxpbms6Zm9jdXM6YmVmb3JlIHsgYmFja2dyb3VuZDogI0RFREVERTsgfVxuXG4uY29mcmEgLm1haW4tZm9vdGVyIC5iYWRnZSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jb2ZyYSAubWFpbi1mb290ZXIgLmJhZGdlIGltZyB7IG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmNvZnJhIC5ibG9jayA+IGRpdjpob3ZlciAuY3RhIC5idG4sIC5jb2ZyYSBhOmFjdGl2ZSAuY3RhIC5idG4sIC5jb2ZyYSBhOmZvY3VzIC5jdGEgLmJ0biwgLmNvZnJhIGE6aG92ZXIgLmN0YSAuYnRuIHsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6ICNCMjAwMDA7IGJvcmRlci1jb2xvcjogI0IyMDAwMDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uY29mcmEgLmxpbmstLXBob25lIHsgY29sb3I6ICNCMjAwMDA7IH1cblxuLmNvZnJhIC5saW5rLS1waG9uZTpiZWZvcmUgeyBjb2xvcjogaW5oZXJpdDsgfVxuXG4uY29mcmEgLmxpbmstLXBob25lIHNwYW4geyBib3JkZXItYm90dG9tLWNvbG9yOiAjQjIwMDAwOyB9XG5cbi5jb2ZyYSAuYmxvY2sgLnRhZyB7IGJhY2tncm91bmQ6ICNGRUY4MzQ7IH1cblxuLmNvZnJhIC5ibG9jay0tY29udGFjdCAuaW5mbyB7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmNvZnJhIC5ibG9jay0tY29udGFjdCB1bCBhIHsgY29sb3I6ICNCMjAwMDA7IH1cblxuLmNvZnJhIC5ibG9jay0tY29udGFjdCB1bCBhIHNwYW4geyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgY29sb3I6ICNCMjAwMDA7IGJvcmRlci1jb2xvcjogI0IyMDAwMDsgfVxuXG4uY29mcmEgLmJsb2NrLS1saW5rcyA+IGRpdiwgLmNvZnJhIC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIHsgYmFja2dyb3VuZDogI2YwZjBmMDsgfVxuXG4uY29mcmEgLmJsb2NrLS1saW5rcyBsaS5oZWFkaW5nLCAuY29mcmEgLmJsb2NrLS1saW5rcyBsaS5oZWFkaW5nIGEsIC5jb2ZyYSAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBsaSwgLmNvZnJhIC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGxpIGEgeyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgbGkgPiBhOmZvY3VzLCAuY29mcmEgLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3MgbGkgPiBhOmhvdmVyLCAuY29mcmEgLmxpc3QtLWRyb3Bkb3duIGxpID4gYTpmb2N1cywgLmNvZnJhIC5saXN0LS1kcm9wZG93biBsaSA+IGE6aG92ZXIsIC5jb2ZyYSAubGlzdC0tc3RyaXBlZC1saWdodCBsaSA+IGE6Zm9jdXMsIC5jb2ZyYSAubGlzdC0tc3RyaXBlZC1saWdodCBsaSA+IGE6aG92ZXIsIC5jb2ZyYSAucG9wdXAgYXNpZGUgLmxpc3QtLWxpbmtzIGxpID4gYTpmb2N1cywgLmNvZnJhIC5wb3B1cCBhc2lkZSAubGlzdC0tbGlua3MgbGkgPiBhOmhvdmVyIHsgY29sb3I6ICNmZmY7IH1cblxuLmNvZnJhIC5zaXRlbWFwIC5saXN0LS1saW5rcyBsaSA+IGE6Zm9jdXMsIC5jb2ZyYSAuc2l0ZW1hcCAubGlzdC0tbGlua3MgbGkgPiBhOmhvdmVyIHsgYmFja2dyb3VuZDogI2ZmZjsgY29sb3I6ICNCMjAwMDA7IH1cblxuLmNvZnJhIC5ibG9jayBmb290ZXIgYSwgLmNvZnJhIC53aWRnZXQgLmZvb3RpbmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSB7IGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cblxuLmNvZnJhIC5zZWN0aW9uLS1vcGVuZWQgLnRvZ2dsZS1zZWN0aW9uIHsgY29sb3I6ICNmZmY7IH1cblxuLmNvZnJhIC5idG4geyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLmJ0bi5idG4tLXZpZGVvIHsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmNvZnJhIC5idG4uYnRuLS12aWRlbzpmb2N1cywgLmNvZnJhIC5idG4uYnRuLS12aWRlbzpob3ZlciB7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi5jb2ZyYSBhLnZpZGVvLXBvc3Rlcjpob3ZlciAuYnRuLS12aWRlbywgLmNvZnJhIGEudmlkZW8tcG9zdGVyOmZvY3VzIC5idG4tLXZpZGVvIHsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmNvZnJhIC5idG46Zm9jdXMsIC5jb2ZyYSAuYnRuOmhvdmVyLCAuY29mcmEgYSAuYnRuOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI0IyMDAwMDsgY29sb3I6ICNmZmY7IH1cblxuLmNvZnJhIC5idG46Zm9jdXMgc3BhbiwgLmNvZnJhIC5idG46aG92ZXIgc3BhbiwgLmNvZnJhIGEgLmJ0bjpob3ZlciBzcGFuIHsgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG5cbi5jb2ZyYSAucGFnaW5hdGlvbiBsaTpub3QoLmN1cnJlbnQpIGE6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLnBhZ2luYXRpb24gbGkuY3VycmVudCBhIHsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmNvZnJhIC5idG4udG9nZ2xlLS1maWx0ZXItbmF2LCAuY29mcmEgLmJ0bi5idG4tLXN1Ym1pdCB7IGJhY2tncm91bmQ6ICNEMTIzMjQ7IGNvbG9yOiAjZmZmOyB9XG5cbi5jb2ZyYSAuYnRuLnRvZ2dsZS0tZmlsdGVyLW5hdjpmb2N1cywgLmNvZnJhIC5idG4udG9nZ2xlLS1maWx0ZXItbmF2OmhvdmVyLCAuY29mcmEgLmJ0bi50b2dnbGUtLWZpbHRlci1uYXYgYSAuYnRuOmZvY3VzLCAuY29mcmEgLmJ0bi50b2dnbGUtLWZpbHRlci1uYXYgYSAuYnRuOmhvdmVyLCAuY29mcmEgLmJ0bi5idG4tLXN1Ym1pdDpmb2N1cywgLmNvZnJhIC5idG4uYnRuLS1zdWJtaXQ6aG92ZXIsIC5jb2ZyYSAuYnRuLmJ0bi0tc3VibWl0IGEgLmJ0bjpmb2N1cywgLmNvZnJhIC5idG4uYnRuLS1zdWJtaXQgYSAuYnRuOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI0IyMDAwMDsgfVxuXG4uY29mcmEgLmJ0bi0tbGFiZWwgLmljb24geyBiYWNrZ3JvdW5kOiAjQjIwMDAwOyBjb2xvcjogI2ZmZjsgfVxuXG4uY29mcmEgLmJ0bi50b2dnbGUtLWZpbHRlci1uYXY6aG92ZXIgaSB7IGJhY2tncm91bmQtY29sb3I6ICM5OTAwMDA7IH1cblxuLmNvZnJhIC5zb3J0IC5idG4uYWN0aXZlLCAuY29mcmEgLnNvcnQgLmJ0bltkaXNhYmxlZF0sIC5jb2ZyYSAudmlldy1zd2l0Y2ggLmJ0bltkaXNhYmxlZF0geyBiYWNrZ3JvdW5kLWNvbG9yOiAjQjIwMDAwOyB9XG5cbi5jb2ZyYSAuYnRuLS1iYWNrLCAuY29mcmEgLmJ0bi0tdG9nZ2xlLW92ZXJsYXksIC5jb2ZyYSAuYnRuLS15ZWxsb3csIC5jb2ZyYSAucGFnZS1oZWFkZXIgYS5idG4tLWxpbmssIC5jb2ZyYSAuc2VjdGlvbi1jbnRbY2xhc3MqPXRlYXNlci0tXSAuYnRuLS1jdGEgeyBiYWNrZ3JvdW5kOiAjRkVGODM0OyB9XG5cbi5jb2ZyYSAuYnRuLS1iYWNrOmhvdmVyLCAuY29mcmEgLmJ0bi0tYmFjazpmb2N1cywgLmNvZnJhIC5idG4tLXRvZ2dsZS1vdmVybGF5OmhvdmVyLCAuY29mcmEgLmJ0bi0tdG9nZ2xlLW92ZXJsYXk6Zm9jdXMsIC5jb2ZyYSAuYnRuLS15ZWxsb3c6aG92ZXIsIC5jb2ZyYSAuYnRuLS15ZWxsb3c6Zm9jdXMsIC5jb2ZyYSAucGFnZS1oZWFkZXIgYS5idG4tLWxpbms6aG92ZXIsIC5jb2ZyYSAucGFnZS1oZWFkZXIgYS5idG4tLWxpbms6Zm9jdXMsIC5jb2ZyYSAuc2VjdGlvbi1jbnRbY2xhc3MqPXRlYXNlci0tXSAuYnRuLS1jdGE6aG92ZXIsIC5jb2ZyYSAuc2VjdGlvbi1jbnRbY2xhc3MqPXRlYXNlci0tXSAuYnRuLS1jdGE6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAjQjIwMDAwOyBjb2xvcjogI2ZmZjsgfVxuXG4uY29mcmEgLmFjdGl2ZSAuYnRuLS1iYWNrLCAuY29mcmEgLmFjdGl2ZSAuYnRuLS1zdWJtZW51LCAuY29mcmEgLmJ0bi0tYmFjazpob3ZlciwgLmNvZnJhIC5idG4tLXN1Ym1lbnU6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjMTQxNDE0OyBjb2xvcjogI2ZmZjsgfVxuXG4uY29mcmEgLmN0YSBzcGFuLmJ0bi5saW5rLW1vcmUgeyBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5jb2ZyYSBhOmhvdmVyIC5jdGEgc3Bhbi5idG4ubGluay1tb3JlLCAuY29mcmEgYTpmb2N1cyAuY3RhIHNwYW4uYnRuLmxpbmstbW9yZSB7IGJhY2tncm91bmQ6ICNCMjAwMDA7IH1cblxuLmNvZnJhIC5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSB7IGJhY2tncm91bmQ6ICNmMGYwZjA7IH1cblxuLmNvZnJhIC5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSAuYnRuIHsgYmFja2dyb3VuZDogI0UwRTBFMDsgdHJhbnNpdGlvbjogdW5zZXQ7IH1cblxuLmNvZnJhIC5saXN0LS1vdmVydmlldy1hY3Rpb24gPiBsaSAuYnRuOmhvdmVyLCAuY29mcmEgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIC5idG46Zm9jdXMgeyBiYWNrZ3JvdW5kOiAjQjIwMDAwOyBjb2xvcjogI2ZmZjsgfVxuXG4uY29mcmEgLmJhci0tbGVnZW5kIHsgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmNvZnJhIC5iYXItLWxlZ2VuZCBsaSB7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5jb2ZyYSAubGVnZW5kLS1ib3NrYWxpcy1vZmZpY2U6YmVmb3JlIHsgY29sb3I6ICNEOThDMTg7IH1cblxuLmNvZnJhIC5sZWdlbmQtLWJhcnJpZXJzOmJlZm9yZSB7IGNvbG9yOiAjQzUzODMwOyB9XG5cbi5jb2ZyYSAubGVnZW5kLS1jb21wYWN0aW9uOmJlZm9yZSB7IGNvbG9yOiAjNURBMTREOyB9XG5cbi5jb2ZyYSAubGVnZW5kLS1jb25zb2xpZGF0aW9uOmJlZm9yZSB7IGNvbG9yOiAjODQyZGU0OyB9XG5cbi5jb2ZyYSAubGVnZW5kLS1lbGVtZW50czpiZWZvcmUgeyBjb2xvcjogI0RBOEQxQjsgfVxuXG4uY29mcmEgYmxvY2txdW90ZSB7IGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7IH1cblxuLmNvZnJhIGJsb2NrcXVvdGU6YmVmb3JlIHsgY29sb3I6ICNCMjAwMDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7IC5jb2ZyYSBibG9ja3F1b3RlIHsgbWFyZ2luOiAwOyB9IH1cblxuLmNvZnJhIC5wYWdlLWNvbnRlbnQucGFnZS1pbnRybywgLmNvZnJhIC5wYWdlLWludHJvLnBhZ2UtaW50cm8geyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwOyB9XG5cbi5jb2ZyYSAuc2xpZGUgLmNhcHRpb24geyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLnNsaWRlIC5jYXB0aW9uIGEgeyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7IGJhY2tncm91bmQtY29sb3I6ICNEMTIzMjQ7IH1cblxuLmNvZnJhIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHsgYmFja2dyb3VuZC1jb2xvcjogI0IyMDAwMDsgfVxuXG4uY29mcmEgLnNsaWRlci0tZncgLnNsaWNrLXRyYWNrIHsgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHsgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpLmFjdGl2ZSBhLCAuY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkgYTpmb2N1cywgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpIGE6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjQjIwMDAwOyBjb2xvcjogI2ZmZjsgfVxuICAuY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkuYWN0aXZlIGEgc3BhbiwgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpIGE6Zm9jdXMgc3BhbiwgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIGxpIGE6aG92ZXIgc3BhbiB7IGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuICAuY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkuYWN0aXZlIGE6YWZ0ZXIsIC5jb2ZyYSAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaSBhOmZvY3VzOmFmdGVyLCAuY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkgYTpob3ZlcjphZnRlciB7IGJvcmRlci1sZWZ0LWNvbG9yOiAjQjIwMDAwOyB9IH1cblxuLmNvZnJhIC5saW5rLS1ib3JkZXJlZCwgLmNvZnJhIC5saXN0LS1pY29uIGEsIC5jb2ZyYSAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSwgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIC5zbGlkZS1pdGVtIHsgY29sb3I6ICMxNDE0MTQ7IH1cblxuLmNvZnJhIC5saW5rLS1ib3JkZXJlZCBzcGFuLCAuY29mcmEgLmxpc3QtLWljb24gYSBzcGFuLCAuY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGEgc3BhbiwgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQuc2xpZGVyIHVsIC5zbGlkZS1pdGVtIHNwYW4geyBib3JkZXItYm90dG9tLWNvbG9yOiAjMTQxNDE0OyB9XG5cbi5jb2ZyYSAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSB7IGJhY2tncm91bmQtY29sb3I6ICNERURFREU7IH1cblxuLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmhvdmVyLCAuY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGE6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjQjIwMDAwOyBjb2xvcjogI2ZmZjsgfVxuXG4uY29mcmEgLnNlY3Rpb24tLXNpZGUtY29udGVudCAuY29udGVudC0tcHJpbWFyeSA+IGE6aG92ZXIgc3BhbiwgLmNvZnJhIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhOmZvY3VzIHNwYW4geyBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLmNvZnJhIC5hY2NvcmRpb24tY250IHsgYmFja2dyb3VuZDogI0UwRTBFMDsgfVxuXG4uY29mcmEgLmFjY29yZGlvbi1jbnQgLnNsaWRlOmFmdGVyIHsgYmFja2dyb3VuZDogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjcpOyB9XG5cbi5jb2ZyYSAuYWNjb3JkaW9uLWNudCAuc2xpZGUuYWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLmNvZnJhIC5saXN0LS1saW5rcyBhOmZvY3VzLCAuY29mcmEgLmxpc3QtLWxpbmtzIGE6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjZjBmMGYwOyB9XG5cbi5jb2ZyYSBhOmZvY3VzLCAuY29mcmEgYTpob3ZlciB7IGNvbG9yOiAjMTQxNDE0OyB9XG5cbi5jb2ZyYSAuZW1lcmdlbmN5LWJveCB7IGJhY2tncm91bmQ6ICNCMjAwMDA7IH1cblxuLmNvZnJhIC5lbWVyZ2VuY3ktYm94IC50cmlnZ2VyIHsgYmFja2dyb3VuZDogI0IyMDAwMDsgY29sb3I6ICNmZmY7IH1cblxuLmNvZnJhIC5JUlRhYmxlIHRoLCAuY29mcmEgI3F1b3RldGFibGUgdGgsIC5jb2ZyYSAuSVJUYWJsZUNhbGNSZXNfaG9yIHRoIHsgYmFja2dyb3VuZC1jb2xvcjogI0RFREVERTsgfVxuXG4uY29mcmEgLmNoYXJ0LS1waWUgLmlubmVyIHN0cm9uZyB7IGNvbG9yOiAjQjIwMDAwOyB9XG5cbi5jb2ZyYSAuYmlnLW51bWJlciBzdHJvbmcgeyBjb2xvcjogIzE0MTQxNDsgfVxuXG4uY29mcmEgLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyAuY29udGVudDpudGgtY2hpbGQoMykgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFOyB9XG5cbi5jb2ZyYSAuZGlzcGxheS1mbGV4IC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGxpOmZpcnN0LW9mLXR5cGUgYSB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkMWQxOyB9XG5cbi5jb2ZyYSAuZGlzcGxheS1mbGV4IC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGEgeyBjb2xvcjogI0IyMDAwMDsgcGFkZGluZy1sZWZ0OiAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QxZDFkMTsgfVxuXG4uY29mcmEgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhIHNwYW4geyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29mcmEgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhOmJlZm9yZSB7IGNvbG9yOiAjQjIwMDAwOyBjb250ZW50OiBcIu+EjVwiOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogLjc3Nzc4ZW07IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IDQwMDsgZm9udC1mYW1pbHk6IEljb25zOyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGxpbmUtaGVpZ2h0OiAyLjI1OyBwb3NpdGlvbjogc3RhdGljOyB0cmFuc2l0aW9uOiBsZWZ0IC4xcyBlYXNlLWluLW91dDsgfVxuXG4uY29mcmEgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhOmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uY29mcmEgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhOmhvdmVyLCAuY29mcmEgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhOmZvY3VzIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uY29mcmEgLmRpc3BsYXktZmxleCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyBhOmhvdmVyIHNwYW4sIC5jb2ZyYSAuZGlzcGxheS1mbGV4IC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzIGE6Zm9jdXMgc3BhbiB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY29mcmEgLm5hdiAuc3VibmF2LWNudCAuYnRuOmhvdmVyLCAuY29mcmEgLm5hdiAuc3VibmF2LWNudCAuYnRuOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogI0IyMDAwMDsgfVxuXG4vKiAtLS0tIEdBUkRMSU5FIC0tLS0tLS0gKi9cbi5nYXJkbGluZSAuY29sLS1xdWFydC53aWRnZXQuY29sLS1saW5rcyAubG9nb19pc28geyBtYXgtd2lkdGg6IDgwcHg7IH1cblxuLmxhbmRpbmcgLm1haW4tbmF2aWdhdGlvbiB7IGhlaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5sYW5kaW5nIC5sYW5ndWFnZS1zd2l0Y2ggeyBkaXNwbGF5OiBibG9jazsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luLXRvcDogMjlweDsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogNnB4OyB0b3A6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgeyAubGFuZGluZyAubGFuZ3VhZ2Utc3dpdGNoIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5sYW5kaW5nIC5sYW5ndWFnZS1zd2l0Y2ggYSB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubGFuZGluZyAubGFuZ3VhZ2Utc3dpdGNoIGEgc3BhbiB7IGRpc3BsYXk6IGJsb2NrOyBjb2xvcjogIzE0MTQxNDsgfVxuXG4ubGFuZGluZyAubGFuZ3VhZ2Utc3dpdGNoIGltZyB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDAgYXV0bzsgfVxuXG4vKiAtLS0tIE5FREVSTEFORCAtLS0tLS0tICovXG4ubmVkZXJsYW5kIC5tYWluLW5hdmlnYXRpb24gLnNlYXJjaC1mb3JtLCAubmVkZXJsYW5kIC5tYWluLW5hdmlnYXRpb24gLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9ucy50eC1zb2xyLWF1dG9zdWdnZXN0IHsgd2lkdGg6IDIzMHB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBVTklTT04gSlMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwMHB4KSB7IGhlYWQgeyBmb250LWZhbWlseTogXCJ1c24tcGhvbmUgMzAwcHhcIjsgfVxuICBib2R5OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgY29udGVudDogXCJ1c24tcGhvbmUgLSBtaW4td2lkdGg6IDMwMHB4XCI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkgeyBoZWFkIHsgZm9udC1mYW1pbHk6IFwidXNuLXRhYmxldCA3MDBweFwiOyB9XG4gIGJvZHk6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyBjb250ZW50OiBcInVzbi10YWJsZXQgLSBtaW4td2lkdGg6IDcwMHB4XCI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHsgaGVhZCB7IGZvbnQtZmFtaWx5OiBcInVzbi1sYXB0b3AgMTAwMHB4XCI7IH1cbiAgYm9keTphZnRlciB7IGRpc3BsYXk6IG5vbmU7IGNvbnRlbnQ6IFwidXNuLWxhcHRvcCAtIG1pbi13aWR0aDogMTAwMHB4XCI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHsgaGVhZCB7IGZvbnQtZmFtaWx5OiBcInVzbi1kZXNrdG9wIDEyODBweFwiOyB9XG4gIGJvZHk6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyBjb250ZW50OiBcInVzbi1kZXNrdG9wIC0gbWluLXdpZHRoOiAxMjgwcHhcIjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0NDFweCkgeyBoZWFkIHsgZm9udC1mYW1pbHk6IFwidXNuLWRlc2t0b3AteGwgMTQ0MXB4XCI7IH1cbiAgYm9keTphZnRlciB7IGRpc3BsYXk6IG5vbmU7IGNvbnRlbnQ6IFwidXNuLWRlc2t0b3AteGwgLSBtaW4td2lkdGg6IDE0NDFweFwiOyB9IH1cblxuaGVhZCB7IGNsZWFyOiBib3RoOyB9XG5cbmhlYWQgdGl0bGUgeyBmb250LWZhbWlseTogXCJ1c24tcGhvbmUgMzAwcHgsIHVzbi10YWJsZXQgNzAwcHgsIHVzbi1sYXB0b3AgMTAwMHB4LCB1c24tZGVza3RvcCAxMjgwcHgsIHVzbi1kZXNrdG9wLXhsIDE0NDFweFwiOyB9XG4iLCJcbi8qIC0tLS0gXG5cdEJPV0VSIENPTVBPTkVOVFMgIFxuLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL0Bjb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5XCI7XG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL0Bjb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50XCI7XG5cblxuXG4gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0VkFSSUFCTEVTXG5cblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cdFxuXG4gXHQvLyBTdXN5IEdyaWQgU2V0dGluZ3NcblxuXHQkc3VzeTogKFxuXHQgIGNvbHVtbnM6IDEyLCBcblx0ICBjb2x1bW4td2lkdGg6IDYwcHgsXG5cdCAgZ3V0dGVyczogNDBweC82MHB4LFxuXHQgIG1hdGg6IGZsdWlkLFxuXHQgIG91dHB1dDogZmxvYXQsXG5cdCAgZ3V0dGVyLXBvc2l0aW9uOiBzcGxpdCxcblx0ICBnbG9iYWwtYm94LXNpemluZzogYm9yZGVyLWJveCxcblx0KTtcblx0XG5cdFxuXHQvLyBEZWZpbmUgQnJlYWsgUG9pbnRzIFxuXG5cdCRwaG9uZSA6ICAzMDBweDsgXG5cdCRwaG9uZS1sczogKG1heC13aWR0aCA3MjBweCkgKG9yaWVudGF0aW9uIGxhbmRzY2FwZSk7XG5cdCR0YWJsZXQgOiA3MDBweDtcblx0JHRhYmxldG9ubHkgOiAgNzAwcHggMTAwMHB4O1xuXHQkbGFuZHNjYXBlb25seSA6IDEwMDBweCAxMjc5cHg7XG5cdCRsYXB0b3AgOiAxMDAwcHg7XG5cdCRkZXNrdG9wIDogMTI4MHB4O1xuXHQkZGVza3RvcC14bCA6IDE0NDFweDtcblx0JGhlaWdoZXIgOiAobWluLWhlaWdodCA3MDBweCk7XG5cdFxuXHRcblx0Ly8gQ29sb3JzXG5cdFxuXHQkd2hpdGU6ICNmZmY7XG5cdCRncmF5OiAjYzFjOWQwO1xuXHQkbGlnaHQtYmx1ZTogI2VhZWVmMjtcblx0JG1lZGl1bS1ibHVlOiAjZDVkZWU2O1xuXHQkYmx1ZTogIzhmYThjYjtcblx0JGJsdWUtZGFya2VuZWQ6ICM3ZDkzYjM7XG5cdCR2aW9sZXQtYmx1ZTogI2I2YzVkOTtcblx0JGRhcmstdmlvbGV0OiAjOTBBOENDO1xuXHQkZGFyay1ibHVlOiAjMTYzMTViOyBcblx0JGRhcmtlci1ibHVlOiAjMTEyOTRlOyBcblx0JHllbGxvdzogI2ZmZjcxOTtcblx0JGJsYWNrOiAjMTQxNDE0O1xuXHRcblx0JGRyZWRnaW5nIDogIzg0MmRlNDsgXG5cdCRvZmZzaG9yZSA6ICM1REExNEQ7XG5cdCR0b3dhZ2U6ICNEQThEMUI7XG5cdCRzYWx2YWdlOiAjQzUzODMwO1xuXHRcblx0JHByaW1hcnk6ICM4ZmE4Y2I7XG5cdCRzZWNvbmRhcnk6ICMxMTI5NGU7XG5cdFxuXHQkYm9keS1iZzogI2ZmZmZmZjtcblx0XG5cdC8vIFR5cG9ncmFwaHlcblx0JGJvZHktZm9udC1zaXplOiAxOHB4O1xuXHQkYmFzZS1mb250LXNpemU6IDE4cHg7IFxuXHRcblx0JGJvZHktZm9udC1mYW1pbHk6ICdmdXR1cmEtcHQtYWx0JywgJ2Z1dHVyYS1wdCcsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHQkYm9keS1saW5lLWhlaWdodDogMS40NzA1ODgyMzU7XG5cdFxuXHQvLyBGb3Jtc1xuXHQkaW5wdXQtZm9jdXMtYm9yZGVyOiByZ2JhKDgyLCAxNjgsIDIzNiwgMC44KTtcblx0JGlucHV0LWZvY3VzLXNoYWRvdzogcmdiYSg4MiwgMTY4LCAyMzYsIDAuNik7XG5cdFxuXHQkaGVpZ2h0LWJsb2NrOiAzNTBweDsgXG5cdFxuXHQvL3NldCBwYWRkaW5nIHZhcmlhYmxlc1xuXHQkbW9iaWxlLXNpZGUtcGFkZGluZzogMjBweDtcblx0JHRhYmxldC1zaWRlLXBhZGRpbmc6IDQwcHg7IFxuXHQkbGFwdG9wLXNpZGUtcGFkZGluZzogNHZ3OyBcblx0JGRlc2t0b3Atc2lkZS1wYWRkaW5nOiA4dnc7IFxuXHQkZGVza3RvcC14bC1zaWRlLXBhZGRpbmc6IDE1dnc7XG5cdFxuXHRcblx0JGdyaWQtc2l6ZXI6IDQwcHg7IFxuXHQkc2VjdGlvbi1wYWRkaW5nOiAxMDBweDsgXG5cblx0JGZvbnQtdXJsOiAnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9mb250cy8nO1xuXG5cblx0Ly8gQ29mcmEgLy9cblx0JGNvZnJhX3JlZDogI0IyMDAwMDtcblx0JGNvZnJhX3JlZF9saWdodDogI0QxMjMyNDtcblx0JGNvZnJhX3JlZF9kYXJrOiBkYXJrZW4oJGNvZnJhX3JlZCwgNSUpO1xuXHQkY29mcmFfeWVsbG93OiAjRkVGODM0O1xuXHQkY29mcmFfeWVsbG93X2Rhcms6ICNEOThDMTg7XG5cdCRjb2ZyYV9ncmF5OiAjZjBmMGYwO1xuXHQkY29mcmFfZ3JheV9saWdodDogI0UwRTBFMDtcblx0JGNvZnJhX2dyYXlfbWVkaXVtOiAjREVERURFO1xuXHQkY29mcmFfZ3JheV9kYXJrOiBkYXJrZW4oJGNvZnJhX2dyYXlfbWVkaXVtLCA1JSk7XG5cdCRjb2ZyYV9ncmF5X2RhcmtlcjogZGFya2VuKCRjb2ZyYV9ncmF5X21lZGl1bSwgMjUlKTtcblx0XG4gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0SU1QT1JUU1xuXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHRcblx0XG5cdC8vIExJQlJBUllcblx0XG5cdEBpbXBvcnQgXCJsaWIvbWl4aW5zXCI7XG5cdEBpbXBvcnQgXCJsaWIvcmVzZXRcIjtcblx0QGltcG9ydCBcImxpYi9mb250c1wiO1xuXHRAaW1wb3J0IFwibGliL2ljb24tZm9udFwiO1xuXHRAaW1wb3J0IFwibGliL2ZvbnQtaWNvbnNcIjtcblx0QGltcG9ydCBcImxpYi9wcmludFwiO1xuXHRAaW1wb3J0IFwibGliL2ZhbmN5Ym94XCI7XG5cdFxuXHQvLyBCQVNFXG5cdFxuXHRAaW1wb3J0IFwiYmFzZS90eXBvZ3JhcGh5XCI7XG5cdEBpbXBvcnQgXCJiYXNlL2J1dHRvbnNcIjtcblx0QGltcG9ydCBcImJhc2UvZm9ybXNcIjtcblx0XG5cdEBpbXBvcnQgXCJiYXNlL3N0cnVjdHVyZVwiO1x0XG5cdEBpbXBvcnQgXCJiYXNlL2hlYWRlclwiO1x0XG5cdEBpbXBvcnQgXCJiYXNlL2Zvb3RlclwiO1x0XG5cdEBpbXBvcnQgXCJiYXNlL25hdlwiO1x0XG5cdFxuXHQvLyBQQVJUSUFMU1xuXHRcblx0QGltcG9ydCBcInBhcnRpYWxzL2Jsb2Nrc1wiO1x0XG5cdEBpbXBvcnQgXCJwYXJ0aWFscy9jb29raWUtbm90aWNlXCI7XG5cdEBpbXBvcnQgXCJwYXJ0aWFscy9zbGlkZXJcIjtcblx0QGltcG9ydCBcInBhcnRpYWxzL2NoYXJ0c1wiO1xuXHRAaW1wb3J0IFwicGFydGlhbHMvZWxlbWVudHNcIjtcdFxuXHRAaW1wb3J0IFwicGFydGlhbHMvd2lkZ2V0c1wiO1x0XG5cdEBpbXBvcnQgXCJwYXJ0aWFscy9maWx0ZXJcIjtcdFxuXHRAaW1wb3J0IFwicGFydGlhbHMvc2VjdGlvbnNcIjtcdFxuXHRAaW1wb3J0IFwicGFydGlhbHMvcGFnZXNcIjtcdFxuXHRAaW1wb3J0IFwicGFydGlhbHMvcG9wdXBzXCI7XHRcblx0QGltcG9ydCBcInBhcnRpYWxzL3ZpZGVvXCI7XG5cdEBpbXBvcnQgXCJwYXJ0aWFscy9lbWVyZ2VuY3ktYm94XCI7XG5cdEBpbXBvcnQgXCJwYXJ0aWFscy9tYXBzLXNsaWRlclwiO1xuXHRAaW1wb3J0IFwicGFydGlhbHMvYmFkZ2VcIjtcblx0QGltcG9ydCBcInBhcnRpYWxzL3ByZWxvYWRlclwiO1xuXHRAaW1wb3J0IFwicGFydGlhbHMvbWVzc2FnZXNcIjtcblxuXHQvLyBFWFRFUk5BTFxuXHRcblx0QGltcG9ydCBcImV4dC90aXBwZWRcIjtcblx0QGltcG9ydCBcImV4dC9zY3JvbGxlclwiO1xuXHRAaW1wb3J0IFwic3Vic2l0ZXNcIjtcblxuXHQvLyBTVUJTSVRFIE9WRVJSSURFXG5cdEBpbXBvcnQgXCJjb2ZyYVwiO1xuXHRAaW1wb3J0IFwiZ2FyZGxpbmVcIjtcblx0QGltcG9ydCBcImxhbmRpbmdzcGFnZVwiO1xuXHRAaW1wb3J0IFwibmVkZXJsYW5kXCI7XG5cblxuIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFVOSVNPTiBKU1xuXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHRcblxuXHQvLyBjcmVhdGUgc2FzcyBsaXN0IHRvIHBhc3MgbWVkaWEgcXVlcnkgZGF0YVxuXHQvLyBpZiBhIGJyZWFrcG9pbnQgbmFtZSBjaGFuZ2VzLCByZW1lbWJlciB0b1xuXHQvLyB1cGRhdGUgaXQgaW4gdGhlIGxpc3QgYmVsb3cgYXMgd2VsbFxuXHQkbXEtc3luYzpcblx0ICB1c24tcGhvbmUgICAgICAgICAkcGhvbmUsXG5cdCAgdXNuLXRhYmxldCAgICAgICAgICAkdGFibGV0LFxuXHQgIHVzbi1sYXB0b3AgXHRcdCAgJGxhcHRvcCxcblx0ICB1c24tZGVza3RvcCAgICAgICAgICRkZXNrdG9wLFxuXHQgIHVzbi1kZXNrdG9wLXhsICAgXHQgICRkZXNrdG9wLXhsXG5cdDtcblx0XG5cdC8vIGJ1aWxkIGVhY2ggbWVkaWEgcXVlcnkgZm9yIGpzIGluZ2VzdGlvblxuXHRAZWFjaCAkbXEgaW4gJG1xLXN5bmMge1xuXHQgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IG50aCgkbXEsIDIpKSB7XG5cdCAgICBoZWFkIHsgZm9udC1mYW1pbHk6IFwiI3tudGgoJG1xLCAxKX0gI3tudGgoJG1xLCAyKX1cIjsgfVxuXHQgICAgYm9keTphZnRlciB7IGRpc3BsYXk6IG5vbmU7IGNvbnRlbnQ6IFwiI3tudGgoJG1xLCAxKX0gLSBtaW4td2lkdGg6ICN7bnRoKCRtcSwgMil9XCI7IH1cblx0ICB9XG5cdH1cblx0XG5cdGhlYWQge1xuXHQgIC8vIHNldCBjbGVhciBvbiBoZWFkIHRvIHNob3cgVW5pc29uIGlzIHNldCB1cCBjb3JyZWN0bHlcblx0ICBjbGVhcjogYm90aDtcblx0ICAvLyBzdG9yZSBoYXNoIG9mIGFsbCBicmVha3BvaW50c1xuXHQgIHRpdGxlIHsgZm9udC1mYW1pbHk6IFwiI3skbXEtc3luY31cIjsgfVxuXHR9IiwiLy8gcHggdG8gZW0gZnVuY3Rpb25cclxuXHJcbkBmdW5jdGlvbiBlbSgkcHgsICRiYXNlOiAkYmFzZS1mb250LXNpemUpIHtcclxuICAgIEByZXR1cm4gKCRweCAvICRiYXNlKSAqIDFlbTtcclxufVxyXG5cclxuXHJcbi8vIHJlbSBmdW5jdGlvbiBmcm9tIFN0ZXBoZW4gUnVzaGluZ1xyXG5cclxuLy9EZWZpbmUgMWVtID0gP3B4XHJcbiRiYXNlbGluZTogJGJhc2UtZm9udC1zaXplO1xyXG5cclxuLy8gUmVtb3ZlIHRoZSB1bml0IGZyb20gYSBudW1iZXJcclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSl7XHJcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHB4KSAvIHN0cmlwLXVuaXQoJGJhc2VsaW5lKSArIHJlbTtcclxufVxyXG5cclxuLy9DYWxjdWxhdGUgYW4gcmVtIHZhbHVlIGZyb20gcHhcclxuLy9JZiAkcHggaXMgYW4gcmVtIG9yIGVtIHZhbHVlLCBpdCB3aWxsIGJlIHJldHVybmVkIGFzLWlzLCB3aXRoIGFuIHJlbSB1bml0LlxyXG4vL0lmICRweCBpcyBhIHB4IHZhbHVlLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiByZW0uXHJcbkBmdW5jdGlvbiByZW0oJHB4KSB7XHJcbiAgICBAaWYodW5pdCgkcHgpID09IFwicmVtXCIpe1xyXG4gICAgICAgIEByZXR1cm4gJHB4O1xyXG4gICAgfUBlbHNlIGlmKHVuaXQoJHB4KSA9PSBcImVtXCIpIHtcclxuICAgICAgICAvL0Fzc3VtZSBhbiBlbSB2YWx1ZSBpcyBhbiByZW0gLS0gaXQncyBhbGwgd2UgY2FuIGRvLlxyXG4gICAgICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkcHgpICsgcmVtO1xyXG4gICAgfUBlbHNlIGlmKHVuaXQoJHB4KSAhPSBcIiVcIikge1xyXG4gICAgICAgIC8vTXVzdCBiZSBhIHB4IHZhbHVlXHJcbiAgICAgICAgQHJldHVybiBzdHJpcC11bml0KCRiYXNlbGluZSkgLyBzdHJpcC11bml0KCRweCkgKyByZW07XHJcbiAgICB9XHJcbiAgICBAcmV0dXJuIG51bGw7XHJcbn1cclxuXHJcbi8vIFVzZSByZW0gdW5pdHMgd2l0aCBweCBmYWxsYmFja1xyXG4vLyBTcGVjaWZ5IGEgcHgsIGVtLCBvciByZW0gdmFsdWUgd2l0aCBlYWNoIHByb3BlcnR5LiBVbml0bGVzcyB2YWx1ZXMgd2lsbCBiZSBjb25zaWRlcmVkIGFuIHJlbS5cclxuQG1peGluIHJlbSgkcHJvcGVydGllcy4uLil7XHJcbiAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG4gICAgICAgICR2YWx1ZTogbnRoKCRwcm9wZXJ0eSwgMik7XHJcbiAgICAgICAgQGlmKHVuaXQoJHZhbHVlKSA9PSBcInB4XCIpe1xyXG4gICAgICAgICAgICAje250aCgkcHJvcGVydHksIDEpfTokdmFsdWU7XHJcbiAgICAgICAgICAgICN7bnRoKCRwcm9wZXJ0eSwgMSl9OiByZW0oJHZhbHVlKTtcclxuICAgICAgICB9QGVsc2V7XHJcbiAgICAgICAgICAgICN7bnRoKCRwcm9wZXJ0eSwgMSl9OnN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlbGluZTtcclxuICAgICAgICAgICAgI3tudGgoJHByb3BlcnR5LCAxKX06cmVtKCR2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyByZW0oKSB1c2FnZTpcclxuXHJcbi8vIC5teXNlbGVjdG9yIHtcclxuLy8gICAgIGxpbmUtaGVpZ2h0OiByZW0oMTVweCk7IC8vUGFzcyBhIHB4IHZhbHVlLlxyXG4vLyAgICAgcmlnaHQ6IHJlbSgxLjUpOyAvL1Bhc3MgYSByZW0sIGVtLCBvciB1bml0bGVzcyB2YWx1ZS5cclxuLy8gICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUgMTJweCwgdG9wIDEuNyk7XHJcbi8vICB9XHJcblxyXG4vLyByZW0oKSBvdXRwdXQ6XHJcblxyXG4vLyAubXlzZWxlY3RvciB7XHJcbi8vICAgICBsaW5lLWhlaWdodDogMS4wNjY2N3JlbTtcclxuLy8gICAgIHJpZ2h0OiAxMC42NjY2N3JlbTtcclxuLy8gICAgIGZvbnQtc2l6ZTogMTJweDtcclxuLy8gICAgIGZvbnQtc2l6ZTogMS4zMzMzM3JlbTtcclxuLy8gICAgIHRvcDogMjcuMnB4O1xyXG4vLyAgICAgdG9wOiA5LjQxMTc2cmVtO1xyXG4vLyB9XHJcblxyXG4vLyAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIG1peGluIGZvciBlbGVtZW50IGJyZWFrcG9pbnRzIGJ5IEBtaWNhaGdvZGJvbHQgbW9kaWZpZWQgYnkgQGpwYXZvbiBmb3VuZCBoZXJlXHJcbi8vIC8vIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL21pY2FoZ29kYm9sdC81ODUxMjI4XHJcbi8vIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiByZXNwb25kLXRvKCRxdWVyaWVzLi4uKSB7XHJcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJHF1ZXJpZXMpO1xyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3Roe1xyXG4gICAgICAgIEBpZiAkaSAlIDIgPT0gMSB7XHJcbiAgICAgICAgICAgIEBtZWRpYSAje250aCgkcXVlcmllcywgJGkpfSB7XHJcbiAgICAgICAgICAgICAgICAje250aCgkcXVlcmllcywgJGkrMSl9IHtcclxuICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS1cclxuXHRNaXhpbiBmb3IgY2xlYXJmaXhpbmcgYW4gZWxlbWVudCBcclxuLS0tLS0tLSAqL1xyXG5cclxuQG1peGluIGNsZWFyZml4IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gY2xlYXJiZWZvcmUge1xyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRydW5jYXRlKCRmb250c2l6ZSwgJGxpbmVoZWlnaHQsICRsaW5lcykge1xyXG5cdFx0XHJcblx0Zm9udC1zaXplOiBlbSgkZm9udHNpemUpOyBcclxuXHRsaW5lLWhlaWdodDogZW0oJGxpbmVoZWlnaHQsICRmb250c2l6ZSk7XHJcblx0XHJcblx0bWF4LWhlaWdodDogJGxpbmVoZWlnaHQgKiAkbGluZXM7IFxyXG5cdG92ZXJmbG93OiBoaWRkZW47IFxyXG5cdFxyXG5cdFxyXG59XHJcblxyXG5AbWl4aW4gaWNvbigkcG9zaXRpb246IGJlZm9yZSwgJGljb246IGZhbHNlLCAkc3R5bGVzOiB0cnVlKSB7XHJcbiAgICBAaWYgJHBvc2l0aW9uID09IGJvdGgge1xyXG4gICAgICAgICRwb3NpdGlvbjogJ2JlZm9yZSwgJjphZnRlcic7XHJcbiAgICB9XHJcbiAgICAmOiN7JHBvc2l0aW9ufSB7XHJcbiAgICAgICAgQGlmICRpY29uIHtcclxuICAgICAgICAgICAgY29udGVudDogXCIje21hcC1nZXQoJGZvbnQtaWNvbnMsICRpY29uKX1cIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGlmICRzdHlsZXMge1xyXG4gICAgICAgICAgICBzcGVhazogbm9uZTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogSWNvbnM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcGFkZGluZ0NvbnRhaW5lciB7XHJcblxyXG5cdHBhZGRpbmc6IDAgMjBweDsgXHJcblx0XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcblx0XHJcblx0XHRwYWRkaW5nOiAwICR0YWJsZXQtc2lkZS1wYWRkaW5nO1xyXG5cdFxyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcclxuXHRcclxuXHRcdHBhZGRpbmc6IDAgJGxhcHRvcC1zaWRlLXBhZGRpbmc7XHJcblx0XHJcblx0fVxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcclxuXHRcclxuXHRcdHBhZGRpbmc6IDAgJGRlc2t0b3Atc2lkZS1wYWRkaW5nO1xyXG5cdFxyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLXhsKSB7XHJcblx0XHJcblx0XHRwYWRkaW5nOiAwICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZztcclxuXHRcclxuXHR9XHJcblx0XHJcblx0XHJcbn1cclxuXHJcbkBtaXhpbiBwYWRkaW5nKCRwcm9wZXJ0aWVzLi4uKXtcclxuICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XHJcbiAgICAgICBcclxuICAgICAgICAje250aCgkcHJvcGVydHksIDEpfTogJG1vYmlsZS1zaWRlLXBhZGRpbmc7XHJcbiAgICAgICBcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG4gXHJcbiAgICBcdCBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG4gICAgICAgXHJcblx0ICAgIFx0ICN7bnRoKCRwcm9wZXJ0eSwgMSl9OiAkdGFibGV0LXNpZGUtcGFkZGluZztcclxuICAgICAgIFxyXG5cdCAgICB9ICAgIFxyXG4gICAgIFxyXG4gICAgfSBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xyXG4gXHJcbiAgICBcdCBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG4gICAgICAgXHJcblx0ICAgIFx0ICN7bnRoKCRwcm9wZXJ0eSwgMSl9OiAkbGFwdG9wLXNpZGUtcGFkZGluZztcclxuICAgICAgIFxyXG5cdCAgICB9ICAgIFxyXG4gICAgIFxyXG4gICAgfSBcclxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XHJcbiBcclxuICAgIFx0IEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XHJcbiAgICAgICBcclxuXHQgICAgXHQgI3tudGgoJHByb3BlcnR5LCAxKX06ICRkZXNrdG9wLXNpZGUtcGFkZGluZztcclxuICAgICAgIFxyXG5cdCAgICB9ICAgIFxyXG4gICAgIFxyXG4gICAgfVxyXG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3AteGwpIHtcclxuIFxyXG4gICAgXHQgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcclxuICAgICAgIFxyXG5cdCAgICBcdCAje250aCgkcHJvcGVydHksIDEpfTogJGRlc2t0b3AteGwtc2lkZS1wYWRkaW5nO1xyXG4gICAgICAgXHJcblx0ICAgIH0gICAgXHJcbiAgICAgXHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuQG1peGluIG1hcmdpbigkcHJvcGVydGllcy4uLil7XHJcbiAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG5cclxuICAgICAgICAje250aCgkcHJvcGVydHksIDEpfTogJG1vYmlsZS1zaWRlLXBhZGRpbmc7XHJcblxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcblxyXG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XHJcblxyXG4gICAgICAgICAgICAje250aCgkcHJvcGVydHksIDEpfTogJHRhYmxldC1zaWRlLXBhZGRpbmc7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcclxuXHJcbiAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcclxuXHJcbiAgICAgICAgICAgICN7bnRoKCRwcm9wZXJ0eSwgMSl9OiAkbGFwdG9wLXNpZGUtcGFkZGluZztcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcclxuXHJcbiAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcclxuXHJcbiAgICAgICAgICAgICN7bnRoKCRwcm9wZXJ0eSwgMSl9OiAkZGVza3RvcC1zaWRlLXBhZGRpbmc7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLXhsKSB7XHJcblxyXG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XHJcblxyXG4gICAgICAgICAgICAje250aCgkcHJvcGVydHksIDEpfTogJGRlc2t0b3AteGwtc2lkZS1wYWRkaW5nO1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxufSIsIi8qICBDU1MgUkVTRVQgKi9cclxuLyogIE1leWVyJ3MgQ1NTIFJlc2V0LCBOb3JtYWxpemVkLmNzcywgYW5kIGN1c3RvbSBjb2RlICovXHJcblxyXG4vKiAgTW9iaWxlIFNjcmVlbiBSZXNpemluZyAqL1xyXG5ALXdlYmtpdC12aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7IHpvb206IDEuMDsgfVxyXG4gICBALW1vei12aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7IHpvb206IDEuMDsgfVxyXG4gICAgQC1tcy12aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7IHpvb206IDEuMDsgfVxyXG4gICAgIEAtby12aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7IHpvb206IDEuMDsgfVxyXG4gICAgICAgIEB2aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7IHpvb206IDEuMDsgfVxyXG5cclxuLyogIFJlbW92ZSBicm93c2VyIGRlZmF1bHRzICovXHJcbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxyXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXHJcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcclxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcclxuYiwgdSwgaSwgY2VudGVyLFxyXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5idXR0b24sIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxyXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcclxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXHJcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcclxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXHJcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXNpemU6IDEwMCU7XHJcbiAgICBmb250OiBpbmhlcml0O1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG4vKiAgU2V0IGRpc3BsYXkgdHlwZSBmb3IgSFRNTDUgc2VtYW50aWMgZWxlbWVudHMgKi9cclxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcclxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKiAgRm9yY2Ugc2Nyb2xsYmFyIGRpc3BsYXkgdG8gcHJldmVudCBqdW1waW5nIG9uIHBhZ2VzLlxyXG4gKiAgRml4IHRleHQgcmVzaXplIGJ1ZyBvbiBtb2JpbGUgZGV2aWNlcy4gKi9cclxuaHRtbCB7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbiAgICAgICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbn1cclxuXHJcbi8qICBEaXNwbGF5IGF1ZGlvLCBjYW52YXMsIGFuZCB2aWRlbyBlbGVtZW50cyBhcyBpbmxpbmUgYmxvY2sgZWxlbWVudHMuICovXHJcbmF1ZGlvLCBjYW52YXMsIHZpZGVvIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICpkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAqem9vbTogMTtcclxufVxyXG5cclxuLyogIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBhdWRpbyB3aXRob3V0IGNvbnRyb2xzLiAqL1xyXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogIFByZXZlbnQgaW1nIGFuZCB2aWRlbyBlbGVtZW50cyBmcm9tIHNwaWxsaW5nXHJcbiAqICBvdXRzaWRlIG9mIHRoZSBwYWdlIG9uIHNtYWxsZXIgc2NyZWVucy4gKi9cclxuaW1nLCB2aWRlbyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8qICBQcmV2ZW50IGlmcmFtZSwgb2JqZWN0LCBhbmQgZW1iZWQgZWxlbWVudHMgZnJvbVxyXG4gKiAgc3BpbGxpbmcgb3V0c2lkZSBvZiB0aGUgcGFnZSBvbiBzbWFsbGVyIHNjcmVlbnMuICovXHJcbmlmcmFtZSwgb2JqZWN0LCBlbWJlZCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qICBQcmV2ZW50cyBJRSBmcm9tIG1ha2luZyBzY2FsZWQgaW1hZ2VzIGxvb2sgbGlrZSBjcmFwICovXHJcbmltZyB7XHJcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xyXG59XHJcblxyXG4vKiAgQWRkcmVzcyBvdXRsaW5lIGluY29uc2lzdGVuY3kgYmV0d2VlbiBDaHJvbWUgYW5kIG90aGVyIGJyb3dzZXJzLiAqL1xyXG5hOmZvY3VzLFxyXG5idXR0b246Zm9jdXMge1xyXG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XHJcbiAgICBvdXRsaW5lOiAuMjk0MTE3NjQ3ZW0gYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XHJcbiAgICBvdXRsaW5lLW9mZnNldDogLS4xNDI4NTcxNDNlbTtcclxufVxyXG5cclxuLyogIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLiAqL1xyXG5hOmhvdmVyLCBhOmFjdGl2ZSB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG59IiwiLyoqXG4gKiBAbGljZW5zZVxuICogTXlGb250cyBXZWJmb250IEJ1aWxkIElEIDMxMDM4MjksIDIwMTUtMTAtMDdUMDk6MTY6MzQtMDQwMFxuICogXG4gKiBUaGUgZm9udHMgbGlzdGVkIGluIHRoaXMgbm90aWNlIGFyZSBzdWJqZWN0IHRvIHRoZSBFbmQgVXNlciBMaWNlbnNlXG4gKiBBZ3JlZW1lbnQocykgZW50ZXJlZCBpbnRvIGJ5IHRoZSB3ZWJzaXRlIG93bmVyLiBBbGwgb3RoZXIgcGFydGllcyBhcmUgXG4gKiBleHBsaWNpdGx5IHJlc3RyaWN0ZWQgZnJvbSB1c2luZyB0aGUgTGljZW5zZWQgV2ViZm9udHMocykuXG4gKiBcbiAqIFlvdSBtYXkgb2J0YWluIGEgdmFsaWQgbGljZW5zZSBhdCB0aGUgVVJMcyBiZWxvdy5cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtQm9vayBieSBQYXJhVHlwZVxuICogVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2Z1dHVyYS1ib29rL1xuICogXG4gKiBXZWJmb250OiBGdXR1cmFQVC1MaWdodCBieSBQYXJhVHlwZVxuICogVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2Z1dHVyYS1saWdodC9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtTWVkaXVtIGJ5IFBhcmFUeXBlXG4gKiBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZnV0dXJhLW1lZGl1bS9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtRGVtaSBieSBQYXJhVHlwZVxuICogVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2Z1dHVyYS1kZW1pL1xuICogXG4gKiBXZWJmb250OiBGdXR1cmFQVC1IZWF2eSBieSBQYXJhVHlwZVxuICogVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2hlYXZ5L1xuICogXG4gKiBXZWJmb250OiBGdXR1cmFQVC1Cb2xkIGJ5IFBhcmFUeXBlXG4gKiBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svYm9sZC9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtRXh0cmFCb2xkIGJ5IFBhcmFUeXBlXG4gKiBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZXh0cmEtYm9sZC9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtTGlnaHRPYmwgYnkgUGFyYVR5cGVcbiAqIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9mdXR1cmEtbGlnaHQtaXRhbGljL1xuICogXG4gKiBXZWJmb250OiBGdXR1cmFQVC1Cb29rT2JsIGJ5IFBhcmFUeXBlXG4gKiBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svaXRhbGljL1xuICogXG4gKiBXZWJmb250OiBGdXR1cmFQVC1NZWRpdW1PYmwgYnkgUGFyYVR5cGVcbiAqIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9mdXR1cmEtbWVkaXVtLWl0YWxpYy9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtRGVtaU9ibCBieSBQYXJhVHlwZVxuICogVVJMOiBodHRwOi8vd3d3Lm15Zm9udHMuY29tL0ZvbnRzL3BhcmF0eXBlL2Z1dHVyYS1ib29rL2Z1dHVyYS1kZW1pLWl0YWxpYy9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtSGVhdnlPYmwgYnkgUGFyYVR5cGVcbiAqIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9oZWF2eS1vYmwvXG4gKiBcbiAqIFdlYmZvbnQ6IEZ1dHVyYVBULUJvbGRPYmwgYnkgUGFyYVR5cGVcbiAqIFVSTDogaHR0cDovL3d3dy5teWZvbnRzLmNvbS9Gb250cy9wYXJhdHlwZS9mdXR1cmEtYm9vay9ib2xkLW9ibC9cbiAqIFxuICogV2ViZm9udDogRnV0dXJhUFQtRXh0cmFCb2xkT2JsIGJ5IFBhcmFUeXBlXG4gKiBVUkw6IGh0dHA6Ly93d3cubXlmb250cy5jb20vRm9udHMvcGFyYXR5cGUvZnV0dXJhLWJvb2svZXh0cmEtYm9sZC1vYmwvXG4gKiBcbiAqIFxuICogTGljZW5zZTogaHR0cDovL3d3dy5teWZvbnRzLmNvbS92aWV3bGljZW5zZT90eXBlPXdlYiZidWlsZGlkPTMxMDM4MjlcbiAqIExpY2Vuc2VkIHBhZ2V2aWV3czogMzAwLDAwMFxuICogV2ViZm9udHMgY29weXJpZ2h0OiBDb3B5cmlnaHQgJiN4MDBBOTsgMTk5NSBQYXJhR3JhcGggSW50bC4sICYjeDAwQTk7IDE5OTggUGFyYVR5cGUgSW5jLiwgUGFyYVR5cGUgTHRkLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogXG4gKiDCqSAyMDE1IE15Rm9udHMgSW5jXG4qL1xuXG5AaW1wb3J0IHVybChcIi8vaGVsbG8ubXlmb250cy5uZXQvY291bnQvMmY1YzU1XCIpO1xuXG4vKlxuQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdmdXR1cmEtcHQtYWx0JzsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyBzcmM6IHVybCgnI3skZm9udC11cmx9MkY1QzU1XzBfMC5lb3QnKTtzcmM6IHVybCgnI3skZm9udC11cmx9MkY1QzU1XzBfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLHVybCgnI3skZm9udC11cmx9MkY1QzU1XzBfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV8wXzAud29mZicpIGZvcm1hdCgnd29mZicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1XzBfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7fVxuQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdmdXR1cmEtcHQtYWx0JzsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsgc3JjOiB1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAuZW90Jyk7c3JjOiB1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfNF8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO31cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc3R5bGU6IGl0YWxpYzsgc3JjOiB1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV84XzAuZW90Jyk7c3JjOiB1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV84XzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV84XzAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfOF8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV84XzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO31cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLmVvdCcpO3NyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1X0JfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9XG5cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc3R5bGU6IGl0YWxpYzsgc3JjOiB1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfNF8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO31cbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLmVvdCcpO3NyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1X0JfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfQl8wLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9XG4qL1xuXG4vL0Z1dHVyYSBQVCBSZWd1bGFyXG5AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXN0eWxlOiBub3JtYWw7IHNyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfMF8wLmVvdCcpO3NyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfMF8wLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfMF8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1XzBfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfMF8wLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9XG5cbi8vRnV0dXJhIFBUIFJlZ3VsYXIgSXRhbGljXG5AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXN0eWxlOiBpdGFsaWM7IHNyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfOF8wLmVvdCcpO3NyYzogdXJsKCcjeyRmb250LXVybH0yRjVDNTVfOF8wLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfOF8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1XzhfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcjeyRmb250LXVybH0yRjVDNTVfOF8wLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9XG5cbi8vRnV0dXJhIFBUIEhlYXZ5XG5AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ2Z1dHVyYS1wdC1hbHQnOyBmb250LXdlaWdodDogYm9sZDsgZm9udC1zdHlsZTogbm9ybWFsOyBzcmM6IHVybCgnI3skZm9udC11cmx9MkY1QzU1XzRfMC5lb3QnKTtzcmM6IHVybCgnI3skZm9udC11cmx9MkY1QzU1XzRfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLHVybCgnI3skZm9udC11cmx9MkY1QzU1XzRfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV80XzAud29mZicpIGZvcm1hdCgnd29mZicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1XzRfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7fVxuXG4vL0Z1dHVyYSBQVCBIZWF2eSBJdGFsaWNcbkBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnZnV0dXJhLXB0LWFsdCc7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXN0eWxlOiBpdGFsaWMgOyBzcmM6IHVybCgnI3skZm9udC11cmx9MkY1QzU1X0JfMC5lb3QnKTtzcmM6IHVybCgnI3skZm9udC11cmx9MkY1QzU1X0JfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLHVybCgnI3skZm9udC11cmx9MkY1QzU1X0JfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSx1cmwoJyN7JGZvbnQtdXJsfTJGNUM1NV9CXzAud29mZicpIGZvcm1hdCgnd29mZicpLHVybCgnI3skZm9udC11cmx9MkY1QzU1X0JfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7fVxuXG5cblxuLyogQWRlbGxlIEl0YWxpYyBXZWJmb250ICovIFxuXG5AaW1wb3J0IHVybChcIi8vZmFzdC5mb250cy5uZXQvdC8xLmNzcz9hcGlUeXBlPWNzcyZwcm9qZWN0aWQ9ZWNmMzU4YzYtNTRkNC00ZDNmLTg1MjQtMzgxOTNhZGJlOGZiXCIpO1xuXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6XCJBZGVsbGUgVzAxIEl0YWxpY1wiOyBzcmM6dXJsKFwiI3skZm9udC11cmx9MWExYzFmMzktODUxMi00NzE1LTk3NmMtNjA2MjEwOGQ3ZGZlLmVvdD8jaWVmaXhcIik7IHNyYzp1cmwoXCIjeyRmb250LXVybH0xYTFjMWYzOS04NTEyLTQ3MTUtOTc2Yy02MDYyMTA4ZDdkZmUuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksdXJsKFwiI3skZm9udC11cmx9YTEwMDcyYjMtZTdhOC00ZWE5LWJkNDQtZDRhZWM2YTA5NDU3LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcIiN7JGZvbnQtdXJsfWU2NmI5MGZkLWYyMDEtNDUyNS1iNWVlLThhODU0MjIxMzY3Yy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksdXJsKFwiI3skZm9udC11cmx9NmQ3YjlmYzQtNjBhZC00YzAzLTkyYTQtNDg0NDQ1NzliZWIyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoXCIjeyRmb250LXVybH1iNTE3OTYwYS0yZGNkLTQ4MjctOGEyYy1jNjI2ODFkMzQzNDIuc3ZnI2I1MTc5NjBhLTJkY2QtNDgyNy04YTJjLWM2MjY4MWQzNDM0MlwiKSBmb3JtYXQoXCJzdmdcIik7IH1cbiIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBJY29ucztcbiAgICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24veC1mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JnQUJBQUFBQUdhb0FBMEFBQUFBcmtnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQm1qQUFBQUJvQUFBQWNkNkNtekU5VEx6SUFBQUdnQUFBQVNRQUFBR0JQK0YxY1kyMWhjQUFBQWxRQUFBQldBQUFCWXVLWjZXZGpkblFnQUFBQ3JBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFHYUVBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUdGUEFBQ2xzRGZ0Z25kb1pXRmtBQUFCTUFBQUFEQUFBQUEyQnZzb0ZXaG9aV0VBQUFGZ0FBQUFIZ0FBQUNRRCtBSElhRzEwZUFBQUFld0FBQUJuQUFBQWpCQnhBOEpzYjJOaEFBQUNzQUFBQUhvQUFBQjZkYjVGWm0xaGVIQUFBQUdBQUFBQUlBQUFBQ0FHcVJzWWJtRnRaUUFBWkh3QUFBRWxBQUFCNzM2UzZKSndiM04wQUFCbHBBQUFBTjRBQUFKYU55WWJsM2phWTJCa1lHQUFZbFBPYjJ2aitXMitNbkF6TVlEQXBWZkZaMkgwLy8vLzl6RnhNQjRBY2prWXdOSUFiMjhPR0hqYVkyQmtZR0E4OEg4Zmd4NFR3MzhnWU9KZ0FJcWdBQzRBcXA0R3dRQUFBQUVBQUFBOEd1Y0dLd0FBQUFBQUFnQUFBQUVBQVFBQUFFQUFMZ0FBQUFCNDJtTmdZZnpGT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0FRWUVDRWh6VFdGb1lGRDQ2TVI0NFA4QkJqM0dBd3hPSURWSVNoUVlHQUZRRGd2M0FBQUFlTnBOeXpzT1FGQVFoZUhmdTBCRXFSQ3ZXaVNpVVNvVVNyM0NRaFIzUGJaZ0EzYkZYQ0Z4Smw4eU9abmhJRVpuRnllWVlBdEQ2RjBaRjhwOERyQmZpM0Q1WWdtSGlJMFVYNzhROEU5SUliTlM0VkV6a1ZIU01USkxrNURUMERKSTU5UGZyL3NKUHdCNDJtTmdZR0JtZ0dBWkJrWUdFSWdCOGhqQmZCWUdCeUROdzhEQndBUmtLM3hrK01qKzBmNmowLy8vUUZFSWp4dkUrLytZbjRYdkg5OXZ2cDlRRStDQWtZMEJMc1RJQkNTWUdOQVVRS3dlemdBQW9qOFN3UUFBQUJFQlJBQUFBQ29BS2dBcUFDb0FTZ0I4QUk0QW9BQ3lBTVFCTEFKWUFuSUNzQUxjQXhJRHVBUDJCRllFamdVb0JkSUdOQVp3Q2NRTERBc3dDMUlMNkF4TURHUU5IQTBvRFR3UzBCTXlFMklUZ0JPNEU5WVQ4aFFNRk80VlZCYUVGcElZQ0I1VUlFQWpQQ1lPSzFRdmhrWUNTVFJKVUV3V1VCNVN5RkxZQUFCNDJwUjlCNXdrVmJWMzNYdXI2bFlPM1JXNmU2Wm5kcnAycG5hWjNaMnU3dW1wYlpiZFdWZ3lrbk5lY2taeUVBVUVKQXFvQ0tpZzh2U3BDQklOcUNnc29nUVZpU0pSUUFGNUVpVUxPdnVkYzZ0N2RsSGY5L3UrM3VucUNqZWVlKzQ1LzNQdXViVVNsWHhKa3I1TWRwU1l4S1ZGTnhGcFlyMmJ1U3k5MnJwSlZaNWE3MlpHNFZTNmllRnRCVy9mekZYeWovVnVKbmkvN2JmOXRPMG4vcmtuSG5nZzJYSG1XcCswb1RRaXlhdnZJdStUbjBtdUpJMG1NVTk1bWlkNW1zZDV6RW1kUGwxLzh1bWhaeWw5ZHVqcEordFByM3AwN3ROUHozMlVQcG84L1hUeUtHU1hxRVJXMzBGV2s5dWtXQnFXSkNWU3VkcVlJR01kTldtTVRVN0ZyU2dNZUN0V1cxT1RZdzAxSU8rcmhLdGxmaXBkdk1WT3A1eXkwODZuVEZENjhua3JWNTYzVHdWdXErcXBsRTZjY3QwcDVKU2ROMTFDaCtEMlB1ZEJHeVZwT1ZTMFhGSWt5Y2VXS2FOUFBqbTZXaUtqQS9mZE4vQ0NKUHB4K3VwVjVIU3lDdE9RbU1lY2tRUEVVN0lLRTVOL1RST24wTW55RlNMSjhxSzRvcHkxNmhwRmFveFNxU2hnOTM1bFZKSldQMEFKdVVaYUpHMEJxVnBoVkNjQlY4ZEpJeDNyK0pQNTFCTFN3bHQ0aDZ1aEg4UVIzTW1ubHBMSnFYWTU0a0FTSU04RUtVZzFPVTBnVzVHTG5DL0xsVXJqdFNTdVZPTGtYc1k1dTdmazJMWVZ2T0c3Rm1kbnFreFdOSzYyYm1XcVBJZXhuN1VVUmRZL3p5OWxNdHR2YmcwK2M0azBWcXR4RmpMVmRZUFZVbVM3OExzZjQ4VFIxSzhhTXVkVDl6Q1dNTTd1bWRLNHJuQkpjaVJaWXVTZjVEakpnbEZNcEtZMERmM2FXenBlT2tlNlFycFcrcm4wTytrWjZHZURUNmJZeUZnTng5TEdJdEtabkdwRmdScERyMU04RFFOMURQdXRZdSt3UjVQTFNJNjNIWkpBR283M3B0b2lYWTdwZU5OaFNXZHlFVTJuT3NXTmhzUGh4aGhjYzRmVXlkZ0UxTEdNTGFFUjhCRVBSZnFHdUVmYTBBQXFUcUE4cURERzlJdmtMSVVxbHBBZ0gwdnhFYlEwaUZVK2xqVHlxUTQwSGhJWGwzeU1LTFpuS3ZxRXJwaVc2MWJkT1F2bnpGbG1hYXhXbjErdlB6eS83aXUyRXd4OTZNUjJNQVFIMDZDZkRZYnFZVkN2Ynpjd3lyanB4cWJ1QkZad1NtMk1FU29yWEROTW13L0g1WjlVaHNjYVRMVzh3RmhIWnR2V1JnblRiTDlpcjdPUStVUCtwVWJaNW5ac2gvVUJhZ3hXNmxia1dxb3lPakEreWdhVkFhL3NxaFpobnExY2FDcHU0TldVWWFiYmhxZThwcm8rcFk0bkQ5c1ZKNnJYRjlSM1VRZmRZS0JlRGdiM0dneVlWZFhnZE1pS2JGSXZPNUdsREp5Qmp3YURZSEJpYnJWRkdQQ0hZMFVsV3k3SHpkRmFCdHhMNFVPb1Z4bmo1WGczTmEyNnpLQ1pVWFpOdFJiTnJXWVVzOWcwOHdlOS9UVExOK3pJSGl4N0E4cENkYXppWW5tVVp0VzVsVzJHTGE5c21XNjV4SmhHdk1DeW5KTGpEVEVPMDRmQlBIa0Y1dEluaGJ3eVllNk9oQ05oWnlSVTRFdWxHYW40a2xNV1g3ZnV1dC90ZG5IK01aQkhENEE4dVZFYWtGSnBITGd1Qkk2QUFWUHJKRm1QVEszSDBuYWRkS2JhUTJRVUJqTW9PRzJLZ1hRak00Zm5xYytPSU9TSVpIcnhoak1iRFl5UXh1QkFJeGs0NHZ5ZlhyZlpQTFg4UXpXY1huZlRmSUU2UVVoT3RuaG11RnFaTXhKWDVzek1JUnZOM0FxelFKSUdvRDI3U2Fwa2dLeU5vUFkwajJEK2twSFlKV0pxRDVNOEhzbkpoMWQ5ZzgzVXlaM0tDLzlrN0J1N2IvVGxtZVZmSGIvZ1lzNVdTenFaUisvWkZ5U3Z4SXpQYmIvMG5IT2dUM3VzL2hYNUpzZ2RYNnBLSTVKVUFtNE9WSmVvalhTUjNKbU1lc0pSekNhUW1qOC9leVg1Mk5pWWJDbHFPRGx2NU1SZHBxZDNtZDU2Y1pvdVRzbXFsU3ZtWHoyOW5IT2pzZmQydTFWWGZHM1pydFBUdXg0MUwwL1RIT21uQXMxdmc0RmRCVDBJcERrd2x3K1FqcEdrOHRnMGlVT1VQQzVwSlNyUHB2TFcxR2dUNWh3S3JVNjdWUVppK2tETmtRWjJjNnBObHRGOE1vV1pvaVpqTUwwN1UrbVlFR1pSN0ZBTzh3M21Kdy9pTUk3YUlOZmFVem44cGxFOFJHRjZKVlA1MUt1R3daaWlxRHNyU2xUblE4UWdjTTNMaWJwZ3N0S2dqY3JNTVpWR28wS09wSXBNbVRXbFZEVExIbklyRlZ0UlBhNHlnMW1tcW9XUlhCbGd6R1ZhMG1Kc2NLZDVDK3pybkNFQ2ZMbWdyU3AyaGN3WnF6R29wcUxLMFowdDVnK3E0NVF3UnlhTFJxcTlDaTZxTkdadXBKcEtUYlVNazdhK1FONnFva2JKVUYxTEJtMHJ0WWs5WWh1cXJMRmRtR21WVHhpZUM1eE4xTUNJdW9JWFZkQ05INUNmU2lWcFNKb0gzQkFoL1pEbFFKSXZveUJmY3NHRHlJTExTTGsxbFl0eGpNaXhobkdKcW1nR1UxUlpVWWNPdW9SZThydExWaHl6WW84enlCay9PdVAwaHd6VlZsWXlVMXNsYzRXeDh5ODU2S0JMTGpsb3cyTlh6TXovOUI2N253Rkp4RGplQ2ZOZ0ZiUWlCSzVwUzdtMFFURWJXQnVuQkZRLzBob0NvUWMzNEJvblE0Z0tSeHl3Z1VVcllTUTdTVWhheTBCcUZtMWIrdlU1ZEk2aW1hcTBXblAxT1hOdUo5TjJtWlNjNVNWbnhpNHZ0OHRsbSt5NW1rekR3M0t0WEY0eFp3N1pjL2x5YnVxSzd1akxsOC84R2JLVTdkdnQ4a3BNdWxLY3p2elg3YmVMNHVEV1FBbjVVSWYydnd4ejZmTGUzSGVsTXVpV0FjQUlDY2lCVGp2a3ZXOTU3WFBvV2RnN1B3WS9PNG5qRHVKSWx1KzAwN1U3N1hUTnpqdVRIV2ZQcnUyZGlQb2VoL3F1Z3JwaWFWU2FrSlpJSDVOMmtsWktSd0wzNDhSS1FHUEJLTUZrQTVVRDFFSFYwQmhESFFXRXhPZHlrV3BNVE1qWk5LTTlCVFlpQnBtMjFiVlRUWTcxMC9TbURwYTJwSklrRlcvUTlRYmtpcS9aSUR5dlVuVWlBeUNaVkhSZG1jbWE4THphbU9nOUpJOG9PanljK2EyaVUxbWxWOHcrOWEzaUlXVDVyVWhDcm1wTU5OeUI0UUYzUjgvVUxNMnpUQytFaVdDR2JyRGpTQlA0dmRMMlRHNXBybVhPaTdoc0d3Rm51c0V2YkRSSFJ2Qlo1T0dUMEkwaURya0VqbGtGTkZzRkkzU01rRXBDL01RQlRtcVk5WUpuT3ZDVFQ0MXhkU3lmV2dSQVpTcGZCa2Y0MTNCSURITGVvZUlJV0FhZnFuRzBqS0FZR0dKeEJEZnhQbVRFdkhRWkFVMFBxRUc5N0pITDRHL09XWHZzc3B4UlJwU0lxQjRJQjkyYXcwaFFaYnprUm5PSU9qeG5uaGxZaE1SVlQ2WURaVVpocW9BS05CUy9WdkpDVncwZGhWTERrSWVEa05IU3NNb055bXVVdWJwU3JyR1NydzZ1QTRTcGtWV2l0a1AzT0dzSmt6WE5CZlRFVEZPblBBYmQ1enVRMmgxUjFPSHlvb3JOWURKcW51NXdwVlRpc2t3MGJvU0VsQUpDRWcvbXNTblhJNVhhWnEzaytDN1hhOHhRYkxkaGFJN25XMTVzT0k0K01aQUJmbVNTRFZqcVlHa3B5b3RjVFJ3MmxrWlRPWkJCVGFlQXJGUHhJcEpIY1JURFBTNitRQ21XQUtXbVVJQ0dtSmJjT1RnVWoxbWJIM1RrRWFQSjBXbTFOTERRdCtJSnZhWlVRckpscDF5ZU8wNVZyMEtyQzJXcTZJWk9pRWFUWlFZaHhKMnJtNy9UV1pSOWJKUzFXM05KU2h1V2tsalVUR1ZpTjd5QnVobnNPYURvSHJQMGtnWVlFdWpQaU53YUpiSU1JRWFwOXpEdzZoY0JJWHhObWdzWEVSZDRMc1hoQlQwTWZZQi8ySDRoK3ZNcHVEZEZ2cjhWay9jL2FMTUZ3M3lBVjJwcW8xSnJOZ2VHNW5MZEtnZis4REJWeHZ4b2pGeEI5L25ZYWVkc1Z6MmdzbDFsS0Y0NHp1aThCZm5TclZ1dGdYSHRaQW00VUpFV2tYK1FqUUZ4UGszZW95Yk42QmIwTkVuS1czRlVLQjJhcWFERjFCZ1FOVUxLeWFuTzJCVHFwblFzQjN6WEdCUEthaXdJQTJ4dFowcGNjVFVGeHNPaytWUnpLbTgza1QramFkTHF4RVBBMm5FVDV1d1VndEl3aUxKQXpRTE1Bc0lCK2hjRzdkWmtlMHBVTk5tT011aDBQalZNWUp4SUZpVmpvazBOYUZVZGtUOW13K2VRQjMraXVCbkZlUkFIWEdoTU1ST3d6ZmxVT3BtTTRjd0NKWWJXa1lxU0Jub1ZPRFJSQXl3VEFNMGlDZ1ZEY2RoYkhqWXhkMmNxZ3hxd29RazhBRDBFUFJTSlUyeUdpb2djUmdpNk9vYk5GaVduVFdoVU1FUkM2RXVBRldESEJCMHhCOHhGekFJTkdoTVhremljUUp3cGJINENBckRUU0tBc2FHdUM5V0M2WkV6VVZkQmpHVUNpc1hiZUFvbVFBVlZhK0NNU29DQ2NJRmoycE9DV0dBazJUTm9ScG1pRGNCVTF4RGtrYTRzRVFQOHM2cEdOVDRFRkFhMXN1R1FTU3NhL0tZN0ViZUF3Rm1QUXpLZENnUDJBWXFiUThtcHdJR0NRQXduaklHa2lsUnRUR1JCNE1tNmh1UklCQUdsSEFyRVVUMEY0SWIyQWRUQVJzakUyQzltZ1RsRDBJM1BmYUhLaUVPN0I3RkNwd01xRWFqS2dBNWx5TUthWVRXUkNESzRRQUE5ZzB5b3lvQmJaWnBBTUUzR2l3ZEVtaEZGRElURUQrYTlRQm4vd293QXdBcTBQNEJ2a21jd0poWklZcGxRQmMzUENtUkNLOEJpS01qUVZMRFdjcEp4NWxKT21vbEFPaFRIUkhyZ0xFeGpNRDdhdVF1YW9DcFlJTWtCUm9IMEtGaUVhb3hFRStzU2hDaGFwVW1nbHpIc1VwcENlR0ZDQUN0a0EwQU5Na3FGbVRtUlhWZEUra0tuSlFDcklZTjlnWXZpem9LRkV3M0lVMVZCMG9JSmlXQURCZEthQVpTa3JXRHNEd2hCQk5TaFdnM0pCUEdIUHFZYWloa081REZzQ1pXSnFTblFLWnBmb0xlSHdCMFNtdWlKb2dHSU55bEFjemJQdGtneDR5bDBNSFVKTlFFUWxkQlFUeWxnWU5BZ0tWaGtXQ1dkRUpZdUFNb3FnRDVRTDFUQzBlYUJ6MEZlOFFWSEVHekptcGtBRWd0VXhvQkhIZ2orbmtyTE1QU0FJakplTUpJRFJad2JZWmpVWUlHckpLdVRFVWRDUjVxckZORisyS0tCTUZRZmZJSlQzU2tRUzQwRGhMeklQd2U2SmNjTFd3VUNBMW9FeFVVSCtFaHg0NUE2Z0pZQmVodXhBTld5bUFZMkViRkFMc3hVT1JjTy95NEhsWUl4aG5IVGdQeGd5SFFnQVBXQXUwV09LNHkvNEN4bUFBbWNZaWduRVVIQkFvRkZZRUdvTEFtVnB4QUt1QkU1aXFBcVFZMHlBNjJEN3lVelhZYXlKR0NZVkdjWUJBc0VJd2tPWnFGQW84YkV2eFVNQzdhVU5hQzhtSjRZcGF6WUIwc0U0UUhXS0trYUxzb0pEaTk3RGRKQ2hLQVVwaExOQXNCV2xLa2RkaE1tQklzQ1FPdlVVSXVxQndVRzREL2VnUHFBMHNoUFVUanhWNFRDK0syU2NkQnpZb1pnSXdHWTdZa1VLOGlKa0k5aElnclJUVlUyMFVoVXRFak5JelBBU3pIQ0Y2aFRuS0JTTmZBb1VVcEQ1MFJyR081QWYwZXpxdThsdnlLMWdYODJYV3RKMmdKNU9sYjRnZlZPNlhYcEplaHRSdWhDeUNCb0ZWRUlnbmlOd1FxU0p3a1hwdEFHVnQ4TjJPVzNIZVp1SFNad1VnZ3dGK1ZLYTFHa0FBaHhFSW9ySHNNMkVhRVlCaWY4d1pkRFR5cUw0RGtDMkZucVhBT0VEb0JaMkc4Y0tjcUd3UUhDM2lseGdjUGJhZ29JdlhVcmFxT2N3SzlvVXZSTGpKT3c3cytBK0pFOTdhaFQvUVNrOVoxWm5MRTE2WGl0UVUrVFhLclAxUVdmbU1jY3hIQXVIeHpJR0hUTFBHZFJCM3N4OGMrNit3OFBPdkxsQk1IYzBXVG1FVE1FME9rd3RWU2tENTFRSG1NbzExK0VxQ0Fua0FjWFFBZUdpbUJ3QWZBTi8renFxWXRuMUtyRjFtR1VLbXdzY0szTTRVMWhBNkNEd2lUb3dBb1hJME1qaktpQUlnRVZZQjRaUVZ3M2RVR0ZnSGNkbWdOTElRRjFXZ1M5bCtZcExYRU96ZFYyV0RWdHpqVXNjazl1NlllZzJONzkvUmFWeUpUbHN0eFVyZGp2a2s5czdNUExBVTRicTdMaTlCOWdSR0VpRjBuMnlzMVYyVUpqQ2pGRzl1UkcwVU1kNW9qR0xSMlZFN3B0eFhlY3pQOTZvckROejh2c215Qm1vek5zZG1ISXJocDFUOGVjeVpFcG1ISElZaUJZdUgzYStxWUFVVVo5MElRRWtIQzRIcG1JSUpjUmsxZFRMODZ1VzZlZ09iWG9nbVVBYkFWNzc1T3BWNUFEQThUSFlPdWd3STJIU1FJZFlteWMrL091MHJ5ZG1zR0JveThXcXdiYzJOam80eThpZW10dUl5N3VCSEZ0dnA5VlF4RTZJKytxcjd5R3ZrcCtqbnhsd0gvb25NdFRocldGU25tcVJQN3J1ekh0cVNiMkUyeVYrNXQrNVQzN2tsbWJXVmRYYjFNRG0xNU5id0dpVkpYUDFyOGdyVU1hVXRLRzBnM1FVZW1PRGhJOFRZVWJ4RUZUN0VCc21ReXpzbVZIQWpHMzBmMDRUWWFMaGpYWjVFcGdMWGFkaUNxUmdjYUNsaGRlZ3lWdEtDN2dRTGQxeGduWXVjdlFTeUxlRUFJK1REVkVLcFl2S2Zza0hRY0ZKeFhaTDJtNWJyOWdrbTdjOXBTV0ZxTTVJdXpKL1lvdU42cW1iMXZObDdmRlcyMURwZ3JtRHZ1Mm10Um9ab0dDcURKSmxoT0FQK1RtVm83bVRsZFIzcU84QWQ0RzBMWnR1WFBOYm15MGVhOWRyQ28wQ0J5VDA4S0xxWkRKdjVyQktvMjZVc3JrTFJ0OHhCclh4cmFKeVBXNnZFOGtEREl3ZHNwelFBWGthNU0yMDhDUFQxUytCVnJ3TTVBalk5amhaVVdpTUFkUVd3cUlsSUpGTEVQQnhtUDNLMm8vcHZ6Mk9vMitQRDFVY1kvbThGWFBLcnFxSHU3VkJIS3NndUN4VlhqNVNpUUt5WjJTWS9jZE9hLzBHNkY2VTNSWm42K1B6MHNRajFxSjFtbU1aV3pTdzVTWnpQcllTb0lTNkFIVGQ4ZWF5OGF4L3U3WFZnalgzVmJ2d2gvOEQ3TWl6QUwrREhWNUc3M3VhajRRajE0ZGYvV3A0ZlozOGVhWk96aHk0K3R2MU84TlI0UnV3VnYrR2ZFQitCbGI2WWRLSjBpblNhZEtaMGpuU0JkTEZJRHVIU01FWmFWSzRvcGFRbnBzWDJGbDRuTmY2QldsS3dqYktzaHlZUEp3cWprQUtBSGJDRlNJY0lXdjlJb2VoYThRaG9SOUVveUNGUVV3S1NZeGVsUnkrSEw1cFc5ekR3aEp5WFdOOG0zemVDdThlTndqY0tZQjVpcmFWWm9qdllpY2lNNmZmUWRSMng1ekQydVdTN3NueVlrM1h0aFpmR1JJdkJwZ2preDJucHdQNHU2M2QzcjMvaDUvZmVPdlBXN3oxd2xGMHlybEJGWkpyU3JXcWFQMWpwZXpNL0lyS25oejc4MGJuRHN3RGlYQVZWV3Y0cURaN2hGdzFxR1RtUHFaWTRmUjB1SXpVNXMyYlZ4SGZxK2YxMXpTK0M0UDBHSHBrT3pBdTZIZDliSkZFVnE5ZWZidXcvMDNoV1lJT1E1ZWgwMVI2cWZuU1M4M0g4UERTUzlMZklQOXhvREQzSXQ4bVY1TnJ5TFhrZStRR2NqUDVQcm1GL0pqY1NtNGp0NU5ma0R2Skw4bmQ1TmZrUHZJQWVaZzhTaDRuVDVDbnliUGt6K1JGOGo4Z0VWNG5iNUozeVB2a1F6S0RxaHdZRDRBZjlhaFBTelNnSVkzcElCMmlZM1FoYmRHY0xxSEw2WVowYzdvbFBaUitpbjZEZm9kZVMyK2dOOUtiNkEvb0xmVEg5Rlo2RzcyRC9wTCtpdDVGNzZiMzBIdnByK2w5OUFINkVIMlkvcDQrVHArZ1Q5RS8wai9SNStrTDlDWDZNbjJGdms3ZnBPL1E5K21IZElhaEQ1RXpnOW5NWXo0TFdJVU5zQ0Uyd2xJMnpqWmptN010MkU1c2Q3YVM3Y2YyWndleWc5a2g3REIyQkR1YUhjOU9ZcWV4QzlqRjdIcDJFL3NoK3duN0ZidVgzY2NlWkkrd3g5aFQ3Qm4yTEh1Ui9aVzl4dDVqTXdCdXFHeklBL0ppZVZ2NWNQa0krU2o1V1BrNCtRVDVKUGxrK1l2eVZmTDM1THZrZStYZnl2ZkxEOGlQeUgrUUg1ZWZrSitVL3lnL0p6OHYvMFgrcS95eS9JcjhtdnkyL0E5NXRTSUJLZ1NZb3hpS28zaEtvRVJLUlJsU1VtVytNcTRzVkJZcG1US3A1TXE2eWxKbHViSytzb0d5b2JLSnNxV3lyYktkc3JPeXE3SzdzcCt5djNLZ2NyQnlxSEtXOG5YbHg4cER5c1BLbzhyanloUEsrMnBaWGFSdW9xNVVUMUZQQno3SVhCcU80QXBlTnBtRFdkVHB5cDIwU3dSZkRKTXNiSGRKM0tWeEcrWmxvNU8zTTBoQTRBOXU1eG1teXliYjhSSjQzZ3F6dUF1VHM1TjJzbmJhcFRtVTBOVTdYWnJ3YnFuZGxlTjJOdzZ6c0ZzR2xJTFRzTjFsbmJ4cng1MHVMeTY2SXlIazd3Wko4ZFdMSDdrTmVValM1WERFSmlWZHdyc3N5Y1M4eFhNS0xhUTVwQXVobVhBenpzSTA2MlJKcUxSRFRCTkRaWGtuRFVGVXhGZ3RTSU5PVy96bC9STTg3L3o3cmJYUFJmN2VaYTgwUEkzVE1Kc2dMWjUzeGttY0xTSFE3NVJEalR4cjhEYmNDNWVnTnhheDMrd0pmTk1rek9NRWFCSjJWWmlEZWRjSXMwNVh4V2R3RDA3bEpPeDBHWFFxN2NvNWtvYkZXUm9LSVpWaS9pem1IVWdjd3IxRS9IRjRFUEtsSklZZTg3aVRJZzFnUERvdWFlUVpaTXZ4am5qa2tyZ0RpZEwvK3hFYUgyYThreVk1VC9rMENkTldFa0E5R2M5NWxrNlRERVl5aGxNWWdEVGpZaFI0eHR0Wm1rTnVHR3FvRElWcFhFaFU2SHZHTS9RYlpHb2phT1ZJb0J4S0J0NENGdUxZMEN6dlpFdkpPaVJvUWNJc2gyLy9XUHpMMjNYaUFoZVFuQXNLUU1rVHlHc0pzQnArZVkrNE9iQWx0Q1B1WDJiUWlFNkNOYzFTUDhNT3dxTU9OR09hSWsyeXNYZ3NoaTVEWjVEVCtuOWhEb01KUTlGVlkrQ3VCczRESEJrY05SZ1VlU25wS3VJWmp0TTBTY05PWG9mWjBNbGcwblR3a1lMTTIyVWNVSGVXUUNmYkxXQ2p0YzVGb2w1aE1RNHNEZzhIRGdweFZxVko3d1pRdFJoVEhOS3VYQ2VRSDY1d2hOSWNCaldOWVVxbUdaeG1VRkNPYVVMQlNUUkUwa0pKTUJHUlpqZ1B3dDVKQndnUGc5Q1ZlZFpLVXB4Qk1LNVoyRXJ3WDFhSGFTL1lwOThONEVHWXZrci9tbjJFRVBtYUN5QVM2ODJPWVpobS9mdEF2T0pmVmhDdEtCSm1kZzVNanlrVWFFQ01SZUZUeGdVSElmRVVVUVJkcXpvVi9zRU4xT0pVOGltWkdRSkwwZ0RrcmFNRGhTcXVWVjRYalBRS0FCMG1HeFRVQ3FQcmNzNFVBNDFvZ05VYVVTejB2T0NIZTJCT2NnckhDcFFCVm5pSHo1d3JIcURIQVV4TCt2L3hRVk1WNGJ1d0w5SGJBT0NkMEVXNFVqd29xeEV4QnR3QmFsVHRZVm1qejZ5ZFVjWVA1QWREdjEraFRJaG1HRVlrREZFc2tDdncwU0ZCMmJLc2ltbWFJVHdPNE90aWxRd2RDUW9Xb2FBemlWYjhEcFpCeHl6S0xEbFFiSzBVaVY1QkZRcmEwaFZXR3NTRWxDNVNXSnRhWlRDWkRSa2RFNmlva1pEV09rUE9BaHNJQ3UwSEFsc0ttTWdLdFZqWmNkRGhvVVdHUVYxRHJobDFwengzTHBSRDVCUlNLOWdlWnNncmROczB0T1dxS1VNWjBDWURERzBDUnJpR2ZpWXNTeHc0WDU4RkduelFmU00rSmVoYWhWS1RHdEJYYmhqd2hCcVFvMmpzMnArZUNkKzdEMWtwWkJDMG9OZ09SVFdwSUl6NGNLNVJuVk1ELzhseXJ6VGdrRldwckF5Z2phWnJSSjdQd1VRa2RGUzFMVUpEZEgwSkp4aXZVMjZndjRFSWp3RmZCRjBnUUZqdVFLSFVoWEVHb3NmQU1BYjNyWjB0dWdYazBWVGhGYUhUbE1pRkg2M25UbHZyckRoaGhlTmpFU0VwV2V5TnJndktub0hCcWM5K0xPcmNnUzQ3YXFxY3dBaUlFZ2VvUTVYUXJtK1BaaXJaekxFZHlsdk9nT1BXQjdCaVpDZ3Nsc3ZpWExTbFd6aTcvcGVEb2FJVnJsRGh3QUxLd0dsTkZqNlZNbm9GYmJCRG9SVGRLRHlaQ3ZWbFg4WWVoQVkrUm41RnJ1V2lQMXltcnNZMVhkZktzc1lid0tTR0Q3d0NINGU0QmhTQ044Q2NOZWJJSVhFTEl0UENpelRmc2t6Z3R6SjhIZUUyZ25ZdzVpbktBbUJiaXdZeXRKUlU0S25sTmtVTzlQSVUvVU8ySmNPQ3FJb1gwcnJJVGUwU2xqMEFlWm5PbFdIaFZoTDF5WUwyMUVXM0xLTitJQk1QblptS01oZUtMTUhwaUtoZlNWUVZXNlBnTTlXUzVRcTZyM0MrR1FiYXZ2MjFkMWNhQWR0bWZZRGUvN0tzWGdiRHhNV0ZSYkJnb3lVRVY4dGErZFNrV0RnTHVEcE1NRXhsclBEOEIzaHNrYnZXV2pDL3krWE5CVGhyRnpaVnQyWXBRME5tWklhaGFTNWRzRUMyRk5OTVJrMVRzY21xanl5QVgzdXR4cFZScnU2aGFLT0s1c3B6ZGhxR2JOSFMwTFNTaFJzc1g2QkF4ckhXWk1NeUZXSEw5ZnN3OE8vdEoybWU4RFFCWEpISEgya1pXYmI3N3VzdVc3YXVPUDVML2NkY2ROSGhoK08zdDdZMEF6YkhhZWhqS01mdElrNXF0dno3MnZlRlEwUGh6SUY0SktjMkI4STN5dlY2bWN3SkJqR3Z2ZnFYWUV2OEZPeGxhUlFzWDBlc0tJSzFQazJtb21HQ2F5TERaQWl2WXZLMGFZOGJqU1VyZGx1MG9PUEpscGFvdnJxbjQ2MVRHdGxtYU1ScU9JN20yQU5jMWVvYmQ5cDdMYzhIOVVRaDZtR09YUzh2M0cyd3BDVzJBN1FZV2IyS3ZDSGl4Y3grVkZtNWlDMzd2UWdHaXdaLys5dkI1L3NSWmtUcVI1cEovNXEzaURaajRyaHM0TDdmRGI1UVdUdnliTFhVajBDajBrcW82U3B5WnBGdm1tQWNYaTZpOGxiRzU1MFhYM1dWT0Y3c24zNjZmL0ZiNGdnamxVZ25rNzhRVy9xRXNLVXZsRDRuWFNKZExuMWR1a3I2YitsYTZUcnBldWtHNlVhMDhWdzZraUsrQmxTZUFuckhQMEJmZ014USt3T2tBZ2dXSTA0TEVSZW5tQkJ3TzZKVGpwZ1MvbUZxU0lRWjRSZXRnczdZVW9xbUk1eG1pRUlGTEkwQkFZbm5JZVp2S3p4T3gya0hNU3VnRFd4QURMZ1p5Z1NMTzArZ1VFQUpNV0R1RUxJbFBJeVZET29rTHpLbXpueldyNFNhd2VpQUtsWXhLSHI0R1U1WEJXV2xRcXZvenlVbXJTNVZ2bVNiNkNOR2hjdkU0Z2RWQWdLeXR3eTRZRCt6ekR5UXhJV0RXb2xsREsyVFRTRXdJYmt1NUJaWlFJMnJxQU1DUnJIaDJtQ3E0YUVjR2toQWV0RXdncXJTU0lXaTNSV0VRY0VsRlJjNzRDNmt0YmpwZ05xa3BzYllsTTJFVkFCcGE0WXFhSFJxSzB3ejVRMFVxQjJlWVRsemhCOGY2cXlEcU1KeDU2dnZJWDhudDREYzJBUkdLaGdDa2NlQndWRllwSXZZTXRMemVjQ0RHTjNJK1RJMmlmRWRrWUllT3FBbkhqQUJIREJJcFVIZUFWbG9Wc29MZDF4dnozbmVnRmVLVFdpcllSckVOR3d5N3MxMWRWT2huanZ6NnM2S29VNHpaUjVUcDFWRFdhbllSK25yMU5OYW1mU2l4TXJWdEw2T2pwN012U3pUd1RaenRhU1lPeHFhTm1jSHhUYm9pd3BnQVBZaTFXMWxLMFdTUEdtaGREcDVrTWpTZDZWcmdPL3VsbjRyUFNBOUpqMHJQU2U5SUwwcXZTNjlJZjFOZWxONkYvclpEbDJDTElrZ0ZHeWlDZHJqU29DN01VTGR1STN1SHJnMTFvb1M1TTlzbGtNN3lWSXlsb01GQS9BVjJEVVBCYXp0UUlhc3p2NTNsazNBL0lBQ0o5UEp6bFNIbzlNSEdiZXdURENGeUZUd2I3NkdmME93YVdIT2hPaGE3ZkZ3bG1ERzlqREp4Mm5PWVpvV015TE9DMzVPMW1ib3RsSW5rQUttQ2JrZnFEZHpqUjg1UkZWd3pZUFdWS0ZsU2ZGQmxTdldZWXFsRlZMZ0RDb1VlQ3g0M1dEeFlucWhaWXFiUXV2SnBGamJFd01tbDRrR09ndDQva3lUTUJNUUZhNWQ5VXBub2M5SURSM1B1T0ttNHlxYURQUEFFRlVDbkNINnZ2Uy8yWUFDZ01IRTFTMVowUjJSa1VZK0tHc0MwNkJjb3JnU0ZKZzZLWnBGZ2hnWFhqUVMrenBoWENVd2Z4QmxvRm8wVFUyRE8xQzRqRE1Qd0FJcHpUSEY4bytBeUFab1d0VFZKa0VVQnNoTVdRKzZMRmFMVEp6b0pCa0NYU3ZPcWxSUWhhRWUyQXo0NndHUWMzQ1JqL0NSemNuWjFzelpGOW9nUDRla1lYajJuUFMyVkJLeGR2TmdQcDBpZlZyNmpIU3U4QzllS24xWitpK1FpTCtRSHBWZUFrNThTL29uaWoxU0o2TmdieTRnTGJLWXJBZDhXYmdHd0VCQmRoS21OZzdyVWdJMlBJN3VPQ0FLL0NIaUp0aWZ3TWZ5eUFUaGlUQ3Z3T0lqWVFjTTFYQWtGeEkwRnJuQTJrekJrc3ZDcFJTRktyQUw4QVlhb3psS1lLZ0xoQ0E2TVlCdlFGU21nb0U3Q2pKUUcyVnhMdXpuZG1jVWpENGVkbmdDZGhVUHdkNXVvMmtITmxBYktzZERGbkw0eFFQY1JTT0xpSDUwQ2ZabDlnNkhRbURLalpOT0d3V3o4UEVrU2lISnc3NTRUNG95ZXJhN2tPN2lGd3hrYUZRbng1WUpQNFJ3b3Fia0JoaWxRQmZyZUlJYlVRNkRTVVpIZFFZOHhXZSs0MWRaQXdlU0hJNkxlRVFGWVVJODRwcVllaEFPbkUxeW9vbWxUZmdvTTVmMXBvT084djhHNURoT3F1VGZQNXlPRkxPQlJQQ2RlU0lMZ1UzTGNHdUMwbU9CQXk4RmNic1ZTdmxGcERkckNQbTVZV3VSeUJJQ0ppMG00ZXpYSTRzVXVWamVaTlZpUlJ0TUZ2aEFZWFZQTG1vVmhwNkg3RXdBcHNxVGl1SkFDc0NIU2pHaDBiUklJWmtLNWhwV3lZclp6ZjdUMlJqbWFHTGxwVGx6WkRBYVlXTExJMWhDejl3aHVDSkJpOVlqeHJoWWFxeCtuYndtUFNVZEloMHFIU1lkTHAxTDc2TVAwei9RSjhHay9EUDlDMzJadms3Zm91L1JEK2xxTkh0QUdyaXN6R0kyd0laWklyeWRUVGJKcGxpWHJjdVdzUTNZeG14enRoWGJqdTNFZG1ON3NYM1lBZXdRZGlnN2toM0RqbU1uc0pQWUtleVQ3RlIyQnZzTU81ZGR3QzVpbjJlWHNpK3hLOWxWN0ZwMlBmcysreW03bGQzT2ZzWHVZUSt4MzdNL3NPZll5K3gxOWpmMkZudVhmY0JXNDNLdnJJSnA2Y2dsT1pMbnlWUHl0THhDM2x6ZVF0NUYzbFhlVGQ1RDNsYytVRDVZUGt3K1VqNUcvb3g4cGZ3eitUZnlnL0t6OHZQQ0YvcW0vSUVDQnJSU1Z1cktxREttTEFSeHNWelpTTmxDMlViWlh0bEoyVlhaUTltbjUrazhURGxhT1ZINXBISXF6R1lRdlVrRzMyblNDVlBVREFtb0VWQWNkWkx5akdjQWFlT010d0hidXFCczRnVG0zVGc2c2RJTUY1WmdVblhKRXBJME81QWQwdVU0aS9PMG5TOWxVRW9pWmkvb2xEaDFBWGxtT0JOUktZRTJna21YNVZrSEtrY1lCWHFCbzJNVVJBRVBYVDRPdGs0SG9HU2JRNzYwblU2VHRrdUVEek9mSU5NZ1MyQndRdlM5d1B6TWsyd3B6WEM2d2NXRXVBUHpQdTBJa2RMRktaeW5RbXUycHhsVWc3V0YrVklTaDNrQjBkSUUvWmtaSHZKWUNKeXdjQkl1cFhYV2pvVmVSUTNaRnY0dzFMaW8yMUFnZ0lScW83RHEwbEM0Zm9zN1daZ0pKWmlCWUVCeFVQeEIwMFhaSUhrU1hHM3BaRXRvVDRBS3J4MksxQnlsa2hCM1MrUVV2YXdadWo5QldRSTlvSDFBcjJFa0FxQVliRVM3bjExVXZNUkppaFAwQUVQUjdkNTlrSDlBSGl3VDh2TDI3UDEyQW9saUtMZHc5Y0dZemVKUjRTMXRGNEFnRmxkNG1xR1hVNkNEUEEyeHRWQnNuZUpOZ0tqUUVwQ0ZRdW5Ec0lRb1M0RytpQjBFRUlGYTRRWTY5Qkk4UXlpY1oyMFlWQkNSTWRJTDNhN1l0R0drZFF6OGhUb0ZZQVJQUVlta2JZNitVeUE5VFpEY0tPMTdLQm5TNGkxNFVFQnhYS1NDaDZMcFNGQUVJdUhzTjg5NjF6Z0lHWmFSb21zVWtWRVJaZHRiMlFwN3ExeFlTWCsxaXdQY1NxRzFxRVNnUWNpUjZDUUdMUVBWaW1tVEoyREhnT0paU2tGUDVUQjV3ampCUnNGTkx1cnJGUTcwQUJVRk5TTytMMWJTb0RvdVZ0YzRxaC9lNGRQbzFJUkw3QXBRQ3JvSVpVTnZ4NUZuc21HYTRZVHBRREY1V2hUTkoyQk93UkFuaUtMaW5qTEtrQ1REQkVZcHlZQ2tZamtQV2dYREErTU9sVUpQK0ZLWXZER3ExUjVaa0dsVGJCYmN3K1RRVlhRWkZ4bUFCS2p4c2hoSmtBREpnSWw3eWhENFREamNNUmtNaldBREhORVlMUjJZazlrU0poaDlsa2N5ekF3dHp3Vkhob0pYaXJabllob0I0b1hIU2J4RzNXSitvSFhXdTRLcVk1ajhMcEFiK1RZWGNpak1vS25vNFUwd09VZDNiWXIxZ1lVSVV3RGJuSWRyNW1TSTRTVkE5THlkQ3RDQnN6c1d5S1NkQXF2RGdFT24wQnNQVmowd0tZQlorQVZLUVMrUVg1SmhRbzRVM3JXZXdtTTlwWWZJY2E3d203QytTaW93WkhHV2tybHpDeWc3KzVEWUdDclhVNXRGdGhPVTJZY2lkQWwwWGhNckcrNkJXVGFyM2VGNkNPUEtaaDdtbXFiSXMyZ1pudWlLZ1lGQ1JhbEZuUVJqZ3loeFpOU3ZHS0pWdEJ0L0RZL2hnbXlacUJZeGk5QW11Y0NWbHE2TEZDWVhzV1Z3WVdHOEZsNXBvcjhLM29NSFZZRzRCeXlLK3dia0lsNk05dm9wRW9yZ0lvcW9SeE5GaVdBOVVrQnd6UkpKbFY1U2dkNmhXTTZMNStLQWpqYzlXTk4xdWVjTzY1RURxaFFOZVFnd2xyRVIyYXZuTk1ZbTk1ekZmWHJRTlVjWlBjWVlNRlZBbHA2ZlZPbTdIaW5OUkRZY1AvRkQ1RFhRS2dSd0RnWXcwWFV3azJQUzk2TDJSNWV4QWs5Wm1rN2kvbkNLa0VaaVViT3dJZG5CeGZnV2oza1J5blVkSTdQalgrUkNtMGVaSTB6eHBRVlZzUmxHd1F5OThER0cwQXlIRHQzVGFHTFBNa01GYkZzQk1aU1M4SlBqMkZDWmVSVUZRVnZSTFBUY3lVWDRJUjVHb0hGRGNQOEkwbU1TcGFncXhjUStSb0NxUkhnZU1KWlRtQzhHQ3drcmU1aTRvZzRMWW4wZXdTNzhMalovejVYN2w2MUFMaXpzTVVGdTBlRkpFYUlvcjJYb0ViQTB3S2duSWludE0zdUpLS2JjRzdRZTI0cVJPSWc0cERkVVJSRUlDc0ZlV2VNN3hzVEtndDZZME5tS0tJYjlrU0tnVHUzUEtWbDR6QUZycXdyak9GMUdRd1dwWlNpOXBqblFLbGxVenpTS1pGVmtWWlhoVzVTczlyd3dNcEs3THhqVUhvMTErQ2VJVFBwTXBCWVJmWkFBSUwwTXVZa05hVG11QVFnN2REWXZJYjB6TUJwaGduTGdLTDEzWCtkOUprRWsvUkcyV1p1bXZibElTY0RrMEJSZUhUUmJDOHJaWW5ZWTRwYjJINVpzZWlWQjAzVlhRYjREVVVITDFBZnpGR084bElJOVptc3JJaDA5c1l5Q1BtSHhzVWlOaU9EZjJXUmlyYUFZSDhwVlFaSzRjUFVEVjRyZWNuZWdOOTROUWNuWjJiNjJDUFM0dUsrQ3VOQVlVTWVTTlJHTkM2TUlOeFcrVnN2NmM1ZGhEVDN6WXEyU1B2cVpEOThGV05VdXBLaUIyVml2aDFHNzBQYitoS1p6VVl5eEVURzNsYUozV0dxdnRjQ09pVzdRbzlFdUdaUW13UWEvbCt5SUF3dFVkRUhjVnNDNEd5RmpZR00zWVM2c1M5WW5tNUZ0b01vOXlMN2tVSEkwT1psOGlueWFuRU11SkZlUXE0VmZLT0Vqd3VqRkJYdlUzS2pmMEZoZEF1b0JyOUZnbnNCTGp1dThBb3dDTnM3UkhnZTB4QXVNbWlQSVMvTVVOU3E2bDRqd2RBSWNRaXMzV1ZLWXhKaWpnL2dCRW8zakxZYklUOFEwMUNuWTBuVUJNTnZpUElSVFZQTjFPVU8zVGhFbVVEaVArdkNIbzZrdi9GRDRSV2NvRi9wZFZMMkVpTXBRdVF0UEV2UUZvQzdjeGovQWRTbFlLUWpUNGlJU0NRb0NsUXlkejRYVHFZT2hBbGdpZEQ5R0QwS2FvQjhpSGFmWUZud01TQWpkRW5BWENFSFI5U1FpRk1iUnM3dm1NYVNPQVlEQlpZNmVmQVNCZ0JURkl1MEVrQmRkdzNVbVFxTUFYMHlUdUFBV0Nia0w1dERNbVNBR3RjRnVneGdXTCs4Z0F0NkJveGVBZktvVDJ3bUpOMGdXb1ZXckt6YUlIbG1qbkZza29HeHRCbFRSNjhPTFA5bkY2UFJoRjFqS1VWVFFOaWovREY1VlpGNG9KT1ExU0tPQWFBQXhvdDV0MjAzaVZFSCtwS1hTK2JLWU9CcnRpVDI0bkFTMTVtaUV4akFsUUZOeS9PRU1maXhaMWxCa29UUXFubEhkWkNwWTJmS0dWQVpKcEJGakF3QUFJSE8raWpQV2lGRmUrTmY2TlkyYnZmMnlyRGZMVUs4UjI0VXNwczVjNGVtQXdnZE1Yc2F3YlpYcmxqR29kR2hmL0JNeFBZdEFmRUw4L2xscEZ2MUFoeTJoTEdTTDBBZ0ZGUHBMVkRQd0RVTTFlMnBBRmk0d2luTmExZVVTRlVCakU5RE1wbERJRG5ycm1La3JqRGhDMWRJQ3prRGxGcHlhb2gzejFDcm4rci9jUk5YZVZDZFJ4Y3F5UXRWV1Q5WUpTVlVJTDVqWHk2U05wSFBKRFdTeEpJSHVXa1pXa0UzSWxtUmJtT2U3a2IzSi91UVFjZ1E1aHB4QVBrRk9KV2VRczhuNTVHSnlDZms2K1NhNW1ueVAvSUQ4bE54R2ZrSHVJcjhtRDVBL2tEK1NQNUVYeWF2a2IrUWQ4ZytRaHB3NnRBUmRINlFKQlNPQWRrVUUyQTUwRjdvSFBad2VSWStqSjlGVGNEZlFhSXhPWThHUXdMWENJa1ltUmJzQ1RTOUEybUM1TEtVcHlveHg0WDVOOEhVR1lQb0NxNk1mTitOeDRleWR4bG1DVnAvd0daTUUvV0pGUkU0dW9vU0VIWU9pSVN6TTRTN0dDcUdabU9DMlMwRDZYZHEvSVZaS1JMUVRtdEFaeXBZRUxkTlFPSlR4VG1HMzhzTEVEZ3Z4Rk9PVGR0LzVYQ2U5cFBoVStQNEtuMXdiUkFGSU5PaENXM2dSeFFJTGJ4ZlNSM2pveEMwZVQ5T2xSTGdlUmNWRlNKS28xU1hqdEFOVEhTZ1NDN01TZlhhNWtBeENrSUNJaEpJVGRJYkhPWmhuczgvYWNUL1J2L3lDdlFEa0UwNVNJR29pYWtVL1pRZTlDa0t5cFdJTnFRaWo3SWhLeEdPUU5GQjluSW9vS3JET1lkQmlJWmxJVWE1bzNwcExFRnU4bDJncEVSVkFPK1BpTkVYdkMwY1RHT1BYZTg5ajdHbVJHaXdkY1RFc1BDWnQwWGF3YnZNVUdJZURSSXN4SFJwaElUVHBJM2RGeitMZUY5ZXBZQlNKZmJsWnBzcmZuTHBxcTh5V1FSNEJUdEJPeDQxQXVFOUNGeUJmZ0lpa3A4TTlJcHVGZVdRYmhaWHhVZFhMUG9wK2lYREpFeU0wQk5vRWZPdUFuTlJOcWltK3dBOUtxSmI3OHhHa3pHamZxLytvQm9yNjQxVk5jOFQrbmxvVTBlcFFUd0tJQTlOOW53WitoTWRGbFFvWm1QQjlwVklGQWJhb1VQQ3pjU2I5QzRVcGxrcUpaMUROWHVOanhZK3diWFJWeEFZSXBLSFNBclBoTHhWaEFHcC9IUU50bjFMZitpc3NJYk5vVjA4QXlnSTRxVVdmaWdVK3ZLZkNueXpiR0xpZ1BrV3RRYldLKzZRQ2FtaTZMUGF0QUZDMVRXSGxvSmtsekNaUnFrSk1oY2w5NjRTb2c3WmNLcWl1cmxsZFFXVFh0eGNMekVkN2QzczJDSm5GM211d0ZGZ3kxTUpnQjlrUnU3d29xZ3NTK2JORngyRDFxaUJUbStVU1dVZ0F2eFl2V1FCZFdWaGJBSDNncGtZVVRSd0FtY0ZoTHZKQVU0MTd1QTJTWTBRRTRrakRzRlRjTmdWOTh0MWhVOU0wUUs5Nm02SlJoYTNSTkIyRVpYR21LY3BJLzRHamxJdWZ0ZSt0ZllJRHJwUGxhOFlBMnJaKzRWbW1mYzZpMDZJOVZSc0lKa25qMHJiU0plUmxRRzJnV0FEZWpnRm1YRWd5a3BNbFpBT3lNVGtlME50cDVBSnlPVWo2YThrdDVBNXlOM2tZSlB5ZnlldmtMZkloU0hZVFVIUU1jajJsQzBHeVkzVHZORjFCdDZiYjA1M3A4WWoyaWxlaXFNbElPZ1lpSStJWTNnOUNlQkZKaXVVVUVKbm9zUkNTRTRUM0VpWldub1g0RXdHY3d2bVpUdVpUY1NIUjg2bGhscmNuUVNSUElmUnFoVUxNWjNtZElKeUtFejRNa3BVM0ViSTFlVHRwSmgyZXcvUVBzckNqSm1HbmtjSVh3WmFRc1JoN2w2THZHR01Mb2JvY0Y0UVFOQ0krYkJmT0ZLRlBNblNxZHRyTlBHeEFYdlFhQnFnL21xQVZjUDlOanJGMms2MjY4Q09GeGRJNktDbVh0S0NMU1FOU2c4eWJIQ2R3MXNyYXJlSzhUb0lscE1WeGYxQWI0R3VPMHJOT2hHaU5pejFFdmRNT0Y0Z1IzWkxvTmhhbndyMlpGOTdOb3NsaU5iVWw1R21JTFl2WHFpVC8xL01tbkdORFFBaFBaa0Nvc0FsUE1wRUtKRzF4MWhRclE4MFVNeTBsb3ZWUmE3THhrZnovOXF5SmVMU1YvaS8zVVpySGNOcklpZ3BWZk5icVREYUM2S05uMFAvaUY1UjhXeXp6eG5pTjM3alZidUltMG13c0RWS1ZqNldUN1ZaN3NvM2Jyd01la1ZYanVIdGNWbWErVld4N1k0cFNCRG9Wa21BK3pQMTEwRm9sam9jV202eXNaV242eTJhTlB3U1RUUG5JTWxRaE5SampxU29MdTVlNWNuOXR0dWNoRTJKZlFiTmNSUU9KNldxd3MyUEtueXJXWUpXZTVTZmNVREpaaURic2dkcHd1cjVoR0VNbU1Zd3FIZGNhaW83djE3QWlnUzR0b3RyVUFJazhqOUhDMU90bEZ0c0tKNWpZczRmWDVTSUNUSzRVbHhqNElQcFFYQUlwREtKcC9VdWxkNm4xekVjVlc4S00vbEdWT1VCT05ncml1cXBpWHRNRXJNbm9Xc3FzSjA0Zlg4ZlVnTnFXY1BzcEZNekxXRmo5SURjTnpaYXhCczVBTktraXFrb3VMTXZaZ3Vnc3BZdHRnYVRZTmJxVzhlL1lvSEVnLzN4YTRPVGVROVJVbG1nR1NGSUJyYkZHcUFiWDFsU3hMWlF5VStodWRHY1VtM0NKaDE0TnNBdm1jZTVVTk0wb2Z2eWhTTEY3Smp6bEJoVHRCWUdIWHo1RzZTSXc4VzNXdDdMN2YzTFJadkdOWmJrc2J1ZTAxYmZGeFJYWUpHTzlVNXZKcm95dkdXRFlhcmQzck1teVErTTV6SWwxV1lscGJpcTk4TGhaandYK1NNZEppWFFZU04yd3Q5L2liK1J0OGg3NWdPS3l1MEV0Nm9MOEhhWno2QWh0Z0J5ZVMwZnBHRWpqZVhRK1hRZlE5Z0k2UVZ1QXVOY0R1YndCL1JqZGx1NUs5NlI3MDMzcG9mUm9lanc5bVo1R3o2TG4wcy9TejlITDZKWDBLdm9OK2kzNlBYb0R2Wm4ra041Sjc2ZVAwbWZvSy9SdCtqNzlCNU1ZdnNIRkVmc3E1ckoxMkFUcnNDNWJ5dFpuRzdITjJKWnNXN1lqMjVYdHlmWmhCL1pXRjA5Z24yQ25zYyt3ODluRjdQUHNCdlpqOWpPeHMrSUo5a2YyRi9ZU2UwVmVMcStRTjVZM2xUZVhQeTRmSzE4c1g0SjJnRXNSWE1kZ2x1TnFFOWdEWVJOWG9MSWlrQU5YOXhLT1h1OE9MZzFrVFJIU2hGaCtuRXpJR0RhQ2F3TUlmQkcwSnhuSTRGU1VBK2diOXhGME5jRDNHS0dkQTV3R1VKakZJZ3hhdVBhRkU2R1R0aEhXb3NXTUVMcUR6bk5BanowSkJuQ3lrRytGcHNxU1NWd1pTSHM3RHRMSkpBVWpKbWh5RlJ1Zmp1WE5QR3UxOHlhZ2Z4U3NVTzhVQU93cGtHSXhibUlRR3orRjFzaVdNT3dwV0FEanBOaTZGRUk5U1ZxNFNVRE5UVk5jNXdNdE5TMVcwUVQrNXRDbDBHVnhpSm9CU0lMNm9FNzZoZ1BTcnozYjBpUk1lcTRXSVZLWGlKVUxzWkUvUXlkRjFzcGFBT2NqS0Z1dGsyWkhySHkxd2xZemkzZ2R0NmMxRTNUTWNGQVhXREtTaTBkWklCYkFoQllTNjVIRm9oc1lEYURaQ25NanhsVVkzUEtSTmJPa004WFJSb0Q4SFZ4VmJiWXhWRWR0QlFuUE1OS255VVUzRXZ4QnBKL3lZUXJERitjdzRDbDBGUmRYd0hZQzNTUldQZU4yT2t6UXd4R0FZbzBuVzJFVEdvLytrVFJzVHNhNHdwVENxS0RSd1plZ1lTbVc0SGhiN0F3QUpza3h5QjRYelBJUU9hU05pY0N3TEk1ZENtcS9tZVZwbURiQnZvVDZraGl3UkRaQk1yRGJNbWcyd0FXTXlZZU1XUmlBTVlLbnpUanZiVCtZRkdaV0Jnd0cvQWtHVFFPb25nZTRicVkySmx1NU1KNFM4U1FWeTBlNGROaHByd2NVNXgyaEhVUFVsREdrRFNFWCtvZUVqNnpUTTE3d044S0NlclpWWHR4RG13ZlhoOVRpRVY5VGZDOE5yakhHME5FT0Yrb1d6U1FTNHlFRkhadTE4b2czMGlhTXE1cE9kaHA4TEcvRnpYd3NtOElYYytBcks0Q2ZVV3VudUtWeDlpTHJtYXFDVVhFeEh1TklrRGhvTllzdElua1g5NHNrdU5Jc2R1cmdFd1JNdUVHNm5XZGlxNUZiOExBdzJQdDcxdERpaEtJRWNlQkpQTlhCdDBNMHNxQ3RKbU41STJ1RVk1MnByQjFrZ0FDU0tSaTRadGdNb09zaVlTTVJ5VG9pVVR5WlRTWlQ3YWg0VG40S21wTHBHbFh1cG4wemdjOHVoRzBiK280UFpramZqak1UMUpYRHhWcUVMYnpVY1Y4Tjl0MDhJTDNWT1FnMGRCR08zWU1VOWhxdHRjYXpqUENBRlN0SGJEYTZDL1IxcWpxMnFnTzRJQ0xFSnU0Wk1xRW9pdW1LVGx6WElVcXBwQ2F5c0VyN3lFTVQ1b2dpMUh0dndhcHdPOHZFV2VOR2w4ZFZET0ZPaEwrSkRuT1pIYmhXYUpvaXRKcGlDdDgwRXk4MzJGb2hIa1p4NHhzc2RpeWFLU0FSaHM4clJkOW1yVUZDcHdvNDFWdVA2dnZkMGV2Vzc3ZUFWNlJoaVhieTRzRlZETU5ucUZodWcycDBzYVMyaTRFMjJ6aGpYaEhkalgxaStGYUdOZXNEQllsRk5LaDRvVjNQTW1SRnRCbEN2K0phdkRhQ0NPY1h1c0JZOFRJSXBscTR1d0crWThGLzlKMGJtQWZwcEtvZTdTbDdYQnpCZDNiMEJ4TDVaYXkvTGxtc0I0cVZLRjdZeE9iUWYzYkwvMXVGbE42RXUwZ0lBRDlYMVhzaFRBVWk2cTIyQ2U4Qitsa1ZnWldnRzJ6WVU5YXNqK0FqVlZlSkhTdEYxQ0FqL2NXa1lxRW9VN25ZQ2FQU0h1bVFLdzNGSi8wVnBaNTlLQTZ5VnNRdmlRVW96Q0hDR0YydXVzNG9wNlBZSWtSTVpDaUtob2hZdmFvcWNJeGlWYnhqTFViRUJzUjFSUVBVb2grcVdGQ1dlMi9KRUZDNWlJUVVYMTh4eE9KYzc5MGZ5aEF2MXY0WW53dk01ckhDYUI4dW9pZUxWMjdveEljcElWN0N3WHFnZE4xeHNFZUJxWGk1bURDa0xpQzN5R0QyNXBUb3AwMTZhRHFBdzRpaU9QZ2VFTEZ1STE2VFFtbFp4Qm12V1h4Uys3T1liYUxqUXBIY2gzbXFndE53TVY2TnNRbkFZa2lxc3NKczRTb1p4dkJqUWI0R3pQZ1M0TUFXZW1JWUMrQ1VqZUZUR1UwUzVzSTF6QnJBaXd1WUROcWZrSTNDbmRkZUM1dGRjUkxycGhodnA1STFwNGVyWEN5eG83KzdJTGZuK3pycE80Qm1qNFVGRXdTazkrWVN3azc1RC94SktmblhaVGk4aWVzLyswdFY2U0x5RjNLMTlHM3BHdWttNmNmU2JkS2QwcjNTSTlKajBsUFMwOUl6MGd2U2k5TEwwcXZTMzZTM3BRK0lSSEt5bkt4UE5pS2JrUzNKZ2VRdzhuRnlqUEFxNEpyUVo4aDU1RUp5Q2JtY2ZKMThoMXhMYmhEN2ptOGx0eE44QjhmRDVESHlGSG1HUEUvK0tuWVl2d3VZMTZVUnJkSWE0TjI1ZEZPNkJ6MkFYZ0J6NTJmME1mcEgraGY2SHI3OGhNV3NBZGcwWmZNQW55NWg2d0U2bldZYkFEN0YyTGVkMlI2QVR2Y1d1MzhQQm5SNnJDU2hheEZVVlpBaHhnVExGMThMR1loWFpPUzRnTlRDTUtiR1VoRkFENm9NOEVPaG85RGNydE1rNUwybyswVEVoS0diR1k1S0R3MU5KcDJXOEJ4REN0Q0orVENaSmozUGJpZnBlemtnWFYwVnFGWkF0aVNjcHVndkJ1U2pZSHhTRVNlbGhJQWNrMmJZYm5iQTdrNmJvSDZUOWxTbWRvSjIyQWdub1pobTNBb24weFlZL21FemJjYVQ2R1pwOGlsb1B1aEx3TUNBaFhnT2dIaVlUaE9lYytGNUZ2dHNzVFBoYlBXeGkxdFo0NUNqL3dQZDFNbFMxbXduSWcvVUFIbzQ1MkdhRndGTnVMTVNOeWlpb3lERlBaNkFtS2ZKTUFXSUZVSU9ySTJrMDBSQVZjUTl2YmllZnNSVHU3TkVnQUhFWGdLMzhDTE9KY1dIQXVZVWJuZVJYcHhDb25FaWFwc21LYnJOb1RFeDdxSElYZHd3V2p6RUFCZUFFMkdjWkJoWEs4TDBFUGMwRWU3QVFNTS9RRDdaRXR4bml1NFNETDlCSjdMWUxRRzRDSjN4SWNiWmNiSENJTGExZHNBaVdhS0VmRmpzZThiMENMd0JScUtsMEFtTHlMTk1OREpFK0w2VWlWMnBoWE1HOTI5MktTNUpEdU8rVWFEcFpCdWdYVHZBdURxMEh3VHhFZnpGeFRwakx3QXZkOFZZeFUxa1NKZTJlYnNYalFhV0FNTUZSeUR5Uk9HY0Iwb0F0SFpKUEUzRUFTQWV2cHlyTlJYaXh0SnhIQVZ4bitQd1F6Wmc5MkFDSVA1a1N3RXdHUVBGb2UwY1RZMEpnaVdqdHp5Sm9hY0oyRnhLc2ZVWVc3NlVqT0lpQmhwUkdlNmpUZHBnYUlVNTRubUFhK2tTU3Y1QTgxbHZjMDhsZ296ZXlEUjdhbnRtZFJVQUJlOHJVQXhVQWVoa1RwRUJ0ZkJnaUQxdHZhaWoreitCWWNaVW05a1lib3l2RlRSQjFvVDY5aVhWWmd1TUtTSWI2S1poMjdpWGluMlp4T1pGZkM5VE9NaDZFZXhiajRmVUFjdzJ0RnlUY3k0YlJNSGxRSU9VQ3psbmdOaW1sWmhWWkJ2RU8wYXVDM2hCaTFnZFJ1bEhoQ1BGNWNkKzJFeWgyRWErWXBEdksvenEzOVcrL3p2S2xGMExqMGMvam9pNHFrQmJBcHloZWpMRUc1WTR4ZzlSTWdsZHR6VlFOMlc4cjJDTXMzakpWZDEwQ2R0TWhLNklXSklXTWVRQ2pzN3I2WGdoMnhVTHNKVzVFQmRWTlpwU0I1dWs0RXNFYmFMcFJieUMwR1NVYkV4WjdsRk5sM1Y1U3VkcXo2UGY2NXRmb2l5dG5xelUxQklKNXVHVG1YZlpwK0gzWXFFM2FSRkVoTHRRUmEwekQ0anNZMTBzWmg4UTN2M1BsZk5rdGlNUmFMaUhCZ0ViYlhSbGlKc1FDczJObmNNWFhXQzRoRGU3aXFMaVVnQzFpMVZRQUd2clkxd1BPcE0wR2QvekJWcGVReGZmMlQ1Rlh3eC9TNnhUczNEdFpaaTExMlBrWGszNGViNjZZaTcwR1dObnZuYklQc0FoaXRKTExWY1U5Q2IxNHJjMG9nOGtYRU8zWDRUUlpvc0VjMWFJWlhrS1k3TmdEMzdYSlpNa2pqeVZDTmJyYzdEQkdQemhyeTNMb1NnenhrVnFBd05yRU9Fci9aUHlBUnVTYTFXWlhYZTIycmoyWEtEdkNsWHMwV1F1NmNlSGpTa2ZqYVZpckt4U1RhUGk3V0pLWFJia1FZY2o2VytVTlZRNkdhbWJVRHBBMUg1NERabGQ3akZyaG1rYUg5WDRsaXhjYUNZeFdOMHJGZEVpT3ZyUk9KSXZoQWZNRUNzcFg4YUlrVU9Kcm1zVytVVEoycmkzM3JJZGxHOHpsZFpLUHI3aURMTDNsb2ZJOWRPRVBJSHY1Y0IzaXdrUUttTW8veXRpUGp3RU1KSWN0S21BdUVnM1NSMlg1a2lmSm4rVlBwUjJrSGFSOWdiTWNhQjBNQm5tYlQ3Sk8zd3g3L0oxK1JLK0hsL0twL2tHZkdPK09kK0tiODIzNFR2elhmaHVmQSsrSjkrYjc4TVA0b2Z3ai9OaitRbjhSSDRxUDRPZnd5L2dsL0xMK1pmNUZmd3EvazMrSFg0TnY1N2Z5SC9BZjhSL3ptL252K0MvNG5mejMvTGY4WWY0SS93UC9DbitOUDhqZjRHL3hQL0tYK0d2OFRmNG0veHQvaTUvbjMvQS84Rm5ORW1qbXF6aHJnRkRzelJIOHpSZkM3UllxMm1EV3FwTmF1dHAwOXB5YlgxdFkyMVRiVFB0WTlyVzJyYmFMdHFlMnQ3YWZ0b0Iyb0hhd2RxaDJwSGFVZG94MnJIYThkcUoyc25hS2RxcDJ1bmFHZHBaMmpuYWVkcG50WXUwejJ1WGFwZHJYOUsrb2wycGZWMjdTdnVHOXQvYWQ3VHZhdGRxMTJzM2F6L1NmcXo5VlB1WnRrcTdRL3VsZHBkMmovWWI3VDd0ZnUxQjdSSHRVZTB4N1FudEtlMFo3VS9hODlxTDJrdmF5OXByMmh2YW05cmZ0WDlxTXpxRmVhL3FYTmYwUUUvMEJmcUVudWxUZWxkZlYxK21yNit2MERmV045VTMxN2ZXdDlkMzBIZlNkOVozMXcvUUQ5SVAxZy9WajlDUDFrL1Z6OURQMHMvV3o5SFAweS9RTDlJL3IzOVIvN0orcGY0MS9adjZ0L1J2NjkvUnI5WnYxRy9XZjZEZm90K3UzNlBmcHordVA2ZS9vcittdjZIL1RYOWIvN3YrVDBNeVFNQVozRUR6MGpaY3d6ZktSbWpFeG9BeGFNd3hHc1pjWTlSSWpmbkd1TEhJbURBeW8yM2tSdGRZWWt3Yks0eU5qRTJNTFl5dGpHMk1IWTFkakQyTXZZeVZ4ajdHL3NZQnhrSEdZY1lSeGpIR2ljWkp4cW5HR2NaWnhubkdCY2FGeHNYR0Y0eExqVGVNdDR4M2pmZU05MDFpVWxNeGRkTTBiYk5tTnMwcGM1bTUwdHpIM004OHhEelVQTnc4MGp6YVBOWTh5VHpEdk5UOHFubVRlYS81a3ZsWDgxWHpEZk5EaTFteXBWaUc1VnNEMXJBMVlpWFdxRFhmR3JjV1dVMXJ5bHJQV21ZdHR6YTBOclkydFRhM1BtWnRaVzFuN1dqdGJlMXJIV1FkWVIxbGZkYjZuUFVGNjR2V1Y2MGZXcmRZdDFxM1diK3dmbW5kWnoxZ1BXWTlZVDFsUFdNOVo3MWcvWS8xc3ZXSzlhcjFtdldHOWFiMXR2V085YTQxWXl1MmFtdTJiaHUyYS90MjJRN3MySzdZTlh2UXJ0dEQ5aHk3WWMrMTU5bno3WFhzY1h1aFBXRTM3Y3h1MngwN3Q3djJ1dllTZXoxN21iMnh2YW05bWIyRnZhVzlsYjIxdmEyOW5iMjl2WU85aTcyYnZaZTkwdDdIM3RmZXp6N0FQc3crM0Q3U1BzbysyajdHUHRZK3dUN0ovb1I5cW4yYWZicDlsbjIyZlk1OXJuMmVmWUY5b1gyUmZiSDlCZnVMOXBmc3I5aFgybCsxdjJaLzNmNHYrM3YyOWZhTjlrMzJ6ZllQN0Z2c245aTMyaiszYjdOdnQrK3dmMkhmYWYvU3Z0OSswSDdZZnNUK3ZmMm8vYmo5cFAyTS9aejlKL3Q1K3dYN1JmdFYrMi8yVy9ZNzludjIzKzBQN2RVT2NWVEhjVnpIYzBKbndCbDA2czZRTSt3MG5NUkpuZm5PT3M0Q1o1SFRkRnJPcERQbDVNNWlaOXJad0ZuaGJPWnM0V3pwYk8xczYyenY3T0RzNk96aTdPYnM1YXgwOW5YMmMvWjNEbkFPY2c1ekRuZU9kSTV5am5HT2M0NTNUbkJPZGs1eFB1V2M1bnphT2RNNTJ6blgrYXh6a2ZNNTV4TG5VdWR5NTh2T2xjNjNuTzg0MzNXdWRhNXpmdWo4M0xuTldlWGM0ZHpsM084ODZEenNQT0k4Nmp6aFBPMDg0enpuL01sNXlYblZlZDM1bS9PVzg0N3pudk4zNTUvT2pMUGFsVnhBY0M1elpWZHhOZGR3OGY5dThOMnlHN3F4VzNNSDNMbzc3TTV4Ujl3eE4zWG51ZVB1SXJmcFptN2JuWEp6ZDdHN3hOM0kzY1RkMnQzSjNjWGQxZDNEM2RQZHk5M0gzYzg5d0QzSVBjUTl6RDNjUGRJOXhqM1dQZDc5cEh1V2U3WjdqbnV1ZTU1N2dYdWhlNUY3c2ZzRjk0dnVaZTZYM0N2ZHI3cGZjNjl5cjNXdmMyOXdiM1J2Y205MmYramU0djdFdmRYOW1YdWJlN3U3eXIzRC9iWDdHL2QrOTBIM0lmZGg5eEgzRCs3ajdwUHUwKzR6N3JQdWMrN3o3b3Z1Uys1ZjNkZmMxOTAzM0RmZGY3cXJQY2tqSHZWa1QvVzRwM21tWjN1dTUzdWhGM214Vi9YbWVtTmU2czMzeHIxRjNvVFg5REt2NCtWZTExdlhXK0t0NXkzemxudnJleHQ0RzNtYmVKdDVXM2hiZTl0NDIzcmJlM3Q1SzcxOXZRTzhnN3hEdk1POEk3eVBlMGQ1UjN2SGVTZDRKM21mOEU3eFB1V2Q2cDNybmU5OTNydkV1OVM3elB1UzkyWHZDdStiM2pYZTk3enJ2QnU4RzcyYnZWdTluM3UvOU83eTd2YnU5WDd0L2RaNzJQdTk5NVQzUis4Wjd6bnZUOTd6M3F2ZU85NTczdnZlQjk2SDNqOTkyVmQ5MjNkOE1KejlraC82VmIvbXovRWIvbngvM0YvZ0wvSW4vTXhmMTEvUFgrRnY1Ry9zYitwdjVtL2g3K0R2NU8vcDcrMnY5UGYxOS9NUDhJL3dQKzRmN1Ivakgrc2Y1NS9vbit4L3lqL1ZQODAvMHovTFA5dS8wTC9ZLzV6L0JmOFMvMUwvU3Y4cS94ditOLzMvOXIvbFgrMS96Ny9ldjhHLzBmK0IvMFAvRnY4MmY1Vi9oMytuLzB2L0x2OSsvMEgvTWY4Si8wbi9hZjhaLzgvKzgvNEwvb3YrWC8yWC9WZjhWLzNYL0RmOE4vMTMvZmY5RC94LytETWxxY1JLY2trcjZTV3JGSlRtbE9hVm1xVzh0S1MwckxTaXRGRnAwOUlXcGExSzI1WjJLTzFjMnJ1MFQybmYwa0dsbzBySGxJNHJuVmc2cGZTcDBtbWxUNWMrVXpxdmRGSHAwdEtWcGErVnZsRzZwdlQ5MGs5THEwcjNsQjRwUFZwNnZQUlU2ZG5TbjBwL0xyMVllcW4wMTlLcnBkZExiNWJlTHIxYmVyODBVNWJMYWxrdkx5K3ZLRzlTM3JTOGVmbGo1YTNLMjVhM0wrOWMzcjI4ZDNtZjhyN2wvY3VIbDQ4cUgxcytzWHhLK1ZQbDA4cG5sTThwbjFjK3Yvelo4dWZMbDVXL1ZyNnEvSTN5dDhyWGxLOHIzMUQrY2ZrbjVYdkw5NVVmS2o5ZGZySDhVdm5sOG12bE44cHZsZDhwdjEvK29QeVA4a3dnQldwZ0JFN2dCVUZRQ1dyQlVOQUk1Z2J6Z2dYQm9xQVZUQVdMZy9XQzVjRUd3Y2JCNXNHV3diYkI5c0hPd2U3Qm5zRSt3UUhCUWNGaHdjZURvNFBqZzVPRFU0TFRnak9EendUbkJSY0dsd1dYQjE4S3JneXVDcTRPdmh0Y0Y5d1VmRCs0SmJnMStIbHdSL0NyNE83Z044SDl3WVBCNzRQSGd5ZURWNEkzZ3JlRGQ0TVBncGxRQ3VWUUM0M1FDVXRoRUZiQ3dYQUlUUEt4Y0Y2NFRyZ2diSWFUNGVKd2ViaDUrTEZ3eTNEcmNOdHdqL0RnOE5Ed3lQQ1k4TGp3cFBDVDRlbmhXZUc1NGZuaFJlRVh3aStHVjRSZkRiOFJYaHYrS0x3bC9FbDRhL2p6Y0ZYNHkvQlg0ZDNodmVGOTRZUGhRK0dqNFdQaDArRXo0WFBoQytGZndwZkRWOFBYdzdmQzk4SVB3cG1JUm5La1JWYmtSS1VvaWlwUkxScU1ocUxSYUg0MEhpMk1Ga1hOYURLYWlyclJldEg2MFViUkp0RVcwVmJSTnRITzBhN1JudEZlMGQ3UnltamZhTDlvLytpQTZLRG80T2pRNlBEb2lPam82TmpvK09qRTZPVG9FOUdub2s5SDUwVVhSQmRHWDR5K0ZIMGwrblowZFhSTmRGUDB3K2hIMFkram4wUS9qZTZJZmhIZEdkMGQvVFo2S0hvaytuMzBhUFNINkxIbzhlaUo2Tm5vK2VpbDZPWG93MWlPbFpqSFptekZkdXpIMVhnZ0hveUg0am54U0R3YXo0L0g0NFh4b3JnWlozRXIzaURlTU40azNpemVQTjRxM2liZUx0NCszaUhlTWQ0cDNqWGVNOTRyWGhudkUrOFhIeFlmR1I4Vkh4T2ZFSjhZbnh4L0l2NWsvS240MVBpMCtOUHhHZkdaOFRueGVmRUY4V2ZqaStLTDR5L0VsOFJmakMrUHZ4UmZFVjhiZnkrK01mNUJmRXY4MC9qVytMYjQ5bmhWZkdkOFYzeGYvRUQ4WVB4cy9PZjRmK0pYNHpmaXQrSjM0bmZqOStLL3gvK0lWMWRvQmN6Q2lsbXBWZXFWNGNxY3lraGxibVcwTXE4eXY3S3dNbEZwVmphc2JGTFpyTEpGWmN2SzFwVnRLdHRXdHEvc1dObTVzbXRsajhxZWxiMHFLeXY3VnZhdkhGZzV1SEpvNWJES0VaV2pLOGRVVHFpY1ZEbTU4b25LcHlwblZ5NnNYRlM1dFBLVnlwV1ZyMVgrcS9MZmxXOVhycTVjVS9sZTVmcktEWldiSzkrdi9MRHk0OHJQS3FzcWQxWHVydHhUK1UzbGQ1VUhLbzlVL2xCNXJQSkU1YW5LMDVVL1ZwNnRQRmY1YytYNXlvdVZ2MVJlcXZ5MThtcmx0Y29ibFRjcmIxZmVyYnhmbWFrNjFWSTFyTWJWYW5XZ09scHRWaWVyUzZ2VDFmV3JLNnJiVmZlbzdsWGRyN3AvOWNEcXdkVkRxNGRWajZnZVhUMitlbkwxbE9yWjFYT3E1MVkvWDcya2VsbjFLOVVycTErclhsWDladlU3MWF1cjM2MWVVNzIyZW4zMXh1cE4xWnVyMzYvK3NQcVQ2cXJxTDZ0UFZaK3BQbHQ5cnZwODlTL1ZsNnF2VkYrdHZsWjl2ZnBXOWIzcSs5VVBxNnRycEtiVTlKcFpjMnZsV2xpcjF1cTE0ZHBJTGFtTjF1YlZXclhKMnJMYUJyVU5hOXZXdHEvdFhOdTF0bnR0djlvaHRVTnJ4OVJPcUoxVSsyVHQ5Tm9adGJOcjU5YytXL3RjN1l1MXkycVgxNzVjdTZMMjFkclhhLzlWdTY3Mnc5cVBhcmZVYnEzZFh2dEY3Y0hhNzJ0L3FEMWVlN0wyZE8yWjJwOXJ6OWRlbEtRODdJWmhkNkRkdFR0ZHA5RmxZVmR1ZHVWT2wzYTZEZkZXckZiUzdsYVM3azdON0QvODY4cEsxa3pRUCtaU3BjUFRKRVhuWVpCa2pjNGtiZzlyZGxMZVd3aExSUVI1c2ZpYUpWbXhvN0JMeHduV1J0cGRLdnhyblJ4cXhrQ2pEaTdyZHJxcTJDc1dpdzFqdUx0TXZKYVA0Wll6OGRZOGdxR3BjTXBEdkJrV0x4OUREeHNQUnpwWksrL2dXK1QwVUN4ZVl0d1NYS1pZbng2S0tqc0o5dE11UXBxS3grSU8vQ2xpTDZoWWllUGlTdjVQYWJMaUJ2NnR5Vk9rRTNuVHJpcHVzNkl5V1JURzJ2L2VHbnpsMTFnaXFsUGJva1gvWHVaSG1vYVAvNjFoYTVVR2o5M2VBNnhiUERGN0hmcmZXL3QvUy9RdmZlbGZmT1FaN1JUWE1EWkxDUXdwdmlHQUZhMXNMNlZkRDV2cHRyczZMbnpHWFZYc28yM242Q20yOEsySkdGOUxSUVN5aHJ5QjVlUnRjUWZIdnhPSDdReEhINGZiVHJCZ0Uza213NWVuWlZ6NDRlS3N2NHRSMEVwRW9XSGJpT2lrMk5FTGJaNXNoY1ZPeFM0RC9uT0I4MFZwRkwxNlBqb2xLVklQWHhPWEovakYvYys5Vi9JbE1YNnpGTC80RWtiUk9SR0ozQjJHbG1BTnVCVzNpWFFycWxNeGZvNkpuY1hpSlhkSmwvUjh6WjJrOTA1SkJZb1p4UFhldUkxRFVMeENqNHMvWkl4MnQ1R0UzU2lFUzRxZFNFVFprTE9WcGFGNGQyS0k3NlRrUFM4NlRyd0pDbTJCYnVDakVLbXU0SHNVUk9XNHNSa29uWGNaWG96Rk9FUTR6ZU5tOGNwSmJKTGdpR3dka3FUakpCZjdVck5pZTJydm1MVVRFVCtTSWpIR0Vud0xRelBGbjJZRGp3bkhzWWNUS0JtRHdYRzMrUC9EdjFFdVpBRlNWbTRud0FNaHRoRlBjY2JqN0lpVEhHbU1QbUdlNFEzeDZrTm9rZGp3S3FhRmVLY21qYkViK0xKQ0NseUQ0NWt0SVVrOEFYeUVtMld4SHdudWxSV05ESkZTMk93dVNadFlGRHdxT29yZGE0dmVwZUlIU01sYmFUeDdMeXpPa0J5eGFBVHVwODV3VnkyTVl4UGYzZGZza2lZNmhyR0NydEVKMDB6Y0FSbUw4aWZCRXhXcGhIMU1ZakhqT2lJSkhwQjdlUEhDVEsyZEl1TlRqTTFvYzN6dElUQWova0xPSEIzbnVPRTRGaE4vQ1liWEp6eGZpaS9Cd0dxWUdLNTJJQ0xtR2NiT29PUVM3V0RZcHlheVE0elNwWWd1YUJmeUJZaG5pUHdpNkFDcGcrOGtGUE1LS2RBUnRJbXhjLzF6WkpNRU4rd20rQUxLSkZzckVXWVM2eGdvK092NE5rZ3htVkNrOXhLSmQxWUtqb1Vqdmg0a3hPbUJZN3hPOGZMSWNiTG1IRmNFa3NrR0YrZllJVm04SzVHSjk1R0FLcHNDMlkvdnhCU3lMTXhEWkdtVVRrZ2hJZXdTckRYc0RqYmEyZXhiR2xNaDlxQWxMY2pUTEtaSFY2dVQ3b0Y1aWoxWGhjSXJVb21DSVExT0xkSlI4YTJlaGI1QXlpRm5BQzhCclpEN2NYOUN1MDh4UVFyU3Y4cmF6YTRDeEcyMHd3YXlsMmhVcDZmVmNFQUtQU2RrSHNFNW5PSHJZZ3VWQTVvWHhxV1ZDNkdMckFQcGtSdHp3V3ppRlFSaVBMcjRzZ0NNU0FHK0Voczh3ZzRPUHNWTzRFTjhWU2J1eEk5eDdhV1hHTk5odlFtK2F4WDV1aWdCSlRPUUM0ZEthRlRvYklLREpHb3FkdUlESStIR0RtaExIaGVqbS9XbkMvSVdpaWVRRGJpdEJNZXhtRjVGYmk1ZVo0QTVSYml3WUtZd0xXZ2xacVFRZS9qaVR2RTg0NWdpeFBmRDlrc1hrd2lIdDVuaE14SFZoSE5TYkE4UngweUlVR3d4c2lDV2lPelFMamdWczRpQkZhS0VZWVNhYUZBT0xBYnMwUkViNnJINDlLTU5UL0JGcmluSzFRSlRyT21Zb0JxK1hyUkxvMVM4M2xRY09tSHh1bHNXTnZCTm9Canp6VEZEVitYQU5WZ01KTXV4S1NEdE9qaGw0WkdRcGFLYkdPUVhDbUVBVFlSKy9KL1d6alZHa3V1cTQzM092VlczcW5xbWUyWjJhbXBuN2Nuc1RudW40bG5iTXoyOXRjM3N4aDVzNTBHTUU4Y2dNRmdRSUtBQVJnUVJSVWp3QVVXeWhKQVFFZUlEU0NnZ0ZLUkkrRU1RRnE5QUpQS0pZQ0lsaEllUnJBQUJKUUZaS0FvQ1BsaHlGczcvbkZ2ZDFiMnphd3RuZG1lNjYzWHIxbjJjYzgrdGUzNm4zZ0cvUnphUFJ6YlFNWG1CaGxmYWllNUlGVStsQ2UramVxMi9ORGRFRXpXbGRoMndNQ290YUJHVStycnh4R2xWNDYxaHBlMUJxMDBieERnK201WkFXMnRWckRYMHpsaGxxQkhvWk9oY1BhM3BIbTd1bE5xa2Uwc3IwTnVjaEVPMTF1RTQxblI0amV1bWJRUFRsM2JUazJDTkNGcXlnaFl4SnlpMlRxS0RBUS9IS052QjJqOTFSN0t3US8yazVudWkxeFFLMzUxeDBqaWVRK3B5MVUwTm82RmJrdWVqOFh3WDRjMjZwRllqbnloeFBPaENINE04V0VoT2FRNnExSFFBWU4wRnAxWjF0ZkJnK0M5RmVKSmNMZVAyZUtvWHlJQ3VoT2lHbm9HUVFSTVoyMk9jcUQ4V3ZwcWtOeWtjMHl1QjFSYVpWVmZxczRaenBVM3FCVkpydW9KVThpS3RwOFpmaFRIb2R4bTFvUzFLLzZ1MTNaYUFKVGVxa3VYNUh1UnhVODlaSEdpNzZrVm1IbHBqRmZLUVR5YjRrUjFYbXplYURRSlZzRExXQmtwdnFYRm1oWFRxeWtZVk9oelpZZlFrK01ZcTBadGlSV0I0WmtOd09ib3U5OW1VQ2xZSzFvNVZhNmxsb2ZzVVR3RStNckxuVE1DUGRNR2lmWjFxeDFPbVNUUW5qbERISGlNcnFVT1JabGdkS2pJK2dlYkFTR0ljZEZ3RDVXWjYveVNyVHhJcFFzaWJIVkU2OVlOYVduTFhxZzdUMENobm8xSUNpdDJ6ZWdQZnZnbEppSllDVkxycDdFbi9IeGtabVJvV1FUWjVJN21aNm5MVlViTi9iRzBKek9YeUpLOUxYYndTVk14Q3FNaXVTYTMySjVjNjhFY2RuWm1nRHBmRXBta1ZtRWVmeTQ2MGhwRWlKREdHWnBQMmxoT1Erc0F1Z1RhYjJKY2FtUUlvclhNUC9Xb3k5TXhuaWhJSHZVQTBvUFpjNlU3eElKclNVV211a25aVkkvZEJiby9INVJYcnJ1cENLYTBkZlV1SFV0cEpNWWFPZDRFVXo4MTRoMDBsL3pQVnNDTVlhbnNUR3dSWVB6SFRRSHVTRHNKeGc2RFdNcXN3czlrRGFjdThLV2R2cXZuZXFGb2F0QUlrR3FWbEhCU1hXb0FxOHVLd3F6UXYwTWFpYVdJZHROWVZlRDBvWlhSK1Y2SVhLaVZ1QkkxcXBvMk9lRTQySVFReDBCTDFDOGZOR21OWmpIOHgwY0I3a3NGVEhTL0x6Y0Y4bjQ2ME1UUTZNSTRTR0lYVVNKT2hvS1BKVmFEVDVUWTc2S2xsUEVuMkZ5RFoxenBvSzYyVUxYZXBTWlJHcTh0cHZ6WTFQOUtCWW1teXkwWU5SMmJHK1IwOHN3NGZrTHhyTlEwR0xMcW5WVm1UMFk2dTZMZU1SdG5WM2s5TFUxT1dZdHMvS2RwT1ZVWWhubWtkeGJHckhoSGhGSTloTUJFTkZGajJEZURyTzRrVmNiblFMazhDVkE5YWN4TWw0c1NxVmg1ZW1ZUEloMzVCUS9CNlpHQnpEektncXREMmRXeDU0bUs4VkIxL3ZwN3UzWXl0R3plUWpqQnRWYkNtMGtUTE9GcUZNWlBDNXRHeGxCWGdheVJxeFV4VEhiOWdVa0lHa2psR0VHRnMyZzVydW9OYU45b3NvcElzazhtN091c1ZQb3JWRi83bVB4eWtUMFN5VEtBV2t0MEZmT2lTa2hTK1FwRit5WjduYTZ4YloxYm41ajVJaTA2ZVBtdlhSMUFJZmFMem1tVFd6MjFwVEZ4eW1tY0FlU2RZdHBQbkRQaUpVODlYU21mTGlveTkwWUplNkJwTjE5cDEwbGhiUE9nU2ROcjEweG9KejI0UkVaL0VzNFhsYzYrZStMUlplZk9WL2VXMW5UT0tvQzB6VDVMRWMyY3RTN3VpZXBaSWQ0bm04cTZXb3U3bkJCUStheTB5MHh6dk5NKzlBbmpvakZXZ05QY29ucWNkbGc4bzVZZVlrKzZCV1hXNStFZnVzTEc5bmREdGZyQWF4SFdTdmZXWmtVcVdzS003L0N3OCtSa0ZScmQvemlYd3pGbGw5eHFYdmZHZk14N2JsbkE1NytrT0ZYcW5mTCt1Sjd6emxmeE5mOHhZeGU3MlpjRDh1dE9KUCtkb0FVSVdFMTl1QkJ5alAzaHV1OEJpait2dXA1VVY1Mjg1MWoyREY3T3lrRnpud3BoY1VkQnQ3dFRkazNZNVJvdFBHdnVnZEpTc2hVTzEvaEswbk1IbHJ6SERXZWJtYThPNWRRZTVRMkc3MTZpRUpSeU12MjBTM1pKWU9uNzdjbDFvZ2U0T1orakt4SmVTdjdWRHgrUkRraVp6M3hHTnlVQkZsZ1dObXVtUE9JWU1XSHdRcGFvZDNOSTVhRjRkeXhzemNiY2tySmc2eW1DaEZQbU1Wa3hMbHk0MUxNVUhjQWEzaG1UMTFxN0JMU3ZMemRKU04yaGRWOWwxQ2xpOFVWeEZhb0RmSkNxdEIrbFJWVmxhYUttM0NGdEU2K2tkR29CenBTNUVoQzlPWDRPYXlyOW1ma1dZUFUvL0RpTG1kVWtaTEdkZFNSZUtVa2srN3V6aVhVNjI3WnBJSVdDbExCbFE3aXg1SDkxN1YyL3hGSW9Fd2Z2YmUxNm5XSXpLZldpZG1wTlpscEsyaTBRdkdCWG9zMDU5Qy9wc2h1L29PQVpaVUZ1YSthSlFPb01JK3JQd2FhNzc2TGNyaFBtNmJYYWRWcXNMZCtmS08rYlRMMjExR2xCWFpjODdKOVBacXBnV3hIUW5KMjcrRUYwaDBsK2dlR2dJSFU2U2piYUNmUFRhYzNQRmdZQzdTNlhyV29nZlJaUjE2NWxudHpQU1NYZWRkMy9XUjFiaVlKSFZBY3h4Y0IxS3BwOHQ5RjQ5UTQyNVRnZG91WkdoYzRxbk9XMXkvdi9XdmZQcTVJNUQvcTNuK2RtcHk1MW1OaGpyT1B1NDVhb0pjeC9IZVpOSmFNSHowUjdVbVdkWkhOMHVwNk5zQmJMZmpndS9sR1RtazJMZUJ0MnMvdE9sa2RzQ01jQ3Fwc1VIY3RIZWJLaGVqUGt0Q21wOVZoOTk4M0tiWmMrdnRNb2d1clROQzFQL2Q1K0VPMzNGRy9RcnpGcFNsc3pScGJ4VVlKMWg2TkorYm12aTlFMjkzb085dzk0djBEL1NmbStWbnFjL3BrOHFiZVd2NkxQMEJmcDdlb24raGI3U2liYjRDcjFLL3lzYU11ZFZaV3RkNERmeEh1L3pBVC9BeDN5TnIvTkQvQWkvblIvamQvTjM4SGZ6MC94ZWZoKy9uMytVZjRKL21qODQ4L3YvQ1A4NmY1eWY0ei9qRi9pejRHbmJGTGxPMERWWWhZTTNVc29TM3VFQWQ5MmhIMFZQZWN4K1Q1dGFuYW9yMk9HYmNHRzVkSVhxSzNTWWxCVmNtRENsTTFWbkZqaVd3UC84NmhpQmhRR0lIc3A5d25RQzRGYzlEdE9SWWE0WmNSZDBRWU02SnVtN3M0WHZjNGk5d3AyUEVKZndXam5lSE9Pa3NUSmQ4STVzQjdobWRUOXVKTFB3OVFlQXQ0SUQrQ1NNRVh4aU5ONXhrMFlSZ1JxaXJsU284Nmc1WkdURXFIbnhBd1EvRk1qWWtHQkszVGZBWUdPME1OSURFMlVMN3ZEc1V3OEVzK0l4aTZSMGFuMmRoeGtSWlY3aHhTWmd2ak9FaXpKU05EdWdDMWJtV1krU0R3aWJFWkNIMGZTUTRjYWRCTW5XWHBnQ05JaXl2enlwUitybnJxU3pBTCtjYWpyU1FIb2wwRnFZR29XelVOQVBvQUdtaWpTc0RQODEwcE5EOUNjM3B6VVFHS2R3MFI3cHl3NmRMNHo3NUdRd0JzdjUrY2JiYWxGZjhUTWNTYmFQcE15T3NWSm1BdWUwbzFIWkhKZEgxOFpIemRiNGFOTHMxVnVUV3JicXplTnhpcmN2NWhCZWxRQzlqTFR3ZFhLeUJDdDlEUGpEMkZpTE9wVWNTa3d4eU0rcHVTNmJnYWwwZnZJekI5bWJyeWFJaDVIa0EzOXU3ajhjZ0J4TkRZdXJMdG11ZFNueVpMeGNKTlcvUy80Y2FGZi9iWlh2Y3RHRjJLc3ZRSGxrS3BueTNKU0orZ3QzV0NDdFI3YWIyVlhzZmU1YmlMSTVCQmRKTWt3TGR4NEM5dmVVc3h4RVB0NzhOOGtnSjlrUVo1WlJ4dWNnL3N2blJ2U2hVZGVqNk9OaVRzL3BrRkxlayt4dng2RStJK0tjaGtpZiswKzdWTVcyajRxeEg4ZDdLOWhZWHhqcGQrWm9BcWYzeVQzZ1FQVzlTcnI5VHl0MGVvZG1RU0UzaVhrU3pld0FOdytHWUxNcjNPcElGMWt1Nm5Tcklka2pDZEdoakJHTERZcFlIOUM4ck94eFRiZWFmRTUwZE1YbTVUMXp4MmZ6TGFOenVXSnJVKzQ3NElSempGN0JpL0hPS002cytnUCtNalR6VmM0amRpeitHR2dtWUpvanRkRlZud3ZuczZLQVQxZ0FGU0EzeCtYMFhKR0VRWnJLSmovbUw0cCtXeVZYSEhoL0lOcWhDQnU1eGp2SHZJNVBBNFdReVJEeExnKzM4dFR2T3dmUVR3N1FtdmREVkFOY2hLTTMwWUVkNVcyUWJvZll1TVpuamVTdXRIZzBQbmtzMkFpVVYrL0dnL0g5VG1OMEhmYytUSi9yUGRjYjluclQvU2F0RVQ3NUVyeFlSK1ZicGVha1VYNTA0K2J2ckNUUGdreTVFdExWblRYZjY3MjU5M0R2U1hxaDkycHZqZDVEMzBsUDB3L1IrK2taOWVZRkZmSlora1g2WmZvVitrMzZFL29VZlpwZVVBN2tQOU5YNldYNk92ZWtuRlo0VS9tUEI1SC8rQTcrZG42Q253THJCWEtvcVlENmc5aVNYZzlxU2QzSWJuekV2M09wUHdYYzFOZ24rbnRJWUVaVzVTNEhVQ0VEUEhGUENVTDhOREhLaWNZQ1VDaWs2Q0JnRFEyUVlnTFhRaWNnbHEzb242bnRxNENYcmNLaEd5SXF6RGlVUmlFcmphMmlEcUNRemFOYTExWTFpSWFxTEpWUnJiajdFamVveHExTHJhcVVVRTkzK1FiQlgxYmZpQkxrdUM2TEd0dGFRTTFTL0c2MzFOY2EraHBRblVKVkRkYVcrOVp2VitSK1FDRFg4U0htOFpNcE1JY2l0T3NoS2RFUlVNaXBCVWFBYjZjSTdORXA2Q1lCeGExbmFNQTNZTWRVMWVBU2pSbGE3UmpLVm9vTVVCWWx5bGFUeWdJTFhPRmE4NEQ3eTJZekM1eUREeU02NnR0MGZBblZ5TVQ1cEViVk5JaUtnVXQ0Zm9reUlSbjBYSE5rTmNTdGdpSVJvZ09oYkhqaDJGVEtVaEpTdjJzMENmcStXVi80eVhVT3ZQcTgvTm1RMzNmZnIwYkFabjZQUmtIYVBpK0NLWUkzeEJ6R1hMTjhIOEtKL3k3ZVNOYUFaUkl6eDRFTTdncW5ackQwaUdKbGNwOEdKeE94Y0VPNitibWdqSVFkZGlNL20yS0s4bUtnUUZzUnFkZkVTTDV2UFp0YmIrM0lEM0pXdW1PQnJsa3IveVBjL0ZRbWZacXZPNUVYbHdZL1oxeHBkT04wQVBZVTh4cXdzblJ4S0ttNktEb0hUZ2xnbmdaZVJNLytENmVjYmVhNU1RNHl4SVJTb1poR2V5a0Q0UjJRa0h1cE1NdUtpelZSQUlPT0FZTHBnWUx0TTlOZml0UkxiQVVid2Y0TXBxTCtlazd3Y3VWdThvaHpEL25yemwzSDd3WkhTaVFiaVlEcFF1bzNMVXFsVHRCektUcG5pQm1YZnJHU1paSWQzNDlqOG1UelNhSW5hUU5YRit6V29lL091U0R5Mlpsc3puYzN6TEpmMzVOcWJDZHpvajFvZm9VZ1BmaDFLWnlWSkUzdmFoV3dvc1p6NDF3eTV2Qnd0NnRYTlVEY3lsWG5Mb3RJNTRmN1VuTzBJMG9qR1lvdUhuSi9QOVZ3UDNLTlZ3RG1FSEY3QmdkdlZwTWprYW8vQnppOGc2OXRKSk40c1NMTXYxR0JJU3RSSTY4cTl6MVRob2labklXWUtXazhxb3hocFRHc3k5WmFSNUhyam9zSXRpV25QT3lNd2ZDMjNsN3ZFZm95WlQzdXBiMnl0OU83MU52dm5ZajlBQ2JESjNyUDl6N1orM09sTW55KzkyTHZuM3IvMnZ0cTcrWGUxM3IvMDN1bDl3MHRoMVZDMlc2TDVycWZKdUE4OGgvd1gvQVgrRVgrSW4rSnY4ei96di9CWDFmaVZ4dGRhTVVOM1pyYmNwWGJkbmU3SGZlQXUrcHV1SWZjVzkwNzNlTk9wUGkwUmhSdUU5UWFBa05mdk5iU3c2WEg3MEpJVFVCamFrUllnZG9hZEhFRmxqK01waFY0WFNLMHNEUmphcGlxVXdhcU5VSzNGWHNJWTZNMEVxQkNwaFRmRzNuYm9nMDZTMkFST3lQQ0V6VnVGVzZzc1ZIQWVtekJyMVdMalZXOExPQzF5Z2l1TlhoM2dBRWthc1ZBVkJhS081am93NW5Ha1NJRkhXa3daN2k5bHlJVU5laUtSdUJwc09BQlNUWmdSZUZSeHNyYjFzQjFpa29vTGJBTUZpTHJzcldrS2hWYnBxZ0VNYkZBQU5OQVFGS2lzamxNNitiVTFmdlQ0MGtsbjlNckRvcFNRejNpc1dGdzBUZ2Q3elZHVHRab09DYUFnVjJzZ0UxV1JyazhvZzZnZDcwOEtZS2xqL1pFZmRhVndTcFZEWXlrem9hTWFEVjBtc2pRdTBVajZNTGxHN0hZSzFOQnNxdXFUNEhORkMwQnM0ZW1pTjQrMHBCbk1FaWFTRjR2WjM5RVFWWEhOelN3bjhZRmpJZ0VwRGZXaGRTamlGSEdzc0N4M2VRRzhxdlVCMFZwUU44Z3pFdlVCckJmdEdHQWUxbU9kaGtOUk5FT0NBdzR2Y0VZSFl4QzNGUWtuTFNGL1RZT0QwemJ5dGJydDcrNkhDRWdhRk9EWDQwdFAxYjhlMVBWazJ0aXNvWG1LQnlKWFNnRnFDYndlS3M4Z2lXRkNEdTdWRnZqdllHbHVpRGFYNWFTUHFXeUFhbGlZdXpSZHhHOXhibGZhcWZvVE5qcXpOS0hNZC8vcyswSU9WS0dKblViTFNOTy94UlpsSHd0SnplR1VoaHFnbWxyYmF6UnNkbEM2OTYzbU42c096R0h3QjJjZUlyQmVWc0R3bXQ0YXpLclNPOEh3NEJvdTlBaGJ5UlNVYVArM0JjSEEzb25OZ3UzNG1QUWlyc3hGUDhLeUpPd05CNDRsd1lRZHZwUmNReVRUSVRpa0RGdmw0Zmc4aTNGd0E5dFRtNExVNm82TlpVd0FGQjRscTNzRzRWSTBYV01mL1BIczRXWUtXMThtUDQyQndzVGJFYUNtNzFnRHBwYUZsOU1PbzA1UExSSXhxa29oQkV0emJucUZOZSt2b2Vtdms1UXdXRFE0QmNwdjhEZCtadTFRcmV5aGgxSzNhZEpjczVITThWelVpQThjcDZ0YjRSdCtia1F3cGVTZTM5c3FNTVB0eUcvT1VqTU9sZVpGZ0ZtVFlwcFl0NittNlpJOTRHV0NmMTNVc3hoVjQ1ditIWGw4b3N0TUJ5czhYQVFaL1BVNXRTQ3h4UDYzVXpmcGFzcUNodmtjdVNKczM3V0t1WTRWWnhCeGErdjg5WVcrYlZpV3hUMWhSbHJ3S0pwekQ3YkNWQ0VDUzBRUUZLYUE4eVVnVlo0Z2Mrd01adnJuYzBvU2ptazBQSVcxc1FidGV4ZTFkM0p2YW9QUGQyemlwcVRzdFVvUXJ3bUdvZTJZSGdwUDBrYTNxcTFlbDdMNGlCS01VcURndm9EYWFCYldEUUFxaW41b2ZXUk9LbVlubTlmWS9ZdjdPUkFZSURvZ1BBQVdjNEJhT1l0Q3hLNGhlWTNmL2swREJwUGhadXBkOTJnSzl3dU40aFBsOEdHQ3hwbkJXc0lVclM5ZGJVWXJVM21zY3RxLzdJQ1Qvejg1MkltSTdNY0ljc1R1cHltMVRVYXJpUDVQanFDQzBPZGxFVG82c0VBajE1eDViVzhHR1E0U24zd0dBK01lLzNlajlCLzB3LzBQdDM3dkdLeHJ0Q1VIcVVuNkx2b2UraTk5RDYxMUQ2d3hPLy9DUDBxL1JyOUJ2MFdmWXcrVHMvUkoraDUrcU1PeC85ejlEZjBJcjBVV2Y0djA5ZEFZSUsxQnFLa0tySEdQbFhKSXlLZW9qYWJ3d1FNSVJhRnhGQTZOYUthN1dhbkJIc0pFZUFhby9tT2F1VXQ2a3pWOUFqSzZiajFFTEdKUFFWSktpSjZOR2tzM3RVNDZHZjdVWWJsM2FycGoxVW54RVJ4cjh2QStNajRRaVF6SXd6bllRcnU1Q0hwMzlXd1d3Q05zNXZEeWdRMUhnUWowYkVJWGljNjlkQ0JQMW0xeU9NbGZQTGthREtOTk9OSmRYVDF1TnlhamljR2JMd3NKaGpNc0dycDg2enY0UExVOGJOQ3RwYlB4VkRGdnR1eE1peGNON3UydXgxUTVtWUs2cm5Ub1g2bi81SXh0Y2pHMzRjOEdJdHBJY2JHMngrZU9nUzVRTEFwWU0veTJjdGI5dGxmNnV3UzgvbGM1N2xvWmRCMy9SV3hya2FTU3ViQzV2SEZERnBnUmFNaUwwMXpJOGhNcnR3OFJBMHA2T1psVE9pd2dwQVRUditRTVhFdU5obmlZZ1h2VWc1SlVpVERDejdOc3RVc09NbFF5TkpNckxBTEJTSThGNFdNenYxMnVuTGV3bGdvZjVCOW9pOFl5WDJzOGdWOXk3ZGU1eGQxNmc2UnFDTHNEcWZmVFFQaW0xK1VBd2NpYUk1bDc1NThYaEdsZ0tCT21DUXFRRlNSUi90QmdxcEpHSVNWVmNtb25NSG5PTVJYOFNtWGtzYVJDS2tIZ1BJSE9kMXVrb05LNStoWjZhTzR3NGJZTG8reTExaTgzeWJmUmNqeHZWSmlsMFZVdlVlK3cxYmRsRzNjOFhlcFd0K0NydHphUnNsdEkzSXFhSXJUdDF6M2xENnpZUUZFTnBoK1hGL01KajhWMzRydFp4cFl5WjlYaWNpUE8vZW9UL0s4Q3NQTkFXK0puRkRKQ2ZsdHNseURtL1QxN1VudVF2bVVjMCtWL0RZeFhGSHZpUnM4NURoSGpYZ1VST1pGdGpsUjBYNXdYaW9pTGNRSWtxckk4aFN2TzZvY1I0c2NkT2xOYjZZakxFTkVIY21naDVtZkJyNzV5bHNlR25vTE9xTC8weFFhN0VNZjBzQnY1TWFaeXc0a0RTbVpiRS9FVzErS2V6MlY0cEljRE9VTzN5L0hjbWtlUTlrV2pabjBKWGVaSEJXclRETEV5WGxKWXlUbjFWaWFoUmY1akJERllub0JCY24rNTJYN1NBNWZrTjlINVhJeHFOM2pjcXN5dUd4ZjJ1LzljcC9INVpnMHNreU1UWGMrNDRCNXNwTWUwMmZvQTcxRVpONmw5Y242SmZyTXpRL2VRODg0ZXVibW4vNGZwY3Njc0FCNDJtMlBNVzdDUUJSRVp3RVRoU0xLQlJMOWRDQmhaKzBDSkpJcUlCZVVGQlRwTE9NWVM4aUxqRUZDU3BuejVCdzVTdzZRS2dYalpSV2x3TTI4djU2ZCtRdmdCcDlRT0g5M2VIYXM0T0hOY1F0WGVIZmN4Z08rSEhmbytYSHM0VmJkTys3Q1UwOTBxczQxcDRtOTFiQkNENitPVyt6ZE9HN2pCUitPTy9SOE8vWWcrSFhjUlU4OVlncURMWTZvVUNESEdqVWRmYVFZVUNOb2hCaGhTSjRod1lHZUZYbk9PeVV3TmR0alZlVHJXdnJwUUNJZGpvWXlTdzdGU3VhR3Z3dW1OTDRkTVRVbFpZR01IWHR1bWJBUGl5emZieEpDYkgyMTFZcU96SFlIYkJlK1ZmNGxuZWNRWS9oMCtIOGJJalpsSFpzcXp5UUt0RXpFTmxMRHNSLzV6V3FYOWxteXFlSmMySE5oVnBNV1dHMjZzY3lxWFdGSzBUb010Tlp5SWVRRW5UaElUZ0FBQUhqYWJjNUhUa05oREFEaE53a1FlbStoaGQ3TCsrMDBKRGEwM0lVTk8rN0h6UURCTExGa3pjcjZYRFdxMy9uNnJOclZmL1B3czFTTnFrbURKbU9NTTBHTFNhYVlab1paNXBobmdVV1dXR2FGVmRaWVo0Tk4ybXl4elE2NzdORmhud01PT2VLWUUwNDU0NXdMTHJuaW1odHV1YU9tRUNSZGV2UVpNT1MrOWZIK05pcDFiUWYyeVQ3YkYvdHFSMzh0M3BWaXc2YnQycDd0VzUweXRQNVJIcTErMFMvNlJiL29oMzdvaDM3b2gzN29oMzdvaDM3b2gzN29oMzdvaDM3b3AzN3FwMzdxcDM3cXAzN3FwMzdxcDM3cXAzN3FwMzdxZCtNYkpIU0VzQUFBQUFBQUFmLy9BQUo0Mm1OZ1lHQmtBSUtMcC9jYmd1aExyNHJQd21nQVY1c0loZ0FBXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59IiwiLyogIFBSSU5UIFNUWUxFUyAqL1xyXG4vKiAgU3R5bGluZyBmb3IgcHJpbnRlZCBjb250ZW50LlxyXG4gKiAgQWRhcHRlZCBmcm9tIEhUTUw1QlAuXHJcbiAqICBodHRwOi8vaHRtbDVib2lsZXJwbGF0ZS5jb20vICovXHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG5cclxuICAgIC8qICBVbml2ZXJzYWwgc2VsZWN0b3IuXHJcbiAgICAgKiAgUmVzZXQgYWxsIGNvbnRlbnQgdG8gdHJhbnNwYXJlbnQgYmFja2dyb3VuZCxcclxuICAgICAqICBibGFjayBjb2xvciwgYW5kIHJlbW92ZSBib3ggYW5kIHRleHQgc2hhZG93cy4gKi9cclxuICAgICoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAvKiAgU3BlY2lmaWVzIHBhZ2UgbWFyZ2luICovXHJcbiAgICBAcGFnZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwLjVjbTtcclxuICAgIH1cclxuXHJcbiAgICAvKiAgVW5kZXJsaW5lIGFsbCBsaW5rcyAqL1xyXG4gICAgYSwgYTp2aXNpdGVkIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuXHJcbiAgICAvKiAgU2hvdyBVUkwgYWZ0ZXIgbGlua3MgKi9cclxuICAgIGFbaHJlZl06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC8qICBEb24ndCBzaG93IFVSTCBmb3IgaW50ZXJuYWwgbGlua3MgKi9cclxuICAgIGFbaHJlZl49XCIjXCJdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC8qICBTcGVjaWZpZXMgdGhlIG1pbmltdW0gbnVtYmVyIG9mIGxpbmVzIHRvIHByaW50IGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBhIHBhZ2UuICovXHJcbiAgICBwLCBoMSwgaDIsIGgzIHtcclxuICAgICAgICBvcnBoYW5zOiAzO1xyXG4gICAgICAgIHdpZG93czogMztcclxuICAgIH1cclxuXHJcbiAgICAvKiAgQXZvaWQgaW5zZXJ0aW5nIGEgcGFnZSBicmVhayBhZnRlciBoZWFkZXJzICovXHJcbiAgICBoMSwgaDIsIGgzIHtcclxuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICAvKiAgQ2hhbmdlIGJvcmRlciBjb2xvciBvbiBibG9ja3F1b3RlcyBhbmQgcHJlZm9ybWF0dGVkIHRleHQuXHJcbiAgICAgKiAgQXZvaWQgcGFnZSBicmVha3MgaW5zaWRlIHRoZSBjb250ZW50ICovXHJcbiAgICBwcmUsIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzk5OTtcclxuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyogIERpc3BsYXllZCBhcyBhIHRhYmxlIGhlYWRlciByb3cgZ3JvdXAgKi9cclxuICAgIHRoZWFkIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XHJcbiAgICB9XHJcblxyXG4gICAgLyogIEF2b2lkIGluc2VydGluZyBhIHBhZ2UgYnJlYWsgaW5zaWRlIHRhYmxlIHJvd3MgYW5kIGltYWdlcyAqL1xyXG4gICAgdHIsIGltZyB7XHJcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyogQ3VzdG9tIHRoaW5ncyAqL1xyXG5cclxuQHBhZ2Uge1xyXG5cdG1hcmdpbjogMC43Y20gMS40Y207IFxyXG59XHJcblxyXG5cclxuQG1lZGlhIHByaW50XHJcbntcclxuXHQuYmFjay10b3AtbGluayB7IGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50OyB9XHJcblx0XHJcblx0Lm1haW4tZm9vdGVyIHtcclxuXHRcclxuXHRcdG1hcmdpbi10b3A6IDFjbTsgXHJcblx0XHRcclxuXHRcdC5zaXRlbWFwIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cdFx0XHJcblx0XHRhLmJhY2stdG9wLWxpbmsgeyBkaXNwbGF5OiBub25lOyB9XHJcblx0XHRcclxuXHRcdC5jb2xvZm9uIHtcclxuXHRcdFx0XHJcblx0XHRcdGxpIHsgZGlzcGxheTogbm9uZTt9XHJcblx0XHRcdGxpOmZpcnN0LW9mLXR5cGUgeyBkaXNwbGF5OiBibG9jazsgfVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdC5tYWluLWhlYWRlciB7XHJcblxyXG5cdFx0aGVpZ2h0OiAxMjBweCFpbXBvcnRhbnQ7IFxyXG5cdFx0XHJcblx0XHQubG9nbyB7IG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDsgIGltZyB7IGRpc3BsYXk6IGJsb2NrOyB9fVxyXG5cdFx0XHJcblx0XHQudG9nZ2xlLS1uYXZpZ2F0aW9uIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdC5uYXYtLXF1aWNrIHsgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7IH1cclxuXHRcclxuXHQucGFnZS1zZWN0aW9uIHtcclxuXHRcdFxyXG5cdFx0ZGlzcGxheTogbm9uZTsgXHJcblx0XHJcblx0fVxyXG5cdFxyXG5cdC53aWRnZXQtLXNoYXJlIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cdC53aWRnZXQtLXRhZ3MgeyBkaXNwbGF5OiBub25lOyB9XHJcblx0XHJcblx0LnBhZ2UtaGVhZGVyIHtcclxuXHRcdFxyXG5cdFx0LnBhZ2UtaGVhZGVyLWNudCB7IGhlaWdodDogYXV0bzsgfVxyXG5cdFx0LmNvbnRhaW5lciB7IHBvc2l0aW9uOiBzdGF0aWM7IHBhZGRpbmctdG9wOiAwIWltcG9ydGFudDsgcGFkZGluZy1ib3R0b206IDA7IHBhZGRpbmctbGVmdDogMDsgfVxyXG5cdFx0XHJcblx0XHRoMSB7IHBhZGRpbmctdG9wOiAwOyBjb2xvcjogJGJsYWNrIWltcG9ydGFudDsgZm9udC1zaXplOiAzNHB0IWltcG9ydGFudDsgfVxyXG5cdFx0XHJcblx0XHQmLmhlYWRlci0tb3ZlcmxheSAucGFnZS1oZWFkZXItY250OjphZnRlciB7IGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50OyB9XHJcblx0fVxyXG5cdFxyXG5cdC5wYWdlLS1wcm9qZWN0LWRldGFpbCB7XHJcblx0XHRcclxuXHRcdC5wYWdlLWFzaWRlIHsgXHJcblx0XHRcdGZsb2F0OiByaWdodDsgd2lkdGg6IDZjbTsgYm9yZGVyLWxlZnQ6IDFwdCBzb2xpZCAkbGlnaHQtYmx1ZTsgZm9udC1zaXplOiBlbSgxNHB4KTsgcGFkZGluZy1sZWZ0OiAxY207IG1hcmdpbi1sZWZ0OiAxY207IG1hcmdpbi1ib3R0b206IDFjbTsgIFxyXG5cdFx0XHRwYWRkaW5nLXRvcDogMDsgXHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAtMTIwcHg7IFxyXG5cdFx0XHRcclxuXHRcdFx0LndpZGdldCB7IG1hcmdpbjogMDsgIH1cclxuXHRcdFxyXG5cdFx0XHQud2lkZ2V0LS1zdW1tYXJ5IHsgXHJcblx0XHRcdFxyXG5cdFx0XHRcdC5saXN0LS1pY29uIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQud2lkZ2V0LS1tYXAgeyBcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1MHB4OyBcclxuXHRcdFx0XHRmaWdjYXB0aW9uIHsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAkd2hpdGU7IGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IHBhZGRpbmc6IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBweDsgICB9XHJcblx0XHRcdFx0ZmlnY2FwdGlvbiBzdHJvbmcgeyBkaXNwbGF5OiBibG9jazsgfVxyXG5cdFx0XHR9XHJcblx0XHRcclxuXHRcdH1cclxuXHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0LnBhZ2UtY29udGVudCwgLnBhZ2UtaW50cm8ge1xyXG5cdFx0XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0d2lkdGg6IDEwY20haW1wb3J0YW50O1xyXG5cdFx0Zm9udC1zaXplOiAxMXB0OyBcclxuXHRcdFxyXG5cdH1cclxuXHRcclxufVxyXG4iLCIvKiEgZmFuY3lCb3ggdjIuMS41IGZhbmN5YXBwcy5jb20gfCBmYW5jeWFwcHMuY29tL2ZhbmN5Ym94LyNsaWNlbnNlICovXG4uZmFuY3lib3gtd3JhcCxcbi5mYW5jeWJveC1za2luLFxuLmZhbmN5Ym94LW91dGVyLFxuLmZhbmN5Ym94LWlubmVyLFxuLmZhbmN5Ym94LWltYWdlLFxuLmZhbmN5Ym94LXdyYXAgaWZyYW1lLFxuLmZhbmN5Ym94LXdyYXAgb2JqZWN0LFxuLmZhbmN5Ym94LW5hdixcbi5mYW5jeWJveC1uYXYgc3Bhbixcbi5mYW5jeWJveC10bXBcbntcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRib3JkZXI6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5mYW5jeWJveC13cmFwIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDgwMjA7XG59XG5cbi5mYW5jeWJveC1za2luIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuXHRjb2xvcjogIzQ0NDtcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuXHQtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4uZmFuY3lib3gtb3BlbmVkIHtcblx0ei1pbmRleDogODAzMDtcbn1cblxuLmZhbmN5Ym94LW9wZW5lZCAuZmFuY3lib3gtc2tpbiB7XG5cdC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuXHQtbW96LWJveC1zaGFkb3c6IDAgMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcblx0Ym94LXNoYWRvdzogMCAxMHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4uZmFuY3lib3gtb3V0ZXIsIC5mYW5jeWJveC1pbm5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhbmN5Ym94LWlubmVyIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZhbmN5Ym94LXR5cGUtaWZyYW1lIC5mYW5jeWJveC1pbm5lciB7XG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLmZhbmN5Ym94LWVycm9yIHtcblx0Y29sb3I6ICM0NDQ7XG5cdGZvbnQ6IDE0cHgvMjBweCBcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMTVweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZhbmN5Ym94LWltYWdlLCAuZmFuY3lib3gtaWZyYW1lIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5mYW5jeWJveC1pbWFnZSB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0bWF4LWhlaWdodDogMTAwJTtcbn1cblxuI2ZhbmN5Ym94LWxvYWRpbmcsIC5mYW5jeWJveC1jbG9zZSwgLmZhbmN5Ym94LXByZXYgc3BhbiwgLmZhbmN5Ym94LW5leHQgc3BhbiB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9pbWcvSWNvbnMvZmFuY3lib3hfc3ByaXRlLnBuZycpO1xufVxuXG4jZmFuY3lib3gtbG9hZGluZyB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luLXRvcDogLTIycHg7XG5cdG1hcmdpbi1sZWZ0OiAtMjJweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTA4cHg7XG5cdG9wYWNpdHk6IDAuODtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR6LWluZGV4OiA4MDYwO1xufVxuXG4jZmFuY3lib3gtbG9hZGluZyBkaXYge1xuXHR3aWR0aDogNDRweDtcblx0aGVpZ2h0OiA0NHB4O1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvaW1nL0ljb25zL2ZhbmN5Ym94X2xvYWRpbmcuZ2lmJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG59XG5cbi5mYW5jeWJveC1jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMThweDtcblx0cmlnaHQ6IC0xOHB4O1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHotaW5kZXg6IDgwNDA7XG59XG5cbi5mYW5jeWJveC1uYXYge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0d2lkdGg6IDQwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ltZy9JY29ucy9ibGFuay5naWYnKTsgLyogaGVscHMgSUUgKi9cblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuXHR6LWluZGV4OiA4MDQwO1xufVxuXG4uZmFuY3lib3gtcHJldiB7XG5cdGxlZnQ6IDA7XG59XG5cbi5mYW5jeWJveC1uZXh0IHtcblx0cmlnaHQ6IDA7XG59XG5cbi5mYW5jeWJveC1uYXYgc3BhbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdHdpZHRoOiAzNnB4O1xuXHRoZWlnaHQ6IDM0cHg7XG5cdG1hcmdpbi10b3A6IC0xOHB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHotaW5kZXg6IDgwNDA7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZhbmN5Ym94LXByZXYgc3BhbiB7XG5cdGxlZnQ6IDEwcHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM2cHg7XG59XG5cbi5mYW5jeWJveC1uZXh0IHNwYW4ge1xuXHRyaWdodDogMTBweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzJweDtcbn1cblxuLmZhbmN5Ym94LW5hdjpob3ZlciBzcGFuIHtcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmZhbmN5Ym94LXRtcCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtOTk5OTlweDtcblx0bGVmdDogLTk5OTk5cHg7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0bWF4LXdpZHRoOiA5OTk5OXB4O1xuXHRtYXgtaGVpZ2h0OiA5OTk5OXB4O1xuXHRvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBPdmVybGF5IGhlbHBlciAqL1xuXG4uZmFuY3lib3gtbG9jayB7XG5cdG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcblx0d2lkdGg6IGF1dG87XG59XG5cbi5mYW5jeWJveC1sb2NrIGJvZHkge1xuXHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5mYW5jeWJveC1sb2NrLXRlc3Qge1xuXHRvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLmZhbmN5Ym94LW92ZXJsYXkge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogbm9uZTtcblx0ei1pbmRleDogODAxMDtcblx0YmFja2dyb3VuZDogdXJsKCcvdHlwbzNjb25mL2V4dC9ib3NrYWxpc190ZW1wbGF0ZS9SZXNvdXJjZXMvUHVibGljL2ltZy9JY29ucy9mYW5jeWJveF9vdmVybGF5LnBuZycpO1xufVxuXG4uZmFuY3lib3gtb3ZlcmxheS1maXhlZCB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0Ym90dG9tOiAwO1xuXHRyaWdodDogMDtcbn1cblxuLmZhbmN5Ym94LWxvY2sgLmZhbmN5Ym94LW92ZXJsYXkge1xuXHRvdmVyZmxvdzogYXV0bztcblx0b3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4vKiBUaXRsZSBoZWxwZXIgKi9cblxuLmZhbmN5Ym94LXRpdGxlIHtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRmb250OiBub3JtYWwgMTNweC8yMHB4IFwiSGVsdmV0aWNhIE5ldWVcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0ei1pbmRleDogODA1MDtcbn1cblxuLmZhbmN5Ym94LW9wZW5lZCAuZmFuY3lib3gtdGl0bGUge1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uZmFuY3lib3gtdGl0bGUtZmxvYXQtd3JhcCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRyaWdodDogNTAlO1xuXHRtYXJnaW4tYm90dG9tOiAtMzVweDtcblx0ei1pbmRleDogODA1MDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZmFuY3lib3gtdGl0bGUtZmxvYXQtd3JhcCAuY2hpbGQge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1yaWdodDogLTEwMCU7XG5cdHBhZGRpbmc6IDJweCAyMHB4O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgLyogRmFsbGJhY2sgZm9yIHdlYiBicm93c2VycyB0aGF0IGRvZXNuJ3Qgc3VwcG9ydCBSR0JhICovXG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNXB4O1xuXHQtbW96LWJvcmRlci1yYWRpdXM6IDE1cHg7XG5cdGJvcmRlci1yYWRpdXM6IDE1cHg7XG5cdHRleHQtc2hhZG93OiAwIDFweCAycHggIzIyMjtcblx0Y29sb3I6ICNGRkY7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRsaW5lLWhlaWdodDogMjRweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZhbmN5Ym94LXRpdGxlLW91dHNpZGUtd3JhcCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLXRvcDogMTBweDtcblx0Y29sb3I6ICNmZmY7XG59XG5cbi5mYW5jeWJveC10aXRsZS1pbnNpZGUtd3JhcCB7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4uZmFuY3lib3gtdGl0bGUtb3Zlci13cmFwIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdGNvbG9yOiAjZmZmO1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRiYWNrZ3JvdW5kOiAjMDAwO1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC44KTtcbn1cblxuLypSZXRpbmEgZ3JhcGhpY3MhKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbm9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxub25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpe1xuXG5cdCNmYW5jeWJveC1sb2FkaW5nLCAuZmFuY3lib3gtY2xvc2UsIC5mYW5jeWJveC1wcmV2IHNwYW4sIC5mYW5jeWJveC1uZXh0IHNwYW4ge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3R5cG8zY29uZi9leHQvYm9za2FsaXNfdGVtcGxhdGUvUmVzb3VyY2VzL1B1YmxpYy9pbWcvSWNvbnMvZmFuY3lib3hfc3ByaXRlQDJ4LnBuZycpO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogNDRweCAxNTJweDsgLypUaGUgc2l6ZSBvZiB0aGUgbm9ybWFsIGltYWdlLCBoYWxmIHRoZSBzaXplIG9mIHRoZSBoaS1yZXMgaW1hZ2UqL1xuXHR9XG5cblx0I2ZhbmN5Ym94LWxvYWRpbmcgZGl2IHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy90eXBvM2NvbmYvZXh0L2Jvc2thbGlzX3RlbXBsYXRlL1Jlc291cmNlcy9QdWJsaWMvaW1nL0ljb25zL2ZhbmN5Ym94X2xvYWRpbmdAMnguZ2lmJyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAyNHB4IDI0cHg7IC8qVGhlIHNpemUgb2YgdGhlIG5vcm1hbCBpbWFnZSwgaGFsZiB0aGUgc2l6ZSBvZiB0aGUgaGktcmVzIGltYWdlKi9cblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdERFRkFVTFQgVFlQT1JHQVBIWSBcblxuXHRCYXNpYyBzdHlsaW5nIGZvciBkaWZmZXJlbnQgdHlwb2dyYWhpYyBlbGVtZW50cyBcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRib2R5IHtcblx0ICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblx0ICAgIGZvbnQtc2l6ZTogMTZweDtcblx0ICAgIGxpbmUtaGVpZ2h0OiAkYm9keS1saW5lLWhlaWdodDtcblx0ICAgIGNvbG9yOiAkYmxhY2s7XG5cdCAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZztcblx0ICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIH1cblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFxuXHRcdGJvZHkge1xuXHRcdFx0Zm9udC1zaXplOiAkYm9keS1mb250LXNpemU7IFxuXHRcdH1cblx0XG5cdH1cblx0XG5cdFxuXHRcblx0JXN0cm9uZywgc3Ryb25nIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblx0XG5cdGVtIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cblx0c3ViLCBzdXAge1xuXHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgICAgZm9udC1zaXplOiA4NSU7XG5cdCAgICBsaW5lLWhlaWdodDogMDtcblx0ICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblx0fVxuXHRcblx0c3VwIHtcblx0ICAgIHRvcDogLTAuNWVtO1xuXHR9XG5cdFxuXHRzdWIge1xuXHQgICAgYm90dG9tOiAtMC4yNWVtO1xuXHR9XG5cdFxuXHQ6OnNlbGVjdGlvbiB7XG5cdCAgICBjb2xvcjogJHdoaXRlO1xuXHQgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG5cdH1cblx0XG5cdDo6LW1vei1zZWxlY3Rpb24ge1xuXHQgICAgY29sb3I6ICR3aGl0ZTtcblx0ICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuXHR9XG5cdFx0XG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHRCYXNpYyBwYXJhZ3JhcGggc3R5bGVzXG5cdFx0XG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHRcblx0XHRwIHsgIG1hcmdpbi1ib3R0b206IDEuNTI5NDExNzY1ZW07IH1cblxuXHRcdC5wYWdlLWludHJvIHsgQGV4dGVuZCAlc3Ryb25nOyB9XG5cdFx0XG5cdFx0LnRleHQtLXNtYWxsIHsgZm9udC1zaXplOiBlbSgxNnB4KTsgfVxuXHRcdFxuXHRcdC5jb250YWluZXIgPiBwIHsgbWF4LXdpZHRoOiA4MCU7IH1cblxuXHRcdHA6bGFzdC1vZi10eXBlIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXHRcdFxuXHRcdC5wYWdlLWNvbnRlbnQgLm1ldGEgeyBcbiBcblx0XHQgXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdCBcdGxpbmUtaGVpZ2h0OiA0MHB4OyBcblx0XHQgXHRtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuXHRcdCBcdG1hcmdpbi1ib3R0b206IC0xNXB4OyAgXG5cdFx0IFx0XG5cdFx0IFx0QGluY2x1ZGUgY2xlYXJmaXg7IFxuXHRcdCBcdFxuXHRcdCBcdC50YWcge1xuXHRcdFx0IFx0YmFja2dyb3VuZDogJG1lZGl1bS1ibHVlOyBcblx0XHRcdCBcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG5cdFx0XHQgXHRmb250LXdlaWdodDogYm9sZDsgXG5cdFx0XHQgXHRoZWlnaHQ6IDQwcHg7XG5cdFx0XHQgXHRwYWRkaW5nOiAwIDIwcHg7IFxuXHRcdFx0IFx0bWFyZ2luLWJvdHRvbTogMTBweDsgIFxuXHRcdFx0IFx0ZmxvYXQ6IGxlZnQ7IFxuXHRcdFx0XG5cdFx0XHQgXHRcblx0XHQgXHR9XG5cdFx0IFx0PiAqIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmbG9hdDogbGVmdDsgfVxuXHRcdCBcdFxuXHRcdCBcdHNwYW46bnRoLWNoaWxkKDIpIHsgY2xlYXI6IGJvdGg7IH1cblx0XHQgXHRcblx0XHQgXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFx0XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWJvdHRvbTogMDsgXG5cdFx0XHRcdFx0ICBcblx0XHRcdFx0IC50YWcge1xuXHRcdFx0XHQgXHQgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHQgXHQgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XHQgXHQgbWFyZ2luLWJvdHRvbTogMDsgXG5cdFx0XHRcdCBcdCBmbG9hdDogbm9uZTsgXG5cdFx0XHRcdCAgfVxuXHRcdFx0XHQgID4gKiB7IGZsb2F0OiBub25lOyB9XG5cdFx0XHR9XG5cdFx0IFxuXHRcdCB9XG5cdFx0XG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHRCYXNpYyBIZWFkaW5nIHN0eWxlc1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XG5cdFx0aDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0ICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0ICAgIG1hcmdpbi1ib3R0b206IDFlbTtcblx0XHQgICAgcGFkZGluZy10b3A6IDFlbTtcblx0XHR9XG5cdFx0XG5cdFx0aDEsIC5oMSB7XG5cdFx0ICAgIGZvbnQtc2l6ZTogZW0oODBweCk7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiBlbSg3OHB4LCA4MHB4KTtcblx0XHQgICAgcGFkZGluZy10b3A6IC41ZW07XG5cdFx0ICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdH1cblx0XHRcblx0XHRoMiwgLmgyIHtcblx0XHQgICAgZm9udC1zaXplOiBlbSgzNHB4KTtcblx0XHQgICAgbGluZS1oZWlnaHQ6IGVtKDQ1cHgsIDM0cHgpO1xuXHRcdCAgICBmb250LXdlaWdodDogYm9sZDtcblx0XHR9XG5cdFx0XG5cdFx0aDMsIC5oMyB7XG5cdFx0ICAgIGZvbnQtc2l6ZTogZW0oMjRweCk7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiBlbSgyN3B4LCAyNHB4KTtcblx0XHQgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0fVxuXHRcdFxuXHRcdGg0LCBoNSwgaDYsXG5cdFx0Lmg0LCAuaDUsIC5oNiB7XG5cdFx0ICAgIGZvbnQtc2l6ZTogZW0oMThweCk7XG5cdFx0ICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0LnBhZ2UtY29udGVudCB7XG5cdFxuXHRcdFx0aDIsaDMsaDQsaDUsaDYge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA3cHg7IFxuXHRcdFx0XHRwYWRkaW5nLXRvcDogMDsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHRCbG9ja3F1b3RlXG5cdFx0XG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHRcblx0XHRibG9ja3F1b3RlIHtcblx0XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdG1hcmdpbjogMjBweCAtMjBweCAwIC0yMHB4O1xuXHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7IFxuXHRcdFx0cGFkZGluZzogNDBweCAyMHB4OyBcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0XHRcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAnQWRlbGxlIFcwMSBJdGFsaWMnO1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDI0cHgpO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMTU7ICBcblx0XHRcdH1cblx0XHRcdGNpdGUgeyBtYXJnaW4tdG9wOiAyMHB4OyBkaXNwbGF5OiBibG9jazsgfVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgcXVvdGUpO1xuXHRcdFx0XG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHRcdFx0XHR0b3A6IC00MHB4O1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDYwcHgpOyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFx0XG5cdFx0XHRcdHdpZHRoOiA4MCU7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHRwYWRkaW5nOiA0MHB4OyBcblx0XHRcdFx0XG5cdFx0XHRcdHNwYW4geyBmb250LXNpemU6IGVtKDM0cHgpOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHRMaXN0c1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XG5cdFx0Ly9kZWZhdWx0IHN0eWxlc1xuXHRcdFxuXHRcdHVsLCBvbCB7XG5cdFx0ICAgIG1hcmdpbi1ib3R0b206IDEuNTI5NDExNzY1ZW07XG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiAyZW07XG5cdFx0fVxuXHRcdFxuXHRcdHVsIHVsLCB1bCBvbCwgb2wgb2wsIG9sIHVsIHtcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdFx0XG5cdFx0dWwge1xuXHRcdCAgICBsaXN0LXN0eWxlOiBkaXNjO1xuXHRcdH1cblx0XHRcblx0XHRvbCB7XG5cdFx0ICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG5cdFx0fVxuXHRcdFxuXHRcdC8vY3VzdG9tIHN0eWxlc1xuXHRcdFxuXHRcdC5saXN0LCBcblx0XHQlbGlzdCB7XG5cdFx0XHRcblx0XHRcdCYtLWNsZWFuIHtcblx0XHRcdFx0XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTsgXG5cdFx0XHRcdFxuXHRcdFx0XHRsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXHRcdFx0XHRcblx0XHRcdFx0bGkuaGVhZGluZyB7IHBhZGRpbmctbGVmdDogMDsgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCYtLWJ1bGxldCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDE1cHghaW1wb3J0YW50OyBcblx0XHRcdFx0XG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7IFxuXHRcdFx0XHRcdFx0Y29udGVudDonLSc7IFxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0bGVmdDogLTE1cHg7IFxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxM3B4KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdCYtLXN0cmlwZWQge1xuXHRcdFx0XHRcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGJvcmRlci1zdHlsZTogc29saWQ7IFxuXHRcdFx0XHRcdGJvcmRlci10b3Atd2lkdGg6IDFweDsgXG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkbWVkaXVtLWJsdWU7IFxuXHRcdFx0XHRcdHBhZGRpbmc6IDE1cHg7IFxuXHRcdFx0XHRcblx0XHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyBcblx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYtLXN0cmlwZWQtbGlnaHQge1xuXHRcdFx0XHRcblx0XHRcdFx0bGkgeyBcblx0XHRcdFx0XHRib3JkZXItY29sb3I6IHJnYmEoJHdoaXRlLCAwLjIpOyBcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOmZvY3VzLFxuXHRcdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdFx0Jjpmb2N1cyArIGxpLCBcblx0XHRcdFx0XHQmOmhvdmVyICsgbGkgeyBib3JkZXItY29sb3I6IHJnYmEoJHdoaXRlLCAwLjIpOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRsaSA+IGEgeyBcblx0XHRcdFx0XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTsgXG5cdFx0XHRcdFx0Jjpmb2N1cywgXG5cdFx0XHRcdFx0Jjpob3ZlciB7IGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgY29sb3I6ICR5ZWxsb3c7IH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQmLS1pY29uIHtcblx0XHRcdFx0XG5cdFx0XHRcdEBleHRlbmQgJWxpc3QtLWNsZWFuOyBcblx0XHRcdFx0XG5cdFx0XHRcdGxpIHsgXG5cdFx0XHRcdFxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMzBweDsgIFxuXHRcdFx0XHRcblx0XHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRhIHsgQGV4dGVuZCAlbGluay0tYm9yZGVyZWQ7IH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQmLS1saW5rcyB7XG5cdFx0XHRcdFxuXHRcdFx0XHRAZXh0ZW5kICVsaXN0LS1jbGVhbjsgXG5cdFx0XHRcdEBleHRlbmQgJWxpc3QtLXN0cmlwZWQ7IFxuXHRcdFx0XHRcblx0XHRcdFx0bGkgeyBwYWRkaW5nOiAwOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRhIHtcblx0XHRcblx0XHRcdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctcmlnaHQpO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcblx0XHRcdFx0XHRwYWRkaW5nOiA4cHggMDsgcGFkZGluZy1sZWZ0OiAyNXB4OyBcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDE2cHgpOyBcblx0XHRcdFx0XG5cdFx0XHRcdFx0Y29sb3I6ICRibGFjazsgXG5cdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdGxlZnQ6IDVweDsgXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDAuN2VtOyBcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyLjI1OyBcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogbGVmdCAxMDBtcyBlYXNlLWluLW91dDsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6Zm9jdXMsIFxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ibHVlOyBcblx0XHRcdFx0XHRcdG91dGxpbmU6IDA7IFx0XHRcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0bGVmdDogN3B4OyBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRsaTpob3Zlcixcblx0XHRcdFx0bGk6aG92ZXIgKyBsaSB7IGJvcmRlci1jb2xvcjogJGxpZ2h0LWJsdWU7fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji0tZHJvcGRvd24ge1xuXHRcdFx0XHRcblx0XHRcdFx0QGV4dGVuZCAlbGlzdC0tc3RyaXBlZDsgXG5cdFx0XHRcdEBleHRlbmQgJWxpc3QtLXN0cmlwZWQtbGlnaHQ7IFxuXHRcdFx0XHRcblx0XHRcdFx0ZGlzcGxheTogbm9uZTsgXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgXHRcdFxuXHRcdFx0XHR3aWR0aDogMTAwJTsgXG5cdFx0XHRcdG1heC13aWR0aDogNTAwcHg7IFxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXHRcdFx0XHRcblx0XHRcdFx0XHQmLmxpc3QtLWljb24ge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA3MDBweDtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0dG9wOiAxMDAlOyBcblx0XHRcdFx0ei1pbmRleDogOTk5O1xuXHRcdFx0XHRib3JkZXI6MXB4IHNvbGlkICM0MTU0NzE7IFxuXHRcdFx0XHRcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bzsgXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRcdFx0XHRwYWRkaW5nOiAxNHB4IDIwcHg7IFxuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQgeyBib3JkZXItdG9wOiAwOyB9XG5cdFx0XHRcdFx0JjpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogMDsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGNsZWFyZml4OyBcblx0XHRcdFx0XHRcblx0XHRcdFx0fVx0XG5cdFx0XHRcdCYubGlzdC0taWNvbiBsaSB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA2MHB4OyBcblx0XHRcdFx0XHQmOjpiZWZvcmUgeyBsZWZ0OiAyMHB4OyB9XG5cdFx0XHRcdH1cblx0XHRcdFx0YSB7IFxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7IFxuXHRcdFx0XHRcdEBpbmNsdWRlIGNsZWFyZml4OyBcblx0XHRcdFx0XHQmOmhvdmVyIHsgY29sb3I6ICR3aGl0ZTsgfVxuXHRcdFx0XHR9XG5cdFx0XHRcdGxpID4gYSB7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7ICY6aG92ZXIgeyBjb2xvcjogJHdoaXRlOyB9IH1cblx0XHRcdFx0LmFjdGlvbnMgeyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxNXB4OyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQuZG93bmxvYWQgeyBtYXJnaW46IDJweDsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwOyBcblx0XHRcdFx0XHRcdHdpZHRoOiAxNDBweDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0OyBcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFxuXHRcdFx0XHRzdHJvbmcgeyBcblx0XHRcdFx0XHRmb250LXdlaWdodDogbm9ybWFsOyBcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDI2MHB4XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0d2lkdGg6IDQ2MHB4OyBcblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRhIHN0cm9uZyB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHR3aWR0aDogODAlOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0aSB7IGZvbnQtc2l6ZTogZW0oMTZweCwgMThweCk7IH1cblx0XHRcblx0XHRcblx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji0tc2l0ZW1hcCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRhIHsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgaWNvbihiZWZvcmUsIHN1Yik7IFxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7IFxuXHRcdFx0XHRcdGJvcmRlci1zdHlsZTogc29saWQ7IFxuXHRcdFx0XHRcdGJvcmRlci10b3Atd2lkdGg6IDFweDsgXG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogJG1lZGl1bS1ibHVlOyBcblx0XHRcdFx0XHRwYWRkaW5nOiA4cHggMDtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IC0xcHg7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7IGNvbG9yOiAkbWVkaXVtLWJsdWU7IHRvcDogOHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDVweDsgdHJhbnNpdGlvbjogbGVmdCAxMDBtcyBlYXNlLWluLW91dDsgfSBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRzcGFuIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wOyB9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Jjpmb2N1cywgXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7IFxuXHRcdFx0XHRcdFx0b3V0bGluZTogMDsgXG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0bGVmdDogN3B4OyBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHQ+IGxpIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQ+IGEgeyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCY6OmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHR1bCB7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0dWwgdWwgeyBtYXJnaW4tbGVmdDogMzBweDsgfVxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Ly9saTpsYXN0LWNoaWxkID4gYSB7IGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0LnBhZ2UtY29udGVudCB7XG5cdFxuXHRcdFx0dWwsIG9sIHsgbWFyZ2luLWJvdHRvbTogMS41Mjk0MTE3NjVlbTsgfVxuXHRcdFx0dWw6bm90KC5saXN0LS1vdmVydmlldy1hY3Rpb24pOm5vdCgubGlzdC0tZHJvcGRvd24pOm5vdChbZGF0YS1waWUtaWRdKSwgb2wgIHtcblx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDMwcHg7IFxuXHRcdFx0XHRcblx0XHRcdFx0bGkgeyBcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XHRcdGNvdW50ZXItaW5jcmVtZW50OiBzdGVwLWNvdW50ZXI7XG5cdFx0XHRcdFx0QGluY2x1ZGUgaWNvbihiZWZvcmUpOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOjpiZWZvcmUgeyBcblx0XHRcdFx0XHRcdGNvbnRlbnQ6Jy0nOyBcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdGxlZnQ6IC0zMHB4OyBcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTNweCk7XG5cdFx0XHRcdFx0XHR0b3A6IDVweDsgXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdCYubGlzdC0tY2hlY2tzIGxpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgY2hlY2ttYXJrLCBmYWxzZSk7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFxuXHRcdFx0b2wgbGk6OmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IGNvdW50ZXIoc3RlcC1jb3VudGVyKTtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICdGdXR1cmEgUFQnLCAnZnV0dXJhLXB0Jywgc2Fucy1zZXJpZjsgXG5cdFx0XHRcdGZvbnQtc2l6ZTogaW5oZXJpdDsgXG5cdFx0XHRcdHRvcDogMDsgXG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXHRcdHA6bGFzdC1vZi10eXBlICsgdWwsXG5cdFx0cDpsYXN0LW9mLXR5cGUgKyBvbCB7IG1hcmdpbi10b3A6IDEuNTI5NDExNzY1ZW07IH1cblx0XHRcblx0XHRvbDpsYXN0LWNoaWxkLCB1bDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXHRcblx0XG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHREYXRhIFRhYmxlc1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XG5cblx0XHQucmVzcG9uc2l2ZS10YWJsZSB7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdy14OiBhdXRvOyB9XG5cblx0XHR0YWJsZSB7XG5cdFx0XHRcblx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdGZvbnQtc2l6ZTogMC45ZW07IFxuXHRcdFx0bWluLXdpZHRoOiA2MDBweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0XHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRcdFx0XG5cdFx0XHR0aGVhZCB7IFxuXHRcdFx0XHRcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7IFxuXG5cdFx0XHRcdHRoIHsgXG5cdFx0XHRcdFx0Ym9yZGVyLXRvcC13aWR0aDogM3B4O1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRoMyB7IG1hcmdpbjogMDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBmb250LXNpemU6IDFlbTsgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXHRcdFx0XHRzbWFsbCB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0dHIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblx0XHRcblx0XHRcdHRib2R5IHRyOm50aC1jaGlsZChvZGQpIHtcblx0XHRcdFxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdHRoLFxuXHRcdFx0dGQgeyBcblx0XHRcdFx0cGFkZGluZzogMTBweCAxMHB4OyBcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiBkYXJrZW4oJGxpZ2h0LWJsdWUsIDEwKTtcblx0XHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDsgXG5cdFx0XHRcdFxuXHRcdFx0XHQmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7IFxuXHRcdFx0XHRcdGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRtaW4td2lkdGg6IDI1MHB4OyBcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0OyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0dGJvZHkgdHI6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFxuXHRcdFx0XHR0ZCB7IGJvcmRlci1ib3R0b20td2lkdGg6IDNweDsgfVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHRMaW5rc1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XG5cdFx0YSB7IFxuXHRcdFx0XG5cdFx0XHRjb2xvcjogJHByaW1hcnk7IFxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XG5cdFx0XHR0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAyMDBtcyBlYXNlLWluLW91dDsgXG5cdFx0XG5cdFx0XHQmOmZvY3VzLCBcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeTsgXG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXG5cdFx0XHRcdFxuXHRcdFx0XHRpbWcgeyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQ6IG5vbmU7IH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0aW1nIHsgYm9yZGVyOiBub25lOyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cdFx0XG5cdFx0fVxuXHRcdFxuXHRcdC5saW5rLCBcdFxuXHRcdCVsaW5rIHtcblx0XHRcdFxuXHRcdFx0Ji0tYm9yZGVyZWQge1xuXHRcdFx0XHRcblx0XHRcdFx0Y29sb3I6ICRkYXJrLWJsdWU7IFxuXHRcdFx0XHRcblx0XHRcdFx0c3BhbiB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ibHVlOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmZvY3VzLFxuXHRcdFx0XHQmOmhvdmVyIHsgXG5cdFx0XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcblx0XHRcblx0XHRcdFx0XHRzcGFuIHsgYm9yZGVyLWNvbG9yOiAkYmx1ZTsgfVxuXHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQmLS1pY29uIHtcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGljb247IFxuXHRcdFx0XHRcblx0XHRcdFx0Jjo6YmVmb3JlIHsgXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyBcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7IFxuXHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQmLS1waG9uZSB7XG5cdFx0XHQgXG5cdFx0XHQgQGV4dGVuZCAlbGluay0taWNvbjsgXG5cdFx0XHQgQGV4dGVuZCAlbGluay0tYm9yZGVyZWQ7IFxuXHRcdFx0IEBpbmNsdWRlIGljb24oYmVmb3JlLCBwaG9uZSwgZmFsc2UpO1xuXHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQmLS1zdGQge1xuXHRcdFx0XHRcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibHVlO1xuXHRcdFx0XHRjb2xvcjogJGJsdWU7IFxuXHRcblx0XHRcdFx0Jjpmb2N1cywgXG5cdFx0XHRcdCY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1jb2xvcjogJGRhcmstYmx1ZTsgfSBcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0LmNvbnRlbnQtY250IGE6bm90KC5idG4pIHsgQGV4dGVuZCAlbGluay0tc3RkOyB9IFxuXG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFxuXHRcdEltYWdlc1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XG5cblx0XHQuaW1hZ2UtLXBhZ2Uge1xuXHRcdFx0XG5cdFx0XHRkaXNwbGF5OiBibG9jazsgIFxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC00MHB4O1xuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGltZyB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGZpZ2NhcHRpb24geyBcblx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7IFxuXHRcdFx0XHRwYWRkaW5nOiAxNnB4IDIwcHg7IFxuXHRcdFx0fVxuXHRcdFxuXHRcdH1cblxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHRJY29uc1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXHRcdC8vIFNldCB0aGUgcmVxdWlyZWQgc3R5bGVzIG9uIGFsbCBpY29uc1xuXHRcdFtjbGFzc149XCJpY29uLVwiXSxcblx0XHRbY2xhc3MqPVwiIGljb24tXCJdIHtcblx0XHQgICAgQGluY2x1ZGUgaWNvbjtcblx0XHR9XG5cdFx0XG5cdFx0Ly8gU2V0dXAgYSBjbGFzcyBuYW1lIGZvciBlYWNoIGljb25cblx0XHRAZWFjaCAkbmFtZSwgJGNoYXIgaW4gJGZvbnQtaWNvbnMge1xuXHRcdCAgICAuaWNvbi0jeyRuYW1lfTo6YmVmb3JlIHtcblx0XHQgICAgICAgIGNvbnRlbnQ6ICRjaGFyO1xuXHRcdCAgICB9XG5cdFx0fVxuXHRcdGkuZG93bmxvYWQsXG5cdFx0YS5kb3dubG9hZCB7XG5cdFx0IFxuXHRcdCBcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL0ZsYWdzL0R1dGNoLnBuZycpIG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMThweCAxNHB4OyBcblx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyBcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTsgXG5cdFx0XHR0cmFuc2l0aW9uOiBub25lOyBcblx0XHRcdFxuXHRcdFx0Jjpmb2N1cywgXG5cdFx0XHQmOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiAkYmx1ZTsgfVxuXHRcdCBcblx0XHQgfVxuXHRcdCAuZG93bmxvYWQuZW5nbGlzaCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9GbGFncy9FbmdsaXNoLnBuZycpOyBcblx0XHQgfVxuXHRcdCAuZG93bmxvYWQuZnJlbmNoIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvRmxhZ3MvRnJlbmNoLnBuZycpOyB9XG5cdFx0IC5kb3dubG9hZC5zcGFuaXNoIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvRmxhZ3MvU3BhbmlzaC5wbmcnKTsgfVxuXHRcdCAuZG93bmxvYWQucG9ydHVndWVzZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL0ZsYWdzL1BvcnR1Z3Vlc2UucG5nJyk7IH1cblx0XHQgLmRvd25sb2FkLmdlcm1hbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9HZXJtYW4ucG5nXCIpOyB9XG5cdFx0LmRvd25sb2FkLnN3ZWRpc2ggeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvRmxhZ3MvU3dlZGlzaC5wbmdcIik7IH1cblx0XHQuZG93bmxvYWQuZmlubmlzaCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9GaW5uaXNoLnBuZ1wiKTsgfVxuXHRcdC5kb3dubG9hZC5lc3RvbmlhbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9Fc3Rvbmlhbi5wbmdcIik7IH1cblx0XHQuZG93bmxvYWQucnVzc2lhbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9SdXNzaWFuLnBuZ1wiKTsgfVxuXHRcdC5kb3dubG9hZC5icmF6aWxpYW4sIC5kb3dubG9hZC5icmF6aWxpYW4tcG9ydHVndWVzZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9GbGFncy9CcmF6aWxpYW5Qb3J0dWd1ZXNlLnBuZ1wiKTsgfVxuXG5cdFx0IGkuZG93bmxvYWQgeyBmbG9hdDogcmlnaHQ7IH1cblx0XHQgXG5cdFx0IC5pbmxpbmUtZmxhZyB7IHdpZHRoOiAyMHB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW4tdG9wOiAtNHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XG5cdFx0SGVhZGluZyBzZWN0aW9uIDogU3RyaXBlZCBoZWFkaW5nXG5cdFx0XG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXHRcdC5oZWFkaW5nLS1zZWN0aW9uIHtcblx0XHRcdFxuXHRcdFx0bWF4LXdpZHRoOiA5MCU7XG5cdFx0XG5cdFx0XHQmLCBcblx0XHRcdC5wYWdlLWNvbnRlbnQgJiB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAyMHB4OyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHdpZHRoOiA2MCU7XG5cdFx0XHRcdGhlaWdodDogMTBweDtcblx0XHRcdFx0YmFja2dyb3VuZDogJGJsYWNrOyBcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiAtMjBweDsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCZoMTo6YmVmb3JlIHtcblx0XHRcdFxuXHRcdFx0XHRsZWZ0OiA1cHg7IFxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XG5cdFx0XHRcdG1heC13aWR0aDogODAlO1xuXHRcdFx0XHRcblx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHR3aWR0aDogMjQwcHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmRvd25sb2Fkcy0taGVhZGVyIHtcblxuXHRcdFx0bWFyZ2luOiAzMHB4IGF1dG87XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnBhZ2Utc2VjdGlvbiA+IGgyLmhlYWRpbmctLXNlY3Rpb24sXG5cdFx0LnBhZ2UtY29udGVudCAuaGVhZGluZy0tc2VjdGlvbiB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7IFxuXHRcdFx0bWFyZ2luOiAwIGF1dG87IFxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87IFxuXHRcdFx0fVxuXHRcdH1cblx0XHQucGFnZS1zZWN0aW9uID4gaDIuaGVhZGluZy0tc2VjdGlvbiB7XG5cdFx0Ly9cdHBhZGRpbmctdG9wOiAxMDBweCFpbXBvcnRhbnQ7IFxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjJweDsgXG5cdFx0XHRwYWRkaW5nLXRvcDogMjBweDsgXG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDUycHg7IFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0LnBhZ2UtY29udGVudCAuaGVhZGluZy0tc2VjdGlvbiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4OyBcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHQuaGVhZGluZy0tY2VudGVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDI1cHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXHRcdFxuXHRcdFxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XG5cdFx0Q3VzdG9tIGZ1bmN0aW9ucyBcblx0XHRcblx0XHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdFxuXHRcdC50ZXh0LS1oaWRkZW4sIFxuXHRcdCV0ZXh0LS1oaWRkZW4ge1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0Y2xpcDogcmVjdCgwIDAgMCAwKTtcblx0XHRcdGhlaWdodDogMXB4O1xuXHRcdFx0bWFyZ2luOiAtMXB4O1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogMXB4O1xuXHRcdH1cblxuXHRcdC8vZW1wdHkgZm9udCB3aGljaCBtYWtlcyBpdCBwb3NzaWJsZSB0byB1c2UgZGlzcGxheSBpbmxpbmUtYmxvY2sgd2l0aG91dCBhbnkgbWFyZ2lucy4gXG5cdFx0QGZvbnQtZmFjZSB7XG5cdFx0ICAgIGZvbnQtZmFtaWx5OiBlbXB0eTtcblx0XHQgICAgc3JjOiB1cmwoZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JrOVVWRThBQUFRMEFBb0FBQUFBQSt3QUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJEUmtZZ0FBQUE5QUFBQUo0QUFBQ2VYUTQ4ajA5VEx6SUFBQUdVQUFBQVlBQUFBR0FJSWdiV1kyMWhjQUFBQWZRQUFBQkVBQUFBUkFBeUFHbG5ZWE53QUFBQ09BQUFBQWdBQUFBSUFBQUFFR2hsWVdRQUFBSkFBQUFBTmdBQUFEYjltekI1YUdobFlRQUFBbmdBQUFBa0FBQUFKQUhpQWVWb2JYUjRBQUFDbkFBQUFCQUFBQUFRQUFBQUFHMWhlSEFBQUFLc0FBQUFCZ0FBQUFZQUJGQUFibUZ0WlFBQUFyUUFBQUZkQUFBQlhWcVpYUmx3YjNOMEFBQUVGQUFBQUNBQUFBQWdBQU1BQUFFQUJBUUFBUUVCREhOd1lXTmxMV1Z0Y0hSNUFBRUNBQUVBT3ZnY0F2Z2JBL2dZQkI0S0FCbFQvNHVMSGdvQUdWUC9pNHNNQjR0citKVDRkQVVkQUFBQWZBOGRBQUFBZ1JFZEFBQUFDUjBBQUFDVkVnQUZBUUVNRnhrYkhuTndZV05sTFdWdGNIUjVjM0JoWTJVdFpXMXdkSGwxTUhVeGRUSXdBQUFDQVlrQUFnQUVBUUVFQndvTi9KUU8vSlFPL0pRTy9KUU8rSlFVK0pRVml3d0tBQUFBQXdJQUFaQUFCUUFBQVV3QlpnQUFBRWNCVEFGbUFBQUE5UUFaQUlRQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQUlBSGcvK0QvNEFIZ0FDQUFBQUFCQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFDQUFBQUF3QUFBQlFBQXdBQkFBQUFGQUFFQURBQUFBQUlBQWdBQWdBQUFBRUFJUC85Ly84QUFBQUFBQ0QvL2YvL0FBSC80d0FEQUFFQUFBQUFBQUFBQUFBQkFBSC8vd0FQQUFFQUFBQUJBQUFBZVIyR1h3ODg5UUFMQWdBQUFBQUF6ejU0dmdBQUFBRFBQbmkrQUFBQUFBQUFBQUFBQUFBSUFBSUFBQUFBQUFBQUFRQUFBZUQvNEFBQUFnQUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUUFBQUVBQUFBQUFBT0FLNEFBUUFBQUFBQUFRQVdBQUFBQVFBQUFBQUFBZ0FPQUdNQUFRQUFBQUFBQXdBV0FDd0FBUUFBQUFBQUJBQVdBSEVBQVFBQUFBQUFCUUFXQUJZQUFRQUFBQUFBQmdBTEFFSUFBUUFBQUFBQUNnQW9BSWNBQXdBQkJBa0FBUUFXQUFBQUF3QUJCQWtBQWdBT0FHTUFBd0FCQkFrQUF3QVdBQ3dBQXdBQkJBa0FCQUFXQUhFQUF3QUJCQWtBQlFBV0FCWUFBd0FCQkFrQUJnQVdBRTBBQXdBQkJBa0FDZ0FvQUljQWN3QndBR0VBWXdCbEFDMEFaUUJ0QUhBQWRBQjVBRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFCekFIQUFZUUJqQUdVQUxRQmxBRzBBY0FCMEFIbHpjR0ZqWlMxbGJYQjBlUUJ6QUhBQVlRQmpBR1VBTFFCbEFHMEFjQUIwQUhrQVVnQmxBR2NBZFFCc0FHRUFjZ0J6QUhBQVlRQmpBR1VBTFFCbEFHMEFjQUIwQUhrQVJ3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCSkFHTUFid0JOQUc4QWJ3QnVBQUFBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT0pIGZvcm1hdCgnd29mZicpO1xuXHRcdH1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGVmYXVsdCBWYXJpYWJsZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJEJyZWFrcG9pbnQtU2V0dGluZ3M6IChcbiAgJ2RlZmF1bHQgbWVkaWEnOiBhbGwsXG4gICdkZWZhdWx0IGZlYXR1cmUnOiBtaW4td2lkdGgsXG4gICdkZWZhdWx0IHBhaXInOiB3aWR0aCxcblxuICAnZm9yY2UgYWxsIG1lZGlhIHR5cGUnOiBmYWxzZSxcbiAgJ3RvIGVtcyc6IGZhbHNlLFxuICAndHJhbnNmb3JtIHJlc29sdXRpb25zJzogdHJ1ZSxcblxuICAnbm8gcXVlcmllcyc6IGZhbHNlLFxuICAnbm8gcXVlcnkgZmFsbGJhY2tzJzogZmFsc2UsXG5cbiAgJ2Jhc2UgZm9udCBzaXplJzogMTZweCxcblxuICAnbGVnYWN5IHN5bnRheCc6IGZhbHNlXG4pO1xuXG4kYnJlYWtwb2ludDogKCkgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0c1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9zZXR0aW5nc1wiO1xuQGltcG9ydCAnYnJlYWtwb2ludC9jb250ZXh0JztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvaGVscGVycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L3BhcnNlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9uby1xdWVyeSc7XG5cbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcmVzcG9uZC10byc7XG5cbkBpbXBvcnQgXCJicmVha3BvaW50L2xlZ2FjeS1zZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJyZWFrcG9pbnQgTWl4aW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5AbWl4aW4gYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgbGVnYWN5LXNldHRpbmdzLXdhcm5pbmc7XG5cbiAgLy8gUmVzZXQgY29udGV4dHNcbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG5cbiAgJGJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQoJHF1ZXJ5LCBmYWxzZSk7XG5cbiAgJHF1ZXJ5LXN0cmluZzogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5Jyk7XG4gICRxdWVyeS1mYWxsYmFjazogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2ZhbGxiYWNrJyk7XG5cbiAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2NvbnRleHQgaG9sZGVyJykgIWdsb2JhbDtcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5IGNvdW50JykgIWdsb2JhbDtcblxuICAvLyBBbGxvdyBmb3IgYW4gYXMtbmVlZGVkIG92ZXJyaWRlIG9yIHVzYWdlIG9mIG5vIHF1ZXJ5IGZhbGxiYWNrLlxuICBAaWYgJG5vLXF1ZXJ5ICE9IGZhbHNlIHtcbiAgICAkcXVlcnktZmFsbGJhY2s6ICRuby1xdWVyeTtcbiAgfVxuXG4gIEBpZiAkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2Uge1xuICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCduby1xdWVyeScsICRxdWVyeS1mYWxsYmFjayk7XG4gIH1cblxuICAvLyBQcmludCBPdXQgUXVlcnkgU3RyaW5nXG4gIEBpZiBub3QgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSB7XG4gICAgQG1lZGlhICN7JHF1ZXJ5LXN0cmluZ30ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSAhPSBmYWxzZSBvciBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpID09IHRydWUge1xuXG4gICAgJHR5cGU6IHR5cGUtb2YoYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpKTtcbiAgICAkcHJpbnQ6IGZhbHNlO1xuXG4gICAgQGlmICgkdHlwZSA9PSAnYm9vbCcpIHtcbiAgICAgICRwcmludDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdzdHJpbmcnKSB7XG4gICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdsaXN0Jykge1xuICAgICAgQGVhY2ggJHdyYXBwZXIgaW4gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSAkd3JhcHBlciB7XG4gICAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gV3JpdGUgRmFsbGJhY2tcbiAgICBAaWYgKCRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSkgYW5kICgkcHJpbnQgPT0gdHJ1ZSkge1xuICAgICAgJHR5cGUtZmFsbGJhY2s6IHR5cGUtb2YoJHF1ZXJ5LWZhbGxiYWNrKTtcblxuICAgICAgQGlmICgkdHlwZS1mYWxsYmFjayAhPSAnYm9vbCcpIHtcbiAgICAgICAgI3skcXVlcnktZmFsbGJhY2t9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xufVxuXG5cbkBtaXhpbiBtcSgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIkZm9udC1pY29uczogKFxuICAgIGFycm93LWFsdDogXCJcXGYxMjNcIixcbiAgICBhcnJvdy1kb3duOiBcIlxcZjEwYlwiLFxuICAgIGFycm93LWxlZnQ6IFwiXFxmMTBjXCIsXG4gICAgYXJyb3ctcmlnaHQ6IFwiXFxmMTBkXCIsXG4gICAgYXJyb3ctc2VsZWN0OiBcIlxcZjEyZVwiLFxuICAgIGFycm93LXRvcDogXCJcXGYxMGVcIixcbiAgICBhcnJvd3MtbGVmdDogXCJcXGYxMmNcIixcbiAgICBhcnJvd3MtcmlnaHQ6IFwiXFxmMTJkXCIsXG4gICAgYXVkaW86IFwiXFxmMTI4XCIsXG4gICAgY2FsZW5kYXI6IFwiXFxmMTI0XCIsXG4gICAgY2hlY2ttYXJrOiBcIlxcZjEyMFwiLFxuICAgIGNsb3NlOiBcIlxcZjEwMFwiLFxuICAgIGRvd25sb2FkOiBcIlxcZjEzMFwiLFxuICAgIGV4Y2VsOiBcIlxcZjEyOVwiLFxuICAgIGV4dGVybmFsLWxpbms6IFwiXFxmMTBmXCIsXG4gICAgZmFjZWJvb2s6IFwiXFxmMTFmXCIsXG4gICAgZm9sZGVyOiBcIlxcZjEyYVwiLFxuICAgIGdvb2dsZXBsdXM6IFwiXFxmMTIxXCIsXG4gICAgZ3JvdXAtcGVvcGxlOiBcIlxcZjExMFwiLFxuICAgIGhhbWJ1cmdlci1tZW51OiBcIlxcZjExMVwiLFxuICAgIGxpbmtlZGluOiBcIlxcZjExMlwiLFxuICAgIG1haWw6IFwiXFxmMTEzXCIsXG4gICAgbWFya2VyOiBcIlxcZjExNFwiLFxuICAgIG1pbjogXCJcXGYxMjVcIixcbiAgICBwZGY6IFwiXFxmMTE1XCIsXG4gICAgcGhvbmU6IFwiXFxmMTJiXCIsXG4gICAgcGxheTogXCJcXGYxMTZcIixcbiAgICBwbHVzOiBcIlxcZjEyNlwiLFxuICAgIHByaW50OiBcIlxcZjExN1wiLFxuICAgIHF1b3RlOiBcIlxcZjEyMlwiLFxuICAgIHNlYXJjaDogXCJcXGYxMDdcIixcbiAgICBzb3J0LWdyaWQ6IFwiXFxmMTE4XCIsXG4gICAgc29ydC1saXN0OiBcIlxcZjExOVwiLFxuICAgIHNvcnQtbWFwOiBcIlxcZjExYVwiLFxuICAgIHN1YjogXCJcXGYxNDJcIixcbiAgICB0d2l0dGVyOiBcIlxcZjExYlwiLFxuICAgIHZlc3NlbDogXCJcXGYxMjdcIixcbiAgICB2ZXNzZWwtaG9wcGVyLWJhcmdlOiBcIlxcZjEyZlwiLFxuICAgIHZlc3NlbF9iYXJnZV9ob3BwZXI6IFwiXFxmMTMxXCIsXG4gICAgdmVzc2VsX2JhcmdlX2lubGFuZDogXCJcXGYxMzJcIixcbiAgICB2ZXNzZWxfYmFyZ2Vfb2NlYW4tZmxhdC10b3A6IFwiXFxmMTMzXCIsXG4gICAgdmVzc2VsX2JhcmdlX29jZWFuLXN1cGVyLXBhbGxldHM6IFwiXFxmMTNjXCIsXG4gICAgdmVzc2VsX2RyZWRnZXJfYmFja2hvZTogXCJcXGYxM2RcIixcbiAgICB2ZXNzZWxfZHJlZGdlcl9jdXR0ZXJfc3VjdGlvbjogXCJcXGYxM2VcIixcbiAgICB2ZXNzZWxfZHJlZGdlcl9mbG9hdGluZ19jcmFuZTogXCJcXGYxM2ZcIixcbiAgICB2ZXNzZWxfZHJlZGdlcl90cmFpbGluZy1zdWN0aW9uLWhvcHBlcjogXCJcXGYxMzRcIixcbiAgICB2ZXNzZWxfb2Zmc2hvcmVfYW5jaG9yLWhhbmRsaW5nLXR1ZzogXCJcXGYxMzVcIixcbiAgICB2ZXNzZWxfb2Zmc2hvcmVfYW5jaG9yLWhhbmRsaW5nLXR1Zy0yOiBcIlxcZjEzNlwiLFxuICAgIHZlc3NlbF9vZmZzaG9yZV9kaXZpbmctc3VwcG9ydDogXCJcXGYxMzdcIixcbiAgICB2ZXNzZWxfb2Zmc2hvcmVfZmFsbHBpcGU6IFwiXFxmMTM4XCIsXG4gICAgdmVzc2VsX29mZnNob3JlX2Zsb2F0aW5nLXNoZWVybGVnOiBcIlxcZjEzOVwiLFxuICAgIHZlc3NlbF9vZmZzaG9yZV9oZWF2eS1saWZ0OiBcIlxcZjEzYVwiLFxuICAgIHZlc3NlbF9vZmZzaG9yZV9tdWx0aXB1cnBvc2UtY2FibGUtbGF5aW5nOiBcIlxcZjEzYlwiLFxuICAgIHZpbWVvOiBcIlxcZjExY1wiLFxuICAgIHdvcmxkOiBcIlxcZjExZFwiLFxuICAgIHlvdXR1YmU6IFwiXFxmMTFlXCIsXG4pOyIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogQnV0dG9ucyBhbmQgYnV0dG9uIGxpbmtzXHJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5idG4sIFxyXG4lYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogZW0oMTZweCk7XHJcbiAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogJGdyaWQtc2l6ZXI7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgbWFyZ2luOiAwOyBcclxuICAgIGhlaWdodDogJGdyaWQtc2l6ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgIC8vIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAuMTQyODU3MTQzZW0gLjIzNTI5NDExOGVtIHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgLjA3MTQyODU3MWVtIC4xNDI4NTcxNDNlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG4gICAgICAgICAgICAgLy8gICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAuMTQyODU3MTQzZW0gLjIzNTI5NDExOGVtIHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgLjA3MTQyODU3MWVtIC4xNDI4NTcxNDNlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICAgJjo6YWZ0ZXIgeyBwYWRkaW5nOiAwIDVweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyAgIH1cclxuXHRcclxuICAgICAgICBzcGFuIHsgcGFkZGluZzogMCA1cHg7IH0gIFxyXG4gICAgICAgIFxyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCA2NTBtcyBlYXNlLWluLW91dDsgXHJcbn1cclxuLmJ0bjpmb2N1cyxcclxuLmJ0bjpob3ZlcixcclxuJWJ0bjpob3ZlcixcclxuYSAuYnRuOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbn1cclxuLmJ0bjpmb2N1cyxcclxuLmJ0bjpob3ZlcixcclxuJWJ0bjpob3ZlcixcclxuYSAuYnRuOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcblxyXG5idXR0b24sXHJcbi5idG4sXHJcbiVidG4ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLmJ0bjpmaXJzdC1jaGlsZCxcclxuJWJ0bjpmaXJzdC1jaGlsZCxcclxuaW5wdXQuYnRuIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcbmJ1dHRvbjpmb2N1cywgXHJcbi5idG46Zm9jdXMge1xyXG5cdG91dGxpbmU6IDAhaW1wb3J0YW50OyBcclxufVxyXG5cclxuXHJcbiVidG4taWNvbiB7XHJcblx0XHJcblx0d2lkdGg6ICRncmlkLXNpemVyOyBcclxuXHRwYWRkaW5nOiAwO1xyXG5cdFxyXG5cdEBpbmNsdWRlIGljb247IFxyXG5cdFxyXG5cdHNwYW4geyBAZXh0ZW5kICV0ZXh0LS1oaWRkZW47IH1cclxuXHRcclxuXHQvL3RyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDsgXHJcblxyXG5cdCY6OmJlZm9yZSB7XHJcblx0XHRcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcblx0XHRcclxuXHRcdFxyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xyXG5cdH1cclxuLyogXHQmOmhvdmVyOjpiZWZvcmUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH0gKi9cclxuXHJcblx0XHJcblx0Ji1iZiB7XHJcblx0XHRAaW5jbHVkZSBpY29uOyBcclxuXHRcdFxyXG5cdFx0Jjo6YmVmb3JlIHtcclxuXHRcdCBcclxuXHRcdFx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHRcdFx0Ly90cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0Ji1hZiB7XHJcblx0XHRAaW5jbHVkZSBpY29uKGFmdGVyKTsgXHJcblx0XHRcclxuXHRcdCY6OmFmdGVyIHtcclxuXHRcdCBcclxuXHRcdFx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHRcdFx0Ly90cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQgMTAwbXM7IFxyXG5cdFx0XHQgXHJcblx0XHR9XHJcblx0fVxyXG5cdCYtcmVzcG9uc2l2ZSB7XHJcblx0XHRcclxuXHRcdHNwYW4geyBkaXNwbGF5OiBub25lOyB9XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG5cdFx0XHRcclxuXHRcdFx0c3BhbiB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxyXG5cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0XHJcblx0fVxyXG5cdCYtLWxhcmdlIHtcclxuXHJcblx0XHQmOjpiZWZvcmUsXHJcblx0XHQmOjphZnRlciB7XHJcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4zNSk7XHJcblx0XHR9XHJcbi8qIFx0XHQmOmhvdmVyOjpiZWZvcmUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7IH0gKi9cclxuXHRcdFxyXG5cdH1cclxuXHQmLS1zbWFsbCB7XHJcblx0XHRcclxuXHRcdCY6OmJlZm9yZSxcclxuXHRcdCY6OmFmdGVyIHtcclxuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTsgXHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogQnV0dG9uIHZhcmlhdGlvbnNcclxuIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAqL1xyXG4gXHJcbi5idG4sICBcclxuICVidG4ge1xyXG4gXHJcbiBcclxuIFx0Ji0tbGluayB7XHJcblx0IFxyXG5cdFx0IEBleHRlbmQgJWJ0bi1pY29uLWFmOyBcclxuXHRcdCBcclxuXHRcdCBAaW5jbHVkZSBpY29uKGFmdGVyLGFycm93LXJpZ2h0LCBmYWxzZSk7XHJcblx0XHQgXHJcblx0XHQgbWFyZ2luOiA1cHg7IFxyXG5cdFx0IFxyXG5cdFx0ICY6OmFmdGVyIHsgbGVmdDogMDsgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAxMDBtcyBlYXNlLWluLW91dCwgbGVmdCAxMDBtcyBlYXNlLWluLW91dDsgfVxyXG5cdFx0IFxyXG5cdFx0ICY6aG92ZXI6OmFmdGVyIHsgbGVmdDogNXB4OyB9XHJcblx0XHQgXHJcblx0XHQgXHJcblx0IH1cclxuXHJcblx0ICYtLWNlbnRlciB7XHJcblx0XHQgXHJcblx0XHQgQGV4dGVuZCAlYnRuLS1saW5rO1xyXG5cdFx0IFxyXG5cdFx0IGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0IG1heC13aWR0aDogMzAwcHg7IFxyXG5cdFx0IG1hcmdpbjogNDBweCBhdXRvIDA7IFxyXG5cdFxyXG5cdFx0IC5jbnQtLW92ZXJ2aWV3ICsgJiB7IG1hcmdpbi10b3A6IDA7fVxyXG5cdFx0IFxyXG5cdCB9XHJcblx0IFxyXG5cdCAmLS10b3Age1xyXG5cdFx0IFxyXG5cdFx0QGV4dGVuZCAlYnRuLWljb247XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvdy10b3AsIGZhbHNlKTsgXHJcblx0XHJcblx0XHRAZXh0ZW5kICVidG4tLWxpZ2h0LWJsdWU7IFxyXG5cdFx0XHJcblx0XHRwb3NpdGlvbjogZml4ZWQ7IFxyXG5cdFx0Ym90dG9tOiAtNDBweDtcclxuXHRcdHotaW5kZXg6IDQwOyBcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgcGFkZGluZygncmlnaHQnKTsgXHJcblx0XHRcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgZWFzZS1pbi1vdXQsIGJvdHRvbSAxMDBtcyBlYXNlLWluLW91dDsgXHJcblx0XHJcblx0XHQmLmZpeGVkIHtcclxuLyogXHRcdFx0cG9zaXRpb246IGZpeGVkOyAqL1xyXG5cdFx0XHRib3R0b206IDA7IFxyXG5cdFx0fVxyXG5cdFx0Jjo6YmVmb3JlIHsgdG9wOjA7IH1cclxuXHRcdCY6aG92ZXI6OmJlZm9yZSB7dG9wOiAtM3B4OyB9XHJcbiBcclxuXHQgfVxyXG5cdCBcclxuXHQgJi0tbGlnaHQtYmx1ZSB7IGJhY2tncm91bmQ6ICRsaWdodC1ibHVlOyBjb2xvcjogJGJsYWNrOyB9XHJcblx0IFxyXG5cdCAmLS13aGl0ZSB7IFxyXG5cdCBcdGJhY2tncm91bmQ6ICR3aGl0ZTsgXHJcblx0IFx0Y29sb3I6ICRkYXJrLWJsdWU7IFxyXG5cdCBcclxuXHQgXHQmOmhvdmVyIHsgYmFja2dyb3VuZDogJHllbGxvdzsgfVxyXG5cdCB9XHJcblx0ICYtLW1lZGl1bS1ibHVlIHsgXHJcblx0IFx0YmFja2dyb3VuZDogJG1lZGl1bS1ibHVlOyBcclxuXHQgXHRjb2xvcjogJGRhcmstYmx1ZTsgXHJcblx0IFxyXG5cdCBcdCY6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkYmx1ZTsgY29sb3I6ICR3aGl0ZTsgfVxyXG5cdCB9XHJcblx0ICYtLXllbGxvdyB7XHJcblx0XHQgYmFja2dyb3VuZDogJHllbGxvdztcclxuXHRcdCBjb2xvcjogJGJsYWNrOyBcclxuXHQgfVxyXG5cdCAgJi0tZGFyay1ibHVlIHtcclxuXHRcdCBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0IGNvbG9yOiAkd2hpdGU7IFxyXG5cdCB9XHJcblx0IFxyXG5cdCAmLS1sYWJlbGVkIHsgQGV4dGVuZCAlYnRuLWljb24tcmVzcG9uc2l2ZTsgfVxyXG5cdCBcclxuXHQgLy8gYmxvY2tlZCBpY29uIHdpdGggc2VwZXJhdGUgbGFiZWwgXHJcblx0ICYtLWxhYmVsIHsgXHJcblx0XHQgXHJcblx0XHRwYWRkaW5nOiAwOyBcclxuXHRcclxuXHRcdC5pY29uIHtcclxuXHRcdFx0XHJcblx0XHRcdEBpbmNsdWRlIGljb24oYmVmb3JlKTsgXHJcblx0XHRcdGJhY2tncm91bmQ6ICRibHVlLWRhcmtlbmVkOyBcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHR3aWR0aDogNDBweDsgXHJcblx0XHRcdGhlaWdodDogNDBweDsgXHJcblx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4OyBcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IGluaXRpYWw7XHJcblx0XHRcdFxyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgXHJcblx0XHRcdFxyXG5cdFx0XHQmOjpiZWZvcmUge1xyXG5cdFx0XHRcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjcpOyBcclxuXHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQubGFiZWwge1xyXG5cdFx0XHRwYWRkaW5nOiAwIDIwcHg7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgXHJcblx0XHR9XHJcblx0XHQgXHJcblx0XHQgXHJcblx0IH1cclxuXHQgXHJcblx0ICYtLXZpZGVvIHtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgaWNvbihiZWZvcmUsIHBsYXkpOyBcclxuXHRcdFxyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcclxuXHRcdGZvbnQtc2l6ZTogZW0oKDIgKiAkZ3JpZC1zaXplcikpO1xyXG5cdFx0aGVpZ2h0OiAoMiAqICRncmlkLXNpemVyKTtcclxuXHRcdHdpZHRoOiAoMiAqICRncmlkLXNpemVyKTsgXHJcblx0XHRwYWRkaW5nOiAwOyBcclxuXHRcdGxpbmUtaGVpZ2h0OiAoMiAqICRncmlkLXNpemVyKTtcclxuXHRcdFxyXG5cdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdFxyXG5cdFx0Y29sb3I6ICR3aGl0ZTsgXHJcblxyXG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuXHRcdFxyXG4gXHJcblx0XHQmOmZvY3VzLCBcdFx0XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdFx0Y29sb3I6ICR5ZWxsb3c7IFxyXG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IFxyXG5cdFx0fVxyXG5cdFx0XHRcclxuXHR9XHJcblx0XHJcblx0Ji0tbGFyZ2Uge1xyXG5cdFx0XHJcblx0XHRoZWlnaHQ6IDEuNSAqICRncmlkLXNpemVyOyBcclxuXHRcdGxpbmUtaGVpZ2h0OiAxLjUgKiAkZ3JpZC1zaXplcjsgXHJcblx0fVxyXG5cdCBcclxuXHQmLS1jb2xsYXBzZS1jb250ZW50IHtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0d2lkdGg6IDIwMHB4O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyOyBcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7IFxyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLCBhcnJvdy1kb3duKTtcclxuXHRcdFxyXG5cdFx0Jjo6YWZ0ZXIge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0Zm9udC1zaXplOiBlbSgxMnB4KTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHRcdFx0dHJhbnNpdGlvbjogdG9wIDMwMG1zIGVhc2UtaW4tb3V0OyBcclxuXHRcdFx0dG9wOiAwOyBcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Jjpob3Zlcjo6YWZ0ZXIgeyB0b3A6IDNweDsgfVxyXG5cdFx0XHJcblx0XHQmLm9wZW4ge1xyXG5cdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctdG9wKTtcclxuXHRcdFx0Jjo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcblx0XHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxMnB4KTtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG5cdFx0XHRcdHRyYW5zaXRpb246IHRvcCAzMDBtcyBlYXNlLWluLW91dDsgXHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6aG92ZXI6OmJlZm9yZSB7IHRvcDogLTNweDsgfVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogNDBweDsgXHJcblx0XHR9XHJcblx0fSBcclxuXHQmLS1zY3JvbGwge1xyXG5cdFx0XHJcblx0XHRAZXh0ZW5kICVidG4taWNvbjtcclxuXHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvdy1kb3duKTtcclxuXHRcdFxyXG5cdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdFx0Y29sb3I6ICRibGFjazsgXHJcblx0XHRcclxuXHRcdCY6aG92ZXIsIFxyXG5cdFx0Jjpmb2N1cyB7IGJhY2tncm91bmQ6ICR5ZWxsb3c7IGNvbG9yOiAkYmxhY2s7IH0gXHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0Ji0tZmxhZyB7XHJcblxyXG5cdFx0QGV4dGVuZCAlYnRuLWljb247XHJcblx0XHRcclxuXHRcdGltZyB7IHdpZHRoOiAyMnB4OyBtYXJnaW4tdG9wOiAxMXB4OyB9XHJcblx0XHRcclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHQgXHJcbiB9XHJcbiBcclxuXHJcbiIsIiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblx0REVGQVVMVCBGT1JNIFNUWUxJTkdcclxuXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcblxyXG5cdGZvcm0ge1xyXG5cdFx0XHJcblx0XHRmaWVsZHNldCB7IFxyXG5cdFx0XHRcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDsgXHJcblxyXG5cdFx0XHQmOmxhc3Qtb2YtdHlwZSB7IG1hcmdpbi1ib3R0b206IDA7IH1cclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdGxhYmVsIHtcclxuXHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHRpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCB7XHJcblx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdCAgICB3aWR0aDogMTAwJTtcclxuXHQgICAgZm9udDogaW5oZXJpdDtcclxuXHQgICAgZm9udC1zaXplOiBlbSgxNnB4KTtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDQwcHg7IFxyXG5cdCAgICBoZWlnaHQ6IDQwcHg7IFxyXG5cdCAgICBjb2xvcjogJGJsYWNrOyBcclxuXHQgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHQgICAgcGFkZGluZzogMCAxNXB4O1xyXG5cdCAgICBib3JkZXI6IDA7IFxyXG5cdCAgICBib3JkZXItcmFkaXVzOiAwO1xyXG5cdCAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0ICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdH1cclxuXHRcclxuXHR0ZXh0YXJlYSB7XHJcblx0ICAgIGhlaWdodDogMTJlbTtcclxuXHQgICAgcGFkZGluZzogMTVweDsgXHJcblx0ICAgIGxpbmUtaGVpZ2h0OiBlbSgyNHB4LCAxNnB4KTsgXHJcblx0ICAgIG92ZXJmbG93LXk6IGF1dG87IFxyXG5cdH1cclxuXHRcclxuXHRpbnB1dFt0eXBlPWZpbGVdIHtcclxuXHQgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cdCAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcblx0ICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcblx0ICAgIGJhY2tncm91bmQ6ICRtZWRpdW0tYmx1ZTtcclxuXHQgICAgY3Vyc29yOiB0ZXh0O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDE7XHJcblx0ICAgIHBhZGRpbmc6IDEwcHggMTVweDsgXHJcbiAgICB9XHJcbiAgICBcclxuXHRpbnB1dFt0eXBlPVwiaW1hZ2VcIl0sXHJcblx0aW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5cdGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcblx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgICAgd2lkdGg6IGF1dG87XHJcblx0ICAgIGhlaWdodDogYXV0bztcclxuXHQgICAgcGFkZGluZzogMDtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogLjI5NDExNzY0N2VtO1xyXG5cdCAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblx0fVxyXG5cdFxyXG5cdGlucHV0W3R5cGU9XCJoaWRkZW5cIl0geyB2aXNpYmlsaXR5OiBoaWRkZW47IGRpc3BsYXk6IG5vbmU7IH1cclxuXHRcclxuXHRpbnB1dDpmb2N1cyxcclxuXHR0ZXh0YXJlYTpmb2N1cyB7XHJcblx0ICBcclxuXHQgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZTtcclxuXHQgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMnB4ICRibHVlOyBcclxuXHJcblx0ICAgIG91dGxpbmU6IDA7XHJcblx0ICAgIG91dGxpbmU6IHRoaW4gZG90dGVkIFxcOTtcclxuXHR9XHJcblx0XHJcblx0aW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXHJcblx0aW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzLFxyXG5cdHNlbGVjdDpmb2N1cyB7XHJcblx0ICAgXHRcclxuXHQgICBcdGJvcmRlci1jb2xvcjogJGJsdWU7XHJcblx0ICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDJweCAkYmx1ZTsgXHJcblx0ICAgIFxyXG5cdCAgICBvdXRsaW5lOiAwO1xyXG5cdCAgICBvdXRsaW5lOiB0aGluIGRvdHRlZCBcXDk7XHJcblx0fVxyXG4gICAgXHJcblx0YnV0dG9uLmJ0bi0tc3VibWl0IHsgbWFyZ2luLWJvdHRvbTogMDsgbWFyZ2luLWxlZnQ6IDA7IG1hcmdpbi10b3A6IDIwcHg7IEBleHRlbmQgJWJ0bi0tbGluazsgIH1cclxuXHRcclxuXHRcclxuXHQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBXZWJLaXQsIEJsaW5rLCBFZGdlICovXHJcblx0ICAgIGNvbG9yOiAgICAkYmxhY2s7XHJcblx0ICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgXHJcblx0fVxyXG5cdDotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDQgdG8gMTggKi9cclxuXHQgICBjb2xvcjogICAgJGJsYWNrO1xyXG5cdCAgIG9wYWNpdHk6ICAxO1xyXG5cdCAgICBmb250LXN0eWxlOiBpdGFsaWM7IFxyXG5cdH1cclxuXHQ6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggMTkrICovXHJcblx0ICAgY29sb3I6ICAgICRibGFjaztcclxuXHQgICBvcGFjaXR5OiAgMTtcclxuXHQgICAgZm9udC1zdHlsZTogaXRhbGljOyBcclxuXHR9XHJcblx0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXHJcblx0ICAgY29sb3I6ICAgICRibGFjaztcclxuXHQgICAgZm9udC1zdHlsZTogaXRhbGljOyBcclxuXHR9XHJcblx0OnBsYWNlaG9sZGVyLXNob3duIHsgLyogU3RhbmRhcmQgKGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9zZWxlY3RvcnMtNC8jcGxhY2Vob2xkZXIpICovXHJcblx0ICBjb2xvcjogICAgJGJsYWNrO1xyXG5cdCAgICBmb250LXN0eWxlOiBpdGFsaWM7IFxyXG5cdH1cclxuXHRcclxuXHRcclxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRcclxuXHRcdEN1c3RvbSBTZWxlY3QgYm94ZXNcclxuXHRcclxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblx0XHRcclxuXHRcdCVjdXN0b20tc2VsZWN0LCBcclxuXHRcdC5jdXN0b20tc2VsZWN0IHtcclxuXHRcdFxyXG5cdFx0XHRwYWRkaW5nOiAwOyBcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHRcdFx0aGVpZ2h0OiA0MHB4OyBcclxuXHRcdFx0bWFyZ2luOiAwOyBcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRibHVlOyBcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTsgXHJcblx0XHRcdFxyXG5cdFx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLCBhcnJvdy1kb3duKTsgXHJcblx0XHRcdFxyXG5cdFx0XHQmOjphZnRlciB7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHJpZ2h0OiAwcHg7XHJcblx0XHRcdFx0dG9wOiAwOyAgXHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMC44KTsgXHJcblx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7IFxyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4OyBcclxuXHRcdFx0XHR3aWR0aDogNDBweDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmx1ZTsgXHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyOyBcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0c2VsZWN0IHsgXHJcblx0XHRcdFx0XHJcblx0XHRcdFx0YXBwZWFyYW5jZTogbm9uZTsgXHJcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTsgXHJcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTsgXHJcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTsgXHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogNDBweDsgXHJcblx0XHRcdFx0XHJcblx0XHRcdFx0b3B0aW9uIHsgY29sb3I6ICRibGFjazsgfVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6Oi1tcy1leHBhbmQgeyBkaXNwbGF5OiBub25lOyB9XHJcblx0XHRcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0Ji0tbGlnaHQge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ibHVlOyBcclxuXHRcdFx0XHRjb2xvcjogJGJsYWNrOyBcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRzZWxlY3QgeyBjb2xvcjogJGJsYWNrOyB9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0Jjo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTsgfVxyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQuaWU5ICYgeyBcclxuXHRcdFx0XHQmOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHRcdFx0XHRzZWxlY3QgeyBwYWRkaW5nLXJpZ2h0OiAwOyB3aWR0aDogMTIwJTsgfVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cclxuXHJcblxyXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdFxyXG5cdFx0Q3VzdG9tIGNoZWNrYm94ZWQgYW5kIHJhZGlvIGJ1dHRvbnNcclxuXHRcclxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5cdFx0LnBvd2VybWFpbF9yYWRpb19pbm5lcixcclxuXHRcdC5wb3dlcm1haWxfcmFkaW9faW5uZXIgbGFiZWwsIFxyXG5cdFx0LnBvd2VybWFpbF9jaGVja19pbm5lcixcclxuXHRcdC5wb3dlcm1haWxfY2hlY2tfaW5uZXIgbGFiZWwsIFxyXG5cdFx0LmZpZWxkLS1jaGVja2JveCxcclxuXHRcdC5maWVsZC0tY2hlY2tib3ggc3Bhbi5sYWJlbCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1sZWZ0OiAyMnB4OyAgfVxyXG5cclxuXHRcdC5wb3dlcm1haWxfcmFkaW9faW5uZXIsXHJcblx0XHQucG93ZXJtYWlsX2NoZWNrX2lubmVyLFxyXG5cdFx0LmZpZWxkLS1jaGVja2JveCB7IHBhZGRpbmctbGVmdDogMDsgZGlzcGxheTogYmxvY2s7IGxpbmUtaGVpZ2h0OiAxNnB4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XHJcblx0XHRcclxuXHRcdFxyXG5cdFx0JWNoZWNrYm94X3NoYWRvdyB7XHJcblx0XHRcdFxyXG5cdFx0XHQmOjpiZWZvcmUge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGJveC1zaGFkb3c6IGluc2V0IDFweCAycHggMnB4IHJnYmEoMCwwLDAsMC4yKTsgXHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQucG93ZXJtYWlsX3JhZGlvX2lubmVyIGxhYmVsOjpiZWZvcmUsIFxyXG5cdFx0LnBvd2VybWFpbF9jaGVja19pbm5lciBsYWJlbDo6YmVmb3JlLCBcclxuXHRcdC5maWVsZC0tY2hlY2tib3ggc3Bhbi5sYWJlbDo6YmVmb3JlIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHQgICAgY29udGVudDogJyc7XHJcblx0XHQgICAgd2lkdGg6IDEzcHg7XHJcblx0XHQgICAgaGVpZ2h0OiAxM3B4O1xyXG5cdFx0ICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIGNvbG9yOiAkYmxhY2s7XHJcblx0XHQgICAgbGluZS1oZWlnaHQ6IDEzcHg7IFxyXG5cdFx0ICAgIGZvbnQtc2l6ZTogOXB4O1xyXG5cdFx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdCAgICB0b3A6IDUwJTsgXHJcblx0XHQgICAgbWFyZ2luLXRvcDogLTZweDsgXHJcblx0XHQgICAgbGVmdDogMDsgXHJcbi8qIFx0XHQgICAgdG9wOiAwOyAgKi9cclxuXHRcdH1cclxuXHRcdC5maWVsZC0tY2hlY2tib3ggc3Bhbi5sYWJlbCwgXHJcblx0XHQucG93ZXJtYWlsX2NoZWNrX2lubmVyIGxhYmVsIHsgQGV4dGVuZCAlY2hlY2tib3hfc2hhZG93OyB9XHJcblx0XHRcclxuXHRcdFxyXG5cdFx0LnBvd2VybWFpbF9jaGVja19pbm5lciBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWwsIFxyXG5cdFx0LmZpZWxkLS1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmxhYmVsIHtcclxuXHRcdFx0XHJcblx0XHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBjaGVja21hcmspOyBcclxuXHRcdFxyXG5cdFx0XHRcclxuXHRcdFx0Jjo6YmVmb3JlIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93OyBcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnBvd2VybWFpbF9yYWRpb19pbm5lciBpbnB1dFt0eXBlPXJhZGlvXSwgXHJcblx0XHQucG93ZXJtYWlsX2NoZWNrX2lubmVyIGlucHV0W3R5cGU9Y2hlY2tib3hdLCBcclxuXHRcdC5maWVsZC0tY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0geyBvcGFjaXR5OiAwOyBwb3NpdGlvbjogYWJzb2x1dGU7ICBkaXNwbGF5OiBibG9jazsgbGVmdDogLTk5OTlweDsgfVxyXG5cdFx0XHJcblx0XHQucG93ZXJtYWlsX3JhZGlvX2lubmVyIGlucHV0W3R5cGU9cmFkaW9dOmZvY3VzICsgbGFiZWwsIFxyXG5cdFx0LnBvd2VybWFpbF9jaGVja19pbm5lciBpbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cyArIGxhYmVsLCBcclxuXHRcdC5maWVsZC0tY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Zm9jdXMgKyAubGFiZWwgeyAgIH0gIFxyXG5cclxuXHJcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRcclxuXHRcdFx0VFlQTzMgUE9XRVIgTUFJTFxyXG5cdFx0XHJcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5cclxuXHRcdFx0LnBvd2VybWFpbF9maWVsZHdyYXBfdHlwZV9zdWJtaXQgeyBcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQvL0BleHRlbmQgJWJ0bjsgXHJcblx0XHRcdFx0Ly9AZXh0ZW5kICVidG4tLWxpbms7IFxyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDQwcHg7IFxyXG5cdFx0XHRcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0Ly9tYXgtd2lkdGg6IDI0MHB4OyBcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRpbnB1dFt0eXBlPXN1Ym1pdF0ge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHR3aWR0aDogYXV0bzsgXHJcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlOyBcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdFx0YXBwZWFyYW5jZTogbm9uZTsgIFxyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxZW07IFxyXG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyOyBcclxuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgXHJcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDVweDsgXHJcblx0XHRcdFx0XHQmOmZvY3VzIHsgYm94LXNoYWRvdzogbm9uZTsgfVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0fVx0XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LmJ0bi0tc3VibWl0IHsgQGV4dGVuZCAlYnRuLS1saW5rOyB9XHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5wb3dlcm1haWxfbGVnZW5kIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAtOTk5OTlweDsgfVxyXG5cclxuXHJcblx0XHRcdGxhYmVsW2NsYXNzKj1cImZpZWxkLS1cIl0sIFxyXG5cdFx0XHQucG93ZXJtYWlsX2ZpZWxkd3JhcCB7IG1hcmdpbi1ib3R0b206IDhweDsgZGlzcGxheTogYmxvY2s7IH1cclxuXHJcblx0XHRcdC5sYWJlbC0tc3Ryb25nLCBcclxuXHRcdFx0LnBvd2VybWFpbF9sYWJlbCB7IFxyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkOyBcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4OyBcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0LnBvd2VybWFpbF9yYWRpb19pbm5lciBsYWJlbCwgXHJcblx0XHRcdC5wb3dlcm1haWxfY2hlY2tfaW5uZXIgbGFiZWwgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogZW0oMTZweCk7IH1cclxuXHRcdFx0XHJcblx0XHRcdC5wb3dlcm1haWxfcmFkaW9faW5uZXIgbGFiZWw6OmJlZm9yZSwgXHJcblx0XHRcdC5wb3dlcm1haWxfY2hlY2tfaW5uZXIgbGFiZWw6OmJlZm9yZSB7IHRvcDogM3B4OyAgfVxyXG5cdFx0XHRcclxuXHRcdFx0LnBvd2VybWFpbF9yYWRpb19pbm5lciBsYWJlbDo6YmVmb3JlIHtcclxuXHRcdFx0XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMTJweDsgXHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5wb3dlcm1haWxfcmFkaW9faW5uZXIgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsIHtcclxuXHRcdFx0XHJcblx0XHRcdFx0Jjo6YmVmb3JlIHtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5wb3dlcm1haWxfZmllbGRzZXQgLmN1c3RvbS1zZWxlY3QgeyBAZXh0ZW5kICVjdXN0b20tc2VsZWN0LS1saWdodDsgYmFja2dyb3VuZDogJHdoaXRlOyAmOjphZnRlciB7IGJhY2tncm91bmQ6ICR3aGl0ZTsgfSB9XHRcclxuXHRcdFx0XHJcblx0XHRcdFxyXG5cdFx0XHRcclxuXHRcdFx0LyogLS0tLS0tLSBFUlJPUiBIQU5ERUxJTkcgLS0tLS0tLS0tLSAqL1xyXG5cdFx0XHQucGFyc2xleS1lcnJvcnMtbGlzdCB7IGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbi1sZWZ0OiAwO31cclxuXHRcdFx0LnBhcnNsZXktY3VzdG9tLWVycm9yLW1lc3NhZ2UgeyBsaXN0LXN0eWxlOiBub25lOyBmb250LXNpemU6IDAuOGVtOyBjb2xvcjogcmVkOyBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgIH1cclxuXHJcbiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblx0UE9QVVAgU1VCU0NSSUJFIEZPUk1cclxuXHJcblx0U29tZSBzaW1wbGUgZGVzaWduIHR3ZWFrcyBmb3IgdGhpcyBmb3JtXHJcblx0XHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcblxyXG5cdC5zdWJzY3JpYmUtcG9wdXAgeyBcclxuXHRcdFxyXG5cdFx0Zm9ybSBmaWVsZHNldCB7IG1hcmdpbi1ib3R0b206IDA7IH1cclxuXHRcdFxyXG5cdFx0LmxhYmVsLS1zdHJvbmcgeyBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XHJcblx0XHRcclxuXHR9XHJcblxyXG4gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cdFNJTVBMRSBJTkxJTkUgRk9STVxyXG5cclxuXHRKdXN0IG9uZSBpbnB1dCBhbmQgYSBpbmxpbmUgYnV0dG9uLCB1c2VkIGZvciBzZWFyY2gsIGZpbHRlcmluZyBpbnB1dHMgYW5kIGRpcmVjdGlvbnNcclxuXHRcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuXHQlaW5saW5lLWZvcm0sIFxyXG5cdC5zZWFyY2gtZm9ybSB7XHJcblx0XHRcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFxyXG5cdFx0aW5wdXQgeyBcclxuXHRcdFx0Y29sb3I6ICRibGFjazsgcGFkZGluZy1yaWdodDogNTBweDsgXHJcblx0XHRcdFxyXG5cdFx0XHRcclxuXHRcdFx0Jjo6LW1zLWNsZWFyIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lOyBcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRidXR0b24ge1xyXG5cdFx0XHRcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlOyByaWdodDogMDsgdG9wOiAwO1xyXG5cdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgc2VhcmNoKTsgXHJcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7IFxyXG5cdFx0XHRjb2xvcjogJGJsYWNrOyBcclxuXHRcdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRcdHBhZGRpbmc6IDA7IFxyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDsgXHJcblx0XHRcdFxyXG5cdFx0XHQmLmJ0bi0tcmVzZXQge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBjbG9zZSwgZmFsc2UpOyBcdFxyXG5cdFx0XHR9XHJcblx0XHRcdHNwYW4geyBAZXh0ZW5kICV0ZXh0LS1oaWRkZW47IH1cclxuXHRcdFx0XHJcblx0XHRcdCY6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyBjb2xvcjogJHdoaXRlOyB9IFxyXG5cdFx0XHRcclxuXHRcdH1cclxuXHRcdFxyXG5cdFxyXG5cdFxyXG5cdFx0XHJcblx0XHQmLmNvbXBhY3Qge1xyXG5cdFx0XHR3aWR0aDogNDBweDtcclxuXHRcdFx0YmFja2dyb3VuZDogJGJsdWU7IFxyXG5cdFx0XHRcclxuXHRcdFx0ZmxvYXQ6IGxlZnQ7IFxyXG5cdFx0XHRcclxuXHRcdFx0aW5wdXQgeyBkaXNwbGF5OiBub25lOyB9XHJcblx0XHRcdFxyXG5cdFx0XHRidXR0b24geyBjb2xvcjogJHdoaXRlOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Ji1ibHVlIHtcclxuXHRcdFx0XHJcblx0XHRcdFxyXG5cdFx0XHRidXR0b24geyBcclxuXHRcdFx0XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTsgXHJcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQmOmhvdmVyLFxyXG5cdFx0XHRcdCY6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAkZGFya2VyLWJsdWU7IH1cclxuXHRcdFx0XHJcblx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHRcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0LnNlYXJjaC1mb3JtIHtcclxuXHRcdFxyXG5cdFx0YnV0dG9uIHtcclxuXHRcdFx0XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFxyXG5cdFx0XHQmLmFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cclxuXHR9XHJcblx0IiwiKiB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbiVwYWRkaW5nLWNvbnRhaW5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaW5jbHVkZSBwYWRkaW5nQ29udGFpbmVyO1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblxufVxuXG4uY29udGFpbmVyLFxuJWNvbnRhaW5lciB7XG5cblx0bWFyZ2luOiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdEBleHRlbmQgJXBhZGRpbmctY29udGFpbmVyO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXG5cdFx0Ji5jb21wYWN0IHtcblxuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRtYXgtd2lkdGg6IDgwMHB4O1xuXHRcdFx0cGFkZGluZzogMDtcblxuXHRcdH1cblxuXHR9XG5cbn1cblxuJWNsZWFyLFxuLmNsZWFyIHtcblx0Y2xlYXI6IGJvdGg7XG59XG5cbi5wYWdlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xufVxuXG4ucHJldmlldyB7XG5cdGJhY2tncm91bmQtY29sb3I6IHJlZDtcblx0Ym9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcblx0cGFkZGluZzogMTBweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogNTBweDtcblx0d2lkdGg6IDkwcHg7XG5cdHotaW5kZXg6IDk5OTk5O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRQQUdFIEhFQURFUlxuXHRHZW5lcmFsbHkgYWx3YXlzIGxhcmdlIGJhY2tncm91bmQgaW1hZ2UgYW5kIGEgdGl0bGUgXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1oZWFkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Ly9iYWNrZ3JvdW5kIGltYWdlIGNhbiBiZSBvdmVyd3JpdHRlbiBhcyBpbmxpbmUgc3R5bGVcblx0Ji1jbnQge1xuXG5cdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRtaW4taGVpZ2h0OiA0NTBweDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcC14bCkge1xuXHRcdFx0bWluLWhlaWdodDogNTQwcHg7XG5cdFx0fVxuXG5cdH1cblxuXHQuY29udGFpbmVyIHtcblxuXHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG5cdFx0cGFkZGluZy10b3A6ICRncmlkLXNpemVyO1xuXHRcdHotaW5kZXg6IDE7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR9XG5cblx0XHQvLyBmb3IgQ01TIHBhZ2VzIGNvbnRlbnQgaXMgY2VudGVyZWQgbW9yZS4gbWFrZSBpdCBoYXBwZW5cblxuXHRcdC5wYWdlLS1jbXMgJiB7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogJGxhcHRvcC1zaWRlLXBhZGRpbmcgKiAzO1xuXG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkZGVza3RvcC1zaWRlLXBhZGRpbmcgKiAzO1xuXG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3AteGwpIHtcblxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZyAqIDI7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0XHRUeXBvZ3JhcGh5IGV0Yy5cblxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblx0aDEge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0Zm9udC1zaXplOiBlbSg0NXB4KTtcblx0XHRoeXBoZW5zOiBhdXRvO1xuXHRcdG1hcmdpbi1ib3R0b206IDBweDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cdFx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblx0XHQtbXMtd29yZC1icmVhazogYnJlYWstYWxsO1xuXHRcdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRoZWlnaHQ6IDEwcHg7XG5cdFx0XHR0b3A6IC0yMHB4O1xuXHRcdFx0d2lkdGg6IDYwJTtcblx0XHR9XG5cblx0XHRiciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG5cdFx0XHRmb250LXNpemU6IGVtKDcwcHgpO1xuXHRcdFx0aHlwaGVuczogbm9uZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiBlbSg2OHB4LCA3MHB4KTtcblx0XHRcdHBhZGRpbmctdG9wOiAyOHB4O1xuXHRcdFx0LW1zLXdvcmQtYnJlYWs6IG5vcm1hbDtcblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0d2lkdGg6IDI2MHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQucGFnZS0tZGV0YWlsICYge1xuXG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oNjBweCk7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiBlbSg2MHB4LCA2MnB4KTtcblxuXHRcdFx0fVxuXG5cdFx0XHRiciB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkaGVpZ2hlcikge1xuXG5cdFx0XHRmb250LXNpemU6IGVtKDgwcHgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IGVtKDc4cHgsIDgwcHgpO1xuXG5cdFx0XHQmOjpiZWZvcmUge1xuXG5cdFx0XHRcdGhlaWdodDogMTRweDtcblx0XHRcdFx0dG9wOiAtMjdweDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxuXHQuc3VidGl0bGUge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiBlbSgyMnB4KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRsaW5lLWhlaWdodDogZW0oMThweCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdG1heC13aWR0aDogNjAwcHg7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjRweCk7XG5cdFx0XHRsaW5lLWhlaWdodDogZW0oMTlweCk7XG5cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRoZWlnaGVyKSB7XG5cblx0XHRcdGZvbnQtc2l6ZTogZW0oMzJweCk7XG5cdFx0XHRsaW5lLWhlaWdodDogZW0oMjBweCk7XG5cblx0XHR9XG5cblx0fVxuXHRhLmJ0bi0tbGluayB7XG5cblx0XHRAZXh0ZW5kICVidG4tLXllbGxvdztcblx0XHRtYXJnaW4tbGVmdDogMDtcblxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0XHRBbHRlcm5hdGl2ZSB2ZXJzaW9uc1xuXG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXHQmLmhlYWRlci0taG9tZSB7XG5cblx0XHQucGFnZS1oZWFkZXItY250IHtcblxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdFx0XHQmLnZpZGVvLWFjdGl2ZSB7XG5cblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG5cdFx0XHRcdGhlaWdodDogNTUwcHg7XG5cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cblx0XHRcdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTYwcHgpO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQucmVzcG9uc2l2ZS1lbWJlZCB7XG5cblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcblx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ei1pbmRleDogMTtcblxuXHRcdFx0dmlkZW8ge1xuXG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdFx0XHRtaW4taGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRtaW4td2lkdGg6IDEwMCU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQmLmlzLXBsYXlpbmcge1xuXG5cdFx0XHQucmVzcG9uc2l2ZS1lbWJlZCB7XG5cblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0LmJ0bi0tc2Nyb2xsIHtcblxuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAtMjBweDtcblx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0XHR3aWR0aDogMTIwcHg7XG5cblx0XHRcdEBpbmNsdWRlIHBhZGRpbmcocmlnaHQpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0LmJ0bi0tdmlkZW8ge1xuXG5cdFx0XHRib3R0b206IDIwcHg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogMjBweDtcblx0XHRcdHotaW5kZXg6IDUwO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXHQmLmhlYWRlci0tc2VhcmNoIHtcblxuXHRcdC5wYWdlLWhlYWRlci1jbnQge1xuXG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtaW4taGVpZ2h0OiAxMDBweDtcblxuXHRcdH1cblxuXHRcdC5jb250YWluZXIge1xuXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRcdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHRcdHotaW5kZXg6IDI7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMDBweDtcblx0XHRcdFx0cGFkZGluZy10b3A6IDEwMHB4O1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXHQmLmhlYWRlci0tb3ZlcmxheSB7XG5cblx0XHQucGFnZS1oZWFkZXItY250OjphZnRlciB7XG5cblx0XHRcdGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKCRkYXJrLWJsdWUsIDAuNDUpIDAlLCByZ2JhKCRkYXJrLWJsdWUsIDApIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuXHRcdFx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoJGRhcmstYmx1ZSwgMC40NSkgMCUsIHJnYmEoJGRhcmstYmx1ZSwgMCkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoJGRhcmstYmx1ZSwgMC40NSkgMCUsIHJnYmEoJGRhcmstYmx1ZSwgMCkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyRkYXJrLWJsdWUnLCBlbmRDb2xvcnN0cj0nJGRhcmstYmx1ZScsIEdyYWRpZW50VHlwZT0xKTsgLyogSUU2LTkgZmFsbGJhY2sgb24gaG9yaXpvbnRhbCBncmFkaWVudCAqL1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXG5cdFx0XHQvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMWU1Nzk5KzAsN2RiOWU4KzEwMCYxKzAsMCsxMDA7Qmx1ZSt0bytUcmFuc3BhcmVudCAqL1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0fVxuXG5cdH1cbn1cblxuI3ZpZGVvbG9hZGVyIHtcblxuXHRiYWNrZ3JvdW5kOiAkeWVsbG93O1xuXHRoZWlnaHQ6IDEwcHg7XG5cdGxlZnQ6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHR3aWR0aDogMDtcblx0ei1pbmRleDogMTtcblxuXHQmLmlzLWRvbmUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRQQUdFIENPTlRFTlQgRUxFTUVOVFxuXHRTaW1wbGUgdGV4dCB0eXBlIGFyZWEgdXNlZCBhY3Jvc3MgdGhlIHNpdGVcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLWNvbnRlbnQsXG4ucGFnZS1pbnRybyB7XG5cblx0cGFkZGluZzogMjBweDtcblxuXHQmLnBhZ2UtaW50cm8ge1xuXG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7XG5cblx0fVxuXG5cdEBpbmNsdWRlIHBhZGRpbmcocGFkZGluZy1sZWZ0KTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdHBhZGRpbmctYm90dG9tOiAkZ3JpZC1zaXplcjtcblx0XHRwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1zaXplcjtcblx0XHRwYWRkaW5nLXRvcDogJGdyaWQtc2l6ZXI7XG5cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXG5cdFx0d2lkdGg6IHNwYW4oNjUlKTtcblxuXHRcdC5wYWdlLS1jbXMgJiB7XG5cblx0XHRcdHBhZGRpbmctbGVmdDogJGxhcHRvcC1zaWRlLXBhZGRpbmcgKiAzO1xuXG5cdFx0XHR3aWR0aDogc3Bhbig3NSUpO1xuXG5cdFx0fVxuXG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXG5cdFx0LnBhZ2UtLWNtcyAmIHtcblx0XHRcdHBhZGRpbmctbGVmdDogJGRlc2t0b3Atc2lkZS1wYWRkaW5nICogMztcblxuXHRcdH1cblxuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3AteGwpIHtcblxuXHRcdC5wYWdlLS1jbXMgJiB7XG5cblx0XHRcdHBhZGRpbmctbGVmdDogJGRlc2t0b3AteGwtc2lkZS1wYWRkaW5nICogMjtcblxuXHRcdH1cblxuXHR9XG5cblx0QG1lZGlhIHByaW50IHtcblxuXHRcdHBhZGRpbmc6IDA7XG5cblx0XHQmLnBhZ2UtaW50cm8ge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDFjbTtcblx0XHR9XG5cdH1cbn1cblxuLnBhZ2UtY29udGVudDpub3QoLnBhZ2UtaW50cm8pICsgLnBhZ2UtY29udGVudCB7XG5cdHBhZGRpbmctdG9wOiAwO1xufVxuXG4ubm8tc2lkZWJhciB7XG5cblx0cGFkZGluZzogMjRweCAwO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG5cdFx0cGFkZGluZzogNDBweCAwO1xuXG5cdH1cblxuXHQucGFnZS1jb250ZW50IHtcblxuXHRcdEBpbmNsdWRlIHBhZGRpbmdDb250YWluZXIoKTtcblxuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRQQUdFIEFTSURFIEVMRU1FTlRcblx0QXMgdXNlZCBvbiB0aGUgcHJvamVjdCBkZXRhaWwgcGFnZVxuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtYXNpZGUge1xuXG5cdHBhZGRpbmc6IDAuNSAqICRncmlkLXNpemVyO1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXRvbmx5KSB7XG5cblx0XHQud2lkZ2V0Om5vdCgud2lkZ2V0LS10cmFuc2xhdGUpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHQud2lkZ2V0LS1tYXAgKyAud2lkZ2V0IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiA0MHB4O1xuXHRcdH1cblxuXHRcdC53aWRnZXQ6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblxuXHRcdHBhZGRpbmc6ICRncmlkLXNpemVyO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXG5cdFx0cmlnaHQ6IDA7XG5cdFx0dG9wOiA0NTBweDtcblx0XHR3aWR0aDogc3BhbigzNSUpO1xuXG5cdFx0LndpZGdldCB7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogJGxhcHRvcC1zaWRlLXBhZGRpbmc7XG5cblx0XHR9XG5cblx0XHQucGFnZS0tY21zICYge1xuXHRcdFx0d2lkdGg6IHNwYW4oMjUlKTtcblx0XHR9XG5cblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cblx0XHQud2lkZ2V0IHtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAkZGVza3RvcC1zaWRlLXBhZGRpbmc7XG5cblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcC14bCkge1xuXG5cdFx0dG9wOiA1NDBweDtcblxuXHRcdC53aWRnZXQge1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6ICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZztcblxuXHRcdH1cblx0fVxuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdEdSSURcblxuXHRTaW1wbGlmaWVkIGdyaWQsIHdpdGggdGhpcmRzLCBxdWFydGVyIGFuZCBoYWxmcyBjb2x1bW5zLiBcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jb2wtY250IHtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdG1hcmdpbi1sZWZ0OiAtMjBweDtcblx0XHRtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXG5cdH1cblxufVxuXG4uY29sLS10aGlyZCxcbi5jb2wtLXF1YXJ0LFxuLmNvbC0taGFsZiB7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cblx0XHRmbG9hdDogbGVmdDtcblx0XHRwYWRkaW5nOiAwIDIwcHg7XG5cblx0fVxuXG59XG5cbi5jb2wtLXRoaXJkIHtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdHdpZHRoOiA1MCU7XG5cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXG5cdFx0d2lkdGg6IDMzLjMzMzMlXG5cblx0fVxuXG59XG5cbi5jb2wtLXF1YXJ0IHtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdHdpZHRoOiA1MCU7XG5cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXG5cdFx0d2lkdGg6IDI1JTtcblxuXHR9XG5cbn1cblxuLmNvbC0taGFsZiB7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cblx0XHR3aWR0aDogMTAwJTtcblxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cblx0XHR3aWR0aDogNTAlO1xuXG5cdH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRURU1QIEZJTkQgQSBHT09EIExPQ0FUSU9OIEZPUiBUSEVTRSBTRUxFQ1RPUlNcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jbnQtLWNlbnRlcmVkIHtcblx0Y2xlYXI6IGJvdGg7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG5cdFx0bWFyZ2luLXRvcDogNDBweDtcblxuXHR9XG5cblx0LmJ0bi0tbGluayB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG5cbi5sb2FkaW5nIHtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDtcbn1cblxuI2JpZy12aWRlby13cmFwIC52anMtYmlnLXBsYXktYnV0dG9uLCAudmpzLWhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnZqcy1jb250cm9sLWJhciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi52LWNlbnRlciB7XG5cblx0aGVpZ2h0OiBhdXRvO1xuXHRsZWZ0OiA1MCU7XG5cdG1heC13aWR0aDogODAwcHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0b3A6IDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdHdpZHRoOiA5MCU7XG5cdHotaW5kZXg6IDI7XG5cbn1cblxuI3ByZWxvYWRlciB7XG5cdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRsZWZ0OiAwO1xuXHRvcGFjaXR5OiAxO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0d2lkdGg6IDEwMCU7XG5cdHotaW5kZXg6IDk5OTk7XG5cblx0Jjo6YWZ0ZXIge1xuXG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9sb2FkZXIuZ2lmKTtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRoZWlnaHQ6IDEyMHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTMwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTYwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdHdpZHRoOiA2MHB4O1xuXG5cdH1cbn0iLCIubWFpbi1oZWFkZXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0YmFja2dyb3VuZDogJHdoaXRlOyBcblx0aGVpZ2h0OiA5MHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKXtcblx0XHRwYWRkaW5nLWxlZnQ6ICRsYXB0b3Atc2lkZS1wYWRkaW5nO1xuXHRcdHotaW5kZXg6IDEwO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXHRcdHBhZGRpbmctbGVmdDogJGRlc2t0b3Atc2lkZS1wYWRkaW5nOyBcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLXhsKXtcblx0XHRwYWRkaW5nLWxlZnQ6ICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZzsgXG5cdH1cblx0XG5cdFxuXHRhLmxvZ28ge1xuXHRcdHdpZHRoOiAxMzJweDsgXG5cdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdG1hcmdpbjogMHB4IDIwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcblx0XHRpbWcgeyB3aWR0aDogMTAwJTsgfVxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCl7XG5cdFx0XHR3aWR0aDogMTgwcHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCl7XG5cdFx0XHRtYXJnaW46IDA7IFxuXHRcdFxuXHRcdH1cblx0fVxuXG5cdC5zbWl0LWxvZ28ge1xuXHRcdG1heC1oZWlnaHQ6IDkwcHg7XG5cdFx0bWF4LXdpZHRoOiA3NXB4O1xuXG5cdFx0c3ZnIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0bWF4LWhlaWdodDogOTBweDtcblx0XHR9XG5cdH1cblx0XG5cdC5idG4udG9nZ2xlLS1uYXZpZ2F0aW9uIHsgYmFja2dyb3VuZDogJGJsdWU7IHBvc2l0aW9uOiBmaXhlZDsgdG9wOiAyMHB4OyByaWdodDogMjBweDsgei1pbmRleDogMjAwOyAgfVxuXG5cdC5zdWJzaXRlICYge1xuXHRcdGhlaWdodDogMTEwcHg7XG5cdH1cblxufVxuXG5cbi5idG4udG9nZ2xlLS1uYXZpZ2F0aW9uIHtcblx0XG5cdEBleHRlbmQgJWJ0bi1pY29uOyBcblx0QGluY2x1ZGUgaWNvbihiZWZvcmUsaGFtYnVyZ2VyLW1lbnUpO1xuXHRcblx0aGVpZ2h0OiA1MHB4O1xuXHR3aWR0aDogNTBweDsgXG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRkaXNwbGF5OiBub25lOyBcblx0fVxuXHRcbn1cblxuLnRvcC10ZXh0IHtcblx0ZGlzcGxheTogbm9uZTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMTUycHg7XG5cdHRvcDogNTJweDtcblx0Zm9udC1zaXplOiAyMHB4O1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU4MHB4KSB7XG5cdFx0ZGlzcGxheTogaW5saW5lO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0cmlnaHQ6ICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZztcblx0XHRtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXHRcdHJpZ2h0OiAkZGVza3RvcC1zaWRlLXBhZGRpbmc7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLXhsKSB7XG5cdFx0cmlnaHQ6ICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZztcblx0fVxuXG5cdC50b3AtbGluayB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogJGRhcmstYmx1ZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxufVxuXG4vKlxuLmJ0bi50b2dnbGUtLW5hdmlnYXRpb24ge1xuXHRoZWlnaHQ6IDQwcHg7IFxuXHRsaW5lLWhlaWdodDogNDBweDsgXG5cdEBpbmNsdWRlIGljb24oYmVmb3JlLGhhbWJ1cmdlci1tZW51KTtcblx0d2lkdGg6IGF1dG87IFxuXHRiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTsgXG5cdFxuXHRzcGFuIHsgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cblx0XG5cdFxufVxuKi9cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdEZPT1RFUiBcblxuXHRTdHlsZXMgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIGZvb3RlciwgZWcuIFNpdGVtYXAsIEJhY2sgdG8gdG9wIGFuZCBDb2xvZm9uLiBcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRcblx0Lm1haW4tZm9vdGVyIHtcblx0XHRcblx0XHQuc2l0ZW1hcCB7IFxuXHRcdFx0XG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyBcblx0XHRcdHBhZGRpbmc6ICRzZWN0aW9uLXBhZGRpbmcgMDsgXG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4OyBcblx0XHRcblx0XHR9XG5cdFx0XG5cdFx0YS5iYWNrLXRvcC1saW5rIHsgXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQ6ICRncmF5OyBcblx0XHRcdGhlaWdodDogNzBweDsgXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRsaW5lLWhlaWdodDogNzBweDtcblx0XHRcdFxuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMDBtcyBlYXNlLWluLW91dDsgXG5cdFxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMjBweCk7XHRcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctdG9wKTsgXG5cdFx0XHRcdFxuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IC0yMnB4O1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTNweCk7IFxuXHRcdFx0XHRcdHRyYW5zaXRpb246IHRvcCAyMDBtcyBlYXNlLWluLW91dDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdFx0XHRcblx0XHRcdFx0d2lkdGg6IDkwcHg7XG5cdFx0XHRcdGhlaWdodDogMjBweDtcblx0XHRcdFxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZ3JheTsgXHRcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHRvcDogLTEwcHg7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC00NXB4OyBcblx0XHRcdFx0XG5cdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMgZWFzZS1pbi1vdXQsIHRvcCAyMDBtcyBlYXNlLWluLW91dDtcblx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdH1cblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJGJsdWU7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXG5cdFx0XHRcdFxuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdHRvcDogLTIwcHg7IFxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRibHVlOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRzcGFuOjpiZWZvcmUge1xuXHRcdFx0XHRcdHRvcDogLTMycHg7IFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcblx0fVxuXHRcblx0IC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcdFx0XG5cdFx0U2l0ZW1hcFxuXHRcblx0XHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0XHQuc2l0ZW1hcCB7XG5cdFx0XHRcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHQuaGVhZGluZy0tc2VjdGlvbiB7IHBhZGRpbmctdG9wOiAxOHB4OyB9XG5cdFx0XHQuaGVhZGluZy0tc2VjdGlvbjo6YmVmb3JlIHsgYmFja2dyb3VuZDogJHdoaXRlOyB3aWR0aDogMTMwcHg7IGhlaWdodDogN3B4OyB0b3A6IC0xOHB4OyB9XG5cdFx0XHRcblx0XHRcdFx0XG5cdFx0XHQuY29sLS1vdGhlciB7XG5cdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7IFxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFxuXHRcdFx0XHQvL3NwbGl0IGluIHR3byBjb2x1bW5zXG5cdFx0XHRcdC5jb2wtLW90aGVyIHVsIHsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7IFxuXHRcdFxuXHRcdFx0XHRcdHdpZHRoOiA1MCU7IFxuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMjBweDsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXRvbmx5KSB7XG5cdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdC5jb2wtLW90aGVyIHsgXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0yMHB4O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogLTIwcHg7IFxuXHRcdFx0XHRcdHdpZHRoOiBhdXRvOyBcblx0XHRcdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdFx0XHRmbG9hdDogbm9uZTsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LmhlYWRpbmctLXNlY3Rpb24geyBtYXJnaW4tbGVmdDogMjBweDsgfVxuXHRcdFx0XHR9XHRcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XHRcblx0XHRcdFx0LndpZGdldCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5oZWFkaW5nLS1zZWN0aW9uIHsgZm9udC1zaXplOiBlbSgyMnB4KTsgfVxuXHRcdFx0XHRcblx0XHRcdFx0LmNvbC0tdXBkYXRlIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0ZmxvYXQ6IHJpZ2h0OyBcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC5jb2wtLW90aGVyIHVsIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOmZpcnN0LW9mLXR5cGUgeyBwYWRkaW5nLWxlZnQ6IDA7IH1cblx0XHRcdFx0XHQmOmxhc3Qtb2YtdHlwZSB7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cdFx0XHRcdFxuXHRcdFx0XHQuaGVhZGluZy0tc2VjdGlvbiB7IGZvbnQtc2l6ZTogZW0oMjRweCk7IH1cblx0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHQud2lkZ2V0LS1zaGFyZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRcdFx0YS5idG4ge1xuXHRcdFx0XHRcdEBleHRlbmQgJWJ0bi0td2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmJ0bjpmaXJzdC1vZi10eXBlIHsgbWFyZ2luLWxlZnQ6IDA7IH1cblx0XHRcdFx0LmJ0bjpsYXN0LW9mLXR5cGUgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Lmxpc3QtLWxpbmtzIHtcblx0XHRcdFx0QGV4dGVuZCAgJWxpc3QtLXN0cmlwZWQtbGlnaHQ7IFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXG5cdCAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHQgXHRDb2xvZm9uXG5cdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRcdC5jb2xvZm9uIHtcblx0XHRcblx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTsgXG5cdFx0XHRcblx0XHRcdCYubmF2IHsgXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDcwcHg7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji5uYXYgbGkge1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDE1cHgpO1xuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcdFxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7IFxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0Ji5uYXYgbGkgYTpob3ZlciB7XG5cdFx0XHRcdFxuXHRcdFx0XHRjb2xvcjogJGRhcmstYmx1ZTsgXG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5wb3N0Q29weXJpZ2h0IHtcblxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHQmPi5wYWdlLWNvbnRlbnQge1xuXG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTVweCk7XG5cdFx0XHRcdHBhZGRpbmc6IDF2aCAxNHZ3O1xuXHRcdFx0XHR3aWR0aDogYXV0bztcblxuXHRcdFx0fVxuXHRcdH0iLCIvKiBHZW5lcmFsIE5hdmlnYXRpb24gTGF5b3V0ICovXG5cbi5uYXYge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDsgXG5cdFxuXHR9XG5cblx0bGkgeyBcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7IFxuXHRcdFx0bWFyZ2luOiAwIDE1cHg7IFxuXHRcdH1cblx0XHRcblx0XHRcblx0fVxuXHRcblx0YSB7IGNvbG9yOiAkYmxhY2s7IH1cblx0XG59XG5cdFxuXG4vKipcbiAgKiBPZmZjYW52YXMgbWVudVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKi9cbiAgXG4gICAuZG9jIFxuICAge1xuICBcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLWluLW91dDsgXG4gICB9XG5cbiAgXG4gIC5tYWluLW5hdmlnYXRpb24ge1xuXG5cdCAgXHQmIC5uYXYtLW1haW4ge1xuXG5cdFx0XHRtYXgtaGVpZ2h0OiA3MHB4O1xuXHRcdH1cbiBcbiBcdCAgXHQmIC5uYXYtLW1haW4gPiBsaSA+IGEge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTsgXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwcHgpOyBcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcyBjdWJpYy1iZXppZXIoMC41MiwgMC4wNywgMC42MSwgMS4xOSksXG5cdFx0XHRcdFx0XHRvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0IDQwMG1zOyBcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKXsgXG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHRcdH1cblx0XHR9XG5cbiAgfVxuIFxuICAubmF2LW9wZW5lZCB7XG5cdCAgXG5cdC8vICBoZWlnaHQ6IDEwMHZoO1xuXHQgLy8gb3ZlcmZsb3c6IGhpZGRlbjsgXG5cdCAgXG5cdCAgLy93aGF0IHRvIGRvIHdpdGggdGhlIGZyYW1lXG5cdCAgLmRvYyB7XG5cdFx0ICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMyMHB4LCAwLCAwKTsgXG5cdFx0ICBoZWlnaHQ6IDEwMCU7XG5cdFx0ICB3aWR0aDogMTAwJTsgXG5cdFx0ICBcblx0XHQgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3Ape1xuXHRcdCAgIFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHQgICB9XG5cdCAgfVxuXHQgIFxuXHQgIC5wYWdlOjpiZWZvcmUge1xuXHRcdCAgY29udGVudDogJyc7XG5cdFx0ICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrZXItYmx1ZSwgMC40KTtcblx0XHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQgIHRvcDogMDtcblx0XHQgIGJvdHRvbTogMDtcblx0XHQgIGxlZnQ6IDA7XG5cdFx0ICByaWdodDogMDtcblx0XHQgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgei1pbmRleDogMTsgXG5cdFx0ICBjdXJzb3I6IHBvaW50ZXI7XG5cdCAgfVxuXHQgIFxuXHQgIC8vc3RhZ2dlciBmYWRlIGluIGFuaW1hdGlvblxuXHQgIC5uYXYtLW1haW4gPiBsaSAge1xuXHRcdFx0XHRcblx0XHQgID4gYSB7XG5cdFx0XHQgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG5cdFx0XHQgIG9wYWNpdHk6IDE7XG5cdFx0ICB9XG5cdFx0ICBcblx0XHQgICY6bnRoLWNoaWxkKDEpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblx0XHQgICY6bnRoLWNoaWxkKDIpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDEwbXM7IH1cblx0XHQgICY6bnRoLWNoaWxkKDMpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDIwbXM7IH1cblx0XHQgICY6bnRoLWNoaWxkKDQpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDMwbXM7IH1cblx0XHQgICY6bnRoLWNoaWxkKDUpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDQwbXM7IH1cblx0XHQgICY6bnRoLWNoaWxkKDYpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDUwbXM7IH1cblx0XHRcdFx0XHRcblx0ICAgfVxuXHQgIFxuICB9XG5cblxuXG4vKipcbiAgKiBSZXNwb25zaXZlIG5hdmlnYXRpb25hbCBTdHJ1Y3R1cmVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gIFxuICAubWFpbi1uYXZpZ2F0aW9uIHtcbiAgXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRyaWdodDogMDsgXG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRvdmVyZmxvdzogaGlkZGVuOyBcblx0XHR3aWR0aDogMzIwcHg7IFxuXHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxuXHRcdC8vdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjUyLCAwLjA3LCAwLjYxLCAxLjE5KTtcblx0XHR6LWluZGV4Oi0xO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyBcblx0XHRcblx0XHQvL29wYWNpdHk6IDA7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFxuXHRcdHRyYW5zaXRpb246IHZpc2liaWxpdHkgMG1zIGVhc2UtaW4tb3V0IDUwMG1zOyBcblx0XHRcblx0XHRwYWRkaW5nLXJpZ2h0OiAwOyBcblx0XHRwYWRkaW5nLWxlZnQ6IDA7IFxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCl7XG5cdFx0ICAgXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0ICAgXHR9XG5cblx0XHRcblx0XHQubmF2LW9wZW5lZCAmIHtcblx0XHRcdFxuXHRcdFx0Ly9vcGFjaXR5OiAxO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdFxuXHRcdFx0dHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwbXMgZWFzZS1pbi1vdXQgMDBtczsgXG5cdFx0fVxuXHRcdFxuXHRcdC8vaGlkZSB0aGUgdG9wbWVudSBvbiBtb2JpbGVcblx0XHQubmF2LS10b3AgeyBkaXNwbGF5OiBub25lOyB9XG5cdFx0XG5cdFx0Ly9Nb2JpbGUgaGVhZGVyIGluIG5hdlxuXHRcdC50b2dnbGUtLW5hdmlnYXRpb24ge1xuXHRcdFx0d2lkdGg6IDYwcHg7XG5cdFx0XHRoZWlnaHQ6IDYwcHg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHRcdFx0dG9wOiAwOyByaWdodDogMDsgXG5cdFx0XHR6LWluZGV4OiAyMDsgXG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFya2VyLWJsdWU7IFxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgY2xvc2UsIGZhbHNlKTsgXG5cdCAgXG5cdFx0XHRzcGFuIHsgZGlzcGxheTogbm9uZTsgfVxuXHRcdH1cblx0XHQuc2VhcmNoLWZvcm0geyBcblx0XHRcdHdpZHRoOiAyNjBweDsgXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdHotaW5kZXg6IDIxOyBcblx0XHRcdFxuXHRcdFx0YnV0dG9uLFxuXHRcdFx0aW5wdXQgeyBoZWlnaHQ6IDYwcHg7IGxpbmUtaGVpZ2h0OiA2MHB4OyB9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0ICAgXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0aGVpZ2h0OiA3MHB4OyBcblx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdFxuXHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7IFxuXHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7IFxuXHRcdFx0XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuXHRcdFx0ei1pbmRleDogOTk7IFxuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cblx0XHRcdHBhZGRpbmctcmlnaHQ6ICRsYXB0b3Atc2lkZS1wYWRkaW5nOyBcblx0XHRcdHBhZGRpbmctbGVmdDogJGxhcHRvcC1zaWRlLXBhZGRpbmc7XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0Lm5hdi1jbnQgLml0ZW0tLXRvcCB7IGRpc3BsYXk6IG5vbmU7IH0gXG5cdCAgXHRcblx0XHRcdC8vdG9wbWVudVxuXHRcdFx0Lm5hdi0tdG9wIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IC05MHB4O1xuXHRcdFx0XHRyaWdodDogJGxhcHRvcC1zaWRlLXBhZGRpbmc7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQvL3NlYXJjaGZvcm1cblx0XHRcdC5zZWFyY2gtZm9ybSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAxNXB4O1xuXHRcdFx0XHRyaWdodDogJGRlc2t0b3Atc2lkZS1wYWRkaW5nO1xuXHRcdFx0XHR3aWR0aDogMjIwcHg7IFxuXHRcdFx0XHR6LWluZGV4OiAyOyBcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRidXR0b24sXG5cdFx0XHRcdGlucHV0IHsgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogNDBweDsgfVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXHRcdCAgIHBhZGRpbmctcmlnaHQ6ICRkZXNrdG9wLXNpZGUtcGFkZGluZzsgXG5cdFx0ICAgcGFkZGluZy1sZWZ0OiAkZGVza3RvcC1zaWRlLXBhZGRpbmc7XG5cdFx0ICAgXG5cdFx0ICAgLm5hdi0tdG9wLFxuXHRcdCAgIC5zZWFyY2gtZm9ybSB7XG5cdFx0ICAgXHRcdHJpZ2h0OiAkZGVza3RvcC1zaWRlLXBhZGRpbmc7XG5cdFx0ICAgfVxuXHRcdCAgIFxuXHRcdCAgIC5zZWFyY2gtZm9ybSB7XG5cdFx0ICAgXG5cdFx0ICAgXHR3aWR0aDogMzAwcHg7IFxuXHRcdCAgIFxuXHRcdCAgIH1cblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcC14bCkge1xuXHRcdCAgIHBhZGRpbmctcmlnaHQ6ICRkZXNrdG9wLXhsLXNpZGUtcGFkZGluZzsgXG5cdFx0ICAgcGFkZGluZy1sZWZ0OiAkZGVza3RvcC14bC1zaWRlLXBhZGRpbmc7XG5cdFx0ICAgXG5cdFx0ICAgLm5hdi0tdG9wLFxuXHRcdCAgIC5zZWFyY2gtZm9ybSB7XG5cdFx0ICAgXHRcdHJpZ2h0OiAkZGVza3RvcC14bC1zaWRlLXBhZGRpbmc7XG5cdFx0ICAgfVxuXHRcdH1cblxuXHQgIC5zdWJzaXRlICYge1xuXHRcdCAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG5cdCAgfVxuXG59XG5cblxuICAgLy8gQmFzaWMgZWxlbWVudCB0byB1c2UgZm9yIGV4dGVuZGluZyBlbGVtZW50c1xuICAgJW5hdi1ob2xkZXIsIFxuICAgLm5hdi1ob2xkZXIge1xuXHQgICBcblx0ICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgbGVmdDogMDsgXG5cdCAgdG9wOiAwOyBcblx0ICBib3R0b206IDA7XG5cdCAgcmlnaHQ6IDA7IFxuXHRcblx0ICBoZWlnaHQ6IDEwMHZoOyAvL2NhbGMoMTAwdmggLSA2MHB4KTsgXG5cdCAgb3ZlcmZsb3c6IGhpZGRlbjsgXG5cdCAgb3ZlcmZsb3cteTogYXV0bzsgXG5cdCAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOztcblx0ICBcblx0ICBwYWRkaW5nLWJvdHRvbTogJGdyaWQtc2l6ZXIgKiAyOyBcblx0ICBcblx0ICB0cmFuc2l0aW9uOiBsZWZ0IDIwMG1zIGVhc2UtaW4tb3V0LCBcblx0ICBcdFx0XHQgIG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQsXG5cdCAgXHRcdFx0ICB2aXNpYmlsaXR5IDEwbXMgZWFzZS1pbi1vdXQgMjAwbXM7IFxuXHQgIFx0XHRcdCAgXG5cdCAgXHRcdFx0ICBcblx0ICBcdCBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0ICBcdCBcblx0ICBcdCBcdHBhZGRpbmctYm90dG9tOiAwOyBcblx0ICBcdCBcblx0ICBcdCBcblx0ICBcdCB9XG5cdCAgIFxuICAgfVxuICAgXG4gICAvL3dyYXBwZXIgYXJvdW5kIHRoZSB3aG9sZSBuYXZpZ2F0aW9uIChsZXZlbCAwKVxuICAgLm5hdi1jbnQge1xuXG5cdCAgQGV4dGVuZCAlbmF2LWhvbGRlcjsgXG5cdCAgXG5cdCAgXHRwYWRkaW5nLXRvcDogNzBweDtcblx0ICBcdFxuXHQgIFx0dHJhbnNpdGlvbjogbm9uZTsgXG5cdCAgXG5cdCAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cblx0XHQgIHBhZGRpbmctdG9wOiAwOyBcblx0XHQgIHBvc2l0aW9uOiBzdGF0aWM7IFxuXHRcdCAgaGVpZ2h0OiBhdXRvOyBcblx0XHQgIG92ZXJmbG93OiBoaWRkZW47IFxuXHQgIH1cbiAgIH1cbiAgIFxuICAgLy9zdWJtZW51IHdyYXBwZXJzXG4gICAuc3VibmF2LWNudCB7XG5cdCAgIFxuXHQgIFx0QGV4dGVuZCAlbmF2LWhvbGRlcjsgXG5cdCAgXG5cdCAgXHR3aWR0aDogMTAwJTtcblx0ICBcdGxlZnQ6IDEwMCU7IFxuXHQgIFx0cGFkZGluZy10b3A6IDcwcHg7IFxuXHQgXG5cdCAgXHR0cmFuc2l0aW9uOiBsZWZ0IDIwMG1zIGVhc2UtaW4tb3V0IDIwMG1zLCBcblx0ICBcdFx0XHQgIFx0b3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dCAyMDBtcyxcblx0ICBcdFx0XHQgICAgdmlzaWJpbGl0eSA1MDBtcyBlYXNlLWluLW91dCAwMG1zO1xuXG5cblx0ICBcdCYub3BlbiB7XG5cdFx0IFxuXHRcdCBcdGxlZnQ6IDA7IFxuXHRcdCBcblx0XG5cdFx0IFx0dHJhbnNpdGlvbjogbGVmdCAyMDBtcyBlYXNlLWluLW91dCAzMG1zLCBcblx0XHQgIFx0XHRcdCAgXHRvcGFjaXR5IDUwMG1zIGVhc2UtaW4tb3V0IDBtcyxcblx0XHQgIFx0XHRcdCAgICB2aXNpYmlsaXR5IDUwMG1zIGVhc2UtaW4tb3V0IDBtczsgXG5cblx0ICBcdH1cblx0ICBcblx0ICBcdCYubGV2ZWwtLTEgeyB6LWluZGV4OiAzOyBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyB9XG5cdCAgXHQmLmxldmVsLS0yIHsgei1pbmRleDogNDsgYmFja2dyb3VuZDogJGRhcmtlci1ibHVlOyB9XG5cdCAgXHQmLmxldmVsLS0zIHsgei1pbmRleDogNTsgYmFja2dyb3VuZDogJGRhcmtlci1ibHVlOyB9XG5cdCAgXG5cdCAgXG5cdFx0ICBcblx0ICBcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdCAgXG5cdFx0XHR3aWR0aDogYXV0bzsgXG5cdFx0XHRwYWRkaW5nLXRvcDogMDsgIFxuXHRcdFx0IFxuXHRcdFx0Ly9vbmx5IHN0eWxlIGZpcnN0IGxldmVsIG1lZ2EgbWVudSB3cmFwcGVyXG5cdFx0XHQubmF2LS1xdWljayAgLmJ0bi0tc3VibWVudSArICYgLCBcblx0XHRcdC5uYXYtLW1haW4gPiBsaSA+ICYge1xuXHRcdCAgXHRcblx0XHQgIFx0XHRsZWZ0OiAwOyBcblx0XHQgIFx0XHR0b3A6IC01MDBweDtcbi8vXHRcdCAgXHRcdG1pbi1oZWlnaHQ6IDQzMHB4O1xuXHRcdCAgXHRcdGhlaWdodDogNDUwcHg7IFxuLy9cdFx0ICBcdFx0bWF4LWhlaWdodDogNDYwcHg7IFxuXHRcdCAgXHRcdFxuXHRcdCAgXHRcdFxuXHRcdCAgXHRcdHotaW5kZXg6IDEwMDA7XG5cdFx0ICBcdFx0b3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyAvL3otaW5kZXg6IC0xOyBcblx0XHQgIFx0XHRtYXJnaW46IDAgJGxhcHRvcC1zaWRlLXBhZGRpbmc7IFxuXHRcdCAgXHRcdFxuXHRcdCAgXHRcdG92ZXJmbG93LXk6IGhpZGRlbjsgXG5cdFx0ICBcdFx0XG5cdFx0ICBcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBjdWJpYy1iZXppZXIoMC41MiwgMC4wNywgMC42MSwgMS4xOSk7XG5cdFx0XG5cdFx0ICBcdFx0Ji5vcGVuIHsgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgei1pbmRleDogOTk5OTsgdG9wOiAxMDAlOyAgfVx0XG5cdFx0ICBcdFx0XG5cdFx0ICBcdFx0XG5cblx0XHQgIFx0fVxuXHRcdCAgXHQubmF2LS1xdWljayAgLmJ0bi0tc3VibWVudSArICYge1xuXHRcdFx0ICBcdG1hcmdpbjogMDsgXG5cdFx0ICBcdH1cblx0XHRcdC5uYXYtLW1haW4gPiBsaSA+ICYge1xuXHRcdFx0XHR3aWR0aDogYXV0bzsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHQgIFx0Ly9sZXZlbCAyICsgc3VibWVudSB3cmFwcGVyXG5cdFx0ICBcdC5zdWJuYXYtY250IHtcblx0XHRcdFx0Ly96LWluZGV4OiAtMTtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7IFxuXHRcdFx0XHR3aWR0aDogMTAwJTsgXG5cdFx0XHRcdG92ZXJmbG93LXk6IGF1dG87IFxuXHRcdFx0XHR0b3A6IDA7IFxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcbiBcdFx0XHQgICAgdHJhbnNpdGlvbjogbGVmdCAxMDBtcyBlYXNlLWluLW91dCAwMG1zLCBcblx0ICBcdFx0XHQgIFx0XHRcdG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQgMjAwbXMsXG5cdCAgXHRcdFx0ICBcdFx0XHR2aXNpYmlsaXR5IDBtcyBlYXNlLWluLW91dCA0MDBtcztcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LnN1Ym5hdi1jbnQub3BlbiB7XG5cdFx0XHRcdGxlZnQ6IDEwMCU7IFxuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlOyBcblx0XHRcdFx0XG5cdFx0XHRcdCB0cmFuc2l0aW9uOiBsZWZ0IDIwMG1zIGVhc2UtaW4tb3V0IDAwbXMsIFxuXHQgIFx0XHRcdCAgXHRcdFx0XG5cdCAgXHRcdFx0ICBcdFx0XHR2aXNpYmlsaXR5IDBtcyBlYXNlLWluLW91dCAwMG1zO1xuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC8vbW92ZSB0aGUgM3JkIGxldmVsIG92ZXIgdGhlIDJuZCBsZXZlbFxuXHRcdFx0Ji5sZXZlbC0tMyB7XG5cdFx0XHRcdGxlZnQ6IDEwMCU7IFxuXHRcdFx0XHQvL3otaW5kZXg6IDE7IFx0XG5cdFx0XHRcdFxuXHRcdFx0XHQgdHJhbnNpdGlvbjogbGVmdCAyMDBtcyBlYXNlLWluLW91dCAwMG1zLCBcblx0ICBcdFx0XHQgIFx0XHRcdG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQgMjAwbXMsXG5cdCAgXHRcdFx0ICBcdFx0XHR2aXNpYmlsaXR5IDBtcyBlYXNlLWluLW91dCA0MDBtcztcblx0XHRcdFx0XG5cdFx0XHRcdCYub3BlbiB7XG5cdFx0XHRcdFx0bGVmdDogMDsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogbGVmdCAzMDBtcyBlYXNlLWluLW91dCAwMG1zLCBcblx0ICBcdFx0XHQgIFx0XHRcdC8vb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dCAyMDAwbXMsXG5cdCAgXHRcdFx0ICBcdFx0XHR2aXNpYmlsaXR5IDBtcyBlYXNlLWluLW91dCAwMG1zO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGxpIHsgZmxvYXQ6IG5vbmU7IG1hcmdpbjogMDsgfVxuXHRcdFx0XHRcblx0XHRcdC8vbGV2ZWwgMSBzdWJtZW51IHN0cnVjdHVyZVxuXHRcdFx0Ji5sZXZlbC0tMSA+IC5zdWJtZW51LFxuXHRcdFx0Lm5hdi10ZWFzZXIudGVhc2VyLS1wYWdlLFxuXHRcdFx0Lm5hdi10ZWFzZXIuYmxvY2sge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0bGVmdDogMDsgXG5cdFx0XHRcdHdpZHRoOiAzNCU7IFxuXHRcdFx0XHRtYXJnaW46IDA7IFxuXHRcdFx0fVxuXHRcdFx0Lm5hdi10ZWFzZXIudGVhc2VyLS1wYWdlIHsgXG5cdFx0XHRcdGxlZnQ6IDM0JTsgXG5cdFx0XHR9XG5cdFx0XHQubmF2LXRlYXNlci5ibG9ja3tcblx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAzMiU7IFxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7IFxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7IFxuXHRcdFx0XHRmaWd1cmU6OmJlZm9yZSB7IHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDEgLyAxLjg4NjcpOyB9XG5cdFx0XHRcdC5leGNlcnB0IHsgIG1hcmdpbi10b3A6IDEwcHg7IGxpbmUtaGVpZ2h0OiAxLjQ1ZW07fVxuXHRcdFx0XHQ+IGEgeyBoZWlnaHQ6IDEwMCU7IH1cblx0XHRcdH0gIFxuXHRcdCAgXG5cdFx0ICBcblx0XHQgIFxuXHRcdCAgXG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcblx0XHRcdC5uYXYtLW1haW4gPiBsaSA+ICYge1xuXHRcdFx0XHRtYXJnaW46IDAgJGRlc2t0b3Atc2lkZS1wYWRkaW5nOyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHQubmF2LXRlYXNlci5ibG9jayBmaWd1cmU6OmJlZm9yZSB7XG5cdFx0XHRcdC8vcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoMSAvIDEuNik7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3AteGwpIHtcblx0XHRcdC5uYXYtLW1haW4gPiBsaSA+ICYge1xuXHRcdFx0XHRtYXJnaW46IDAgJGRlc2t0b3AteGwtc2lkZS1wYWRkaW5nOyBcblx0XHRcdH1cblx0XHRcdC5uYXYtdGVhc2VyLmJsb2NrIGZpZ3VyZTo6YmVmb3JlIHtcblx0XHRcdFx0Ly9wYWRkaW5nLXRvcDogcGVyY2VudGFnZSgxIC8gMS42KTtcblx0XHRcdH1cblx0XHR9XG5cblx0ICBcbiAgfVxuICBcbiAgXG4gIFxuICBcbiAgXG4gIFxuICBcbi8qKlxuICAqIFR5cG9ncmFwaHkgJiBEZXNpZ25cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gIFxuICBcdC5uYXYgeyBwYWRkaW5nOiAyMHB4IDA7IH1cblx0Lm5hdiB7XHRcblx0XHR1bCB7IHBhZGRpbmc6IDIwcHggMDsgbWFyZ2luOiAwOyB9XG5cdFx0bGkgeyBwYWRkaW5nOiAwIDIwcHg7IG1hcmdpbjogMDsgfVxuXG5cdFx0LmNzYy1tZW51IHtcblxuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cblx0XHRcdC5zdWJzaXRlICYge1xuXG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRyaWdodDogMDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblxuXHRcdFx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHR9XG5cdFx0XG5cdFx0Jjpub3QoLnN1Ym5hdi1jbnQpIGxpOmZpcnN0LWNoaWxkOm5vdCgubGV2ZWwtdXApIGEgeyBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuMik7IH1cblx0XHRcblx0XHRsaSA+IGEgeyBcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFxuXHRcblx0XHRcdHBhZGRpbmc6IDZweCAxMHB4OyBcdFx0XG5cdFx0XHRcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRmb250LXNpemU6IGVtKDE5cHgpOyBcblx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4yKTsgXG5cdFxuXHRcdFx0Jjo6YWZ0ZXIsXG5cdFx0XHQmOjpiZWZvcmUgeyBmb250LXNpemU6IGVtKDEycHgpOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7IH1cblx0XHRcdCY6OmFmdGVyIHsgXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTsgXG5cdFx0XHRcdHJpZ2h0OiAxMHB4OyBcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxM3B4KTsgXG5cdFx0XHRcdHRvcDogOXB4OyBcblx0XHRcdH1cdFxuXHRcdFx0Jjpmb2N1czo6YmVmb3JlLFxuXHRcdFx0Jjpob3Zlcjo6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmFjdGl2ZSxcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgXG5cdFx0XHRcdGNvbG9yOiAkeWVsbG93OyBcblx0XHRcdFx0b3V0bGluZTogMDsgXG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXHRcdGxpOmxhc3QtY2hpbGQgPiBhIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpOyB9XG5cdFx0bGkuaGVhZGluZyB7XG5cdFx0XHRhIHsgXG5cdFx0XHRcdHBhZGRpbmc6IDE1cHggMDsgIFxuXHRcdFx0XHRib3JkZXItdG9wOiAwOyBcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGljb24oYWZ0ZXIsIGFycm93LXJpZ2h0KTtcblx0XHRcdFx0XG5cdFx0XHRcdCY6OmFmdGVyIHsgZGlzcGxheTogaW5saW5lOyBwb3NpdGlvbjogc3RhdGljOyB9XG5cdFx0XHRcdCY6aG92ZXIgeyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cdFx0XHR9XG5cdFx0XHRzdHJvbmcge1xuXHRcdFx0XHRAZXh0ZW5kIC5oMzsgXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDsgXG5cdFx0XG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXHRcdFxuXHRcdGxpLmxldmVsLXVwIGEgeyBcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkOyBcblx0XHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvdy1hbHQpOyBcblx0XHRcdFxuXHRcdFx0Ym9yZGVyLXRvcDogMDsgYm9yZGVyLWJvdHRvbTogMDsgcGFkZGluZy1sZWZ0OiAwOyBcblx0XHRcdHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG5cdFx0XHRcblx0XHRcdCY6OmFmdGVyIHsgY29udGVudDogJyc7ICB9XG5cdFx0XHQmOjpiZWZvcmUgeyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGZvbnQtc2l6ZTogZW0oMThweCk7IH1cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lOyBcblx0XHRcdFx0XG5cdFx0XHRcdCY6OmJlZm9yZSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XG5cdFx0XHR9XHRcblx0XHR9XG5cdFx0XG5cdFx0Ly9zaG93IGFycm93IGlmIGhhcyBjaGlsZHJlblxuXHRcdGxpLmhhc19jaGlsZHJlbiA+IGEgeyBcblx0XHRcdEBpbmNsdWRlIGljb24oYWZ0ZXIsIGFycm93LXJpZ2h0KTtcblx0XHR9XG5cdFx0XG5cdFx0Ji5sZXZlbC0tMSAuY3VycmVudCA+IGEsIFxuXHRcdC5sZXZlbC0tMSAuY3VycmVudCA+IGEgeyBmb250LXdlaWdodDogYm9sZDsgYmFja2dyb3VuZDogJGRhcmtlci1ibHVlOyB9XG5cdFx0LmxldmVsLS0yIGE6Zm9jdXMsXG5cdFx0LmxldmVsLS0yIGE6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyB9XG5cdFx0LmxldmVsLS0yIC5jdXJyZW50ID4gYSB7IGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IH1cblx0XHRcblx0XHRcblx0XHQvLyYgPiBsaSA+IGE6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkYmx1ZTsgfVxuXHRcdFxuXHRcdFxuXHRcdC50ZWFzZXItLXBhZ2UgLmJ0bixcblx0XHQuc3VibmF2LWNudCA+IC5idG4ge1xuXHRcdFx0YmFja2dyb3VuZDogJHllbGxvdztcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgIFxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDsgXG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGljb24oYWZ0ZXIsIGFycm93LXJpZ2h0KTsgXG5cdFx0XHRcblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMC44ZW07IFxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTBweDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0Jjpmb2N1cywgXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRcdFx0XHRvdXRsaW5lOiAwOyBcblx0XHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQuc3VibmF2LWNudCA+IC5idG4ge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgXG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgY3ViaWMtYmV6aWVyKDAuNDUsIDAuNTEsIDAuNzEsIDEuMDQpIDUwbXMsXG5cdFx0XHRcdFx0XHRvcGFjaXR5IDYwMG1zIGVhc2UtaW4tb3V0IDAwbXM7IFxuXHRcdH1cblx0XHQuc3VibmF2LWNudC5vcGVuID4gLmJ0biB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyBcdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XG5cdFx0XHRcdHVsIHsgcGFkZGluZzogNDBweCAwOyB9XG5cdFx0XHRcdGxpIHsgcGFkZGluZzogMCA0MHB4OyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRsaSA+IGEgeyBcblx0XHRcdFx0XG5cdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTsgXG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCYubmF2LS10b3AgbGkgYSB7IGJvcmRlci10b3A6IDA7IH1cblx0XHRcdFx0Ly90b3AgbGV2ZWwgbWVudVxuXHRcdFx0XHQmLm5hdi0tbWFpbiB7IFxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdD4gbGkge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMCAxMHB4OyBcblx0XHRcdFx0XHRcdGZsb2F0OiBsZWZ0OyBcblx0XHRcdFx0XHRcdG1hcmdpbjogMDsgXG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDVweDsgXG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGR7IHBhZGRpbmctbGVmdDogMDsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA3MHB4OyBcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDcwcHg7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMThweCk7XG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkOyBcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRibGFjazsgXG5cdFx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwOyBcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdCY6OmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXHRcdFx0XHRcdFx0XHQuc3Vic2l0ZSAmIHtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQ+IGE6Zm9jdXMsXG5cdFx0XHRcdFx0XHQ+IGE6aG92ZXIsXG5cdFx0XHRcdFx0XHQmLmN1cnJlbnQgPiBhLFxuXHRcdFx0XHRcdFx0Ji5hY3RpdmUgPiBhLFxuXHRcdFx0XHRcdFx0Ji5hY3RpdmUgPiBhOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRkYXJrLWJsdWU7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7IFxuXHRcdFx0XHRcdFx0XHRjb2xvcjogJGRhcmstYmx1ZTsgXG5cdFx0XHRcdFx0XHRcdG91dGxpbmU6IDA7XG5cblx0XHRcdFx0XHRcdFx0LnN1YnNpdGUgJiB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0PiBhOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiAkYmx1ZTsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQ+IGxpLmhhc19jaGlsZHJlbiA+IGEge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMTVweDsgXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLGFycm93LWRvd24pOyBcblx0XHRcdFx0XHRcdCY6OmFmdGVyIHsgdG9wOiAwOyByaWdodDogMHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogc2NhbGUoMC43KTsgXHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQubGV2ZWwtdXAgeyBkaXNwbGF5OiBub25lOyB9XG5cdFx0XHRcdC5sZXZlbC11cCBzcGFuIHsgZGlzcGxheTogbm9uZTsgfVxuXHRcdFx0XHQubGV2ZWwtdXAgYSB7IGJvcmRlci10b3A6IDA7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5sZXZlbC0tMiAubGV2ZWwtdXAgeyBkaXNwbGF5OiBibG9jazsgfVxuXHRcdFx0XHRcblxuXHRcdFx0XHQuaXRlbS0tZGl2aWRlciBhOjphZnRlciB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ICAgIGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdCAgICB3aWR0aDogMXB4O1xuXHRcdFx0XHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0ICAgIGhlaWdodDogMjBweDtcblx0XHRcdFx0XHQgICAgYmFja2dyb3VuZDogJGdyYXk7XG5cdFx0XHRcdFx0ICAgIHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0XHRcdFx0ICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXHRcdFx0XHRcdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRcdCAgICBtYXJnaW4tdG9wOiAtNHB4O1xuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmLm5hdi0tdG9wIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0bGkgeyBwYWRkaW5nOiAwOyAgbWFyZ2luOiAwIDE1cHg7IH1cblx0XHRcdFx0XHRsaTpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0YSB7IGNvbG9yOiAkYmxhY2s7IHBhZGRpbmc6IDA7IGhlaWdodDogOTBweDsgbGluZS1oZWlnaHQ6IDkwcHg7IFxuXHRcdFx0XHRcdFx0Jjo6YmVmb3JlIHtkaXNwbGF5OiBub25lOyB9XG5cdFx0XHRcdFx0XHQmOmZvY3VzLCBcblx0XHRcdFx0XHRcdCY6aG92ZXIgeyBiYWNrZ3JvdW5kOiBub25lOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgY29sb3I6ICRkYXJrLWJsdWU7IG91dGxpbmU6IDA7ICB9XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdC5zdWJzaXRlICYge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJGRhcmstYmx1ZTtcblx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmVudmlyb25tZW50YWwtbWVudSB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0XHQucGFnZS1jb250ZW50IHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0XHRcdFx0XHQ+IGxpOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0bGkuaGVhZGluZyB7IGRpc3BsYXk6IG5vbmU7IH1cblx0XHRcdFx0bGkuaGVhZGluZyBhIHsgcGFkZGluZy10b3A6IDA7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5zdWJuYXYtY250ID4gLmJ0biB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA0MHB4O1xuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cdFxuXHRcdFx0Ji5uYXYtLW1haW4gPiBsaSB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXHRcblx0XHR9XG5cblx0XHRcblx0fSAgXG5cdFxuXG5cdC5zdWJtZW51IHsgXG5cdFxuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0Ly9zZXQgYWN0aXZlIHN0YXRlXG5cdFx0bGkuYWN0aXZlIHsgXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0XG5cdFx0XHQmID4gYSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTtcblx0XHRcdFx0Y29sb3I6ICR5ZWxsb3c7IFxuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDsgXG5cdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRkYXJrZXItYmx1ZTtcblx0XHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrZXItYmx1ZTtcblx0XHRcdFx0dG9wOiAxcHg7IFxuXHRcdFx0XHR6LWluZGV4OiAyOyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XHRcdFxuXHRcdC8vU3RhZ2dlciBmYWRlLWFuaW1hdGlvbiBmb3IgbGlua3MgYW5kIHN1Ym1lbnVcblx0XHQmID4gbGkgPiBhIHtcblx0XHRcdFxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMHB4KTsgXG5cdFx0XHRvcGFjaXR5OiAwO1xuXG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgY3ViaWMtYmV6aWVyKDAuNTIsIDAuMDcsIDAuNjEsIDEuMTkpLFxuXHRcdFx0XHRcdFx0b3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dCA0MDBtczsgXG5cdFx0fVxuXHRcdFxuXHRcdFx0Ly90cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7IFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7IFxuXHRcdFx0XG5cdFx0XHRcdCYgPiBsaSA+IGEge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwcHgpOyBcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdCYgLnN1Ym1lbnUgPiBsaSA+IGEgeyBcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDY1cHgpOyBcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0LnN1Ym5hdi1jbnQub3BlbiAmID4gbGkgPiBhIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0XHRcblx0XHQmID4gbGk6bnRoLWNoaWxkKDEpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDIpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDEwbXM7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDMpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDMwbXM7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDQpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDUwbXM7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDUpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDcwbXM7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDYpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDkwbXM7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDcpID4gYSB7IHRyYW5zaXRpb24tZGVsYXk6IDExMG1zOyB9XG5cdFx0JiA+IGxpOm50aC1jaGlsZCg4KSA+IGEgeyB0cmFuc2l0aW9uLWRlbGF5OiAxMzBtczsgfVxuXHRcdCYgPiBsaTpudGgtY2hpbGQoOSkgPiBhIHsgdHJhbnNpdGlvbi1kZWxheTogMTUwbXM7IH1cblx0XHQmID4gbGk6bnRoLWNoaWxkKDEwKSA+IGEgeyB0cmFuc2l0aW9uLWRlbGF5OiAxNzBtczsgfVxuXHRcblx0fVxuXHRcblx0XG5cblxuXG4vKipcbiAgKiBUZWFzZXIgZWxlbWVudHNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG5cbiAgLnRlYXNlci0tcGFnZSA+ICosIFxuICAubmF2LXRlYXNlci5ibG9jayB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLnRlYXNlci0tcGFnZSAuYnRuLS1saW5rIHsgXG4gIFx0ZGlzcGxheTogYmxvY2s7IFxuICBcbiAgXHRcbiAgfVxuIFxuICAubmF2IC5idG4tLWxpbmsgeyBcbiAgXHRzcGFuIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgXHQmOjphZnRlciB7IGxlZnQ6IGF1dG87IH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuICBcblx0ICAudGVhc2VyLS1wYWdlID4gKiwgXG5cdCAgLm5hdi10ZWFzZXIuYmxvY2sgeyBkaXNwbGF5OiBibG9jazsgfVxuXHRcdFxuXHRcdC5uYXYtdGVhc2VyIHtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgXG5cdFx0XHRjb2xvcjokd2hpdGU7IFxuXHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdH1cblx0XHQudGVhc2VyLS1wYWdlIHtcblx0XHRcdHBhZGRpbmc6IDQwcHg7IFxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdGgyIHsgcGFkZGluZy10b3A6IDA7IH1cblx0XHRcdFxuXHRcdFx0cCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiBlbSgyNHB4LCAxNnB4KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDsgXG5cdFx0XHR9XG5cdFx0XHQuYnRuIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJHllbGxvdztcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHQubmF2ICYgeyBtYXJnaW4tbGVmdDogMDsgfVxuXG5cdFx0XHRcdCY6Zm9jdXMsIFxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7IGNvbG9yOiAkYmxhY2s7IFxuXHRcdFx0XHRcdG91dGxpbmU6IDA7IFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5uYXYtdGVhc2VyLmJsb2NrIHsgaGVpZ2h0OiAxMDAlOyB9XG5cdFx0Lm5hdi10ZWFzZXIuYmxvY2sgLmNvbnRlbnQgeyBwYWRkaW5nOiAyMHB4IDQwcHggNDBweDsgfVxuXHRcdC5uYXYtdGVhc2VyLmJsb2NrIGZpZ3VyZSB7IGJhY2tncm91bmQ6ICR3aGl0ZTsgfVxuXHRcdFxuXHRcdFxuXHR9XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KDIzODBweCkge1xuXHRcdC5uYXYtdGVhc2VyLmJsb2NrIC5jb250ZW50IHsgdG9wOiAtNDBweDsgfVxuXHRcdC5uYXYtdGVhc2VyLmJsb2NrIHtcblx0XHRcdGRpdjpob3ZlciwgXHRcblx0XHRcdGE6aG92ZXIsIFxuXHRcdFx0YTphY3RpdmUsXG5cdFx0XHRhOmZvY3VzIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0LnRodW1ibmFpbCArIC5jb250ZW50IHtcblx0XHRcdFx0IFx0dG9wOiAtODBweDsgXG5cdFx0XHRcdH1cdFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG4vKipcbiAgKiBDb2xvcGhvbiBOYXZcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gIFxuLmNvbG9mb24ubmF2IHtcblx0XG5cdFxuXHRsaSA+IGEge1xuXHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XG5cdFx0Jjo6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cdFx0Jjpmb2N1cywgXHRcdFx0XHRcdFx0XHRcdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHRcbn0gXG5cblxuXG5cbi8qKlxuICAqIFF1aWNrIE5hdmlnYXRpb25cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogLSBiYWNrIGJ1dHRvblxuICAqIC0gc3VibWVudVxuICAqL1xuXG51bC5uYXYtLXF1aWNrIHtcblx0XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuXHR6LWluZGV4OiA5OTk5OyBcblx0bGlzdC1zdHlsZTogbm9uZTsgXG5cdG1hcmdpbjogMDsgXG5cdHBhZGRpbmc6IDA7IFxuXHRkaXNwbGF5OiBub25lO1xuXHR0b3A6IDEzMHB4OyBcblx0XG5cblx0QGluY2x1ZGUgcGFkZGluZyhsZWZ0KTsgXG5cblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrOyBcblx0XHR0b3A6IDIwMHB4OyBcblx0fVxuXHRcblx0LmJ0bi0tc3VibWVudSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7IFxuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSA2MDBtcyBlYXNlLWluLW91dDsgXG5cdH1cblx0XG5cdCYuZml4ZWQge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR0b3A6IDA7IFxuXG5cdFx0XG5cdFx0LmJ0bi0tc3VibWVudSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuXHRcdH1cblx0XHRcblx0fSBcblx0XG5cdC5oaWRkZW4tbGFuZGluZy1wYWdlICYgeyBcblx0XG5cdFx0b3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyAgXG5cdFx0XG5cdFx0LmJ0bi0tYmFjayB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTsgXG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gNjAwbXMgZWFzZS1pbi1vdXQ7IFxuXHRcdH1cblx0XHRcblx0XHQmLmZpeGVkIHsgXG5cdFx0XHRcblx0XHRcdC5idG4tLWJhY2sge1xuXHRcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7IFxuXHRcdFx0XG5cdFx0fVxuXHR9XG5cdFxuXHQ+IGxpIHsgbWFyZ2luOiAwOyBmbG9hdDogcmlnaHQ7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7ICB9XG5cdFxuXHRcblx0QGluY2x1ZGUgY2xlYXJmaXg7IFxuXHRcblx0PiBsaSA+IC5idG4ge1xuXHRcdFxuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGhlaWdodDogNDBweDsgXG5cdFx0bGluZS1oZWlnaHQ6IDQwcHg7IFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcblxuXHR9XG5cdC5zdWJuYXYtY250IHtcblx0XHR3aWR0aDogMzQwJTsgXG5cdFx0bWluLXdpZHRoOiA3NTBweDsgXG5cdFx0dG9wOiAtMTAwMHB4OyBsZWZ0OiA0MHB4OyBcblx0XHR6LWluZGV4OiA5OTk5OyBcblx0XHRwYWRkaW5nLXRvcDogMDsgXG5cdFx0XG5cdFx0Ji5vcGVuIHsgdG9wOiAwcHg7fVxuXHRcdFxuXHRcdCYubGV2ZWwtLTEgPiAuc3VibWVudSB7IHdpZHRoOiA1MCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgIH1cblx0XHRcblx0XHQubmF2LXRlYXNlciB7IFxuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDUwJTsgXG5cdFx0fVxuXHRcdFxuXHRcdC5zdWJuYXYtY250IHsgd2lkdGg6IDEwMCU7IG1pbi13aWR0aDogMDsgbGVmdDogMTAwJTsgfVxuXHRcdC5zdWJuYXYtY250Lm9wZW4geyB0b3A6IDA7IH1cblx0XHQuc3VibmF2LWNudC5sZXZlbC0tMy5vcGVuIHsgbGVmdDogMDsgfVxuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdC5idG4tLXN1Ym1lbnUgKyAuc3VibmF2LWNudC5vcGVuIHtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDQwcHg7IFxuXHRcdH1cblx0XG5cdFxuXHR9XG59XG4uYnRuLS1zdWJtZW51LFxuLmJ0bi0tYmFjayB7XG5cblx0QGV4dGVuZCAlYnRuLWljb24tYmY7IFxuXHRAZXh0ZW5kICVidG4taWNvbi0tbGFyZ2U7IFxuXG5cdHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlLWluLW91dDsgXG5cdFxuXHQuYWN0aXZlICYsXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgXG5cdFx0Y29sb3I6ICR3aGl0ZTsgXG5cdFx0Jjo6YmVmb3JlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjM1KTsgfVxuXHR9XG59XG4uYnRuLS1iYWNrIHtcblx0XG5cdEBleHRlbmQgJWJ0bi0teWVsbG93OyBcblx0XG5cdEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvdy1sZWZ0LCBmYWxzZSk7XG5cbn1cbi5idG4tLXN1Ym1lbnUge1xuXHRcblx0QGV4dGVuZCAlYnRuLS1kYXJrLWJsdWU7IFxuXHRcblx0QGluY2x1ZGUgaWNvbihiZWZvcmUsIGhhbWJ1cmdlci1tZW51LCBmYWxzZSk7XG5cdFxuXHQuYWN0aXZlICYge1xuXHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBjbG9zZSwgZmFsc2UpO1xuXHRcdFxuXHRcdHBhZGRpbmctbGVmdDogMTBweDsgXG5cdFx0XG5cdFx0c3BhbiB7IHBhZGRpbmctbGVmdDogMTBweDsgfVxuXHRcdFxuXHRcdCY6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuXHR9XG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiAkeWVsbG93OyBcblx0XHRcblx0fVxuXG59XG5cblxuLyogQ3VzdG9tIGJ1dHRvbiBzdHlsaW5nICovXG5cbi5zdWJuYXYtY250ID4gLmJ0biB7XG5cdG1heC13aWR0aDogMjYwcHg7IFxuXHRoZWlnaHQ6IGF1dG87XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0cGFkZGluZy1yaWdodDogNTBweDsgXG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7IFxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHRcblx0XHRcblx0Jjo6YWZ0ZXIge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcblx0XHRyaWdodDogMjBweDtcblx0XHR0b3A6IDUwJTsgXG5cdCAgICBtYXJnaW4tdG9wOiAtNnB4O1xuXHR9XG5cdFxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdERFRkFVTFQgV0lER0VUIFNUWUxJTkdcblxuXHRTdHlsaW5nIG9mIGFsbCB0aGUgd2lkZ2V0cyB1c2VkIHRocm91Z2ggb3V0IHRoZSBzaXRlXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblx0LmJsb2NrIHtcblx0XHRcblx0XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdG1hcmdpbi1ib3R0b206IDAuNSAqICRncmlkLXNpemVyO1xuXHRcdGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTsgXG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtcblx0XHRcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wOyBcblx0XG5cdFx0PiBkaXYsIFxuXHRcdD4gYSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFxuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxuXHRcdFx0XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7IFxuXHRcdH1cblx0XHRcblx0XHQudGh1bWJuYWlsIHtcblxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlOyBcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOyBcblx0XHRcdHotaW5kZXg6IDE7IFxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cblx0XHRcdC5zdWJuYXYtY250ICYge1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHR9XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFxuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcblx0XHRcdFx0cGFkZGluZy10b3A6IDEwMCU7IFx0LyogaW5pdGlhbCByYXRpbyBvZiAxOjEqL1xuXHRcdFxuXHRcdFx0XHRwYWRkaW5nLXRvcDogcGVyY2VudGFnZSggMSAvIDIgKTsgLyogcmF0aW8gb2YgNTkgOiAxNyAqL1xuXHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdGltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwOyBsZWZ0OiAwOyBcblx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXG5cdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IDEwMG1zIGVhc2UtaW4tb3V0O1xuXHRcdFx0fVx0XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0Ji5wb3J0cmFpdCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdGhlaWdodDogOTAlO1x0XG5cdFx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRcdHRvcDogNSU7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cdFxuXHRcdH1cblxuXHRcdC5jb250ZW50IHtcblx0XHQgXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcblx0XHRcdGhlaWdodDogYXV0bzsgXG5cdFxuXHRcdFx0cGFkZGluZzogMjBweCA0MHB4IDIwcHggMjBweDtcblx0XHRcdFxuXHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0Y29sb3I6ICRibGFjazsgXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0OyAgXHRcdFxuXHRcdFx0IFx0XHRcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyBcblx0XHRcdFxuXHRcdFx0ei1pbmRleDogMjsgXG5cdFxuXHRcdH1cblx0XHRcblx0XHRoMiB7XG5cdFxuXHRcdFx0QGV4dGVuZCAuaDM7IFxuXHRcdFx0cGFkZGluZy10b3A6IDA7IFxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDApOyBcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlLWluLW91dCwgb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0OyBcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7IFxuXHRcdFx0XG5cdFx0XHQmLnRleHQtLXRydW5jYXRlIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJ1bmNhdGUoMjRweCwgMjdweCwgMyk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdGgyICsgdWwsXG5cdFx0aDIgKyAuZXhjZXJwdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxNXB4OyBcblx0XHR9XG5cdFx0XG5cdFx0LmV4Y2VycHQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFxuXHRcdFx0d2lkdGg6IDkwJTsgXG5cdFx0XHRcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7XG5cdFx0XHRsaW5lLWhlaWdodDogZW0oMjRweCwgMTZweCk7XG5cdFx0XHRcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlLWluLW91dCwgb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0OyBcblx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcdFx0XHRcblx0XHRcdFxuXHRcdFx0Ji50ZXh0LS10cnVuY2F0ZSB7XG5cdFx0XHRcdEBpbmNsdWRlIHRydW5jYXRlKDE2cHgsIDI0cHgsIDIpO1xuXHRcdFx0fVxuXHRcdFx0XG5cblx0XHRcdFxuXHRcdFx0IFx0XG5cdFx0fVxuXHRcdFxuXHRcdC50YWcge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtNDBweDsgXG5cdFx0XHRsZWZ0OiAwOyBcblx0XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IDQwcHg7IFxuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRwYWRkaW5nOiAwIDIwcHg7XG5cdFx0XHRcblx0XHRcdGJhY2tncm91bmQ6ICR5ZWxsb3c7XG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4O1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTtcblx0XHRcdHotaW5kZXg6IDEwOyBcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOyBcblx0XHR9XG5cblx0XHRcblx0XHRcblx0XHQuYnRuLS12aWRlbyB7XG5cdFx0XHRmb250LXNpemU6IGVtKDYwcHgpOyBcdFxuXHRcdFx0bWFyZ2luOiAwIGF1dG87IFxuXHRcdFx0d2lkdGg6IDYwcHg7XG5cdFx0XHRoZWlnaHQ6IDYwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNjBweDtcblx0XHRcdCBcblx0XHRcdFxuXHRcdFx0Jjpob3ZlciB7IHRyYW5zZm9ybTogbm9uZTsgYmFja2dyb3VuZDogbm9uZTsgIH1cblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0LnYtY2VudGVyIHsgbWF4LXdpZHRoOiA0MDBweDsgfVxuXHRcdFxuXHRcdC52LWNlbnRlciBzdHJvbmcgeyBcblx0XHRcdGNvbG9yOiAkd2hpdGU7IFxuXHRcdFx0Zm9udC1zaXplOiBlbSgyNHB4KTsgXG5cdFx0XHRsaW5lLWhlaWdodDogMC43OyBcbi8qIFx0XHRcdGxpbmUtaGVpZ2h0OiBlbSgyN3B4LCAyNHB4KTsgKi9cblxuXHRcdFx0XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0XG5cdFx0Ly9kZWZhdWx0IHJvbGxvdmVyIFxuXHRcdFxuXHRcdGE6YWN0aXZlLFxuXHRcdGE6Zm9jdXMsXG5cdFx0YTpob3ZlciB7XG5cdFx0XHRcblx0XHRcdG91dGxpbmU6IDA7IFxuXHRcdFx0XG5cdFx0XHRpbWcgeyBvcGFjaXR5OiAxO31cdFxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdC5idG4tLXZpZGVvIHtcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTsgXG5cdFx0XHR9XG5cdFx0fVx0XG5cdFx0XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcblx0XHRcdHdpZHRoOiA1MCU7IFxuXHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDsgXG5cdFx0XHRcblx0XHRcdGZsb2F0OiBub25lOyBcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkZ3JpZC1zaXplcjtcblx0XHRcdFxuXHRcdFx0Lm92ZXJ2aWV3Lmxpc3QgJiB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0XHQuZXhjZXJwdC0tdHlwZSxcblx0XHRcdFx0XHQuZXhjZXJwdC0tcHJvcGVydHkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiBhdXRvOyB9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LmV4Y2VycHQtLXByb3BlcnR5OjpiZWZvcmUgeyBjb250ZW50OiAnLSc7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLWxlZnQ6IDEwcHg7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcblx0XHRcdHdpZHRoOiAzMy4zMzMzMyU7IFxuXHRcdFx0XG5cdFx0XHRcblx0XHRcblx0XHR9XG5cdFx0IFxuXHRcdGZvb3RlciB7XG5cdFx0XHRcblx0XHRcdGEgeyBcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4OyBcblx0XHRcdFx0cGFkZGluZzogMCAyMHB4OyBcblx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7IFxuXHRcdFx0XHRjb2xvcjogJGRhcmstYmx1ZTsgXG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgaWNvbihhZnRlciwgYXJyb3ctcmlnaHQpOyBcblx0XHRcdFx0XG4vKiBcdFx0XHRcdHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlLWluLW91dCwgY29sb3IgMTAwbXM7ICAqL1xuXHRcdFx0XHRcblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IFxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTBweDsgXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdGxlZnQ6IDA7IFxuXHRcdFx0XHRcdHRyYW5zaXRpb246IGNvbG9yIDBtcywgbGVmdCA0MDBtcyBlYXNlLWluLW91dDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRibHVlOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOjphZnRlciB7IGxlZnQ6IDNweDsgfVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdFxuXHRcdH1cblxuXHR9XG5cblx0XHRcblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFx0XG5cdFx0VmFyaWF0aW9uc1xuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRcdFxuXHQlYmxvY2stYW5pbWF0ZWQge1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcblx0XHRcdFxuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDsgXG5cdFx0XHQ+IGEsXG5cdFx0XHQ+IGRpdiB7IGhlaWdodDogMTAwJTsgfVxuXHRcdFx0XG5cdFx0XHQuY29udGVudCB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiAwOyBcblx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0fVxuXHRcdFx0ZGl2OmhvdmVyLCBcdFxuXHRcdFx0YTpob3ZlciwgXG5cdFx0XHRhOmFjdGl2ZSxcblx0XHRcdGE6Zm9jdXMge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHQudGh1bWJuYWlsICsgLmNvbnRlbnQge1xuXHRcdFx0XHQgXHR0b3A6IC00MHB4OyBcblxuXHRcdFx0XHRcblx0XHRcdFx0fVx0XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXG5cdH1cblx0XG5cdC5ibG9jayB7XG5cblx0XHQuY250LS1vdmVyZmxvdyAmLCBcblx0XHQuY250LS1jYXJvdXNlbCAmIHtcblx0XHQvL1x0ZmxvYXQ6IGxlZnQ7IFxuXHRcdFxuXHRcdFxuXHRcdCAmOmZvY3VzIHsgb3V0bGluZTogMDsgfVxuXHRcdH1cblx0XHRcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcblx0XHRcdExpc3QgdmlldyBpbiBpbiBmaWx0ZXIgb3ZlcnZpZXdcblx0XHRcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XHRcblx0XHQub3ZlcnZpZXcubGlzdCAmIHtcblx0XHRcdFxuXHRcdFx0aGVpZ2h0OiBhdXRvO1x0XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4OyBcblx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdFxuXHRcdFx0JjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdGZpZ3VyZSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7IFxuXHRcdFx0XHR6LWluZGV4OiAyOyBcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlOyBcblx0XHRcdFx0bGVmdDogMDsgXG5cdFx0XHRcdFxuXHRcdFx0fVx0XHRcblx0XHRcdFxuXHRcdFx0LmNvbnRlbnQge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cGFkZGluZzogMTBweDsgXG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQudGFnIHtcblx0XHRcdFx0cG9zaXRpb246IHN0YXRpYzsgXG5cdFx0XHRcdG1hcmdpbi10b3A6IC0xMHB4O1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogLTEwcHg7IFxuXHRcdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4OyBcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDsgXG5cdFx0XHRcdHBhZGRpbmc6IDAgMTBweDsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGgyLnRleHQtLXRydW5jYXRlIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJ1bmNhdGUoMjRweCwgMjdweCwgMyk7XG5cdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0cC5leGNlcnB0LnRleHQtLXRydW5jYXRlIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJ1bmNhdGUoMTZweCwgMjRweCwgMik7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC50YWcudGFnLS12ZXNzZWwge1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHQgICAgbWFyZ2luLXRvcDogMjBweDtcblx0XHRcdCAgICBtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0ICAgIGhlaWdodDogNTBweDtcblx0XHRcdCAgICBsaW5lLWhlaWdodDogNTBweDtcblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFx0XG5cdFx0XHRcdC5jb250ZW50IHtcdFxuXHRcdFx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7IFxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMjMwcHg7IFxuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4OyBcblx0XHRcdFx0fVxuXHRcdFx0XHRmaWd1cmUge1xuXHRcdFx0XHRcdHdpZHRoOiAyMTBweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdH1cblx0XHRcdFx0aDIudGV4dC0tdHJ1bmNhdGUge1xuXHRcdFx0XHRcdG1heC1oZWlnaHQ6IDI3cHg7IFxuXHRcdFx0XHRcdHdpZHRoOiA5MCU7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdHAuZXhjZXJwdC50ZXh0LS10cnVuY2F0ZSB7XG5cdFx0XHRcdFx0bWF4LWhlaWdodDogMjRweDsgXG5cdFx0XHRcdFx0IFxuXHRcdFx0XHR9XG5cdFx0XHRcdHAge21hcmdpbi10b3A6IDVweDt9XG5cdFx0XHRcdC50YWcge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRib3R0b206IDBweDtcblx0XHRcdFx0XHRtYXJnaW46IDA7IFxuXHRcdFx0XHRcdGhlaWdodDogNDBweDtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDIwcHg7IFxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4OyBcblx0XHRcdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRcdFx0ei1pbmRleDogMjsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Ji50YWctLXZlc3NlbCB7XG5cdFx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0ICAgIHotaW5kZXg6IDI7XG5cdFx0XHRcdFx0ICAgIGxlZnQ6IDIxMHB4O1xuXHRcdFx0XHRcdCAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcblx0XHRcdFx0XHQgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdCAgICBsaW5lLWhlaWdodDogMTEwcHg7XHRcblx0XHRcdFx0XHQgICAgbWFyZ2luLXRvcDogMDsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcblx0XHRcdFx0XG5cdFx0XHRcdC5jb250ZW50IHtcblx0XHRcdFx0XHR0b3A6IDA7IFxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdFx0fVx0XHRcblx0XHRcdFx0YTpob3ZlciwgXG5cdFx0XHRcdGE6YWN0aXZlLFxuXHRcdFx0XHRhOmZvY3VzIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5jb250ZW50IHtcblx0XHRcdFx0XHQgXG5cdFx0XHRcdFx0IFx0dG9wOiAwOyBcblx0XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cblx0XHRcdFx0XHRcblx0XHQmLS1icmFuZCB7XG5cdFx0XHRcblx0XHRcdC5iZy0td2hpdGUgJiB7XG5cdFx0XHRcdFxuXHRcdFx0XHRmaWd1cmUgeyBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTsgfVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGZpZ3VyZSB7IGJhY2tncm91bmQ6ICR3aGl0ZSFpbXBvcnRhbnQ7IH1cblx0XHRcdGZpZ3VyZS50aHVtYm5haWw6OmJlZm9yZSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCAxIC8gMi4zNik7IFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuY29udGVudCB7ICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTsgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cblx0XHRcdFxuXHRcdFx0cC5leGNlcnB0LnRleHQtLXRydW5jYXRlIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJ1bmNhdGUoMTZweCwgMjBweCwgMyk7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0Ji0tdGlwLCBcblx0XHQubWFwcy10aXAgJiB7XG5cdFx0XHRcblx0XHRcdHBhZGRpbmc6IDA7IFxuXHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5IWltcG9ydGFudDtcblx0XHRcdGZvbnQtc2l6ZTogMThweDsgXG5cdFx0XHRoZWlnaHQ6IDEwMCUhaW1wb3J0YW50OyBcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcblx0XHR9XG5cdFx0Lm1hcHMtdGlwICYge1xuXHRcdFx0XG5cdFx0XHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHsgdG9wOiAxMHB4OyByaWdodDogMTBweDsgYm90dG9tOiAxMHB4OyB9XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7IFxuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdCYtLXRpcCB7IFxuXHRcdFx0XG5cdFx0XHRAZXh0ZW5kICVibG9jay1hbmltYXRlZDtcblx0XHRcdFxuXHRcdFx0aGVpZ2h0OiBhdXRvIWltcG9ydGFudDtcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHsgd2lkdGg6IDM3MHB4OyB9XG5cdFx0fVx0XG5cblx0XHQmLS12aXN1YWwsXG5cdFx0Ji0tbmV3cyxcblx0XHQmLS12ZXNzZWwge1xuXHRcdFx0XG5cdFx0XHRAZXh0ZW5kICVibG9jay1hbmltYXRlZDtcblx0XG5cdFx0fVxuXHRcdFxuXHRcdCYtLXZlc3NlbCB7XG5cdFx0XHRcblx0XHRcdC50YWctLXZlc3NlbCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7IFxuXHRcdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSk7IFxuXHRcdFx0XHRoZWlnaHQ6IDUwcHg7IFxuXHRcdFx0XHRmb250LXNpemU6IDkwcHg7IFxuXHRcdFx0XHR0b3A6IC01MHB4OyBcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDc4cHg7IFxuXG5cdFx0XHR9XG5cdFx0XG5cdFx0XHQub3ZlcnZpZXcubGlzdCAmIHtcblx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcdCYgLmNvbnRlbnQgeyBwYWRkaW5nLWxlZnQ6IDM2MHB4OyB9XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHQmLS10ZWFzZXIge1xuXHRcdFx0XG5cdFx0XHRmaWd1cmU6OmJlZm9yZSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCAxIC8gMS42KTsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XG5cdFx0XHRcdGhlaWdodDogMjQzcHg7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47IFxuXHRcdFx0XHRcblx0XHRcdFx0PiBhIHsgaGVpZ2h0OiAxMDAlOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHQuY29udGVudCB7IFxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTsgXG5cdFx0XHRcdFx0Ym90dG9tOiAwOyB3aWR0aDogMTAwJTsgXG5cdFx0XHRcdFx0bWluLWhlaWdodDogNDBweDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRAaW5jbHVkZSB0cnVuY2F0ZSgyNHB4LCAyN3B4LCAxKTtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0YTpob3ZlciwgXG5cdFx0XHRcdGE6YWN0aXZlLFxuXHRcdFx0XHRhOmZvY3VzIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0LmNvbnRlbnQgeyBwYWRkaW5nLWJvdHRvbTogNjBweDsgfVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYtLXZpZGVvIHtcblx0XHRcdFxuXHRcdFx0LnRodW1ibmFpbCB7XG5cdFx0XHRcdEBpbmNsdWRlIGljb24oYWZ0ZXIsIHBsYXkpOyBcblx0XHRcdFx0XG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiBlbSg0MHB4KTsgXG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMjBweDtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAtMjBweDsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTsgXG5cdFx0XHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZS1pbi1vdXQ7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRhOmhvdmVyIHtcblx0XHRcdFx0XG5cdFx0XHRcdC50aHVtYm5haWw6OmFmdGVyIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRjb2xvcjogJHllbGxvdzsgXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0XHRcdFxuXHRcdCYtLWNvbnRhY3Qge1xuXHRcdFx0XG5cdFx0XHQuaW5mbyB7IFxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkbWVkaXVtLWJsdWU7IFxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XHRwYWRkaW5nOiAwOyBcblx0XHRcdFx0bWluLWhlaWdodDogMTE1cHg7IFxuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0OyBcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTsgXG5cdFx0XHRcblx0XHRcdFx0XG5cblx0XHRcdFx0LmJ0biB7XG5cdFx0XHRcdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHQgICAgdG9wOiA1MCU7XG5cdFx0XHRcdFx0ICAgIGxlZnQ6IDUwJTtcblx0XHRcdFx0XHQgICAgbWFyZ2luLWxlZnQ6IC05MHB4O1xuXHRcdFx0XHRcdCAgICBtYXJnaW4tdG9wOiAtMjBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQucHJvZmlsZSB7XG5cdFx0XHRcdHdpZHRoOiA4MHB4OyBcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRyaWdodDogMjBweDtcblx0XHRcdFx0dG9wOiAyMHB4O1xuXHRcdFx0XHQvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWJsdWU7IFxuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlOyBcblx0XHRcdFx0XG5cdFx0XHRcdGltZyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGxpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cdFx0XHRcblx0XHRcdHVsIHtcblx0XHRcdFxuXHRcdFx0XHRtYXJnaW46IDIwcHg7IFxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdGEgeyBcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGJsdWU7IFxuXHRcdFx0XHRcdGhlaWdodDogMzBweDtcblx0XHRcdFx0XHR3aWR0aDogMzBweDsgXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDMwcHg7IFxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7IFxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGV4dGVuZCAlbGluay0tYm9yZGVyZWQ7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHQuaGVhZGluZyB7IGRpc3BsYXk6IGJsb2NrOyBsaW5lLWhlaWdodDogMS4zOyBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYW5kc2NhcGVvbmx5KSB7XG5cdFx0XHRcdFx0bWFyZ2luOiAxNXB4OyBcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRsaSB7IHBhZGRpbmctbGVmdDogMDsgJjo6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfX1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdC5oZWFkaW5nIHsgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRcdGxpIHsgZGlzcGxheTogYmxvY2s7IG1hcmdpbi1ib3R0b206IDVweDsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGEgeyBcblx0XHRcdFx0XHRcdC8vcmVzZXQgdGhlIGJ1dHRvbiBzdHlsaW5nXG5cdFx0XHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxOyBcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7IFxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTsgXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IGVtKDE1cHgsIDE2cHgpOyBcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4OyBcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Jjo6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyBmb250LXNpemU6IGVtKDE2cHgpOyBtYXJnaW4tcmlnaHQ6IDIwcHg7ICB9XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdHNwYW4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbG9yOiAkZGFyay1ibHVlOyBiYWNrZ3JvdW5kOiAkbWVkaXVtLWJsdWU7IH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Ly90cnVuY2F0ZSBzdHJpbmdzXG5cdFx0XHRcdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47IFxuXHRcdFx0XHRcdFx0XHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHQvL2dyYWRpZW50IGFmbG9vcFxuXHRcdFx0XHRcdFx0Lypcblx0XHRcdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKCRtZWRpdW0tYmx1ZSwwKSAwJSwgcmdiYSgkbWVkaXVtLWJsdWUsMSkgMTAwJSk7IFxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgkbWVkaXVtLWJsdWUsMCkgMCUscmdiYSgkbWVkaXVtLWJsdWUsMSkgMTAwJSk7IFxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQobGVmdCByaWdodCwgIHJnYmEoJG1lZGl1bS1ibHVlLDApIDAlLHJnYmEoJG1lZGl1bS1ibHVlLDEpIDEwMCUpOyBcblx0XHRcdFx0XHRcdFx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRtZWRpdW0tYmx1ZScsIGVuZENvbG9yc3RyPSckbWVkaXVtLWJsdWUnLEdyYWRpZW50VHlwZT0xICk7XG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDMwcHg7IFxuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7IFxuXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQqL1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0fVxuXHRcdCYtLXdpZGUge1xuXHRcdFx0XHRcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFxuXHRcdFx0XHR3aWR0aDogMTAwJTsgIFxuXHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHRydW5jYXRlKDI0cHgsIDI3cHgsIDEpO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0d2lkdGg6IDY2LjY2NiU7IFxuXHRcdFx0XHRcblx0XHRcdFx0ZmlndXJlOjpiZWZvcmUge1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGZpZ3VyZSB7IGhlaWdodDogMTAwJTsgb3ZlcmZsb3c6IHZpc2libGU7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5jb250ZW50IHsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IHdpZHRoOiAxMDAlOyB0b3A6IGF1dG87IH1cblx0XHRcdFx0XG5cdFx0XHRcdGE6aG92ZXIge1xuXHRcdFx0XHRcblx0XHRcdFx0XHQuY29udGVudCB7IHBhZGRpbmctYm90dG9tOiA2MHB4OyB0b3A6IGF1dG87IH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0Ji0tbGlua3Mge1xuXHRcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0XG5cdFx0XHQ+IGRpdiB7IGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IH1cblx0XHRcdFxuXHRcdFx0Ly9oMiB7IGZvbnQtc2l6ZTogZW0oMjRweCk7IH1cblx0XHRcblx0XHRcdC5saXN0LS1saW5rcyB7XG5cdFx0XHRcdEBleHRlbmQgICVsaXN0LS1zdHJpcGVkLWxpZ2h0OyBcblx0XHRcdFx0XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxuXHRcdFx0XHRwYWRkaW5nOiAyMHB4OyBcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRsaS5oZWFkaW5nIHsgYm9yZGVyLXRvcDogMDsgY29sb3I6ICR3aGl0ZTsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXHRcdFx0XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMjBweDsgXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogNTBweDsgXG5cdFx0XHRcdFx0QGluY2x1ZGUgaWNvbihhZnRlciwgYXJyb3ctcmlnaHQpOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRhOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cdFx0XHRcdGE6OmFmdGVyIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTRweCk7IFxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRyaWdodDogMjBweDtcblx0XHRcdFx0XHR0b3A6IDUwJTsgXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLTEwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXHRcdFx0XG5cdFx0XHRcdC5jb250ZW50LFxuXHRcdFx0XHQubGlzdC0tbGlua3Mge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDQwcHg7IFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHRcdCYtLWxvY2F0aW9uIHtcblx0XHRcblx0XHRcdC5jb250ZW50IHsgcGFkZGluZzogMjBweDsgfVxuXHRcdFx0XG5cdFx0XHR1bCB7IG1hcmdpbjogMjBweCAwOyB9XG5cdFx0XHRcblx0XHRcdGEgeyBjb2xvcjogJGJsdWU7IH1cblx0XHRcdFxuXHRcdFx0YSBzcGFuIHsgYm9yZGVyLWNvbG9yOiAkYmx1ZTsgfVxuXHRcdFx0XG5cdFx0XHR1bCwgcCB7IGZvbnQtc2l6ZTogZW0oMTZweCk7IH1cdFxuXHRcdFx0XG5cdFx0XHQubWFwcy10aXAgJiB7XG5cdFx0XHRcdG92ZXJmbG93LXk6IGF1dG87IFxuXHRcdFx0XHRoZWlnaHQ6IDM3MHB4O1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdFxuXHRcdCYtLWFjdGlvbnMge1xuXHRcdFx0XG5cdFx0XHRAZXh0ZW5kICVibG9jay1hbmltYXRlZDtcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdC5hY3Rpb25zIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTsgXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAtNDBweDtcblx0XHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuOyBcblx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDsgXG5cdFx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdFx0ei1pbmRleDogLTE7IFxuXHRcdFx0XHRwYWRkaW5nOiAxMHB4IDEwcHg7IFxuXHRcdFx0XHR0cmFuc2l0aW9uOiBib3R0b20gMTAwbXMgZWFzZS1pbi1vdXQ7IFxuXHRcdFx0XHRmb250LWZhbWlseTogZW1wdHk7IFxuXHRcdFx0XHRcblx0XHRcdFx0LmRvd25sb2FkIHsgbWFyZ2luOiAwIDRweDsgfVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFx0XG5cdFx0XHRcdC5hY3Rpb25zIHsgcGFkZGluZy10b3A6IDdweDsgfVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0ZGl2OmhvdmVyIHtcblx0XHRcdFx0LmNvbnRlbnQgeyB0b3A6IC00MHB4IWltcG9ydGFudDsgfVxuXHRcdFx0XHQuY3RhIHsgYm90dG9tOiA0MHB4OyB9XG5cdFx0XHRcdC5jdGEuZG93bmxvYWQuc2luZ2xlIHsgYm90dG9tOiAwOyB9XG5cdFx0XHRcdC5hY3Rpb25zIHsgei1pbmRleDogMzsgYm90dG9tOiAwOyB2aXNpYmlsaXR5OiB2aXNpYmxlOyAgfVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0Ji5ibG9jay0tdGVhc2VyIC5jb250ZW50IHsgdG9wOiBhdXRvOyB9XG5cdFx0XHQmLmJsb2NrLS10ZWFzZXIgZGl2OmhvdmVyIC5jb250ZW50IHsgdG9wOiBhdXRvIWltcG9ydGFudDsgcGFkZGluZy1ib3R0b206IDYwcHg7ICB9XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcblx0XHRcdFx0Lm92ZXJ2aWV3Lmxpc3QgJiAge1xuXHRcdFx0XHRcblx0XHRcdFx0XHQuYWN0aW9ucyB7IFxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHRcdFx0XHRcdFx0Ym90dG9tOiAwOyByaWdodDogMDsgXG5cdFx0XHRcdFx0XHR3aWR0aDogYXV0bzsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlLWluLW91dCwgcmlnaHQgMTAwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0XHR9XHRcblx0XHRcdFx0XHRkaXY6aG92ZXIge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0LmN0YSB7IGJvdHRvbTogMDsgfVxuXHRcdFx0XHRcdFx0LmFjdGlvbnMgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHRcblx0XHQmLS1ncm93IHtcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFxuXHRcdFx0XHQudGh1bWJuYWlsOjpiZWZvcmUgeyBwYWRkaW5nLXRvcDogMjAwJTsgfVxuXHRcblx0XHRcdH1cblx0XHRcdC8vLnRodW1ibmFpbCBpbWcgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTsgdG9wOiAtNTAlOyB9XG5cdFx0XHRcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHQmLm5hdi10ZWFzZXIge1xuXHRcdFxuXHRcdFx0XHRvbCxcblx0XHRcdFx0dWwgeyBcblx0XHRcdFx0XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDsgXG5cdFx0XHRcdFx0cGFkZGluZzogMDsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogZW0oMjRweCwgMTZweCk7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0bGkgeyBwYWRkaW5nLWxlZnQ6IDA7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFxuXHRcdFxuXHRcdFx0dWwgeyBAZXh0ZW5kICVsaXN0LS1idWxsZXQ7IH1cblx0XHRcdG9sIHsgXG5cdFx0XHRcdGxpc3Qtc3R5bGU6IGRlY2ltYWw7IFxuXHRcdFx0XHRjb3VudGVyLXJlc2V0OiBzZWN0aW9uOyBcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudDtcblxuXHRcdFx0XHRsaTo6YmVmb3JlIHsgICBcblx0XHRcdFx0XHRjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcblx0XHRcdFx0XHRjb250ZW50OiBjb3VudGVyKHNlY3Rpb24pIFwiLiBcIjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLS1saXN0IHtcblx0XHRcdFxuXHRcdFx0dWwgeyBAZXh0ZW5kICVsaXN0LS1zdHJpcGVkOyBwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50O31cblx0XHRcdFxuXHRcdFx0dWwgbGkgeyBwYWRkaW5nLXRvcDogM3B4OyBwYWRkaW5nLWJvdHRvbTogM3B4OyB9XG5cdFx0XHRcblx0XHRcdGxpOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cdFx0XHRcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XG5cdFx0RWxlbWVudHMgdXNlZCBhIGNyb3NzIGJsb2NrXG5cdFx0XG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXHRcblx0XHQuY3RhIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHJpZ2h0OiAwOyBcblx0XHRcdFxuXHRcdFx0Zm9udC1mYW1pbHk6IGVtcHR5OyBcblx0XHRcdFxuXHRcdFx0ei1pbmRleDogMzsgXG5cdFx0XHRcblx0XHRcdHRyYW5zaXRpb246IGJvdHRvbSAxMDBtcyBlYXNlLWluLW91dDsgXG5cdFx0XG5cdFx0XHQuYnRuIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0bWFyZ2luOiAwOyBcdFxuXHRcdFx0XHRcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkZ3JheTtcblx0XHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDsgXG5cdFx0XHRcdGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG5cdFx0XHRcdGJvcmRlci10b3Atd2lkdGg6IDFweDtcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcdC5jYXB0aW9uICYge1xuXHRcdFx0XHRcdGJvcmRlci1sZWZ0LXdpZHRoOiAwcHg7XG5cdFx0XHRcdFx0Ym9yZGVyLXRvcC13aWR0aDogMHB4O1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodC13aWR0aDogMHB4O1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZS1pbi1vdXQ7IFxuXHRcdFx0XHRcblx0XHRcdFx0LmlzLXRvdWNoICYge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogJHllbGxvdztcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkeWVsbG93OyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdGEubGluay1sYWJlbCxcblx0XHRcdHNwYW4ubGluay1sYWJlbCB7XG5cdFx0XHRcdHJpZ2h0OiA0MHB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5OyBcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA1cHg7IFxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0xcHg7XG5cdFx0XHRcdFxuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0YS5saW5rLW1vcmUsXG5cdFx0XHRzcGFuLmxpbmstbW9yZSB7XG5cdFx0XHRcdHdpZHRoOiA0MHB4O1xuXHRcdFx0XHRwYWRkaW5nOiAwOyBcblx0XHRcdFx0QGluY2x1ZGUgaWNvbihhZnRlcixhcnJvdy1yaWdodCk7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmNhcHRpb24gJiAuYnRuIHsgYmFja2dyb3VuZDogJHdoaXRlO31cblx0XHRcblx0XHRcdCYuZG93bmxvYWQgc3Bhbi5saW5rLW1vcmUsXG5cdFx0XHQmLmRvd25sb2FkIGEubGluay1tb3JlIHtcblx0XHRcdFx0QGluY2x1ZGUgaWNvbihhZnRlcixkb3dubG9hZCwgZmFsc2UpO1xuXHRcdFx0fVxuXHRcdFx0Ji52aWRlbyBzcGFuLmxpbmstbW9yZSxcblx0XHRcdCYudmlkZW8gYS5saW5rLW1vcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLHBsYXksIGZhbHNlKTtcblx0XHRcdH1cblx0XHRcdCYucGRmIHNwYW4ubGluay1tb3JlLFxuXHRcdFx0Ji5wZGYgYS5saW5rLW1vcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLHBkZiwgZmFsc2UpO1xuXHRcdFx0fVxuXHRcdFxuXHRcdFxuLy9cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFxuXHRcdFxuXHRcdFx0XHQuYmxvY2sgPiBkaXY6aG92ZXIgJiwgXG5cdFx0XHRcdGE6YWN0aXZlICYsXG5cdFx0XHRcdGE6Zm9jdXMgJixcblx0XHRcdFx0YTpob3ZlciAmIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQuYnRuIHsgYmFja2dyb3VuZDogJHllbGxvdzsgY29sb3I6ICRibGFjazsgYm9yZGVyLWNvbG9yOiAkeWVsbG93OyB9XG5cdFx0XHRcdFx0YS5saW5rLWxhYmVsLCBzcGFuLmxpbmstbGFiZWwgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTt9XG5cdFx0XHRcdH1cblx0XHRcdFxuLy9cdFx0XHR9XG5cdFx0XHRcdFxuXHRcdH1cblx0XG5cdFx0LmJsb2NrIC5idG4uY2xvc2Uge1xuXHRcdFxuXHRcdFx0QGV4dGVuZCAlYnRuLWljb247XG5cdFx0XHRAZXh0ZW5kICVidG4tLXdoaXRlOyBcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgaWNvbihiZWZvcmUsY2xvc2UsIGZhbHNlKTtcdFxuXHRcdFx0XG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuNyk7IFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRyaWdodDogMDsgXG5cdFx0XHRcblx0XHRcdGRpc3BsYXk6IG5vbmU7IFxuXHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcblx0XHRcdFx0ei1pbmRleDogNDsgXG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXHRcdFxuXHRcdFxuXHRcdC5tYXBzLXRpcCB7IG92ZXJmbG93OiBoaWRkZW47IH1cblx0XHRcblxuXHQvLyBmbGV4IGJsb2Nrc1xuXHQuZGlzcGxheS1mbGV4IHtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cblx0XHRcdC5ibG9jayB7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHQuYmxvY2stLWxpbmtzIC5jb250ZW50LCAuYmxvY2stLWxpbmtzIC5saXN0LS1saW5rcyB7XG5cdFx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxuLnZpZGVvLWJsb2NrIHtcblxuXHQuY29udGVudC0tc2Vjb25kYXJ5IHtcblxuXHRcdD4gZGl2IHtcblxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRtaW4taGVpZ2h0OiA0NTBweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0LmJ0bi0tdmlkZW8ge1xuXG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fSBcblx0XHRcdFxufVxuXG5cblxuLyogRXhjZXB0aW9ucyAqL1xuXG4udGFnLS12ZXNzZWwuaWNvbi12ZXNzZWxfb2Zmc2hvcmVfZmxvYXRpbmctc2hlZXJsZWcgeyBmb250LXNpemU6IDY1cHg7IH0iLCIuY29va2llLW5vdGljZSB7XG5cbiAgICAkYnV0dG9uLWNvbG9yLWNvbmZpcm06ICR5ZWxsb3c7XG4gICAgJGJ1dHRvbi1jb2xvci1kZW55OiB3aGl0ZTtcblxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDUwMDA7XG5cbiAgICAmW2RhdGEtY29va2llLW5vdGljZT1cIndhbGxcIl0ge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjUpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgLy8gIEhvbGRlciBvZiB0aGUgdGhlIG5vdGljZSBjb250ZW50XG4gICAgICAgIC5jbi1ib3gge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmW2RhdGEtY29va2llLW5vdGljZT1cImJhclwiXSB7XG5cbiAgICAgICAgLy8gIEhvbGRlciBvZiB0aGUgdGhlIG5vdGljZSBjb250ZW50XG4gICAgICAgIC5jbi1ib3gge1xuXG4gICAgICAgICAgICBAZXh0ZW5kICVwYWRkaW5nLWNvbnRhaW5lcjtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICB9XG5cbiAgICAgICAgLmNuLWJ1dHRvbi13cmFwcGVyIHtcblxuICAgICAgICAgICAgLmNuLWJ1dHRvbiB7XG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5jb29raWUtbm90aWNlLW9wZW4gJiB7XG5cbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIH1cblxuICAgIC8vICBVc2VyIGdlbmVyYXRlZCBjb250ZW50XG4gICAgLmNuLWNvbnRlbnQge1xuXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIG1heC13aWR0aDogODIwcHg7XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyNHB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBlbSgyN3B4LCAyNHB4KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyAgXCJZZXNcIiBhbmQgXCJub1wiIGJ1dHRvbnNcbiAgICAuY24tYnV0dG9uLXdyYXBwZXIge1xuXG4gICAgICAgIC5jbi1idXR0b24ge1xuXG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrZXItYmx1ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICAgICAgLy8gIFwiWWVzXCJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1jb2xvci1jb25maXJtO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnV0dG9uLWNvbG9yLWNvbmZpcm0sIDAuNik7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gIFwiTm9cIlxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tY29sb3ItZGVueTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJ1dHRvbi1jb2xvci1kZW55LCAwLjYpO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgIEZVTEwtV0lEVEggU0xJREVSXG5cbiAgIEludHJvIHdpdGgga2V5IGZpZ3VyZXMgYW5kIGFzaWRlIHdpZGdldHMgZm9yIHNoYXJlIGFuZCBjb250YWN0IGRldGFpbHNcblxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNsaWRlci0tZncsXG4uc2xpZGVyLWhpZ2hsaWdodCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcbiAgICB9XG5cbiAgICAuc2xpZGUge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG5cbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTAwMG1zO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGlkZSB7XG5cbiAgICAgICAgb3BhY2l0eTogMC40O1xuXG4gICAgICAgICYuc2xpY2stY3VycmVudCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMDAwbXM7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uaGlnaGxpZ2h0ZWQtc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgLnNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMzJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG4gICAgLmhpZ2hsaWdodGVkLXNsaWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgLnNsaWRlci0tZncge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAuY29udGVudC0tbGVmdCAmIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWRlIHtcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpZGVyLWhpZ2hsaWdodCB7XG4gICAgICAgIC5jb250ZW50LS1zZWNvbmRhcnkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBTbGlkZXIgTmF2aWdhdGlvblxuXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNsaWRlci1uYXYge1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICB3aWR0aDogMTUlO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgaWNvbjtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTIsIDAuMDcsIDAuNjEsIDEuMTkpO1xuICAgIH1cblxuICAgICYuc2xpZGVyLW5leHQge1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvdy1yaWdodCwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zbGlkZXItcHJldiB7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctbGVmdCwgZmFsc2UpO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xpZGVyLXByZXYgc3BhbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB0b3A6IDA7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblxuICAgICAgICB3aWR0aDogMTUlO1xuXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpZGVyLXByZXYgc3BhbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLXhsKSB7XG5cbiAgICAgICAgd2lkdGg6IDIwJTtcblxuICAgIH1cblxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIFNsaWRlciBjYXB0aW9uXG5cbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2xpZGUgLmNhcHRpb24ge1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcblxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC41NSwgMC4yLCAwLjY3LCAxLjA0KSxcbiAgICBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0IDEwMG1zO1xuXG4gICAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xuXG4gICAgei1pbmRleDogNTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG4gICAgICAgIG1heC13aWR0aDogODAlO1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cbiAgICAgICAgcGFkZGluZzogNDBweDtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcblxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIHBhZGRpbmcobGVmdCk7XG5cbiAgICAmLmNhcHRpb24tLXJpZ2h0IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZyhyaWdodCk7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1jbnQgJixcbiAgICAuc2xpZGVyLS1zcGxpdCAmIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgJi5jYXB0aW9uLS1yaWdodCB7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiBlbSgyNHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG4gICAgaDQgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiBlbSgxNnB4KTtcbiAgICB9XG5cbiAgICBhIHtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTIsIDAuMDcsIDAuNjEsIDEuMTkpO1xuXG4gICAgfVxuXG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzLFxuICAgIGE6YWN0aXZlIHtcblxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgb3V0bGluZTogMDtcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkeWVsbG93O1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLnNsaWNrLWFjdGl2ZSAuY2FwdGlvbixcbi5zbGlkZS5hY3RpdmUgLmNhcHRpb24sXG4uYWN0aXZlIC5zbGlkZSAuY2FwdGlvbiB7XG5cbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zO1xuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgQ29udGVudCBlbGVtZW50c1xuXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuZGl2LnNsaWRlIGEuYnRuLS12aWRlbyB7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICB6LWluZGV4OiA2O1xuXG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICBIT1JJWk9OVEFMIElNQUdFIEFDQ09SRElPTlxuXG4gICBBY2NvcmRpb24gd2l0aCBsYXJnZSBiYWNrZ3JvdW5kIGltYWdlcyBhbmQgY2FwdGlvbnNcblxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNlY3Rpb24tLWFjY29yZGlvbi1mdyB7XG5cbiAgICAuYWNjb3JkaW9uLWNudCB7XG5cbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA0NjBweDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uYWNjb3JkaW9uLWNudCB7XG4gICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy9cdG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAuc2xpZGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcblxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMiwgMC42NywgMS4wNCkgMzAwbXMsXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZSAyMDBtcyBjdWJpYy1iZXppZXIoMC41NSwgMC4yLCAwLjY3LCAxLjA0KSAwbXMsXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMiwgMC42NywgMS4wNCkgMG1zO1xuXG4gICAgICAgIC8vdHJhbnNpdGlvbi1kZWxheTogMzAwbXM7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrLWJsdWUsIDAuNyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDIwMG1zIGN1YmljLWJlemllcigwLjU1LCAwLjIsIDAuNjcsIDEuMDQpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZGFyay1ibHVlLCAwLjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhY2tzdHJldGNoIHtcblxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIH1cblxuICAgIH1cbiAgICAuc2xpZGUuYWN0aXZlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAvKiBcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjUwcHg7ICovXG5cbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMiwgMC42NywgMS4wNCkgMzAwbXMsXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZSAyMDBtcyBjdWJpYy1iZXppZXIoMC41NSwgMC4yLCAwLjY3LCAxLjA0KSAzMDBtcztcblxuICAgICAgICAvL3RyYW5zaXRpb24tZGVsYXk6IDMwMG1zO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC52LWNlbnRlciB7XG5cbiAgICAgICAgICAgIHotaW5kZXg6IDY7XG5cbiAgICAgICAgfVxuXG4gICAgICAgID4gaDQge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAwcHgpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDQwMG1zIGN1YmljLWJlemllcigwLjU1LCAwLjIsIDAuNjcsIDEuMDQpIDEwMG1zLFxuICAgICAgICAgICAgb3BhY2l0eSA0MDBtcyBsaW5lYXIgMG1zO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpZGUgLmNhcHRpb24ge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBob25lLWxzKSB7XG5cbiAgICAgICAgLnNsaWRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC8vLnNsaWRlLmFjdGl2ZSB7IGJhY2tncm91bmQtc2l6ZTogYXV0byA1MDBweDsgfVxuXG4gICAgICAgIC5zbGlkZSAuY2FwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MSU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG4gICAgICAgIC5zbGlkZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZSAuY2FwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblxuICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNDYwcHg7XG5cbiAgICAgICAgICAgICY6Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM0JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmlzLW9wZW5lZCAuc2xpZGUge1xuXG4gICAgICAgICAgICB3aWR0aDogMjIlO1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU2JTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWNjb3JkaW9uLS10d28ge1xuXG4gICAgICAgICAgICAuc2xpZGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtb3BlbmVkIC5zbGlkZSB7XG5cbiAgICAgICAgICAgICAgICB3aWR0aDogNDQlO1xuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTYlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWNjb3JkaW9uLS1mb3VyIHtcblxuICAgICAgICAgICAgLnNsaWRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLW9wZW5lZCAuc2xpZGUge1xuXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1JTtcblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGUgLmNhcHRpb24ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXG4gICAgICAgIC5zbGlkZTpmaXJzdC1jaGlsZCA+IGg0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2xpZGUgPiBoNCB7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDQwcHg7XG4gICAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICBmb250LXNpemU6IGVtKDI3cHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA3MDBtcyBjdWJpYy1iZXppZXIoMC41MiwgMC4wNywgMC42MSwgMS4xOSkgMG1zLFxuICAgICAgICBvcGFjaXR5IDcwMG1zIGxpbmVhciA0MDBtcztcblxuICAgIH1cblxuICAgIC5zbGlkZSAuYnRuLS1jbG9zZSB7XG5cbiAgICAgICAgQGV4dGVuZCAlYnRuLWljb247XG4gICAgICAgIEBpbmNsdWRlIGljb24oYmVmb3JlLCBjbG9zZSk7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgdG9wOiAyMHB4O1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIH1cbiAgICAuc2xpZGUuYWN0aXZlIC5idG4tLWNsb3NlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICBTTElDSyBTTElERVIgREVGQVVMVCBTVFlMSU5HXG5cbiAgIERlZmF1bHQgQ1NTIG5lZWRlZCBmb3IgdGhlIHNsaWNrIHNsaWRlclxuXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zbGljay10cmFjazpiZWZvcmUsXG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuXG4gICAgY29udGVudDogJyc7XG59XG5cbi5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xufVxuXG5bZGlyPSdydGwnXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgIFNMSUNLIFNMSURFUiBOQVZJR0FUSU9OXG5cbiAgIFN0eWxpbmcgZm9yIHRoZSBkZWZhdWx0IGFycm93cyBhbmQgZG90dGVkIG5hdmlnYXRpb25cblxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNsaWNrLWRvdHMge1xuXG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBib3R0b206IC0zNXB4O1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgIGhlaWdodDogMTBweDtcblxuICAgIC5hY2NvcmRpb24tY250ICsgJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmNudC0tY2Fyb3VzZWwgJixcbiAgICAuY250LS1vdmVyZmxvdyAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblxuICAgICAgICAvKlxuLmNudC0tY2Fyb3VzZWwgJixcbiAgICAgICAgLmNudC0tb3ZlcmZsb3cgJiB7XG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAgfVxuKi9cblxuICAgICAgICAuYWNjb3JkaW9uLWNudCArICYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIGxpIHtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogMHB4IDdweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgYnV0dG9uIHtcblxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMDBtcyBlYXNlLCB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLnNsaWNrLWFycm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNTIsIDAuMDcsIDAuNjEsIDEuMTkpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgaWNvbihiZWZvcmUsIGFycm93LXJpZ2h0KTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2xpY2stcHJldiB7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgaWNvbihiZWZvcmUsIGFycm93LWxlZnQpO1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldG9ubHkpIHtcblxuICAgICAgICAuY250LS1vdmVyZmxvdyAmLnNsaWNrLW5leHQsXG4gICAgICAgIC5jbnQtLW92ZXJmbG93ICYuc2xpY2stcHJldiB7XG5cbiAgICAgICAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmNudC0tb3ZlcmZsb3cgJi5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jbnQtLW92ZXJmbG93ICYuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG4gICAgICAgICYuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICByaWdodDogLTYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IC02MHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmZvY3VzOm5vdCguc2xpY2stZGlzYWJsZWQpLFxuICAgICY6aG92ZXI6bm90KC5zbGljay1kaXNhYmxlZCksXG4gICAgJjphY3RpdmU6bm90KC5zbGljay1kaXNhYmxlZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2xpY2stZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG59XG5cbiVzbGljay1hcnJvdy1ibHVlLFxuLnNsaWNrLWFycm93LWJsdWUge1xuXG4gICAgYmFja2dyb3VuZDogJGJsdWU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgICY6Zm9jdXM6bm90KC5zbGljay1kaXNhYmxlZCksXG4gICAgJjpob3Zlcjpub3QoLnNsaWNrLWRpc2FibGVkKSxcbiAgICAmOmFjdGl2ZTpub3QoLnNsaWNrLWRpc2FibGVkKSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XG4gICAgfVxuXG59XG4iLCJAbWl4aW4gbGVnZW5kY29sb3Ige1xuXG5cdCRsZWdlbmQtY29sb3JzIDogJGRhcmtlci1ibHVlLCAkZGFyay1ibHVlLCAkYmx1ZSwgJHZpb2xldC1ibHVlLCAkbWVkaXVtLWJsdWUsICRsaWdodC1ibHVlLCAkZ3JheTsgXG5cblx0QGVhY2ggJGxlZ2VuZC1jb2xvciBpbiAkbGVnZW5kLWNvbG9ycyB7XG5cdFx0JGk6IGluZGV4KCRsZWdlbmQtY29sb3JzLCAkbGVnZW5kLWNvbG9yKTtcblx0XHRcblx0XHQmID4gKjpudGgtY2hpbGQoI3skaX0pIHsgLy8gVGhpcyBjYXVzZXMgbG9vcGluZyB0byBvY2N1ciBhZnRlciB0aGVyZSBhcmUgJG51bS1jaGlsZHJlbiBjaGlsZCBlbGVtZW50cy5cblx0ICAgICAgXG5cdCAgICAgICY6OmJlZm9yZSB7XG5cdFx0ICAgICAgY29udGVudDogJyc7XG5cdFx0ICAgICAgaGVpZ2h0OiAxNXB4O1xuXHRcdCAgICAgIHdpZHRoOiAxNXB4O1xuXHRcdCAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHQgICAgICBiYWNrZ3JvdW5kOiAkbGVnZW5kLWNvbG9yOyBcblx0XHQgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0ICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTsgXG5cdCAgICAgIH1cblx0ICAgICBcblx0ICAgICBcblx0ICAgIFxuXHQgICAgfVxuXHRcblx0XHRcblx0XG5cdH1cbn1cblxudWxbZGF0YS1waWUtaWRdIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgXG4gIFxuICBAaW5jbHVkZSBsZWdlbmRjb2xvcjsgXG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHQucGFnZS1jb250ZW50LmNvbnRlbnQtLWNoYXJ0IHsgcGFkZGluZy1yaWdodDogMDsgfVxufVxuXG5cbi8qIE93biBzdHlsaW5nICovXG5cbi5jaGFydC1jbnQgeyBcblx0bWFyZ2luOiAwIGF1dG87XG5cdFxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdC5jaGFydC0tZG91YmxlICYge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogNTAlOyBcblx0XHR9XG5cdH1cbn1cblxuLmNoYXJ0LS1waWUge1xuXHRcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXgtd2lkdGg6IDM3MHB4O1xuXHRoZWlnaHQ6IDA7XG5cdHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXHRtYXJnaW46IDAgYXV0bzsgXG5cdHdpZHRoOiAxMDAlO1x0XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XG5cdFx0cGFkZGluZy1ib3R0b206IDQwMHB4OyBcblx0XG5cdH1cblx0XG5cdC5jaGFydC1jbnQuZG91YmxlICYge1xuXHRcdFxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyBcblx0XHRcdHdpZHRoOiA1MCU7IFxuXHRcdH1cblxuXHR9XG5cdFxuXHRcblx0Ly9kaXNwbGF5OiB0YWJsZTsgXG5cdC5jaGFydCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDsgbGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR6LWluZGV4OiAxOyBcblx0XHRoZWlnaHQ6IDEwMCU7IFxuXHRcdFxuXHRcdFxuXHRcdHRleHQgeyBcblx0XHRcdGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkOyBcblx0XHR9XG5cdFx0XG5cdFx0XG5cdH1cblx0XG5cdC5pbm5lciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiA3MCU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHRvcDogNTAlOyBcblx0XHRsZWZ0OiA1MCU7IFxuXHRcdHotaW5kZXg6IDM7IFxuLy9cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTtcblx0XHRoZWlnaHQ6IDkwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQ1cHg7XG5cdFx0bWFyZ2luLWxlZnQ6IC0zNSU7IFxuXHRcdFxuXHRcdD4gKiB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cdFx0XG5cdFx0aDMge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDsgXG5cdFx0XHRmb250LXNpemU6IGVtKDIwcHgpO1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwcHg7IFxuXHRcdH1cdFxuXHRcdHN0cm9uZyB7XG5cdFx0XHRmb250LXNpemU6IGVtKDMwcHgpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRjb2xvcjogJGJsdWU7IFxuXHRcdH1cblx0XHRzbWFsbCB7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2cHgpO1xuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcblx0XHRcdHN0cm9uZyB7IGZvbnQtc2l6ZTogZW0oMzRweCk7IH1cblx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0XG59XG4uY2hhcnQtLWxlZ2VuZCB7XG5cdGNsZWFyOiBib3RoOyBcblx0XG5cdFxuXHR1bDpudGgtY2hpbGQoMikgeyBkaXNwbGF5OiBub25lOyB9XG5cdFxuXHRsaSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4OyBcblx0XHRtYXJnaW4tbGVmdDogMzBweDsgXG5cdFx0XG5cdFx0XG5cdFx0Ji5hY3RpdmU6OmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkeWVsbG93OyBcblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XG5cdFx0d2lkdGg6IDYwJTtcblx0XHRtYXJnaW46IDAgYXV0bzsgXG5cdFxuXHRcdCYubGVnZW5kLS1ob3Jpem9udGFsIHsgd2lkdGg6IDEwMCU7IH1cblx0XHQmLmxlZ2VuZC0taG9yaXpvbnRhbCB1bCB7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWxlZnQ6IDA7IH1cblx0XHQmLmxlZ2VuZC0taG9yaXpvbnRhbCBsaSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiAxMHB4OyAgfVx0XHRcblx0fVxuXG5cdFxuXHQuY2hhcnQtY250LmRvdWJsZSAmIHtcblx0XHRcblx0XHR1bDpmaXJzdC1jaGlsZCB7IGRpc3BsYXk6IG5vbmU7IH1cblx0XHRcblxuXG5cdFx0XG5cdH1cbn1cblxuLmdvb2dsZS12aXN1YWxpemF0aW9uLXRvb2x0aXAge1xuXHRiYWNrZ3JvdW5kOiAkeWVsbG93IWltcG9ydGFudDsgXG5cdGJveC1zaGFkb3c6IG5vbmUhaW1wb3J0YW50OyBcblx0Ym9yZGVyOiAwIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7IFxuXHRwYWRkaW5nOiAxMHB4IWltcG9ydGFudDtcbn1cbi5nb29nbGUtdmlzdWFsaXphdGlvbi10b29sdGlwLWl0ZW0tbGlzdCB7XG5cdG1hcmdpbjogMCFpbXBvcnRhbnQ7IFxufVxuLmdvb2dsZS12aXN1YWxpemF0aW9uLXRvb2x0aXAtaXRlbSB7XG5cdCY6OmJlZm9yZSB7IGNvbnRlbnQ6ICcnIWltcG9ydGFudCB9XG5cdG1hcmdpbjogMCFpbXBvcnRhbnQ7IFxuXG59XG5cblxuXG5cbiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRJRlJBTUUgQ0hBUlQgRUxFTUVOVFNcblxuXHRDb250ZW50IGVsZW1lbnQgd2l0aCBiaWcgbnVtYmVycyB0byBkaXNwbGF5IGRhdGEsIHVzZWQgb24gSVIgbGFuZGluZ3NwYWdlXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0XG5cdFxuXHQuY29udGVudC0tc3RvY2stY2hhcnQge1xuXHRcdFxuXHRcdGlmcmFtZSB7IFxuXHRcdFx0XG5cdFx0XHR3aWR0aDogMTAwJTsgXG5cdFx0XHRoZWlnaHQ6IDEwMCU7IFxuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdCNtaW5pQ2hhcnQgeyBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuXHRcblx0fVxuXHRcblx0LnN0b2NrLWNoYXJ0LS1wcmljZUluZm9ybWF0aW9uIHtcblx0XHRcblx0XHRcblx0XHRpZnJhbWUgeyBoZWlnaHQ6IDU1MHB4OyB9XG5cdFx0XG5cdFx0XG5cdFx0XG5cdH1cblx0LnN0b2NrLWNoYXJ0LS1lZmZpY2llbmN5Q2FsY3VsYXRvciB7XG5cdFx0XG5cdFx0aWZyYW1lIHsgXG5cdFx0XHRoZWlnaHQ6IDU2MHB4OyBcblx0XHRcdFxuXHRcdH1cblx0fVxuXHRcblx0LnN0b2NrLWNoYXJ0LS1oaXN0b3JpY2FsUHJpY2VEaXNwbGF5IHtcblx0XG5cdFx0aWZyYW1lIHsgaGVpZ2h0OiAzNzVweDsgfVxuXHR9IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgIE5VTUJFUlMgQ09OVEVOVCBFTEVNRU5UXG5cbiAgIENvbnRlbnQgZWxlbWVudCB3aXRoIGJpZyBudW1iZXJzIHRvIGRpc3BsYXkgZGF0YSwgdXNlZCBvbiBJUiBsYW5kaW5nc3BhZ2VcblxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRlbnQtLW51bWJlcnMge1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cbiAgICAgICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc2VjdGlvbi1wYWRkaW5nO1xuXG4gICAgfVxuXG59XG5cbi5udW1iZXJzLWNudCB7XG5cbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgICAucGFnZS1zZWN0aW9uICYge1xuXG4gICAgICAgIEBleHRlbmQgJWNvbnRhaW5lcjtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG4gICAgICAgIC5iaWctbnVtYmVyIHtcblxuICAgICAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLmJpZy1udW1iZXIge1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgaDMge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYW5kc2NhcGVvbmx5KSB7XG5cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjFweCk7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICBmb250LXNpemU6IGVtKDM4cHgpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgfVxuXG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgIERJUkVDVElPTlMgRk9STSBFTEVNRU5UU1xuXG4gICBsaW5rcyB0b2dnbGUgYSBzaW1wbGUgZm9ybSB0byBnZXQgZGlyZWN0aW9uc1xuXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi50b2dnbGUtbGlua1tkYXRhLWRpcmVjdGlvbnNdIHtcblxuICAgIGNvbG9yOiAkYmx1ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsdWU7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBpY29uKGFmdGVyLCBjbG9zZSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuXG4gICAgICAgICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLmZvcm0tLWRpcmVjdGlvbnMge1xuXG4gICAgQGV4dGVuZCAlaW5saW5lLWZvcm07XG4gICAgQGV4dGVuZCAlaW5saW5lLWZvcm0tYmx1ZTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWJsdWU7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMXB4ICRibHVlO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuXG4uZGlyZWN0aW9ucy1jbnQge1xuXG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgIExJU1QgV0lUSCBCVVRUT04gLyBEUk9QRE9XTiBFTEVNRU5UXG5cbiAgIFVzZWQgZm9yIHRoZSBjYWxlbmRhciwgZG93bmxvYWQgb3ZlcnZpZXcgZXRjLlxuXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi5saXN0LS1vdmVydmlldy1hY3Rpb24ge1xuXG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuXG4gICAgPiBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNjBweCAxMHB4IDIwcHg7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIH1cblxuICAgID4gbGkgdGltZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMTZweCk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgID4gbGkgaDIge1xuICAgICAgICBmb250LXNpemU6IGVtKDE4cHgpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIGEubGluayB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWNvbihhZnRlciwgYXJyb3ctcmlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XG5cbiAgICAgICAgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWJsdWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ibHVlO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuICAgICAgICA+IGxpIHtcblxuICAgICAgICAgICAgcGFkZGluZzogMCAxNzBweCAwIDIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcblxuICAgICAgICAgICAgbWF4LWhlaWdodDogNjBweDtcblxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmxpc3QtLWZsZXgtaGVpZ2h0ID4gbGkge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gbGkgdGltZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBsaSBoMiB7XG4gICAgICAgICAgICAvL0BpbmNsdWRlIHRydW5jYXRlKDE4cHgsIDE4cHgsIDEpO1xuICAgICAgICAgICAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAvL3doaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgLy9tYXgtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5saXN0LS1jYWxlbmRhciA+IGxpIGgyIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5idG4ge1xuXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICB3aWR0aDogNTBweDtcblxuICAgICAgICBAZXh0ZW5kICVidG4taWNvbi1hZjtcbiAgICAgICAgQGV4dGVuZCAlYnRuLWljb24tcmVzcG9uc2l2ZTtcblxuICAgICAgICBmb250LXNpemU6IGVtKDE4cHgsIDE4cHgpO1xuXG4gICAgICAgICY6OmFmdGVyLFxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIH1cblxuICAgICAgICAub3BlbixcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlLWRhcmtlbmVkO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJjpub3QoLmxpc3QtLWNhbGVuZGFyKSAuYnRuIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE0MnB4O1xuXG4gICAgICAgICAgICAmOjphZnRlcixcbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgfVxuXG5cbiAgICB9XG5cbiAgICAmLmxpc3QtLWNhbGVuZGFyIC5idG4ge1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgfVxuXG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgICAgIFZhcmlhdGlvbnMgaW4gbGF5b3V0XG5cbiAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgJi5saXN0LS1jZW50ZXJlZCB7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgfVxuXG4gICAgLnBhZ2UtY29udGVudCAmIHtcblxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICA+IGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cbiAgICAgICAgLy9maW5hbmNpYWwgcHVibGljYXRpb24gb3ZlcnZpZXcgd2l0aCB0ZWFzZXIgaW1hZ2UgdG8gdGhlIHJpZ2h0XG4gICAgICAgIC5jbnQtLWFzaWRlICYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygzMy4zMzMzJSArIDIwcHgpO1xuICAgICAgICB9XG5cblxuICAgIH1cblxuICAgIC5iZy0tbGlnaHQtYmx1ZSAmID4gbGkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgfVxuXG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgICAgIE90aGVyIGVsZW1lbnRzXG5cbiAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgLmJ0bi0tZHJvcGRvd24ge1xuXG4gICAgICAgIEBpbmNsdWRlIGljb24oYWZ0ZXIsIGFycm93LWRvd24sIGZhbHNlKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uKGFmdGVyLCBhcnJvdy10b3AsIGZhbHNlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5idG4uaWNvbi1jYWxlbmRhciB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAucGFnZS1jb250ZW50IGgzICsgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuXG5cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgIEFVVE9DT01QTEVURSBEUk9QRE9XTlxuXG4gICBCYXNlZCBvbiBqUXVlcnkgVUkncyBBdXRvY29tcGxldGVcblxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4udWktYXV0b2NvbXBsZXRlIHtcblxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuXG4gICAgbGkge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmstdmlvbGV0O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnVpLXN0YXRlLWZvY3VzIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnR4LXNvbHItYXV0b3N1Z2dlc3QsXG4udWktYXV0b2NvbXBsZXRlIHtcblxuICAgIGJhY2tncm91bmQ6ICRkYXJrLXZpb2xldDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwMDtcblxuICAgIC5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbixcbiAgICAudWktbWVudS1pdGVtIHtcblxuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLnVpLXN0YXRlLWZvY3VzLFxuICAgICAgICAmLmF1dG9jb21wbGV0ZS1zZWxlY3RlZHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLnVpLW1lbnUtaXRlbSB7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbn1cblxuLnNtYWxsLWRvd25sb2FkcyB7XG4gICAgd2lkdGg6IDYwJTtcbn1cbiIsIlxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0REVGQVVMVCBXSURHRVQgU1RZTElOR1xuXG5cdFN0eWxpbmcgb2YgYWxsIHRoZSB3aWRnZXRzIHVzZWQgdGhyb3VnaCBvdXQgdGhlIHNpdGVcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblx0LndpZGdldCB7XG5cdFx0XG5cdFx0aDQge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgyNHB4KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7IFxuXHRcdFx0cGFkZGluZy10b3A6IDA7IFxuXHRcdH1cblx0XHRcblx0XHR1bCB7XG5cdFx0XG5cdFx0XHRAZXh0ZW5kICVsaXN0LS1jbGVhbjsgXG5cblx0XHRcdFxuXHRcdH1cblx0XG5cdFx0ZGwgeyBsaW5lLWhlaWdodDogMS4xZW19XG5cdFx0ZHQgeyBwYWRkaW5nLXRvcDogMTVweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWJsdWU7ICB9XG5cdFx0ZGQgeyBtYXJnaW4tYm90dG9tOiAxNXB4OyBsaW5lLWhlaWdodDogMS40OyAgfVxuXHRcdFxuXHRcdGR0IHtcblx0XHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvdy1yaWdodCk7IFxuXHRcdH1cblx0XHRkdCwgZGQge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAzMHB4OyBcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cdFx0XG5cdFx0ZHQ6OmJlZm9yZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwOyBcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTJweCk7XG5cdFx0fVxuXHRcdFxuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7IFxuXHRcdFxuXHRcdCY6bGFzdC1vZi10eXBlIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXHRcdFxuXG5cdFx0LnBhZ2UtYXNpZGUgJiB7XG5cdFx0XHRcblx0XHRcdCBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bS1ibHVlOyBcblx0XHRcdCBtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdCBwYWRkaW5nLWJvdHRvbTogNDBweDsgXG5cdFx0XHQgcGFkZGluZy10b3A6IDQwcHg7IFxuXHRcdFx0IFxuXHRcdFx0ICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHRcdFx0VmFyaWF0aW9uc1xuXHRcdFxuXHRcdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHRcblx0XHRcdCYtLXN1bW1hcnkge1xuXHRcblx0XHRcdFx0dWwgeyBcblx0XHRcdFx0XHRAZXh0ZW5kICVsaXN0LS1zdHJpcGVkOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRsaSB7IHBhZGRpbmctbGVmdDogMzBweDsgfSBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRhIHsgY29sb3I6ICRibGFjazsgfVxuXHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQmLS1zaGFyZXMge1xuXHRcdFxuXHRcdFx0XHRkdCB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGJvcmRlci10b3A6IDA7IHBhZGRpbmctdG9wOiAwOyB9XG5cdFx0XHRcdGRkIHsgXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgyOHB4KTsgXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji0tY29udGFjdCB7XG5cdFx0XG5cdFx0XHRcdHN0cm9uZyB7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0dWwgeyBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cdFx0XHRcdHVsIGxpIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdFx0cGFkZGluZzogMDsgXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAzMHB4OyBcblx0XHRcdFx0fVxuXHRcdFx0XHR1bCBsaTpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogMDsgfVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHQmLS1jb250YWN0LFxuXHRcdFx0Ji0tdGV4dCB7XG5cdFx0XHRcblx0XHRcdFx0cGFkZGluZy1ib3R0b206ICRncmlkLXNpemVyO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7IFxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQmLS10ZXh0IHtcblx0XHRcdFxuXHRcdFx0XHRwIHsgXG5cdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTsgXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA5MCU7IFxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRhLmJ0biB7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRpbWcgeyB3aWR0aDogMTAwJTsgfVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCYtLXRyYW5zbGF0ZSB7XG5cblx0XHRcdFx0LnBhZ2UtYXNpZGUgJiB7IHBhZGRpbmctdG9wOiAwOyBcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDsgXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC5idG4geyBcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogNTBweDsgXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9mbGFnX25sLnBuZycpIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjBweCAxNnB4OyBcblx0XHRcdFx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0bGVmdDogMjBweDtcblx0XHRcdFx0XHRcdHRvcDogMTFweDsgXG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7IFxuXHRcdFx0XHRcdFx0cGFkZGluZzogMDsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCYuYnRuLS1lbmdsaXNoOjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZmxhZ19lbi5wbmcnKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IC00MHB4O1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtNDBweDsgXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwcHghaW1wb3J0YW50OyBcblx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXG5cblx0XHRcdC5wYWdlLWFzaWRlICYtLW1hcCB7XG5cdFx0XHRcblx0XHRcdFx0bWFyZ2luOiAtMjBweCAtMjBweCAyMHB4O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAwOyBcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDsgXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwOyBcblx0XHRcdFx0aW1nIHsgZGlzcGxheTogYmxvY2s7IH1cblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IC0kZ3JpZC1zaXplcjtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0kZ3JpZC1zaXplcjtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0ZmlnY2FwdGlvbiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMjBweDsgXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMTBweCAkZ3JpZC1zaXplcjsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdCYtLWZhY3RzIHtcblx0XHRcdFx0XG5cdFx0XHRcdC5saXN0LS1pY29uIHtcblxuXHRcdFx0XHRcdEBleHRlbmQgJWxpc3QtLXN0cmlwZWQ7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogNjBweDsgXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0bGk6OmJlZm9yZSB7XG5cdFx0XHRcdFx0XHR0b3A6IDA7IFxuXHRcdFx0XHRcdFx0bGVmdDogMTBweDsgXG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNTRweDsgXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuNCk7IFxuXHRcdFx0XHRcdH1cblx0XG5cdFx0XHRcdFx0Lmljb24td29ybGQ6OmJlZm9yZSxcblx0XHRcdFx0XHQuaWNvbi12ZXNzZWw6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMi45KTsgfVxuXHRcdFx0XHRcdFxuXG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCYtLXNoYXJlIHtcblx0XHRcdFx0XG5cdFx0XHRcdC5idG4geyBAZXh0ZW5kICVidG4taWNvbjsgQGV4dGVuZCAlYnRuLWljb24tLWxhcmdlOyBtYXJnaW46IDVweDsgfVxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdC5wYWdlLWFzaWRlICY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAtNDBweDsgXG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHR9IFxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji0tdGFncyB7XG5cdFx0XHRcdFxuXHRcdFx0XHQvL3RydW5jYXRlXG5cdFx0XHRcdC5idG4tLWxpbmsgeyBcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdG1heC13aWR0aDogMTkwcHg7XG5cdFx0XHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0XHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmOjphZnRlciB7IFxuXHRcdFx0XHRcdFx0ZmxvYXQ6IHJpZ2h0OyBcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XHRcblx0XHRcdFx0XHQud2lkZ2V0LS10YWdzIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IHBhZGRpbmc6IDAgNDBweCAwIDA7ICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbWVkaXVtLWJsdWU7IG1pbi1oZWlnaHQ6IDE0MHB4OyAgfVxuXHRcdFx0XHRcdC53aWRnZXQtLXRhZ3MgKyAud2lkZ2V0LS1zaGFyZTpub3QoLmZ1bGwtd2lkdGgpIHtmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgcGFkZGluZzogMCA0MHB4OyB9XG5cdFx0XG5cdFx0XHRcdFx0LndpZGdldC5mdWxsLXdpZHRoIHsgd2lkdGg6IDEwMCU7IGZsb2F0OiBub25lOyBib3JkZXItcmlnaHQ6IDA7IH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5wYWdlLWFzaWRlICYtLW5vLXBhZCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC00MHB4OyBcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDQwcHg7IFxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5wYWdlLWFzaWRlICYtLWZ1bGwge1xuXHRcdFx0XHRcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA0MHB4OyBcblx0XHRcdFx0cGFkZGluZy1yaWdodDogNDBweDsgXG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdFxuXHRcdFxuXHR9XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFx0XHRcblx0SWNvbnMgYW5kIG90aGVyIGVsZW1lbnRzXG5cblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cdC5idG4uZW1haWwgeyBAZXh0ZW5kIC5pY29uLW1haWw7ICB9XG5cdC5idG4ucHJpbnQgeyBAZXh0ZW5kIC5pY29uLXByaW50O31cblx0LmJ0bi5mYiB7IEBleHRlbmQgLmljb24tZmFjZWJvb2s7fVxuXHQuYnRuLnR3aXR0ZXIgeyBAZXh0ZW5kIC5pY29uLXR3aXR0ZXI7fVxuXHQuYnRuLmxpbmtlZGluIHsgQGV4dGVuZCAuaWNvbi1saW5rZWRpbjt9XG5cdC5idG4uZ3BsdXMge0BleHRlbmQgLmljb24tZ29vZ2xlcGx1czt9XG5cdC5idG4udmltZW8geyBAZXh0ZW5kIC5pY29uLXZpbWVvO1x0IH1cblx0LmJ0bi55b3V0dWJlIHsgQGV4dGVuZCAuaWNvbi15b3V0dWJlO31cblxuXG5cdFxuXHQud2lkZ2V0IC5mb290aW5nIHtcblx0XHRiYWNrZ3JvdW5kOiAkZGFya2VyLWJsdWU7XG5cdFx0aGVpZ2h0OiA2MHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA2MHB4OyBcblx0XHRjb2xvcjogJHdoaXRlOyBcblx0XHRwYWRkaW5nOiAwIDIwcHg7IFxuXHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7IFxuXHRcblx0XHRcblx0XHRcblx0XHQudmFsdWUge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0OyBcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjRweCk7IFxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7IFxuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdHBhZGRpbmc6IDAgNDBweDsgXG5cdFx0XHRtYXJnaW4tdG9wOiAtMTZweDsgXG5cdFx0fVxuXHR9XG5cblxuZm9vdGVyLnBhZ2UtY29udGVudCB7XG5cdEBpbmNsdWRlIGNsZWFyZml4OyBcblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdC53aWRnZXQgeyB9XG5cdFx0LndpZGdldC0tdGFncyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyBwYWRkaW5nOiAwIDQwcHggMCAwOyAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJG1lZGl1bS1ibHVlOyBtaW4taGVpZ2h0OiAxNDBweDsgIH1cblx0XHQud2lkZ2V0LS10YWdzICsgLndpZGdldC0tc2hhcmU6bm90KC5mdWxsLXdpZHRoKSB7ZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IHBhZGRpbmc6IDAgNDBweDsgfVxuXHRcdC53aWRnZXQuZnVsbC13aWR0aCB7IHdpZHRoOiAxMDAlOyBmbG9hdDogbm9uZTsgYm9yZGVyLXJpZ2h0OiAwOyB9XG5cdFx0XG5cdH1cblx0XG59IiwiIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdEZJTFRFUiBTRUNUSU9OXG5cblx0U3R5bGluZyBmb3IgYWxsIHRoZSBmaWx0ZXIgc2VjdGlvbnMgdXNlZCBhY3Jvc3MgdGhlIHNpdGUuIExpa2UgcHJvamVjdHMsIHZlc3NlbHMsIGNvbnRhY3RzIGV0Yy4gXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQuY250LS1maWx0ZXIge1xuXG4vKiBcdFx0b3ZlcmZsb3c6IHZpc2libGU7ICAqL1xuXHRcblx0fVxuXHQuZmlsdGVyLWNudCB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7IFxuXHRcdFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0bWFyZ2luLXRvcDogMjBweDsgXG5cdFx0XG5cdFx0Ly8uZmlsdGVyLXNlbGVjdGlvbi1jbnQgKyAmIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFx0XHRcblx0XHRUT09MQkFSXG5cdFx0XG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHRcblx0XHQudG9vbGJhciB7XG5cdFx0XG5cdFx0XHRAZXh0ZW5kICVwYWRkaW5nLWNvbnRhaW5lcjsgXG5cdFx0XHRcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7IFxuXHRcdFx0XG5cdFx0XHQmID4gKiB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdFx0Ly9tYXJnaW4tYm90dG9tOiAyMHB4OyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Lm51bSB7XG5cdFx0XHRcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdC5vdGhlcixcblx0XHRcdC52aWV3LXN3aXRjaCxcblx0XHRcdC5zb3J0IHtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0OyBcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTsgXG5cdFx0XHR9XG5cdFx0XHQuc29ydCAuYnRuLCBcblx0XHRcdC52aWV3LXN3aXRjaCAuYnRuIHtcblx0XHRcdFx0XG5cdFx0XHRcdEBleHRlbmQgJWJ0bi1pY29uOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7IFxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDFweDsgXG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdC5zb3J0IHsgXG5cdFx0XHRcdFxuXHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcblx0XHRcdFx0LmN1c3RvbS1zZWxlY3Qge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBleHRlbmQgJWN1c3RvbS1zZWxlY3QtLWxpZ2h0O1xuXHRcdFx0XHRcdEBpbmNsdWRlIGljb24oYWZ0ZXIsIGFycm93LXNlbGVjdCwgZmFsc2UpO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0OyBcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Lm90aGVyIHsgbWFyZ2luLXJpZ2h0OiAxcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IGF1dG87ICB9XG5cdFx0XHRcblx0XHRcdC5hbGlnbi1yaWdodCB7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0Y2xlYXI6IGJvdGg7IFxuXHRcdFx0XHR3aWR0aDogMTAwJTsgXG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0PiBzcGFuIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXgtd2lkdGg6IDMwMHB4OyBsaW5lLWhlaWdodDogMS4yOyB9XG5cdFx0XHRcdC5idG4geyBtYXJnaW46IDIwcHggYXV0byAkZ3JpZC1zaXplcjsgdmVydGljYWwtYWxpZ246IHRvcDsgZGlzcGxheTogYmxvY2s7ICB9XG5cdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldG9ubHkpIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0PiBzcGFuIHsgZGlzcGxheTogbm9uZTsgfVxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYW5kc2NhcGVvbmx5KSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdD4gc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC50b2dnbGUtLWZpbHRlci1uYXYgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cdFx0XHRcblx0XHRcdC5zZWFyY2gtZm9ybSB7IFxuXHRcdFx0XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7IFxuXHRcdFx0XG5cdFx0XHRcdCYuZXhwYW5kIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG5cdFx0XHR9XG5cblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHRcdFx0XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0XHRcblx0XHRcdFx0JiA+ICoge1xuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHQvL21hcmdpbi1ib3R0b206IDA7IFxuXHRcdFx0XHRcdHdpZHRoOiBhdXRvOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0LnRvZ2dsZS0tZmlsdGVyLW5hdiB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4OyBcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0LnNlYXJjaC1mb3JtOm5vdCguY29tcGFjdCkge1xuXHRcdFx0XHRcdHdpZHRoOiAyNDBweDtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCYuZXhwYW5kIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdC5vdGhlcixcblx0XHRcdFx0LnZpZXctc3dpdGNoLFxuXHRcdFx0XHQuc29ydCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXHRcdFx0XHQuc29ydCB7IG1hcmdpbi1yaWdodDogMjBweDt9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0LmFsaWduLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyBjbGVhcjogbm9uZTsgd2lkdGg6IGF1dG87IH0gXG5cdFx0XHRcdFxuXHRcdFx0XHQuYnRuLmJ0bi0tbGluayB7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4OyBcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cdFx0XHRcblx0XHRcdFx0LmFsaWduLXJpZ2h0IHtcblxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdD4gc3BhbiB7IGZvbnQtc2l6ZTogZW0oMTVweCk7IH1cdFx0XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZGlzcGxheTogdGFibGU7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdD4gc3BhbiB7IGRpc3BsYXk6IHRhYmxlLWNlbGw7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cdFxuXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdC5zZWFyY2gtZm9ybSB7XG5cdFx0XHRcdFx0d2lkdGg6IDM0MHB4O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDsgXG5cdFx0XHRcdFx0XG5cblx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdC5idG4uYnRuLS1saW5rIHsgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHQvLyBWYXJpYXRpb25zIG9mIHRvb2xiYXJzIFxuXHRcdFx0XG5cdFx0XHQmLS1tZWRpYSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cdFx0XHRcdFx0LnNlYXJjaC1mb3JtIHsgd2lkdGg6IDI0MHB4OyB9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cblx0XHR9XG5cdFx0XG5cdFx0LmJ0bi50b2dnbGUtLWZpbHRlci1uYXYge1xuXHRcdFx0XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XG5cdFx0XHRpIHsgQGluY2x1ZGUgaWNvbihiZWZvcmUsIHBsdXMsIGZhbHNlKTsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7ICB9XG5cdFx0XHRcbiBcblx0XHRcdCY6aG92ZXIgeyBcblx0XHRcdFx0XG5cdFx0XHRcdGkgeyBiYWNrZ3JvdW5kOiAkZGFya2VyLWJsdWU7IH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCYuZmlsdGVyLS1vcGVuIHtcblx0XHRcdFxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuXHRcdFx0XHRcblx0XHRcdFx0aSB7IGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgQGluY2x1ZGUgaWNvbihiZWZvcmUsIG1pbiwgZmFsc2UpOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmx1ZTsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0aSB7IGJhY2tncm91bmQ6ICRibHVlLWRhcmtlbmVkOyB9XG5cdFx0XHRcdH1cblx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNDBweDsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFx0XHRcblx0XHRcdEZJTFRFUiBTRUxFQ1RJT04gQ09OVEFJTkVSXG5cdFx0XHRcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XHRcblx0XHRcdC5maWx0ZXItc2VsZWN0aW9uLWNudCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRAZXh0ZW5kICVwYWRkaW5nLWNvbnRhaW5lcjsgXG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0b3ZlcmZsb3cteDogYXV0bzsgXG5cblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyOyBcblx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRcdFx0XG5cdFx0XHRcdGVtIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IGVtKDE2cHgpOyBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblx0XHRcdFx0XG5cdFx0XHRcdCYgPiBzcGFuIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7IFxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7XG5cdFx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRlbSB7IGRpc3BsYXk6IGlubGluZTsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IC0yMHB4OyBcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRhZy5idG4tLWxhYmVsIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNnB4KTsgXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7IFxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7IFxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcdFx0XG5cdFx0XHRcdC5iZy0tbGlnaHQtYmx1ZSAmIHsgYmFja2dyb3VuZDogJHdoaXRlOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHQuaWNvbiB7XG5cdFx0XHRcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlOyBcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogNDBweDsgXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGJsdWU7IFxuXHRcdFx0XHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLGNsb3NlLCBmYWxzZSk7XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMC42KTsgXG5cdFx0XHRcdFx0fVx0XG5cdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Jjpob3ZlciAuaWNvbiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LnRhZyBzbWFsbCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTJweCk7IFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHRcdFx0TElTVCAmIEdSSUQgVklFV1xuXHRcdFx0XG5cdFx0XHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcdFx0XG5cdFx0XHRcblx0XHRcdC5jb2xsYXBzZS1jbnQsXG5cdFx0XHQub3ZlcnZpZXcgeyBcblx0XHRcdFx0XG5cdFx0XHRcdEBleHRlbmQgJXBhZGRpbmctY29udGFpbmVyOyBcblxuXHRcdFx0XHR0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2UtaW4tb3V0OyBcblx0XHRcdFxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFx0XHRcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTIwcHg7IFx0XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMjBweDsgXHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBtaW4taGVpZ2h0IDIwMG1zIGVhc2UtaW4tb3V0OyBcblx0XHRcdFxuXHRcdFx0XHR9XG5cdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuY29sbGFwc2UtY250IC5vdmVydmlldyB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblx0XHRcdFxuXHRcdFx0LmZpbHRlci1jbnQuZmlsdGVyLS1vcGVuIC5vdmVydmlldyB7XG5cdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDsgXG5cdFx0XHRcdFx0d2lkdGg6IDY1JTsgXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMjBweDtcblx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7IFxuXHRcdFx0XHRcdHotaW5kZXg6IDExOyBcblx0XHRcblx0XHRcdFx0XHQkbmVzdGVkZ3V0dGVyIDogKDQvMTIgKiBndXR0ZXIoMTIpKSArIGd1dHRlcigxMik7XG5cdFx0XHRcdFx0JHJlbW92ZWd1dHRlciA6IDQvMTIgKiBndXR0ZXIoMTIpO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCYuZ3JpZCA+IC5ibG9jayB7IFxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHR3aWR0aDogNTAlOyBcdFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHRcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHRcdFx0TUFQIFZJRVdcblx0XHRcdFxuXHRcdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cdFx0XHQub3ZlcnZpZXcubWFwIHtcblx0XHRcdFx0XG5cdFx0XHRcdGNsZWFyOiBib3RoOyBcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0YmFja2dyb3VuZDogIzJENDY2RTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDsgXG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDY0MHB4O1xuXHRcdFx0XHRkaXNwbGF5OiBub25lOyBcblx0XHRcdFx0XG5cdFx0XHRcdC5maWx0ZXItY250LmZpbHRlci0tb3BlbiAmIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHR3aWR0aDogMTAwJTsgXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQuZmlsdGVyLWNudC5maWx0ZXItLW9wZW4gJiB7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdHdpZHRoOiA3NSU7IFxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQubWFwLWNudCB7XG5cdFx0XHRcdC8vaGVpZ2h0OiAxMDAlOyBcblx0XHRcdFx0bWluLWhlaWdodDogNjAwcHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMyRDQ2NkU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHRvcDogMDsgbGVmdDogMDsgXG5cdFx0XHRcdGJvdHRvbTogMDsgXG5cdFx0XHRcdFxuXHRcdFx0XHQmLm1hcC0tbGVnZW5kIHsgYm90dG9tOiA0MHB4OyB9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0Lm1hcC1vdmVybGF5IHtcblx0XHRcdFx0XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwOyBsZWZ0OiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHR6LWluZGV4OiAyOyBcblx0XHRcdFx0XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoJGRhcmtlci1ibHVlLDAuNCk7XG5cdFx0XHRcdFxuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcblx0XHRcdFx0c3BhbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdGV4dC1hbGlnbjogY2VudGVyOyB0b3A6IDUwJTsgbWFyZ2luLXRvcDogLTEwcHg7IHdpZHRoOiAxMDAlOyB9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0LmJ0bi0tdG9nZ2xlLW92ZXJsYXkgeyBcblx0XHRcdFx0XG5cdFx0XHRcdEBleHRlbmQgJWJ0bi0teWVsbG93OyBcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHR6LWluZGV4OiAzOyBcblxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQub3ZlcnZpZXcudHgtc29sci1zZWFyY2gtbm8tcmVzdWx0cyB7XG5cdFx0XHRcdFxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7IFxuXHRcdFx0XHRwYWRkaW5nOiAyMHB4IDAgNDBweDsgXG5cdFx0XHRcdFxuXHRcdFx0XHR1bCB7IEBleHRlbmQgJWxpc3QtLWNsZWFuOyB9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdC5iYXItLWxlZ2VuZCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRtYXJnaW46IDA7IFxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGhlaWdodDogNDBweDsgXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4OyBcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTsgXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7IFxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7IFxuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTsgXG5cdFx0XHRcdFx0bWFyZ2luOiAwIDEwcHg7IFxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTZweCk7IFxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4OyBcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDQwcHg7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHNwYW4geyBtYXJnaW46IDAgNXB4OyB9XG5cdFx0XHRcdFx0QGluY2x1ZGUgaWNvbihiZWZvcmUsIG1hcmtlcik7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4zZW07IFxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0bGVmdDogLTEwcHg7IFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC5sZWdlbmQtLWJvc2thbGlzLW9mZmljZTo6YmVmb3JlIHsgY29sb3I6ICR5ZWxsb3c7IH1cblx0XHRcdC5sZWdlbmQtLWRyZWRnaW5nOjpiZWZvcmUgeyBjb2xvcjogJGRyZWRnaW5nO31cblx0XHRcdC5sZWdlbmQtLW9mZnNob3JlOjpiZWZvcmUsXG5cdFx0XHQubGVnZW5kLS1oZWFkLW9mZmljZTo6YmVmb3JlIHsgY29sb3I6ICRvZmZzaG9yZTt9XG5cdFx0XHQubGVnZW5kLS1zYWx2YWdlOjpiZWZvcmUsXG5cdFx0XHQubGVnZW5kLS1zbWl0LXJlc3BvbnNlLWNlbnRlcjo6YmVmb3JlIHsgY29sb3I6ICRzYWx2YWdlO31cblx0XHRcdC5sZWdlbmQtLXRvd2FnZTo6YmVmb3JlIHsgY29sb3I6ICR0b3dhZ2U7fVxuXHRcdFx0XG5cdFx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFx0XHRcblx0XHRcdEZJTFRFUiBOQVZJR0FUSU9OXG5cdFx0XHRcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gXG5cdFx0XHQuZmlsdGVyLW5hdmlnYXRpb24ge1xuXHRcdFx0XHRcblx0XHRcdFx0QGV4dGVuZCAlcGFkZGluZy1jb250YWluZXI7IFxuXHRcdFx0XHRcblx0XHRcdFx0aGVpZ2h0OiBhdXRvOyBcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyBcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDsgXG5cdFx0XHRcdFxuXHRcblx0XHRcdFx0LmZpbHRlci1jbnQuZmlsdGVyLS1vcGVuICYge1xuXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFx0XHRcdFx0XHRcblx0XHRcdFx0XHR3aWR0aDogMzUlOyBcbi8qIFx0XHRcdFx0XHRmbG9hdDogbGVmdDsgICovXG5cblx0XHRcdFx0XHRib3R0b206IDQwcHg7XG5cdFx0XHRcdFx0dG9wOiAwcHg7ICBcblxuXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdFx0XHR6LWluZGV4OiAxMDsgXHRcdFxuXHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LnZpZXctLW1hcCAmIHsgcGFkZGluZy1sZWZ0OiAwOyB3aWR0aDogMjUlOyAgYm90dG9tOiAwOyB9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogbWluLWhlaWdodCAyMDBtcyBlYXNlLWluLW91dDsgXG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0JiA+IGZvcm0ge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7IFxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdCYgPiBmb3JtIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdGZpZWxkc2V0IHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHBhZGRpbmc6IDBweDsgbWFyZ2luOiAwOyAgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRsZWdlbmQgeyB0ZXh0LWluZGVudDogLTk5OTlweDsgbWFyZ2luOiAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRlbSB7IGZvbnQtc2l6ZTogZW0oMTZweCk7IGNvbG9yOiAkd2hpdGU7IG1hcmdpbi1ib3R0b206IDEwcHg7IGRpc3BsYXk6IGJsb2NrOyB9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0JiA+IGJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0XHRcdFx0aGVpZ2h0OiA2MHB4OyBcblx0XHRcdFx0XHRcdG1hcmdpbjogMDsgXG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMjBweCk7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlOyBcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkOyBcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA2MHB4OyBcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLCBhcnJvdy1yaWdodCk7XG5cdFx0XHRcdFx0XHRcblxuXHRcdFx0XHRcdFx0Jjo6YWZ0ZXIgeyBcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA4cHg7IFxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTNweDsgXG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHRvcDogMnB4OyBcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCY6Zm9jdXMsXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFya2VyLWJsdWU7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdCY6aG92ZXIgeyBjb2xvcjogJHllbGxvdzsgfVxuXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgyNHB4KTtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0LmZpbHRlcnMsXG5cdFx0XHRcdGZpZWxkc2V0ID4gYnV0dG9uIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1zaXplcjsgcGFkZGluZy1yaWdodDogJGdyaWQtc2l6ZXI7ICAgfVxuXHRcdFx0XHRcblx0XHRcdFxuXHRcdFx0XHRcdC8vXHRTaW5nbGUgZmlsdGVyIGlzIG9wZW5lZFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGZpZWxkc2V0LmZpbHRlci0tb3BlbiB7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0JiA+IGJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGljb24oYWZ0ZXIsIGFycm93LWRvd24sIGZhbHNlKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5maWx0ZXJzIHsgZGlzcGxheTogYmxvY2s7IH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmZpbHRlcnMge1xuXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXHRcdFx0XHRkaXNwbGF5OiBub25lOyBcblx0XHRcdFx0XG5cdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDE2cHgpO1xuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBleHRlbmQgLmZpZWxkLS1jaGVja2JveDsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTJweDtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICR5ZWxsb3c7IFxuXHRcdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyOyBcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmxhYmVsIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogZW0oMjBweCk7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHNtYWxsIHsgZm9udC1zaXplOiBlbSgxM3B4KTsgfVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRsYWJlbCBzcGFuLmxhYmVsOjpiZWZvcmUge1xuXHRcdFx0XHRcblx0XHRcdFx0XHRcdHRvcDogMXB4O1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdGlucHV0W2Rpc2FibGVkXSArIC5sYWJlbCB7IG9wYWNpdHk6IDAuNTsgJjpob3ZlciB7IGNvbG9yOiAkd2hpdGU7IH0gfVxuXHRcdFx0XHRcblx0XHRcdFx0aW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5sYWJlbCB7IGNvbG9yOiAkeWVsbG93OyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRpbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cyArIC5sYWJlbCB7IGJvcmRlci1ib3R0b206IDA7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5pbnB1dC0tZmlsdGVyIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4OyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0ZW0gKyAuaW5wdXQtLWZpbHRlciB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5zY3JvbGwtY3RuIHtcblx0XHRcdFx0XHRtYXgtaGVpZ2h0OiAzMTBweDsgXG5cdFx0XHRcdFx0b3ZlcmZsb3cteTogYXV0bzsgIFxuXHRcdFx0XHRcdG92ZXJmbG93LXg6IGhpZGRlbjsgXG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdGxpIHsgZGlzcGxheTogbm9uZTsgfVxuXHRcdFx0XHQudHgtc29sci1mYWNldC1zaG93LWFsbCB7IGRpc3BsYXk6IG5vbmU7IH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHRcdFx0VE9PTEJBUiBGT09URVIgKHBhZ2luYXRpb24pXG5cdFx0XHRcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblx0XHRcdC50b29sYmFyLS1mb290ZXIge1xuXG5cdFx0XHRcdHBhZGRpbmc6ICRtb2JpbGUtc2lkZS1wYWRkaW5nO1xuXG5cdFx0XHRcdC5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyAmIHtcblxuXHRcdFx0XHRcdEBleHRlbmQgJXBhZGRpbmctY29udGFpbmVyO1xuXG5cdFx0XHRcdH1cblxuXG5cdFx0XHRcdHNwYW4udGV4dC0tc21hbGwge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbjogMjBweCBhdXRvIDA7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyOyBcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDQwMHB4OyBcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA5MHB4OyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0c3Bhbi50ZXh0LS1zbWFsbCB7IFx0bWFyZ2luLXRvcDogNDBweDsgIH1cblxuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHNwYW4udGV4dC0tc21hbGwge1xuXHRcdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0OyBcblx0XHRcdFx0XHRcdHdpZHRoOiBzcGFuKDQwJSk7ICBcblx0XHRcdFx0XHRcdG1hcmdpbjogMDsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5wYWdpbmF0aW9uIHtcblxuXHRcdFx0XHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cdFx0XHRcdG1hcmdpbjogMDsgXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdFx0XHRcdGNsZWFyOiBib3RoOyBcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNTBweCFpbXBvcnRhbnQ7IFxuXHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwOyBcblx0XHRcdFx0XG5cdFx0XHRcdGxpIHsgbGlzdC1zdHlsZTogbm9uZTsgZGlzcGxheTogaW5saW5lLWJsb2NrO31cblx0XHRcdFx0XG5cdFx0XHRcdGxpLm5leHQsIGxpLnByZXYsIGxpLmN1cnJlbnQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdGE6bm90KC5idG4pIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogNDBweDsgdGV4dC1hbGlnbjogY2VudGVyOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAgY29sb3I6ICRibGFjazsgfVxuXHRcdFx0XHRcblx0XHRcdFx0bGkuY3VycmVudCB7XG5cdFx0XHRcdFx0YSB7IGNvbG9yOiAkZGFyay1ibHVlOyBmb250LXdlaWdodDogYm9sZDsgIH1cblx0XHRcdFx0XHRhOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cdFx0XHRcdH1cblx0XHRcdFx0bGk6bm90KC5jdXJyZW50KSBhOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyBjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQuZmlyc3QsXG5cdFx0XHRcdC5wcmV2LFxuXHRcdFx0XHQubmV4dCxcblx0XHRcdFx0Lmxhc3QgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNjBweDsgfVxuXHRcdFx0XHRcblx0XHRcdFx0Lmxhc3QgeyBtYXJnaW4tbGVmdDogMThweDsgcmlnaHQ6IDIwcHg7ICB9XG5cdFx0XHRcdC5maXJzdCB7IG1hcmdpbi1yaWdodDogMThweDsgbGVmdDogMjBweDsgIH1cblx0XHRcdFx0XG5cdFx0XHRcdC5uZXh0IHsgcmlnaHQ6IDcwcHg7IH1cblx0XHRcdFx0LnByZXYgeyBsZWZ0OiA3MHB4OyB9XG5cdFx0XHRcdFxuXHRcdFx0XHQuZmlyc3QgYSxcblx0XHRcdFx0Lmxhc3QgYSB7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBleHRlbmQgJWJ0bi1pY29uOyBcblx0XHRcdFxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMC44KTsgfVxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblxuXHRcdFx0XHQubmV4dCBhIHsgQGV4dGVuZCAlYnRuLS1saW5rOyBtYXJnaW46IDA7IH1cblx0XHRcdFx0LnByZXYgYSB7IEBleHRlbmQgJWJ0bi1pY29uLWJmOyBAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctbGVmdCwgZmFsc2UpOyB9XG5cdFx0XHRcdC5maXJzdCBhIHsgIEBpbmNsdWRlIGljb24oYmVmb3JlLCBhcnJvd3MtbGVmdCwgZmFsc2UpOyB9XG5cdFx0XHRcdC5sYXN0IGEgeyAgQGluY2x1ZGUgaWNvbihiZWZvcmUsIGFycm93cy1yaWdodCwgZmFsc2UpOyB9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7IFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGxpLmZpcnN0LFxuXHRcdFx0XHRcdGxpLnByZXYsXG5cdFx0XHRcdFx0bGkubmV4dCxcblx0XHRcdFx0XHRsaS5sYXN0IHsgcG9zaXRpb246IHN0YXRpYzt9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0OyBcblx0XHRcdFx0XHRmbG9hdDogcmlnaHRcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdC5jb3Jwb3JhdGUtbGVnZW5kIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGltZyB7XG5cblx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiAyMHB4O1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0dG9wOiAyNXB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFx0XHRcblx0XHRcdElDT05TIC8gQ09MT1JTIC8gR0VORVJBTCBTVFlMRVNcblx0XHRcdFxuXHRcdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XHRcdFxuXHRcdFx0LnNvcnQgLmJ0bltkaXNhYmxlZF0sIFxuXHRcdFx0LnNvcnQgLmJ0bi5hY3RpdmUsIFxuXHRcdFx0LnZpZXctc3dpdGNoIC5idG5bZGlzYWJsZWRdIFxuXHRcdFx0eyBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlOyBjb2xvcjogJHdoaXRlOyBjdXJzb3I6IGRlZmF1bHQ7ICB9XG5cblx0XHRcdC5idG4uZ3JpZCB7ICBAZXh0ZW5kICVidG4taWNvbi0tbGFyZ2U7IEBpbmNsdWRlIGljb24oYmVmb3JlLCBzb3J0LWdyaWQsIGZhbHNlKTsgfVxuXHRcdFx0LmJ0bi5saXN0IHsgIEBleHRlbmQgJWJ0bi1pY29uLS1sYXJnZTsgQGluY2x1ZGUgaWNvbihiZWZvcmUsIHNvcnQtbGlzdCwgZmFsc2UpOyB9XG5cdFx0XHQuYnRuLm1hcCB7ICBAZXh0ZW5kICVidG4taWNvbi0tbGFyZ2U7IEBpbmNsdWRlIGljb24oYmVmb3JlLCBzb3J0LW1hcCwgZmFsc2UpOyB9XG5cdFx0XHQuYnRuLnVwIHsgQGluY2x1ZGUgaWNvbihiZWZvcmUsIGFycm93LXRvcCwgZmFsc2UpOyB9XG5cdFx0XHQuYnRuLmRvd24geyBAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctZG93biwgZmFsc2UpOyB9XG5cdFxuXHRcdFx0XG5cdFx0XHQucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXByb2plY3Qtb3ZlcnZpZXcge1xuXHRcdFx0XHRcblx0XHRcdFx0YmFja2dyb3VuZDogJG1lZGl1bS1ibHVlOyBcblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQubWluaS1maWx0ZXIge1xuXHRcdFx0XHRsYWJlbCxcblx0XHRcdFx0LmN1c3RvbS1zZWxlY3Qge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTsgXG5cdFx0XHRcdH1cblx0XHRcdFx0bGFiZWwgeyBtYXJnaW4tcmlnaHQ6IDIwcHg7IGZvbnQtc3R5bGU6IGl0YWxpYzsgZm9udC1zaXplOiBlbSgxNnB4KTsgfVxuXHRcdFx0fVxuXG5cblxuIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdENPTExBUFNFIENPTlRBSU5FUlxuXG5cdEFsdGVybmF0aXZlIGxheW91dCB1c2VkIGZvciB0aGUgZG93bmxvYWQgY2VudGVyIFxuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cdC5jb2xsYXBzZS1jbnQge1xuXHQgXG5cdFx0IG1hcmdpbjogMDsgXG5cdFx0IFxuXHRcdCBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXRvbmx5KSB7XG5cdFx0IFxuXHRcdCBcdG1hcmdpbi10b3A6IDIwcHg7IFxuXHRcdCBcblx0XHQgfVxuXHQgXG5cdH1cblxuXHQuY29sbGFwc2Utc2VjdGlvbiB7XG5cdFx0YmFja2dyb3VuZDogJHdoaXRlOyBcblx0fVxuXHRcblx0LmNvbGxhcHNlLXNlY3Rpb24gPiBoMiB7XG5cdFx0XG5cdFx0IHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0IGZvbnQtc2l6ZTogZW0oMjRweCk7IFxuXHRcdCBwYWRkaW5nOiAwOyBtYXJnaW46IDA7XG5cdFx0IFxuXHRcdCBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWJsdWU7ICBcblx0XHRcblx0IH1cblx0IC50b2dnbGUtc2VjdGlvbiB7XG5cdCBcblx0IFx0Y29sb3I6ICRibGFjazsgXG5cdCBcdGRpc3BsYXk6IGJsb2NrOyBcblx0IFx0cGFkZGluZy1sZWZ0OiA0MHB4OyBcblx0IFx0cGFkZGluZy10b3A6IDE0cHg7XG5cdCBcdHBhZGRpbmctYm90dG9tOiAxNHB4OyBcblx0IFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAxMDBtcyBsaW5lYXI7XG5cdCBcdFxuXHQgXHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgcGx1cyk7IFxuXHQgXHRcblx0IFx0aSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiBlbSgxOHB4LCAyNHB4KTsgfVxuXHQgXHRcblx0IFx0Jjpmb2N1cyxcblx0IFx0Jjpob3ZlciB7XG5cdFx0IFx0b3V0bGluZTogMDsgXG5cdFx0IFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBiYWNrZ3JvdW5kOiBsaWdodGVuKCRsaWdodC1ibHVlLCA1KTsgXG5cdCBcdFxuXHRcdCBcdCY6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGUoMC42KTsgfVxuXHQgXHR9XG5cdCBcdFxuXHQgXHQmOjpiZWZvcmUge1xuXHRcdFx0IHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdCBsZWZ0OiAxMHB4OyBcblx0XHRcdCBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHQgdHJhbnNmb3JtOiBzY2FsZSgwLjUpOyBcblx0XHRcdCAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjUsMC41KTtcblx0XHRcdCB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7IFxuXHRcdFx0IHBvaW50ZXItZXZlbnRzOiBub25lOyBcblx0XHQgfVxuXHRcdCBcblx0XHQgXG5cdFx0IC5zZWN0aW9uLS1vcGVuZWQgJiB7XG5cdFx0XHQgXG5cdFx0XHQgQGluY2x1ZGUgaWNvbihiZWZvcmUsIG1pbiwgZmFsc2UpOyBcblx0XHRcdCBcblx0XHRcdCBjb2xvcjogJHdoaXRlO1xuXHRcdFx0IGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxuXHRcdFx0IFxuXHRcdFx0ICY6Zm9jdXMsIFxuXHRcdFx0ICY6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkZGFya2VyLWJsdWU7IH1cblx0XHQgfVxuXHQgfVxuXG4gXG4gXG5cdCAuY29sbGFwc2UtY29udGVudCB7XG5cdCBcdFxuXHQgXHRwYWRkaW5nOiAyMHB4OyBcblx0IFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ibHVlOyBcblx0IFx0ZGlzcGxheTogbm9uZTtcblx0ICBcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblxuXHRcdFx0cGFkZGluZzogNDBweDsgXG5cdFx0ICBcblx0XHR9IFxuXHRcdFxuXHRcdC50b2dnbGUtLWZpbHRlci1uYXYgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gXG5cdFx0Lmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiB7IG1heC13aWR0aDogbm9uZTsgbWFyZ2luLWJvdHRvbTogMDsgIH1cblx0IFxuXHRcdC50b29sYmFyIHtcblx0XHRcdCBwYWRkaW5nOiAwOyBcblx0XHR9XG5cdFx0IFxuXHRcdC5maWx0ZXItbmF2aWdhdGlvbiB7IHBhZGRpbmctbGVmdDogMDsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctcmlnaHQ6IDA7ICB9XG5cdCBcblx0XHQub3ZlcnZpZXcgeyBwYWRkaW5nOiAwOyB9ICAvL21heC1oZWlnaHQ6IDUwMHB4OyBvdmVyZmxvdy15OiBzY3JvbGw7IH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcblx0XHRcdC5maWx0ZXItY250LmZpbHRlci0tb3BlbiAub3ZlcnZpZXcgeyBtYXJnaW4tcmlnaHQ6IDA7IHBhZGRpbmctbGVmdDogNDBweDsgfVxuXHRcdFxuXHRcdH1cblx0XHRcblx0IFxuXHR9IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogXG4gKiBHZW5lcmFsIHNlY3Rpb24gc3R5bGluZyBnb2VzIGhlcmUgXG4gKlxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4gLnBhZ2Utc2VjdGlvbiB7XG5cdCBcblx0IHBhZGRpbmc6ICgwLjUgKiAkc2VjdGlvbi1wYWRkaW5nKSAwOyAgXG5cdCBwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHQgYmFja2dyb3VuZDogJHdoaXRlOyAgXG5cdCBjbGVhcjogYm90aDsgXHRcblx0IFxuXHQgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdCBcblx0IFx0cGFkZGluZzogJHNlY3Rpb24tcGFkZGluZyAwOyAgXG5cdCBcblx0IH1cblx0IFxuXHQgLnNlY3Rpb24tY250IHsgcG9zaXRpb246IHJlbGF0aXZlOyBAaW5jbHVkZSBjbGVhcmZpeDsgfVxuXHQgXG4gfVxuXG4gJXNlY3Rpb24ge1xuXHQgXG5cdCAmLS1wYWQtdG9wIHsgcGFkZGluZy1ib3R0b206IDA7IH1cblx0ICYtLXBhZC1ib3R0b20geyBwYWRkaW5nLXRvcDogMDsgfVxuXHQgJi0tbm8tcGFkIHsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cdCBcblx0IFxuXHQgJi0tbGlnaHQtYmx1ZSB7IGJhY2tncm91bmQ6ICRsaWdodC1ibHVlIWltcG9ydGFudDsgfVxuXHQgJi0tbWVkaXVtLWJsdWUgeyBiYWNrZ3JvdW5kOiAkbWVkaXVtLWJsdWUhaW1wb3J0YW50OyB9XG5cdCAmLS1ibHVlIHsgYmFja2dyb3VuZDogJGJsdWUhaW1wb3J0YW50OyB9XG5cdCAmLS12aW9sZXQtYmx1ZSB7IGJhY2tncm91bmQ6ICR2aW9sZXQtYmx1ZSFpbXBvcnRhbnQ7IH1cblx0ICYtLXdoaXRlIHsgYmFja2dyb3VuZDogI2ZmZiFpbXBvcnRhbnQ7IH0gXG5cdCBcblx0ICYtLWJsZWVkIHsgXG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XG5cdFx0XHQgbWFyZ2luOiAwIC0oMC41ICogJGdyaWQtc2l6ZXIpOyBcblx0XHRcblx0XHR9XG5cdCBcblx0IH1cblx0IFxuIH1cbiBcbiBcbiAvKiBUZW1wb3JhcnkgZml4ZWQsIHByZWZlcmFibGUgdG8gY2hhbmdlIHRoZSBjbGFzcyBuYW1lcyBpbiBiYWNrZW5kLiBEZXBlbmRpbmcgb24gYW1vdW50IG9mIHdvcmsgbmVlZGVkLiAqLyBcblxuXHQuYmctLWxpZ2h0LWJsdWUgeyBAZXh0ZW5kICVzZWN0aW9uLS1saWdodC1ibHVlOyB9XG5cdC5iZy0tbWVkaXVtLWJsdWUgeyBAZXh0ZW5kICVzZWN0aW9uLS1tZWRpdW0tYmx1ZTsgfVxuXHQuYmctLWJsdWUgeyBAZXh0ZW5kICVzZWN0aW9uLS1ibHVlOyB9XG5cdC5iZy0tdmlvbGV0LWJsdWUgeyBAZXh0ZW5kICVzZWN0aW9uLS12aW9sZXQtYmx1ZTsgfVxuXHQuYmctLXdoaXRlIHsgQGV4dGVuZCAlc2VjdGlvbi0td2hpdGU7IH1cblx0IFxuXHQucGFnZS1zZWN0aW9uLnBhZC10b3AgeyBAZXh0ZW5kICVzZWN0aW9uLS1wYWQtdG9wOyB9XG5cdC5wYWdlLXNlY3Rpb24ucGFkLWJvdHRvbSB7IEBleHRlbmQgJXNlY3Rpb24tLXBhZC1ib3R0b207IH1cblx0XG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcdFxuXHRcdFNpbXBsZSBTZWN0aW9uIHNwZWNpZmljIGZpeGVzXG5cdFx0XG5cdFx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XG5cdFx0LnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1zdWJwYWdlcyxcblx0XHQucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXZlc3NlbHMge1xuXHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7IFxuXHRcdH1cblx0XHQucGFnZS1zZWN0aW9uLnNlY3Rpb24tLW91ci1icmFuZHMge2JhY2tncm91bmQ6ICRtZWRpdW0tYmx1ZTsgfVxuXG5cdFx0LnBhZ2UtaW50cm8gKyAucGFnZS1zZWN0aW9uLCBcblx0XHQuc2VjdGlvbi0tc3VicGFnZXMgKyAuc2VjdGlvbi0tc2lkZS1jb250ZW50IHtcblx0XHRcdG1hcmdpbi10b3A6ICRzZWN0aW9uLXBhZGRpbmc7IFxuXHRcdH1cblx0XHQuc2VjdGlvbi0tc2lkZS1jb250ZW50ICsgLnNlY3Rpb24tLWFjY29yZGlvbi1mdyB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtJHNlY3Rpb24tcGFkZGluZzsgXG5cdFx0fVxuXHRcdFxuXHRcdC5wYWdlLWludHJvICsgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1saW5rLW92ZXJ2aWV3LFxuXHRcdC5wYWdlLWludHJvICsgLnBhZ2Utc2VjdGlvbi5iZy0td2hpdGUge1xuXHRcdFx0bWFyZ2luLXRvcDogMDsgXG5cdFx0fVxuXHRcdC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgKyAucGFnZS1zZWN0aW9uLmJnLS13aGl0ZSxcblx0XHQucGFnZS1zZWN0aW9uLmJnLS13aGl0ZSArIC5wYWdlLXNlY3Rpb24uYmctLXdoaXRlIHsgcGFkZGluZy10b3A6IDA7IH1cblx0XHQucGFnZS1zZWN0aW9uLmJnLS13aGl0ZSArIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgeyBtYXJnaW4tdG9wOiAwOyB9XHRcblx0XG4gXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRTRUNUSU9OIFZJREVPIC8gQ1RBIFRFQVNFUiBcblxuXHRMYXJnZSBiYWNrZ3JvdW5kIGltYWdlIGFuZCBlaXRoZXIgYSBDVEEgYnV0dG9uIG9yIHZpZGVvIGxpbmtcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHQuc2VjdGlvbi0tZnctdGVhc2VyIHtcblx0XG5cdFx0QGV4dGVuZCAlc2VjdGlvbi0tcGFkLXRvcDsgXG5cblx0fVxuXG5cdC5zZWN0aW9uLWNudFtjbGFzcyo9XCJ0ZWFzZXItLVwiXSB7XG5cdFx0XG5cdFx0aGVpZ2h0OiA0NTBweDtcblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLXhsKSB7IGhlaWdodDogNTQwcHg7IH1cblx0XHRcblx0XHQvL292ZXJsYXlcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwOyBsZWZ0OiAwOyBcblx0XHRcdHotaW5kZXg6IDE7IFxuXHRcdFx0XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoJGRhcmstYmx1ZSwgMC4zMCk7XG5cdFx0fVxuXHRcdFxuXHRcdHN0cm9uZyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMzRweCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yNTsgXG5cdFx0fSBcblx0XHRcblx0XHQuYnRuLS12aWRlbyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLWJvdHRvbTogMThweDsgfVxuXHRcdFxuXHRcdC5idG4tLWN0YSB7IFxuXHRcdFxuXHRcdFx0QGV4dGVuZCAlYnRuLS1saW5rO1xuXHRcdFx0QGV4dGVuZCAlYnRuLS15ZWxsb3c7IFxuXHRcdFx0XG5cdFx0XHRtYXJnaW4tdG9wOiAwLjUgKiAkZ3JpZC1zaXplcjsgXHRcblx0XHR9XG5cdFx0XG5cdH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0U0VDVElPTiBISUdITElHSFQgVEVBU0VSIFxuXG5cdDUwLzUwIHJvdyB3aXRoIGFuIGltYWdlIGFuZCB0ZXh0IGxlZnQgYW5kIHJpZ2h0IGFuZCB2LnYuXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0LnNlY3Rpb24tLXNpZGUtY29udGVudCB7XG5cblx0XHRoZWlnaHQ6IDEwMCU7IFxuXHRcdFxuXHRcdFxuXHRcdEBleHRlbmQgJXNlY3Rpb24tLW5vLXBhZDsgXG5cdFx0XG5cdFx0bWFyZ2luLXRvcDogJHNlY3Rpb24tcGFkZGluZzsgXG5cdFx0bWFyZ2luLWJvdHRvbTogJHNlY3Rpb24tcGFkZGluZzsgXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjsgXG5cdFx0XG5cdFx0Ly9kZWZhdWx0IGxheW91dCB3aXRoIHRoZSBjb250ZW50IG9uIHRoZSBsZWZ0XG5cdFx0LmNvbnRlbnQtLXByaW1hcnkge1xuXHRcdFxuXHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7IFxuXHRcdFx0XG5cdFx0XHQ+IGRpdiB7XG5cdFx0XHRcdHBhZGRpbmc6IDAuNSAqICRncmlkLXNpemVyOyBcblx0XHRcdFx0QGluY2x1ZGUgcGFkZGluZyhwYWRkaW5nLWxlZnQpOyBcblx0XHRcdH1cblx0XHRcdC8vcmVhZG1vcmUgbGlua1xuXHRcdFx0PiBhIHtcblx0XHRcdFx0QGluY2x1ZGUgcGFkZGluZyhwYWRkaW5nLWxlZnQpOyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdFxuXHRcdFx0XHQ+IGRpdiB7IFxuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogJGdyaWQtc2l6ZXI7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogJGdyaWQtc2l6ZXI7IFxuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6ICRncmlkLXNpemVyOyBcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0XG5cdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRmbG9hdDogbGVmdDsgXG5cdFxuXHRcdFx0XHRtaW4taGVpZ2h0OiA1MDBweDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDYwcHg7IFxuXHRcdFx0XHRcblx0XHRcdFx0PiBkaXYge1xuXHRcdFx0XHRcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogJGdyaWQtc2l6ZXI7IFxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Ly9yZWFkbW9yZSBsaW5rXG5cdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTogMDsgXG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdC5jb250ZW50LS1zZWNvbmRhcnkge1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXHRcdFx0aGVpZ2h0OiBhdXRvOyBcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47IFxuXHRcdFx0XG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKDkvMTYpOyBcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcdFxuXHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6IDAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IFxuXG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFxuXHRcdC8vIGFsdGVybmF0aXZlIGxheW91dCB3aXRoIGNvbnRlbnQgb24gdGhlIHJpZ2h0XG5cdFx0Ji5jb250ZW50LS1yaWdodCB7XG5cdFx0XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcblx0XHRcdC5jb250ZW50LS1wcmltYXJ5ID4gZGl2IHtcblx0XHRcdFx0cGFkZGluZzogMC41ICogJGdyaWQtc2l6ZXI7IFxuXHRcdFx0XHRAaW5jbHVkZSBwYWRkaW5nKHBhZGRpbmctcmlnaHQpOyBcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXRvbmx5KSB7XG5cdFx0XHRcdFxuXHRcdFx0XHQuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IFxuXHRcdFx0XHRcdFx0cGFkZGluZzogJGdyaWQtc2l6ZXI7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogJGdyaWQtc2l6ZXI7IFxuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0LmNvbnRlbnQtLXByaW1hcnkge1xuXHRcdFx0XHRcdGZsb2F0OiByaWdodDsgXG5cdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0PiBkaXYge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6ICRncmlkLXNpemVyO1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkZ3JpZC1zaXplcjtcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAkZ3JpZC1zaXplcjtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQvL3JlYWRtb3JlIGxpbmtcblx0XHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkZ3JpZC1zaXplcjsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQuY29udGVudC0tc2Vjb25kYXJ5IHtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRcblx0XHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHRcdFx0VHlwb2dyYXBoeSBIaWdobGlnaHQgdGVhc2VyXG5cdFx0XHRcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFx0XG5cdFx0XG5cdFx0XHRoMyB7IFxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwLjUgKiAkZ3JpZC1zaXplcjsgXG5cdFx0XHRcdHBhZGRpbmctdG9wOiAwLjUgKiAkZ3JpZC1zaXplcjsgXG5cdFx0XHRcdEBleHRlbmQgLmgyOyBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmNvbnRlbnQtLXByaW1hcnkgPiBhIHtcblx0XHRcdFx0XG5cdFx0XHRcdEBleHRlbmQgJWJ0bi1pY29uLWFmOyBcblx0XHRcdFx0QGV4dGVuZCAlYnRuLS1sYXJnZTsgXG5cdFx0XHRcdEBleHRlbmQgJWJ0bi0tbWVkaXVtLWJsdWU7IFxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgaWNvbihhZnRlciwgYXJyb3ctcmlnaHQsIGZhbHNlKTtcblx0XHRcdFx0XG5cdFx0XHRcdEBleHRlbmQgJWxpbmstLWJvcmRlcmVkOyBcblx0XHRcdFx0XG5cdFx0XHRcdHdpZHRoOiAxMDAlOyBcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDsgXG5cdFx0XHRcdFxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XG5cdFx0XHRcdGZvbnQtc2l6ZTogMWVtOyBcblx0XHRcdFx0XG5cdFx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4OyBcblx0XHRcdFx0XHRwYWRkaW5nOiAwOyBcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Jjo6YWZ0ZXIgeyBmb250LXNpemU6IGVtKDE0cHgpOyAgfVxuXHRcdFx0XHRcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0PiBzcGFuIHsgYm9yZGVyLWNvbG9yOiAkd2hpdGU7IH1cdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdHAgeyBcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS41Mjk0MTE3NjVlbTtcblx0XHRcdFx0JjpsYXN0LW9mLXR5cGUgeyBtYXJnaW4tYm90dG9tOiAwOyB9IFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQud2lkZ2V0IHsgbWFyZ2luLXRvcDogNDBweDsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXHRcdFxuXHR9XG5cdFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0U0VDVElPTiBJTlRFUkFDVElWRSBISUdITElHSFQgVEVBU0VSIFxuXG5cdDUwLzUwIHJvdyB3aXRoIGEgYnVsbGV0IGxpc3Qgd2l0aCByb2xsb3ZlciB3aGljaCBhY3RpdmF0ZXMgYW4gaW1hZ2Vcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRcblx0LnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIge1xuXHRcblx0XHR1bCB7IFxuXHRcdFxuXHRcdFx0QGV4dGVuZCAlbGlzdC0tY2xlYW47IFxuXHRcdFx0QGV4dGVuZCAlbGlzdC0tc3RyaXBlZDsgXG5cdFx0fVxuXHRcblx0XHR1bCAuc2xpZGUtaXRlbSB7XG5cdFx0XHRAZXh0ZW5kICVsaW5rLS1ib3JkZXJlZDsgXG5cdFx0XHRAaW5jbHVkZSBpY29uKGJlZm9yZSwgYXJyb3ctcmlnaHQpO1xuXHRcdFx0XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7IFxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGxlZnQ6IDVweDtcblx0XHRcdFx0XG5cdFx0XHRcdCBmb250LXNpemU6IGVtKDE0cHgpOyB9XG5cdFx0fVxuXHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdFxuXHRcdFx0dWwgbGkge1xuXHRcdFx0XG5cdFx0XHRcdGhlaWdodDogNTBweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDUwcHg7IFxuXHRcdFx0XHRwYWRkaW5nOiAwOyBcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHR1bCAuc2xpZGUtaXRlbSB7XG5cblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7IFxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTsgXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogLSRncmlkLXNpemVyOyBcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkZ3JpZC1zaXplcjsgXG5cblx0XHRcdFx0Ly9hcnJvdyB0aXBcblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR3aWR0aDogMDsgaGVpZ2h0OiAwOyBcblx0XHRcdFx0XHRyaWdodDogLTUwcHg7XG5cdFx0XHRcdFx0dG9wOiAwOyBcblx0XHRcdFx0XHRib3JkZXI6IDI1cHggc29saWQ7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHR6LWluZGV4OiAxOyBcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdCYuY29udGVudC0tcmlnaHQgdWwgLnNsaWRlLWl0ZW0ge1xuXHRcdFx0XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0kZ3JpZC1zaXplcjtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyICogJGdyaWQtc2l6ZXI7IFxuXHRcdFx0XHRcblx0XHRcdFx0Jjo6YmVmb3JlIHsgbGVmdDogJGdyaWQtc2l6ZXI7IH0gXG5cdFx0XHRcblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGxlZnQ6IC01MHB4O1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvOyBcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0dWwgbGkgYTpmb2N1cywgXG5cdFx0XHR1bCBsaSBhOmhvdmVyLFxuXHRcdFx0dWwgbGkuYWN0aXZlIC5zbGlkZS1pdGVtIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcblx0XHRcdFx0YmFja2dyb3VuZDogJG1lZGl1bS1ibHVlOyBcblx0XHRcdFx0b3V0bGluZTogMDsgXG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICRtZWRpdW0tYmx1ZTsgXG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fSBcblx0XHRcdCYuY29udGVudC0tcmlnaHQgdWwgbGkgLnNsaWRlLWl0ZW06Zm9jdXM6OmFmdGVyLFxuXHRcdFx0Ji5jb250ZW50LS1yaWdodCB1bCBsaSAuc2xpZGUtaXRlbTpob3Zlcjo6YWZ0ZXIsXG5cdFx0XHQmLmNvbnRlbnQtLXJpZ2h0IHVsIGxpLmFjdGl2ZSAuc2xpZGUtaXRlbTo6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXItcmlnaHQtY29sb3I6ICRtZWRpdW0tYmx1ZTsgXG5cdFx0XHRcdGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDsgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0XG5cdC5jb250ZW50LS1zZWNvbmRhcnkgeyBcblx0XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjsgXG5cdFx0XG5cdFx0XG5cdFx0LnNlY3Rpb24tLWFjdGl2aXRpZXMgJiB7IGRpc3BsYXk6IG5vbmU7IH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcblx0XHRcdC5zZWN0aW9uLS1hY3Rpdml0aWVzICYgeyBkaXNwbGF5OiBibG9jazsgfVxuXHRcdFxuXHRcdH1cblx0XHRcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldG9ubHkpIHtcblx0XHRcblx0XHQuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciAuY29udGVudC0tcHJpbWFyeSA+IGRpdiB7IHBhZGRpbmctdG9wOiAkc2VjdGlvbi1wYWRkaW5nOyB9IFxuXHRcdFxuXHR9XG5cdFxuXHQuY29udGVudC0tc2Vjb25kYXJ5IC5zbGlkZSB7XG5cdFxuXHRcdGhlaWdodDogMTAwJTsgXG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwOyBcblx0XHR3aWR0aDogMTAwJTsgXG5cdFx0b3BhY2l0eTogMDtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47IFxuXHRcdFxuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQgNTAwbXMsIHZpc2liaWxpdHkgMjAwbXMgZWFzZS1pbi1vdXQgNTAwbXM7IFxuXHRcdFxuXHRcdCYuYWN0aXZlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDIwMG1zIGVhc2UtaW4tb3V0IDsgXG5cdFx0fVxuXHRcdFxuXHRcdC5jYXB0aW9uIHsgXG5cdFx0XHRtYXgtd2lkdGg6IDUwJTsgXG5cdFx0XHRsZWZ0OiBhdXRvOyBcblx0XHRcdHJpZ2h0OiAwOyBcblx0XHRcdFxuXHRcdFx0LmNvbnRlbnQtLXJpZ2h0ICYgeyBsZWZ0OiAwOyByaWdodDogYXV0bzsgfVxuXG5cdFx0fVx0XG5cblx0fVxuXHRcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFNFQ1RJT04gT1ZFUkZMT1cgQmxPQ0tTXG5cblx0Q3VzdG9tIGJsb2NrIGxheW91dCB3aGVyZSBvbiBhIHNtYWxsZXIgZGV2aWNlIHRoZSBibG9ja3MgY2hhbmdlIGluIHRvXG5cdGEgc2xpZGVyIGluIHN0ZWFkIG9mIHNob3dpbmcgdXAgdW5kZXJuZWF0aCBlYWNodGVyXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0XG5cdCAuc2VjdGlvbi1jbnQuY250LS1vdmVyZmxvdyB7XG5cdFx0IG92ZXJmbG93OiB2aXNpYmxlOyBcblx0XHQgXG5cdFx0ICYuc2xpY2stc2xpZGVyIHsgXG5cdFx0XHQgbWFyZ2luOiAwIC0yMHB4OyBcblxuXHRcdFx0IC5ibG9jayB7IHBhZGRpbmctbGVmdDogMTBweDsgcGFkZGluZy1yaWdodDogMTBweDsgfSBcblx0XHQgXG5cdFx0IH1cdCBcblx0XG5cdFx0XG5cdFx0IFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFxuXHRcdFx0Zm9udC1mYW1pbHk6ICdlbXB0eSc7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7IFxuXHRcdFxuXHRcdFx0LmJsb2NrIHsgZmxvYXQ6IG5vbmU7IHBhZGRpbmctbGVmdDogMC41ICogJGdyaWQtc2l6ZXI7IHBhZGRpbmctcmlnaHQ6IDAuNSAqICRncmlkLXNpemVyOyB9XG5cdFx0XG5cdFx0fVxuXHQgfVxuXHQgXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRTRUNUSU9OIEJMT0NLIENBUk9VU0VMXG5cblx0Q2Fyb3VzZWwgYXMgdXNlZCBieSB0aGUgYnJhbmRzXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0LnBhZ2Utc2VjdGlvbiAuY250LS1jYXJvdXNlbCB7XG5cdFxuXHRcdG1hcmdpbjogMCAtMjBweDsgcGFkZGluZzogMDsgXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7IFxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdFx0Zm9udC1mYW1pbHk6IGVtcHR5OyBcblx0XHRcblx0XHQuYmxvY2sge1xuXHRcdFxuXHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMTBweDsgXG5cdFx0XG5cdFx0fVxuXHRcdC5ibG9jazpmb2N1cyB7XG5cdFx0XHRcblx0XHRcdG91dGxpbmU6IDA7IFxuXHRcdFxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcblx0XHRcdC5ibG9jayB7XG5cdFx0XHRcdHdpZHRoOiBzcGFuKDI1JSk7IFx0XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7IFxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7IFxuXHRcdFx0XHQgXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5zbGljay1hcnJvdyB7IG1hcmdpbi10b3A6IC00NXB4OyB9XG5cdFx0fVxuXHR9XG5cdFxuXHQuc2VjdGlvbi0tb3VyLWJyYW5kcyB7XG5cdFx0XG5cdFx0LnNsaWNrLWFycm93IHtcblx0XHRcdFxuXHRcdFx0QGV4dGVuZCAuc2xpY2stYXJyb3ctYmx1ZTsgXG5cdFx0fVxuXHRcdFxuXHRcdFxuXHR9XG5cdFxuXHQgXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRTRUNUSU9OIE9WRVJWSUVXIEJsT0NLU1xuXG5cdEdlbmVyYWwgbGF5b3V0IGZvciBkaXNwbGF5aW5nIGJsb2NrcyBpbiBhIGdyaWRcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHQuc2VjdGlvbi1jbnQuY250LS1vdmVydmlldyB7XG5cdFxuXHRcdCBvdmVyZmxvdzogdmlzaWJsZTsgXG5cdFx0IEBleHRlbmQgJXNlY3Rpb24tLWJsZWVkOyBcdCBcdFxuXG5cdH1cblx0Lm92ZXJ2aWV3LmdyaWQsIFxuXHQuY250LS1vdmVydmlldyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyOyBcblx0XHRmb250LWZhbWlseTogJ2VtcHR5JztcblxuXHRcdC5idG4uYnRuLS1saW5rIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcImZ1dHVyYS1wdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcblx0XHR9XG5cdH1cblx0XG5cdC5zZWN0aW9uLWNudCB7XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcblx0XHRcdCYuY29sLS0xID4gLmJsb2NrIHsgd2lkdGg6IDcwJTsgfVxuXHRcdH1cblxuXHRcdFx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XG5cdFx0XHQmLmNvbC0tMSA+IC5ibG9jayB7IHdpZHRoOiA1MCU7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyAgfVxuXHRcdFx0Ji5jb2wtLTIgPiAuYmxvY2sgeyB3aWR0aDogNTAlOyB9XG5cdFx0XHQmLmNvbC0tNCA+IC5ibG9jayB7IHdpZHRoOiAyNSU7IH1cdFx0XHRcblx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFxuXHRcdC5wYWdlLXNlY3Rpb24gLnNlY3Rpb24tY250LmNudC0tb3ZlcnZpZXc6bm90KC5zbGljay1zbGlkZXIpIHsgbWFyZ2luLWJvdHRvbTogLSRncmlkLXNpemVyOyB9XG5cdFx0LmNudC0tb3ZlcnZpZXcgKyAuY250LS1jZW50ZXJlZCB7IG1hcmdpbi10b3A6ICRncmlkLXNpemVyOyB9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFxuXHRcdC8vLnBhZ2Utc2VjdGlvbiAuc2VjdGlvbi1jbnQuY250LS1vdmVydmlldyB7IG1hcmdpbi1ib3R0b206IC0kZ3JpZC1zaXplcjsgfVxuXHRcblx0fVxuXHRcblx0XG5cdFxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFxuXHRcdFVuaXF1ZSBzdHlsaW5nIGZvciBhIGNlcnRhaW4gb3ZlcnZpZXcgc2VjdGlvblxuXHRcdFxuXHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRcblx0XHQuc2VjdGlvbi0tcmVsYXRlZCB7IGJhY2tncm91bmQ6ICR2aW9sZXQtYmx1ZTsgOyB9XG5cdFx0XG5cblx0XHRcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFNFQ1RJT04gTElTVCBURUFTRVJcblxuXHRMYXJnZSBiYWNrZ3JvdW5kIGltYWdlIHdpdGggYSBibG9jayBjb250YWluaW5nIHNvbWUgdGV4dCBhbmQgbGlzdCB3aXRoIGxpbmtzXG5cdHVzZWQgZm9yIHRoZSBNYXJrZXRzIE92ZXJ2aWV3IHBhZ2Vcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHRcdFxuXHQudGVhc2VyLS1saW5rcyB7XG5cdFxuXHRcdEBpbmNsdWRlIHBhZGRpbmcocGFkZGluZy1yaWdodCk7IFxuXHRcdFxuXHRcdHBhZGRpbmctcmlnaHQ6IDA7IFxuXHRcdFxuXHRcdEBpbmNsdWRlIGNsZWFyZml4OyBcblx0XHRcblx0XHQuYmxvY2sge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHR9XG5cdFx0LndpZGdldCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblx0XHRcblx0XHQuYmFja3N0cmV0Y2ggeyBwb3NpdGlvbjogc3RhdGljIWltcG9ydGFudDsgfVxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXG5cdFx0XHQuYmFja3N0cmV0Y2ggeyBwb3NpdGlvbjogYWJzb2x1dGUhaW1wb3J0YW50OyB9XG5cdFx0XHRcblx0XHRcdC5ibG9jayB7XG5cdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0d2lkdGg6IDQxMHB4OyBcblx0XHRcdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDsgXG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHRcdFx0XG5cdH1cblx0XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRTRUNUSU9OIEFTSURFIFxuXG5cdFNlY3Rpb24gd2l0aCBhIHRlYXNlciBibG9jayBuZXh0IHRvIGEgbGlzdCBvciBvdGhlciBzaW1wbGUgY29udGVudFxuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XG5cdFxuXHQuY250LS1hc2lkZSB7XG5cdFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcblx0XHQ+IC5ibG9jayB7XG5cdFx0XHRcblx0XHRcdG1hcmdpbjogNDBweCBhdXRvIDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cblx0XHR9XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XG5cdFx0XHQ+IC5ibG9jayB7XG5cdFx0XHRcdHdpZHRoOiAzMy4zMzMzMyU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwOyAgXG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7IFxuXHRcdFx0XHRyaWdodDogMDsgXG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFxuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRTRUNUSU9OIElOVEVSQUNUSVZFIElNQUdFIFxuXG5cdEludGVyYWN0aXZlIGltYWdlIHdpdGggY2xpY2thYmxlIG1hcmtlcnMgd2hpY2ggcmV2ZWFsIGEgdG9vbHRpcFxuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0IFxuXHQuc2VjdGlvbi1jbnQuY250LS1pbnRlcmFjdGl2ZS1pbWFnZSB7XG5cdCBcdHBhZGRpbmc6IDAgMjBweDsgXG5cdCBcdFxuXHQgXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0IFx0XG5cdCBcdFx0cGFkZGluZzogMDsgXG5cdCBcdFxuXHQgXHR9XG5cdH1cblx0XG5cdC5jbnQtLWludGVyYWN0aXZlLWltYWdlIHtcblx0XG5cdCBcdC5tYXJrZXIgeyBcblx0IFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHQgXHRcdGJvcmRlci1yYWRpdXM6IDEwMCU7IFxuXHQgXHRcdHdpZHRoOiA0MHB4OyBcblx0IFx0XHRoZWlnaHQ6IDQwcHg7IFxuXHQgXHRcdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdCBcdFx0cGFkZGluZzogMDsgXG5cdCBcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTsgXG5cdCBcdFx0bWFyZ2luLXRvcDogLTIwcHg7XG5cdCBcdFx0bWFyZ2luLWxlZnQ6IC0yMHB4OyBcblx0IFx0XHRjb2xvcjogI2ZmZjsgXG5cdCBcdFx0XG5cdCBcdFx0Jjpob3ZlciB7IGJhY2tncm91bmQ6ICRkYXJrZXItYmx1ZTsgfVxuXHQgXHR9XG5cdCBcblx0IFx0LmltYWdlLXdyYXBwZXIsXG5cdCBcdC5tYXJrZXIgeyBkaXNwbGF5OiBub25lOyB9XG5cdCBcblx0IFx0LmltYWdlLXdyYXBwZXIgaW1nIHsgbWF4LXdpZHRoOiBub25lOyB3aWR0aDogMTAwJTsgZGlzcGxheTogYmxvY2s7IH1cblx0IFxuXHQgXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0IFxuXHQgXHRcblx0XHRcdC5ibG9jay0tdGlwIHsgZGlzcGxheTogbm9uZTsgfSBcdFxuXHRcdFx0LmltYWdlLXdyYXBwZXIsXG5cdFx0XHQubWFya2VyIHsgZGlzcGxheTogYmxvY2s7IH1cblx0IFx0XG5cdCBcdH1cblx0IFx0XG5cdCBcblx0IH1cblx0IFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0U0VDVElPTiBQTEFJTiBURVhUXG5cblx0QXMgY29weXJpZ2h0IG5vdGljZSBpbiBtZWRpYSBsaWJyYXJ5XG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0IC5jb250YWluZXIudGV4dC1jbnQgcCB7IG1heC13aWR0aDogbm9uZTt9XG5cdCBcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0U0VDVElPTiBDT05UQUNUIE1BUFxuXG5cdFNlY3Rpb24gd2l0aCBhIGxhcmdlIG1hcCBhbmQgYSBibG9jayB3aXRoIGNvbnRhY3QgZGV0YWlsc1xuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XG5cdC5zZWN0aW9uLS1jb250YWN0LW1hcCB7XG5cdCBcblx0XHQgQGV4dGVuZCAlc2VjdGlvbi0tbm8tcGFkO1xuXHRcdCBcblx0XHQgLm92ZXJ2aWV3Lm1hcCB7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nLWJvdHRvbTogMDsgbWluLWhlaWdodDogMDsgfVxuXHRcdCBcblx0XHQgLm1hcC1jbnQgeyBwb3NpdGlvbjogc3RhdGljOyBtaW4taGVpZ2h0OiAyMDBweDsgfVxuXHRcdCBcblx0XHQgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHQgXG5cdFx0XHQgLm1hcC1jbnQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogNDBweDsgIG1pbi1oZWlnaHQ6IDYwMHB4OyB9XG5cdFxuXHRcdCB9XG5cdFx0IFxuXHRcdCBcblx0XHQgLmJsb2NrLS1hZGRyZXNzIHtcblx0XHRcdCBcblx0XHRcdCBAaW5jbHVkZSBtYXJnaW4oJ21hcmdpbi1yaWdodCcpO1xuXG5cdFx0XHQgbWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0IG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHQgXG5cdFx0XHQgaDIgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cdFx0XHQgXG5cdFx0XHQgYSxcblx0XHRcdCBzdHJvbmcsXG5cdFx0XHQgcCB7IGZvbnQtc2l6ZTogZW0oMTZweCk7ICB9XG5cdFx0XHQgXG5cdFx0XHQgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0XHQgXHRtYXJnaW4tYm90dG9tOiA0MHB4OyBcblx0XHRcdCBcdHBhZGRpbmctbGVmdDogMDsgXG5cdFx0XHRcdGZsb2F0OiByaWdodDsgXG5cdFx0XHRcdFxuXHRcdFx0IFx0LmNvbnRlbnQgeyBwYWRkaW5nOiA0MHB4OyB9XG5cdFx0XHRcdCBcblx0XHRcdCB9XG5cdFx0XHQgXG5cdFx0XHQgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHQgXG5cdFx0XHQgXHRtYXgtd2lkdGg6IDM4NXB4O1xuXHRcdFx0IFxuXHRcdFx0IH1cblx0XHRcdCBcblx0XHRcdCAuY29udGVudDpudGgtY2hpbGQoMikge1xuXHRcdFx0XHQgYmFja2dyb3VuZDogJG1lZGl1bS1ibHVlOyBcblx0XHRcdCB9XG5cdFx0XHQgXG5cdFx0IH1cblx0XHQgXG5cdCB9XG5cbiAiLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBcbiAqIEFsbCB0aGUgdW5pcXVlIHN0eWxlcyBmb3IgcGFnZXMgZ28gaGVyZSBcbiAqXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gXG4gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0SU5WRVNUT1IgUkVMQVRJT05TXG5cblx0SW50cm8gd2l0aCBrZXkgZmlndXJlcyBhbmQgYXNpZGUgd2lkZ2V0cyBmb3Igc2hhcmUgYW5kIGNvbnRhY3QgZGV0YWlsc1xuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XG5cdC5wYWdlLS1pciB7XG5cdFx0XG5cdCBcdGFzaWRlIC53aWRnZXQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cdCBcdFxuXHQgXHQud2lkZ2V0LS1zaGFyZXMgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cdCBcblx0IFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0b25seSkge1xuXHQgXG5cdFx0IFx0YXNpZGUgLndpZGdldCB7XG5cdFx0IFx0XG5cdFx0IFx0XHRib3JkZXItYm90dG9tOiAwOyBcblx0XHQgXHRcdHBhZGRpbmc6IDIwcHggNDBweDsgXG5cdFx0IFx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHQgXHRcdG1hcmdpbi10b3A6IDA7IFxuXHRcdFx0IFx0XG5cdFx0IFx0fVxuXHRcdCBcdGFzaWRlIC53aWRnZXQ6bGFzdC1jaGlsZCB7XG5cdFx0XHQgXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmF5OyBcblx0XHQgXHR9XG5cdCBcblx0IFx0fVxuXHQgXG5cdH1cblx0XG5cdFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0TElOSyBPVkVSVklFV1xuXG5cdExpbmsgbGlzdHMgc3BsaXQgb3ZlciBtdWx0aXBsZSBjb2x1bW5zXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0XG5cdC5saW5rLWdyaWRbZGF0YS1jb2x1bW5zXTo6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnMSAuY29sLS1mdWxsJztcblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdGNvbnRlbnQ6ICcyIC5jb2wtLXF1YXJ0JztcdFx0XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHRcdFx0Y29udGVudDogJzMgLmNvbC0tdGhpcmQnO1x0XHRcblx0XHR9XG5cdFxuXHR9XG5cdFxuIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdFNFQVJDSCBSRVNVTFRTXG5cblx0UGFnZSBkaXNwbGF5aW5nIGFsbCB0aGUgc2VhcmNoIHJlc3VsdHMsIGR1aCFcblx0XG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cdFxuXHQucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXNlYXJjaC1yZXN1bHRzIHtcblx0XHQgcGFkZGluZy10b3A6IDIwcHg7IFxuXHRcdCBiYWNrZ3JvdW5kOiAkbWVkaXVtLWJsdWU7IFxuXHRcdCBcblx0XHQgLnRvb2xiYXIgKyAuZmlsdGVyLWNudCB7IG1hcmdpbi10b3A6IC0yMHB4OyB9XG5cdFx0IFxuXHRcdCBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcblx0XHRcdCBcblx0XHRcdCBwYWRkaW5nLXRvcDogNDBweDsgXG5cdFx0XHQgXG5cdFx0XHQgLnRvb2xiYXIgKyAuZmlsdGVyLWNudCB7IG1hcmdpbi10b3A6IDBweDsgfVxuXHRcdFx0IFxuXHRcdCB9XG5cdH1cblxuXHRidXR0b24uYnRuLS1yZXNldCB7IFxuXHRcdFxuXHRcdEBleHRlbmQgJWJ0bi1pY29uO1xuXHRcdFxuXHRcdEBpbmNsdWRlIGljb24oYmVmb3JlLCBjbG9zZSwgZmFsc2UpOyBcblx0XHRcblx0XHQmOmZvY3VzLFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0XG5cdFx0XHRiYWNrZ3JvdW5kOiAkeWVsbG93O1xuXHRcdFx0Y29sb3I6ICRibGFjazsgXG5cdFx0fVxuXHRcdFxuXHR9XG5cblx0LnNlYXJjaC0tbGFyZ2Uge1xuXHRcblx0XHRtYXJnaW4tdG9wOiAzNHB4OyBcblx0XHRtYXJnaW4tYm90dG9tOiAwOyBcblx0XHRcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDsgXG5cdFx0ICBcblx0XHQubGFiZWwgeyBAZXh0ZW5kICV0ZXh0LS1oaWRkZW47IH1cdFx0XG5cdFx0XG5cdFx0aW5wdXQgeyBmb250LXN0eWxlOiBpdGFsaWM7IHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cblx0XHRcblxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFxuXHRcdFx0bGFiZWwgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiA2MCU7IH1cblx0XHRcdGlucHV0LCBidXR0b24geyBoZWlnaHQ6IDYwcHg7IGxpbmUtaGVpZ2h0OiA2MHB4OyAgZm9udC1zaXplOiBlbSgyMnB4KTsgfVxuXHRcdFx0aW5wdXQsIC5idG4tLXNlYXJjaCB7IGZsb2F0OiBsZWZ0OyBwb3NpdGlvbjogc3RhdGljO31cblx0XHRcdGlucHV0IHsgcGFkZGluZy1sZWZ0OiAyNXB4OyBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0YnV0dG9uLmJ0bi0tc2VhcmNoIHsgXG5cdFx0XHRcdGJhY2tncm91bmQ6ICR5ZWxsb3c7IFxuXHRcdFx0XHR3aWR0aDogYXV0bzsgXG5cdFx0XHRcdHBhZGRpbmc6IDAgMzBweDsgXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkOyBcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7IFxuXHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBpY29uKGFmdGVyLCBzZWFyY2gpOyBcblx0XHRcdFx0XG5cdFx0XHRcdCY6OmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cblx0XHRcdFx0Jjo6YWZ0ZXIgeyBmb250LXNpemU6IDE5cHg7IH1cblx0XHRcdFx0Jjpob3ZlciB7IGJhY2tncm91bmQ6ICR3aGl0ZTsgY29sb3I6ICRibGFjazsgfVxuXHRcdFx0XHRcblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXHRcdFx0XHRcdCAgICBjbGlwOiBhdXRvO1xuXHRcdFx0XHRcdCAgICBoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdFx0ICAgIG1hcmdpbjogMDtcblx0XHRcdFx0XHQgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cdFx0XHRcdFx0ICAgIHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0ICAgIHBhZGRpbmc6IDAgNXB4O1xuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmJ0bi0tcmVzZXQgeyB3aWR0aDogNjBweDsgZm9udC1zaXplOiBlbSgxOXB4KTsgIH1cblx0XHRcblx0XHRcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFwdG9wKSB7XG5cdFx0XHRcblx0XHRcdGxhYmVsIHsgd2lkdGg6IDYzMHB4OyB9XG5cdFx0XHRcblx0XHR9XG5cdH1cblx0XG4gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0UFJPSkVDVCBERVRBSUwgXG5cblx0RGV0YWlsIHBhZ2UgZm9yIHRoZSBwcm9qZWN0cy4gXG5cdFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXHRcblx0LnBhZ2UtLXByb2plY3QtZGV0YWlsIHtcblx0XG5cdFx0LnBhZ2UtY29udGVudCB7IGJhY2tncm91bmQ6ICRsaWdodC1ibHVlOyB9XG5cdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcHRvcCkge1xuXHQgXG5cdFx0XHQucGFnZS1hc2lkZSArIC5wYWdlLWNvbnRlbnQgeyBwYWRkaW5nLXRvcDogMDsgfSBcblx0XHR9XG5cdFxuXHR9XG5cblx0LnBhZ2UtLXByb2plY3QtZGV0YWlsLWludHJvIHtcblxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0cGFkZGluZzogMzVweCAwIDI1cHggMDtcblxuXHR9XG5cblx0LnBhZ2UtY29udGVudC5jb250ZW50LW1haW5baXRlbXByb3A9XCJhcnRpY2xlQm9keVwiXSB7XG5cdFx0bWluLWhlaWdodDogNDUwcHg7XG5cdH1cblx0XG5cdFxuIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdEhPTUVQQUdFXG5cblx0Q3VzdG9tIHN0eWxpbmcgZm9yIHRoZSBob21lcGFnZVxuXHRcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblx0XG5cdC5zZWN0aW9uLS1xdWljay1saW5rcyB7XG5cdFxuXHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblx0XHRcdFxuXHRcdFx0LmJsb2NrLS1saW5rcyB7XG5cdFx0XHRcblx0XHRcdFx0aGVpZ2h0OiAzMzBweDsgXG5cdFx0XHRcdFxuXHRcdFx0XHQmID4gZGl2IHsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cblx0XHRcdFx0XG5cdFx0XHRcdC5mb290aW5nIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiAwOyBcblx0XHRcdFx0XHR3aWR0aDogMTAwJTsgXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0fVxuXHRcdC53aWRnZXQgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cdFx0LndpZGdldDpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4OyBcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0fVxuXHQiLCIuZmFuY3lib3gtb3ZlcmxheSB7XG5cdFxuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwLjUpOyBcblxufVxuLmZiLS1zdWJzY3JpYmUge1xuXHRcblx0LmZhbmN5Ym94LXNraW4geyBib3gtc2hhZG93OiBub25lOyBib3JkZXItcmFkaXVzOiAwOyAgfVxuXHRcblx0LnBvcHVwIHsgZGlzcGxheTogYmxvY2s7IH1cbn1cblxuLy8gZml4ZXMgZm9yIGN1c3RvbSBzY3JvbGxiYXIgaW4gZmFuY3lib3hcbi5mYW5jeWJveC1pbm5lciB7XG5cblx0Lm1DU0JfaW5zaWRlPi5tQ1NCX2NvbnRhaW5lciB7IG1hcmdpbi1yaWdodDogMDsgfVxuXHRcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMge1xuXHRcblx0XHR0b3A6IDgwcHg7XG5cdFx0Ym90dG9tOiAzMHB4O1xuXHRcdHJpZ2h0OiAxMHB4OyBcblx0XHRcblx0fVxuXHRcbn1cblxuLmZhbmN5Ym94LWNsb3NlIHtcblx0XHRcblx0XHRiYWNrZ3JvdW5kOiBub25lOyBcblx0XHRcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0XG5cdFx0QGV4dGVuZCAlYnRuLWljb247XG5cdFx0XG5cdFx0QGluY2x1ZGUgaWNvbihiZWZvcmUsIGNsb3NlLCBmYWxzZSk7IFxuXHRcdFxuXHRcdHdpZHRoOiA1MHB4O1xuXHRcdGhlaWdodDogNTBweDtcblxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdFx0bGluZS1oZWlnaHQ6IDUwcHg7IFx0XHRcblx0XHRmb250LXNpemU6IGVtKDEwcHgpOyBcblx0XHRjb2xvcjogJGJsYWNrOyBcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7IFxuXHRcdFxuXHRcdCY6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkeWVsbG93OyB9XG5cdFx0XG5cdH1cblxuLnBvcHVwIHtcbi8vXHRkaXNwbGF5OiBub25lOyBcbn1cblxuLnBvcHVwIHtcblx0XG5cdGNvbG9yOiAkYmxhY2s7IFxuXHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuXHQvL21heC13aWR0aDogNjUwcHg7IFxuXHRcblx0Zm9udC1zaXplOiAxOHB4OyBcblx0XG5cdEBpbmNsdWRlIGNsZWFyZml4OyBcblx0XG5cdGhlYWRlcixcblx0Zm9ybSxcblx0YXNpZGUge1xuXHRcdHBhZGRpbmc6IDMwcHggNDBweDsgXG5cdFx0bWFyZ2luOiAwOyBcblx0fVxuXHRoZWFkZXIge1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTsgXG5cdFx0cGFkZGluZy10b3A6IDQwcHg7IFxuXHRcdFxuXHRcdC5oZWFkaW5nLS1zZWN0aW9uIHsgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuXHRcdFxuXHR9XG5cdGZvcm0ge1xuXHRcdGJhY2tncm91bmQ6ICRtZWRpdW0tYmx1ZTsgXG5cdFx0XG5cblx0XHQubGFiZWwtLXN0cm9uZywgXG5cdFx0LmxhYmVsIHsgZm9udC1zaXplOiBlbSgxNnB4KTsgfVxuXHRcdFxuLyogXHRcdC5idG4geyBmb250LXNpemU6IGVtKDE4cHgpOyB9ICovXG5cdH1cblx0YXNpZGUge1xuXHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7IFxuXHRcdGNvbG9yOiAkd2hpdGU7IFxuXHRcdFxuXHRcdC5idG4ge1xuXHRcdFx0QGV4dGVuZCAuYnRuLS13aGl0ZTsgXG5cdFx0XHRcblx0XHRcdFxuXHRcdH1cblx0XHQuYnRuOmZpcnN0LW9mLXR5cGUgeyBtYXJnaW4tbGVmdDogMDsgfVxuXHRcdFxuXHRcdC5saXN0LS1saW5rcyB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA0MHB4OyBcblx0XHRcdEBleHRlbmQgICVsaXN0LS1zdHJpcGVkLWxpZ2h0OyBcblx0XHR9XG5cdFx0XG5cdFx0c3Ryb25nIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zaXplOiBlbSgxNnB4KTsgZGlzcGxheTogYmxvY2s7IGxpbmUtaGVpZ2h0OiAxLjQ7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblx0XHRcblx0fVxuXHRcblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuXHRcdFxuXHRcdGZvcm0sXG5cdFx0YXNpZGUge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7IFxuXHRcdH1cblx0XHRmb3JtIHsgd2lkdGg6IDYwJTt9XG5cdFx0YXNpZGUgeyB3aWR0aDogNDAlOyB9XG5cdFx0XG5cdFx0Ly8uZmllbGQtLWNoZWNrYm94IHsgbWFyZ2luLWJvdHRvbTogMXB4OyB9XG5cdFx0LmxhYmVsLS1zdHJvbmcgeyBtYXJnaW4tdG9wOiA1cHg7IG1hcmdpbi1ib3R0b206IDVweDsgfVxuXHRcdFxuXHRcdGZvcm0gZmllbGRzZXQ6Zmlyc3QtY2hpbGQgeyAubGFiZWwtLXN0cm9uZyB7IG1hcmdpbi10b3A6IDA7IH19XG5cdFx0XG5cdH1cblx0XG59XG5cbi5ub3RpZmljYXRpb24ge1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5cblxuIiwiLnZpZGVvLXBvc3RlciB7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBtaW4taGVpZ2h0OiAyNTBweDtcbn1cblxuLmJpZy12aWRlby12aWQtZGltZW5zaW9ucyB7XG4gIC5uYXYtb3BlbmVkICYge1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLmVtZXJnZW5jeS1ib3gge1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDEwcHggMjBweCAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAyNDZweDtcbiAgcmlnaHQ6IC0yNDZweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAyMDA7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KXtcbiAgICB3aWR0aDogMzA2cHg7XG4gICAgcmlnaHQ6IC0zMDZweDtcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3Ape1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gIH1cblxuICAuYnRuIHtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICB9XG5cbiAgfVxuXG4gIGg0LFxuICBwIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICB9XG5cbiAgLnRyaWdnZXIge1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmx1ZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nOiAzMHB4IDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDc0cHg7XG5cbiAgICBzcGFuIHtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwY1wiO1xuICAgICAgICBmb250LWZhbWlseTogSWNvbnM7XG4gICAgICB9XG5cbiAgICAgIC5ib3gtb3BlbiAmIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTBkXCI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmJveC1vcGVuICYge1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbn0iLCIubWFwcy10aXAge1xuXG4gICAgLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICB9XG5cbiAgICAuc2xpY2stYXJyb3cuc2xpY2stcHJldixcbiAgICAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjY1cyBlYXNlLWluLW91dDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgICAgbGVmdDogNDFweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jay5ibG9jay0tbG9jYXRpb24sXG4gICAgLmJsb2NrLmJsb2NrLS1sb2NhdGlvbjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICAgIC5ibG9jay0tbG9jYXRpb24gLmNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICB9XG5cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICBoZWlnaHQ6IDM3MHB4O1xuICAgIH1cbiAgICBcbn0iLCIuYmFkZ2UgaW1nIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmJhZGdlLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG4iLCJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdERFRkFVTFQgUFJFTE9BREVSIFNUWUxJTkdcblxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucHJlbG9hZGVyLXBvcHVwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLnByZWxvYWRlci1wb3B1cCAucG9wdXBfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBob25lKSB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi5wcmVsb2FkZXItcG9wdXAgLnBvcHVwX19jbG9zZSB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTEwO1xuICB0b3A6IC0zNXB4O1xuICByaWdodDogLTEwcHg7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL0ljb25zL2ljb24tY2xvc2Uuc3ZnKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRwaG9uZSkge1xuICAgIHRvcDogLTIwcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuLnByZWxvYWRlci1wb3B1cCAucG9wdXBfX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxMDBweCA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcGhvbmUpIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi5wcmVsb2FkZXItcG9wdXAgLmFuaW1hdGlvbiB7XG4gIGhlaWdodDogMTUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogNDBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRwaG9uZSkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgfVxufVxuXG4ucHJlbG9hZGVyLXBvcHVwIC5hbmltYXRpb24gLmFuaW1hdGlvbl9faXRlbSB7XG4gIHdpZHRoOiA0MDBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRwaG9uZSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmlyc3Qge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzZWNvbmQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnByZWxvYWRlci1wb3B1cCAuYW5pbWF0aW9uIC5maXJzdCB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBhbmltYXRpb246IGZpcnN0IDVzIG5vcm1hbCBmb3J3YXJkcyBlYXNlO1xuICBhbmltYXRpb24tZGVsYXk6IDUwMG1zO1xufVxuXG4ucHJlbG9hZGVyLXBvcHVwIC5hbmltYXRpb24gLnNlY29uZCB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBhbmltYXRpb246IHNlY29uZCA1cyBub3JtYWwgZm9yd2FyZHMgZWFzZTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgb3BhY2l0eTogMDtcbn0iLCIuZmxhc2gtbWVzc2FnZXMtY29udGFpbmVyIHtcblxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gIC5mbGFzaC1tZXNzYWdlcy1jb250YWluZXItaW5uZXIge1xuXG4gICAgLnR5cG8zLW1lc3NhZ2Vze1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5hbGVydCB7XG5cbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRibHVlLWRhcmtlbmVkO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgcGFkZGluZy1ib3R0b206IDJlbTtcbiAgICAgIH1cblxuICAgICAgJj4uYWxlcnQtbWVzc2FnZXtcblxuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgY29udGVudCA6ICctJztcbiAgICAgICAgICBtYXJnaW46IDAgMC41ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYWxlcnQtbm90aWNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gICAgICB9XG4gICAgICAmLmFsZXJ0LXdhcm5pbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgICAgfVxuICAgICAgJi5hbGVydC1lcnJvcntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNhbHZhZ2U7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLypcbiAqIFRpcHBlZCAtIEEgQ29tcGxldGUgSmF2YXNjcmlwdCBUb29sdGlwIFNvbHV0aW9uIC0gdjQuNC4yXG4gKiAoYykgMjAxMi0yMDE1IE5pY2sgU3Rha2VuYnVyZ1xuICpcbiAqIGh0dHA6Ly93d3cudGlwcGVkanMuY29tXG4gKlxuICogTGljZW5zZTogaHR0cDovL3d3dy50aXBwZWRqcy5jb20vbGljZW5zZVxuICovXG5cbi50cGQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLyogRml4IGZvciBDU1MgZnJhbWV3b3JrcyB0aGF0IGRvbid0IGtlZXAgdGhlIHVzZSBvZiBib3gtc2l6aW5nOiBib3JkZXItYm94XG4gICB3aXRoaW4gdGhlaXIgb3duIG5hbWVzcGFjZSAqL1xuLnRwZC10b29sdGlwLFxuLnRwZC10b29sdGlwIFtjbGFzc149XCJ0cGQtXCJdIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qIENvbnRlbnQgKi9cbi50cGQtY29udGVudC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnRwZC1jb250ZW50LXNwYWNlcixcbi50cGQtY29udGVudC1yZWxhdGl2ZSxcbi50cGQtY29udGVudC1yZWxhdGl2ZS1wYWRkZXIge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnRwZC1jb250ZW50LXJlbGF0aXZlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50cGQtY29udGVudCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBjb2xvcjogI2ZmZjtcbn1cbi50cGQtaGFzLWlubmVyLWNsb3NlIC50cGQtY29udGVudC1yZWxhdGl2ZSAudHBkLWNvbnRlbnQgeyBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi50cGQtdG9vbHRpcCAudHBkLWNvbnRlbnQtbm8tcGFkZGluZyB7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4udHBkLXRpdGxlLXdyYXBwZXIge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnRwZC10aXRsZS1zcGFjZXIge1xuICBmbG9hdDogbGVmdDtcbn1cbi50cGQtdGl0bGUtcmVsYXRpdmUsXG4udHBkLXRpdGxlLXJlbGF0aXZlLXBhZGRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udHBkLXRpdGxlLXJlbGF0aXZlIHsgd2lkdGg6IDEwMCU7IH1cbi50cGQtdGl0bGUge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG59XG4udHBkLWhhcy10aXRsZS1jbG9zZSAudHBkLXRpdGxlIHsgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4udHBkLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjZmZmO1xufVxuLnRwZC1jbG9zZS1pY29uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4vKiBTa2luICovXG4udHBkLXNraW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLnRwZC1mcmFtZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi50cGQtZnJhbWVzIC50cGQtZnJhbWUge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50cGQtdmlzaWJsZS1mcmFtZS10b3AgLnRwZC1mcmFtZS10b3AgeyBkaXNwbGF5OiBibG9jazsgfVxuLnRwZC12aXNpYmxlLWZyYW1lLWJvdHRvbSAudHBkLWZyYW1lLWJvdHRvbSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4udHBkLXZpc2libGUtZnJhbWUtbGVmdCAudHBkLWZyYW1lLWxlZnQgeyBkaXNwbGF5OiBibG9jazsgfVxuLnRwZC12aXNpYmxlLWZyYW1lLXJpZ2h0IC50cGQtZnJhbWUtcmlnaHQgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4udHBkLWJhY2tncm91bmRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAlIDAlO1xufVxuLnRwZC1iYWNrZ3JvdW5kLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4udHBkLW5vLXNoYWRvdyAudHBkLXNraW4gLnRwZC1iYWNrZ3JvdW5kLXNoYWRvdyB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udHBkLWJhY2tncm91bmQtYm94IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4vKiBvbmx5IHRoZSB0b3AgYmFja2dyb3VuZCBib3ggc2hvdWxkIGJlIHNob3duIHdoZW4gbm90IHVzaW5nIGEgc3RlbSAqL1xuLnRwZC1uby1zdGVtIC50cGQtYmFja2dyb3VuZC1ib3gsXG4udHBkLW5vLXN0ZW0gLnRwZC1zaGlmdC1zdGVtIHsgZGlzcGxheTogbm9uZTsgfVxuLnRwZC1uby1zdGVtIC50cGQtYmFja2dyb3VuZC1ib3gtdG9wIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLnRwZC1iYWNrZ3JvdW5kLWJveC1zaGlmdCxcbi50cGQtYmFja2dyb3VuZC1ib3gtc2hpZnQtZnVydGhlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4udHBkLWJhY2tncm91bmQge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsgLyogU2FmYXJpICovXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7IC8qIElFOSssIEZpcmVmb3ggNCssIE9wZXJhLCBDaHJvbWUgKi9cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xKTsgLyogb3BhY2l0eSBoZXJlIGJ1Z3Mgb3V0IGluIGZpcmVmb3gsIC50cGQtYmFja2dyb3VuZC1jb250ZW50IHNob3VsZCBoYXZlIG5vIG9wYWNpdHkgaWYgdGhpcyBvcGFjaXR5IGlzIGxlc3MgdGhhbiAxICovXG59XG4udHBkLWJhY2tncm91bmQtbG9hZGluZyB7IGRpc3BsYXk6IG5vbmU7IH1cbi8qIG5vIHJhZGl1cyAqL1xuLnRwZC1uby1yYWRpdXMgLnRwZC1za2luIC50cGQtZnJhbWVzIC50cGQtZnJhbWUgLnRwZC1iYWNrZ3JvdW5kcyAudHBkLWJhY2tncm91bmQgeyBib3JkZXItcmFkaXVzOiAwOyB9XG4udHBkLWJhY2tncm91bmQtdGl0bGUge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLnRwZC1iYWNrZ3JvdW5kLWNvbnRlbnQge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLnRwZC1iYWNrZ3JvdW5kLWJvcmRlci1oYWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi50cGQtYmFja2dyb3VuZC1ib3gtdG9wIHsgdG9wOiAwOyB9XG4udHBkLWJhY2tncm91bmQtYm94LWJvdHRvbSB7IGJvdHRvbTogMDsgfVxuLnRwZC1iYWNrZ3JvdW5kLWJveC1sZWZ0IHsgbGVmdDogMDsgfVxuLnRwZC1iYWNrZ3JvdW5kLWJveC1yaWdodCB7IHJpZ2h0OiAwOyB9XG5cbi8qIGlmcmFtZXNoaW0gSUU2ICovXG4udHBkLWlmcmFtZXNoaW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB6b29tOiAxO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qIFNraW4gLyBTdGVtcyAqL1xuLnRwZC1zaGlmdC1zdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udHBkLXNoaWZ0LXN0ZW0tc2lkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi50cGQtZnJhbWUtdG9wIC50cGQtc2hpZnQtc3RlbS1zaWRlLFxuLnRwZC1mcmFtZS1ib3R0b20gLnRwZC1zaGlmdC1zdGVtLXNpZGUgeyB3aWR0aDogMTAwJTsgfVxuLnRwZC1mcmFtZS1sZWZ0IC50cGQtc2hpZnQtc3RlbS1zaWRlLFxuLnRwZC1mcmFtZS1yaWdodCAudHBkLXNoaWZ0LXN0ZW0tc2lkZSB7IGhlaWdodDogMTAwJTsgfVxuXG4udHBkLXN0ZW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLyogc2hvd3MgcG9zc2libGUgaW52YWxpZCBzdWJweCByZW5kZXJpbmcgKi9cbiAgd2lkdGg6IDE2cHg7IC8qIGJlc3QgY3Jvc3MgYnJvd3NlciBzdGVtOiB3aWR0aCA9IDIgeCBoZWlnaHQgKDkwZGVnIGFuZ2xlKSAqL1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luLWxlZnQ6IDNweDsgLyogc3BhY2UgZnJvbSB0aGUgc2lkZSAqL1xuICBtYXJnaW4tdG9wOiAycHg7IC8qIHNwYWNlIGJldHdlZW4gdGFyZ2V0IGFuZCBzdGVtICovXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAlIDAlO1xufVxuLyogcmVtb3ZlIG1hcmdpbnMgb25jZSB3ZSdyZSBkb25lIG1lYXN1cmluZyAqL1xuLnRwZC10b29sdGlwIC50cGQtc2tpbiAudHBkLWZyYW1lcyAudHBkLWZyYW1lIC50cGQtc2hpZnQtc3RlbSAudHBkLXN0ZW0tcmVzZXQgeyBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4udHBkLXN0ZW0tc3BhY2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4udHBkLXN0ZW0tcmVzZXQgLnRwZC1zdGVtLXNwYWNlciB7IG1hcmdpbi10b3A6IDA7IH1cblxuLnRwZC1zdGVtLXBvaW50IHtcbiAgd2lkdGg6IDEwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xufVxuLnRwZC1zdGVtLWRvd25zY2FsZSxcbi50cGQtc3RlbS10cmFuc2Zvcm0ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwJSAwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRwZC1zdGVtLXNpZGUge1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udHBkLXN0ZW0tc2lkZS1pbnZlcnNlZCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgtMSwxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwxKTtcbn1cbi50cGQtc3RlbS10cmlhbmdsZSB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG4udHBkLXN0ZW0tYm9yZGVyIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgLyogd2lsbCBiZWNvbWUgdHJhbnNwYXJlbnQgKi9cbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG5cbi50cGQtc3RlbS1ib3JkZXItY29ybmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG5cbi8qIGZpeGVzIHJlbmRlcmluZyBpc3N1ZSBpbiBJRSAqL1xuLnRwZC1zdGVtICogeyB6LWluZGV4OiAwOyB6b29tOiAxOyB9XG5cbi8qIHVzZWQgYnkgSUUgPCA5ICovXG4udHBkLXN0ZW0tYm9yZGVyLWNlbnRlci1vZmZzZXQsXG4udHBkLXN0ZW0tYm9yZGVyLWNlbnRlci1vZmZzZXQtaW52ZXJzZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udHBkLXN0ZW0tbm90cmFuc2Zvcm0ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnRwZC1zdGVtLW5vdHJhbnNmb3JtIC50cGQtc3RlbS1ib3JkZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xufVxuLnRwZC1zdGVtLW5vdHJhbnNmb3JtIC50cGQtc3RlbS1ib3JkZXItY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnRwZC1zdGVtLW5vdHJhbnNmb3JtIC50cGQtc3RlbS1ib3JkZXItY29ybmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAwO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG4udHBkLXN0ZW0tbm90cmFuc2Zvcm0gLnRwZC1zdGVtLWJvcmRlci1jZW50ZXIsXG4udHBkLXN0ZW0tbm90cmFuc2Zvcm0gLnRwZC1zdGVtLXRyaWFuZ2xlIHtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IDA7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLyogdHJhbnNmb3JtYXRpb25zIGZvciBsZWZ0L3JpZ2h0L2JvdHRvbSAqL1xuLnRwZC1zdGVtLXRyYW5zZm9ybS1sZWZ0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHNjYWxlKC0xLDEpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHNjYWxlKC0xLDEpO1xufVxuLnRwZC1zdGVtLXRyYW5zZm9ybS1yaWdodCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMCwgLTEwMCUpO1xufVxuLnRwZC1zdGVtLXRyYW5zZm9ybS1ib3R0b20ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwtMSkgdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLC0xKSB0cmFuc2xhdGUoMCwgLTEwMCUpO1xufVxuXG5cbi8qIFNwaW5uZXIgKi9cbi50cGQtc3Bpbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDQ2cHg7XG4gIGhlaWdodDogMzZweDtcbn1cbi50cGQtc3Bpbm5lci1zcGluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiA4cHggMCAwIDEzcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZjtcbiAgLXdlYmtpdC1hbmltYXRpb246IHRwZC1zcGlubmVyLWFuaW1hdGlvbiAxLjFzIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiB0cGQtc3Bpbm5lci1hbmltYXRpb24gMS4xcyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbn1cbi50cGQtc3Bpbm5lci1zcGluLFxuLnRwZC1zcGlubmVyLXNwaW46YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgdHBkLXNwaW5uZXItYW5pbWF0aW9uIHtcbiAgMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5Aa2V5ZnJhbWVzIHRwZC1zcGlubmVyLWFuaW1hdGlvbiB7XG4gIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4vKiBzaG93IHRoZSBsb2FkZXIgd2hpbGUgbG9hZGluZyBhbmQgaGlkZSBhbGwgdGhlIGNvbnRlbnQgKi9cbi50cGQtaXMtbG9hZGluZyAudHBkLWNvbnRlbnQtd3JhcHBlcixcbi50cGQtaXMtbG9hZGluZyAudHBkLXRpdGxlLXdyYXBwZXIgeyBkaXNwbGF5OiBub25lOyB9XG4udHBkLWlzLWxvYWRpbmcgLnRwZC1iYWNrZ3JvdW5kIHsgZGlzcGxheTogbm9uZTsgfVxuLnRwZC1pcy1sb2FkaW5nIC50cGQtYmFja2dyb3VuZC1sb2FkaW5nIHsgZGlzcGxheTogYmxvY2s7IH1cblxuXG5cbi8qIFJlc2V0cyB3aGlsZSBtZWFzdXJpbmcgY29udGVudCAqL1xuLnRwZC10b29sdGlwLW1lYXN1cmluZyB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRwZC10b29sdGlwLW1lYXN1cmluZyAudHBkLXNraW4sXG4udHBkLXRvb2x0aXAtbWVhc3VyaW5nIC50cGQtc3Bpbm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50cGQtdG9vbHRpcC1tZWFzdXJpbmcgLnRwZC1jb250ZW50LXdyYXBwZXIsXG4udHBkLXRvb2x0aXAtbWVhc3VyaW5nIC50cGQtdGl0bGUtd3JhcHBlciB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuLyogTGlua3MgKi9cbi8qXG4udHBkLXRvb2x0aXAgYSxcbi50cGQtdG9vbHRpcCBhOmhvdmVyIHsgY29sb3I6ICM4MDgwODA7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4udHBkLXRvb2x0aXAgYTpob3ZlciB7IGNvbG9yOiAjNmM2YzZjOyB9XG4qL1xuXG5cbi8qXG4gKiBTaXplc1xuICovXG4vKiB4LXNtYWxsICovXG4udHBkLXNpemUteC1zbWFsbCAudHBkLWNvbnRlbnQsXG4udHBkLXNpemUteC1zbWFsbCAudHBkLXRpdGxlIHtcbiAgcGFkZGluZzogN3B4IDhweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMTVweDtcbn1cbi50cGQtc2l6ZS14LXNtYWxsIC50cGQtYmFja2dyb3VuZCB7IGJvcmRlci1yYWRpdXM6IDVweDsgfVxuLnRwZC1zaXplLXgtc21hbGwgLnRwZC1zdGVtIHtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBtYXJnaW4tdG9wOiAycHg7IC8qIHNwYWNlIGJldHdlZW4gdGFyZ2V0IGFuZCBzdGVtICovXG59XG4udHBkLXNpemUteC1zbWFsbC50cGQtbm8tcmFkaXVzIC50cGQtc3RlbSB7IG1hcmdpbi1sZWZ0OiA3cHg7IH1cbi50cGQtc2l6ZS14LXNtYWxsIC50cGQtY2xvc2UgeyBtYXJnaW4tYm90dG9tOiAxcHg7IH1cbi50cGQtc2l6ZS14LXNtYWxsIC50cGQtc3Bpbm5lciB7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDI5cHg7XG59XG4udHBkLXNpemUteC1zbWFsbCAudHBkLXNwaW5uZXItc3BpbiB7IG1hcmdpbjogNnB4IDAgMCA5cHg7IH1cbi50cGQtc2l6ZS14LXNtYWxsIC50cGQtc3Bpbm5lci1zcGluLFxuLnRwZC1zaXplLXgtc21hbGwgLnRwZC1zcGlubmVyLXNwaW46YWZ0ZXIge1xuICB3aWR0aDogMTdweDtcbiAgaGVpZ2h0OiAxN3B4O1xufVxuXG4vKiBzbWFsbCAqL1xuLnRwZC1zaXplLXNtYWxsIC50cGQtY29udGVudCxcbi50cGQtc2l6ZS1zbWFsbCAudHBkLXRpdGxlIHtcbiAgcGFkZGluZzogOHB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuLnRwZC1zaXplLXNtYWxsIC50cGQtYmFja2dyb3VuZCB7IGJvcmRlci1yYWRpdXM6IDZweDsgfVxuLnRwZC1zaXplLXNtYWxsIC50cGQtc3RlbSB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDdweDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbWFyZ2luLXRvcDogMnB4OyAvKiBzcGFjZSBiZXR3ZWVuIHRhcmdldCBhbmQgc3RlbSAqL1xufVxuLnRwZC1zaXplLXNtYWxsLnRwZC1uby1yYWRpdXMgLnRwZC1zdGVtIHsgbWFyZ2luLWxlZnQ6IDhweDsgfVxuLnRwZC1zaXplLXNtYWxsIC50cGQtY2xvc2UgeyBtYXJnaW46IDJweCAxcHg7IH1cbi50cGQtc2l6ZS1zbWFsbCAudHBkLXNwaW5uZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiAzMnB4O1xufVxuLnRwZC1zaXplLXNtYWxsIC50cGQtc3Bpbm5lci1zcGluIHsgbWFyZ2luOiA3cHggMCAwIDEzcHg7IH1cbi50cGQtc2l6ZS1zbWFsbCAudHBkLXNwaW5uZXItc3Bpbixcbi50cGQtc2l6ZS1zbWFsbCAudHBkLXNwaW5uZXItc3BpbjphZnRlciB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG59XG5cblxuLyogbWVkaXVtIChkZWZhdWx0KSAqL1xuLnRwZC1zaXplLW1lZGl1bSAudHBkLWNvbnRlbnQsXG4udHBkLXNpemUtbWVkaXVtIC50cGQtdGl0bGUge1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuLnRwZC1zaXplLW1lZGl1bSAudHBkLWJhY2tncm91bmQgeyBib3JkZXItcmFkaXVzOiA4cHg7IH1cbi50cGQtc2l6ZS1tZWRpdW0gLnRwZC1zdGVtIHtcbiAgd2lkdGg6IDE2cHg7ICAgICAgLyogYmVzdCBjcm9zcyBicm93c2VyIHN0ZW0gd2lkdGggaXMgMnhoZWlnaHQsIGZvciBhIDkwZGVnIGFuZ2xlICovXG4gIGhlaWdodDogOHB4O1xuICBtYXJnaW4tbGVmdDogNnB4OyAvKiBzcGFjZSBmcm9tIHRoZSBzaWRlICovXG4gIG1hcmdpbi10b3A6IDJweDsgLyogc3BhY2UgYmV0d2VlbiB0YXJnZXQgYW5kIHN0ZW0gKi9cbn1cbi50cGQtc2l6ZS1tZWRpdW0udHBkLW5vLXJhZGl1cyAudHBkLXN0ZW0geyBtYXJnaW4tbGVmdDogMTBweDsgfVxuLnRwZC1zaXplLW1lZGl1bSAudHBkLWNsb3NlIHsgbWFyZ2luOiA0cHggMnB4OyB9XG4vKiBpZGVhbCBzcGlubmVyIGRpbWVuc2lvbnMgZG9uJ3QgY2F1c2UgbW92ZW1lbnQgb3AgdG9wIGFuZFxuICAgb24gdGhlIHN0ZW0gd2hlbiBzd2l0Y2hpbmcgdG8gdGV4dCB1c2luZyBwb3NpdGlvbjondG9wbGVmdCcgKi9cbi50cGQtc2l6ZS1tZWRpdW0gLnRwZC1zcGlubmVyIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogMzZweDtcbn1cbi50cGQtc2l6ZS1tZWRpdW0gLnRwZC1zcGlubmVyLXNwaW4geyBtYXJnaW46IDhweCAwIDAgMTVweDsgfVxuLnRwZC1zaXplLW1lZGl1bSAudHBkLXNwaW5uZXItc3Bpbixcbi50cGQtc2l6ZS1tZWRpdW0gLnRwZC1zcGlubmVyLXNwaW46YWZ0ZXIge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuXG5cbi8qIGxhcmdlICovXG4udHBkLXNpemUtbGFyZ2UgLnRwZC1jb250ZW50LFxuLnRwZC1zaXplLWxhcmdlIC50cGQtdGl0bGUge1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuLnRwZC1zaXplLWxhcmdlIC50cGQtYmFja2dyb3VuZCB7IGJvcmRlci1yYWRpdXM6IDhweDsgfVxuLnRwZC1zaXplLWxhcmdlIC50cGQtc3RlbSB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDlweDtcbiAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgbWFyZ2luLXRvcDogMnB4OyAvKiBzcGFjZSBiZXR3ZWVuIHRhcmdldCBhbmQgc3RlbSAqL1xufVxuLnRwZC1zaXplLWxhcmdlLnRwZC1uby1yYWRpdXMgLnRwZC1zdGVtIHsgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbi50cGQtc2l6ZS1sYXJnZSAudHBkLWNsb3NlIHsgbWFyZ2luOiA1cHggMnB4IDVweCAycHg7IH1cbi50cGQtc2l6ZS1sYXJnZSAudHBkLXNwaW5uZXIge1xuICB3aWR0aDogNTRweDtcbiAgaGVpZ2h0OiAzOHB4O1xufVxuLnRwZC1zaXplLWxhcmdlIC50cGQtc3Bpbm5lci1zcGluIHsgbWFyZ2luOiA5cHggMCAwIDE3cHg7IH1cbi50cGQtc2l6ZS1sYXJnZSAudHBkLXNwaW5uZXItc3Bpbixcbi50cGQtc2l6ZS1sYXJnZSAudHBkLXNwaW5uZXItc3BpbjphZnRlciB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cblxuXG4vKiBTa2lucyAqL1xuLyogZGVmYXVsdCAoZGFyaykgKi9cbi50cGQtc2tpbi1kYXJrIC50cGQtY29udGVudCxcbi50cGQtc2tpbi1kYXJrIC50cGQtdGl0bGUsXG4udHBkLXNraW4tZGFyayAudHBkLWNsb3NlIHsgY29sb3I6ICNmZmY7IH1cbi50cGQtc2tpbi1kYXJrIC50cGQtYmFja2dyb3VuZC1jb250ZW50LFxuLnRwZC1za2luLWRhcmsgLnRwZC1iYWNrZ3JvdW5kLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbn1cbi50cGQtc2tpbi1kYXJrIC50cGQtYmFja2dyb3VuZCB7XG4gIC8vYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAgYm9yZGVyLWNvbG9yOiAjRkZGO1xuLy8gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG59XG4vKiBsaW5lIGJlbG93IHRoZSB0aXRsZSAqL1xuLnRwZC1za2luLWRhcmsgLnRwZC10aXRsZS13cmFwcGVyIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MDQwNDA7IH1cbi8qIHNwaW5uZXIgKi9cbi50cGQtc2tpbi1kYXJrIC50cGQtc3Bpbm5lci1zcGluIHtcbi8vICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcbn1cbi8qIGxpbmtzICovXG4udHBkLXNraW4tZGFyayBhIHsgY29sb3I6ICNjY2M7IH1cbi50cGQtc2tpbi1kYXJrIGE6aG92ZXIgeyBjb2xvcjogI2MwYzBjMDsgfVxuXG4iLCIvKlxuPT0gbWFsaWh1IGpxdWVyeSBjdXN0b20gc2Nyb2xsYmFyIHBsdWdpbiA9PVxuUGx1Z2luIFVSSTogaHR0cDovL21hbm9zLm1hbGlodS5nci9qcXVlcnktY3VzdG9tLWNvbnRlbnQtc2Nyb2xsZXJcbiovXG5cblxuXG4vKlxuQ09OVEVOVFM6IFxuXHQxLiBCQVNJQyBTVFlMRSAtIFBsdWdpbidzIGJhc2ljL2Vzc2VudGlhbCBDU1MgcHJvcGVydGllcyAobm9ybWFsbHksIHNob3VsZCBub3QgYmUgZWRpdGVkKS4gXG5cdDIuIFZFUlRJQ0FMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIHZlcnRpY2FsIHNjcm9sbGJhci4gXG5cdDMuIEhPUklaT05UQUwgU0NST0xMQkFSIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgaG9yaXpvbnRhbCBzY3JvbGxiYXIuXG5cdDQuIFZFUlRJQ0FMIEFORCBIT1JJWk9OVEFMIFNDUk9MTEJBUlMgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiAyLWF4aXMgc2Nyb2xsYmFycy4gXG5cdDUuIFRSQU5TSVRJT05TIC0gQ1NTMyB0cmFuc2l0aW9ucyBmb3IgaG92ZXIgZXZlbnRzLCBhdXRvLWV4cGFuZGVkIGFuZCBhdXRvLWhpZGRlbiBzY3JvbGxiYXJzLiBcblx0Ni4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFMgXG5cdFx0Ni4xIFRIRU1FUyAtIFNjcm9sbGJhciBjb2xvcnMsIG9wYWNpdHksIGRpbWVuc2lvbnMsIGJhY2tncm91bmRzIGV0Yy4gdmlhIHJlYWR5LXRvLXVzZSB0aGVtZXMuXG4qL1xuXG5cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEJBU0lDIFNUWUxFICBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuXHQubUN1c3RvbVNjcm9sbGJhcnsgLW1zLXRvdWNoLWFjdGlvbjogcGluY2gtem9vbTsgdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tOyAvKiBkaXJlY3QgcG9pbnRlciBldmVudHMgdG8ganMgKi8gfVxuXHQubUN1c3RvbVNjcm9sbGJhci5tQ1Nfbm9fc2Nyb2xsYmFyLCAubUN1c3RvbVNjcm9sbGJhci5tQ1NfdG91Y2hfYWN0aW9ueyAtbXMtdG91Y2gtYWN0aW9uOiBhdXRvOyB0b3VjaC1hY3Rpb246IGF1dG87IH1cblx0XG5cdC5tQ3VzdG9tU2Nyb2xsQm94eyAvKiBjb250YWlucyBwbHVnaW4ncyBtYXJrdXAgKi9cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0ZGlyZWN0aW9uOiBsdHI7XG5cdH1cblxuXHQubUNTQl9jb250YWluZXJ7IC8qIGNvbnRhaW5zIHRoZSBvcmlnaW5hbCBjb250ZW50ICovXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR3aWR0aDogYXV0bztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBWRVJUSUNBTCBTQ1JPTExCQVIgXG55LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuXHQubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7IG1hcmdpbi1yaWdodDogMzBweDsgfVxuXG5cdC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVueyBtYXJnaW4tcmlnaHQ6IDA7IH0gLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG5cdFxuXHQubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXJnaW4tbGVmdDogMzBweDtcblx0fVxuXHRcblx0Lm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW57IG1hcmdpbi1sZWZ0OiAwOyB9IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzeyAvKiBjb250YWlucyBzY3JvbGxiYXIgbWFya3VwIChkcmFnZ2FibGUgZWxlbWVudCwgZHJhZ2dlciByYWlsLCBidXR0b25zIGV0Yy4pICovXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAxNnB4O1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRsZWZ0OiBhdXRvO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdH1cblxuXHQubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHN7IHJpZ2h0OiAtMjZweDsgfSAvKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cblx0XG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLCBcblx0Lm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblx0XHRyaWdodDogYXV0bztcblx0XHRsZWZ0OiAwO1xuXHR9XG5cdFxuXHQubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHN7IGxlZnQ6IC0yNnB4OyB9IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAoc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlKSAqL1xuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7IC8qIGNvbnRhaW5zIHRoZSBkcmFnZ2FibGUgZWxlbWVudCBhbmQgZHJhZ2dlciByYWlsIG1hcmt1cCAqL1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7IFxuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyBtYXJnaW46IDIwcHggMDsgfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAycHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4O1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcnsgLyogdGhlIGRyYWdnYWJsZSBlbGVtZW50ICovXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMzBweDsgLyogbWluaW11bSBkcmFnZ2VyIGhlaWdodCAqL1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyAvKiB0aGUgZHJhZ2dlciBlbGVtZW50ICovXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiA0cHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXHRcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IHdpZHRoOiAxMnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cdFxuXHQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuXHQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHsgd2lkdGg6IDhweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBib3R0b206IDA7IH1cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4zLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiBcbngtYXhpc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5cdC5tQ1NCX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0XG5cdC5tQ1NCX2hvcml6b250YWwubUNTQl9vdXRzaWRlID4gLm1DU0JfY29udGFpbmVyeyBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cblx0Lm1DU0JfaG9yaXpvbnRhbCA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVueyBtYXJnaW4tYm90dG9tOiAwOyB9IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHtcblx0XHR3aWR0aDogYXV0bztcblx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0dG9wOiBhdXRvO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0Lm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94ICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IGJvdHRvbTogLTI2cHg7IH0gLyogc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlICovXG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyBtYXJnaW46IDAgMjBweDsgfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDJweDtcblx0XHRtYXJnaW46IDdweCAwO1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7XG5cdFx0d2lkdGg6IDMwcHg7IC8qIG1pbmltdW0gZHJhZ2dlciB3aWR0aCAqL1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0bWFyZ2luOiA2cHggYXV0bztcblx0fVxuXHRcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdGhlaWdodDogMTJweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cblx0XHRtYXJnaW46IDJweCBhdXRvO1xuXHR9XG5cdFxuXHQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0aGVpZ2h0OiA4cHg7IC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG5cdFx0bWFyZ2luOiA0cHggMDtcblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0LFxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHR7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAyMHB4O1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxuXHRcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvbkxlZnR7IGxlZnQ6IDA7IH1cblxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHR7IHJpZ2h0OiAwOyB9XG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSUyBcbnl4LWF4aXMgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXJ7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHR3aWR0aDogYXV0bztcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0fVxuXHRcblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXIgPiAubUNTQl9jb250YWluZXJ7XG5cdFx0cGFkZGluZy1yaWdodDogMzBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcblx0XHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0fVxuXHRcblx0Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWx7IGJvdHRvbTogMjBweDsgfVxuXHRcblx0Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgcmlnaHQ6IDIwcHg7IH1cblx0XG5cdC8qIG5vbi12aXNpYmxlIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG5cdC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FseyBib3R0b206IDA7IH1cblx0XG5cdC8qIG5vbi12aXNpYmxlIHZlcnRpY2FsIHNjcm9sbGJhci9SVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzIH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLCBcblx0Lm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyByaWdodDogMDsgfVxuXHRcblx0LyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgbGVmdDogMjBweDsgfVxuXHRcblx0Lyogbm9uLXZpc2libGUgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXHQubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IGxlZnQ6IDA7IH1cblx0XG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XG5cdH1cblx0XG5cdC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gPiAubUNTQl9jb250YWluZXJ7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblx0XG5cdC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gPiAubUNTQl9jb250YWluZXJ7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cdFxuXHQubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVue1xuXHRcdG1hcmdpbi1yaWdodDogMDsgLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdH1cblx0XG5cdC8qIG5vbi12aXNpYmxlIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG5cdC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW57IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG41LiBUUkFOU0lUSU9OUyAgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMsIFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXHRcdC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXHRcdC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG5cdH1cblx0XG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyX2JhciwgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlsLCBcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuXHQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHQtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcblx0XHRcdFx0XHRtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG5cdFx0XHRcdFx0bWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcblx0XHQtbW96LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcblx0XHRcdFx0XHRtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG5cdFx0XHRcdFx0bWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcblx0XHQtby10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuXHRcdFx0XHRcdG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxuXHRcdFx0XHRcdG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgXG5cdFx0dHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcblx0XHRcdFx0XHRtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcblx0XHRcdFx0XHRvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IFxuXHR9XG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNi4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFMgIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5cdC8qIFxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdDYuMSBUSEVNRVMgXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ki9cblx0XG5cdC8qIGRlZmF1bHQgdGhlbWUgKFwibGlnaHRcIikgKi9cblxuXHQubUNTQl9zY3JvbGxUb29sc3sgb3BhY2l0eTogMC43NTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXHRcblx0Lm1DUy1hdXRvSGlkZSA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG5cdC5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzeyBvcGFjaXR5OiAwOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjsgfVxuXHRcblx0Lm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuXHQubUN1c3RvbVNjcm9sbGJhciA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19vbkRyYWcsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyIH4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG5cdC5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuXHQubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29sc3sgb3BhY2l0eTogMTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjQpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IFxuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IFxuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuODUpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9ODUpXCI7IFxuXHR9XG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IFxuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChtQ1NCX2J1dHRvbnMucG5nKTsgLyogY3NzIHNwcml0ZXMgKi9cblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdG9wYWNpdHk6IDAuNDsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjsgXG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG5cdFx0LyogXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnMgXG5cdFx0bGlnaHQ6IDAgMCwgLTE2cHggMCwgLTMycHggMCwgLTQ4cHggMCwgMCAtNzJweCwgLTE2cHggLTcycHgsIC0zMnB4IC03MnB4XG5cdFx0ZGFyazogLTgwcHggMCwgLTk2cHggMCwgLTExMnB4IDAsIC0xMjhweCAwLCAtODBweCAtNzJweCwgLTk2cHggLTcycHgsIC0xMTJweCAtNzJweFxuXHRcdCovXG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTIwcHg7XG5cdFx0LyogXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnNcblx0XHRsaWdodDogMCAtMjBweCwgLTE2cHggLTIwcHgsIC0zMnB4IC0yMHB4LCAtNDhweCAtMjBweCwgMCAtOTJweCwgLTE2cHggLTkycHgsIC0zMnB4IC05MnB4XG5cdFx0ZGFyazogLTgwcHggLTIwcHgsIC05NnB4IC0yMHB4LCAtMTEycHggLTIwcHgsIC0xMjhweCAtMjBweCwgLTgwcHggLTkycHgsIC05NnB4IC05MnB4LCAtMTEyIC05MnB4XG5cdFx0Ki9cblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcblx0XHQvKiBcblx0XHRzcHJpdGVzIGxvY2F0aW9ucyBcblx0XHRsaWdodDogMCAtNDBweCwgLTIwcHggLTQwcHgsIC00MHB4IC00MHB4LCAtNjBweCAtNDBweCwgMCAtMTEycHgsIC0yMHB4IC0xMTJweCwgLTQwcHggLTExMnB4XG5cdFx0ZGFyazogLTgwcHggLTQwcHgsIC0xMDBweCAtNDBweCwgLTEyMHB4IC00MHB4LCAtMTQwcHggLTQwcHgsIC04MHB4IC0xMTJweCwgLTEwMHB4IC0xMTJweCwgLTEyMHB4IC0xMTJweFxuXHRcdCovXG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01NnB4O1xuXHRcdC8qIFxuXHRcdHNwcml0ZXMgbG9jYXRpb25zIFxuXHRcdGxpZ2h0OiAwIC01NnB4LCAtMjBweCAtNTZweCwgLTQwcHggLTU2cHgsIC02MHB4IC01NnB4LCAwIC0xMjhweCwgLTIwcHggLTEyOHB4LCAtNDBweCAtMTI4cHhcblx0XHRkYXJrOiAtODBweCAtNTZweCwgLTEwMHB4IC01NnB4LCAtMTIwcHggLTU2cHgsIC0xNDBweCAtNTZweCwgLTgwcHggLTEyOHB4LCAtMTAwcHggLTEyOHB4LCAtMTIwcHggLTEyOHB4XG5cdFx0Ki9cblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmhvdmVyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmhvdmVyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmhvdmVyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDpob3Zlcnsgb3BhY2l0eTogMC43NTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmFjdGl2ZSxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjphY3RpdmUsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQ6YWN0aXZlLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDphY3RpdmV7IG9wYWNpdHk6IDAuOTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgfVxuXHRcblxuXHQvKiB0aGVtZTogYm9za2FsaXMgKi9cblxuXG5cdC5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG5cdFx0d2lkdGg6IDZweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGRhcmtlci1ibHVlLDUpO1xuXHR9XG5cdFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcnsgd2lkdGg6IDZweDsgfVxuXG5cdC5tQ1MtYm9za2FsaXMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDZweDtcblx0XHRtYXJnaW46IDVweCAwO1xuXHR9XG5cdFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLCBcblx0Lm1DUy1ib3NrYWxpcy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAxMnB4O1xuXHR9XG5cdFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0bWFyZ2luOiAycHggMDtcblx0fVxuXG5cdFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7IH1cblxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7ICB9XG5cblx0Lm1DUy1ib3NrYWxpcy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWJvc2thbGlzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTsgIH1cblx0XHRcblxuIiwiLy8gIFdhdGVybWFya1xuLnRvb2x0aXAge1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGJvdHRvbTogMTAwJTtcbiAgd2lkdGg6IDMzcHg7XG4gIHotaW5kZXg6IDU7XG5cbiAgJjpiZWZvcmUge1xuXG4gICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAkd2hpdGU7XG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aWR0aDogMDtcblxuICB9XG5cbiAgJjphZnRlciB7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgfVxuICBcbiAgJjpob3ZlciB7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgfVxuICBcbn1cblxuLy8gIENvbnRhY3QgTWFwXG4ubWFwLWNvbnRlbnQtdHJpZ2dlciB7XG5cbiAgcGFkZGluZzogMjBweCAyMHB4IDAgNDBweDtcblxuICBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmhlYWRxdWFydGVyLXRpdGxlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogODAlO1xuICB9XG5cbiAgLmhlYWRxdWFydGVyLXRyaWdnZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG5cbiAgLm1hcC10cmlnZ2VyIHtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlLWRhcmtlbmVkO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogNDBweDtcblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICBjb250ZW50OiAnLSc7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gICAgICAubWFwLWNvbnRlbnQtY2xvc2VkICYge1xuICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5tYXAtY29udGVudC1jbG9zZWQgJiB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cblxufVxuXG4ubWFwLWNvbnRlbnQtY2xvc2VkIHtcblxuICAuY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG59XG5cbi5maWx0ZXItLW9wZW4gLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDQ1JTtcbiAgfVxuXG59XG5cbi5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAyMHB4IDQwcHggMjBweCAyMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xuICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgfVxufVxuXG4uc2VjdGlvbi0tY29udGFjdC1tYXAgLmJsb2NrLS1hZGRyZXNzIC5jb250ZW50Om50aC1jaGlsZCgyKSB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbn1cblxuLnNlY3Rpb24tLWNvbnRhY3QtbWFwIC5ibG9jay0tYWRkcmVzcyAuY29udGVudDpudGgtY2hpbGQoMykge1xuICBiYWNrZ3JvdW5kOiAkbWVkaXVtLWJsdWU7XG59XG5cbi5jb250YWN0LS1saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkZGFyay1ibHVlO1xuICB9XG5cbiAgYTpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tYmx1ZTtcbiAgfVxuXG4gIGE6YmVmb3JlIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ibHVlO1xuICB9XG5cbn1cblxuLnN1YnNpdGUge1xuXG4gIC50b3AtLXJpZ2h0LWxvZ28gaW1nIHtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAxNXZ3O1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICB9XG5cbn1cblxuIiwiLyogLS0tLVxuXHRDT0ZSQVxuLS0tLS0tLSAqL1xuXG4uY29mcmEge1xuXG4gICAgLmxvZ28gc3ZnIHtcblxuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICB9XG5cbiAgICAudG9nZ2xlLWxpbmtbZGF0YS1kaXJlY3Rpb25zXSB7XG5cbiAgICAgICAgY29sb3I6ICRjb2ZyYV9yZWQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkY29mcmFfcmVkX2Rhcms7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gTmF2XG5cbiAgICAubWFpbi1uYXZpZ2F0aW9uIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheTtcblxuICAgICAgICAubmF2LWNudCB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5O1xuXG4gICAgICAgIH1cblxuICAgICAgICAubmF2LS1tYWluIHtcblxuICAgICAgICAgICAgbGkgPiBhLFxuICAgICAgICAgICAgbGk6bGFzdC1jaGlsZCA+IGEge1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaTpsYXN0LW9mLXR5cGUgPiBhIHtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc3VibmF2LWNudC5sZXZlbC0tMSB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX2dyYXlfbWVkaXVtO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgIC5zdWJtZW51IHtcblxuICAgICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAgICAgYTpub3QoLmJ0bikge1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheV9kYXJrO1xuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGE6bm90KC5idG4pIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX2dyYXlfZGFyaztcblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnN1Ym5hdi1jbnQubGV2ZWwtLTIge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhOm5vdCguYnRuKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2ZyYV95ZWxsb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2ZyYV95ZWxsb3c7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmN1cnJlbnQgYTpub3QoLmJ0bikge1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG5cbiAgICAgICAgLm5hdi10ZWFzZXIge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheV9kYXJrO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi5uYXYtLW1haW4gPiBsaS5hY3RpdmUgPiBhLFxuICAgICAgICAubmF2Lm5hdi0tbWFpbiA+IGxpLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgICAgIC5uYXYubmF2LS1tYWluID4gbGkuY3VycmVudCA+IGEsXG4gICAgICAgIC5uYXYubmF2LS1tYWluID4gbGkgPiBhOmZvY3VzLFxuICAgICAgICAubmF2Lm5hdi0tbWFpbiA+IGxpID4gYTpob3ZlciB7XG5cbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyBCYWNrZ3JvdW5kc1xuXG4gICAgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1zdWJwYWdlcyxcbiAgICAucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXZlc3NlbHMsXG4gICAgLnBhZ2Utc2VjdGlvbi5zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyxcbiAgICAucGFnZS1zZWN0aW9uLnNlY3Rpb24tLXByb2plY3Qtb3ZlcnZpZXcge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5O1xuXG4gICAgfVxuXG4gICAgLnBhZ2UtaGVhZGVyLWNudCB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX2dyYXlfZGFyaztcblxuICAgIH1cblxuICAgIC5zZWN0aW9uLWNudFtjbGFzcyo9dGVhc2VyLS1dOmJlZm9yZSB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29mcmFfZ3JheV9kYXJrLCAwLjMpO1xuXG4gICAgfVxuXG4gICAgLmJnLS1saWdodC1ncmF5IHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfZ3JheTtcblxuICAgIH1cblxuICAgIC5iZy0tZGFyay1ncmF5IHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfZ3JheV9kYXJrO1xuXG4gICAgfVxuXG4gICAgLy8gRm9vdGVyXG5cbiAgICAubWFpbi1mb290ZXIge1xuXG4gICAgICAgIC5zaXRlbWFwIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX3JlZDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLmJhY2stdG9wLWxpbmsge1xuXG4gICAgICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2ZyYV9ncmF5O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2ZyYV9ncmF5X21lZGl1bTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfZ3JheV9tZWRpdW07XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmJhZGdlIHtcblxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gQ1RBXG5cbiAgICAuYmxvY2sgPiBkaXY6aG92ZXIsXG4gICAgYTphY3RpdmUsXG4gICAgYTpmb2N1cyxcbiAgICBhOmhvdmVyIHtcblxuICAgICAgICAuY3RhIC5idG4ge1xuXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX3JlZDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvZnJhX3JlZDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gTGlua3NcblxuICAgIC5saW5rLS1waG9uZSB7XG5cbiAgICAgICAgY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gQmxvY2tzXG5cbiAgICAuYmxvY2sge1xuXG4gICAgICAgIC50YWcge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfeWVsbG93O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5ibG9jay0tY29udGFjdCB7XG5cbiAgICAgICAgLmluZm8ge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIGEge1xuXG4gICAgICAgICAgICBjb2xvcjogJGNvZnJhX3JlZDtcblxuICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvZnJhX3JlZDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuYmxvY2stLWxpbmtzIHtcblxuICAgICAgICA+IGRpdixcbiAgICAgICAgLmxpc3QtLWxpbmtzIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX2dyYXk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGxpLmhlYWRpbmcsXG4gICAgICAgIC5saXN0LS1saW5rcyBsaSB7XG5cbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICAmIGEge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5ibG9jay0tbGlua3MgLmxpc3QtLWxpbmtzLFxuICAgIC5saXN0LS1kcm9wZG93bixcbiAgICAubGlzdC0tc3RyaXBlZC1saWdodCxcbiAgICAucG9wdXAgYXNpZGUgLmxpc3QtLWxpbmtzIHtcblxuICAgICAgICBsaSA+IGE6Zm9jdXMsXG4gICAgICAgIGxpID4gYTpob3ZlciB7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNpdGVtYXAgLmxpc3QtLWxpbmtzIHtcblxuICAgICAgICBsaSA+IGE6Zm9jdXMsXG4gICAgICAgIGxpID4gYTpob3ZlciB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29mcmFfcmVkO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5ibG9jayBmb290ZXIgYSxcbiAgICAud2lkZ2V0IC5mb290aW5nIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheV9tZWRpdW07XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICB9XG5cbiAgICAuc2VjdGlvbi0tc2lkZS1jb250ZW50IHtcblxuICAgICAgICAuY29udGVudC0tcHJpbWFyeSB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5zZWN0aW9uLS1vcGVuZWQgLnRvZ2dsZS1zZWN0aW9uIHtcblxuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgfVxuXG4gICAgLy8gQnV0dG9uc1xuXG4gICAgLmJ0biB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX2dyYXk7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgJi5idG4tLXZpZGVvIHtcblxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhLnZpZGVvLXBvc3Rlcjpob3ZlcixcbiAgICBhLnZpZGVvLXBvc3Rlcjpmb2N1cyB7XG5cbiAgICAgICAgLmJ0bi0tdmlkZW8ge1xuXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuYnRuOmZvY3VzLFxuICAgIC5idG46aG92ZXIsXG4gICAgYSAuYnRuOmhvdmVyIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfcmVkO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbiBsaTpub3QoLmN1cnJlbnQpIGE6aG92ZXIge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5X21lZGl1bTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uIGxpLmN1cnJlbnQgYSB7XG5cbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgIH1cblxuICAgIC5idG4udG9nZ2xlLS1maWx0ZXItbmF2LFxuICAgIC5idG4uYnRuLS1zdWJtaXQge1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2ZyYV9yZWRfbGlnaHQ7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgYSAuYnRuOmZvY3VzLFxuICAgICAgICBhIC5idG46aG92ZXIge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfcmVkO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5idG4tLWxhYmVsIC5pY29uIHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfcmVkO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgfVxuXG4gICAgLmJ0bi50b2dnbGUtLWZpbHRlci1uYXY6aG92ZXIgaSB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX3JlZF9kYXJrO1xuXG4gICAgfVxuXG4gICAgLnNvcnQgLmJ0bi5hY3RpdmUsXG4gICAgLnNvcnQgLmJ0bltkaXNhYmxlZF0sXG4gICAgLnZpZXctc3dpdGNoIC5idG5bZGlzYWJsZWRdIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfcmVkO1xuXG4gICAgfVxuXG4gICAgLmJ0bi0tYmFjayxcbiAgICAuYnRuLS10b2dnbGUtb3ZlcmxheSxcbiAgICAuYnRuLS15ZWxsb3csXG4gICAgLnBhZ2UtaGVhZGVyIGEuYnRuLS1saW5rLFxuICAgIC5zZWN0aW9uLWNudFtjbGFzcyo9dGVhc2VyLS1dIC5idG4tLWN0YSB7XG5cbiAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX3llbGxvdztcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX3JlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmFjdGl2ZSAuYnRuLS1iYWNrLFxuICAgIC5hY3RpdmUgLmJ0bi0tc3VibWVudSxcbiAgICAuYnRuLS1iYWNrOmhvdmVyLFxuICAgIC5idG4tLXN1Ym1lbnU6aG92ZXIge1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIH1cblxuICAgIC5jdGEgc3Bhbi5idG4ubGluay1tb3JlIHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICB9XG5cbiAgICBhOmhvdmVyLFxuICAgIGE6Zm9jdXMge1xuXG4gICAgICAgIC5jdGEgc3Bhbi5idG4ubGluay1tb3JlIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX3JlZDtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyBDYWxlbmRhclxuXG4gICAgLmxpc3QtLW92ZXJ2aWV3LWFjdGlvbiA+IGxpIHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfZ3JheTtcblxuICAgICAgICAuYnRuIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX2dyYXlfbGlnaHQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB1bnNldDtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX3JlZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gTWFwXG5cbiAgICAuYmFyLS1sZWdlbmQge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5O1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAubGVnZW5kLS1ib3NrYWxpcy1vZmZpY2U6YmVmb3JlIHtcblxuICAgICAgICBjb2xvcjogJGNvZnJhX3llbGxvd19kYXJrO1xuXG4gICAgfVxuXG4gICAgLmxlZ2VuZC0tYmFycmllcnM6YmVmb3JlIHtcblxuICAgICAgICBjb2xvcjogJHNhbHZhZ2U7XG5cbiAgICB9XG5cbiAgICAubGVnZW5kLS1jb21wYWN0aW9uOmJlZm9yZSB7XG5cbiAgICAgICAgY29sb3I6ICRvZmZzaG9yZTtcblxuICAgIH1cblxuICAgIC5sZWdlbmQtLWNvbnNvbGlkYXRpb246YmVmb3JlIHtcblxuICAgICAgICBjb2xvcjogJGRyZWRnaW5nO1xuXG4gICAgfVxuXG4gICAgLmxlZ2VuZC0tZWxlbWVudHM6YmVmb3JlIHtcblxuICAgICAgICBjb2xvcjogJHRvd2FnZTtcblxuICAgIH1cblxuICAgIC8vIEJsb2NrcXVvdGVcblxuICAgIGJsb2NrcXVvdGUge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5X2xpZ2h0O1xuXG4gICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSB7XG5cbiAgICAgICAgYmxvY2txdW90ZSB7XG5cbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyBJbnRyb1xuXG4gICAgLnBhZ2UtY29udGVudC5wYWdlLWludHJvLFxuICAgIC5wYWdlLWludHJvLnBhZ2UtaW50cm8ge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5X2xpZ2h0O1xuXG4gICAgfVxuXG4gICAgLy8gU2xpZGVyXG5cbiAgICAuc2xpZGUgLmNhcHRpb24ge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9ncmF5X2xpZ2h0O1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5zbGljay1kb3RzIGxpIHtcblxuICAgICAgICBidXR0b246YmVmb3JlIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX3JlZF9saWdodDtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNsaWRlci0tZncgLnNsaWNrLXRyYWNrIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheV9kYXJrZXI7XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHtcblxuICAgICAgICAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCBsaS5hY3RpdmUgYSxcbiAgICAgICAgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkgYTpmb2N1cyxcbiAgICAgICAgLnNlY3Rpb24tLXNpZGUtY29udGVudC5zbGlkZXIgdWwgbGkgYTpob3ZlciB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9yZWQ7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAubGluay0tYm9yZGVyZWQsXG4gICAgLmxpc3QtLWljb24gYSxcbiAgICAuc2VjdGlvbi0tc2lkZS1jb250ZW50IC5jb250ZW50LS1wcmltYXJ5ID4gYSxcbiAgICAuc2VjdGlvbi0tc2lkZS1jb250ZW50LnNsaWRlciB1bCAuc2xpZGUtaXRlbSB7XG5cbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJsYWNrO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5zZWN0aW9uLS1zaWRlLWNvbnRlbnQgLmNvbnRlbnQtLXByaW1hcnkgPiBhIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheV9tZWRpdW07XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2ZyYV9yZWQ7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gQWNjb3JkaW9uXG5cbiAgICAuYWNjb3JkaW9uLWNudCB7XG5cbiAgICAgICAgYmFja2dyb3VuZDogJGNvZnJhX2dyYXlfbGlnaHQ7XG5cbiAgICAgICAgLnNsaWRlOmFmdGVyIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29mcmFfZ3JheV9kYXJrZXIsIDAuNyk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZS5hY3RpdmU6YWZ0ZXIge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyBMaXN0c1xuXG4gICAgLmxpc3QtLWxpbmtzIGE6Zm9jdXMsXG4gICAgLmxpc3QtLWxpbmtzIGE6aG92ZXIge1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2ZyYV9ncmF5O1xuXG4gICAgfVxuXG4gICAgYTpmb2N1cyxcbiAgICBhOmhvdmVyIHtcblxuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgfVxuXG4gICAgLy8gRW1lcmdlbmN5IGJveFxuXG4gICAgLmVtZXJnZW5jeS1ib3gge1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2ZyYV9yZWQ7XG5cbiAgICAgICAgLnRyaWdnZXIge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29mcmFfcmVkO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyBUYWJsZXMgLyBTdG9jayBDaGFydHNcblxuICAgIC5JUlRhYmxlLFxuICAgICNxdW90ZXRhYmxlLFxuICAgIC5JUlRhYmxlQ2FsY1Jlc19ob3Ige1xuXG4gICAgICAgIHRoIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZnJhX2dyYXlfbWVkaXVtO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vIENoYXJ0c1xuXG4gICAgLmNoYXJ0LS1waWUgLmlubmVyIHN0cm9uZyB7XG5cbiAgICAgICAgY29sb3I6ICRjb2ZyYV9yZWQ7XG5cbiAgICB9XG5cbiAgICAvLyBLZXkgRmlndXJlc1xuXG4gICAgLmJpZy1udW1iZXIgc3Ryb25nIHtcblxuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgfVxuXG4gICAgLy8gQ29udGFjdCBNYXBcblxuICAgIC5zZWN0aW9uLS1jb250YWN0LW1hcCAuYmxvY2stLWFkZHJlc3MgLmNvbnRlbnQ6bnRoLWNoaWxkKDMpIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfZ3JheV9tZWRpdW07XG5cbiAgICB9XG5cbiAgICAvLyBOZXcgQmxvY2tcblxuICAgIC5kaXNwbGF5LWZsZXggLmJsb2NrLS1saW5rcyAubGlzdC0tbGlua3Mge1xuXG4gICAgICAgIGxpOmZpcnN0LW9mLXR5cGUgYSB7XG5cbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29mcmFfZ3JheV9kYXJrO1xuXG4gICAgICAgIH1cblxuICAgICAgICBhIHtcblxuICAgICAgICAgICAgY29sb3I6ICRjb2ZyYV9yZWQ7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvZnJhX2dyYXlfZGFyaztcblxuICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvZnJhX3JlZDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIu+EjVwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC43Nzc3OGVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBJY29ucztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IC4xcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5uYXYgLnN1Ym5hdi1jbnQge1xuXG4gICAgICAgIC5idG4ge1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29mcmFfcmVkO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59IiwiLyogLS0tLVxuXHRHQVJETElORVxuLS0tLS0tLSAqL1xuXG4uZ2FyZGxpbmUge1xuXG4gICAgLmNvbC0tcXVhcnQud2lkZ2V0LmNvbC0tbGlua3Mge1xuICAgICAgICAubG9nb19pc28ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi5sYW5kaW5nIHtcblxuICAubWFpbi1uYXZpZ2F0aW9uIHtcblxuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuXG4gIH1cblxuICAubGFuZ3VhZ2Utc3dpdGNoIHtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMjlweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDZweDtcbiAgICB0b3A6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXB0b3ApIHtcblxuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgIH1cblxuICAgIGEge1xuXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIHNwYW4ge1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgfVxuXG4gIH1cblxufSIsIi8qIC0tLS1cblx0TkVERVJMQU5EXG4tLS0tLS0tICovXG5cbi5uZWRlcmxhbmQge1xuXG4gICAgLm1haW4tbmF2aWdhdGlvbiB7XG4gICAgICAgIC5zZWFyY2gtZm9ybSxcbiAgICAgICAgLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9ucy50eC1zb2xyLWF1dG9zdWdnZXN0IHtcblxuICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuXG4gICAgICAgIH1cbiAgICB9XG59Il19 */
