Received: from localhost ([::1]:58149 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.80.1) (envelope-from ) id 1VjzZE-0005rz-E9; Fri, 22 Nov 2013 14:51:16 -0800 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:54538 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.80.1) (envelope-from ) id 1VjzZ6-0005rr-Js for wikichanges@lojban.org; Fri, 22 Nov 2013 14:51:15 -0800 Received: by jukni.digitalkingdom.org (sSMTP sendmail emulation); Fri, 22 Nov 2013 14:51:08 -0800 From: "Apache" Date: Fri, 22 Nov 2013 14:51:08 -0800 To: wikichanges@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 4.5 (++++) X-Spam_score: 4.5 X-Spam_score_int: 45 X-Spam_bar: ++++ X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page wavelessonscontinuedp2 was changed by guskant at 22:50 UTC You can view the page by following this link: http://www.lojban.org/tiki/wavelessonscontinuedp2 [...] Content analysis details: (4.5 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: lojban.org] 1.6 RCVD_IN_BRBL_LASTEXT RBL: RCVD_IN_BRBL_LASTEXT [173.13.139.235 listed in bb.barracudacentral.org] 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS 2.5 DRUGS_MUSCLE Refers to a muscle relaxant Subject: [Wikichanges] Wiki page wavelessonscontinuedp2 changed by guskant X-BeenThere: wikichanges@lojban.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikichanges-bounces@lojban.org Content-Length: 116466 VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWRwMiB3YXMgY2hhbmdlZCBieSBndXNrYW50IGF0 IDIyOjUwIFVUQwoKWW91IGNhbiB2aWV3IHRoZSBwYWdlIGJ5IGZvbGxvd2luZyB0aGlzIGxpbms6 CiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rpa2kvd2F2ZWxlc3NvbnNjb250aW51ZWRwMgoKWW91 IGNhbiB2aWV3IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2lu ZyB0aGlzIGxpbms6IApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5 LnBocD9wYWdlPXdhdmVsZXNzb25zY29udGludWVkcDImY29tcGFyZT0xJm9sZHZlcj0zNCZuZXd2 ZXI9MzUKCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKgpUaGUgY2hhbmdlcyBpbiB0aGlzIHZlcnNpb24gZm9sbG93IGJlbG93LCBmb2xs b3dlZCBhZnRlciBieSB0aGUgY3VycmVudCBmdWxsIHBhZ2UgdGV4dC4KKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCgorLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwpAQCAtTGlu ZXM6IDEyOC0xMzIgY2hhbmdlZCB0byArTGluZXM6IDEyOC0xMzIgQEAKKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKKCJgdWxpYHVsaSIg aXMgYSBIYXdhaWlhbiBtdXNpY2FsIGluc3RydW1lbnQuKQoKLSBFeGFtcGxlIG9mIHNwb2tlbiB0 ZXh0OiAnJ2p1J2kgbGEnb2kganVnZW11anVnZW11Z29rb3Vub3N1cmlraXJla2FpamFyaXN1aWdp b25vLSBzdWlnaW91bWF0c3UsdW5yYWltYXRzdWZ1dXJhaW1hdHN1a3UsdW5lcnV0b2tvcm9uaXN1 bXV0b2tvcm8saWFidXJha291amlub2J1cmFrb3VqaS0gcGFpcG9wYWlwb3BhaXBvbm9zaXUsdXJp bmdhbnNpdSx1cmluZ2FuLG5vZ3UsdXJpbmRhaWd1LHVyaW5kYWlub3BvbnBva29waSxpbm9wb25w b2tvLSBuYSxhbm90Y291a2l1LHVtZWlub3Rjb3VzdWtlIG1pJ28ga28nb2kga2xhbWEgbG8gY2t1 bGUnJyAtLS0gRG9uJ3QgdGFrZSBhIGJyZWF0aGluZyBpbiB0aGUgbmFtZSwgb3IgaXQgd2lsbCBy ZXN1bHQgaW4gYW4gX19FcnJvcl9fLgorIEV4YW1wbGUgb2Ygc3Bva2VuIHRleHQ6ICcnanUnaSBs YSdvaSBqdWdlbXVqdWdlbXVnb2tvdW5vc3VyaWtpcmVrYWlqYXJpc3VpZ2lvbm8tIHN1aWdpb3Vt YXRzdSx1bnJhaW1hdHN1ZnV1cmFpbWF0c3VrdSx1bmVydXRva29yb25pc3VtdXRva29ybyxpYWJ1 cmFrb3VqaW5vYnVyYWtvdWppLSBwYWlwb3BhaXBvcGFpcG9ub3NpdSx1cmluZ2Fuc2l1LHVyaW5n YW4sbm9ndSx1cmluZGFpZ3UsdXJpbmRhaW5vcG9ucG9rb3BpLGlub3BvbnBva29uYSxhbm90Y291 a2l1LHVtZWlub3Rjb3VzdWtlIG1pJ28ga28nb2kga2xhbWEgbG8gY2t1bGUnJyAtLS0gRG9uJ3Qg dGFrZSBhIGJyZWF0aGluZyBpbiB0aGUgbmFtZSwgb3IgaXQgd2lsbCByZXN1bHQgaW4gYW4gX19F cnJvcl9fLgooIuOBmOOCheOBkuOCgOOBmOOCheOBkuOCgOOBlOOBk+OBhuOBruOBmeOCiuOBjeOC jOOBi+OBhOOBmOOCg+OCiuOBmeOBhOOBjuOCh+OBruOBmeOBhOOBjuOCh+OBhuOBvuOBpOOBhuOC k+OCieOBhOOBvuOBpOOBteOBhuOCieOBhOOBvuOBpOOBj+OBhuOBreOCi+OBqOOBk+OCjeOBq+OB meOCgOOBqOOBk+OCjeOChOOBtuOCieOBk+OBhuOBmOOBruOBtuOCieOBk+OBhuOBmOOBseOBhOOB veOBseOBhOOBveOBseOBhOOBveOBruOBl+OCheODvOOCiuOCk+OBjOOCk+OBl+OCheODvOOCiuOC k+OBjOOCk+OBruOBkOODvOOCiuOCk+OBoOOBhOOBkOODvOOCiuOCk+OBoOOBhOOBruOBveOCk+OB veOBk+OBtOODvOOBruOBveOCk+OBveOBk+OBquODvOOBruOBoeOCh+OBhuOBjeOCheOBhuOCgeOB hOOBruOBoeOCh+OBhuOBmeOBkSIgaXMgYSBmYW1vdXMgSmFwYW5lc2UgbmFtZSBvZiBhIGJveS4p CgoKCgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioKVGhlIG5ldyBwYWdlIGNvbnRlbnQgZm9sbG93cyBiZWxvdy4KKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCiFMb2piYW4g V2F2ZSBMZXNzb25zIENvbnRpbnVlZCAocGFydCB0d28pOgoKISEhTWFkZSBieSBsYSBrbGFrdSB3 aXRoIGhlbHAgZnJvbSB2YXJpb3VzIGxvamJhbmlzdHMuIEJhc2VkIG9uIHRoZSB3b3JrIG9mIGxh IC5rcmliYWNyLiBTcHJpbmcgMjAxMy4KCgoKVGhpcyBpcyB0aGUgc2Vjb25kIGluc3RhbGxtZW50 IG9mIHRoZSBXYXZlIExlc3NvbnMgQ29udGludWVkLiBJZiB5b3UgZGlkbid0IGNhdGNoIHRoZSBm aXJzdCBwYXJ0LCBvciB3YW50IHRvIGdvIGJhY2sgZm9yIHNvbWUgcmVhc29uLCBqdXN0IGNsaWNr ICgod2F2ZWxlc3NvbnNjb250aW51ZWR8b24gdGhlc2UgZm91ciB3b3Jkcy4pKS4gWW91IGNhbiBh bHNvIGdvIHRvIHRoZSB0aGlyZCBwYXJ0IGJ5IGNsaWNraW5nICgod2F2ZWxlc3NvbnNjb250aW51 ZWRwMnx0aGlzIGxpbmspKSwgaWYgeW91IGZlZWwgbGlrZSBkb2luZyB0aGF0LgoKCgohIUxvamJh biBMZXNzb25zIC0gTGVzc29uIHNldmVudGVlbiAoY3V0ZSBhc3NvcnRlZCB3b3JkcykKCkFuZCB3 aXRoIHRoYXQsIHRoaXJkIGNoYXB0ZXIsIHlvdSBrbm93IGEgbG90IGFib3V0IExvamJhbiBzdW10 aS4gQWZ0ZXIgc3VjaCBhIGxvbmcgdGltZSBvZiByaWdvcm91cyBzeXN0ZW1hdGljIGxlYXJuaW5n LCB3aGF0IGNvdWxkIGJlIG1vcmUgZml0dGluZyB0aGF0IHRoaXMgbGVzc29uIHdoZXJlIEkgc3Bl YWsgYWJvdXQgc29tZSB3b3JkcyB3aGljaCBJIGNvdWxkIG5vdCwgb3Igd2FudGVkIG5vdCB0byBm aXQgaW50byBhbnkgb3RoZXIgbGVzc29ucz8gU28gaGVyZSBhcmUgYSBmZXcgc21hbGwgYW5kIHJl YWxseSB1c2VmdWwgd29yZHM6CgoKClRoZSBmb2xsb3dpbmcgY21hdm8gYXJlIGFsbCBlbGxpcHRp Y2FsIHdvcmRzLiBZb3Ugc2hvdWxkIGFscmVhZHkgYmUgZmFtaWxpYXIgd2l0aCB0aGUgZmlyc3Qu CgpfXycnem8nZScnX18gLSBlbGxpcHRpY2FsIHN1bXRpCgpfXycnY28nZScnX18gLSBlbGxpcHRp Y2FsIHNlbGJyaQoKX18nJ2RvJ2UnJ19fIC0gZWxsaXB0aWNhbCBzdW10Y2l0YQoKX18nJ2p1J2En J19fIC0gZWxsaXB0aWNhbCBldmlkZW50aWFsCgpfXycnZG8naScnX18gLSBlbGxpcHRpY2FsIHV0 dGVyYW5jZSB2YXJpYWJsZQoKX18nJ2dlJ2UnJ19fIC0gZWxsaXB0aWNhbCBhdHRpdHVkaW5hbAoK CgpBbGwgb2YgdGhlc2UgYWN0IGdyYW1tYXRpY2FsbHkgYXMgYSBjbWF2byBvZiB0aGUga2luZCB0 aGV5IHJlcHJlc2VudCwgYnV0IHRoZXkgY29udGFpbiBubyBpbmZvcm1hdGlvbiwgYW5kIGNhbiBi ZSBxdWl0ZSBoYW5keSB3aGVuIHlvdSdyZSBsYXp5IGFuZCBkb24ndCBuZWVkIHRvIGJlIHNwZWNp ZmljIGFueXdheS4gVGhlcmUgYXJlLCBob3dldmVyLCBhIGZldyB0aGluZ3Mgd2hpY2ggbmVlZCB0 byBiZSBjbGVhcmVkIHVwOgoKCgogICAgJyd6bydlJycgaGF2ZSB0byByZWZlciB0byBzb21ldGhp bmcgd2hpY2ggaXMgY2xhaW1lZCB0byBoYXZlIGEgdmFsdWUuIOKAnHplcm8gY2Fyc+KAnSBvciDi gJxub3RoaW5n4oCdLCBmb3IgaW5zdGFuY2UsIGhhcyBubyB2YWx1ZSwgYW5kIHRoZXJlZm9yZSBj YW5ub3QgYmUgcmVmZXJyZWQgdG8gYnkgJyd6bydlJycuIFRoaXMgaXMgYmVjYXVzZSwgaWYgaXQg Y291bGQgbWVhbiDigJxub3RoaW5n4oCdIGJ5ICcnem8nZScnLCB0aGVuIGFueSBzZWxicmkgY291 bGQgYmUgaWRlbnRpY2FsIHRvIGl0cyBuZWdhdGlvbiwgaWYgb25lIG9mIHRoZSBlbGlkZWQgc3Vt dGkgd2VyZSBmaWxsZWQgd2l0aCBhICcnem8nZScnIHdpdGggbm8gdmFsdWUuCgogICAgJydnZSdl JycgZG9lcyBub3QgbWVhbiB0aGF0IHlvdSBmZWVsIG5vIGVtb3Rpb24sIGp1c3QgdGhhdCB5b3Ug ZmVlbCBub3RoaW5nIHNwZWNpYWwgb3Igd29ydGggdG8gbWVudGlvbiBhdCB0aGUgbW9tZW50LiBJ dCdzIHNpbWlsYXIgdG8g4oCcSSdtIGZpbmUu4oCdLiAnJ2dlJ2UgcGVpJycgYXNrIGFib3V0IGFu IGVsbGlwdGljYWwgZW1vdGlvbiBhbmQgaXMgYSBnb29kIHRyYW5zbGF0aW9uIGZvcjog4oCcSG93 IGFyZSB5b3UgZmVlbGluZz/igJ0uCgogICAgJydjbydlJycgaXMgaGFuZHkgd2hlbiBuZWVkaW5n IGEgc2VsYnJpIGluIGEgY29uc3RydWN0IGZvciBncmFtbWF0aWNhbCByZWFzb25zLCBsaWtlIGlu IHRoZSBkZWZpbml0aW9uIG9mICcndHUnYScnIGluIHRoZSBwcmV2aW91cyBsZXNzb24uCgogICAg JydqdSdhJycgZG9lcyBub3QgY2hhbmdlIHRoZSB0cnV0aCB2YWx1ZSBvciBzdWJqZWN0aXZlIHVu ZGVyc3RhbmRpbmcgb2YgdGhlIGJyaWRpIG9yIGFueXRoaW5nIGxpa2UgdGhhdC4gSW4gZmFjdCwg aXQncyBtb3N0bHkgZG9lcyBub3RoaW5nLiBIb3dldmVyLCAnJ2p1J2EgcGVpJycsIOKAnFdoYXQg aXMgeW91ciBiYXNpcyBmb3Igc2F5aW5nIHRoYXQ/4oCdIGlzIGhhbmR5LgoKICAgICcnZG8naScn IGlzIHJlYWxseSB1c2VmdWwuIEEgbG90IG9mIHRpbWVzIHdoZW4geW91IHJlZmVyIHRvIHV0dGVy YW5jZXMgb3IgY29udmVyc2F0aW9ucyBieSB3b3JkcyBsaWtlIOKAnHRoaXPigJ0gb3Ig4oCcdGhh dOKAnSwgeW91IHdhbnQgJydkbydpJycuCgogICAgSWYgeW91IGZpbGwgaW4gbW9yZSBzdW10aSB0 aGFuIGEgc2VsYnJpIGhhcyBwbGFjZXMgZm9yLCB0aGUgbGFzdCBzdW10aSBoYXZlIGltcGxpZWQg JydkbydlJycgc3VtdGNpdGEgaW4gZnJvbnQgb2YgdGhlbS4KCgoKRnVydGhlcm1vcmUsIHRoZXJl IGlzIGEgd29yZCwgJyd6aSdvJycsIHRoYXQgeW91IGNhbiBmaWxsIGEgc3VtdGkgcGxhY2Ugd2l0 aCB0byBkZWxldGUgaXQgZnJvbSBhbnkgc2VsYnJpLiAnJ2xvIG1lbGJpIGJlIHppJ28nJywgZm9y IGluc3RhbmNlLCBpcyBqdXN0IOKAnFNvbWV0aGluZyBiZWF1dGlmdWzigJ0sIGFuZCBkb2VzIG5v dCBpbmNsdWRlIHRoZSB1c3VhbCB4MiBvZiAnJ21lbGJpJycsIHdoaWNoIGlzIHRoZSBvYnNlcnZl ciB3aG8ganVkZ2VzIHNvbWV0aGluZyB0byBiZSBiZWF1dGlmdWwuIFRodXMsIGl0IGNhbiBtZWFu IHNvbWV0aGluZyBsaWtlIOKAnE9iamVjdGl2ZWx5IGJlYXV0aWZ1bC7igJ0gSXQgZG9lcyBub3Qg c3RhdGUgdGhhdCBub3RoaW5nIGZpbGxzIHRoZSBzdW10aSBwbGFjZSB3aGljaCBpcyBiZWluZyBk ZWxldGVkLCBqdXN0IHRoYXQgdGhlIHN1bXRpIHBsYWNlIGlzIG5vdCBiZWluZyBjb25zaWRlcmVk IGluIHRoZSBzZWxicmkuIFVzaW5nICcnemknbycnIHdpdGggYSBzdW10Y2l0YSBnaXZlcyB3ZWly ZCByZXN1bHRzLiBGb3JtYWxseSwgdGhleSBzaG91bGQgY2FuY2VsIGVhY2ggb3RoZXIgb3V0LiBQ cmFjdGljYWxseSwgaXQgd291bGQgcHJvYmFibHkgYmUgdW5kZXJzdG9vZCBhcyBhbiBleHBsaWNp dCB3YXkgb2Ygc2F5aW5nIHRoYXQgdGhlIHN1bXRjaXRhIGRvZXMgbm90IGFwcGx5LCBhcyBpbjog JydtaSBkYXJ4aSBkbyBtdSdpIHppJ28nJyAtIOKAnEkgaGl0IHlvdSwgd2l0aCBvciB3aXRob3V0 IG1vdGl2YXRpb24u4oCdCgoKClRoZW4gdGhlcmUgaXMgdGhlIHdvcmQgJydqYWknJy4gSXQncyBv bmUgb2YgdGhvc2UgY29vbCwgc21hbGwgd29yZHMgd2hpY2ggYXJlIGhhcmQgdG8gZ3Jhc3AsIGJ1 dCBlYXN5IHRvIHdvcmsgd2l0aCBvbmNlIHlvdSBrbm93IGl0LiBJdCBoYXMgdHdvIGRpc3RpbmN0 LCBidXQgc2ltaWxhciBmdW5jdGlvbnMuIEJvdGggaGF2ZSBzb21ldGhpbmcgdG8gZG8gd2l0aCBj b252ZXJ0aW5nIHRoZSBzZWxicmksIGxpa2UgJydzZScnIGRvZXMuCgpfXycnamFpJydfXyBTZWxi cmkgY29udmVyc2lvbjogQ29udmVydHMgc3VtdGNpdGEgb3IgdW5zcGVjaWZpZWQgYWJzdHJhY3Rp b24gdG8geDEuIFVzZSB3aXRoICcnZmFpJycKCl9fJydmYWknJ19fIE1hcmtzIHN1bXRpIHBsYWNl LiBXb3JrcyBsaWtlICcnZmEnJy4gVG8gYmUgdXNlZCB3aXRoICcnamFpJycuCgpUaGUgZmlyc3Qg Z3JhbW1hdGljYWwgY29uc3RydWN0aW9uIGl0IGNhbiBtYWtlIGlzICInJ2phaScnIHtzdW10Y2l0 YX0ge3NlbGJyaX0iLiBJdCBjaGFuZ2VzIHRoZSBzdW10aSBwbGFjZXMgc3VjaCB0aGF0IHRoZSBz dW10aSBwbGFjZSBvZiB0aGUgc3VtdGNpdGEgYmVjb21lcyB0aGUgc2VsYnJpJ3MgeDEsIGFuZCB0 aGUgc2VsYnJpJ3Mgb2xkIHgxIGlzIHJlbW92ZWQsIGFuZCBvbmx5IGFjY2Vzc2libGUgYnkgdXNp bmcgJydmYWknJywgd2hpY2ggd29ya3MgbGlrZSAnJ2ZhJycuIFlvdSBjYW4gc2VlIGl0IHdpdGgg dGhpcyBleGFtcGxlOgoKX18nJ2dhdScnX18gLSBzdW10Y2l0YSAoZnJvbSAnJ2dhc251JycpIOKA nGJyaWRpIGhhcyBiZWVuIGJyb3VnaHQgYWJvdXQgYnkvd2l0aCBhY3RpdmUgYWdlbnQge3N1bXRp feKAnQoKJydkbyBqYWkgZ2F1IGp1bmRpIHRpIGZhaSBtaScnLiAtIOKAnFlvdSBicmluZyBhYm91 dCBhdHRlbnRpb24gdG8gdGhpcyBieSBtZeKAnS4gVGhlIG5ldyBzZWxicmksICcnamFpIGdhdSBq dW5kaScnLCBoYXMgdGhlIHBsYWNlIHN0cnVjdHVyZSBvZiDigJx4MSBicmluZ3MgYWJvdXQgYXR0 ZW50aW9uIHBhaWQgdG8geDLigJ0uIFRoZXNlIGFyZSB0aGVuIGZpbGxlZCBieSAnJ2RvJycgYW5k ICcndGknJy4gVGhlICcnZmFpJycgdGhlbiBtYXJrcyB0aGUgcGxhY2UgZm9yIHRoZSBvbGQgeDEs IHRoZSBvbmUgd2hvIHdhcyBwYXlpbmcgYXR0ZW50aW9uLCBhbmQgaXQgaXMgZmlsbGVkIHdpdGgg JydtaScnLiBUaGlzIHdvcmQgY2FuIGJlIHZlcnkgY29udmVuaWVudCBhbmQgaGFzIHRvbnMgb2Yg dXNlcy4gQSBnb29kIGV4YW1wbGUgaXMgZGVzY3JpcHRpdmUtbGlrZSBzdW10aS4gT25lIGNhbiwg Zm9yIGluc3RhbmNlLCByZWZlciB0byDigJx0aGUgbWV0aG9kIG9mIHZvbGl0aW9uYWwgYWN0aW9u 4oCdIGJ5ICcnbG8gamFpIHRhJ2kgenVrdGUnJy4KCl9fJyd0YSdpJydfXzogc3VtdGNpdGEgKGZy b20gJyd0YWRqaScnKSDigJxCcmlkaSBpcyBkb25lIHdpdGggdGhlIG1ldGhvZCBvZiB7c3VtdGl9 4oCdCgpDYW4geW91IGRlZHVjZSB3aGF0IHRoZSBvcmRpbmFyeSBMb2piYW4gcGhyYXNlICcnZG8g amFpIGdhdSBtbycnIG1lYW5zPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFdoYXQgYXJlIHlv dSBkb2luZz/igJ1+fgoKCgpUaGUgb3RoZXIgZnVuY3Rpb24gb2YgJydqYWknJyBpcyBlYXNpZXIg dG8gZXhwbGFpbi4gSXQgc2ltcGx5IGNvbnZlcnRzIHRoZSBzZWxicmkgc3VjaCB0aGF0IHRoZSBz dW10aSBpbiB0aGUgeDEgZ2V0cyBhICcndHUnYScnIGluIGZyb250IG9mIGl0ICgnJ2tvJ2EgamFp IGJyb2RhJycgX189X18gJyd0dSdhIGtvJ2EgYnJvZGEnJykuIEluIG90aGVyIHdvcmRzLCBpdCBj b252ZXJ0cyB0aGUgc2VsYnJpIGluIGEgd2F5IHN1Y2ggdGhhdCBpdCBidWlsZHMgYW4gZWxsaXB0 aWNhbCBhYnN0cmFjdGlvbiBmcm9tIHRoZSBzdW10aSBpbiB0aGUgeDEsIGFuZCB0aGVuIGZpbGxz IHgxIHdpdGggdGhlIGFic3RyYWN0aW9uIGluc3RlYWQgb2YgdGhlIGFjdHVhbCBzdW10aS4gQWdh aW4sIHRoZSBvcmlnaW5hbCBzdW10aSBwbGFjZSBpcyBhY2Nlc3NpYmxlIGJ5ICcnZmFpJycuCgpB IHZlcnkgYWN0aXZlIExvamJhbiBJUkMtdXNlciBvZnRlbiBzYXlzICcnbGUgZ2Vya3UgcGUgZG8g amFpIHNlIHN0aWRpIG1pJycsIHRvIHVzZSBhIHJhbmRvbSBleGFtcGxlIG9mIGEgc3VtdGkgaW4g eDEuIFdoYXQncyBoZSBzYXk/CgpfXycnc3RpZGknJ19fIHgxIGluc3BpcmVzL3N1Z2dlc3RzIHgy IGluL3RvIHgz4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcSSBzdWdnZXN0IChzb21ldGhp bmcgYWJvdXQpIHlvdXIgZG9nLuKAnX5+CgoKClNvIGZhciB5b3UndmUgbGVhcm5lZCBob3cgdG8g Y29udmVydCBicmlkaSB0byBzZWxicmksIHNlbGJyaSB0byBzdW10aSwgYW5kIHNlbGJyaSBpbnRv IGJyaWRpLCBzaW5jZSBhbGwgc2VsYnJpIGJ5IHRoZW1zZWx2ZXMgYXJlIGFsc28gYnJpZGkuIFlv dSBvbmx5IG5lZWQgb25lIGxhc3QgZnVuY3Rpb246IGNvbnZlcnQgc3VtdGkgdG8gc2VsYnJpLiBU aGlzIGlzIGRvbmUgd2l0aCB0aGUgd29yZCAnJ21lJycuIEl0IGFjY2VwdHMgYSBzdW10aSBhbmQg Y29udmVydHMgaXQgaW50byBhIHNlbGJyaS4KCl9fJydtZScnX186IEdlbmVyaWMgY29udmVydCBz dW10aSB0byBzZWxicmkuIHgxIGlzL2FyZSBhbW9uZyB0aGUgcmVmZXJlbnRzIG9mIFNVTVRJCgoK CldoZW4gc2NyZXdpbmcgYSBzZW50ZW5jZSB1cCwga25vd2luZyBob3cgdG8gY29ycmVjdCB5b3Vy c2VsZiBpcyBhIGdvb2QgaWRlYS4gVGhlcmUgYXJlIHRocmVlIHdvcmRzIGluIExvamJhbiB3aGlj aCB5b3UgY2FuIHVzZSB0byBkZWxldGUgeW91ciBwcmV2aW91cyB3b3JkKHMpCgpfXycnc2knJ19f IC0gZGVsZXRpb246IERlbGV0ZXMgbGFzdCB3b3JkIG9ubHkuCgpfXycnc2EnJ19fIC0gZGVsZXRp b246IERlbGV0ZXMgYmFjayB1bnRpbCBuZXh0IGNtYXZvIHNwb2tlbi4KCl9fJydzdScnX18gLSBk ZWxldGlvbjogRGVsZXRlcyBlbnRpcmUgZGlzY291cnNlLgoKVGhlIGZ1bmN0aW9uIG9mIHRoZXNl IHdvcmRzIGFyZSBvYnZpb3VzOiBUaGV5IGRlbGV0ZSB3b3JkcyBhcyBpZiB0aGV5IGhhdmUgbmV2 ZXIgYmVlbiBzcG9rZW4uIFRoZXkgZG8gbm90IHdvcmsgaW5zaWRlIGNlcnRhaW4gcXVvdGVzIChh bGwgcXVvdGVzIGV4Y2VwdCAnJ2x1Li5saSd1JycpLCB0aG91Z2gsIGFzIHRoYXQgd291bGQgbGVh dmUgaXQgaW1wb3NzaWJsZSB0byBxdW90ZSB0aGVzZSB3b3Jkcy4gU2V2ZXJhbCAnJ3NpJycgaW4g YSByb3cgZGVsZXRlcyBzZXZlcmFsIHdvcmRzLgoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNz b24gZWlnaHRlZW4gKHF1b3RlcykKCk9uZSBvZiB0aGUga2V5IGRlc2lnbiBmZWF0dXJlcyBvZiBM b2piYW4gaXMgdGhhdCBpdCdzIHN1cHBvc2VkIHRvIGJlIGF1ZGlvLXZpc3VhbCBpc29tb3JwaGlj LCBtZWFuaW5nIHRoYXQgZXZlcnl0aGluZyBleHByZXNzZWQgaW4gdGV4dCBzaG91bGQgYWxzbyBi ZSBleHByZXNzZWQgaW4gc3BlZWNoIGFuZCB2aWNlIHZlcnNhLiBUaGVyZWZvcmUsIHRoZXJlIGNh bm5vdCBiZSBhbnkgcHVuY3R1YXRpb24gd2hpY2ggaXMgbm90IHByb25vdW5jZWQuIFRoaXMgbWVh bnMgdGhhdCBMb2piYW4gaGFzIGEgd2lkZSByYW5nZSBvZiB3b3JkcyB0byBxdW90ZSBvdGhlciB3 b3Jkcy4gQWxsIExvamJhbiBxdW90ZXMgdGFrZSBzb21lIGlucHV0IG9mIHRleHQgYW5kIGNvbnZl cnRzIGl0IHRvIGEgc3VtdGkuIExldCdzIGJlZ2luIHdpdGggdGhlIG1vc3Qgc2ltcGxlOgoKCgpf XycnbHUnJ19fIFF1b3RlIHdvcmQ6IEJlZ2luIHF1b3RlIG9mIGdyYW1tYXRpY2FsIExvamJhbiBj b250ZW50CgpfXycnbGkndScnX18gUXVvdGUgd29yZDogRW5kIHF1b3RlIG9mIGdyYW1tYXRpY2Fs IExvamJhbiBjb250ZW50CgoKClRoZSB0ZXh0IGluc2lkZSB0aGlzIGNvbnN0cnVjdCBtdXN0IGJ5 IGl0c2VsZiBiZSBncmFtbWF0aWNhbC4gSXQgY2FuIHF1b3RlIGFsbCBMb2piYW4gd29yZHMgd2l0 aCBzb21lIGZldyBleGNlcHRpb25zLCBtb3N0IG5vdGFibHksIG9idmlvdXNseSwgJydsaSd1Jycu CgoKClRyeSB0byB0cmFuc2xhdGUgdGhlIGZvbGxvd2luZyBzZW50ZW5jZS4gVGFrZSB5b3VyIHRp bWUuCgonJ21pIHN0aWRpIGxvIGRyYXRhIGJlIHR1J2EgbHUga28gamFpIGdhdSBtbyBsaSd1JycK Cl9fJydkcmF0YScnX18geDEgaXMgZGlmZmVyZW50IGZyb20geDIgYnkgc3RhbmRhcmQKCgoKQW5z d2VyOiB+fmdyZXksZ3JleTrigJxJIHN1Z2dlc3Qgc29tZXRoaW5nIGRpZmZlcmVudCB0aGFuIHNv bWV0aGluZyBhYm91dCDigJxrbyBqYWkgZ2F1IG1v4oCdLuKAnX5+CgoKClRoZXNlIHF1b3RlIHdv cmRzIGNhbm5vdCBxdW90ZSB1bmdyYW1tYXRpY2FsIHRleHQuIFRoaXMgaXMgc29tZXRpbWVzIHVz ZWZ1bCwgd2hlbiB5b3Ugd2FudCB0byBvbmx5IHBpY2sgb3V0IHBhcnQgb2YgYSBzZW50ZW5jZSwg YXMgaW46IOKAnCBpcyDigJxnaSdl4oCdIGEgTG9qYmFuIHN1bXRjaXRhP+KAnQoKCgpGb3IgdGhp cywgeW91IG5lZWQgdGhlc2UgdHdvIGNtYXZvCgpfXycnbG8ndScnX18gUXVvdGUgd29yZDogQmVn aW4gcXVvdGUgb2YgdW5ncmFtbWF0aWNhbCBidXQgTG9qYmFuIGNvbnRlbnQKCl9fJydsZSd1Jydf XyBRdW90ZSB3b3JkOiBFbmQgcXVvdGUgb2YgdW5ncmFtbWF0aWNhbCBidXQgTG9qYmFuIGNvbnRl bnQKCgoKVGhlIHRleHQgaW5zaWRlIG11c3QgYmUgTG9qYmFuIHdvcmRzLCBidXQgbmVlZCBub3Qg YmUgZ3JhbW1hdGljYWwuIFRyeSB0byB0cmFuc2xhdGUgdGhlIGFib3ZlIGV4YW1wbGUgKHRoZSBv bmUgd2l0aCAnJ2dpJ2UnJykgaW50byBMb2piYW4KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ3h1 IGxvJ3UgZ2knZSBsZSd1IGxvamJvIHN1bXRjaXRhJyd+fgoKCgpUaGlzIHF1b3RlIGNhbiBiZSB1 c2VkIHRvIHF1b3RlIGFsbCBMb2piYW4gd29yZHMgZXhjZXB0ICcnbGUndScnLiBIb3dldmVyLCB0 aGlzIGlzIG5vdCBlbm91Z2guIElmIHdlIHdhbnQgdG8gdHJhbnNsYXRlIOKAnGlzIOKAnWRvIG1v 4oCdIGEgY29ycmVjdCB0cmFuc2xhdGlvbiBvZiDigJxXaGF0J3MgdXA/4oCd4oCdLCB3ZSBtaWdo dCBiZSBzbGlnaHRseSB3cm9uZyBhYm91dCB3aGF0IHdlIGhlcmUgc3RhdGUsIHNpbmNlICcnZG8g bW8nJyBhbHNvIGNhbiBtZWFuIOKAnFdoYXQgYXJlIHlvdT/igJ0sIGJ1dCBsZXQncyByb2xsIHdp dGggaXQgZm9yIGEgc2Vjb25kLiBXaGF0IHdlIG5lZWQgaGVyZSBpcyB0aGUgd29yZCAnJ3pvaScn LgoKCgonJ3pvaScnIE5leHQgY21hdm8gaXMgYmVnaW4gYWxsLXB1cnBvc2UgcXVvdGUgYW5kIGNs b3NlIGFsbC1wdXJwb3NlIHF1b3RlLgoKCgpXaGVuIHVzaW5nICcnem9pJycsIHlvdSBwaWNrIGFu eSBtb3JwaG9sb2dpY2FsbHkgY29ycmVjdCBsb2piYW4gd29yZCBhdCB3aWxsIChjYWxsZWQgdGhl IGRlbGltaXRlciksIHdoaWNoIHRoZW4gb3BlbnMgYSBxdW90ZS4gVG8gY2xvc2UgaXQsIHVzZSB0 aGF0IHdvcmQgYWdhaW4uIFRoaXMgd2F5LCB5b3UgY2FuIHF1b3RlIGFueXRoaW5nIGV4Y2VwdCB0 aGUgZGVsaW1pdGVyLCB3aGljaCBzaG91bGRuJ3QgYmUgYSBwcm9ibGVtIGJlY2F1c2UgeW91IGNh biBwaWNrIGl0IHlvdXJzZWxmLiBVc3VhbGx5LCB0aGUgd29yZCBwaWNrZWQgaXMgZWl0aGVyICcn em9pJycgaXRzZWxmLCBvciBhIGxldHRlciB3aGljaCBzdGFuZHMgZm9yIHRoZSBsYW5ndWFnZSB3 aGljaCB0aGUgcXVvdGUgaXMgd3JpdHRlbiBpbi4gRXhhbXBsZTog4oCcSSBsaWtlZCBUaGUgUGhh bnRvbSBvZiB0aGUgT3BlcmHigJ0gaXMgJydtaSBwdSBuZWxjaSBsYSdlIHpvaSB6b2kuIFRoZSBQ aGFudG9tIG9mIHRoZSBPcGVyYSAuem9pJycgTm90aWNlIHR3byB0aGluZ3M6IEZpcnN0bHksIEkg bmVlZCBhICcnbGEnZScnLCBzaW5jZSBJIGRpZG4ndCBsaWtlIHRoZSBxdW90ZSwgYnV0IHJhdGhl ciB3aGF0IGl0IHJlZmVycmVkIHRvLiBTZWNvbmRseSwgYmV0d2VlbiB0aGUgY2hvc2VuIGRlbGlt aXRlciBhbmQgdGhlIHF1b3RlLCB0aGVyZSBhcmUgcGF1c2VzLCBvcHRpb25hbGx5IHJlcHJlc2Vu dGVkIGJ5IGEgZnVsbCBzdG9wIGluIHdyaXRpbmcuIFRoaXMgcGF1c2UgaXMgbmVjZXNzYXJ5IHRv IGNvcnJlY3RseSBpZGVudGlmeSB0aGUgZGVsaW1pdGVyLgoKCgpUcnkgdG8gdHJhbnNsYXRlIHRo ZSBhYm92ZSBzZW50ZW5jZSBjb25jZXJuaW5nIOKAnFdoYXQncyB1cD/igJ0KCgoKX18nJ2RyYW5p JydfXyB4MSBpcyBjb3JyZWN0L3Byb3BlciBpbiBhc3BlY3QgeDIgaW4gc2l0dWF0aW9uIHgzIGJ5 IHN0YW5kYXJkIHg0CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd4dSBsdSBkbyBtbyBsaSd1IGRy YW5pIHhlIGZhbnZhIHpvaSBneS4gV2hhdCdzIHVwPyAuZ3knJy4gSGVyZSB0aGUgZGVsaW1pdGVy ICcnZ3knJyBpcyBjaG9zZW4gYmVjYXVzZSBpdCdzIHNob3J0IGZvciAnJ2dsaWNvJycsIG1lYW5p bmcgIkVuZ2xpc2gifn4KCgoKQ2xvc2VseSBhbmFsb2dvdXNseSwgdGhlcmUgaXMgJydsYSdvJycu IEl0IHdvcmtzIGV4YWN0bHkgbGlrZSAnJ3pvaScnLCBidXQgdHVybnMgdGhlIHJlc3VsdGluZyBx dW90ZSBpbnRvIGEgbmFtZS4gSXQgaXMgbmVlZGVkIGJlY2F1c2Ugbm9ybWFsbHksIG9ubHkgc2Vs YnJpIGFuZCBjbWV2bGEgY2FuIGJlIG5hbWVzLCBub3QgcXVvdGVzLgoKX18nJ2xhJ28nJ19fIE5l eHQgY21hdm8gaXMgYmVnaW4gYWxsLXB1cnBvc2UgcXVvdGUgYW5kIGNsb3NlIGFsbC1wdXJwb3Nl IHF1b3RlIOKAkyB1c2UgYXMgbmFtZS4KCgoKTGFzdCBvZiB0aGUgb2ZmaWNpYWwgcXVvdGUgd29y ZHMsIHRoZXJlIGlzICcnem8nJy4gJyd6bycnIGFsd2F5cyBxdW90ZXMgdGhlIG5leHQgTG9qYmFu IHdvcmQsIG5vIG1hdHRlciB3aGF0IGl0IGlzLiBJdCdzIHByZXR0eSBoYW5keS4KCicnem8nJyBR dW90ZSBuZXh0IExvamJhbiB3b3JkLCBubyBtYXR0ZXIgd2hhdC4KCkV4YW1wbGU6ICcnem8gem8g em8nbyBwbGl4YXUnJyA9IOKAnCDigJx6b+KAnSBpcyB1c2VmdWwsIGhlaGXigJ0KCl9fJyd6bydv JydfXyBhdHRpdHVkaW5hbDogZGlzY3Vyc2l2ZTogSHVtb3JvdXNseSwg4oCca2lkZGluZyB5b3Xi gJ0KCl9fJydwbGl4YXUnJ19fIHgxIGlzIHVzZWZ1bCBmb3IgeDIgdG8gZG8gcHVycG9zZSB4MwoK CgpTb21lIExvamJhbiB1c2VycyBoYXZlIGZvdW5kIGl0IHVzZWZ1bCB0byBzdXBwbGVtZW50IHdp dGggZm91ciBhZGRpdGlvbmFsIHF1b3RlIHdvcmRzLiBUaGV5IGFyZSBhbGwgZXhwZXJpbWVudGFs LCBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBmb3JtYWwgZ3JhbW1hciwgYW5kIHdoYXQgaXMgd29yc2Us IFtodHRwczovL2dyb3Vwcy5nb29nbGUuY29tL2QvdG9waWMvbG9qYmFuL0ZZMm00a3FKX3RnL2Rp c2N1c3Npb258bXVjaCBwcm9ibGVtYXRpYyBpbiBwYXJzaW5nIHdpdGggYW4gZXhwZXJpbWVudGFs IGdyYW1tYXJdLiBOb25ldGhlbGVzcywgdGhleSBhcmUgdXNlZCBvZnRlbiwgYW5kIGl0J3MgZ29v ZCB0byBiZSBhYmxlIHRvIHJlY29nbml6ZSB0aGVtLiBUaGUgbW9zdCB1c2VkIGlzOgoKCgpfXycn em8nb2knJ19fIFF1b3RlIG5leHQgd29yZCBvbmx5LiBOZXh0IHdvcmQgaXMgaWRlbnRpZmllZCBi eSBwYXVzZXMgaW4gc3BlZWNoIG9yIHdoaXRlc3BhY2UvZG90IGluIHdyaXRpbmc6CgoKCkV4YW1w bGU6ICcncmkgcHUgY3Vza3Ugem8nb2kgRG9oISAudSdpJycg4oCcSGEgaGEsIGhlIHNhaWQg4oCc RG9oIeKAnSDigJwKCgoKSXQgaXMgYXBwYXJlbnRseSB2ZXJ5IGVhc3kgdG8gdXNlLCBidXQgYXMg YSBtYXR0ZXIgb2YgZmFjdCwgZ2VuZXJhbCB1c2Ugb2YgdGhlbSBpcyB2ZXJ5IHByb2JsZW1hdGlj LiBVc2VycyBzaG91bGQgYmUgYXdhcmUgdGhhdCB0aGUgd29yZCBmb2xsb3dpbmcgJyd6bydvaScn IHNob3VsZCBub3QgaW5jbHVkZSBhIHBlcmlvZCwgYSBnbG90dGFsIHN0b3Agb3IgYSBwYXVzZS4g Rm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgc2VudGVuY2VzIGFyZSBub3QgcGFyc2VkIGV2ZW4g d2l0aCBhbiBleHBlcmltZW50YWwgZ3JhbW1hciEKCgoKRXhhbXBsZSBvZiB3cml0dGVuIHRleHQ6 ICcna28gaWtsa2kgc2VkaSdvIHpvJ29pIGh0dHA6Ly93d3cubG9qYmFuLm9yZy8nJyAtLS0gX19F cnJvcl9fLCBiZWNhdXNlICcnem8nb2knJyBzY29wZXMgb3ZlciB0aGUgcGFydCAiaHR0cDovL3d3 dyIgb25seS4KCgoKRXhhbXBsZSBvZiBzcG9rZW4gdGV4dDogJydsbyBzYWxwbyAoa3UpIGZhJ3Ug bG8gZmludGkgY3Ugc211bmkgem8nb2kgc2FrYSBmYSd1IHpvJ29pIHNhLmthIGxvIHBvbmpvJycg LS0tIF9fRXJyb3JfXywgYmVjYXVzZSB0aGUgc2Vjb25kICcnem8nb2knJyBzY29wZXMgb3ZlciB0 aGUgcGFydCAic2EiIG9ubHkuCgooVGhpcyAia3UiIGlzIGVsaWRhYmxlIG9uIGEgcGVnIHBhcnNl ci4pCgoKCkFuYWxvZ291cyB0byAnJ3pvJ29pJycgYW5kICcnbGEnbycnLCB0aGVyZSBpcyBhbHNv IHRoZSB3b3JkICcnbGEnb2knJywgd2hpY2ggd29ya3MganVzdCBsaWtlICcnem8nb2knJywgYnV0 IGZvcm1zIGEgc211dGkgdGhhdCByZWZlcnMgdG8gc29tZXRoaW5nIGNhbGxlZCAnJ3dvcmQnJzoK Cl9fJydsYSdvaScnX18gU2NvcGUgb3ZlciB0aGUgbmV4dCB3b3JkIG9ubHk7ICJzb21ldGhpbmcg Y2FsbGVkIGJ5IHRoZSBuYW1lLi4uIi4gTmV4dCB3b3JkIGlzIGlkZW50aWZpZWQgYnkgcGF1c2Vz IGluIHNwZWVjaCBvciB3aGl0ZXNwYWNlL2RvdCBpbiB3cml0aW5nOgoKCgpIb3cgd291bGQgeW91 IHNheTog4oCc4oCcU2FmaeKAnSBpcyBhbiBFbmdsaXNoIGd1eS4gSXQncyBoaXMgbmFtZeKAnT8K Cl9fJydnbGljbycnX18geDEgaXMgRW5nbGlzaC9wZXJ0YWlucyB0byBFbmdsaXNoIGN1bHR1cmUg aW4gYXNwZWN0IHgyCgpfXycnY21lbmUnJ19fIHgxIGlzIHRoZSBuYW1lIG9mIHgyIGFzIHVzZWQg YnkgeDMKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ2xhJ29pIFNhZmkgZ2xpY28gLmkgbHUnZSBy aSBjbWVuZSByaScnfn4KCgoKJydsYSdvaScnIGhhcyB0aGUgc2FtZSBwcm9ibGVtIGFzICcnem8n b2knJzogdGhlIHdvcmQgZm9sbG93aW5nICcnbGEnb2knJyBzaG91bGQgbm90IGluY2x1ZGUgYSBw ZXJpb2QsIGEgZ2xvdHRhbCBzdG9wIG9yIGEgcGF1c2UuIEZvciBleGFtcGxlLCB0aGUgZm9sbG93 aW5nIHNlbnRlbmNlcyBhcmUgbm90IHBhcnNlZCBldmVuIHdpdGggYW4gZXhwZXJpbWVudGFsIGdy YW1tYXIhCgoKCkV4YW1wbGUgb2Ygd3JpdHRlbiB0ZXh0OiAnJy51J2EgbWkgdGUgdmVjbnUgbG8g emdpa2UgZGF0bmkgcGUgbGEnb2kgdC5BLlQudScnIC0tLSBfX0Vycm9yX18sIGJlY2F1c2UgJyds YSdvaScnIHNjb3BlcyBvdmVyIHRoZSBwYXJ0ICJ0IiBvbmx5LgoKKCJ0LkEuVC51IiB3YXMgYSBt dXNpY2FsIGdyb3VwLikKCgoKRXhhbXBsZSBvZiBzcG9rZW4gdGV4dDogJydsYSdvaSAudWxpLnVs aSB6Z2lrZSB0dXRjaScnIC0tLSBfX0Vycm9yX18sIGJlY2F1c2UgJydsYSdvaScnIHNjb3BlcyBv dmVyIHRoZSBmaXJzdCAidWxpIiBvbmx5LgoKKCJgdWxpYHVsaSIgaXMgYSBIYXdhaWlhbiBtdXNp Y2FsIGluc3RydW1lbnQuKQoKCgpFeGFtcGxlIG9mIHNwb2tlbiB0ZXh0OiAnJ2p1J2kgbGEnb2kg anVnZW11anVnZW11Z29rb3Vub3N1cmlraXJla2FpamFyaXN1aWdpb25vLSBzdWlnaW91bWF0c3Us dW5yYWltYXRzdWZ1dXJhaW1hdHN1a3UsdW5lcnV0b2tvcm9uaXN1bXV0b2tvcm8saWFidXJha291 amlub2J1cmFrb3VqaS0gcGFpcG9wYWlwb3BhaXBvbm9zaXUsdXJpbmdhbnNpdSx1cmluZ2FuLG5v Z3UsdXJpbmRhaWd1LHVyaW5kYWlub3BvbnBva29waSxpbm9wb25wb2tvbmEsYW5vdGNvdWtpdSx1 bWVpbm90Y291c3VrZSBtaSdvIGtvJ29pIGtsYW1hIGxvIGNrdWxlJycgLS0tIERvbid0IHRha2Ug YSBicmVhdGhpbmcgaW4gdGhlIG5hbWUsIG9yIGl0IHdpbGwgcmVzdWx0IGluIGFuIF9fRXJyb3Jf Xy4KCigi44GY44KF44GS44KA44GY44KF44GS44KA44GU44GT44GG44Gu44GZ44KK44GN44KM44GL 44GE44GY44KD44KK44GZ44GE44GO44KH44Gu44GZ44GE44GO44KH44GG44G+44Gk44GG44KT44KJ 44GE44G+44Gk44G144GG44KJ44GE44G+44Gk44GP44GG44Gt44KL44Go44GT44KN44Gr44GZ44KA 44Go44GT44KN44KE44G244KJ44GT44GG44GY44Gu44G244KJ44GT44GG44GY44Gx44GE44G944Gx 44GE44G944Gx44GE44G944Gu44GX44KF44O844KK44KT44GM44KT44GX44KF44O844KK44KT44GM 44KT44Gu44GQ44O844KK44KT44Gg44GE44GQ44O844KK44KT44Gg44GE44Gu44G944KT44G944GT 44G044O844Gu44G944KT44G944GT44Gq44O844Gu44Gh44KH44GG44GN44KF44GG44KB44GE44Gu 44Gh44KH44GG44GZ44GRIiBpcyBhIGZhbW91cyBKYXBhbmVzZSBuYW1lIG9mIGEgYm95LikKCgoK VGhpcmRseSwgJydyYSdvaScnIHF1b3RlcyB0aGUgbmV4dCByYWZzaS4gU2luY2UgcmFmc2kgYXJl IG5vdCB3b3JkcywgdGhleSB3b3VsZCB1c3VhbGx5IGhhdmUgdG8gYmUgcXVvdGVkIGJ5ICcnem9p JycuIEZ1cnRoZXJtb3JlLCBzZXZlcmFsIHJhZnNpIGFyZSBhbHNvIGNtYXZvLiBUbyBhdm9pZCBj b25mdXNpb24gb2Ygd2hpY2ggaXMgbWVhbnQsICcncmEnb2knJyBhbHdheXMgcmVmZXIgdG8gYSBy YWZzaSwgYW5kIGlzIHdyb25nIGluIGZyb250IG9mIGFueSB0ZXh0IHN0cmluZyB3aGljaCBhcmUg bm90IHJhZnNpLgoKCgpXaGF0IGRvZXMgJydyYSdvaSB6dSdlIHJhZnNpIHpvIHp1a3RlIC5pa3Un aSB6bydvaSB6dSdlIHN1bXRjaXRhJycgbWVhbj8KCl9fJydrdSdpJydfXyBhdHRpdHVkaW5hbDog ZGlzY3Vyc2l2ZTogSG93ZXZlciAvIHRob3VnaCAoY29udHJhc3RzIHRvIHNvbWV0aGluZyBwcmV2 aW91c2x5IHNhaWQpCgpfXycncmFmc2knJ19fIHgxIGFuIGFmZml4IGZvciB3b3JkL2NvbmNlcHQg eDIgd2l0aCBwcm9wZXJ0aWVzL29mIGZvcm0geDMgaW4gbGFuZ3VhZ2UgeDQKCgoKQW5zd2VyOiB+ fmdyZXksZ3JleTrigJxUaGUgcmFmc2kg4oCcenUnZeKAnSBpcyBhIHJhZnNpIGZvciDigJx6dWt0 ZeKAnS4gQnV0IOKAnHp1J2XigJ0gaXMgYSBzdW10Y2l0YeKAnX5+CgoKCkFuZCBmaW5hbGx5IHRo ZSB1c2VmdWwgd29yZCAnJ21hJ29pJycuICcnbWEnb2knJyBxdW90ZXMgYW55IGNtYXZvLCBidXQg dHJlYXRzIHRoZSBxdW90ZSBhcyBhIG5hbWUgZm9yIHRoZSB3b3JkIGNsYXNzIChzZWxtYSdvKSB0 byB3aGljaCB0aGF0IHdvcmQgYmVsb25ncy4gU28sIGZvciBpbnN0YW5jZSwgYmEnbyBiZWxvbmdz IHRvIHRoZSB3b3JkY2xhc3MgY2FsbGVkIFpBaE8sIHNvICcnbWEnb2kgYmEnbycnIGlzIHVub2Zm aWNpYWwgTG9qYmFuIGZvciDigJxaYWhP4oCdCgoKClRyeSBpdCBvdXQuIFNheSB0aGF0ICcncHUn JyBhbmQgJydiYScnIGFyZSBpbiB0aGUgc2FtZSBzZWxtYSdvIQoKX18nJ2NtYXZvJydfXyB4MSBp cyBhIGdyYW1tYXRpY2FsIHdvcmQgb2YgY2xhc3MgeDIgaW4gbGFuZ3VhZ2UgeDMKCgoKKE9uZSBw b3NzaWJsZSkgQW5zd2VyOiAgfn5ncmV5LGdyZXk6Jyd6byBwdSBjbWF2byBtYSdvaSBiYScnfn4K CgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBuaW5ldGVlbiAobnVtYmVycykKCldoZW4gbGVh cm5pbmcgYSBsYW5ndWFnZSwgb25lIG9mIHRoZSB0aGluZ3Mgd2hpY2ggYXJlIHVzdWFsbHkgdGF1 Z2h0IHZlcnkgZWFybHkgb24gaXMgaG93IHRvIGNvdW50LiBUaGlzIHJlYWxseSBtYWtlcyBsaXR0 bGUgc2Vuc2UsIGJlY2F1c2UgaXQncyBub3QgbmVjZXNzYXJ5IHRvIGtub3cgbnVtYmVycyBpZiB5 b3UgZG9uJ3Qga25vdyBob3cgdG8gc3BlYWsgYWJvdXQgdGhvc2UgdGhpbmdzIHRvIHdoaWNoIHRo ZXkgYXBwbHkuIFRoaXMgaXMgcGFydGx5IHRoZSByZWFzb24gd2h5IEkgaGF2ZSBsZWZ0IGl0IGZv ciBsZXNzb24gbnVtYmVyIG5pbmV0ZWVuLiBUaGUgb3RoZXIgcmVhc29uIGlzIHRoYXQgd2hpbGUg dGhlIG51bWJlcnMgdGhlbXNlbHZlcyBhcmUgZWFzeSB0byBsZWFybiwgaG93IHRoZXkgYXBwbHkg dG8gc3VtdGkgY2FuIGdldCB2ZXJ5IGNvbmZ1c2luZyBpbmRlZWQuIFRoYXQsIGhvd2V2ZXIsIHdl IHdpbGwgc2F2ZSBmb3IgYSBsYXRlciBsZXNzb24uCgpCZWZvcmUgbGVhcm5pbmcgdGhlIHdvcmRz IHRoZW1zZWx2ZXMsIHlvdSBzaG91bGQga25vdyB0aGF0IG51bWJlcnMgZG8gbm90IGhhdmUgYW55 IGludGVybmFsIGdyYW1tYXIuIFRoaXMgbWVhbnMgdGhhdCBhbnkgcm93IG9mIG51bWJlciB3b3Jk cyAoaGVuY2Vmb3J0aCByZWZlcnJlZCB0byBhcyBhICJudW1iZXIgc3RyaW5nIikgYXJlIHRyZWF0 ZWQgaWRlbnRpY2FsbHkgdG8gYW55IG90aGVyIG51bWJlciBzdHJpbmcgdG8gdGhlIExvamJhbiBn cmFtbWFyLCBldmVuIGlmIHRoZSBzdHJpbmcgbWFrZXMgbm8gc2Vuc2UuIFRoZXJlZm9yZSwgb25l IGNhbiBuZXZlciBhbnN3ZXIgdW5hbWJpZ3VvdXNseSB3aGV0aGVyIGEgbnVtYmVyIGNvbnN0cnVj dCBtYWtlcyBzZW5zZSBvciBub3QuIFRoZXJlIGFyZSwgaG93ZXZlciwgaW50ZW5kZWQgd2F5cyBv ZiB1c2luZyB0aGUgbnVtYmVyIHdvcmRzLCBhbmQgY29uZnVzaW9uIHdpbGwgcHJvYmFibHkgcmVz dWx0IGlmIHlvdSBkZXZpYXRlIGZyb20gdGhlIHN0YW5kYXJkLgoKTGVhcm5pbmcgYWxsIHRoZSBu dW1iZXIgd29yZHMgb2YgTG9qYmFuIGFyZSB3YXkgYmV5b25kIHRoZSBzY29wZSBvZiB0aGlzIGxl c3Nvbiwgc28geW91IHdpbGwgb25seSBiZSBpbnRyb2R1Y2VkIHRvIHdoYXQgaXMgbm9ybWFsbHkg dXNlZCBpbiB0ZXh0LiBUaGUgd2lkZSByYW5nZSBvZiBMb2piYW4gbWF0aGVtYXRpY2FsIGNtYXZv IGFyZSBjYWxsZWQgJydtZWtzbycnIChMb2piYW4gZm9yICJtYXRoZW1hdGljYWwgZXhwcmVzc2lv biIpLCBhbmQgaXMgd2lkZWx5IGRpc3JlZ2FyZGVkIGJlY2F1c2Ugb2YgaXRzIGNvbXBsZXhpdHkg YW5kIHF1ZXN0aW9uYWJsZSBhZHZhbnRhZ2Ugb3ZlciBzby1jYWxsZWQgYnJpZGkgbWF0aC4KCkxl dCdzIGJlZ2luIHdpdGggdGhlIG9yZGluYXJ5IExvamJhbiBudW1iZXJzLCBmcm9tIHplcm8gdG8g bmluZToKCnx8emVyb3xvbmV8dHdvfHRocmVlfGZvdXJ8Zml2ZXxzaXh8c2V2ZW58ZWlnaHR8bmlu ZQoKbm98cGF8cmV8Y2l8dm98bXV8eGF8emV8Yml8c298fAoKTm90aWNlIGhvdyB0aGUgdm93ZWxz IGFyZSBhbHRlcm5hdGluZyAod2l0aCB0aGUgZXhjZXB0aW9uIG9mICcnbm8nJyksIGFuZCBob3cg bm8gY29uc29uYW50IGlzIHVzZWQgZm9yIHR3byBkaWdpdHMuCgpJbiBvcmRlciB0byBleHByZXNz IG51bWJlcnMgaGlnaGVyIHRoYW4gbmluZSwgdGhlIG51bWJlcnMgYXJlIGp1c3Qgc3RydW5nIHRv Z2V0aGVyOgoKJyd2byBtdSBjaScnIOKAkyBmb3VyIGh1bmRyZWQgYW5kIGZpZnR5IHRocmVlICg0 NTMpCgonJ3BhIG5vIG5vIG5vIG5vJycgdGVuIHRob3VzYW5kICgxMCAwMDApCgpUaGVyZSBpcyBh bHNvIGEg4oCccXVlc3Rpb24tZGlnaXTigJ0sIHdoaWNoIGlzIHVzZWQgbGlrZSBvdGhlciBmaWxs LWluLXRoZS1ibGFuayBxdWVzdGlvbiB3b3Jkcy4gSXQncyAnJ3hvJycuIFRoZSBhbnN3ZXIgdG8g c3VjaCBhIHF1ZXN0aW9uIG1heSBiZSBqdXN0IHRoZSByZWxldmFudCBkaWdpdChzKSBieSBpdHNl bGYsIG9yIHRoZXkgY2FuIGJlIG51bWVyaWNhbCBjb25zdHJ1Y3RzLCBhcyBzaG93biBsYXRlci4K CicnY2kgeG8geG8geG8nJyDigJMgIlRocmVlIHRob3VzYW5kIGFuZCBob3cgbWFueT8iICgzPz8/ KQoKX18nJ3hvJydfXyBxdWVzdGlvbiBkaWdpdCDigJMgdXNlIGxpa2UgYW55IG90aGVyIGRpZ2l0 IHRvIGFzayBmb3IgdGhlIGNvcnJlY3QgZGlnaXQuCgpUaGUgZXhwZXJpbWVudGFsIHdvcmQgJyd4 bydlJycgaXMgc29tZXRpbWVzIHVzZWQgdG8gbWVhbiBhbiB1bnNwZWNpZmllZCwgZWxsaXB0aWNh bCBkaWdpdC4gSXRzIGRlZmluaXRpb24gaXMgbm90IG9mZmljaWFsLCB0aG91Z2guCgonJ2NpIHhv J2UgeG8nZSB4bydlJycg4oCTIFRocmVlIHRob3VzYW5kIGFuZCBzb21ldGhpbmcKCl9fJyd4bydl JydfXyBlbGxpcHRpY2FsIGRpZ2l0LgoKU2luY2UgYWxsIG51bWJlciBzdHJpbmdzIGFyZSB0cmVh dGVkIGdyYW1tYXRpY2FsbHkgdGhlIHNhbWUsIG9uZSBtaWdodCBhbHNvIGFuc3dlciBzZXZlcmFs IGRpZ2l0cyB0byBvbmUgJyd4bydlJycKCgoKRnVydGhlcm1vcmUsIHRoZXJlIGlzIGFsc28gYSBz ZXQgb2YgaGV4YWRlY2ltYWwgZGlnaXRzIEEgdGhyb3VnaCBGLiBCeSBkZWZhdWx0LCBMb2piYW4g b3BlcmF0ZXMgaW4gYmFzZSAxMCwgYnV0IHdoZW4gdXNpbmcgaGV4YWRlY2ltYWwgZGlnaXRzLCBp dCBjYW4gYmUgc2FmZWx5IGFzc3VtZWQgdGhhdCB5b3UgdXNlIGJhc2Ugc2l4dGVlbjoKCnx8ZGF1 fGZlaXxnYWl8amF1fHJlaXx4ZWkgfHZhaXwKCjEwKEEpfDExKEIpfDEyKEMpfDEzKEQpfDE0KEUp fDE0KEUpfDE1KEYpfHwKClllcywgSSBrbm93IHRoZXJlIGFyZSB0d28gd29yZHMgZm9yIEUuIFRo ZSBvZmZpY2lhbCBvbmUgaXMgJydyZWknJyAoYWxsIHRocmVlLWxldHRlciBjbWF2byBiZWdpbm5p bmcgd2l0aCB4IGlzIGV4cGVyaW1lbnRhbCkuICcneGVpJycgd2FzIGludmVudGVkIHRvIGF2b2lk IGNvbmZ1c2lvbiB3aXRoICcncmUnJy4KClRoZSBiYXNlIGNhbiBiZSBleHBsaWNpdGx5IHN0YXRl ZCB1c2luZyAnJ2p1J3UnJzogQW55IG51bWJlciBiZWZvcmUgJydqdSd1JycgdGhlIG51bWJlciBi ZWluZyBzcG9rZW4gb2YsIGFueSBudW1iZXIgYWZ0ZXIgaXMgdGhlIGJhc2Ugb2YgdGhlIG51bWJl cjoKCicnZGF1IHNvIGZlaSBubyBqdSd1IHBhIHJlJycg4oCTIEE5QjAgaW4gYmFzZSAxMiAobm90 aWNlIGhlcmUgdGhhdCBiYXNlIDEyIGlzIGFsd2F5cyBpbiBkZWNpbWFsLiBJdCBpcyBwb3NzaWJs ZSB0byBwZXJtYW5lbnRseSBjaGFuZ2UgdGhlIGJhc2UgeW91IHNwZWFrIGluLCBidXQgc2luY2Ug aXQgaGFzIG5ldmVyIGJlZW4gdXNlZCBpbiBwcmFjdGljZSwgaXQgaGFzIG5vdCBiZWVuIHN0YW5k YXJkaXplZCBob3cgb25lIHNob3VsZCBkbyBpdCkKCkZyYWN0aW9ucyBhcmUgYWxzbyB1c2VmdWwg dG8gbGVhcm4gaG93IHRvIGV4cHJlc3MuIFRoZXkgYXJlIHVzdWFsbHkgZXhwcmVzc2VkIHZpYSBh IGRlY2ltYWwgcG9pbnQsICcncGknJy4KCl9fJydwaScnX18gRGVjaW1hbCBwb2ludCAob3IgcG9p bnQgaW4gd2hpY2hldmVyIGJhc2UgeW91IGFyZSB0YWxraW5nIGluKQoKJydwYSByZSBwaSByZSBt dScnIOKAkyB0d2VsdmUgcG9pbnQgdHdvIGZpdmUgKDEyLjI1KS4gCgpMaWtlIGluIG1hdGhlbWF0 aWNzLCB3aGVuIG5vIG51bWJlciBzdHJpbmcgaXMgcGxhY2VkIGJlZm9yZSBvciBhZnRlciAnJ3Bp JycsIHplcm8gaXMgYXNzdW1lZC4gCgpSZWxhdGVkIHRvIHRoaXMsIHRoZSBudW1iZXIgc2VwYXJh dG9yICcncGknZScnIGlzIHVzZWQgdG8gc2VwYXJhdGUgbnVtYmVycywgZWl0aGVyIHRvIHNlcGFy YXRlIGRpZ2l0cyB3aGVuIHNwZWFraW5nIGluIGEgYmFzZSBsYXJnZXIgdGhhbiBzaXh0ZWVuLCBv ciB3aGVuIGEgZGVjaW1hbCBwb2ludCBpcyBub3QgYXBwbGljYWJsZSwgZm9yIGluc3RhbmNlLCB3 aGVuIHRhbGtpbmcgYWJvdXQgdGltZSBpbiBob3VycywgbWludXRlcywgc2Vjb25kczoKCicncGEg c28gcGknZSByZSBtdSBwaSdlIG5vIGp1J3UgcmUgemUnJyDigJMgTmluZXRlZW4sIHR3ZW50eS1m aXZlLCB6ZXJvIGluIGJhc2UgMjcgKEpQMCBiYXNlIDI3KQoKJydyZSByZSBwaSdlIHZvIGJpJycg 4oCTIHR3ZW50eS10d28sIGZvdXJ0eSBlaWdodCAoMjI6NDgpCgoKClRoZXJlIGlzIGFsc28gYSBy YW5nZSBvZiBudW1iZXIgd29yZHMgd2hpY2ggYXJlIG5vdCBtYXRoZW1hdGljYWxseSBleGFjdCBi dXQgcmF0aGVyIHN1YmplY3RpdmUgb3IgcmVsYXRpdmUuIFRoZSBiZWhhdmlvcnMgb2YgdGhlc2Ug d29yZHMgYXJlIGFsbW9zdCBleGFjdGx5IGxpa2UgdGhlIGJlaGF2aW9yIG9mIGRpZ2l0cywgZXhj ZXB0IHRoZXkgY2Fubm90IGJlIGNvbWJpbmVkIHRvIG1ha2UgYmlnZ2VyIG51bWJlcnMgdGhlIHdh eSBkaWdpdHMgY2FuOgoKfHwgcm98c28nYXxzbydlfHNvJ2l8c28nb3xzbyd1fAoKYWxsfGFsbW9z dCBhbGx8bW9zdHxtYW55fHNvbWV8ZmV3fHwKCldoZW4gY29tYmluZWQgd2l0aCBhbnkgb2YgdGhl IGRpZ2l0cywgdGhlc2Ugd29yZHMgYXJlIGFzc3VtZWQgdG8gZ2l2ZSBhIHNlY29uZCB2ZXJkaWN0 IGFib3V0IHRoZSBzaXplIG9mIHRoZSBudW1iZXI6CgonJ211IGJpIHNvJ2kgc2FpJycg4oCTRmlm dHkgZWlnaHQsIHdoaWNoIGlzIHJlYWxseSBtYW55LgoKVGhleSBzaG91bGQgdGhlcmVmb3JlIG5v dCBiZSBwbGFjZWQgaW4gdGhlIG1pZGRsZSBvZiBhIG51bWJlciBzdHJpbmcuIFdoZW4gcGxhY2Vk IGFmdGVyICcncGknJywgdGhleSBhcmUgYXNzdW1lZCB0byBjb252ZXkgdGhlIHNpemUgb2YgYSBm cmFjdGlvbjoKCicncGkgc28ndScnIOKAkyBhIHNtYWxsIHBhcnQgb2YgaXQKCicncGkgc28nbycn IOKAkyBzb21lIG9mIGl0IAoKJydwaSBzbydpJycg4oCTIGEgbGFyZ2UgcGFydCBvZiBpdCAKCicn cGkgc28nZScnIOKAkyBtb3N0IG9mIGl0CgonJ3BpIHNvJ2EnJyDigJMgYWxtb3N0IGFsbCBvZiBp dAoKCgpUaGVzZSBhcmUgc29tZSBoaWdodGx5IHN1YmplY3RpdmUgbnVtYmVycyAtIHRoZXkgd29y ayBqdXN0IGxpa2UgdGhlIHByZXZpb3VzIG9uZXMuCgp8fGR1J2V8bW8nYXxyYXUKCnRvbyBtYW55 fHRvbyBmZXd8ZW5vdWdofHwKClRoZSBmb2xsb3dpbmcgZml2ZSBhcmUgY29udGV4dC1iYXNlZCBu dW1iZXJzIOKAkyB0aGVzZSB3b3JrIGxpa2UgdGhlIHByZXZpb3VzIG9uZXMsIHdpdGggdGhlIGV4 Y2VwdGlvbiB0aGF0IHRoZXkgdGFrZSB0aGUgbmV4dCBudW1iZXIgaW4gb3JkZXIgdG8gYXNzaWdu IHRoZW0gbWVhbmluZzoKCnx8ZGEnYXxzdSdlfHN1J298emEndXxtZSdpCgphbGwgZXhjZXB0IG4g fEF0IG1vc3QgbnxBdCBsZWFzdCBufG1vcmUgdGhhbiBufGxlc3MgdGhhbiBufHwKCklmIG5vIG51 bWJlciBzdHJpbmcgZm9sbG93IHRoZW0sIOKAnG9uZeKAnSBpcyBhc3N1bWVkLgoKJydzbydpIHBh IHJlIGRhJ2EgbXUnJyDigJMgTWFueSwgd2hpY2ggaXMgdHdlbHZlLCB3aGljaCBpcyBhbGwgYnV0 IGZpdmUuCgpUaGUgdHdvIGxhc3QgbnVtYmVyIHdvcmRzIHlvdSBzaG91bGQga25vdyBoYXZlIHNs aWdodGx5IG1vcmUgY29tcGxpY2F0ZWQgZ3JhbW1hcjoKCl9fJydqaSdpJydfXyAtIG51bWJlciBy b3VuZGluZyBvciBudW1iZXIgYXBwcm94aW1hdGlvbgoKV2hlbiAnJ2ppJ2knJyBpcyBwbGFjZWQg YmVmb3JlIGEgbnVtYmVyLCB0aGUgZW50aXJlIG51bWJlciBpcyBhcHByb3hpbWF0ZWQ6CgonJ2pp J2kgemUgbm8gemEndSByYXUganUnbycnIOKAkyAiQWJvdXQgc2V2ZW50eSwgd2hpY2ggaXMgbW9y ZSB0aGFuIGVub3VnaCwgY2VydGFpbmx54oCdCgpQbGFjZWQgaW4gdGhlIG1pZGRsZSBvZiB0aGUg bnVtYmVyLCBvbmx5IHRoZSBmb2xsb3dpbmcgZGlnaXRzIGFyZSBub24tZXhhY3QuIEF0IHRoZSBl bmQgb2YgYSBudW1iZXIsIGl0IHNpZ25pZmllcyB0aGF0IHRoZSBudW1iZXIgaGFzIGJlZW4gcm91 bmRlZCBvZmYuIAoKX18nJ2tpJ28nJ19fIE51bWJlciBjb21tYSAgLSBzZXBhcmF0ZXMgZGlnaXRz IHdpdGhpbiBvbmUgc3RyaW5nOyBUaG91c2FuZHMuCgpJdCBpcyBub3QgaW5jaWRlbnRpYWwgdGhh dCAnJ2tpJ28nJyBzb3VuZHMgbGlrZSDigJxraWxv4oCdLiBBdCBpdHMgc2ltcGxlc3QsICcna2kn bycnIGlzIHVzZWQgdG8gc2VwYXJhdGUgdGhyZWUgZGlnaXRzIGF0IGEgdGltZSBpbiBsYXJnZSBu dW1iZXJzLCBtdWNoIGxpa2UgY29tbWFzIGFyZSB1c2VkIGluIEVuZ2xpc2g6CgonJ3BhIGtpJ28g c28gc28gc28ga2knbyBiaSB4YSB6ZScnIOKAkyAxLDk5OSw4NjcKCklmIGxlc3MgdGhhbiB0aHJl ZSBkaWdpdHMgYXJlIHB1dCBiZWZvcmUgYSAnJ2tpJ28nJywgdGhlIGRpZ2l0cyBhcmUgYXNzdW1l ZCB0byBiZSB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgb25lcywgYW5kIHplcm9zIGFyZSBhc3N1bWVk IHRvIGZpbGwgaW4gdGhlIHJlc3Q6CgonJ3ZvIGtpJ28gY2kgYmkga2knbyBwYSBraSdvIGtpJ28n JyDigJMgNCwwMzgsMDAxLDAwMCwwMDAKCicna2knbycnIGlzIHVzZWQgc2ltaWxhcmx5IGFmdGVy IGEgZGVjaW1hbCBwb2ludC4KCgoKVGhhdCBjb25jbHVkZXMgdGhlIGNvbW1vbiBMb2piYW4gbnVt YmVycyB0aGVtc2VsdmVzLiBIb3cgdGhleSBhcHBseSB0byBzdW10aSBpcyBhIHNjaWVuY2UgaW4g aXRzZWxmLCBhbmQgd2UgbGVhdmUgdGhhdCBmb3IgbGVzc29uIHR3ZW50eS10d28uIE5vdyB3ZSBm b2N1cyBvbiBob3cgdGhlc2UgbnVtYmVycyBjYW4gYmUgdXNlZCBpbiBhIGJyaWRpLgoKQSBzdHJp bmcgb2YgbnVtYmVyIHdvcmRzIGJ5IHRoZW1zZWx2ZXMgYXJlIGdyYW1tYXRpY2FsLCBzaW5jZSB0 aGV5IGNhbiBhY3QgYXMgYW4gYW5zd2VyIHRvIGEgJyd4bycnLXR5cGUgb2YgcXVlc3Rpb24uIElu IHRoaXMgY2FzZSwgaG93ZXZlciwgdGhleSBjYW5ub3QgYmUgY29uc2lkZXJlZCBwYXJ0IG9mIGFu eSBicmlkaS4gSW4gZ2VuZXJhbCwgaWYgbnVtYmVycyBmaWxsIHBhcnQgb2YgYSBicmlkaSwgdGhl eSBkbyBzbyBpbiBvbmUgb2YgdHdvIGZvcm1zOiBQdXJlIG51bWJlcnMgYW5kIHF1YW50aWZpZXJz LiBXZSB3aWxsIHJldHVybiB0byBxdWFudGlmaWVycyBpbiBhIGxhdGVyIGxlc3Nvbi4gRm9yIG5v dywgd2Ugd2lsbCBsb29rIGF0IHB1cmUgbnVtYmVycy4KCkEgcHVyZSBudW1iZXIgaXMgYW55IHJv dyBvZiBudW1iZXIgd29yZHMgcHJlZml4ZWQgd2l0aCAnJ2xpJycuIFRoaXMgbWFrZXMgYSBzdW10 aSBkaXJlY3RseSBmcm9tIHRoZSBudW1iZXIsIGFuZCByZWZlcnMgdG8gdGhlIG1hdGhlbWF0aWNh bCBjb25jZXB0IG9mLCBmb3IgaW5zdGFuY2UsIOKAnHRoZSBudW1iZXIgc2l44oCdLiBJdHMgZmEn b3JtYSdvIGlzICcnbG8nbycnCgpfXycnbGknJ19fIGNvbnZlcnQgbnVtYmVyL21la3NvLWV4cHJl c3Npb24gdG8gc3VtdGkuCgpfXycnbG8nbycnX18gZmEnb3JtYSdvOiBlbmQgY29udmVydCBudW1i ZXIvbWVrc28tZXhwcmVzc2lvbiB0byBzdW10aS4KClRoZXNlIHB1cmUgc3VtdGkgYXJlIHVzdWFs bHkgd2hhdCBmaWxscyB0aGUgeDIgb2YgYnJpdmxhIHN1Y2ggYXMgJydtaXRyZScnIG9yICcnY2Fj cmEnJwoKX18nJ21pdHJlJydfXyB4MSBpcyB4MiBtZXRyZXMgaW4gZGltZW5zaW9uIHgzIGJ5IHN0 YW5kYXJkIHg0CgpfXycnY2FjcmEnJ19fIHgxIGlzIHgyIGhvdXJzIGluIGR1cmF0aW9uIChkZWZh dWx0IDEpIGJ5IHN0YW5kYXJkIHgzCgoKClRyeSB0byB0cmFuc2xhdGUgdGhlIGZvbGxvd2luZzoK CicnbGUgdGEgbnUgY2luamlrY2EgY3UgY2FjcmEgbGkgY2kgamknaSB1J2kgbmFpJycKCkFuc3dl cjogfn5ncmV5LGdyZXk6IOKAnSpzaWdoKiBUaGF0IGZsaXJ0aW5nIGhhcyBiZWVuIGdvaW5nIG9u IGZvciBhcm91bmQgdGhyZWUgaG91cnMu4oCdIH5+CgpIb3cgZG8geW91IGNvdW50IHRvIHRocmVl IGluIExvamJhbj8KCkFuc3dlcjogfn5ncmV5LGdyZXk6ICcnbGkgcGEgbGkgcmUgbGkgY2knJyB+ fgoKCgpUaGUgbGFzdCB0aGluZyB3ZSdsbCBnbyB0aHJvdWdoIGluIHRoaXMgbGVzc29uIGlzIHRo ZSB3b3JkcyBvZiB0aGUgc2VsbWEnbyBNQUkgYW5kIHRob3NlIG9mIE1PSS4KCk1BSSBvbmx5IGNv bnRhaW5zIHR3byB3b3JkcywgJydtYWknJyBhbmQgJydtbydvJycuIEJvdGggb2YgdGhlc2UgY29u dmVydCBhbnkgbnVtYmVyIHN0cmluZyB0byBhbiBvcmRpbmFsLCB3aGljaCBoYXMgdGhlIGdyYW1t YXIgb2YgYXR0aXR1ZGluYWxzLiBPcmRpbmFscyBhcmUgdXNlZCB0byBkaXZpZGUgYSB0ZXh0IGlu dG8gbnVtYmVyZWQgc2VnbWVudHMsIGxpa2UgY2hhcHRlcnMgb3IgcGFydHMuIFRoZSBvbmx5IGRp ZmZlcmVuY2UgYmV0d2VlbiAnJ21haScnIGFuZCAnJ21vJ28nJyBpcyB0aGF0ICcnbW8nbycnIHF1 YW50aWZpZXMgbGFyZ2VyIHN1YmRpdmlzaW9ucyBvZiB0ZXh0LCBhbGxvd2luZyB5b3UgdG8gZGl2 aWRlIGEgdGV4dCBvbiB0d28gZGlmZmVyZW50IGxldmVscywgZm9yIGV4YW1wbGUgZW51bWVyYXRp bmcgY2hhcHRlcnMgd2l0aCAnJ21vJ28nJyBhbmQgc2VjdGlvbnMgd2l0aCAnJ21haScnLiBOb3Rp Y2UgdGhhdCB0aGVzZSBhcyB3ZWxsIGFzIHRoZSBNT0kgdGFrZSBhbnkgbnVtYmVyIHN0cmluZyBk aXJlY3RseSwgd2l0aG91dCBhbnkgbmVlZCBmb3IgJydsaScnLgoKX18nJ21haScnX186IExvd2Vy LW9yZGVyIG9yZGluYWwgbWFya2VyOiBDb252ZXJ0IG51bWJlciB0byBvcmRpbmFsCgpfXycnbW8n bycnX186IEhpZ2hlciBvcmRlciBvcmRpbmFsIG1hcmtlcjogQ29udmVydCBudW1iZXIgdG8gb3Jk aW5hbC4KCgoKVGhlcmUgYXJlIGZpdmUgTU9JLCBhbmQgdGhleSBhbGwgY29udmVydCBhbnkgbnVt YmVyIHN0cmluZyB0byBzZWxicmkuIFdlJ2xsIHRha2UgdGhlbSBvbmUgYXQgYSB0aW1lOgoKX18n J21vaScnX18gLSBDb252ZXJ0IG51bWJlciBuIHRvIHNlbGJyaTogeDEgaXMgdGhlIG4ndGggbWVt YmVyIG9mIHNldCB4MiBieSBvcmRlciB4MwoKRXhhbXBsZTogJydsYSBsdXRjaW1pbiBjaSBtb2kg bG8naSBuaW5tdSBwZW5kbyBiZSBtaSBsZSBzdSd1IGxvIGNsYW5pIHptYWR1IGN1IGxpZG5lIGxv IGNsYW5pIG1sZWNhJycg4oCTIOKAnEx1aS1DaGkgTWluIGlzIHRoaXJkIGFtb25nIG15IGZlbWFs ZSBmcmllbmRzIGJ5IHRoZSBvcmRlcjogVGhlIG1vcmUgdGFsbCBvbmVzIHByZWNlZGVzIHRoZSBs ZXNzIHRhbGwgb25lc+KAnS4KCihXaGVuIHNwZWNpZnlpbmcgYSBzZXF1ZW5jZSwgaXQgaXMgd2lk ZWx5IHVuZGVyc3Rvb2QgdGhhdCBpZiBhICcna2EnJy1hYnN0cmFjdGlvbiAobGVzc29uIHR3ZW50 eS1uaW5lKSBpcyB1c2VkIGFzIGEgc3VtdGksIHRoZSBtZW1iZXJzIG9mIHRoZSBzZXQgYXJlIG9y ZGVyZWQgZnJvbSB0aGUgb25lIHdpdGggbW9zdCBvZiB0aGUgcHJvcGVydHkgdG8gdGhlIG9uZSB3 aXRoIGxlc3Mgb2YgdGhlIHByb3BlcnR5LCBzbyB0aGUgeDMgb2YgdGhlIGZvbGxvd2luZyBzZW50 ZW5jZSBjb3VsZCBoYXZlIGJlZW4gc2hvcnRlbmVkIHRvICcnbG8ga2EgY2xhbmknJykKCl9fJyds aWRuZScnX18geDEgaXMgYmVmb3JlIHgyIGluIHNlcXVlbmNlIHgzCgpfXycnY2xhbmknJ19fIHgx IGlzIGxvbmcgaW4gZGltZW5zaW9uIHgyIGJ5IHN0YW5kYXJkIHgzCgpfXycnem1hZHUnJ19fIHgx IGV4Y2VlZHMgeDIgaW4gcHJvcGVydHkvYXNwZWN0IHgzIGJ5IGFtb3VudCB4NAoKX18nJ21sZWNh JydfXyB4MSBpcyBsZXNzIHRoYW4vaXMgbGVzcyBjaGFyYWN0ZXJpemVkIHRoYW4geDIgYnkgcHJv cGVydHkvYXNwZWN0IHgzIGJ5IGFtb3VudCB4NAoKCgpfXycnbWVpJydfXyAtIENvbnZlcnQgbnVt YmVyIG4gdG8gc2VsYnJpOiB4MSBpcyB0aGUgbWFzcyBmb3JtZWQgZnJvbSB0aGUgc2V0IHgyLCB3 aGljaCBoYXMgdGhlIG4gbWVtYmVycyBvZiB4MwoKTm90aWNlIGhlcmUgdGhhdCB4MyBhcmUgc3Vw cG9zZWQgdG8gYmUgaW5kaXZpZHVhbHMsIHgyIGEgc2V0IGFuZCB4MSBhIG1hc3MuCgpXaGF0IHdv dWxkICcnbWkgY2kgbWVpJycgbWVhbj8gCgpBbndlcjogfn5ncmV5LGdyZXk64oCcV2UgYXJlIGdy b3VwIG9mIHRocmVlLuKAnX5+CgoKCl9fJydzaSdlJydfXyAtIENvbnZlcnQgbnVtYmVyIG4gdG8g c2VsYnJpOiB4MSBpcyBuIHRpbWVzIHgyCgpFeGFtcGxlOiAnJ2xlIHZpIHBsaXNlIGN1IG1lJ2kg cGkgcGEgc2knZSBsZWkgbWkgY2lkamEgYmUgemUnYSBsbyBkamVkaScnIOKAkyDigJxUaGlzIGFw cGxlIGhlcmUgaXMgbGVzcyB0aGFuIG9uZSB0ZW50aCBvZiBteSBmb29kIGZvciBvbmUgZGF54oCd CgpQbGVhc2Ugbm90ZSB0aGF0IHRoZSBkZWZpbml0aW9uIG9mICcnc2knZScnIHdoZW4gbG9va2Vk IHVwIHdpbGwgdGVsbCB5b3UgdGhhdCBpdCdzICJ4MSBpcyBhbiBudGggb2YgeDIiLCBpbnN0ZWFk IG9mICJ4MSBpcyBuIHRpbWVzIHgyIi4gQnV0IHBlb3BsZSBvbmx5IHVzZSBpdCBhcyBJIGhhdmUg ZGVmaW5lZCBpdCwgc28gdGhlIGRlZmluaXRpb24gaW4gdGhlIGRpY3Rpb25hcmllcyB3aWxsIHBy b2JhYmx5IGNoYW5nZS4KCgoKX18nJ2N1J28nJ19fIC0gQ29udmVydCBudW1iZXIgbiB0byBzZWxi cmk6IHgxIGhhcyBuIHByb2JhYmlsaXR5IG9mIG9jY3VycmluZyB1bmRlciBjb25kaXRpb25zIHgy CgpFeGFtcGxlOiAnJ2xvIG51IG1pIG1yb2JpJ28gY3UgcGEgY3UnbyBsbyBudSBtaSBkZW5wYSBy aScnIOKAkyDigJ1BbiBldmVudCBvZiBtZSBkeWluZyBoYXMgcHJvYmFiaWxpdHkgMSB1bmRlciB0 aGUgY29uZGl0aW9uczogSSB3YWl0IGZvciBpdOKAnSA9IOKAnU1lIGR5aW5nIGlzIGNvbXBsZXRl bHkgY2VydGFpbiBpZiBJIHdhaXQgbG9uZyBlbm91Z2gu4oCdCgpfXycnZGVucGEnJ19fIHgxIHdh aXRzIGZvciB4MiwgYmVpbmcgaW4gc3RhdGUgeDMgdW50aWwgcmVzdW1pbmcvZG9pbmcgeDQKCl9f Jyd2YSdlJydfXyAtIENvbnZlcnQgbnVtYmVyIG4gdG8gc2VsYnJpOiB4MSBpcyBhdCB0aGUgbid0 aCBwb3NpdGlvbiBvbiB0aGUgc2NhbGUgeDIKCkV4YW1wbGU6ICcnbGkgcGEgbm8gY3Ugcm8gdmEn ZSBsYSB0b3Jpbm9uJycg4oCTIOKAnDEwIGlzIHRoZSBoaWdoZXN0IHZhbHVlIG9uIHRoZSBUb3Jp bm8tc2NhbGXigJ0KCgoKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eSAoYm8sIGtl LCBjbyBhbmQgbW9yZSBjdXRlbmVzcykKClNheSB5b3UncmUgYW4gaW1wb3J0YW50IEFtZXJpY2Fu IGJ1eWVyIG9mIGNvbXB1dGVycy4gSG93IGRvIHlvdSBleHByZXNzIHRoaXM/IEZvciBjb25zdHJ1 Y3RzIGxpa2UgdGhlc2UsIHRhbnJ1IGFyZSBpZGVhbDogJydtaSB2YWpuaSBtZXJrbyBza2FtaSB0 ZSB2ZWNudScnLiBObyB3YWl0LCB0aGF0J3Mgbm90IHJpZ2h0LiBUYW5ydSBhcmUgZ3JvdXBlZCBm cm9tIGxlZnQgdG8gcmlnaHQsIHNvIHRoaXMgdGFucnUgaXMgdW5kZXJzdG9vZDogKCgnJ3Zham5p IG1lcmtvJycpICcnc2thbWknJykgJyd0ZSB2ZWNudScnLCBhIGJ1eWVyIG9mIGNvbXB1dGVycyBm b3IgaW1wb3J0YW50IEFtZXJpY2Fucy4gWW91IGNhbid0IGNoYW5nZSB0aGUgb3JkZXIgb2YgdGhl IHNlbGJyaSB0byBnZXQgYSB1c2VmdWwgdGFucnUuIE5laXRoZXIgY2FuIHRoaXMgYmUgc29sdmVk IHdpdGggbG9naWNhbCBjb25uZWN0aXZlcywgd2hpY2ggeW91IHdpbGwgZmlyc3QgbGVhcm4gYWJv dXQgbGF0ZXIgYW55d2F5LiBUaGUgb25seSB3YXkgdG8gbWFrZSBhIGZpdHRpbmcgdGFucnUgaXMg dG8gZm9yY2UgdGhlIHNlbGJyaSB0byBncm91cCBkaWZmZXJlbnRseS4KCgoKVG8gYmluZCB0d28g c2VsYnJpIGNsb3NlIHRvZ2V0aGVyIGluIGEgdGFucnUsIHRoZSB3b3JkICcnYm8nJyBjYW4gYmUg cGxhY2VkIGJldHdlZW4gdGhlbTogJydtaSB2YWpuaSBibyBtZXJrbyBza2FtaSBibyB0ZSB2ZWNu dScnIGlzIHJlYWQgJydtaScnICgnJ3Zham5pIGJvIG1lcmtvJycpICgnJ3NrYW1pIGJvIHRlIHZl Y251JycpLCB3aGljaCBpcyB1c2VmdWwgaW4gdGhpcyBjb250ZXh0LiBJZiBibyBpcyBwbGFjZWQg YmV0d2VlbiBzZXZlcmFsIHNlbGJyaSBpbiBhIHJvdywgdGhleSBhcmUgZ3JvdXBlZCBmcm9tIHJp Z2h0IHRvIGxlZnQgaW5zdGVhZCBvZiB0aGUgdXN1YWwgbGVmdCB0byByaWdodDogJydtaSB2YWpu aSBtZXJrbyBibyBza2FtaSBibyB0ZSB2ZWNudScnIGlzIHJlYWQgJyd2YWpuaScnICgnJ21lcmtv IGJvJycgKCcnc2thbWkgYm8gdGUgdmVjbnUnJykpIGFuIOKAnGltcG9ydGFudCAoQW1lcmljYW4g Y29tcHV0ZXItYnV5ZXIp4oCdLCB3aGljaCBpcyBldmVuIG1vcmUgYXBwcm9wcmlhdGUgaW4gdGhl IHNpdHVhdGlvbi4KCl9fJydibycnX18gQmluZHMgdHdvIHNlbGJyaSB0b2dldGhlciBzdHJvbmds eS4KCgoKSG93IHdvdWxkIHlvdSBzYXkg4oCcVGhhdCdzIGEgdGFzdHkgeWVsbG93IGFwcGxl4oCd PwoKX18nJ2t1a3RlJydfXyB4MSBpcyB0YXN0eSBmb3IgeDIKCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTonJ3RpIGt1a3RlIHBlbHh1IGJvIHBsaXNlJyd+fgoKCgpXaGF0IGFib3V0IOKAnVRoYXQncyBh IGJpZywgdGFzdHkgeWVsbG93IGFwcGxl4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd0aSBi YXJkYSBrdWt0ZSBibyBwZWx4dSBibyBwbGlzZScnfn4KCgoKQW5vdGhlciBhcHByb2FjaCB0byB0 aGlzIGlzIHRvIHVzZSB0aGUgd29yZHMgJydrZeKApmtlJ2UnJy4gVGhlc2UgY2FuIGJlIGNvbnNp ZGVyZWQgYXMgZXF1aXZhbGVudCB0byB0aGUgcGFyZW50aGVzaXNlcyB1c2VkIGluIHRoZSBwYXJh Z3JhcGggYWJvdmUuICcna2UnJyBiZWdpbnMgc3Ryb25nIHNlbGJyaSBncm91cGluZywgJydrZSdl JycgZW5kcyBpdC4KCl9fJydrZScnX18g4oCTIGJlZ2luIHN0cm9uZyBzZWxicmkgZ3JvdXBpbmcu CgpfXycna2UnZScnX18g4oCTIGVuZCBzdHJvbmcgc2VsYnJpIGdyb3VwaW5nLgoKVGhlIHN0cmVu Z3RoIG9mIHRoZSBiaW5kaW5nIGlzIHRoZSBzYW1lIGFzIHRoYXQgb2YgJydibycnLiBUaGVyZWZv cmUsICcnbWkgdmFqbmkgbWVya28gYm8gc2thbWkgYm8gdGUgdmVjbnUnJyBjYW4gYmUgd3JpdHRl biAnJ21pIHZham5pIGtlIG1lcmtvIGtlIHNrYW1pIHRlIHZlY251IHtrZSdlfSB7a2UnZX0nJy4K CkhvdyBjb3VsZCB5b3Ugc2F5IOKAnEknbSBhIEdlcm1hbiBzZWxsZXIgb2YgeWVsbG93IGhvbWVz P+KAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgZG90Y28ga2UgcGVseHUgemRhbmkgdmVj bnUnJ35+CgoKCldoaWxlIHdlJ3JlIGF0IG1lc3Npbmcgd2l0aCB0aGUgb3JkaW5hcnkgdGFucnUg c3RydWN0dXJlLCB0aGVyZSBpcyBhbm90aGVyIHdvcmQgd29ydGggcGF5aW5nIGF0dGVudGlvbiB0 by4gSWYgSSB3YW50IHRvIHNheSB0aGF0IEknbSBhIHByb2Zlc3Npb25hbCB0cmFuc2xhdG9yLCBJ IGNvdWxkIHNheSAnJ21pIGZhbnZhIHNlIGppYnJpJycuCgpfXycnamlicmknJ19fIHgxIGlzIGEg am9iIG9mIHgyCgpfXycnZG90eWJhdScnX18geDEgaXMgR2VybWFuIHVzZWQgYnkgeDIgdG8gc2F5 IHgzCgpfXycnZ2xpYmF1JydfXyB4MSBpcyBFbmdsaXNoIHVzZWQgYnkgeDIgdG8gc2F5IHgzCgpJ ZiBJIHdhbnRlZCB0byBzYXkgdGhhdCBJJ20gYSBwcm9mZXNzaW9uYWwgdHJhbnNsYXRlciBmcm9t IEVuZ2xpc2ggdG8gR2VybWFuLCBJJ2QgaGF2ZSB0byBtZXNzIGFyb3VuZCB3aXRoICcnYmUnJyBh bmQgJydiZWknJzogJydtaSBmYW52YSBiZSBsZSBkb3R5YmF1IGJlaSBsZSBnbGliYXUgYmUnbyBz ZSBqaWJyaScnLCBhbmQgdGhlIGZhY3QgdGhhdCBpdCB3YXMgYSB0YW5ydSBjb3VsZCBxdWlja2x5 IGJlIGxvc3QgaW4gc3BlZWNoIGR1ZSB0byB0aGUgY29tcGxpY2F0ZWQgc3RydWN0dXJlIG9mIHRo ZSBzZW50ZW5jZS4gSGVyZSwgd2UgY2FuIHVzZSB0aGUgd29yZCAnJ2NvJycuIGl0IGludmVydHMg dGhlIHRhbnJ1LCBtYWtpbmcgdGhlIHJpZ2h0bW9zdCBzZWxicmkgbW9kaWZ5IHRoZSBsZWZ0bW9z dCBpbnN0ZWFkIG9mIHRoZSBvdGhlciB3YXkgYXJvdW5kOgoKJydtaSBzZSBqaWJyaSBjbyBmYW52 YSBsZSBkb3R5YmF1IGxlIGdsaWJhdScnIGlzIHRoZSBzYW1lIGJyaWRpIGFzIHRoZSBwcmV2aW91 cyBMb2piYW4gb25lLCBidXQgbXVjaCBtb3JlIGVhc3kgdG8gdW5kZXJzdGFuZC4gTm90aWNlIHRo YXQgYW55IHN1bXRpIGJlZm9yZSB0aGUgdGFucnUgZmlsbHMgJydzZSBqaWJyaScnLCB3aGlsZSBh bnkgZm9sbG93aW5nIGl0IG9ubHkgZmlsbHMgdGhlIG1vZGlmeWluZyBzZWxicmk6ICcnZmFudmEn Jy4KCl9fJydjbycnX18gSW52ZXJ0IHRhbnJ1LiBBbnkgcHJldmlvdXMgc3VtdGkgZmlsbCB0aGUg bW9kaWZpZWQsIGFueSBmb2xsb3dpbmcgZmlsbCB0aGUgbW9kaWZpZXIuCgoKClRoZSBzdHJlbmd0 aCBieSB3aGljaCB0d28gc2VsYnJpIGFyZSBib3VuZCB0b2dldGhlciB3aXRoIGNvIGlzIHZlcnkg d2VhayDigJMgZXZlbiB3ZWFrZXIgdGhhbiBub3JtYWwgdGFucnUgZ3JvdXBpbmcgd2l0aG91dCBh bnkgZ3JvdXBpbmcgd29yZHMuIFRoaXMgbWFrZXMgc3VyZSB0aGF0LCBpbiBhIGNvLWNvbnN0cnVj dCwgdGhlIGxlZnRtb3N0IHNlbGJyaSBpcyBhbHdheXMgdGhlIHNlbGJyaSBiZWluZyBtb2RpZmll ZCwgYW5kIHRoZSByaWdodG1vc3QgYWx3YXlzIG1vZGlmaWVzLCBldmVuIGlmIGFueSBvZiB0aG9z ZSBwYXJ0cyBhcmUgdGFucnUuIFRoaXMgbWFrZXMgYSBjby1jb25zdHJ1Y3QgZWFzeSB0byBwYXJz ZToKCicndGkgcGVseHUgcGxpc2UgY28ga3VrdGUnJyBpcyByZWFkICcndGknJyAoJydwZWx4dSBw bGlzZScnKSAnJ2NvIGt1a3RlJycsIHdoaWNoIGlzIHRoZSBzYW1lIGFzICcndGkga3VrdGUgcGVs eHUgYm8gcGxpc2UnJy4gVGhpcyBhbHNvIG1lYW5zIHRoYXQgYSAnJ2tl4oCma2UnZScnIGNhbm5v dCBlbmNvbXBhc3MgYSAnJ2NvJycuCgpUaGUgY21hdm8gb2YgdGhlIHNlbG1hJ28gR0loQSwgdGhl IGJyaWRpLXRhaWwgYWZ0ZXJ0aG91Z2h0IGxvZ2ljYWwgY29ubmVjdGl2ZXMsIGhvd2V2ZXIsIGJp bmRzIGV2ZW4gbG9vc2VyIHRoYW4gJydjbycnLiBUaGlzIGlzIGluIG9yZGVyIHRvIHRvdGFsbHkg YXZvaWQgY29uZnVzaW9uIGFib3V0IHdoaWNoIHNlbGJyaSBiaW5kcyB0byB3aGljaCBpbiBhIEdJ aEEtY29uc3RydWN0LiBUaGUgYW5zd2VyIGlzIHNpbXBsZTogVGhlIEdJaEEgbmV2ZXIgZW1jb21w YXNzZXMgYW55IHNlbGJyaS1ncm91cHMuCgoKCkhvdyBjYW4geW91IGV4cHJlc3Mg4oCdSSBhbSBh biBpbXBvcnRhbnQgQW1lcmljYW4gYnV5ZXIgb2YgY29tcHV0ZXJz4oCdIHVzaW5nIGEgJydjbycn PwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgc2thbWkgdGUgdmVjbnUgY28gdmFqbmkgbWVy a28nJ35+CgoKCklmIGl0J3Mgb2YgYW55IHVzZSwgdGhpcyBpcyB0aGUgbGlzdCBvZiBkaWZmZXJl bnQga2luZCBvZiBzZWxicmkgZ3JvdXBlcnMgcmFua2VkIGJ5IHN0cmVuZ3RoOgoKCgoxLiAgICAn J2JvJycgYW5kICcna2UuLmtlJ2UnJwoKCgoyLiAgICBsb2dpY2FsIGNvbm5lY3RpdmVzIG90aGVy IHRoYW4gYnJpZGktdGFpbCBhZnRlcnRob3VnaHQgbG9naWNhbCBjb25uZWN0aXZlcyAoZXhwbGFp bmVkIGluIGxlc3NvbiB0d2VudHktZml2ZSkKCgoKMy4gICAgbm8gZ3JvdXBpbmcgd29yZHMKCgoK NC4gICAgJydjbycnCgoKCjUuICAgIGJyaWRpLXRhaWwgYWZ0ZXJ0aG91Z2h0IGxvZ2ljYWwgY29u bmVjdGl2ZXMgKGFsc28gaW4gbGVzc29uIHR3ZW50eS1maXZlKQoKCgpUaGUgcmVzdCBvZiB0aGlz IGxlc3NvbiB3aWxsIG5vdCBiZSBvbiBzZWxicmkgZ3JvdXBpbmcsIGJ1dCBtdWNoIGxpa2UgbGVz c29uIHNldmVudGVlbiBtZW50aW9uIGFzc29ydGVkIHdvcmRzLCB3aGljaCBjYW4gYmUgb2YgdXNl LgoKCgonJ2JvJycgaGFzIGFub3RoZXIgdXNlLCB3aGljaCBzZWVtcyBzZXBhcmF0ZSBmcm9tIHNl bGJyaSBncm91cGluZzogSXQgY2FuIGFsc28gYmluZCBhIHN1bXRjaXRhIHRvIGFuIGVudGlyZSBi cmlkaSwgc28gdGhhdCB0aGUgY29udGVudCBvZiB0aGUgc3VtdGNpdGEgaXMgbm90IGEgc3VtdGks IGJ1dCB0aGUgZm9sbG93aW5nIGJyaWRpLiBUaGlzIGlzIGJlc3QgZXhwbGFpbmVkIHdpdGggYW4g ZXhhbXBsZS4KCl9fJyd4ZWJuaScnX18geDEgaGF0ZXMgeDIKCicnbWkgZGFyeGkgZG8gLmkgbXUn aSBibyBtaSBkbyB4ZWJuaScnIOKAkyDigJxJIGhpdCB5b3UsIHdpdGggbW90aXZhdGlvbiB0aGF0 IEkgaGF0ZSB5b3Uu4oCdIEhlcmUgdGhlICcnYm8nJyBiaW5kcyAnJ211J2knJyB0byB0aGUgZm9s bG93aW5nIGJyaWRpLgoKVGhpcyBpcyB3aGVyZSB0aGUgdGVjaG5pY2FsIGRpZmZlcmVuY2UgYmV0 d2VlbiB0ZW5zZSBzdW10Y2l0YSBhbmQgb3RoZXIgc3VtdGNpdGEgaXMgcmVsZXZhbnQuIFlvdSBz ZWUsIHdoZW4gYmluZGluZyBhIG5vcm1hbCBzdW10Y2l0YSB0byBhIGJyaWRpIHdpdGggJydibycn LCBpdCBtZWFucyB0aGF0IHRoZSBmb2xsb3dpbmcgYnJpZGkgc29tZWhvdyBmaXRzIGludG8gdGhl IHN1bXRpIHBsYWNlIG9mIHRoZSBzdW10Y2l0YS4gRm9yIHRoZSByZWFzb24gb2YgR29kIEtub3dz IFdoeSwgYmluZGluZyBvbmUgb2YgdGhlIHdvcmRzICcnYmEnJyBvciAnJ3B1JycgdG8gYSBicmlk aSBoYXMgdGhlIGV4YWN0IG9wcG9zaXRlIGVmZmVjdC4gRm9yIGV4YW1wbGUsIGluIHRoZSBicmlk aSAnJ21pIGRhcnhpIGRvIC5pIGJhIGJvIGRvIGNpbmppa2NhJycsIG9uZSB3b3VsZCBhc3N1bWUg dGhhdCB0aGUgc2Vjb25kIGJyaWRpIGlzIHNvbWVob3cgZmlsbGVkIGludG8gdGhlIHN1bXRpIHBs YWNlIG9mICcnYmEnJywgbWVhbmluZyB0aGF0IHRoZSBicmlkaSBmaXJzdCB1dHRlcmVkIHRvb2sg cGxhY2UgaW4gdGhlIGZ1dHVyZSBvZiB0aGUgc2Vjb25kIGJyaWRpLiBUaGF0J3Mgbm90IHRoZSBj YXNlLCBob3dldmVyLCBhbmQgdGhlIGNvcnJlY3QgdHJhbnNsYXRpb24gb2YgdGhhdCB1dHRlcmFu Y2Ugd291bGQgYmUgIkkgaGl0IHlvdS4gQWZ0ZXJ3YXJkcywgeW91IGZsaXJ0Ii4gVGhpcyB3ZWly ZCBydWxlIGlzIGFjdHVhbGx5IG9uZSBvZiB0aGUgbWFpbiBvYnN0YWNsZXMgdG8gYSB1bmlmaWNh dGlvbiBvZiBhbGwgc3VtdGNpdGEgaW50byBvbmUgc2luZ2xlIHdvcmQgY2xhc3MuIEFub3RoZXIg ZGlmZmVyZW5jZSBpcyB0aGF0IHRlbnNlLXN1bXRjaXRhIGNhbiBiZSBlbGlkZWQsIGV2ZW4gdGhv dWdoIHRoZXkgYXBwbHkuIFRoaXMgcnVsZSBtYWtlcyBtb3JlIHNlbnNlLCBzaW5jZSB3ZSBvZnRl biBjYW4gYXNzdW1lIGJyaWRpIGlzIHBsYWNlZCBpbiBhIHRpbWUgYW5kIHNwYWNlLCBidXQgd2Ug Y2FuJ3QgYXNzdW1lIHRoYXQgdGhlIHN1bXRjaXRhIG9mIEJBSSBhcHBsaWVzLgoKCgpUaGUgdW5v ZmZpY2lhbCB3b3JkICcnbWUnb2knJyBpcyBlcXVpdmFsZW50IHRvIG1lIGxhJ2UgJyd6bydvaScn LCB3aGljaCBtZWFucyB0aGF0IGl0IGNvbnZlcnRzIHRoZSBjb250ZW50IG9mIHRoZSBuZXh0IHdv cmQgaW50byBhIHNlbGJyaS4gSXQgaXMgdXNlZCB0byBpbnZlbnQgYnJpdmxhIG9uIHRoZSBmbHk6 ICcnbWkgY2EgemdhbmEgbGEgbWUnb2kgWC1maWxlcycnIGZvciDigJxJIG5vdyB3YXRjaCBYLWZp bGVz4oCdLiBMaWtlICcnem8nb2knJyBhbmQgJydsYSdvaScnLCBpdCBpcyBub3Qgc3VwcG9ydGVk IGJ5IHRoZSBvZmZpY2lhbCBncmFtbWFyLCBhbmQgW2h0dHBzOi8vZ3JvdXBzLmdvb2dsZS5jb20v ZC90b3BpYy9sb2piYW4vRlkybTRrcUpfdGcvZGlzY3Vzc2lvbnxtdWNoIHByb2JsZW1hdGljIGlu IHBhcnNpbmcgd2l0aCBhbiBleHBlcmltZW50YWwgZ3JhbW1hcl0uCgoKClRoZSB3b3JkICcnZ2kn JyBpcyBzdHJhZ2Uga2luZCBvZiBicmlkaSBzZXBhcmF0b3IsIGFuYWxvZ291cyB0byAnJy5pJycs IGJ1dCB0byBteSBrbm93bGVkZ2UsIGl0IGlzIHVzZWQgaW4gb25seSB0d28gZGlmZmVyZW50IGtp bmRzIG9mIGNvbnN0cnVjdHM6IE1vc3Qgb2Z0ZW4gd2l0aCBsb2dpY2FsIGNvbm5lY3RpdmVzLCBl eHBsYWluZWQgaW4gbGVzc29uIHR3ZW50eS1maXZlLCBidXQgYWxzbyB3aXRoIHN1bXRjaXRhLiBX aXRoIHN1bXRjaXRhIGl0IGNyZWF0ZXMgYSB1c2VmdWwsIGJ1dCBoYXJkbHkgc2VlbiwgY29uc3Ry dWN0OgoKJydtdSdpIGdpIEJSSURJLTEgZ2kgQlJJREktMicnLCB3aGljaCBpcyBlcXVpdmFsZW50 IHRvICcnQlJJREktMiAuaSBtdSdpIGJvIEJSSURJLTEnJy4gVGhlcmVmb3JlLCB0aGUgZXhhbXBs ZSBhYm92ZSwgd2hpY2ggZXhwbGFpbmVkIHdoeSBJIGhpdCB5b3UsIGNhbiBiZSB3cml0dGVuICcn bXUnaSBnaSBtaSB4ZWJuaSBkbyBnaSBtaSBkYXJ4aSBkbycnLCBvciB0byBwcmVzZXJ2ZSB0aGUg c2FtZSBvcmRlciBhcyB0aGUgb3JpZ2luYWwgc2VudGVuY2UsIHdlIGNhbiBjb252ZXJ0ICcnbXUn aScnIHdpdGggJydzZScnOiAnJ3NlIG11J2kgZ2kgbWkgZGFyeGkgZG8gZ2kgbWkgeGVibmkgZG8n Jy4KCkl0IGlzIGluIGV4YW1wbGVzIGxpa2UgdGhpcyB0aGF0ICcnZ2knJyByZWFsbHkgY2FuIHNo b3cgaXRzIHZlcnNhdGlsaXR5LiBJdCBkb2VzIG5vdCBqdXN0IHNlcGFyYXRlIHR3byBicmlkaSBs aWtlICcnLmknJyBkb2VzLCBidXQgY2FuIGFsc28gc2VwYXJhdGUgdHdvIGNvbnN0cnVjdHMgd2l0 aGluIGEgYnJpZGksIG1ha2luZyBhbGwgY29uc3RydWN0cyBvdXRzaWRlIHRoZSBzY29wZSBvZiAn J2dpJycgYXBwbHkgdG8gYm90aCBicmlkaSwgYXMgdGhpcyBleGFtcGxlIGRlbW9uc3RyYXRlczoK Cl9fJydjaW5iYScnX18geDEga2lzc2VzIHgyIGF0IGxvY3VzIHgzCgoKCl9fJyfigKIgW05vdGUg ZnJvbSBJbG1lbjogZ2kuLi5naS4uLiBjb25zdHJ1Y3QgaXMgb25seSB2YWxpZCB3aXRoIHN1bXRj aXRhLCBzbyBJIGhhZCB0byBjb3JyZWN0IHRoZSBleGFtcGxlcyBvZiB0aGUgcGFyYWdyYXBoIGJl bG93IChieSByZXBsYWNpbmcgdGhlIGZpcnN0ICJnaSIgd2l0aCAiZ2UiKS4gUGVyaGFwcyB0aGlz IHBhcmFncmFwaCBzaG91bGQgYmUgc2ltcGx5IHJlbW92ZWQ/XScnX18KCicnbWkgZ2UgcHJhbWkg ZG8gZ2kgY2luYmEgZG8nJyBsZWF2ZXMgbWkgb3V0c2lkZSB0aGUgY29uc3RydWN0LCBtYWtpbmcg aXQgYXBwbHkgdG8gYm90aCBicmlkaS4gVGhpcyBjYW4gYWxzbyBiZSBkb25lIHdpdGggJydkbycn LCB3aGljaCBpcyBhbHNvIHByZXNlbnQgaW4gYnJvdGggYnJpZGk6ICcnbWkgZ2UgcHJhbWkgZ2kg Y2luYmEgdmF1IGRvJycuIE5vdGUgdGhhdCAnJ3ZhdScnIGlzIG5lZWRlZCB0byBtYWtlIGRvIGFw cGVhciBvdXRzaWRlIHRoZSBzZWNvbmQgYnJpZGkuCgoKClRodXMsIHdlIGNhbiB3cml0ZSB0aGUg b3JpZ2luYWwgc2VudGVuY2Ugc2hvcnRlcjogJydtaSBtdSdpIGdpIHhlYm5pIGdpIGRhcnhpIHZh dSBkbycnLCBvciwgdG8gb21pdCBldmVuIHRoZSAnJ3ZhdScnLCB3ZSBjYW4gd3JpdGUgaXQgZXZl biBzaG9ydGVyIGFuZCBtb3JlIGVsZWdhbnRseTogJydtaSBkbyBtdSdpIGdpIHhlYm5pIGdpIGRh cnhpJycKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHktb25lIChDT0kpCgpJbiB0 aGlzIGxlc3NvbiwgeW91IHdpbGwgZmFtaWxpYXJpemUgeW91cnNlbGYgd2l0aCB2b2NhdGl2ZXMs IG9yICcnbWEnb2kgY29pJycuIFRoZXkgZ2V0IHRoZWlyIG93biBsZXNzb24sIG5vdCBiZWNhdXNl IHVuZGVyc3RhbmRpbmcgdGhlc2UgcHJvdmlkZXMgYSBiYXNpcyBmb3IgdW5kZXJzdGFuZGluZyBM b2piYW4gZ3JhbW1hciBpbiBnZW5lcmFsLCBvciBiZWNhdXNlIHRoZXkgYXJlIGhhcmQgdG8gdW5k ZXJzdGFuZCwgYnV0IHJhdGhlciBiZWNhdXNlIHRoZXkgYXJlIHZlcnkgb2Z0ZW4gdXNlZCBpbiBj YXN1YWwgc3BlZWNoLCBhbmQgdGhlcmUgYXJlIGEgbG90IG9mIHRoZW0uCgpBIHZvY2F0aXZlIGlz IHVzZWQgcGFydGx5IHRvIGRlZmluZSB3aG8gJydkbycnIHJlZmVycyB0by4gSWYgdGhlIHZvY2F0 aXZlIGlzIGZvbGxvd2VkIGJ5IGEgY21ldmxhLCB0aGUgY21ldmxhIGdldHMgYW4gaW1wbGllZCBs YSBpbiBmcm9udCBvZiBpdC4gSWYgYSBzZWxicmkgZm9sbG93cywgYSAnJ2xlJycgaXMgdXNlZCBh cyBhIGdhZHJpIGluc3RlYWQuCgpJbiB0aGVzZSBleGFtcGxlcywgSSB3aWxsIHVzZSB0aGUgdm9j YXRpdmUgJydjb2knJywgd2l0aCBtZWFucyDigJxIaeKAnSBvciDigJxIZWxsb+KAnS4KCklmIGEg cGVyc29uIGlzIGNhbGxlZCAnJ2xhICsgU0VMQlJJJycsIHVzaW5nIGEgdm9jYXRpdmUgd2l0aCBv bmx5IHRoZSBzZWxicmkgdG8gYWRkcmVzcyB0aGF0IHBlcnNvbiB3aWxsIG1lYW4geW91IHJlZmVy IHRvIGhlciBhcyBhY3R1YWxseSBiZWluZyB0aGUgeDEgb2YgdGhhdCBzZWxicmksIHdoaWNoIGlz IG9mdGVuIHdyb25nLiBJZiwgZm9yIGluc3RhbmNlLCBhIHBlcnNvbiBpcyBjYWxsZWQgJydsYSB0 c2FuaScnLCDigJxTa3nigJ0sIHNheWluZyAnJ2NvaSB0c2FuaScnIHJlZmVycyB0byBoZXIgYXMg YSAnJ2xlIHRzYW5pJycsIG1lYW5pbmcg4oCcSGksIHlvdSBza3nigJ0sIHdoaWxlICcnY29pIGxh IHRzYW5pIGNvcnJlY3RseScnIHJlZmVycyB0byBoZXIgYXMgc29tZW9uZSBjYWxsZWQgIlNreSIs IG1lYW5pbmcg4oCcSGkgU2t54oCdLiBUaGlzIGlzIGEgZnJlcXVlbnQgbWlzdGFrZSwgZXNwZWNp YWxseSBhbW9uZyBuZXcgTG9qYmFuaXN0cy4KCkFsbCB2b2NhdGl2ZXMgaGF2ZSBhIGZhJ29ybWEn byB3aGljaCBpcyBzb21ldGltZXMgcmVxdWlyZWQuIFRoaXMgaXMgJydkbyd1JycuIEl0J3MgbW9z dGx5IHVzZWQgaWYgYm90aCB0aGUgZmlyc3Qgd29yZCBhZnRlciB0aGUgdm9jYXRpdmUgcGhyYXNl IGFuZCB0aGUgbGFzdCB3b3JkIG9mIHRoZSBwaHJhc2UgaXMgYSBzZWxicmksIHNvIHRoYXQgaXQg cHJldmVudHMgZm9ybWluZyBhIHRhbnJ1OgoKCgpfXycnZG8ndScnX18gRW5kIHZvY2F0aXZlIHBo cmFzZS4gVXN1YWxseSBlbGlkYWJsZS4KCl9fJydrbGFrdScnX18geDEgY3JpZXMgeDIgKHRlYXJz KSBmb3IgcmVhc29uIHgzCgonJ2NvaSBsYSBnbGVraSBkbyd1IGtsYWt1IGZpIG1hJycg4oCdSGVs bG8gSGFwcHkuIFdoeSBjcnk/4oCdCgoKClRoZSBnZW5lcmljIHZvY2F0aXZlLCAnJ2RvaScnLCBk b2VzIG5vdGhpbmcgZXhjZXB0IGRlZmluaW5nIHdobyBpcyBiZWluZyByZWZlcnJlZCB0byBieSAn J2RvJyc6CgonJ2RvaSAuZXJuc3l0LiB4dSBkbyBkb3RjbyBtZXJrbycnIOKAnEVybnN0OiBBcmUg eW91IGEgR2VybWFuLUFtZXJpY2FuP+KAnQoKCgpBbGwgdGhlIG90aGVyIHZvY2F0aXZlcyBoYXZl IHNvbWUgY29udGVudCBiZXNpZGUgZGVmaW5pbmcgJydkbycnLiAnJ2NvaScnLCB3aGljaCB5b3Ug a25vdywgYWxzbyBtZWFucyDigJxIZWxsb+KAnSwgZm9yIGV4YW1wbGUuIE1hbnkgb2YgdGhlIHZv Y2F0aXZlcyBoYXZlIHR3byBvciB0aHJlZSBkZWZpbml0aW9ucyBsaWtlIHRoZSBhdHRpdHVkaW5h bHMuIExpa2UgYXR0aXR1ZGluYWxzLCB0aGlzIGlzIGJlY2F1c2UgdGhleSBjYW4gYmUgbW9kaWZp ZWQgd2l0aCAnJ2N1J2knJyBhbmQgJyduYWknJywgdGhvdWdoIG9ubHkgb25lIHZvY2F0aXZlIGhh cyB0aGUgJydjdSdpJyctZm9ybSBkZWZpbmVkLgoKU29tZSBpbXBvcnRhbnQgdm9jYXRpdmVzIGFy ZSBsaXN0ZWQgaW4gdGhlIHRhYmxlIGJlbG93LiBUaGVyZSBhcmUgb3RoZXJzLCBidXQgdGhvc2Ug YXJlIG5vdCB1c2VkIG11Y2guCgp8fHZvY2F0aXZlfFdpdGhvdXQgc3VmZml4fC1jdSdpfC1uYWkK CmNvaXxIZWxsb3wtfC0KCmNvJ298R29vZGJ5ZQl8LXwtCgpqZSdlfFVuZGVyc3Rvb2QgLyBPS3wt fE5vdCB1bmRlcnN0b29kCgpmaSdpfFdlbGNvbWV8LXxOb3Qgd2VsY29tZSBoZXJlCgpwZSd1fFBs ZWFzZXwtfC0KCmtpJ2V8VGhhbmtzfC18RGlzYXBwcmVjaWF0aW9uCgpyZSdpfFJlYWR5IHRvIHJl Y2lldmV8LXxOb3QgcmVhZHkKCmp1J2l8SGV5IXxBdCBlYXNlfElnbm9yZSBtZQoKdGEnYXxJbnRl cnJ1cHRpb258LXwtCgp2aSdvfFdpbGwgZG98LXxXaWxsIG5vdCBkbwoKa2Unb3xQbGVhc2UgcmVw ZWF0fC18Tm8gcmVwZWF0IG5lZWRlZAoKZGknYWl8d2VsbC13aXNofC18Y3Vyc2V8fAoKTm90aWNl IHRoYXQgJydkaSdhaScnIGlzIGV4cGVyaW1lbnRhbAoKCgoKCldoYXQgd291bGQgJydjb2kgY28n bycnIG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcR3JlZXRpbmdzIGluIHBhc3Npbmfi gJ0gb3Ig4oCcSGVsbG8gYW5kIEdvb2RieWXigJ1+fgoKCgonJ2plJ2UnJyBpcyB1c2VkIGFzIOKA nE9L4oCdLCBidXQgYWxzbyB0aGUgYXBwcm9wcmlhdGUgcmVzcG9uc2Ugd2hlbiByZWNlaXZpbmcg cHJhaXNlIG9yIHRoYW5rcyAoYXQgbGVhc3QsIGlmIHlvdSB3YW50IHRvIGJlIG1vZGVzdCksIGFz IGl0IGluZGljYXRlcyB0aGF0IHRoZSBwcmFpc2Ugb3IgdGhhbmtzIHdhcyBzdWNjZXNzZnVsbHkg dW5kZXJzdG9vZC4KCgoKVHJhbnNsYXRlICcna2knZSBzaWRqdSBiZSBtaSBiZWkgbG8gdmFqbmkg LmkgamUnZSAuamVuaWZ5bi4nJwoKX18nJ3NpZGp1JydfXyB4MSBoZWxwcyB4MiBkbyB4MwoKCgpB bnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoYW5rcywgeW91IGhlbHBlciBvZiBtZSB0byBkbyBzb21l dGhpbmcgaW1wb3J0YW50LuKAnSDigJxObyBwcm9ibGVtLCBKZW5uaWZlcuKAnX5+CgoKCkFuZCAn J2ZpJ2kgdGUgdmVjbnUgLmkgcGUndSBrbyBjaXRrYScnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6 4oCdV2VsY29tZSwgYnV5ZXIuIFBsZWFzZSBlYXQh4oCdfn4KCgoKJydyZSdpJycgaXMgdXNlZCB0 byBzaWduYWwgdGhhdCB5b3UgYXJlIHJlYWR5IHRvIGJlIHNwb2tlbiB0by4gSXQgY2FuIGJlIHVz ZWQgYXMgdGhlIExvamJhbiBlcXVpdmFsZW50IG9mIOKAnFdoYXQgY2FuIEkgZG8gZm9yIHlvdT/i gJ0gb3IgcGVyaGFwcyByZXBsYWNlIOKAnEhlbGxv4oCdLCB3aGVuIHNwZWFraW5nIG9uIGEgcGhv bmUuICcncmUnaSBuYWknJyBjYW4gbWVhbiDigJxBRkvigJ0gb3Ig4oCcQmUgdGhlcmUgaXMgYSBz ZWNvbmQu4oCdCgoKClRyYW5zbGF0ZTog4oCcSGVsbG8sIHdoYXQgY2FuIEkgZG8gZm9yIHlvdSwg SW50ZXJwcmV0ZXIvVHJhbnNsYXRlcj/igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ2NvaSBy ZSdpIGxhIGZhbnZhJyd+fgoKCgonJ3RhJ2EnJyBpcyB1c2VkIHdoZW4gYXR0ZW1wdGluZyB0byBw b2xpdGVseSBpbnRlcnJ1cHQgc29tZW9uZSBlbHNlLiBXaGF0IHdvdWxkIGJlIGdvb2QgcmVzcG9u c2VzIHRvIHRoaXM/CgoKClRyYW5zbGF0ZTogJyd0YSdhIHJvIGRvIG1pIGNvJ2EgY2xpdmEnJwoK X18nJ2NsaXZhJydfXyB4MSBsZWF2ZXMgeDIgdmlhIHJvdXRlIHgzCgoKCkFuc3dlcjogfn5ncmV5 LGdyZXk64oCcRXhjdXNlIG1lIGZvciBpbnRlcnJ1cHRpbmcsIGV2ZXJ5b25lLiBJIGJlZ2luIHRv IGxlYXZlIG5vd+KAnSBOb3RpY2UgdGhhdCBubyBmYSdvcm1hJ28gb3IgJycuaScnIGlzIG5lZWRl ZC5+fgoKCgonJ2tlJ28nJyBpcyB1c2VkIGEgbG90IHdoZW4gaW5leHBlcmllbmNlZCBMb2piYW5p c3RzIHNwZWFrIHRvZ2V0aGVyIHZvY2FsbHkuIEl0J3MgcXVpdGUgYSBoYW5keSB3b3JkCgpfXycn c3V0cmEnJ19fIHgxIGlzIHF1aWNrIGF0IGRvaW5nIHgyCgoKClRyYW5zbGF0ZTogJycueSBrZSdv IHN1dHJhIHRhdmxhJycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxVaCwgUGxlYXNlIHJlcGVh dCwgeW91IHF1aWNrIHNwZWFrZXIu4oCdfn4KCgoKQW5kIOKAnE9rYXkgb2theSwgSSBnb3QgaXQg YWxyZWFkeSEgSSdsbCBkbyBpdCHigJ0KCgoKQW4gYW5zd2VyOiB+fmdyZXksZ3JleTonJ2tlJ28g bmFpIC51aSBuYWkgdmknbycnfn4KCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHkt dHdvIChxdWFudGlmeWluZyBzdW10aSkKCk1vc3Qgb3RoZXIgbGVhcm5pbmcgbWF0ZXJpYWxzIHN1 Y2ggYXMgVGhlIENvbXBsZXRlIExvamJhbiBMYW5ndWFnZSBhbmQgTG9qYmFuIGZvciBCZWdpbm5l cnMgd2VyZSB3cml0dGVuIGJlZm9yZSB0aGUgb2ZmaWNpYWwgYWRvcHRhdGlvbiAieG9ybG8iLCBh IGNoYW5nZSBpbiB0aGUgcnVsZXMgYWJvdXQgZ2FkcmkgZGVmaW5pdGlvbiBhbmQgZ2FkcmkgcXVh bnRpZmljYXRpb24uIFRoZSBvYnNvbGV0ZW5lc3Mgb2Ygc29tZSBvZiB0aGUgdGV4dCBpbiB0aGUg b2xkZXIgbGVhcm5pbmcgbWF0ZXJpYWxzIHdhcyBhIG1ham9yIGNhdXNlIGZvciB0aGUgbW90aXZh dGlvbiB0byB3cml0ZSB0aGVzZSBsZXNzb25zLiBVbmZvcnR1bmF0ZWx5IGZvciBtZSwgcXVhbnRp ZmljYXRpb24gb2Ygc3VtdGkgY2FuIGJlY29tZSBhIHZlcnkgY29tcGxleCB0b3BpYyB3aGVuIHRo ZSBpbXBsaWNhdGlvbnMgb2YgY2VydGFpbiBydWxlcyBhcmUgZGlzY3Vzc2VkIGluIGRldGFpbC4g SW4gb3JkZXIgdG8gZnVsZmlsbCB0aGUgZ29hbCBvZiB0aGlzIHRleHQgYmVpbmcgYWNjdXJhdGUg ZW5vdWdoIHRvIHJlcHJlc2VudCB0aGUgb2ZmaWNpYWwgImdvbGQgc3RhbmRhcmQiIEJQRksgcnVs ZXMsIHRoaXMgY2hhcHRlciB3YXMgYW1vbmcgdGhlIGxhc3Qgb25lcyBmaW5pc2hlZCBhbmQgdGhl IG9uZXMgbW9zdCBmcmVxdWVudHkgcmV3cml0dGVuLiBJIHN0cm9uZ2x5IGVuY291cmFnZSBhbnlv bmUgd2hvIGZpbmRzIG1pc3Rha2VzIGluIHRoaXMgdGV4dCB0byBjb250YWN0IG1lIGluIG9yZGVy IGZvciB0aGVtIHRvIGJlIGNvcnJlY3RlZC4KCkhhdmluZyBzYWlkIHRoYXQgZGlzY2xhaW1lciwg bGV0J3MgZ2V0IHN0YXJ0ZWQ6CgpUaGUgZmlyc3QgY29uY2VwdCB5b3Ugc2hvdWxkIGtub3cgYWJv dXQgaXMgImRpc3RyaWJ1dGl2aXR5Ii4gSW4gbGVzc29uIGZvdXJ0ZWVuIGkgdXNlZCB0aGUgd29y ZCAiaW5kaXZpZHVhbHMiIGFib3V0IGEgZ3JvdXAgb2Ygb2JqZWN0cyBjb25zaWRlcmVkIGRpc3Ry aWJ1dGl2ZWx5LiBBIGRpc3RyaWJ1dGl2ZSBncm91cCAnJ2tvJ2EnJyBpcyBmb3IgYW55IHNlbGJy aSAnJ2Jyb2RhJycgYSBncm91cCBzdWNoIHRoYXQsIGlmICcna28nYSBicm9kYScnIGlzIHRydWUs IGl0IG1lYW5zIHRoYXQgZXZlcnkgbWVtYmVyIG9mIHRoZSBncm91cCBhbHNvIGlzIGNoYXJhY3Rl cml6ZWQgYnkgJydicm9kYScnLiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byBub24tZGlzdHJp YnV0aXZpdHkgKHdoaWNoIG1hc3NlcyBoYXZlKSwgaW4gd2hpY2ggdGhlIGdyb3VwIGhhcyBvdGhl ciBwcm9wZXJ0aWVzIHRoYW4gZWFjaCBvZiB0aGUgaW5kaXZpZHVhbHMgZG8uIFRoZSBkaXN0aW5j dGlvbiBiZXR3ZWVuIGRpc3RyaWJ1dGl2aXR5IChpbmRpdmlkdWFsLWxpa2UpIGFuZCBub24tZGlz dHJpYnV0aXZpdHkgKG1hc3MtbGlrZSkgaXMgb2YgcmVsZXZhbmNlIHdoZW4gcXVhbnRpZnlpbmcg c3VtdGkuCgpMZXQgdXMgZmlyc3QgY29uc2lkZXIgaG93IG9uZSBjYW4gcXVhbnRpZnkgZGVjcmlw dGlvbiBzdW10aSwgd2hpY2ggYXJlIHN1bXRpIG9mIHRoZSBmb3JtIEdBRFJJIEJSSVZMQS4gVGhl IG51bWJlciBzdHJpbmcgd2hpY2ggZG9lcyB0aGUgcXVhbnRpZmljYXRpb24gY2FuIGJlIHBsYWNl ZCBiZWZvcmUgdGhlIGdhZHJpLCBpbiB3aGljaCBjYXNlIGl0IGlzIHJlZmVycmVkIHRvIGFzIGFu IF9fb3V0ZXIgcXVhbnRpZmllcl9fLCBhbmQgaXQgY2FuIGJlIHBsYWNlZCBiZXR3ZWVuIHRoZSBn YWRyaSBhbmQgdGhlIGJyaXZsYSwgaW4gd2hpY2ggY2FzZSBpdCdzIGFuIF9faW5uZXIgcXVhbnRp Zmllcl9fLiBBbnkga2luZCBvZiBudW1iZXIgc3RyaW5nIGNhbiBhY3QgYXMgYSBxdWFudGlmaWVy LgoKVGhlIHJ1bGVzIGZvciBob3cgaW5uZXIgYW5kIG91dGVyIHF1YW50aWZpZXJzIGFmZmVjdHMg c3VtdGkgZGVwZW5kIG9uIHRoZSBraW5kIG9mIGdhZHJpIHdoaWNoIGlzIHVzZWQ6CgoKCi0gLScn bG8nJyBhbmQgJydsZScnLSAtIEFuIGlubmVyIHF1YW50aWZpZXIgdGVsbHMgdXMgaG93IG1hbnkg b2JqZWN0cyBhcmUgYmVpbmcgc3Bva2VuIG9mIC0gaG93IG1hbnkgb2JqZWN0cyBhcmUgaW4gdGhl IGRpc2NvdXJzZSB0b3RhbC4gSWYgYW4gb3V0ZXIgcXVhbnRpZmllciBpcyBwcmVzZW50LCB0aGUg c3VtdGkgaXMgZGlzdHJpYnV0ZWQgb3ZlciB0aGF0IGFtb3VudCBvZiBvYmplY3RzLiBBcyBzdGF0 ZWQgZWFybGllciwgaWYgbm8gb3V0ZXIgcXVhbnRpZmllciBpcyBwcmVzZW50LCBpdCdzIHZhZ3Vl IGhvdyBtYW55IG9iamVjdHMgdGhlIHNlbGJyaSBhcHBsaWVzIHRvICh0aG91Z2ggbm90IG5vbmUp LCBhbmQgd2hldGhlciBpdCBkb2VzIHNvIGRpc3RyaWJ1dGl2ZWx5IG9yIG5vbi1kaXN0cmlidXRp dmVseS4gRXhhbXBsZXMgYXJlIGFsd2F5cyBhIGdvb2QgaWRlYSwgc28gaGVyZSB0aGV5IGFyZToK CicnbXUgbG8gbXUgYmFrbmkgY3Ugc2UgamlybmEnJyAtIFRoZSBpbm5lciBxdWFudGlmaWVyIG9m IGZpdmUgdGVsbHMgdXMgdGhhdCB3ZSBzcGVhayBhYm91dCBmaXZlIHBpZWNlcyBvZiBjYXR0bGUs IGFuZCB0aGUgb3V0ZXIgcXVhbnRpZmllciBvZiBmaXZlIHRlbGxzIHVzIHRoYXQgdGhlIHNlbGJy aSBpcyB0cnVlIGZvciBlYWNoIG9mIHRoZSBmaXZlLiBUaGVyZWZvcmUsIGl0IG1lYW5zICJBbGwg dGhlIGZpdmUgY293cyBoYWQgaG9ybnMiLiAKCl9fJydiYWtuaScnX18geDEgaXMgYSBjb3cvb3gv Y2F0dGxlL2NhbGYgZXRjIG9mIGJyZWVkIHgyCgpfXycnamlybmEnJ19fIHgxIGlzIHRoZSBob3Ju IG9mIHgyIChtZXRhcGhvcjogYW55IHBvaW50ZWQgZXh0cmVtaXR5KQoKCgpXaGF0IGRvZXMgdGhl IGZvbGxvd2luZyBicmlkaSBtZWFuPwoKJydsbyBydSd1cmd1YnVwdSBiZSBsaSByZSBwaSB6ZSBt dSBjdSBqZGltYSBsbyBwYSByZSBzb3ZkYScnCgpfXycncnUndXJndWJ1cHUnJ19fIHgxIGlzIG1l YXN1cmVzIHRvIGJlIHgyIEJyaXRpc2ggcG91bmRzIChHQlApCgpfXycnamRpbWEnJ19fIHgxIGlz IHRoZSBwcmljZSBvZiB4MiB0byBidXllciB4MyBzZXQgYnkgdmVuZG9yIHg0CgpfXycnc292ZGEn J19fIHgxIGlzIGEgZ2FtZXRlIChlZ2cvc3Blcm0pIG9mIHgyCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OiAiVHdlbHZlIGVnZ3MgY29zdCAyLjc1IEJyaXRpc2ggcG91bmRzIiB3aGljaCwgYXMgdGhlIEVu Z2xpc2ggdHJhbnNsYXRpb24sIGNvdWxkIG1lYW4gYm90aCB0aGF0IHRoZXkgY29zdCAyLjc1IGVh Y2ggKGRpc3RyaWJ1dGl2ZWx5KSBvciB0aGF0IGFsbCB0d2VsdmUgdG9nZXRoZXIgY29zdCAyLjc1 IChub24tZGlzdHJpYnV0aXZlbHkpfn4KCgoKJydzbyBsZSB0YSBwYSBwYSBjaSdlcmtlaSBjdSBj bGFtYXUgbWknJyAobm90aWNlIHRoYXQgdGhlICcndGEnJyBnb2VzIGJlZm9yZSB0aGUgaW5uZXIg cXVhbnRpZmllcikKCl9fJydjaSdlcmtlaScnX18geDEgcGxheXMgZ2FtZSB4MiBnb3ZlbmVyZCBi eSBydWxlcyB4MyBpbnRlcnJlbGF0aW5nIGdhbWUgcGFydHMgeDQge3RoaXMgaXMgdXNlZCB0byB0 cmFuc2xhdGUgInBsYXkiIGluIHRoZSBzZW5zZSAicGxheSBhIGdhbWUiIHJhdGhlciB0aGFuLCBm b3IgaW5zdGFuY2UgInBsYXlpbmcgcHJldGVuZCIgb3IgInBsYXlpbmcgSG91c2UifQoKX18nJ2Ns YW1hdScnX18geDEgaXMgdGFsbGVyL2xvbmdlciB0aGFuIHgyIGluIGRpcmVjdGlvbiB4MyBteSBt YXJpZ2luIHg0CgpBbnN3ZXI6IH5+Z3JleSxncmV5OlRoZSBpbm5lciBzdGF0ZXMgdGhlcmUgYXJl IDExIHBsYXllcnMgaW4gdGhlIGRpc2NvdXJzZSwgYW5kIHRoZSBvdXRlciBzdGF0ZXMgdGhhdCB0 aGUgc2VsYnJpIGFwcGxpZXMgdG8gbmluZSBvZiB0aGVtIGRpc3RyaWJ1dGl2ZWx5LiBUaHVzIGl0 IG1lYW5zICJOaW5lIG9mIHRoZSBlbGV2ZW4gcGxheWVycyBhcmUgdGFsbGVyIHRoYW4gbWUifn4K CgoKVGhlcmUgYXJlIGEgZmV3IHBvaW50cyB0aGF0IG5lZWRzIHRvIGJlIHJhaXNlZCByZWdhcmRp bmcgcXVhbnRpZmljYXRpb24gb2YgJydsbycnLycnbGUnJzoKCkZpcnN0bHksICcnbG8nJyBpcyB1 bmlxdWUgaW4gdGhhdCAie251bWJlcn0ge3NlbGJyaX0iIGlzIGRlZmluZWQgYXMgIntudW1iZXJ9 ICcnbG8nJyB7c2VsYnJpfSIuIFRoZXJlZm9yZSwgJydjaSBnZXJrdSBjdSBiYXRjaSByZSBuYW5t dScnIGlzIGRlZmluZWQgdG8gYmUgJydjaSBsbyBnZXJrdSBjdSBiYXRjaSByZSBsbyBuYW5tdScn LCB3aGljaCBjb25zaWRlcnMgYm90aCB0aGUgZ3JvdXAgb2YgZG9ncyBhbmQgdGhlIGdyb3VwIG9m IG1lbiBkaXN0cmlidXRpdmVseS4gVGhlcmVmb3JlLCBlYWNoIG9mIHRoZSB0aHJlZSBkb2dzIGJp dCBlYWNoIG9mIHRoZSB0d28gbWVuLCB3aXRoIHNpeCBiaXRpbmcgZXZlbnRzIGluIHRvdGFsLgoK X18nJ2JhdGNpJydfXyB4MSBiaXRlcy9waW5jaGVzIHgyIGF0IGxvY3VzIHgzIHVzaW5nIHg0IGFz IHBpbmNoaW5nIHRvb2wuCgpTZWNvbmRseTogV2hhdCBpZiB0aGVyZSBpcyBubyBvdXRlciBxdWFu dGlmaWVyPyBEb2VzIHRoaXMgbWVhbiB0aGF0IGl0IF9faXNfXyB0aGVyZSwgYnV0IGl0J3MgZWxp ZGVkPyBOb3BlLiBJZiB0aGVyZSBpcyBhbnkga2luZCBvZiBvdXRlciBxdWFudGlmaWVyLCBlbGlk ZWQgb3Igbm90LCBpdCB3b3VsZCBmb3JjZSB0aGUgc3VtdGkgdG8gYmUgZGlzdHJpYnV0aXZlLCB3 aGljaCB3b3VsZCBtZWFuIHRoYXQgbmVpdGhlciAnJ2xvJycgbm9yICcnbGUnJyBjb3VsZCBiZSB1 c2VkIHRvIGRlc2NyaWJlIG1hc3Nlcy4gVGhlcmVmb3JlLCBpZiBubyBvdXRlciBxdWFudGlmaWVy IGlzIHByZXNlbnQsIGl0J3Mgbm90IG9ubHkgZWxpZGVkIC0gaXQncyBzaW1wbHkgbm90IHRoZXJl LiBTdW10aSB3aXRob3V0IGFuIG91dGVyIHF1YW50aWZpZXIgY2FuIGJlIHJlZmVycmVkIHRvIGFz ICJjb25zdGFudHMiLCBldmVuIHRob3VnaCBJIHdvbid0LgoKVGhpcmRseSwgaXQgbWFrZXMgbm8g c2Vuc2UgdG8gaGF2ZSBhbiBvdXRlciBxdWFudGlmaWVyIHdoaWNoIGlzIGxhcmdlciB0aGFuIHRo ZSBpbm5lciBvbmUuIEl0IG1lYW5zIHRoYXQgdGhlIHNlbGJyaSBob2xkcyB0cnVlIGZvciBtb3Jl IHN1bXRpIHRoYW4gYXJlIHByZXNlbnQgaW4gdGhlIGRpc2NvdXJzZSAtIGJ1dCBzaW5jZSB0aGV5 IGFwcGVhciBpbiBhIGJyaWRpLCB0aGV5IF9fYXJlX18gcGFydCBvZiB0aGUgZGlzY291cnNlLiBJ dCdzIGdyYW1tYXRpY2FsIHRvIGRvIGl0LCB0aG91Z2guCgpMYXN0bHksIHBsYWNpbmcgYSAnJ2xv Jycgb3IgYSAnJ2xlJycgaW4gZnJvbnQgb2YgYSBzdW10aSBpcyBncmFtbWF0aWNhbCwgaWYgdGhl cmUgaXMgYW4gaW5uZXIgcXVhbnRpZmllciBwcmVzZW50LiAiJydsbycnLycnbGUnJyB7bnVtYmVy fSB7c3VtdGl9IiBpcyBkZWZpbmVkIGFzICInJ2xvJycvJydsZScnIHtudW1iZXJ9ICcnbWUnJyB7 c3VtdGl9Ii4KClNvIHdoYXQgd291bGQgdGhpcyBtZWFuPyAnJ21pIG5lbGNpIGxvaSBtaSBicmlq dSBrYW5zYSAuaSBrdSdpIGNpIGxvIHJlIG11IGppJ2kgcmkgY3UgbGF6bmknJwoKX18nJ2JyaWp1 JycnX18geDEgaXMgYW4gb2ZmaWNlIGZvciB3b3JrZXIgeDIgYXQgbG9jYXRpb24geDMKCl9fJydr YW5zYScnX18geDEgYWNjb21wYW5pZXMgeDIgaW4gYWN0aW9uL3N0YXRlL2VudGVycHJpc2UgeDMK Cl9fJydsYXpuaScnX18geDEgaXMgbGF6eSwgYXZvaWRpbmcgd29yayBjb25jZXJuaW5nIHgyCgpB bnN3ZXI6IH5+Z3JleSxncmV5OiJJIGxpa2UgbXkgY28td29ya2VycywgYnV0IHRocmVlIG91dCBv ZiBhYm91dCB0d2VudHkgZml2ZSBvZiB0aGVtIGFyZSBsYXp5In5+CgoKCi0gLScnbGEnJy0gLSBB biBpbm5lciBxdWFudGlmaWVyIGlzIGdyYW1tYXRpY2FsIGlmIHRoZSBuYW1lIGlzIGEgc2VsYnJp IC0gaW4gdGhpcyBjYXNlLCBpdCdzIGNvbnNpZGVyZWQgcGFydCBvZiB0aGUgbmFtZS4gQW4gb3V0 ZXIgcXVhbnRpZmllciBpcyB1c2VkIHRvIHF1YW50aWZ5IGRpc3RyaWJ1dGl2ZWx5IG92ZXIgc3Vj aCBpbmRpdmlkdWFscyAobXVjaCBsaWtlICcnbG8nJy8nJ2xlJycpIEl0J3MgZ3JhbW1hdGljYWwg d2hlbiBwbGFjZWQgaW4gZnJvbnQgb2Yge251bWJlcn0ge3N1bXRpfSwgaW4gd2hpY2ggY2FzZSwg dGhlIGJvdGggdGhlIG51bWJlciBhbmQgdGhlIHN1bXRpIGlzIGNvbnNpZGVyZWQgdGhlIG5hbWUu CgoKClRyYW5zbGF0ZSB0aGlzOiAnJ3JlIGxhIGNpIGJhcmd1IGN1IGppYm5pIGxlIG1pIHpkYW5p JycKCkFuc3dlcjogfn5ncmV5LGdyZXk6IFR3byAiVGhlIFRocmVlIEFyY2hlcyIgYXJlIGxvY2F0 ZWQgY2xvc2UgdG8gbXkgaG91c2UiIChQZXJoYXBzIFRoZSBUaHJlZSBBcmNoZXMgYXJlIGEga2lu ZCBvZiByZXN0YXVyYW50Pyl+fgoKCgotIC0nJ2xvaScnIGFuZCAnJ2xlaScnLSAtIEFuIGlubmVy IHF1YW50aWZpZXIgdGVsbHMgdXMgaG93IG1hbnkgbWVtYmVycyB0aGVyZSBhcmUgaW4gdGhlIG1h c3MvbWFzc2VzIGluIHF1ZXN0aW9uLiBBbiBvdXRlciBxdWFudGlmaWVyIHF1YW50aWZpZXMgZGlz dHJpYnV0aXZlbHkgeyF9IG92ZXIgdGhlc2UgbWFzc2VzCgpOb3RpY2UgaGVyZSB0aGF0IHdoaWxl IG1hc3NlcyBjb25zaXN0IG9mIGEgbnVtYmVyIG9mIG9iamVjdHMgY29uc2lkZXJlZCBub24tZGlz dHJpYnV0aXZlbHksIGFuIG91dGVyIHF1YW50aWZpZXIgYWx3YXlzIHRyZWF0cyBlYWNoIG9mIHRo ZXNlIG1hc3NlcyBhcyBhbiBpbmRpdmlkdWFsLgoKV2hlbiBwbGFjZWQgYmVmb3JlIGEgbnVtYmVy IHN0cmluZywgdGhlbiBhIHN1bXRpLCAnJ2xvaScnLycnbGVpJycgaXMgZGVmaW5lZCBhcyAiJyds byBndW5tYSBiZSBsbycnLycnbGUnJyB7bnVtYmVyfSB7c3VtdGl9IiAtICJUaGUgbWFzcyBjb25z aXN0aW5nIG9mIHRoZSB7bnVtYmVyfSBvZiB7c3VtdGl9Ii4KCgoKQXR0ZW1wdCB0byB0cmFuc2xh dGUgdGhpczogJydyZSBkZWkgZ3VubWEgcmUgbG9pIHplIHZhbHNpIC5pIGNhJ2UgcGEgZGVpIGph aSBnYXUgamV0bnUnJwoKX18nJ2d1bm1hJydfXyB4MSBpcyBhIG1hc3Mgb2YgdGhlIGluZGl2aWR1 YWxzIHgyCgpfXycndmFsc2knJ19fIHgxIGlzIGEgd29yZCwgbWVhbmluZyB4MiBpbiBsYW5ndWFn ZSB4MwoKX18nJ2NhJ2UnJ19fIEF0dGl0dWRpbmFsOiBFdmlkZW50aWFsOiBJIGRlZmluZQoKX18n J2pldG51JydfXyB4MSBpcyB0cnVlIGFjY29yZGluZyB0byBtZXRhcGh5c2ljcy9lcGlzdGVtb2xv Z3kgeDIKCkFuc3dlcjogfn5ncmV5LGdyZXk6ICJUaGVzZSB0d28gdXR0ZXJhbmNlcyBhcmUgYSBt YXNzLCBjb25zaXN0aW5nIG9mIHR3byBpbmRpdmlkdWFsIG1hc3NlcyBlYWNoIG9mIHNldmVuIHdv cmRzLiBJIGRlZmluZTogVGhpcyBvbmUgdXR0ZXJhbmNlIGNhdXNlcyB7aXR9IHRvIGJlIHRydWUu In5+CgoKCi0gLScnbGFpJyctIC0gTXVjaCBsaWtlICcnbGEnJywgYW4gaW5uZXIgcXVhbnRpZmll ciAod2hlbiBuYW1lIGlzIGEgc2VsYnJpKSBpcyBwYXJ0IG9mIHRoZSBuYW1lLiBBbiBvdXRlciBv bmUgcXVhbnRpZmllcyBkaXN0cmlidXRpdmVseS4gQmVmb3JlIGEgbnVtYmVyK3N1bXRpLCBib3Ro IHRoZSBzdW10aSBhbmQgdGhlIG51bWJlciBtYWtlIHVwIHRoZSBuYW1lLgoKV2hlbiBhIGZyYWN0 aW9uIGlzIHVzZWQgYXMgYW4gb3V0ZXIgcXVhbnRpZmllciB0byBxdWFudGlmeSAnJ2xvaScnLCAn J2xlaScnIG9yICcnbGFpJycsIG9uZSBzcGVha3MgYWJvdXQgb25seSBwYXJ0IG9mIHRoZSBtYXNz IChmb3IgaW5zdGFuY2UsICJoYWxmIG9mIHRoZSBKb2huc29ucyIgLSAnJ3BpIG11IGxhaSAuZGph bnN5bi4nJykuCgoKCi0gLScnbG8naScnIGFuZCAnJ2xlJ2knJy0gLSBBbiBpbm5lciBxdWFudGlm aWVyIGRlc2NyaWJlcyB0aGUgYW1vdW50IG9mIG1lbWJlcnMgb2YgdGhlIHNldC4gQW4gb3V0ZXIg cXVhbnRpZmllcyBkaXN0cmlidXRpdmVseSBvdmVyIHNldmVyYWwgb2Ygc3VjaCBzZXRzLiBXaGVu IHBsYWNlZCBiZWZvcmUgYSBudW1iZXIgYW5kIGEgc3VtdGksIGl0J3MgZGVmaW5lZCBhcyAiJyds byBzZWxjbWkgYmUgJydsbycnLycnbGUnJyB7bnVtYmVyfSB7c3VtdGl9IiAtICJUaGUgc2V0IG9m IHtudW1iZXJ9IHtzdW10aX0iLgoKCgpUcmFuc2xhdGUgJydsbydpIHJvIHNlIGNpbmtpIGN1IGJy YW1hdSBsYSdhIHBhIG5vIG5vIGxvJ2kgcm8gc2UgYm9neWthbWp1IGp1dHNpJycKCl9fJydjaW5r aScnX18geDEgaXMgYW4gaW5zZWN0IG9mIHNwZWNpZXMgeDIKCl9fJydsYSdhJydfXyBBdHRpdHVk aW5hbDogRGlzY3Vyc2l2ZTogUHJvYmFibHkKCl9fJydicmFtYXUnJ19fIHgxIGlzIGJpZ2dlciB0 aGFuIHgyIGluIGRpbWVuc2lvbiB4MyBieSBtYXJpZ2luIHg0CgpfXycnYm9neWthbWp1JydfXyB4 MSBpcyB0aGUgc3BpbmUgb2YgeDIKCl9fJydqdXRzaScnX18geDEgaXMgdGhlIHNwZWNpZXMgb2Yg Z2VudXMgeDIsIGZhbWlseSB4MyAuLi4gKG9wZW4gZW5kZWQgY2xhc3NpZmljYXRpb24pCgpBbnN3 ZXI6IH5+Z3JleSxncmV5OiAiVGhlIHNldCBvZiBhbGwgdGhlIHNwZWNpZXMgb2YgaW5zZWN0cyBp cyBwcm9iYWJseSBiaWdnZXIgdGhhbiBvbmUgaHVuZHJlZCBzZXRzIG9mIGFsbCBzcGVjaWVzIG9m IHZlcnRlYnJhdGVzIn5+CgoKCi0gLScnbGEnaScnLSAtIEFzIHdpdGggJydsYWknJwoKTGlrZSB3 aXRoIHRoZSBtYXNzIGdhZHJpLCBhbiBvdXRlciBxdWFudGlmaWVyIGJlZm9yZSBhIHNldCBnYWRy aSBlbmFibGVzIG9uZSB0byBzcGVhayBhYm91dCBhIGZyYWN0aW9uIG9mIGEgc2V0LiBJbiBmcm9u dCBvZiBhIG51bWJlciBhbmQgYSBzdW10aSwgaXQncyBkZWZpbmVkIGFzICInJ2xvIHNlbGNtaSBi ZSBsYScnIHtudW1iZXJ9IHtzdW10aX0iIC0gIlRoZSBzZXQgY29uc2lzdGluZyBvZiBUaGUge051 bWJlcn0ge1N1bXRpfSIgKGNvbnNpZGVyZWQgYSBuYW1lKQoKCgotIC0nJ2xvJ2UnJyBhbmQgJyds ZSdlJyctIC0gQXJlIGZvciBzb21lIHJlYXNvbiBub3QgaW5jbHVkZWQgaW4gdGhlIGN1cnJlbnRs eSBhY2NlcHRlZCBnYWRyaSBwcm9wb3NhbC4gSWYgb25lIHdlcmUgdG8gZXh0ZW5kIHRoZSBydWxl cyBvZiBhbm90aGVyIGdhZHJpLCAnJ2xvJycvJydsZScnIHdvdWxkIHByb2JhYmx5IGJlIHRoZSBi ZXN0IGNob2ljZSAoc2luY2UgYm90aCBvcGVyYXRlcyB3aXRoIGluZGl2aWR1YWxzIHJhdGhlciB0 aGFuIGdyb3VwcyksIGFuZCBzbyBvbmUgd291bGQgZXhwZWN0IHRoZSBvdXRlciBxdWFudGlmaWVy IHRvIGZvcmNlIGRpc3RyaWJ1dGl2aXR5IG92ZXIgdGhlIGFtb3VudCBvZiB0eXBpY2FsL3N0ZXJl b3R5cGljYWwgdGhpbmdzIGdpdmVuIGJ5IHRoZSBpbm5lciBxdWFudGlmaWVyLgoKCgpXaGVuIHF1 YW50aWZ5aW5nIHN1bWthJ2kgcmVwcmVzZW50aW5nIHNldmVyYWwgb2JqZWN0cywgaXQgaXMgdXNl ZnVsIHRvIHJlbWVtYmVyIHRoYXQgdGhleSBhcmUgdXN1YWxseSBtYXNzZXMuIEJ5IGRlZmluaXRp b24sICJ7bnVtYmVyfSB7c3VtdGl9IiBpcyBkZWZpbmVkIGFzICJ7bnVtYmVyfSAnJ2RhIHBvaSBr ZSdhIG1lJycge3N1bXRpfSIuIFlvdSB3aWxsIG5vdCBiZSBmYW1pbGlhciB3aXRoICcnZGEnJyB1 bnRpbCBhIGZldyBsZXNzb25zIGxhdGVyLCBzbyB0YWtlIGl0IG9uIGZhaXRoIHRoYXQgaXQgbWVh bnMgInNvbWV0aGluZyIgaW4gdGhpcyBjb250ZXh0LiBUaGVyZWZvcmUsICcnY2kgbWknJyBtZWFu cyAiVHdvIG9mIHRob3NlIHdobyBiZWxvbmcgdG8gInVzIiIuIFdoZW4gcXVhbnRpZnlpbmcgc3Vj aCBtYXNzZXMsIGl0IGNhbiBzYWZlbHkgYmUgYXNzdW1lZCB0aGF0IHRoZSByZWxhdGlvbiBpbXBs aWVkIGJ5ICcnbWUnJyBpcyBtZW1iZXJzaGlwIG9mIHRoZSBtYXNzLCBhbmQgdGhlcmVmb3JlICcn Y2kgbWknJyBpcyAiVGhyZWUgb2YgdXMiLgoKCgpTb21lIGltcG9ydGFudCB1c2VzIG9mIHF1YW50 aWZpY2F0aW9uIHJlcXVpcmVzIHlvdSB0byBiZSBxdWFudGlmeSBzZWxicmkgb3Igb2JqZWN0cyB3 aG9zZSBpZGVudGl0eSBpcyB1bmtub3duLiBUaGlzIGlzIGRvbmUgYnkgImxvZ2ljYWxseSBxdWFu dGlmaWVkIHZhcmlhYmxlcyIuIFRoZXNlLCBhcyB3ZWxsIGFzIGhvdyB0byBxdWFudGlmeSB0aGVt IHdpbGwgYmUgY292ZXJlZCBpbiBsZXNzb25zIHR3ZW50eS1zZXZlbi4KCgoKTGFzdGx5LCBob3cg Y2FuIHlvdSBxdWFudGlmeSB1bmNvdW50YWJsZSBzdWJzdGFuY2VzIGxpa2Ugc3VnYXIgb3Igd2F0 ZXI/IE9uZSBzb2x1dGlvbiBpcyB0byBxdWFudGlmeSBpdCB1c2luZyBpbmV4YWN0IG51bWJlcnMu IFRoaXMgdXNlIGlzIHZhZ3VlLCBub3Qgb25seSBiZWNhdXNlIHRoZSB2YWx1ZSBvZiB0aGUgbnVt YmVyIGlzIHZhZ3VlLCBidXQgYWxzbyBiZWNhdXNlIGl0J3Mgbm90IHNwZWNpZmllZCBvbiB3aGF0 IHNjYWxlIHlvdSdyZSBjb3VudGluZzogVGhlIHN1Z2FyIGNvdWxkIGJlIGNvbnNpZGVyZWQgYSBn cm91cCBvZiBtYW55IGNyeXN0YWxzLCBjb3VudGVkIG9uZSBhdCBhIHRpbWUsIGFuZCB0aGUgd2F0 ZXIgY291bGQgYmUgcXVhbnRpZmllZCBieSB0aGUgYW1vdW50cyBvZiByYWluZHJvcHMgaXQgdG9v ayB0byBtYWtlIHRoZSBib2R5IG9mIHdhdGVyIGluIHF1ZXN0aW9uLiBXaGlsZSB0aGlzIHdheSBv ZiBjb3VudGluZyBpcyBsZWdpdGltYXRlLCBpdCdzIG5vdCB2ZXJ5IGV4YWN0IGFuZCBjYW4gZWFz aWx5IGNvbmZ1c2Ugb3IgbWlzbGVhZC4KCkEgd2F5IHRvIGJlIGV4cGxpY2l0IGFib3V0IG5vbi1j b3VudGFiaWxpdHkgaXMgdG8gdXNlIHRoZSBudWxsIG9wZXJhbmQgJyd0dSdvJycgYXMgYW4gaW5u ZXIgcXVhbnRpZmllci4KCl9fJyd0dSdvJydfXyBOdWxsIG9wZXJhbmQgKCDDmCApLiBVc2VkIGlu IHVuYXJ5IG1la3NvLgoKVGhpcyBzb2x1dGlvbiBpcyBlbGVnYW50IGFuZCBpbnR1aXRpdmUsIGFu ZCBhbHNvIGdpdmVzIG1lIGFuIGV4Y3VzZSB0byBxdW90ZSB0aGlzIGhvcnJpZnlpbmcsIHlldCBj b21pY2FsIGV4YW1wbGUgZnJvbSB0aGUgb3JpZ2luYWwgJyd4b3JsbycnLXByb3Bvc2FsOgoKJyds ZSBuYW5tdSBjdSBzZSBzbnV0aSAuaSBqYSdlIGJvIGxvIHR1J28gZ2Vya3UgY3Uga3VzcGUgbGUg a2xhamknJwoKX18nJ3NudXRpJydfXyB4MSBpcyBhbiBhY2NpZGVudCBvbiB0aGUgcGFydCBvZiB4 MgoKX18nJ2phJ2UnJ19fIHN1bXRjaXRhOiBCQUk6IChmcm9tICcnamFsZ2UnJyk6IEJyaWRpIHJl c3VsdHMgaW4ge3N1bXRpfSAKCl9fJydrdXNwZScnX18geDEgc3BhbnMvZXh0ZW5kcyBvdmVyIHgy CgpfXycna2xhamknJ19fIHgxIGlzIGEgcm9hZC9hdmVudWUvc3RyZWV0IGF0IHgyIGFjY2Vzc2lu ZyB4MwoKCgpXaGF0IGRvZXMgaXQgbWVhbj8KCkFuc3dlcjogfn5ncmV5LGdyZXk6ICJUaGUgbWFu IGhhZCBhbiBhY2NpZGVudCBhbmQgc28gdGhlcmUgd2FzIGRvZyBhbGwgb3ZlciB0aGUgcm9hZCJ+ fgoKCgpBIHNlY29uZCBtZXRob2Qgb2YgcXVhbnRpZnlpbmcgc3Vic3RhbmNlcyBpcyB0byB1c2Ug dGhlIHRlbnNlcyAnJ3ZlJ2knJywgJyd2ZSdhJycgYW5kICcndmUndScnIGFzIG1lbnRpb25lZCBp biBsZXNzb24gdGVuOgoKJyd0aSB2ZSdpIGRqYWN1JycgLSBUaGlzIGlzIGEgc21hbGwgYW1vdW50 IG9mIHdhdGVyCgpfXycnZGphY3UnJ19fIHgxIGlzIGFuIGV4cGFuc2Ugb2Ygd2F0ZXIvaXMgbWFk ZSBvZiB3YXRlci9jb250YWlucyB3YXRlcgoKCgpUaGlyZGx5LCBvZiBjb3Vyc2UsIHlvdSBjb3Vs ZCB1c2UgYSBicml2bGEgdG8gZ2l2ZSBhbiBleGFjdCBtZWFzdXJlbWVudDoKCicnbGUgdGEgZGph Y3UgY3Uga2knb2dyYSBiZSBsaSByZSBwaSBraSdvIGtpJ28nJyAtICJUaGF0IHdhdGVyIGhhcyBh IG1hc3Mgb2YgMi4wMDAgMDAwIGtpbG9ncmFtcyIKCl9fJydraSdvZ3JhJydfXyB4MSBtZWFzdXJl cyBpbiBtYXNzIHgyIGtpbG9ncmFtcyBieSBzdGFuZGFyZCB4MwoKCgohIUxvamJhbiBMZXNzb25z IC0gTGVzc29uIHR3ZW50eS10aHJlZSAobmVnYXRpb24pCgpTb21ldGltZXMsIGp1c3Qgc2F5aW5n IHdoYXQncyB0aGUgdHJ1dGggaXMgbm90IGVub3VnaC4gT2Z0ZW4sIHdlIHdhbnQgdG8gc3BlY2lm eSB3aGF0J3Mgbm90IHRoZSB0cnV0aCwgYW5kIHdlIGRvIHRoaXMgYnkgdXNpbmcgbmVnYXRpb24u CgpOZWdhdGlvbiBpbiBFbmdsaXNoIG1vc3RseSBpbnZvbHZlcyDigJxub3TigJ0sIGFuZCBpcyBj b21wbGV0ZWx5IGFyYml0cmFyeSBhbmQgYW1iaWd1b3VzLiBXZSwgYXMgTG9qYmFuaXN0cywgY2Fu J3QgaGF2ZSB0aGF0LCBvZiBjb3Vyc2UsIHNvIExvamJhbiBjb250YWlucyBhbiBlbGVnYW50IGFu ZCB1bmFtYmlnaW91cyBzeXN0ZW0gZm9yIG5lZ2F0aW5nLiBXaGF0IHdpbGwgYmUgcHJlc2VudGVk IGhlcmUgYXJlIHRoZSBvZmZpY2lhbCBnb2xkLXN0YW5kYXJkIHJ1bGVzLiBEaXNhcHByb3ZhbCBv ZiB0aGVzZSAiZ29sZGVuIHJ1bGVzIiBjb25jZXJuaW5nICcnbmEnJyBpcyBncm93aW5nLCBhbmQg dGhlcmUgaXMgZGlzYWdyZWVtZW50IGFib3V0IHdoYXQgcnVsZSBzZXQgc2hvdWxkIHJlcGxhY2Ug aXQuIEZvciBub3csIEkgd2lsbCBzdGljayB3aXRoIHRoZSBvZmZpY2lhbCBydWxlcywgYW5kIHRo ZXJlZm9yZSwgc28gd2lsbCB5b3UsIGRlYXIgcmVhZGVyLgoKVGhlIGZpcnN0IHlvdSBuZWVkIHRv IGtub3cgYWJvdXQgaXMgYnJpZGkgbmVnYXRpb24sIHNvIGNhbGxlZCBiZWNhdXNlIGl0IG5lZ2F0 ZXMgdGhlIGJyaWRpIGl0J3MgaW4sIHNheWluZyBpdCdzIG5vdCB0cnVlLiBUaGUgd2F5IHRvIG5l Z2F0ZSBhIGJyaWRpIGlzIHRvIHBsYWNlICcnbmEnJyBmaXJzdCBpbiB0aGUgc2VudGVuY2Ugd2l0 aCBhICcna3UnJyBhZnRlciBpdCwgb3IganVzdCBiZWZvcmUgdGhlIHNlbGJyaS4gCgpfXycnc3Bl bmknJ19fIHgxIGlzIG1hcnJpZWQgdG8geDIgdW5kZXIgY29udmVudGlvbiB4MwoKVGh1czogJydu YSBrdSBsZSBtaSBzcGVuaSBjdSBuaW5tdScnIHN0YXRlcyB0aGF0IOKAnE15IHNwb3VzZSBpcyBu b3QgYSB3b21hbuKAnS4gSXQgc3RhdGVzIG5vdGhpbmcgYWJvdXQgd2hhdCBteSB3aWZlIGlzLCBv ciBpZiBJIGV2ZW4gaGF2ZSBhIHdpZmUuIEl0IG9ubHkgc3RhdGVzIHRoYXQgSSBkbyBub3QgaGF2 ZSBhIHdpZmUgd2hvIGlzIGFsc28gYSB3b21hbi4gVGhpcyBoYXMgYW4gaW1wb3J0YW50IGltcGxp Y2F0aW9uOiBJZiB0aGUgbmVnYXRpb24gb2YgYSBicmlkaSBpcyBmYWxzZSwgdGhlIGJyaWRpIG11 c3QgYmUgdHJ1ZTogJyduYSBrdSBsZSBtaSBzcGVuaSBjdSBuYSBuaW5tdScnIG11c3QgbWVhbiB0 aGF0IEkgaGF2ZSBib3RoIGEgc3BvdXNlLCBhbmQgdGhhdCBzaGUgaXMgYSBzaGUuCgpJdCBpcyBw b3NzaWJsZSB0byB1c2UgYnJpZGkgbmVnYXRpb25zIGluIGFsbCBicmlkaSwgZXZlbiB0aGUgaW1w bGljaXQgYnJpZGkgb2YgZGVzY3JpcHRpdmUgc3VtdGkuICcnbG8gbmEgcHJlbnUnJyBjYW4gcmVm ZXIgdG8gYW55dGhpbmcgbm9uLWh1bWFuLCB3aGV0aGVyIGl0IGJlIGEgc3BoaW54LCBhIGJhc2Vi YWxsIG9yIHRoZSBwcm9wZXJ0eSBvZiBhcHByb3ByaWF0ZW5lc3MuCgoKCl9fJydiYXUnJ19fIHN1 bXRjaXRhLCBmcm9tIGJhbmd1OiB1c2luZyB0aGUgbGFuZ3VhZ2Ugb2Yge3N1bXRpfQoKX18nJ3Nl IGphJ2UnJ19fIHN1bXRjaXRhLCBmcm9tIHNlIGphbGdlOiBiZWNhdXNlIG9mIHtzdW10aX0KCgoK T2Z0ZW4gd2hlbiB1c2luZyAnJ25hJycsIGl0J3MgYSBwcm9ibGVtIHRoYXQgaXQgbmVnYXRlcyB0 aGUgZW50aXJlIGJyaWRpLiBJZiBJIHNheSAnJ21pIG5hIHN1dHJhIHRhdmxhIGJhdSBsZSBnbGli YXUgc2UgamEnZSBsZSBudSBtaSBkb3RjbycnLCBJIGVuZCB1cCBuZWdhdGluZyB0b28gbXVjaCwg YW5kIGl0IGlzIG5vdCBjbGVhciB0aGF0IEkgd2FudGVkIHRvIG9ubHkgbmVnYXRlIHRoYXQgSSBz cGVhayBmYXN0LiBUaGUgc2VudGVuY2UgY291bGQgc3VnZ2VzdCB0aGF0IEkgaW4gZmFjdCBzcGVh ayBmYXN0IGJlY2F1c2Ugb2Ygc29tZSBvdGhlciByZWFzb24sIGZvciBpbnN0YW5jZSB0aGF0IEkg c3BlYWsgZmFzdCBpbiBGcmVuY2ggYmVjYXVzZSBJJ20gR2VybWFuLiBUbyBleHByZXNzIHRoZSBz ZW50ZW5jZSBtb3JlIHByZWNpc2VseSwgSSBuZWVkIHRvIG9ubHkgbmVnYXRlIHRoYXQgSSBzcGVh ayBmYXN0LCBhbmQgbm90IHRoZSBvdGhlciB0aGluZ3MuCgpUbyBvbmx5IG5lZ2F0ZSBwYXJ0IG9m IGEgYnJpZGksICcnbmEga3UnJyBjYW4gYmUgbW92ZWQgYXJvdW5kIHRoZSBicmlkaSBhbmQgcGxh Y2VkIGFueXdoZXJlIGEgc3VtdGkgY2FuIGdvLiBJdCB0aGVuIG5lZ2F0ZXMgYW55IHN1bXRpLCBz ZWxicmkgYW5kIHN1bXRjaXRhIHBsYWNlZCBhZnRlciBpdC4gV2hlbiBwbGFjZWQgaW1tZWRpYXRl bHkgYmVmb3JlIHRoZSBzZWxicmksIHRoZSAnJ2t1JycgY2FuIGJlIGVsaWRlZC4KCk1vdmluZyAn J25hIGt1JycgZnJvbSB0aGUgbGVmdCBlbmQgb2YgdGhlIGJyaWRpIGFuZCByaWdodHdhcmRzIGVm ZmVjdHMgYW55IHF1YW50aWZpZXJzIGluIGEgY2VydGFpbiB3YXksIGFzIGNhbiBiZSBzZWVuIGJ5 IHRoaXMgZXhhbXBsZToKCgoKVGhlcmUgYXJlIGZvcmNlcyB3aXRoaW4gdGhlIExvamJhbiBjb21t dW5pdHkgd2hvLCBwZXJoYXBzIHJpZ2h0bHksIHRoaW5rIHRoYXQgdGhlcmUgaXMgbm8gZ29vZCBy ZWFzb24gdGhhdCBhICcnbmEnJyBwbGFjZWQgYmVmb3JlIGEgc2VsYnJpIG5lZ2F0ZXMgdGhlIGVu dGlyZSBicmlkaSwgd2hlcmVhcyBhICcnbmEga3UnJyBhbnkgb3RoZXIgcGxhY2UgbmVnYXRlcyBv bmx5IHdoYXQgaXMgdHJhaWxpbmcgYmVoaW5kIGl0LiBIb3dldmVyLCBpbiB0aGVzZSBsZXNzb25z IHlvdSB3aWxsIGJlIHRhdWdodCB3aGF0IGlzIHN0aWxsIHRoZSBvZmZpY2lhbCBzdGFuY2UsIG5h bWVseSB0aGF0ICcnbmEnJyBiZWZvcmUgdGhlIHNlbGJyaSBuZWdhdGVzIHRoZSBicmlkaS4KCgoK VGhlIHVzZSBvZiAnJ25hIGt1JycgaXMgZXhlbXBsaWZpZWQgd2l0aCB0aGUgZm9sbG93aW5nIGV4 YW1wbGVzLgoKJyduYSBrdSBybyByZW1uYSBjdSB2ZXJiYScnIOKAnEl0J3Mgbm90IHRydWUgdGhh dDogQWxsIGh1bWFucyBhcmUgY2hpbGRyZW7igJ0KCicnc3UnbyByZW1uYSBuYSBrdSBjdSB2ZXJi YScnIOKAnEZvciBhdCBsZWFzdCBvbmUgaHVtYW4gaXQncyBub3QgdHJ1ZSB0aGF0OiBJdCdzIGEg Y2hpbGTigJ0uIFNlZSB0aGF0IHRoZSAnJ25hIGt1JycgaXMgcGxhY2VkIGJlZm9yZSAnJ2N1Jycs IHNpbmNlIGEgc3VtdGkgY2FuIGdvIG9ubHkgYmVmb3JlLCBub3QgYWZ0ZXIgdGhlICcnY3UnJy4g SGFkIEkgb25seSB1c2VkICcnbmEnJywgaXQgd291bGQgaGF2ZSB0byBnbyBhZnRlciAnJ2N1Jycg LSBidXQgdGhhdCB3b3VsZCBoYXZlIG5lZ2F0ZWQgdGhlIGVudGlyZSBicmlkaSwgbWVhbmluZyAi SXQncyBub3QgdHJ1ZSB0aGF0OiBBdCBsZWFzdCBvbmUgaHVtYW4gaXMgYSBjaGlsZCIuCgoKCldo ZW4gdGhlICcnbmEga3UnJyBpcyBtb3ZlZCByaWdodHdhcmRzLCBhbnkgcXVhbnRpZmllciBpcyBp bnZlcnRlZCAtIHRoYXQgaXM6ICcncm8nJyBpcyB0dXJuZWQgaW50byAnJ3N1J28nJy4gVGhpcyBp cywgb2YgY291cnNlLCBvbmx5IGlmIHRoZSBtZWFuaW5nIG9mIHRoZSBicmlkaSBoYXMgdG8gYmUg cHJlc2VydmVkLiBUaGlzIG1lYW5zIHRoYXQgd2hlbiB0aGUgJyduYSBrdScnIGlzIHBsYWNlZCBh dCB0aGUgZW5kIG9mIHRoZSBicmlkaSwgb25seSB0aGUgc2VsYnJpIGlzIG5lZ2F0ZWQgYnV0IGFs bCB0aGUgc3VtdGkgYW5kIHN1bXRjaXRhIGFyZSBwcmVzZXJ2ZWQsIGFzIGNhbiBiZSBzZWVuIGJ5 IHRoZXNlIHRocmVlIGlkZW50aWNhbCBicmlkaToKCl9fJydja3VsZScnX18geDEgaXMgYSBzY2hv b2wgYXQgbG9jYXRpb24geDIgdGVhY2hpbmcgeDMgdG8gc3R1ZGVudHMgeDQgYW5kIG9wZXJhdGVk IGJ5IHg1CgoKCicnbmEga3Ugcm8gdmVyYmEgY3UgdmUgY2t1bGUgZm8gc3UnbyBja3VsZScnIOKA kyDigJxJdCdzIG5vdCB0cnVlIHRoYXQgYWxsIGNoaWxkcmVuIGFyZSBzdHVkZW50cyBpbiBhIHNj aG9vbC7igJ0KCicnc3UnbyB2ZXJiYSBjdSB2ZSBja3VsZSBuYSBrdSBmbyBzdSdvIGNrdWxlJycg 4oCTIOKAnFNvbWUgY2hpbGRyZW4gYXJlIHN0dWRlbnRzIGluIG5vdCBhIHNpbmdsZSBzY2hvb2wu 4oCdCgonJ3N1J28gdmVyYmEgY3UgdmUgY2t1bGUgZm8gcm8gY2t1bGUgbmEga3UnJyDigJMg4oCc U29tZSBjaGlsZHJlbiBhcmUgZm9yIGFsbCBzY2hvb2xzIG5vdCBzdHVkZW50cyBpbiB0aGVtLuKA nQoKCgpUaGUgb3Bwb3NpdGUgb2YgJyduYScnIGlzICcnamEnYScnLiBUaGlzIGlzIGJhcmVseSBl dmVyIHVzZWQsIHNpbmNlIGl0IGlzIGRlZmF1bHQgaW4gbW9zdCBicmlkaS4gT25lIGV4Y2VwdGlv biBpcyByZXBlYXRlZCBicmlkaSAobmV4dCBsZXNzb24pLiBTb21ldGltZXMgaXQncyB1c2VkIHRv IHB1dCBtb3JlIHdlaWdodCBvbiB0aGUgdHJ1dGggb2YgdGhlIGJyaWRpLCBhcyBpbiAnJ2xhIC5i YWIuIGphJ2EgbWVsYmknJyA9ICJCb2IgaXMgaW5kZWVkIGJlYXV0aWZ1bCIuCgoKCldoaWxlIHRo ZSBtZWNoYW5pc20gb2YgJyduYSBrdScnIHJlc2VtYmxlcyBuYXR1cmFsIGxhbmd1YWdlIG5lZ2F0 aW9uLCBpdCBjYW4gYmUgZGlmZmljdWx0IHRvIGtlZXAgdHJhY2sgb2YgZXhhY3RseSB3aGF0IGlz IG5lZ2F0ZWQgYW5kIGhvdyB0aGF0IGFmZmVjdHMgdGhlIGJyaWRpLiBGb3IgdGhhdCByZWFzb24s IHRoZSBjb25zdHJ1Y3QgJyduYSBrdScnIGlzIHJhcmVseSBzZWVuIGFueXdoZXJlIG90aGVyIHRo YW4gdGhlIGJlZ2lubmluZyBvZiBhIGJyaWRpLiBJbiBtb3N0IGNhc2VzIHdoZXJlIG1vcmUgc3Bl Y2lmaWMgbmVnYXRpb24gaXMgbmVlZGVkIHBlb3BsZSByZXNvcnQgdG8gYSBkaWZmZXJlbnQgbWV0 aG9kLiBUaGlzIG1ldGhvZCwgY2FsbGVkIHNjYWxhciBuZWdhdGlvbiwgaXMgYW4gZWxlZ2FudCBh bmQgaW50dWl0aXZlIHRvb2wuIFVzaW5nIGl0LCB5b3UgZWZmZWN0IG9ubHkgdGhlIHNlbGJyaSwg c2luY2UgdGhlIHdvcmRzIHVzZWQgaW4gc2NhbGFyIG5lZ2F0aW9uIGJpbmRzIHRvIHRoZSBzZWxi cmkgbXVjaCBsaWtlIHRoZSB3b3JkICcnc2UnJy4KClRoZSBuYW1lIOKAnHNjYWxhciBuZWdhdGlv buKAnSBpcyBkZXJpdmVkIGZyb20gdGhlIGZhY3QgdGhhdCB0aGUgd29yZHMgd2hpY2ggYmluZCB0 byB0aGUgc2VsYnJpIGNhbiBiZSBwbGFjZWQgYWxvbmcgYSBzY2FsZSBmcm9tIGFmZmlybWF0aW9u IG92ZXIgbmVnYXRpb24gYW5kIHRvIHN0YXRpbmcgdGhhdCB0aGUgb3Bwb3NpdGUgY2FzZSBpcyB0 cnVlOgoKfHxXb3JkfE1lYW5pbmcKCmplJ2F84oCcSW5kZWVk4oCdOyBzY2FsYXIgYWZmaXJtZXIK Cm5vJ2V84oCcTm90IHJlYWxseeKAnSwgc2NhbGFyIG1pZHBvaW50CgpuYSdlfOKAnE5vbi3igJws IHNjYWxhciBuZWdhdG9yCgp0bydlfOKAnEls4oCdLCDigJxEaXMt4oCcLCDigJxNaXPigJ0gZWN0 OyBzY2FsYXIgb3Bwb3Nlcnx8CgoKClRoZXNlIHdvcmRzIGFyZSBub3QgbmVnYXRvcnMgaW4gdGhl IHNhbWUgc2Vuc2UgYXMgJyduYScnLiBUaGV5IGRvIG5vdCBzdGF0ZSB0aGF0IGEgYnJpZGkgaXMg ZmFsc2UsIGJ1dCBtYWtlcyBhIHBvc2l0aXZlIHN0YXRlbWVudCB0aGF0IGEgYnJpZGkgaXMgdHJ1 ZSDigJMgdGhlIHNhbWUgYnJpZGksIGJ1dCB3aXRoIGEgZGlmZmVyZW50IHNlbGJyaS4gVGhpcyBk aXN0aW5jdGlvbiBpcyBtb3N0bHkgYWNhZGVtaWMsIHRob3VnaC4gSWYsIGZvciBleGFtcGxlLCBJ IHN0YXRlIHRoYXQgJydtaSBuYSdlIHNlIG5lbGNpJycgIkkgYW0gbm9uLWxpa2VkIiwgSSBhY3R1 YWxseSBzdGF0ZSB0aGF0IHNvbWUgc2VsYnJpIGFwcGxpZXMgdG8gbWUsIHdoaWNoIGlzIGFsc28g b24gYSByZWxldmFudCBzY2FsZSB3aXRoIHRoZSBzZWxicmkgJyduZWxjaScnLiBNb3N0IG9mIHRo ZSB0aW1lLCB3ZSBhc3N1bWUgYSBzY2FsZSB3aGVyZSB0aGUgcG9zaXRpb25zIGFyZSBtdXR1YWxs eSBleGNsdXNpdmUgKGxpa2UgbG92ZS1saWtlLWRpc2xpa2UtaGF0ZSksIHNvICcnbWkgbmEnZSBz ZSBuZWxjaScnIGltcGxpZXMgJydtaSBuYSBzZSBuZWxjaScnCgpUaGVyZWZvcmUsIHRoZSB3b3Jk cyAnJ25vJ2UnJyBhbmQgJyd0bydlJycgc2hvdWxkIG9ubHkgYmUgdXNlZCB3aGVuIHRoZSBzZWxi cmkgaXMgcGxhY2VkIG9uIHNvbWUgb2J2aW91cyBzY2FsZToKCicnbGUgbWkgc3BlbmkgY3UgdG8n ZSBtZWxiaScnIOKAkyDigJ1NeSBzcG91c2UgaXMgdWdseeKAnSBtYWtlcyBzZW5zZSwgc2luY2Ug d2UgaW1tZWRpYXRlbHkga25vdyB3aGF0IHRoZSBvcHBvc2l0ZSBvZiBiZWF1dGlmdWwgaXMsIHdo aWxlCgonJ21pIGtsYW1hIGxlIG1pIHRvJ2UgemRhbmknJyDigJMg4oCdSSBnbyB0byBteSBvcHBv c2l0ZSB0aGluZyBvZiBob21l4oCdLCB3aGlsZSBncmFtbWF0aWNhbCwgbGVhdmVzIHRoZSBsaXN0 ZW5lciBndWVzc2luZyB3aGF0IHRoZSBzcGVha2VyJ3Mg4oCcb3Bwb3NpdGUtaG9tZeKAnSBpcyBh bmQgc2hvdWxkIGJlIGF2b2lkZWQuCgoKClNvIGhvdyBjYW4geW91IG5lZ2F0ZSBvbmx5IHRoZSBz ZWxicmkgd2l0aG91dCBhbHNvIGltcGx5aW5nIHRoYXQgdGhlIHNlbGJyaSBpcyBjb3JyZWN0IGF0 IHNvbWUgb3RoZXIgcG9zaXRpb24gb24gYSB0cnV0aC1zY2FsZT8gU2ltcGxlOiBNb3ZpbmcgdGhl ICcnbmEga3UnJyB0byB0aGUgcmlnaHRtb3N0IGVuZCBvZiB0aGUgYnJpZGksIGFzIGRlbW9uc3Ry YXRlZCBhIGZldyBsaW5lcyBhYm92ZS4gVGhpcyBmZWF0dXJlIGlzIHZlcnkgdXNlZnVsLiBTb21l IGxvamJhbmlzdHMgcHJlZmVyIHRvIHByZWZpeCB0aGUgcmFmc2kgJyduYXInJyAodGhlIHJhZnNp IG9mICcnbmEnJykgaW4gZnJvbnQgb2YgdGhlIHNlbGJyaSAtIHRoaXMgaGFzIHRoZSBzYW1lIGVm ZmVjdCwgYnV0IEkgYWR2aXNlIGFnYWluc3QgaXQsIGJlY2F1c2UgaXQgbWFrZXMgZmFtaWxpYXIg YnJpdmxhIHNlZW0gYWxpZW4sIGFuZCBpdCdzIGhhcmRlciB0byB1bmRlcnN0YW5kIHdoZW4gc3Bv a2VuIGNhc3VhbGx5LgoKSWYgYSBzaXR1YXRpb24gYXJpc2VzIHdoZXJlIHlvdSBuZWVkIHRvIG5l Z2F0ZSBvbmx5IHRoZSBzZWxicmksIGJ1dCB3YW50IGl0IHRvIGJlIGNsZWFyIGJlZm9yZSB0aGUg ZW5kIG9mIHRoZSBicmlkaSwgdGhlIGV4cGVyaW1lbnRhbCBjbWF2byAnJ25hJ2VpJycsIHdoaWNo IGdyYW1tYXRpY2FsbHkgd29ya3MgbGlrZSAnJ25hJ2UnJywgY2FuIGJlIHVzZWQKCl9fJyduYSdl aScnX186IE5lZ2F0ZXMgdGhlIGZvbGxvd2luZyBzZWxicmkgb25seQoKCgpUcnkgdG8gdHJhbnNs YXRlIHRoZXNlIHNlbnRlbmNlczoKCuKAnE15IHNwb3VzZSBpcyBub3QgYSB3b21hbuKAnSAobWVh bmluZyB0aGF0IGhlIGlzIGEgbWFsZSkKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ2xlIG1pIHNw ZW5pIGN1IG5hJ2UgLyB0bydlIG5pbm11JycuIFVzaW5nIHNjYWxhciBuZWdhdGlvbiBoZXJlIGlt cGxpZXMgdGhhdCBoZSBleGlzdHMsIHdoaWNoIG5hIGRpZCBub3Qufn4KCgoK4oCcTXkgc3BvdXNl IGlzIG5vdCByZWFsbHkgYSB3b21hbuKAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbGUgbWkg c3BlbmkgY3Ugbm8nZSBuaW5tdScnLiBUaGUgc2NhbGUgaGVyZSBpcyBwcmVzdW1lZCB0byBiZSBm cm9tIHdvbWFuIHRvIG1hbi5+fgoKCgrigJxJIGRvbid0IHNwZWFrIGZhc3QgaW4gRW5nbGlzaCBi ZWNhdXNlIEknbSBHZXJtYW7igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIG5hJ2Ugc3V0 cmEgdGF2bGEgYmF1IGxlIGdsaWJhdSBzZSBqYSdlIGxlIG51IG1pIGRvdGNvJyd+fgoKCgpBbHNv LCBub3RlIHRoYXQgd2hlbmV2ZXIgdGhlc2Ugd29yZHMgYXJlIHVzZWQgdG9nZXRoZXIgd2l0aCBh IHRhbnJ1LCB0aGV5IG9ubHkgYWZmZWN0IHRoZSBsZWZ0bW9zdCBzZWxicmkuIEluIG9yZGVyIHRv IG1ha2UgaXQgYmluZCB0byB0aGUgd2hvbGUgdGFucnUgb3IgcGFydHMgb2YgdGhlIHRhbnJ1LCB0 aGUgdXN1YWwgdGFucnUtZ3JvdXBpbmcgd29yZHMgY2FuIGJlIHVzZWQuCgoKClRyeSB0byBzYXkg 4oCcSSBzZWxsIHNvbWV0aGluZyB3aGljaCBpcyBub3QgeWVsbG93IGhvbWVz4oCdIHVzaW5nIHRo ZSB0YW5ydSAnJ3BlbHh1IHpkYW5pIHZlY251JycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21p IG5hJ2Uga2UgcGVseHUgemRhbmkga2UnZSB2ZWNudSBvciBtaSBuYSdlIHBlbHh1IGJvIHpkYW5p IHZlY251Jyd+fgoKCgpXaGVuIGF0dGVtcHRpbmcgdG8gYW5zd2VyOiDigJxJcyB0aGUga2luZyBv ZiB0aGUgVVNBIGZhdD/igJ0sIGFsbCBvZiB0aGVzZSBuZWdhdGlvbnMgZmFpbC4gV2hpbGUgaXQn cyB0ZWNobmljYWxseSBjb3JyZWN0IHRvIG5lZ2F0ZSBpdCB3aXRoICcnbmEnJywgc2luY2UgaXQg bWFrZXMgbm8gYXNzdW1wdGlvbnMgb2YgdGhhdCBpcyB0cnVlLCBpdCdzIG1pbGRseSBtaXNsZWFk aW5nIHNpbmNlIGl0IGNvdWxkIGxlYWQgdGhlIGxpc3RlbmVyIHRvIGJlbGlldmUgdGhlcmUgaXMg YSBraW5nIG9mIHRoZSBVU0EuIEZvciB0aGVzZSBzY2VuYXJpb3MsIHRoZXJlIGlzIGEgbWV0YWxp bmd1aXN0aWMgbmVnYXRvciwgJyduYSdpJycuCgonJ25hJ2knJyBNZXRhbGluZ3Vpc3RpYyBuZWdh dG9yLiBTb21ldGhpbmcgaXMgd3Jvbmcgd2l0aCBhc3NpZ25pbmcgYSB0cnV0aCB2YWx1ZSB0byB0 aGUgYnJpZGkuCgpCZWNhdXNlICcnbmEnaScnIGNhbiBiZSBuZWVkZWQgYW55d2hlcmUgaXQgaGFz IGJlZW4gZ2l2ZW4gdGhlIGdyYW1tYXIgb2YgdGhlIGF0dGl0dWRpbmFscywgd2hpY2ggbWVhbnMg aXQgY2FuIGFwcGVhciBhbnl3aGVyZSwgYW5kIGl0IGF0dGFjaGVzIHRvIHRoZSBwcmV2aW91cyB3 b3JkIG9yIGNvbnN0cnVjdC4KCgoKX18nJ3BhbGNpJydfXyB4MSBpcyBldmlsIGJ5IHN0YW5kYXJk IHgyCgonJ2xlIG5hJ2kgcHUgdGUgenVrdGUgYmUgbGUgc2thbWkgY3UgcGFsY2knJyDigJMg4oCd VGhlIHNvdWdodCBnb2FsIHttaXN0YWtlIX0gb2YgdGhlIGNvbXB1dGVyIHdhcyBldmls4oCdLCBw cm9iYWJseSBwcm90ZXN0cyB0aGF0IGNvbXB1dGVycyBjYW4gc2VlayBhIGdvYWwgdm9saXRpb25h bGx5LgoKCgpTaW5jZSB0aGlzIGlzIGEgbGVzc29uIG9uIG5lZ2F0aW9uLCBJIGJlbGlldmUgdGhl IHdvcmQgJyduYWknJyBkZXNlcnZlcyBhIHNob3J0IG1lbnRpb24uIEl0IGlzIHVzZWQgdG8gbmVn YXRlIG1pbm9yIGdyYW1tYXRpY2FsIGNvbnN0cnVjdHMsIGFuZCBjYW4gYmUgdXNlZCBpbiBjb21i aW5hdGlvbiB3aXRoIGF0dGl0dWRpbmFscywgYWxsIHN1bXRjaXRhIGluY2x1ZGluZyB0ZW5zZXMs IHZvY2F0aXZlcyBhbmQgbG9naWNhbCBjb25uZWN0aXZlcy4gVGhlIHJ1bGVzIGZvciBuZWdhdGlu ZyB1c2luZyAnJ25haScnIGRlcGVuZCBvbiB0aGUgY29uc3RydWN0LCBhbmQgc28gdGhlIGVmZmVj dCBvZiAnJ25haScnIGhhcyBiZWVuIGRpc2N1c3NlZCB3aGVuIG1lbnRpb25pbmcgdGhlIGNvbnN0 cnVjdCB0aGVtc2VsdmVzLiBUaGUgZXhjZXB0aW9uIGlzIHN1bXRjaXRhLCB3aGVyZSB0aGUgcnVs ZXMgZm9yIG5lZ2F0aW9uIGFyZSBtb3JlIGNvbXBsZXgsIGFuZCB3aWxsIG5vdCBiZSBkaXNjdXNz ZWQgaGVyZS4KCl9fTm90ZTpfXyBBdCB0aGUgdGltZSBvZiB3cml0aW5nLCBpdCBoYXMgYmVlbiBw cm9wb3NlZCB0byBtb3ZlICcnbmFpJycgdG8gdGhlIHNlbG1hJ28gQ0FJLCB3aGljaCBtZWFucyB0 aGUgc2VtYW50aWNzIG9mICcnbmFpJycgZGVwZW5kIG9uIHdoaWNoIHNlbG1hJ28gaXQgZm9sbG93 cy4gCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHktZm91ciAoYnJpa2EnaS9w cm8tYnJpZGkgYW5kIGtvJ2EpCgpJZiBJIHNheSB0aGF0IEknbSBjYWxsZWQgTWlraGFpbCwgJyd6 byAubWlrYWlsLiBjbWVuZSBtaScnLCBhbmQgeW91IGhhdmUgdG8gc2F5IHRoZSBleGFjdCBzYW1l IGJyaWRpLCB3aGF0IHdvdWxkIHRoYXQgYmU/IE9uZSBvZiB0aGUgbWFueSBhbnN3ZXJzIGlzICcn ZG8gc2UgY21lbmUgem8gLm1pa2FpbC4nJy4gRm9yIHRoZSBicmlkaSB0byBiZSB0aGUgc2FtZSwg eW91IGhhdmUgdG8gcmVwbGFjZSAnJ21pJycgd2l0aCAnJ2RvJycsIGFuZCBpdCBkb2Vzbid0IG1h dHRlciB3aGljaCBpZiB5b3Ugc2F5IHRoZSBicmlkaSB3aXRoIHRoZSAnJ3NlJyctY29udmVydGVk IHNlbGJyaSBvciBub3QuIFRoaXMgaXMgYmVjYXVzZSBhIGJyaWRpIGlzIG5vdCB0aGUgd29yZHMg d2hpY2ggZXhwcmVzcyBpdCDigJMgYSBicmlkaSBpcyBhbiBpZGVhLCBhbiBhYnN0cmFjdCBwcm9w b3NpdGlvbi4gVGhlIHdvcmQgJydtaScnIHdoZW4gSSBzYXkgaXQgYW5kIHRoZSB3b3JkICcnZG8n JyB3aGVuIHlvdSBkbyByZWZlcnMgdG8gdGhlIHNhbWUgc3VtdGksIHNvIHRoZSB0d28gYnJpZGkg YXJlIGlkZW50aWNhbC4KClRoaXMgbGVzc29uIGlzIG9uICcnYnJpa2EnaScnLCB0aGUgYnJpZGkg ZXF1aXZhbGVudCBvZiBzdW1rYSdpLiBUaGV5IGFyZSB3b3JkIHdoaWNoIHJlcHJlc2VudCBlbnRp cmUgYnJpZGkuIEhlcmUgaXQgaXMgaW1wb3J0YW50IHRvIHJlbWVtYmVyIHRoYXQgYSBicmlkaSBj b25zaXN0cyBvbmx5IG9mIHN1bXRpIGFuZCB0aGUgdGhpbmdzIHdoaWNoIGNvbnRhaW4gdGhlIHN1 bXRpLCBzZWxicmkgYW5kIHN1bXRjaXRhLiBOZWl0aGVyIGF0dGl0dWRpbmFscywgbm9yIHRoZSBz ZW1hbnRpYyBsYXllciBvZiAnJ2tvJycgb3IgJydtYScnIGFyZSBwYXJ0IG9mIHRoZSBicmlkaSBw cm9wZXIsIGFuZCBzbyB0aGVzZSBhcmUgbm90IHJlcHJlc2VudGVkIGJ5IGEgJydicmlrYSdpJycu CgoKClRoZXJlIGFyZSBtdWNoIGZld2VyICcnYnJpa2EnaScnIHRoYW4gdGhlcmUgYXJlIHN1bWth J2kuIFdlIHdpbGwgYmVnaW4gYnkgZ29pbmcgdGhyb3VnaCBzb21lIG9mIHRoZSB3b3JkcyBpbiB0 aGUgbW9zdCB1c2VkIHNlcmllcywgY2FsbGVkIEdPaEE6CgpXb3JkOglEZWZpbml0aW9uOgoKX18n J2dvJ3UnJ19fCVJlcGVhdHMgcmVtb3RlIHBhc3QgYnJpZGkKCl9fJydnbydhJydfXwlSZXBlYXRz IHBhc3QgYnJpZGkKCl9fJydnbydlJydfXwlSZXBlYXRzIG5leHQtdG8tbGFzdCBicmlkaQoKX18n J2dvJ2knJ19fCVJlcGVhdHMgbGFzdCBtZW50aW9uZWQgYnJpZGkKCl9fJydnbydvJydfXwlSZXBl YXRzIGZ1dHVyZSBicmlkaQoKX18nJ25laScnX18JUmVwZWF0cyBjdXJyZW50IGJyaWRpCgpfXycn bm8nYScnX18JUmVwZWF0cyBvdXRlciBicmlkaQoKCgpTb21lIG9mIHRoZSBHT2hBLScnYnJpa2En aScnLiBOb3RpY2UgdGhlIGZhbWlsaWFyIGksIGEsIHUtcGF0dGVybiBmb3IgY2xvc2UgaW4gcGFz dCwgbWVkaXVtIGluIHBhc3QgYW5kIGRpc3RhbnQgaW4gcGFzdC4KCgoKVGhlc2UgYXJlIHZlcnkg bXVjaCBsaWtlIHRoZSBzdW1rYSdpICcncmknJywgJydyYScnIGFuZCAnJ3J1JycuIFRoZXkgY2Fu IG9ubHkgcmVmZXIgdG8gbWFpbiBicmlkaSBvZiBqdWZyYSwgYW5kIG5vdCB0aG9zZSBjb250YWlu ZWQgaW4gcmVsYXRpdmUgcGhyYXNlcyBvciBkZXNjcmlwdGlvbiBzdW10aS4gVGhlIG1haW4gYnJp ZGkgY2FuIGNvbnRhaW4gYSByZWxhdGl2ZSBwaHJhc2UsIG9mIGNvdXJzZSwgYnV0IGEgJydicmlr YSdpJycgY2FuIG5ldmVyIGJlIHVzZWQgdG8gcmVmZXIgdG8gb25seSB0aGUgcmVsYXRpdmUgcGhy YXNlLgoKQSBHT2hBIGFjdHMgZ3JhbW1hdGljYWxseSBtdWNoIGxpa2UgYSBzZWxicmksIGFueSBj b25zdHJ1Y3Qgd2hpY2ggY2FuIGFwcGx5IHRvIHNlbGJyaSBjYW4gYWxzbyBhcHBseSB0byB0aGVz ZS4gVGhlIHBsYWNlIHN0cnVjdHVyZSBvZiBhIEdPaEEgaXMgdGhlIHNhbWUgYXMgdGhhdCBvZiB0 aGUgYnJpZGkgaXQgcmVwcmVzZW50cywgYW5kIHRoZSBzdW10aSBhcmUgYnkgZGVmYXVsdCB0aGUg c2FtZSBhcyBpbiB0aGUgYnJpZGkgaXQgcmVwcmVzZW50cy4gRmlsbGluZyB0aGUgc3VtdGkgcGxh Y2VzIG9mIGEgR09oQSBleHBsaWNpdGx5IG92ZXJ3cml0ZXMgdGhlIHN1bXRpIG9mIHRoZSBicmlk aSBpdCByZXByZXNlbnRzLiBDb250cmFzdDoKCkE6ICcnbWkgY2l0a2EgbG8gcGxpc2UnJyBCOiAn J2dvJ2knJyDigJMg4oCcSSBlYXQgYW4gYXBwbGUu4oCdIOKAnFlvdSBkby7igJ0gd2l0aAoKQTog JydtaSBjaXRrYSBsbyBwbGlzZScnIEI6ICcnbWkgZ28naScnIOKAkyDigJxJIGVhdCBhbiBhcHBs ZS7igJ0g4oCcSSBkbywgdG9vLuKAnQoKCgpUaGVzZSAnJ2JyaWthJ2knJyBhcmUgdmVyeSB1c2Vm dWwgd2hlbiBhbnN3ZXJpbmcgYSBxdWVzdGlvbiB3aXRoICcneHUnJzoKCkE6ICcneHUgZG8gbmVs Y2kgbGUgbWkgc3BlbmknJyBCOiAnJ2dvJ2kgLyBuYSBnbydpJycg4oCTIOKAnERvIHlvdSBsaWtl IG15IHdpZmU/4oCdIOKAnFllcy4vTm8u4oCdLiBUaGUgJyd4dScnLCBiZWluZyBhbiBhdHRpdHVk aW5hbCwgaXMgbm90IGNvcGllZC4KCldoZW4gcmVwZWF0aW5nIGJyaWRpIG5lZ2F0ZWQgYnkgJydu YScnLCB0aGF0IGlzOiBCcmlkaSB3aGVyZSAnJ25hJycgaXMgcGxhY2VkIGluIHRoZSBwcmVuZXgg KGxlc3NvbiB0d2VudHktc2V2ZW4pLCBpbiB0aGUgYmVnaW5uaW5nIG9mIHRoZSBicmlkaSBvciBy aWdodCBiZWZvcmUgdGhlIHNlbGJyaSwgdGhlIHJ1bGVzIGZvciBjb3B5aW5nIG92ZXIgJyduYScn IGFyZSBkaWZmZXJlbnQgZnJvbSB3aGF0IG9uZSBtaWdodCBleHBlY3QuIEFueSAnJ25hJycgaXMg Y29waWVkIG92ZXIsIGJ1dCBhbnkgYWRkaXRpb25hbCAnJ25hJycgaW4gdGhlIGJyaWthJ2kgcmVw bGFjZXMgdGhlIGZpcnN0IG5hLiBMZXQgbWUgc2hvdyB5b3Ugd2l0aCBhbiBleGFtcGxlOgoKQTog JydtaSBuYSBjaXRrYSBsbyBwbGlzZScnCgpCOiAnJ21pIGdvJ2knJyA9ICcnbWkgbmEgY2l0a2Eg bG8gcGxpc2UnJwoKQzogJydtaSBuYSBnbydpJycgPSAnJ21pIG5hIGNpdGthIGxvIHBsaXNlJycK CkQ6ICcnbWkgbmEgbmEgZ28naScnID0gJydtaSBjaXRrYSBsbyBwbGlzZScnID0gJydtaSBqYSdh IGdvJ2knJwoKCgonJ25laScnIGFuZCAnJ25vJ2EnJyBhcmUgbm90IHVzZWQgbXVjaCwgZXhjZXB0 IGZvciDigJxtaW5kLWJyZWFraW5nIHB1cnBvc2Vz4oCdLCB3aGljaCBpcyBtYWtpbmcgdXAgYnJp ZGkgd2hpY2ggYXJlIGhhcmQgdG8gcGFyc2UsIGxpa2UgJydkZWkgbmEgc2UgZHUndSBsZSBubydh IGxhJ2UgbGUgbmVpJycuIFNpbmNlICcnbmVpJycgcmVwZWF0cyB0aGUgY3VycmVudCBvdXRlciBi cmlkaSwgaG93ZXZlciwgJydsZSBuZWknJyBjYW4gYmUgdXNlZCB0byByZWZlciB0byB0aGUgeDEg b2YgdGhlIGN1cnJlbnQgb3V0ZXIgYnJpZGksICcnbGUgc2UgbmVpJycgdGhlIHgyIGFuZCBzbyBv bi4KCgoKV2hlbiB1c2luZyAnJ2JyaWthJ2knJywgb25lIG11c3QgYWx3YXlzIGJlIHdhcnkgb2Yg Y29weWluZyBzZW50ZW5jZXMgd2l0aCB0aGUgcGVyc29uYWwgc3Vta2EnaSBsaWtlICcnbWknJywg JydkbycnLCAnJ21hJ2EnJyBlY3QsIGFuZCBiZSBjYXJlZnVsIG5vdCB0byByZXBlYXQgdGhlbSB3 aGVuIHRoZXkgYXJlIGluIHRoZSB3cm9uZyBjb250ZWN0LCBhcyBzaG93biBpbiB0aGUgdHdvIGV4 YW1wbGVzIHdpdGggYXBwbGUgZWF0aW5nIGFib3ZlLiBJbnN0ZWFkIG9mIHJlcGxhY2luZyB0aGVt IG9uZSBieSBvbmUsIHRob3VnaCwgdGhlIHdvcmQgJydyYSdvJycgYW55d2hlcmUgaW4gdGhlIGJy aWRpIHVwZGF0ZXMgdGhlIHBlcnNvbmFsIHN1bWthJ2kgc28gdGhhdCB0aGV5IGFwcGx5IGZvciB0 aGUgc3BlYWtlcidzIHBlcnNwZWN0aXZlOgoKQTogJydtaSBkbyBwcmFtaScnIEI6ICcnbWkgZG8g Z28naScnIGlzIGVxdWl2YWxlbnQgdG8gQTogJydtaSBkbyBwcmFtaScnIEI6ICcnZ28naSByYSdv JycKCl9fJydyYSdvJydfXyBVcGRhdGUgYWxsIHBlcnNvbmFsIHN1bWthJ2kgc28gdGhhdCB0aGV5 IG5vdyBmaXQgdGhlIHNwZWFrZXIncyBwb2ludCBvZiB2aWV3LgoKCgpUaGUgb25seSBvdGhlciBz ZXJpZXMgb2YgYnJpa2EnaSBhcmUgdmVyeSBlYXN5IHRvIHJlbWVtYmVyOgoKX18nJ2Jyb2RhJydf XwlCcmlkaSB2YXJpYWJsZSAxCgpfXycnYnJvZGUnJ19fCUJyaWRpIHZhcmlhYmxlIDIKCl9fJydi cm9kaScnX18JQnJpZGkgdmFyaWFibGUgMwoKX18nJ2Jyb2RvJydfXwlCcmlkaSB2YXJpYWJsZSA0 CgpfXycnYnJvZHUnJ19fCUJyaWRpIHZhcmlhYmxlIDUKCl9fJydjZWknJ19fCURlZmluZSBicmlk aSB2YXJpYWJsZSAobm90IGEgYnJpa2EnaSBhbmQgbm90IGluIEJST0RBKQoKCgoKClRoZSBmaXJz dCBmaXZlIGFyZSBqdXN0IGZpdmUgaW5zdGFuY2VzIG9mIHRoZSBzYW1lIHdvcmQuIFRoZXkgY2Fu IGJlIHVzZWQgYXMgc2hvcnRjdXRzIHRvIGJyaWRpLiBBZnRlciBzYXlpbmcgYSBicmlkaSwgc2F5 aW5nICcnY2VpIGJyb2RhJycgZGVmaW5lcyB0aGF0IGJyaWRpIGFzICcnYnJvZGEnJywgYW5kICcn YnJvZGEnJyBjYW4gdGhlbiBiZSB1c2VkIGFzICcnYnJpa2EnaScnIGZvciB0aGF0IGJyaWRpIGlu IHRoZSBmb2xsb3dpbmcgY29udmVyc2F0aW9uLgoKV2hpbGUgd2UncmUgYXQgaXQsIHRoZXJlIGlz IGFuIGFuYWxvZ291cyBzZXJpZXMgb2Ygc3Vta2EnaSwgd2hpY2ggcHJvYmFibHkgZG9lcyBub3Qg YmVsb25nIGluIHRoaXMgbGVzc29uLCBidXQgaGVyZSB0aGV5IGFyZSBhbnl3YXk6CgpfXycna28n YScnX18JU3VtdGkgdmFyaWFibGUgMQlfXycnZm8nYScnX18JU3VtdGkgdmFyaWFibGUgNgoKX18n J2tvJ2UnJ19fCVN1bXRpIHZhcmlhYmxlIDIJX18nJ2ZvJ2UnJ19fCVN1bXRpIHZhcmlhYmxlIDcK Cl9fJydrbydpJydfXwlTdW10aSB2YXJpYWJsZSAzCV9fJydmbydpJydfXwlTdW10aSB2YXJpYWJs ZSA4CgpfXycna28nbycnX18JU3VtdGkgdmFyaWFibGUgNAlfXycnZm8nbycnX18JU3VtdGkgdmFy aWFibGUgOQoKX18nJ2tvJ3UnJ19fCVN1bXRpIHZhcmlhYmxlIDUJX18nJ2ZvJ3UnJ19fCVN1bXRp IHZhcmlhYmxlIDEwCgoKCmFzIHdlbGwgYXMgdGhlICcnY2VpJyctZXF1aXZhbGVudCBmb3IgdGhp cyBzZXJpZXM6CgpfXycnZ29pJydfXyBEZWZpbmUgc3VtdGkgdmFyaWFibGUKCgoKCgpUaGVzZSBh cmUgdXNlZCBsaWtlIHRoZSAnJ2JyaWthJ2knJy1zZXJpZXMuIEp1c3QgcGxhY2UsIGZvciBpbnN0 YW5jZSwgJydnb2kga28ndScnIGFmdGVyIGEgc3VtdGksIGFuZCB0aGF0IHN1bXRpIGNhbiBiZSBy ZWZlcnJlZCB0byBieSAnJ2tvJ3UnJy4KCgoKU3RyYW5nZWx5LCB0aGVzZSBzZXJpZXMgYXJlIHJh cmVseSB1c2VkIGZvciB0aGVpciBpbnRlbmRlZCBwdXJwb3NlLiBUaGV5IGFyZSwgaG93ZXZlciwg dXNlZCBhcyBhcmJpdHJhcnkgc2VsYnJpIGFuZCBzdW10aSBpbiBleGFtcGxlIHRleHRzOgoK4oCc U28sIGlzIGl0IHRydWUgdGhhdCB0aGUgdHJ1dGggY29uZGl0aW9ucyBvZiAnJ2tvJ2Ega28nZSBi cm9kYSBuYSBrdScnIGFyZSBhbHdheXMgdGhlIHNhbWUgYXMgJyduYSBrdSBrbydhIGtvJ2UgYnJv ZGEnJz/igJ0g4oCcTm9wZSwgaXQgaXNuJ3Qu4oCdCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExl c3NvbiB0d2VudHktZml2ZSAobG9naWNhbCBjb25uZWN0aXZlcykKCuKAnElmIHlvdSBhc2sgYSBM b2piYW5pc3Q6IOKAnERvIHlvdSB3YW50IG1pbGsgb3Igc3VnYXIgaW4geW91ciBjb2ZmZWU/4oCd IHNoZSdsbCBhbnN3ZXI6IOKAnENvcnJlY3Qu4oCd4oCdCgoKCldpdHR5IGFzIHRoaXMgam9rZSBt aWdodCBiZSwgaXQgaWxsdXN0cmF0ZXMgYSB3ZWlyZCBwcm9wZXJ0eSBvZiB0aGUgRW5nbGlzaCB3 YXkgb2YgYXNraW5nIHRoaXMgcXVlc3Rpb24uIEl0IGlzIHBocmFzZWQgYXMgYSB0cnVlL2ZhbHNl IHF1ZXN0aW9uLCBidXQgaXQgcmVhbGx5IGlzbid0LiBJbiBMb2piYW4sIHdlIGNhbid0IGhhdmUg dGhpcyBraW5kIG9mIGluY29uc2lzdGVuY3ksIGFuZCBzbyB3ZSBtdXN0IGZpbmQgYW5vdGhlciB3 YXkgb2YgYXNraW5nIHRoaXMga2luZCBvZiBxdWVzdGlvbi4gSWYgeW91IHRoaW5rIGFib3V0IGl0 LCBpdCdzIHByZXR0eSBoYXJkIHRvIGZpbmQgYSBnb29kIGFuZCBlYXN5IHdheSwgYW5kIGl0IHNl ZW1zIExvamJhbiBoYXZlIHBpY2tlZCBhIGdvb2Qgd2F5IGluc3RlYWQgb2YgYW4gZWFzeSB3YXku CgoKClRvIGV4cGxhaW4gaXQsIGxldCB1cyB0YWtlIHR3byBzZXBhcmF0ZSBicmlkaTogQnJpZGkg MTog4oCcSSBsaWtlIG1pbGsgaW4gbXkgY29mZmVl4oCdIGFuZCBicmlkaSAyOiDigJxJIGxpa2Ug c3VnYXIgaW4gbXkgY29mZmVl4oCdLiBCb3RoIG9mIHRoZXNlIGJyaWRpIGNhbiBoYXZlIHRoZSBz dGF0ZSB0cnVlIG9yIGZhbHNlLiBUaGlzIHlpZWxkcyBmb3VyIGNvbWJpbmF0aW9ucyBvZiB3aGlj aCBicmlkaSBpcy9hcmUgdHJ1ZToKCkEgKSAxIGFuZCAyCUIgKSAxIGJ1dCBub3QgMgoKQyApIDIg YnV0IG5vdCAxCUQgKW5laXRoZXIgMSBub3IgMgoKCgpJLCBpbiBhY3R1YWxpdHksIGxpa2UgbWls ayBpbiBteSBjb2ZmZWUsIGFuZCBJJ20gaW5kaWZmZXJlbnQgYXMgdG8gd2hldGhlciB0aGVyZSBp cyBzdWdhciBpbiBpdCBvciBub3QuIFRoZXJlZm9yZSwgbXkgcHJlZmVyZW5jZSBjYW4gYmUgd3Jp dHRlbiBBICkgdHJ1ZSBCICkgdHJ1ZSBDICkgZmFsc2UgRCApIGZhbHNlLCBzaW5jZSBib3RoIEEg YW5kIEIgeWllbGRzIHRydWUgZm9yIG1lLCBidXQgbmVpdGhlciBDIG5vciBEIGRvZXMuIEEgbW9y ZSBjb21wYWN0IHdheSBvZiB3cml0aW5nIG15IGNvZmZlZSBwcmVmZXJlbmNlcyB3b3VsZCBiZSBU VEZGIGZvciB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UuIFNpbWlsYXJseSwgYSBwZXJzb24gbGlr aW5nIGhpcyBjb2ZmZWUgYmxhY2sgYW5kIHVuc3dlZXRlbmVkIHdvdWxkIGhhdmUgYSBjb2ZmZWUg cHJlZmVyZW5jZSBvZiBGRkZULiBUaGlzIGNvbWJpdGF0aW9uIG9mICJ0cnVlIiBhbmQgImZhbHNl IiBpcyBjYWxsZWQgYSDigJx0cnV0aCBmdW5jdGlvbuKAnSwgaW4gdGhpcyBjYXNlIGZvciB0aGUg dHdvIHN0YXRlbWVudHMg4oCcSSBsaWtlIG1pbGsgaW4gbXkgY29mZmVl4oCdIGFuZCDigJxJIGxp a2Ugc3VnYXIgaW4gbXkgY29mZmVl4oCdLiBOb3RlIHRoYXQgdGhlIG9yZGVyIG9mIHRoZSBzdGF0 ZW1lbnRzIG1hdHRlcnMuCgpJbiBMb2piYW4sIHdlIG9wZXJhdGUgd2l0aCA0IHRydXRoIGZ1bmN0 aW9ucywgd2hpY2ggd2UgY29uc2lkZXIgZnVuZGFtZW50YWw6CgpBOiBUVFRGIChhbmQvb3IpCgpP OiBURkZUIChpZiBhbmQgb25seSBpZmYpCgpVOiBUVEZGICh3aGV0aGVyIG9yIG5vdCkKCkU6IFRG RkYgKGFuZCkKCgoKSW4gdGhpcyBleGFtcGxlLCB0aGV5IHdvdWxkIHRyYW5zbGF0ZSB0byBzb21l dGhpbmcgbGlrZTogQTrigJ1KdXN0IG5vdCBibGFjayBjb2ZmZWXigJ0sIE86IOKAnEVpdGhlciBi b3RoIG1pbGsgb3Igc3VnYXIsIG9yIG5vdGhpbmcgZm9yIG1lLCBwbGVhc2XigJ0sIFU6IOKAnE1p bGssIGFuZCBJIGRvbid0IGNhcmUgYWJvdXQgaWYgdGhlcmUncyBzdWdhciBvciBub3TigJ0gYW5k IEU6IOKAnE1pbGsgYW5kIHN1Z2FyLCBwbGVhc2Uu4oCdLgoKCgpJbiBMb2piYW4sIHlvdSBwbGFj ZSB0aGUgd29yZCBmb3IgdGhlIHRydXRoIGZ1bmN0aW9uIGJldHdlZW4gdGhlIHR3byBicmlkaSwg c2VsYnJpIG9yIHN1bXRpIGluIHF1ZXN0aW9uLiBUaGF0IHdvcmQgaXMgY2FsbGVkIGEgbG9naWNh bCBjb25uZWN0aXZlLiBUaGUgd29yZHMgZm9yIHRydXRoIGZ1bmN0aW9ucyBiZXR3ZWVuIHN1bXRp IChhbmQganVzdCBmb3Igc3VtdGkhKSBhcmUgICcnLmEnJyAnJy5vJycgJycudScnIGFuZCAnJy5l JycuIEhvdyBuaWNlLiBGb3IgaW5zdGFuY2U6IOKAnEkgYW0gZnJpZW5kcyB3aXRoIGFuIEFtZXJp Y2FuIGFuZCBhIEdlcm1hbuKAnSB3b3VsZCBiZSAnJ2xvIG1lcmtvIC5lIGxvIGRvdGNvIGN1IHBl bmRvIG1pJycuCgpIb3cgd291bGQgeW91IHNheTog4oCcSSBzcGVhayB0byB5b3UgYW5kIG5vIG9u ZSBlbHNlP+KAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgdGF2bGEgZG8gLmUgbm8gZHJh dGEnJyBOb3RlIHRoYXQgdGhpcyBhY3R1YWxseSBzdGF0ZXMgdGhhdCBpdCdzIHRydWUgdGhhdCAi SSBzcGVhayB0byB5b3UiLn5+CgoKCk9uZSBtb3JlOiDigJxJIGxpa2UgY2hlZXNlIHdoZXRoZXIg b3Igbm90IEkgbGlrZSBjb2ZmZWXigJ0KCl9fJydja2FmaScnX18geDEgaXMgYSBxdWFudGl0eS9j b250YWlucyBjb2ZmZWUgZnJvbSBzb3VyY2Uvb2YgZ3JhaW4geDIKCgoKQW5zd2VyOiB+fmdyZXks Z3JleTonJ21pIG5lbGNpIGxvJ2UgY2lybGEgLnUgbG8nZSBja2FmaScnfn4KCgoKWW91IGNhbiBw ZXJoYXBzIGRlZHVjZSB0aGF0IHRoZXJlIGFyZSBzaXh0ZWVuIHBvc3NpYmxlIHRydXRoIGZ1bmN0 aW9ucywgc28gd2UgbmVlZCB0byBsZWFybiB0d2VsdmUgbW9yZSBpbiBvcmRlciB0byBrbm93IHRo ZW0gYWxsLiBFaWdodCBtb3JlIGNhbiBiZSBvYnRhaW5lZCBieSBuZWdhdGluZyBlaXRoZXIgdGhl IGZpcnN0IHNlbnRlbmNlIG9yIHRoZSBzZWNvbmQuIFRoZSBmaXJzdCBpcyBuZWdhdGVkIGJ5IHBy ZWZpeGluZyB0aGUgdHJ1dGggZnVuY3Rpb24gd29yZCB3aXRoICcnbmEnJywgdGhlIHNlY29uZCBp cyBuZWdhdGVkIGJ5IHBsYWNpbmcgJyduYWknJyBhZnRlciB0aGUgd29yZC4gRm9yIGV4YW1wbGUs IHNpbmNlICcnLmUnJyByZXByZXNlbnRzIFRGRkYsICcnLmUgbmFpJycgbXVzdCBiZSDigJxib3Ro IDEgaXMgdHJ1ZSBhbmQgMiBpcyBmYWxzZeKAnSwgd2hpY2ggaXMgRlRGRi4gU2ltaWxhcmx5LCAn J25hIC5hJycgaXMg4oCcSnVzdCBub3Q6IDEgaXMgdHJ1ZSBhbmQgMiBpcyBmYWxzZeKAnSwgd2hp Y2ggaXMgVFRGVC4gRG9pbmcgdGhpcyB0eXBlIG9mIGNvbnZlcnNpb24gaW4gdGhlIGhlYWQgcmVh bC10aW1lIGlzIHZlcnksIHZlcnkgaGFyZCwgc28gcGVyaGFwcyBvbmUgc2hvdWxkIGZvY3VzIG9u IGxlYXJuaW5nIGhvdyBsb2dpY2FsIGNvbm5lY3RpdmVzIHdvcmsgaW4gZ2VuZXJhbCwgYW5kIHRo ZW4gbGVhcm4gdGhlIGxvZ2ljYWwgY29ubmVjdGl2ZXMgdGhlbXNlbHZlcyBieSBoZWFydC4KCgoK Rm91ciBmdW5jdGlvbnMgY2Fubm90IGJlIG1hZGUgdGhpcyB3YXk6IFRUVFQsIFRGVEYsIEZURlQg YW5kIEZGRkYuIFRoZSBmaXJzdCBhbmQgdGhlIGxhc3QgY2Fubm90IGJlIG1hZGUgdXNpbmcgbG9n aWNhbCBjb25uZWN0aXZlcyBhdCBhbGwsIGJ1dCB0aGV5IGFyZSBraW5kIG9mIHVzZWxlc3MgYW55 d2F5LiBVc2luZyBhIGh5cG90aGV0aWNhbCBsb2dpY2FsIGNvbm5lY3RpdmUgaW4gdGhlIHNlbnRl bmNlIOKAnEkgbGlrZSBtaWxrIEZGRkYgc3VnYXIgaW4gbXkgY29mZmVl4oCdIGlzIGVxdWl2YWxl bnQgdG8gc2F5aW5nIOKAnEkgZG9uJ3QgbGlrZSBjb2ZmZWXigJ0sIGp1c3QgbW9yZSBjb21wbGlj YXRlZC4gVGhlIGxhc3QgdHdvLCBURlRGIGFuZCBGVEZULCBjYW4gYmUgbWFkZSBieSBwcmVmaXhp bmcgJycudScnIHdpdGggZ29vZCBvbCcgJydzZScnLCB3aGljaCBqdXN0IHJldmVydHMgdGhlIHR3 byBzdGF0ZW1lbnRzLiAnJ3NlIC51JycgLCBmb3IgaW5zdGFuY2UgaXMg4oCcQiB3aGV0aGVyIG9y IG5vdCBB4oCdLCB3aGljaCBpcyBURlRGLiBUaGUgZmluYWwgbGlzdCBvZiBhbGwgbG9naWNhbCBj b25uZWN0aXZlcyBjYW4gYmUgc2VlbiBiZWxvdy4KCgoKVFRUVDogQ2Fubm90IGJlIG1hZGUKClRU VEY6ICcnLmEnJwoKVFRGVDogJycuYSBuYWknJwoKVFRGRjogJycudScnIE9SICcnLnUgbmFpJycK ClRGVFQ6ICcnbmEgLmEnJwoKVEZURjogJydzZSAudScnCgpURkZUOiAnJy5vJycgT1IgJyduYSAu byBuYWknJwoKVEZGRjogJycuZScnCgpGVFRUOiAnJ25hIC5hIG5haScnCgpGVFRGOiAnJ25hIC5v JycgT1IgJycubyBuYWknJwoKRlRGVDogJydzZSAudSBuYWknJwoKRlRGRjogJycuZSBuYWknJwoK RkZUVDogJyduYSAudScnIE9SICcnbmEgLnUgbmFpJycKCkZGVEY6ICcnbmEgLmUnJwoKRkZGVDog JyduYSAuZSBuYWknJwoKRkZGRjogQ2Fubm90IGJlIG1hZGUKCgoKTG9naWNhbGx5LCBzYXlpbmcg YSBzZW50ZW5jZSB3aXRoIGEgbG9naWNhbCBjb25uZWN0aXZlLCBsaWtlIGZvciBpbnN0YW5jZSAn J21pIG5lbGNpIGxvJ2UgY2lybGEgLmUgbmFpIGxvJ2UgY2thZmknJyBpcyBlcXVpdmFsZW50IHRv IHNheWluZyB0d28gYnJpZGksIHdoaWNoIGFyZSBjb25uZWN0ZWQgd2l0aCB0aGUgc2FtZSBsb2dp Y2FsIGNvbm5lY3RpdmU6ICcnbWkgbmVsY2kgbG8nZSBjaXJsYSAuaSB7RSBOQUl9IG1pIG5lbGNp IGxvJ2UgY2thZmknJy4gVGhpcyBpcyBob3cgdGhlIGZ1bmN0aW9uIG9mIGxvZ2ljYWwgY29ubmVj dGl2ZXMgaXMgZGVmaW5lZC4gV2Ugd2lsbCBnZXQgdG8gaG93IHRvIGFwcGx5IGxvZ2ljYWwgY29u bmVjdGl2ZXMgdG8gYnJpZGkgaW4gYSBtb21lbnQuCgoKCkJ5IHB1dHRpbmcgYSDigJxq4oCdIGlu IGZyb250IG9mIHRoZSBjb3JlIHdvcmQgb2YgYSBsb2dpY2FsIGNvbm5lY3RpdmUsIGl0IGNvbm5l Y3RzIHR3byBzZWxicmkuIEFuIGV4YW1wbGUgaXMgJydtaSBuaW5tdSBuYSBqbyBuYW5tdScnIOKA nEkgYW0gYSBtYW4gb3IgYSB3b21hbiwgYnV0IG5vdCBib3Ro4oCdCgpfXycnbmlubXUnJ19fIHgx IGlzIGEgd29tYW4KCgoKVGhpcyBpcyDigJx0YW5ydS1pbnRlcm5hbOKAnSwgbWVhbmluZyB0aGF0 IGl0IGxvb3NlbHkgYmluZHMgc2VsYnJpIHRvZ2V0aGVyLCBldmVuIHdoZW4gdGhleSBmb3JtIGEg dGFucnU6ICcnbG8gZG90Y28gamEgbWVya28gcHJlbnUnJyBtZWFucyDigJxhIEdlcm1hbiBvciBB bWVyaWNhbiBtYW7igJ0sIGFuZCBpcyBwYXJzZWQgJydsbycnICgnJ2RvdGNvIGphIG1lcmtvJycp ICcncHJlbnUnJy4gVGhpcyBiaW5kaW5nIGlzIHNsaWdodGx5IHN0cm9uZ2VyIHRoYXQgbm9ybWFs IHRhbnJ1LWdyb3VwaW5nIChzdGlsbCB3ZWFrZXIgdGhhbiBzcGVjaWZpYyBncm91cGluZy13b3Jk cyksIGFuZCBhcyBzdWNoLCAnJ2xvIGRvdGNvIGphIG1lcmtvIG5pbm11IGphIG5hbm11JycgaXMg cGFyc2VkICcnbG8nJyAoJydkb3RjbyBqYSBtZXJrbycnKSAoJyduaW5tdSBqYSBuYW5tdScnKS4g VGhlIHNlbGJyaSBsb2dpY2FsIGNvbm5lY3RpdmVzIGNhbiBhbHNvIGJlIGF0dGFjaGVkIHRvICcn LmknJyBpbiBvcmRlciB0byBjb25uZWN0IHR3byBzZW50ZW5jZXMgdG9nZXRoZXI6ICcnbGEgLmtp bS4gY21lbmUgbWkgLmkganUgbWkgbmFubXUnJyDigJxJJ20gY2FsbGVkIEtpbSwgd2hldGhlciBv ciBub3QgSSdtIGEgbWFu4oCdLiBUaGUgY29tYmluYXRpb24gJycuaSBqZScnIHN0YXRlcyB0aGF0 IGJvdGggc2VudGVuY2VzIGFyZSB0cnVlLCBtdWNoIGxpa2Ugd2Ugd291bGQgYXNzdW1lIGhhZCBu byBsb2dpY2FsIGNvbm5lY3RpdmUgYmVlbiBwcmVzZW50LgoKCgpVbmZhaXJseSBoYXJkIHF1ZXN0 aW9uOiBVc2luZyBsb2dpY2FsIGNvbm5lY3RpdmVzLCBob3cgd291bGQgeW91IHRyYW5zbGF0ZSDi gJxJZiB5b3UncmUgY2FsbGVkIEJvYiwgeW91J3JlIGEgbWFuLuKAnT8KCgoKQW5zd2VyOiB+fmdy ZXksZ3JleTonJ3pvIC5iYWIuIGNtZW5lIGRvIC5pIG5hIGphIGRvIG5hbm11Jycgb3Ig4oCcRWl0 aGVyIHlvdSdyZSBub3QgbmFtZWQgQm9iIGFuZCBhIG1hbiwgb3IgeW91J3JlIG5vdCBuYW1lZCBC b2IgYW5kIG5vdCBhIG1hbiwgb3IgeW91J3JlIG5hbWVkIEJvYiBhbmQgYSBtYW4uIEJ1dCB5b3Ug Y2FuJ3QgYmUgbmFtZWQgQm9iIGFuZCBub3QgYmUgYSBtYW4u4oCdIFRoZSBvbmx5IGNvbWJpbmF0 aW9uIG5vdCBwZXJtaXR0ZWQgaXM6IOKAnFlvdSdyZSBjYWxsZWQgQm9iLCBidXQgbm90IGEgbWFu LuKAnSBUaGlzIG11c3QgbWVhbiB0aGF0LCBpZiBpdCdzIHRydWUgdGhhdCB5b3UncmUgY2FsbGVk IEJvYiwgeW91IG11c3QgYmUgYSBtYW4ufn4KCgoKSWYgd2UgdHJ5IHRvIHRyYW5zbGF0ZSB0aGUg c2FkLCBzYWQgZXZlbnQgb2Yg4oCcSSBjcmllZCBhbmQgZ2F2ZSBhd2F5IG15IGRvZ+KAnSwgd2Ug cnVuIGludG8gYSBwcm9ibGVtLgoKQXR0ZW1wdGluZyB0byBzYXkgdGhlIHNlbnRlbmNlIHdpdGgg YSAnJ2plJycgYmV0d2VlbiB0aGUgc2VsYnJpIOKAnGdhdmXigJ0gYW5kIOKAnGNyaWVk4oCdLCB3 b3VsZCBtZWFuIHRoZSBzYW1lIHdvcmQgZm9yIHdvcmQsIGJ1dCB1bmZvcnR1bmF0ZWx5IG1lYW4g dGhhdCDigJxJIGNyaWVkIHRoZSBkb2cgYW5kIGdhdmUgYXdheSB0aGUgZG9n4oCdLCBjZi4gdGhl IGRlZmluaXRpb24gb2YgbG9naWNhbCBjb25uZWN0aXZlcy4gT25lIGNhbiBjcnkgdGVhcnMgb3Ig ZXZlbiBibG9vZCwgYnV0IGNyeWluZyBkb2dzIGlzIGp1c3Qgc2lsbHkuCgpIb3dldmVyLCB3ZSBj YW4gZ2V0IGFyb3VuZCBieSB1c2luZyBicmlkaS10YWlsIGxvZ2ljYWwgY29ubmVjdGl2ZXMuIFdo YXQgdGhleSBkbyBpcyB0aGF0IGFueSBwcmV2aW91cyBzdW10Y2l0YSBhbmQgc3VtdGkgYXR0YWNo ZXMgdG8gYm90aCBzZWxicmkgYm91bmQgYnkgdGhlIGJyaWRpLXRhaWwgbG9naWNhbCBjb25uZWN0 aXZlLCBidXQgYW55IGZvbGxvd2luZyBzdW10aSBvciBzdW10Y2l0YSBvbmx5IGFwcGxpZXMgdG8g dGhlIGxhc3QgbWVudGlvbmVkOiBUaGUgYnJpZGkgc3BsaXRzIHVwIGZyb20gb25lIGhlYWQgdG8g dHdvIHRhaWxzLCB0byBzcGVhayBtZXRhcGhvcmljYWxseS4KClRoZSBmb3JtIG9mIGEgYnJpZGkt dGFpbCBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgZ2knViwgd2l0aCB0aGUgViBmb3IgdGhlIHZvd2Vs IG9mIHRoZSB0cnV0aCBmdW5jdGlvbi4KCkhvdyBjb3VsZCB5b3UgY29ycmVjdGx5IHRyYW5zbGF0 ZSB0aGUgRW5nbGlzaCBzZW50ZW5jZSB0byBMb2piYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6 JydtaSBwdSBrbGFrdSBnaSdlIGR1bmRhIGxlIG1pIGdlcmt1Jyd+fgoKCgpXaGF0IGRvZXMgJydy byByZW1uYSBjdSBwYWxjaSBnaSdvIHp1a3RlIGxvIHBhbGNpJycgbWVhbj8KCl9fJydwYWxjaScn X18geDEgaXMgZXZpbCBieSBzdGFuZGFyZCB4MgoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFBl b3BsZSBhcmUgZXZpbCBpZiBhbmQgb25seSBpZiB0aGV5IGRvIGV2aWwgdGhpbmdzLuKAnX5+CgoK CkZ1cnRoZXJtb3JlLCB0aGVyZSBpcyBhIGZvcmV0aG91Z2h0IGFsbC1idXQgdGFucnUgaW50ZXJu YWwgZ3JvdXAgb2YgY29ubmVjdGVycyBtYWRlIGJ5IHByZWZpeGluZyDigJxn4oCdIGluIGZyb250 IG9mIHRoZSB0cnV0aCBmdW5jdGlvbiB2b3dlbC4g4oCcRm9yZXRob3VnaHTigJ0gaW4gdGhpcyBj b250ZXh0IG1lYW5zIHRoYXQgdGhleSBuZWVkIHRvIGdvIGluIGZyb250IG9mIHRoZSB0aGluZ3Mg dGhleSBjb25uZWN0LCBhbmQgdGh1cyB5b3UgbmVlZCB0byB0aGluayBhYm91dCB0aGUgZ3JhbW1h dGljYWwgc3RydWN0dXJlIG9mIHRoZSBzZW50ZW5jZSBiZWZvcmUgc2F5aW5nIGl0LiBBbGwtYnV0 IHRhbnJ1IGludGVybmFsIG1lYW5zIHRoYXQgaXQgc2VydmVzIGJvdGggYXMgYSBjb25uZWN0aXZl IGJldHdlZW4gc3VtdGksIGJyaWRpLCBzZWxicmkgYW5kIGJyaWRpLXRhaWxzLCBidXQgbm90IGJl dHdlZW4gdHdvIHNlbGJyaSBvZiBvbmUgdGFucnUuIExldCBtZSBzaG93IHlvdSBob3cgaXQgd29y a3MsIHJld3JpdGluZyB0aGUgTG9qYmFuIHNlbnRlbmNlIGFib3ZlOgoKJydnbyBsbyByZW1uYSBj dSBwYWxjaSBnaSBsbyByZW1uYSBjdSB6dWt0ZSBsbyBwYWxjaScnCgpUaGUgZmlyc3QgbG9naWNh bCBjb25uZWN0aXZlIGluIHRoZXNlIGtpbmRzIG9mIGNvbnN0cnVjdHMgYXJlIHdoYXQgY2Fycmll cyB0aGUgdm93ZWwgd2hpY2ggc2lnbmFsIHdoYXQgdHJ1dGggZnVuY3Rpb24gaXMgYmVpbmcgdXNl ZC4gVGhlIHNlY29uZCBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgYWx3YXlzICcnZ2knJywgYW5kIGxp a2UgJycuaScnLCBpdCBoYXMgbm8gdHJ1dGggZnVuY3Rpb24uIEl0IHNpbXBseSBzZXJ2ZXMgdG8g c2VwYXJhdGUgdGhlIHR3byB0ZXJtcyBiZWluZyBjb25uZWN0ZWQuIElmIHlvdSB3YW50IHRvIG5l Z2F0ZSB0aGUgZmlyc3Qgb3Igc2Vjb25kIHNlbnRlbmNlLCBhICcnbmFpJycgaXMgc3VmZml4ZWQg dG8gZWl0aGVyIHRoZSBmaXJzdCAoZm9yIHRoZSBmaXJzdCBzZW50ZW5jZSkgb3Igc2Vjb25kIChm b3IgdGhlIHNlY29uZCBzZW50ZW5jZSkgbG9naWNhbCBjb25uZWN0aXZlLgoKUHJvdmlkZWQgdGhh dCB0aGUgY29uc3RydWN0cyBhcmUgdGVybWluYXRlZCBwcm9wZXJseSwgaXQgaGFzIHJlbWFya2Fi bGUgZmxleGliaWxpdHksIGFzIHRoZSBmb2xsb3dpbmcgZmV3IGV4YW1wbGVzIGRlbW9uc3RyYXRl OgoKJydtaSBnbyBrbGFtYSBnaSBjYWR6dSB2YXUgbGUgbWkgemRhbmknJyDigJxJIGdvLCBpZiBh bmQgb25seSBpZiB3YWxrLCB0byBteSBob21l4oCdIG9yIOKAnEkgY2FuIG9ubHkgZ28gdG8gbXkg aG9tZSBieSB3YWxraW5nLuKAnSBOb3RpY2UgdGhhdCB0aGUgJyd2YXUnJyBpcyBuZWVkZWQgdG8g bWFrZSBsZSBtaSB6ZGFuaSBhcHBseSB0byBib3RoICcnY2FkenUnJyBhbmQgJydrbGFtYScnLgoK JydzZSBndSBkbyBnaSBuYWkgbWkgYmFqcmEgbGUgZG8gY2t1bGUnJyDigJxXaGV0aGVyIG9yIG5v dCB5b3UsIHRoZW4gbm90IEksIHJ1biB0byB5b3VyIHNjaG9vbOKAnSBvciDigJxJIHdvbid0IHJ1 biB0byB5b3VyIHNjaG9vbCBubyBtYXR0ZXIgaWYgeW91IGRvIG9yIG5vdOKAnQoKCgpUaGUgdGFu cnUtaW50ZXJuYWwgZXF1aXZhbGVudCBvZiBnViBpcyBndSdWLiBUaGVzZSBhcmUgZXhhY3RseSB0 aGUgc2FtZSwgZXhjZXB0IHRoYXQgdGhleSBhcmUgZXhjbHVzaXZlbHkgdGFucnUtaW50ZXJuYWws IGFuZCB0aGF0IHRoZXkgYmluZCBhIHNlbGJyaSB0byB0aGUgJydnaScnIHRpZ2h0ZXIgdGhhbiBu b3JtYWwgdGFucnUtZ3JvdXBpbmcsIGJ1dCB3ZWFrZXIgdGhhbiBleHBsaWNpdCBiaW5kaW5nLXN1 bXRpOgoKJydsYSB4YW56LmtydC4gZ3UnZSBtZXJrbyBnaSBkb3RjbyBuYW5tdScnIGlzIGVxdWl2 YWxlbnQgdG8KCicnbGEgeGFuei5rcnQuIG1lcmtvIGplIGRvdGNvIG5hbm11JycKCgoKQW5kIHNv IHlvdSd2ZSByZWFkIHBhZ2UgdXAgYW5kIHBhZ2UgZG93biBqdXN0IHRvIGdldCB0aGUgbmVjZXNz YXJ5IGtub3dsZWRnZSBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGxlYXJuIGhvdyB0byBhc2sg4oCc V291bGQgeW91IGxpa2UgbWlsayBvciBzdWdhciBpbiB5b3VyIGNvZmZlZT/igJ0gaW4gTG9qYmFu LiBTaW1wbHkgcGxhY2UgYSBxdWVzdGlvbiBsb2dpY2FsIGNvbm5lY3RpdmUgaW5zdGVhZCBvZiBh bm90aGVyIGxvZ2ljYWwgY29ubmVjdGl2ZSwgYW5kIGxpa2UgJydtYScnLCBpdCBhc2tzIHRoZSBs aXN0ZW5lciB0byBmaWxsIGluIGEgY29ycmVjdCByZXNwb25zZS4gVW5mb3J0dW5hdGVseSwgdGhl c2UgcXVlc3Rpb24tbG9naWNhbCBjb25uZWN0aXZlcyBkb24ndCBhbHdheXMgbWF0Y2ggdGhlIG1v cnBob2xvZ2ljYWwgcGF0dGVybiBvZiB0aGUgbG9naWNhbCBjb25uZWN0aXZlcyB0aGV5IGFzayBm b3I6CgpfXycnamknJ19fIExvZ2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjogQXNrcyBmb3IgYSBz dW10aSBsb2dpY2FsIGNvbm5lY3RpdmUgKEEpCgpfXycnamUnaScnX18gTG9naWNhbCBjb25uZWN0 aXZlIHF1ZXN0aW9uOiBBc2tzIGZvciBhIHRhbnJ1LWludGVybmFsIHNlbGJyaSBsb2dpY2FsIGNv bm5lY3RpdmUgKEpBKQoKX18nJ2dpJ2knJ19fIExvZ2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjog QXNrcyBmb3IgYSBicmlkaS10YWlsIGxvZ2ljYWwgY29ubmVjdGl2ZSAoR0loQSkKCl9fJydnZSdp JydfXyBMb2dpY2FsIGNvbm5lY3RpdmUgcXVlc3Rpb246IEFza3MgZm9yIGEgZm9yZXRob3VnaHQg YWxsLWJ1dCB0YW5ydSBpbnRlcm5hbCBsb2dpY2FsIGNvbm5lY3RpdmUgKEdBKQoKX18nJ2d1J2kn J19fIExvZ2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjogQXNrcyBmb3IgYSBmb3JldGhvdWdodCBv bmx5IHRhbnJ1IGludGVybmFsIGxvZ2ljYWwgY29ubmVjdGl2ZSAoR1VoQSkKCgoKU28uLi4gaG93 IHdvdWxkIHlvdSBhc2sgaWYgdGhlIHBlcnNvbnMgd2FudHMgbWlsayBvciBzdWdhciBpbiBoZXIg Y29mZmVlPwoKX18nJ2xhZHJ1JydfXyB4MSBpcy9jb250YWlucyBtaWxrIGZyb20gc291cmNlIHgy CgpfXycnc2FrdGEnJ19fIHgxIGlzL2NvbnRhaW5zIHN1Z2FyIGZyb20gc291cmNlIHgyIG9mIGNv bXBvc2l0aW9uIHgzCgoKClBvc3NpYmxlIGFuc3dlcjogfn5ncmV5LGdyZXk6JydzYWt0YSBqZSdp IGxhZHJ1IGxlIGRvIGNrYWZpJycgdGhvdWdoIEkgZ3Vlc3Mgc29tZXRoaW5nIG1vcmUgRW5nbGlz aCBhbmQgbGVzcyBlbGVnYW50IGNvdWxkIGFsc28gc3VmZmljZSBsaWtlICcnZG8gZGppY2EgbGVu dSBsbyBzYWt0YSBqaSBsbyBsYWRydSBjdSBuZW5yaSBsZSBkbyBja2FmaScnfn4KCgoKISFMb2pi YW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHktc2l4IChub24tbG9naWNhbCBjb25uZWN0aXZlcykK ClRoZSB3b3JkICJsb2dpY2FsIiBpbiAibG9naWNhbCBjb25uZWN0aXZlIiByZWZlcnMgdG8gdGhl IGFzc29jaWF0aW9uIGEgbG9naWNhbCBjb25uZWN0aXZlIGhhcyB3aXRoIGEgdHJ1dGggZnVuY3Rp b24uIE5vdCBhbGwgdXNlZnVsIGNvbm5lY3RpdmVzIGNhbiBiZSBkZWZpbmVkIHRocm91Z2ggYSB0 cnV0aCBmdW5jdGlvbiwgaG93ZXZlciwgYW5kIHNvIHRoZXJlIGFyZSBvdGhlciBjb25uZWN0aXZl cyBiZXNpZGUgdGhlIGxvZ2ljYWwgb25lcy4KClRoZSBtZWFuaW5nIG9mIGEgbG9naWNhbCBjb25u ZWN0aXZlIGlzIGRlZmluZWQgdGhlIHNhbWUgYXMgdHdvIGRpZmZlcmVudCBicmlkaSBjb25uZWN0 ZWQgd2l0aCB0aGF0IGxvZ2ljYWwgY29ubmVjdGl2ZS4gRm9yIGluc3RhbmNlLCAnJ21pIG5pdGN1 IGRvIC5hIGxhIC5kamFuLicnIGlzIGRlZmluZWQgdG8gYmUgZXF1aXZhbGVudCB0byAnJ21pIG5p dGN1IGRvIC5pIGphIG1pIG5pdGN1IGxhIC5kamFuLicnLiBUaGlzIGRlZmluaXRpb24gaXMgdXNl ZnVsIHRvIGJlYXIgaW4gbWluZCwgYmVjYXVzZSBpdCBpbXBsaWVzIHRoYXQgc29tZXRpbWVzLCBz dW10aSBjYW5ub3QgYmUgY29ubmVjdGVkIHdpdGggbG9naWNhbCBjb25uZWN0aXZlcyB3aXRob3V0 IGNoYW5pbmcgdGhlIG1lYW5pbmcuIENvbnNpZGVyIHRoZSBzZW50ZW5jZTogIkphY2sgYW5kIEpv ZSB3cm90ZSB0aGlzIHBsYXkuIiBPbmUgYXR0ZW1wdCBhdCBhIHRyYW5zbGF0aW9uIHdvdWxkIGJl OiAnJ3RpIGRyYWNpIGZpIGxhIC5kamFrLiBlIGxhIC5kam91cy4nJwoKX18nJ2RyYWNpJydfXyB4 MSBpcyBhIGRyYW1hL3BsYXkgYWJvdXQgeDIgYnkgd3JpdGVyL2RyYW1hdGlzdCB4MyBmb3IgYXVk aWVuY2UgeDQgd2l0aCBhY3RvcnMgeDUKCgoKVGhlIHByb2JsZW0gd2l0aCB0aGlzIHRyYW5zbGF0 aW9uIGlzIHRoYXQgaXQgbWVhbnMgJyd0aSBkcmFjaSBsYSAuZGphay4gaWplIHRpIGRyYWNpIGxh IC5kam91cy4nJywgd2hpY2ggaXMgbm90IHJlYWxseSB0cnVlLiBOZWl0aGVyIEphY2sgbm9yIEpv ZSB3cm90ZSBpdCwgdGhleSBkaWQgc28gdG9nZXRoZXIuIFdoYXQgd2Ugd2FudCBoZXJlIGlzIG9m IGNvdXJzZSBhIG1hc3MsIGFuZCBzb21lIHdheSB0byBqb2luIEphY2sgYW5kIEpvZSBpbiBvbmUg bWFzcy4gVGhpcyBoYXMgbGl0dGxlIHRvIGRvIHdpdGggYSB0cnV0aCBmdW5jdGlvbiBzbyB3ZSBt dXN0IHVzZSBhIG5vbi1sb2dpY2FsIGNvbm5lY3RpdmUsIHdoaWNoIGFyZSBvZiBzZWxtYSdvIEpP SS4gV2UnbGwgcmV0dXJuIHRvIHRoaXMgSmFjayBhbmQgSm9lLXByb2JsZW0gaW4gYSBsaXR0bGUg LSBmaXJzdDogRm91ciBvZiB0aGUga25vd24gSk9JOgoKCgp8fFRoZSBMb2piYW4gY29ubmVjdGl2 ZTp8JydjZScnfCcnY2UnbycnfCcnam9pJyd8Jydqbyd1JycKCkpvaW5zIHN1bXRpIGFuZCBmb3Jt cyBhOnxzZXR8c2VxdWVuY2V8bWFzc3xncm91cCBvZiBpbmRpdmlkdWFsc3x8CgpUaGUgZnVuY3Rp b25zIG9mIHRoZXNlIHdvcmRzIGFyZSBzaW1wbGU6ICcnbG8naSByZW1uYSBqbyd1IGxvJ2kgZ2Vy a3UnJyBjb25zaWRlcnMgYm90aCB0aGUgc2V0IG9mIGh1bWFucyBhbmQgdGhlIHNldCBvZiBkb2dz IGRpc3RyaWJ1dGl2ZWx5IChhcyBpbmRpdmlkdWFscykuIFJlbWVtYmVyIGZyb20gbGVzc29uIHR3 ZW50eS10d28gKHF1YW50aWZpZXJzKSB0aGF0ICJkaXN0cmlidXRpdml0eSIgbWVhbnMgdGhhdCB3 aGF0IGlzIHRydWUgZm9yIHRoZSBncm91cCBpcyBhbHNvIHRydWUgZm9yIGVhY2ggb2YgdGhlIGlu ZGl2aWR1YWxzIGFsb25lLiBTaW1pbGFybHkgJydsb2kgcm8gZ2lzbXUgY2UnbyBsb2kgcm8gbHVq dm8gY2UnbyBsb2kgcm8gZnUnaXZsYScnIGlzIGEgc2VxdWVuY2UgY29uc2lzdGluZyBvZiB0aGUg bWFzcyBvZiBhbGwgZ2lzbXUsIGZvbGxvd2VkIGJ5IHRoZSBtYXNzIG9mIGFsbCBsdWp2bywgZm9s bG93ZWQgYnkgdGhlIG1hc3Mgb2YgYWxsIGZ1J2l2bGEuCgpBcyB3aXRoIGFsbCBvZiB0aGUgSk9J IHdoaWNoIGhhcyBhbiBpbmhlcmVudCBvcmRlciwgJydzZScnIG1heSBiZSBwdXQgYmVmb3JlICcn Y2UnbycnIHRvIGludmVyc2UgdGhlIG9yZGVyOiAiQSAnJ2NlJ28nJyBCIiBpcyB0aGUgc2FtZSBh cyAiQiBzZSAnJ2NlJ28nJyBBIi4KCgoKSG93IGNhbiB5b3UgY29ycmVjdGx5IHRyYW5zbGF0ZSAi SmFjayBhbmQgSm9lIHdyb3RlIHRoaXMgcGxheSI/CgpBbnN3ZXI6IH5+Z3JleSxncmV5OiAnJ3Rp IGRyYWNpIGZpIGxhIC5kamFrLiBqb2kgbGEgLmRqb3VzLicnfn4gCgoKClRoZSBjbWF2byBvZiBK T0kgYXJlIHZlcnkgZmxleGlibGU6IFRoZXkgY2FuIGFjdCBib3RoIGFzIHN1bXRpIGNvbm5lY3Rp dmVzIGFuZCB0YW5ydS1pbnRlcm5hbCBjb25uZWN0aXZlcywgc28gdGhleSBjYW4gYmUgdXNlZCB0 byBjb25uZWN0IHN1bXRpLCBzZWxicmkgYW5kIGJyaWRpLiBUaGlzIGZsZXhpYmlsaXR5IG1lYW5z IHRoYXQgb25lIG11c3QgYmUgY2FyZWZ1bCB0byB1c2UgZmEnb3JtYSdvIGNvcnJlY3RseSB3aGVu IHVzaW5nIGEgSk9JLiAKCldoYXQgaXMgd3Jvbmcgd2l0aCB0aGUgYnJpZGkgJydsbyBkb3RjbyBq byd1IG1pIGN1IGtsYW1hIGxhIGRvdGNvIGd1Z2RlJyc/CgpBbnN3ZXI6IH5+Z3JleSxncmV5OiAn J2pvJ3UnJyBpcyBwdXQgYWZ0ZXIgYSBzZWxicmksIHNvIGl0IGV4cGVjdHMgYSBzZWxicmkgYWZ0 ZXIgaXQgdG8gY29ubmVjdCB0bywgYnV0IG5vbmUgaXMgZm91bmQuIEhhZCAgYSAnJ2t1JycgYmVl biBwcmVzZW50IGJlZm9yZSB0aGUgY29ubmVjdGl2ZSwgaXQgd291bGQgaGF2ZSBiZWVuIGdyYW1t YXRpY2Fsfn4KCgoKSWYgc2V2ZXJhbCBKT0kgYXJlIHVzZWQsICcnYm8nJyBhbmQvb3IgJydrZScn IG1heSBiZSB1c2VkIHRvIG92ZXJyaWRlIHRoZSB1c3VhbCBsZWZ0LWdyb3VwaW5nOiAnJ21pIGpv aSBkbyBjZSdvIGxhIC5kamFrLiBqb2kgYm8gbGEgLmRqb3VzLiBjdSBwdSdvIGNpJ2Vya2VpIGRh bWJhIGxlaSB4dW5yZScnICJNZSBhbmQgeW91LCBhbmQgdGhlbiBKYWNrIGFuZCBKb2UgYXJlIGFi b3V0IHRoZSBwbGF5IGFnYWluc3QgdGhlIHJlZHMiLiBDb250cmFzdCB3aXRoICcnbWkgam9pIGRv IGNlJ28gbGEgLmRqYWsuIGpvaSBsYSAuZGpvdXMuIGN1IHB1J28gY2knZXJrZWkgZGFtYmEgbGVp IHh1bnJlJycgLSAiRmlyc3QgbWUgYW5kIHlvdSwgdGhlbiBKYWNrIHdpbGwgdG9nZXRoZXIgd2l0 aCBKb2UgcGxheSBhZ2FpbnN0IHRoZSByZWRzIi4gCgpDb25uZWN0aW5nIGJyaWRpIHdpdGggSk9J IGNhbiBtYWtlIHNvbWUgaW50ZXJlc3RpbmcgaW1wbGljYXRpb25zIG9mIHRoZSByZWxhdGlvbnNo aXAgYmV0d2VlbiB0aGUgYnJpZGk6ICcnbGEgLmRqYWsuIG1vcnNpIHJpJ2EgbG8gbnUgcmkgZHp1 c29pIC5pIGpvaSBsZSBqZW1qYSdhIHBvIHJpIGN1IGJlYm5hJycgLSAiSmFjayBpcyBkZWFkIGJl Y2F1c2UgaGUgd2FzIGEgaW5mYW50cnkgc29sZGllciBhbmQgaGlzIGdlbmVyYWwgd2FzIGFuIGlk aW90IiwgaW1wbHlpbmcgdGhhdCB0aGVzZSB0d28gYnJpZGkgbWFzc2VkIHRvZ2V0aGVyIHdhcyB0 aGUgcGh5c2ljYWwgY2F1c2Ugb2YgaGlzIGRlYXRoOiBIYWQgaGUgb25seSBiZWVuIGluIGFuIGFy bW9yZWQgdmVoaWNsZSBvciB3aXRoIGEgY29tcGV0ZW50IGNvbW1hbmRlciwgaGUgbWlnaHQgaGFk IHN1cnZpdmVkLgoKX18nJ2R6dXNvaScnX18geDEgaXMgYW4gaW5mYW50cnkgc29sZGllciBvZiBh cm15IHgyCgpfXycnamVtamEnYScnX18geDEgaXMgYSBnZW5lcmFsIG9mIGFybXkgeDIgaW4gZnVu Y3Rpb24geDMKCl9fJydiZWJuYScnX18geDEgaXMgZm9vbGlzaC9pZGlvdGljIGluIHByb3BlcnR5 L2FzcGVjdCB4MgoKCgpOb24tbG9naWNhbCBjb25uZWN0aXZlcyBtYXkgYWxzbyBiZSBuZWdhdGVk IHdpdGggJyduYWknJywgaW5kaWNhdGluZyB0aGF0IHNvbWUgb3RoZXIgY29ubmVjdGl2ZSBpcyBh cHByb3ByaWF0ZTogJydsbyBkamFjdSBjZSdvIG5haSAuZSdvIGxvIGxhZHJ1IGN1IGNhdnlmbGUg ZmkgbGUgbWkgdGNhdGknJyAtICJQbGVhc2UgZG9uJ3QgcG91ciBmaXJzdCB3YXRlciB0aGVuIG1p bGsgaW4gbXkgdGVhIi4gVGhpcywgb2YgY291cnNlLCBzYXlzIG5vdGhpbmcgYWJvdXQgd2hpY2gg Y29ubmVjdGl2ZSBpcyBhcHByb3ByaWF0ZSAtIG9uZSBtaWdodCBndWVzcyAnJ3NlIGNlJ28nJyAo Zmlyc3QgbWlsaywgdGhlbiB3YXRlciksIG9ubHkgdG8gZmluZCBvdXQgdGhhdCAnJy5lIG5haScn IChvbmx5IHdhdGVyLCBubyBtaWxrIGF0IGFsbCkgd2FzIHRoZSBjb3JyZWN0IG9uZS4KCl9fJydj YXZ5ZmxlJydfXyB4MSwgY29uc2lzdGluZyBvZiB4MiwgZmxvd3MgaW50byB4MyBmcm9tIHg0CgpK dXN0IGxpa2UgYSBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgYSBwbGF1c2libGUgbmVnYXRpb24gb2Yg YSBub24tbG9naWNhbCBjb25uZWN0aXZlLCBhbnN3ZXJzIHRvIHF1ZXN0aW9ucyBvZiB0aGUgdHlw ZSAnJ2ppJycgb3IgJydqZSdpJycgY2FuIGJlIGJvdGggbG9naWNhbCBhbmQgbm9uLWxvZ2ljYWw6 IEE6ICcnbGFkcnUgamUnaSBzYWt0YSBsZSBkbyBja2FmaScnIEI6ICcnc2UgY2UnbycnICgiTWls ayBvciBzdWdhciBpbiB5b3UgY29mZmVlPyIgIkZpcnN0IHRoZSBsYXR0ZXIsIHRoZW4gdGhlIGZv cm1lciIpLiBJbiB0aGlzIGNhc2UgJydjZScnIHdvdWxkIG1ha2Ugbm8gc2Vuc2UgYXQgYWxsLCBz aW5jZSBzZXRzIGNhbid0IGJlIGNvbnRhaW5lZCBpbiBjb2ZmZWUsIGFuZCAnJ2pvaScnIChib3Ro IG1peGVkIHRvZ2V0aGVyKSB3b3VsZCBtZWFuIHRoZSBzYW1lIGFzICcnam8ndScnIChib3RoIG9m IHRoZW0pLCB1bmxlc3MgdGhlIHJlc3BvbmRhbnQgcHJlZmVycmVkIHVubWl4ZWQgc3VnYXIgaW4g aGlzIGNvZmZlZS4KCgoKVGhlIGZpZnRoIEpPSSBJIHByZXNlbnQgaGVyZSBpcyBhIGJpdCBvZiBh biBvZGRiYWxsOgoKX18nJ2ZhJ3UnJ19fIE5vbi1sb2dpY2FsIGNvbm5lY3RpdmU6IFVubWl4ZWQg b3JkZXJlZCBkaXN0cmlidXRpb24gKEEgYW5kIEIsIHJlc3BlY3RpdmVseSkKCldoZW4gb25seSBv bmUgJydmYSd1JycgaXMgcGxhY2VkIHdpdGhpbiBhIGJyaWRpIChvciBzZXZlcmFsIGJyaWRpIGNv bm5lY3RlZCB0b2dldGhlciB3aXRoIGNvbm5lY3RvcnMpLCAnJ2ZhJ3UnJyBtYXkgYmUgYXNzdW1l ZCB0byBiZSBpZGVudGljYWwgdG8gJydqbyd1JycuIFdoZW4gc2V2ZXJhbCAnJ2ZhJ3UnJyBpcyB1 c2VkIHdpdGhpbiBvbmUgYnJpZGksIGhvd2V2ZXIsIHRoZSBjb25zdHJ1Y3RzIGJlZm9yZSAnJ2Zh J3UnJyBlYWNoIGFwcGx5IHRvIGVhY2ggb3RoZXIsIGFuZCB0aGUgY29uc3RydWN0cyBhZnRlciAn J2ZhJ3UnJyBlYWNoIGFwcGx5IHRvIGVhY2ggb3RoZXIuIExldCdzIGhhdmUgYW4gZXhhbXBsZToK CicnbWkgZmEndSBkbyBydXNrbyBmYSd1IGthZG5vJycgLSAiWW91IGFuZCBJIGFyZSBSdXNzaWFu IGFuZCBDYW5hZGlhbiIsIGltcGx5aW5nIHRoYXQgJydtaScnIGdvZXMgd2l0aCAnJ3J1c2tvJycg YW5kICcnZG8nJyBnb2VzIHdpdGggJydrYWRubycnLCBhbmQgaW1wbHlpbmcgbm90aGluZyBhYm91 dCBhbnkgb3RoZXIgY29tYmluYXRpb24uIE9mIGNvdXJzZSwgaW4gdGhpcyBleGFtcGxlLCBpdCB3 b3VsZCBiZSBtdWNoIGVhc2llciB0byBzYXkgJydtaSBydXNrbyAuaSBkbyBrYWRubycnLgoKCgpU aGVzZSBsYXN0IHRocmVlIEpPSSBjb25uZWN0cyB0d28gc2V0cyB0byBtYWtlIG5ldyBzZXRzOgoK X18nJ2pvJ2UnJ19fCUEgdW5pb24gQgoKX18nJ2t1J2EnJ19fCUEgaW50ZXJzZWN0aW9uIEIKCl9f JydwaSd1ICcnX18JQ3Jvc3MgcHJvZHVjdCBvZiBBIGFuZCBCCgoKClRoZXNlIGFyZSBwcm9iYWJs eSBub3QgdmVyeSB1c2VmdWwgZm9yIHRoZSBhdmVyYWdlIExvamJhbmlzdCwgYnV0IEkgbWlnaHQg YXMgd2VsbCBpbmNsdWRlIHRoZW0gaGVyZS4KClRoZSBmaXJzdCBvbmUsICcnam8nZScnLCBtYWtl cyBhIG5ldyBzZXQgZnJvbSB0d28gc2V0cy4gVGhpcyBuZXcgc2V0IGNvbnRhaW5zIG9ubHkgdGhv c2UgbWVtYmVycyB3aGljaCBhcmUgaW4gYm90aCBzZXRzLgoKQSBzZXQgbWFkZSB3aXRoICcna3Un YScnIGNvbnRhaW5zIGFsbCB0aGUgbWVtYmVycyBvZiBzZXQgQSBhbmQgdGhvc2Ugb2Ygc2V0IEIu IElmIGFueXRoaW5nIGlzIGEgbWVtYmVyIG9mIGJvdGggc2V0cywgdGhleSBhcmUgbm90IGNvdW50 ZWQgdHdpY2UuCgonJ3BpJ3UnJyBpcyBhIGxpdHRsZSBtb3JlIGNvbXBsaWNhdGVkLiBBIHNldCAi QSAnJ3BpJ3UnJyBCIiBjb250YWlucyBhbGwgdGhlIHBvc3NpYmxlIGNvbWJpbmF0aW9ucyBvZiAi YSAnJ2NlJ28nJyBiIiwgd2hlcmUgYSBpcyBhIG1lbWJlciBvZiBBIGFuZCBiIGlzIGEgbWVtYmVy IG9mIEIuIEl0IGlzIHRodXMgYSBzZXQgb2Ygc2VxdWVuY2VzIG9mIG1lbWJlcnMuIElmLCBmb3Ig aW5zdGFuY2UsIHNldCBBIGNvbnRhaW5lZCB0aGUgbWVtYmVycyBwIGFuZCBxLCBhbmQgc2V0IEIg Y29udGFpbmVkIG1lbWJlcnMgZiBhbmQgZywgdGhlbiBBICcncGkndScnIEIgd291bGQgYmUgYSBz ZXQgY29uc2lzdGluZyBvZiB0aGUgZm91ciBtZW1iZXJzIHAgJydjZSdvJycgZiwgcCAnJ2NlJ28n JyBnLCBxICcnY2UnbycnIGYgYW5kIHEgJydjZSdvJycgZy4KCgoKISEhRW5kIG9mIHBhcnQgdHdv CgooKHdhdmVsZXNzb25zY29udGludWVkfFJldHVybiB0byB0aGUgd2F2ZWxlc3NvbnMgcGFydCBv bmUpKQoKVGhpcyBwYXJ0IGNvbmNsdWRlcyB0aGUgdHV0b3JpYWwgdG8gb3JkaW5hcnkgTG9qYmFu LiBJbiB0aGUgdGhpcmQgcGFydCwgSSB3aWxsIGZvY3VzIG9uIGFkdmFuY2VkIExvamJhbiAtIHRo ZSBwYXJ0cyB5b3UgZG9uJ3QgYWN0dWFsbHkgbmVlZCB0byBrbm93IHRvIHNwZWFrIHRoZSBsYW5n dWFnZS4gSSBkaXNjb3VyYWdlIHlvdSB0byBiZWdpbiByZWFkaW5nIHRoZSB0aGlyZCBwYXJ0IHVu dGlsIHlvdSBmZWVsIGNvbWZvcnRhYmxlIGVub3VnaCB3aXRoIHRoZSBpbmZvcm1hdGlvbiBpbiB0 aGUgZmlyc3QgdHdvIHBhcnRzIHRvIGhvbGQgYW4gd3JpdHRlbiBjb252ZXJzYXRpb24gaW4gdGhl IGxhbmd1YWdlLiBJZiB5b3UgX19kb19fIHdpc2ggdG8gY29udGludWUsIHlvdSBjYW4gcHJlc3Mg KCh3YXZlbGVzc29uc2NvbnRpbnVlZHAzfHRoaXMgbGluaykpIHRvIGdvIHRoZXJlLgoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCldpa2ljaGFuZ2VzIG1h aWxpbmcgbGlzdApXaWtpY2hhbmdlc0Bsb2piYW4ub3JnCmh0dHA6Ly9tYWlsLmxvamJhbi5vcmcv bWFpbG1hbi9saXN0aW5mby93aWtpY2hhbmdlcwo=