Received: from localhost ([::1]:44531 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1TCcj9-0000IB-Cz; Fri, 14 Sep 2012 13:43:03 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:55326 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1TCciz-0000I5-Sr for wikineurotic@lojban.org; Fri, 14 Sep 2012 13:43:00 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Fri, 14 Sep 2012 13:42:53 -0700 From: "Apache" Date: Fri, 14 Sep 2012 13:42:53 -0700 To: wikineurotic@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 selpa'i at 20:42 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 ---- ---------------------- -------------------------------------------------- 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: [Wikineurotic] Wiki page wavelessonscontinuedp2 changed by selpa'i X-BeenThere: wikineurotic@lojban.org X-Mailman-Version: 2.1.14 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: wikineurotic-bounces@lojban.org VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWRwMiB3YXMgY2hhbmdlZCBieSBzZWxwYSdpIGF0 IDIwOjQyIFVUQwoKWW91IGNhbiB2aWV3IHRoZSBwYWdlIGJ5IGZvbGxvd2luZyB0aGlzIGxpbms6 CiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rpa2kvd2F2ZWxlc3NvbnNjb250aW51ZWRwMgoKWW91 IGNhbiB2aWV3IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2lu ZyB0aGlzIGxpbms6IApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5 LnBocD9wYWdlPXdhdmVsZXNzb25zY29udGludWVkcDImY29tcGFyZT0xJm9sZHZlcj05Jm5ld3Zl cj0xMAoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqClRoZSBjaGFuZ2VzIGluIHRoaXMgdmVyc2lvbiBmb2xsb3cgYmVsb3csIGZvbGxv d2VkIGFmdGVyIGJ5IHRoZSBjdXJyZW50IGZ1bGwgcGFnZSB0ZXh0LgoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKCistKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1MaW5l czogNzY0LTc2OCBjaGFuZ2VkIHRvICtMaW5lczogNzY0LTc2OCBAQAorLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwonJ2xvIHBhbXBlJ28g amUgbmFpIHNwZW5pIHpvJ3UgbWkgbmEgenVucmUnJyAtICJDb25jZXJuaW5nIGxvdmVycyB3aG8g YXJlIG5vdCBzcG91c2VzOiBJIGRvIG5vdCBhcHByb3ZlIi4gVGhlIGJlbmVmaXRzIG9mIGtpbmQg b2Ygc2VudGVuY2Ugc3RydWN0dXJpbmcgaXMgcXVlc3Rpb25hYmxlLCBidXQgaXQncyBhbHdheXMg Z29vZCB0byBoYXZlIHNvbWUgdmFyaWF0aW9uIHRvIHBsYXkgd2l0aC4gRnVydGhlcm1vcmUsIGNv bnN0cnVjdGluZyBzZW50ZW5jZXMgdGhpcyB3YXkgcmVzZW1ibGVzIE1hbmRhcmluIChhbmQgb3Ro ZXIgbGFuZ3VhZ2VzKSBjbG9zZWx5LCBtZWFuaW5nIGl0IG1pZ2h0IHNlZW0gbW9yZSBpbnR1aXRp dmUgZm9yIHNwZWFrZXJzIG9mIHRoYXQgbGFuZ3VhZ2UuCl9fJydwYW1wZSdvJydfXyB4MSBpcyBh IGxvdmVyIG9mIHgyCi0gX18nJ3p1bnJlJydfXyB4MSBhcHByb3ZlcyBvZiB4MiAocGxhbiwgZXZl bnQgb3IgYWN0aW9uKQorIF9fJyd6YW5ydScnX18geDEgYXBwcm92ZXMgb2YgeDIgKHBsYW4sIGV2 ZW50IG9yIGFjdGlvbikKCk9mIGNvdXJzZSwgdGhlIHJlbGF0aW9uIGJldHdlZW4gdGhlIHRlcm1z IGluIHRoZSBwcmVuZXggYW5kIHRoZSBicmlkaSBpcyB2YWd1ZS4gT25lIGNhbiBpbWFnaW5lIGFu eSBzdW10aSBpbiB0aGUgcHJlbmV4IGJlYXJpbmcgdGhlIHNhbWUgcmVsZXZhbmNlIHRvIHRoZSBi cmlkaSBhcyBpZiB0aGV5IHdlcmUgcHV0IGluIHRoZSBicmlkaSBhZnRlciBhICcnZG8nZScnIHN1 bXRjaXRhLCBhbmQgYW55IHN1bXRjaXRhIGluIHRoZSBwcmVuZXggZG9pbmcgcHJldHR5IG11Y2gg dGhlIHNhbWUgYXMgaWYgdGhleSB3ZXJlIGluIHRoZSBicmlkaS4gSXQgaXMgcXVpdGUgcG9zc2li bGUgdG8gcHV0IHRlcm1zIGluIHByZW5leGVzIHdpdGhvdXQgYW55IGNsZWFyIGhpbnRzIGFzIHRv IGhvdyB0aGUgdGVybSBtYXkgcmVsYXRlIHRvIHRoZSBicmlkaToKCgoKCioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqClRoZSBuZXcgcGFn ZSBjb250ZW50IGZvbGxvd3MgYmVsb3cuCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqCgohTG9qYmFuIFdhdmUgTGVzc29ucyBDb250aW51 ZWQgKHBhcnQgdHdvKToKCiEhIWJ5IGxhIGtsYWt1IHdpdGggaGVscCBmcm9tIGxhIC5rcmliYWNy LiwgbGEgeGFsYm8gYW5kIG90aGVycywgYXV0dW1uIDIwMTEuCgoKClRoaXMgaXMgdGhlIHNlY29u ZCBpbnN0YWxsbWVudCBvZiB0aGUgV2F2ZSBMZXNzb25zIENvbnRpbnVlZC4gSWYgeW91IGRpZG4n dCBjYXRjaCB0aGUgZmlyc3QgcGFydCwgb3Igd2FudCB0byBnbyBiYWNrIGZvciBzb21lIHJlYXNv biwganVzdCBjbGljayAoKHdhdmVsZXNzb25zY29udGludWVkfGhlcmUuKSkKCgoKISFMb2piYW4g TGVzc29ucyAtIExlc3NvbiBzZXZlbnRlZW4gKGN1dGUgYXNzb3J0ZWQgd29yZHMpCgpBbmQgd2l0 aCB0aGF0LCB0aGlyZCBjaGFwdGVyLCB5b3Uga25vdyBhIGxvdCBhYm91dCBMb2piYW4gc3VtdGku IEFmdGVyIHN1Y2ggYSBsb25nIHRpbWUgb2Ygcmlnb3JvdXMgc3lzdGVtYXRpYyBsZWFybmluZywg d2hhdCBjb3VsZCBiZSBtb3JlIGZpdHRpbmcgdGhhdCB0aGlzIGxlc3NvbiB3aGVyZSBJIHNwZWFr IGFib3V0IHNvbWUgd29yZHMgd2hpY2ggSSBjb3VsZCBub3QsIG9yIHdhbnRlZCBub3QgdG8gZml0 IGludG8gYW55IG90aGVyIGxlc3NvbnM/IFNvIGhlcmUgYXJlIGEgZmV3IHNtYWxsIGFuZCByZWFs bHkgdXNlZnVsIHdvcmRzOgoKCgpUaGUgZm9sbG93aW5nIGNtYXZvIGFyZSBhbGwgZWxsaXB0aWNh bCB3b3Jkcy4gWW91IHNob3VsZCBhbHJlYWR5IGJlIGZhbWlsaWFyIHdpdGggdGhlIGZpcnN0LgoK X18nJ3pv4oCZZScnX18gLSBlbGxpcHRpY2FsIHN1bXRpCgpfXycnY2/igJllJydfXyAtIGVsbGlw dGljYWwgc2VsYnJpCgpfXycnZG/igJllJydfXyAtIGVsbGlwdGljYWwgc3VtdGNpdGEKCl9fJydq deKAmWEnJ19fIC0gZWxsaXB0aWNhbCBldmlkZW50aWFsCgpfXycnZG/igJlpJydfXyAtIGVsbGlw dGljYWwgdXR0ZXJhbmNlIHZhcmlhYmxlCgpfXycnZ2XigJllJydfXyAtIGVsbGlwdGljYWwgYXR0 aXR1ZGluYWwKCgoKQWxsIG9mIHRoZXNlIGFjdCBncmFtbWF0aWNhbGx5IGFzIGEgY21hdm8gb2Yg dGhlIGtpbmQgdGhleSByZXByZXNlbnQsIGJ1dCB0aGV5IGNvbnRhaW4gbm8gaW5mb3JtYXRpb24s IGFuZCBjYW4gYmUgcXVpdGUgaGFuZHkgd2hlbiB5b3XigJlyZSBsYXp5IGFuZCBkb27igJl0IG5l ZWQgdG8gYmUgc3BlY2lmaWMgYW55d2F5LiBUaGVyZSBhcmUsIGhvd2V2ZXIsIGEgZmV3IHRoaW5n cyB3aGljaCBuZWVkIHRvIGJlIGNsZWFyZWQgdXA6CgoKCiAgICAnJ3pv4oCZZScnIGhhdmUgdG8g cmVmZXIgdG8gc29tZXRoaW5nIHdoaWNoIGlzIGNsYWltZWQgdG8gaGF2ZSBhIHZhbHVlLiDigJx6 ZXJvIGNhcnPigJ0gb3Ig4oCcbm90aGluZ+KAnSwgZm9yIGluc3RhbmNlLCBoYXMgbm8gdmFsdWUs IGFuZCB0aGVyZWZvcmUgY2Fubm90IGJlIHJlZmVycmVkIHRvIGJ5ICcnem/igJllJycuIFRoaXMg aXMgYmVjYXVzZSwgaWYgaXQgY291bGQgbWVhbiDigJxub3RoaW5n4oCdIGJ5ICcnem/igJllJycs IHRoZW4gYW55IHNlbGJyaSBjb3VsZCBiZSBpZGVudGljYWwgdG8gaXRzIG5lZ2F0aW9uLCBpZiBv bmUgb2YgdGhlIGVsaWRlZCBzdW10aSB3ZXJlIGZpbGxlZCB3aXRoIGEgJyd6b+KAmWUnJyB3aXRo IG5vIHZhbHVlLgoKICAgICcnZ2XigJllJycgZG9lcyBub3QgbWVhbiB0aGF0IHlvdSBmZWVsIG5v IGVtb3Rpb24sIGp1c3QgdGhhdCB5b3UgZmVlbCBub3RoaW5nIHNwZWNpYWwgb3Igd29ydGggdG8g bWVudGlvbiBhdCB0aGUgbW9tZW50LiBJdOKAmXMgc2ltaWxhciB0byDigJxJ4oCZbSBmaW5lLuKA nS4gJydnZeKAmWUgcGVpJycgYXNrIGFib3V0IGFuIGVsbGlwdGljYWwgZW1vdGlvbiBhbmQgaXMg YSBnb29kIHRyYW5zbGF0aW9uIGZvcjog4oCcSG93IGFyZSB5b3UgZmVlbGluZz/igJ0uCgogICAg Jydjb+KAmWUnJyBpcyBoYW5keSB3aGVuIG5lZWRpbmcgYSBzZWxicmkgaW4gYSBjb25zdHJ1Y3Qg Zm9yIGdyYW1tYXRpY2FsIHJlYXNvbnMsIGxpa2UgaW4gdGhlIGRlZmluaXRpb24gb2YgJyd0deKA mWEnJyBpbiB0aGUgcHJldmlvdXMgbGVzc29uLgoKICAgICcnanXigJlhJycgZG9lcyBub3QgY2hh bmdlIHRoZSB0cnV0aCB2YWx1ZSBvciBzdWJqZWN0aXZlIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGJy aWRpIG9yIGFueXRoaW5nIGxpa2UgdGhhdC4gSW4gZmFjdCwgaXTigJlzIG1vc3RseSBkb2VzIG5v dGhpbmcuIEhvd2V2ZXIsICcnanXigJlhIHBlaScnLCDigJxXaGF0IGlzIHlvdXIgYmFzaXMgZm9y IHNheWluZyB0aGF0P+KAnSBpcyBoYW5keS4KCiAgICAnJ2Rv4oCZaScnIGlzIHJlYWxseSB1c2Vm dWwuIEEgbG90IG9mIHRpbWVzIHdoZW4geW91IHJlZmVyIHRvIHV0dGVyYW5jZXMgb3IgY29udmVy c2F0aW9ucyBieSB3b3JkcyBsaWtlIOKAnHRoaXPigJ0gb3Ig4oCcdGhhdOKAnSwgeW91IHdhbnQg Jydkb+KAmWknJy4KCiAgICBJZiB5b3UgZmlsbCBpbiBtb3JlIHN1bXRpIHRoYW4gYSBzZWxicmkg aGFzIHBsYWNlcyBmb3IsIHRoZSBsYXN0IHN1bXRpIGhhdmUgaW1wbGllZCAnJ2Rv4oCZZScnIHN1 bXRjaXRhIGluIGZyb250IG9mIHRoZW0uCgoKCkZ1cnRoZXJtb3JlLCB0aGVyZSBpcyBhIHdvcmQs ICcnemnigJlvJycsIHRoYXQgeW91IGNhbiBmaWxsIGEgc3VtdGkgcGxhY2Ugd2l0aCB0byBkZWxl dGUgaXQgZnJvbSBhbnkgc2VsYnJpLiAnJ2xvIG1lbGJpIGJlIHpp4oCZbycnLCBmb3IgaW5zdGFu Y2UsIGlzIGp1c3Qg4oCcU29tZXRoaW5nIGJlYXV0aWZ1bOKAnSwgYW5kIGRvZXMgbm90IGluY2x1 ZGUgdGhlIHVzdWFsIHgyIG9mICcnbWVsYmknJywgd2hpY2ggaXMgdGhlIG9ic2VydmVyIHdobyBq dWRnZXMgc29tZXRoaW5nIHRvIGJlIGJlYXV0aWZ1bC4gVGh1cywgaXQgY2FuIG1lYW4gc29tZXRo aW5nIGxpa2Ug4oCcT2JqZWN0aXZlbHkgYmVhdXRpZnVsLuKAnSBJdCBkb2VzIG5vdCBzdGF0ZSB0 aGF0IG5vdGhpbmcgZmlsbHMgdGhlIHN1bXRpIHBsYWNlIHdoaWNoIGlzIGJlaW5nIGRlbGV0ZWQs IGp1c3QgdGhhdCB0aGUgc3VtdGkgcGxhY2UgaXMgbm90IGJlaW5nIGNvbnNpZGVyZWQgaW4gdGhl IHNlbGJyaS4gVXNpbmcgJyd6aeKAmW8nJyB3aXRoIGEgc3VtdGNpdGEgZ2l2ZXMgd2VpcmQgcmVz dWx0cy4gRm9ybWFsbHksIHRoZXkgc2hvdWxkIGNhbmNlbCBlYWNoIG90aGVyIG91dC4gUHJhY3Rp Y2FsbHksIGl0IHdvdWxkIHByb2JhYmx5IGJlIHVuZGVyc3Rvb2QgYXMgYW4gZXhwbGljaXQgd2F5 IG9mIHNheWluZyB0aGF0IHRoZSBzdW10Y2l0YSBkb2VzIG5vdCBhcHBseSwgYXMgaW46ICcnbWkg ZGFyeGkgZG8gbXXigJlpIHpp4oCZbycnIC0g4oCcSSBoaXQgeW91LCB3aXRoIG9yIHdpdGhvdXQg bW90aXZhdGlvbi7igJ0KCgoKVGhlbiB0aGVyZSBpcyB0aGUgd29yZCAnJ2phaScnLiBJdOKAmXMg b25lIG9mIHRob3NlIGNvb2wsIHNtYWxsIHdvcmRzIHdoaWNoIGFyZSBoYXJkIHRvIGdyYXNwLCBi dXQgZWFzeSB0byB3b3JrIHdpdGggb25jZSB5b3Uga25vdyBpdC4gSXQgaGFzIHR3byBkaXN0aW5j dCwgYnV0IHNpbWlsYXIgZnVuY3Rpb25zLiBCb3RoIGhhdmUgc29tZXRoaW5nIHRvIGRvIHdpdGgg Y29udmVydGluZyB0aGUgc2VsYnJpLCBsaWtlICcnc2UnJyBkb2VzLgoKX18nJ2phaScnX18gU2Vs YnJpIGNvbnZlcnNpb246IENvbnZlcnRzIHN1bXRjaXRhIG9yIHVuc3BlY2lmaWVkIGFic3RyYWN0 aW9uIHRvIHgxLiBVc2Ugd2l0aCAnJ2ZhaScnCgpfXycnZmFpJydfXyBNYXJrcyBzdW10aSBwbGFj ZS4gV29ya3MgbGlrZSAnJ2ZhJycuIFRvIGJlIHVzZWQgd2l0aCAnJ2phaScnLgoKVGhlIGZpcnN0 IGdyYW1tYXRpY2FsIGNvbnN0cnVjdGlvbiBpdCBjYW4gbWFrZSBpcyAiJydqYWknJyB7c3VtdGNp dGF9IHtzZWxicml9Ii4gSXQgY2hhbmdlcyB0aGUgc3VtdGkgcGxhY2VzIHN1Y2ggdGhhdCB0aGUg c3VtdGkgcGxhY2Ugb2YgdGhlIHN1bXRjaXRhIGJlY29tZXMgdGhlIHNlbGJyaeKAmXMgeDEsIGFu ZCB0aGUgc2VsYnJp4oCZcyBvbGQgeDEgaXMgcmVtb3ZlZCwgYW5kIG9ubHkgYWNjZXNzaWJsZSBi eSB1c2luZyAnJ2ZhaScnLCB3aGljaCB3b3JrcyBsaWtlICcnZmEnJy4gWW91IGNhbiBzZWUgaXQg d2l0aCB0aGlzIGV4YW1wbGU6CgpfXycnZ2F1JydfXyAtIHN1bXRjaXRhIChmcm9tICcnZ2FzbnUn Jykg4oCcYnJpZGkgaGFzIGJlZW4gYnJvdWdodCBhYm91dCBieS93aXRoIGFjdGl2ZSBhZ2VudCB7 c3VtdGl94oCdCgonJ2RvIGphaSBnYXUganVuZGkgdGkgZmFpIG1pJycuIC0g4oCcWW91IGJyaW5n IGFib3V0IGF0dGVudGlvbiB0byB0aGlzIGJ5IG1l4oCdLiBUaGUgbmV3IHNlbGJyaSwgJydqYWkg Z2F1IGp1bmRpJycsIGhhcyB0aGUgcGxhY2Ugc3RydWN0dXJlIG9mIOKAnHgxIGJyaW5ncyBhYm91 dCBhdHRlbnRpb24gcGFpZCB0byB4MuKAnS4gVGhlc2UgYXJlIHRoZW4gZmlsbGVkIGJ5ICcnZG8n JyBhbmQgJyd0aScnLiBUaGUgJydmYWknJyB0aGVuIG1hcmtzIHRoZSBwbGFjZSBmb3IgdGhlIG9s ZCB4MSwgdGhlIG9uZSB3aG8gd2FzIHBheWluZyBhdHRlbnRpb24sIGFuZCBpdCBpcyBmaWxsZWQg d2l0aCAnJ21pJycuIFRoaXMgd29yZCBjYW4gYmUgdmVyeSBjb252ZW5pZW50IGFuZCBoYXMgdG9u cyBvZiB1c2VzLiBBIGdvb2QgZXhhbXBsZSBpcyBkZXNjcmlwdGl2ZS1saWtlIHN1bXRpLiBPbmUg Y2FuLCBmb3IgaW5zdGFuY2UsIHJlZmVyIHRvIOKAnHRoZSBtZXRob2Qgb2Ygdm9saXRpb25hbCBh Y3Rpb27igJ0gYnkgJydsbyBqYWkgdGHigJlpIHp1a3RlJycuCgpfXycndGHigJlpJydfXzogc3Vt dGNpdGEgKGZyb20gJyd0YWRqaScnKSDigJxCcmlkaSBpcyBkb25lIHdpdGggdGhlIG1ldGhvZCBv ZiB7c3VtdGl94oCdCgpDYW4geW91IGRlZHVjZSB3aGF0IHRoZSBvcmRpbmFyeSBMb2piYW4gcGhy YXNlICcnZG8gamFpIGdhdSBtbycnIG1lYW5zPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFdo YXQgYXJlIHlvdSBkb2luZz/igJ1+fgoKCgpUaGUgb3RoZXIgZnVuY3Rpb24gb2YgJydqYWknJyBp cyBlYXNpZXIgdG8gZXhwbGFpbi4gSXQgc2ltcGx5IGNvbnZlcnRzIHRoZSBzZWxicmkgc3VjaCB0 aGF0IHRoZSBzdW10aSBpbiB0aGUgeDEgZ2V0cyBhICcndHXigJlhJycgaW4gZnJvbnQgb2YgaXQg KCcna2/igJlhIGphaSBicm9kYScnIF9fPV9fICcndHXigJlhIGtv4oCZYSBicm9kYScnKS4gSW4g b3RoZXIgd29yZHMsIGl0IGNvbnZlcnRzIHRoZSBzZWxicmkgaW4gYSB3YXkgc3VjaCB0aGF0IGl0 IGJ1aWxkcyBhbiBlbGxpcHRpY2FsIGFic3RyYWN0aW9uIGZyb20gdGhlIHN1bXRpIGluIHRoZSB4 MSwgYW5kIHRoZW4gZmlsbHMgeDEgd2l0aCB0aGUgYWJzdHJhY3Rpb24gaW5zdGVhZCBvZiB0aGUg YWN0dWFsIHN1bXRpLiBBZ2FpbiwgdGhlIG9yaWdpbmFsIHN1bXRpIHBsYWNlIGlzIGFjY2Vzc2li bGUgYnkgJydmYWknJy4KCkEgdmVyeSBhY3RpdmUgTG9qYmFuIElSQy11c2VyIG9mdGVuIHNheXMg JydsZSBnZXJrdSBiZSBkbyBqYWkgc2Ugc3RpZGkgbWknJywgdG8gdXNlIGEgcmFuZG9tIGV4YW1w bGUgb2YgYSBzdW10aSBpbiB4MS4gV2hhdOKAmXMgaGUgc2F5PwoKX18nJ3N0aWRpJydfXyB4MSBp bnNwaXJlcy9zdWdnZXN0cyB4MiBpbi90byB4M+KAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKA nEkgc3VnZ2VzdCAoc29tZXRoaW5nIGFib3V0KSB5b3VyIGRvZy7igJ1+fgoKCgpTbyBmYXIgeW91 4oCZdmUgbGVhcm5lZCBob3cgdG8gY29udmVydCBicmlkaSB0byBzZWxicmksIHNlbGJyaSB0byBz dW10aSwgYW5kIHNlbGJyaSBpbnRvIGJyaWRpLCBzaW5jZSBhbGwgc2VsYnJpIGJ5IHRoZW1zZWx2 ZXMgYXJlIGFsc28gYnJpZGkuIFlvdSBvbmx5IG5lZWQgb25lIGxhc3QgZnVuY3Rpb246IGNvbnZl cnQgc3VtdGkgdG8gc2VsYnJpLiBUaGlzIGlzIGRvbmUgd2l0aCB0aGUgd29yZCAnJ21lJycuIEl0 IGFjY2VwdHMgYSBzdW10aSBhbmQgY29udmVydHMgaXQgaW50byBhIHNlbGJyaSB3aXRoIHRoZSBw bGFjZSBzdHJ1Y3R1cmUg4oCceDEgaXMgc3BlY2lmaWMgdG8ge3N1bXRpfSBpbiBwcm9wZXJ0eSB4 MuKAnS4KCl9fJydtZScnX186IEdlbmVyaWMgY29udmVydCBzdW10aSB0byBzZWxicmkuIHgxIGlz IHNwZWNpZmljIHRvIFNVTVRJIGluIHByb3BlcnR5IHgyCgoKCldoZW4gc2NyZXdpbmcgYSBzZW50 ZW5jZSB1cCwga25vd2luZyBob3cgdG8gY29ycmVjdCB5b3Vyc2VsZiBpcyBhIGdvb2QgaWRlYS4g VGhlcmUgYXJlIHRocmVlIHdvcmRzIGluIExvamJhbiB3aGljaCB5b3UgY2FuIHVzZSB0byBkZWxl dGUgeW91ciBwcmV2aW91cyB3b3JkKHMpCgpfXycnc2knJ19fIC0gZGVsZXRpb246IERlbGV0ZXMg bGFzdCB3b3JkIG9ubHkuCgpfXycnc2EnJ19fIC0gZGVsZXRpb246IERlbGV0ZXMgYmFjayB1bnRp bCBuZXh0IGNtYXZvIHNwb2tlbi4KCl9fJydzdScnX18gLSBkZWxldGlvbjogRGVsZXRlcyBlbnRp cmUgZGlzY291cnNlLgoKVGhlIGZ1bmN0aW9uIG9mIHRoZXNlIHdvcmRzIGFyZSBvYnZpb3VzOiBU aGV5IGRlbGV0ZSB3b3JkcyBhcyBpZiB0aGV5IGhhdmUgbmV2ZXIgYmVlbiBzcG9rZW4uIFRoZXkg ZG8gbm90IHdvcmsgaW5zaWRlIGNlcnRhaW4gcXVvdGVzIChhbGwgcXVvdGVzIGV4Y2VwdCAnJ2x1 Li5saeKAmXUnJyksIHRob3VnaCwgYXMgdGhhdCB3b3VsZCBsZWF2ZSBpdCBpbXBvc3NpYmxlIHRv IHF1b3RlIHRoZXNlIHdvcmRzLiBTZXZlcmFsICcnc2knJyBpbiBhIHJvdyBkZWxldGVzIHNldmVy YWwgd29yZHMuCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBlaWdodGVlbiAocXVvdGVz KQoKT25lIG9mIHRoZSBrZXkgZGVzaWduIGZlYXR1cmVzIG9mIExvamJhbiBpcyB0aGF0IGl04oCZ cyBzdXBwb3NlZCB0byBiZSBhdWRpby12aXN1YWwgaXNvbW9ycGhpYywgbWVhbmluZyB0aGF0IGV2 ZXJ5dGhpbmcgZXhwcmVzc2VkIGluIHRleHQgc2hvdWxkIGFsc28gYmUgZXhwcmVzc2VkIGluIHNw ZWVjaCBhbmQgdmljZSB2ZXJzYS4gVGhlcmVmb3JlLCB0aGVyZSBjYW5ub3QgYmUgYW55IHB1bmN0 dWF0aW9uIHdoaWNoIGlzIG5vdCBwcm9ub3VuY2VkLiBUaGlzIG1lYW5zIHRoYXQgTG9qYmFuIGhh cyBhIHdpZGUgcmFuZ2Ugb2Ygd29yZHMgdG8gcXVvdGUgb3RoZXIgd29yZHMuIEFsbCBMb2piYW4g cXVvdGVzIHRha2Ugc29tZSBpbnB1dCBvZiB0ZXh0IGFuZCBjb252ZXJ0cyBpdCB0byBhIHN1bXRp LiBMZXTigJlzIGJlZ2luIHdpdGggdGhlIG1vc3Qgc2ltcGxlOgoKCgpfXycnbHUnJ19fIFF1b3Rl IHdvcmQ6IEJlZ2luIHF1b3RlIG9mIGdyYW1tYXRpY2FsIExvamJhbiBjb250ZW50CgpfXycnbGni gJl1JydfXyBRdW90ZSB3b3JkOiBFbmQgcXVvdGUgb2YgZ3JhbW1hdGljYWwgTG9qYmFuIGNvbnRl bnQKCgoKVGhlIHRleHQgaW5zaWRlIHRoaXMgY29uc3RydWN0IG11c3QgYnkgaXRzZWxmIGJlIGdy YW1tYXRpY2FsLiBJdCBjYW4gcXVvdGUgYWxsIExvamJhbiB3b3JkcyB3aXRoIHNvbWUgZmV3IGV4 Y2VwdGlvbnMsIG1vc3Qgbm90YWJseSwgb2J2aW91c2x5LCAnJ2xp4oCZdScnLgoKCgpUcnkgdG8g dHJhbnNsYXRlIHRoZSBmb2xsb3dpbmcgc2VudGVuY2UuIFRha2UgeW91ciB0aW1lLgoKJydtaSBz dGlkaSBsbyBkcmF0YSBiZSB0deKAmWEgbHUga28gamFpIGdhdSBtbyBsaeKAmXUnJwoKX18nJ2Ry YXRhJydfXyB4MSBpcyBkaWZmZXJlbnQgZnJvbSB4MiBieSBzdGFuZGFyZAoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OuKAnEkgc3VnZ2VzdCBzb21ldGhpbmcgZGlmZmVyZW50IHRoYW4gc29tZXRoaW5n IGFib3V0IOKAnGtvIGphaSBnYXUgbW/igJ0u4oCdfn4KCgoKVGhlc2UgcXVvdGUgd29yZHMgY2Fu bm90IHF1b3RlIHVuZ3JhbW1hdGljYWwgdGV4dC4gVGhpcyBpcyBzb21ldGltZXMgdXNlZnVsLCB3 aGVuIHlvdSB3YW50IHRvIG9ubHkgcGljayBvdXQgcGFydCBvZiBhIHNlbnRlbmNlLCBhcyBpbjog 4oCcIGlzIOKAnGdp4oCZZeKAnSBhIExvamJhbiBzdW10Y2l0YT/igJ0KCgoKRm9yIHRoaXMsIHlv dSBuZWVkIHRoZXNlIHR3byBjbWF2bwoKX18nJ2xv4oCZdScnX18gUXVvdGUgd29yZDogQmVnaW4g cXVvdGUgb2YgdW5ncmFtbWF0aWNhbCBidXQgTG9qYmFuIGNvbnRlbnQKCl9fJydsZeKAmXUnJ19f IFF1b3RlIHdvcmQ6IEVuZCBxdW90ZSBvZiB1bmdyYW1tYXRpY2FsIGJ1dCBMb2piYW4gY29udGVu dAoKCgpUaGUgdGV4dCBpbnNpZGUgbXVzdCBiZSBMb2piYW4gd29yZHMsIGJ1dCBuZWVkIG5vdCBi ZSBncmFtbWF0aWNhbC4gVHJ5IHRvIHRyYW5zbGF0ZSB0aGUgYWJvdmUgZXhhbXBsZSAodGhlbiBv bmUgd2l0aCAnJ2dpJ2UnJykgaW50byBMb2piYW4KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ3h1 IGxv4oCZdSBnaeKAmWUgbGXigJl1IGxvamJvIHN1bXRjaXRhJyd+fgoKCgpUaGlzIHF1b3RlIGNh biBiZSB1c2VkIHRvIHF1b3RlIGFsbCBMb2piYW4gd29yZHMgZXhjZXB0ICcnbGXigJl1JycuIEhv d2V2ZXIsIHRoaXMgaXMgbm90IGVub3VnaC4gSWYgd2Ugd2FudCB0byB0cmFuc2xhdGUg4oCcaXMg 4oCdZG8gbW/igJ0gYSBjb3JyZWN0IHRyYW5zbGF0aW9uIG9mIOKAnFdoYXTigJlzIHVwP+KAneKA nSwgd2UgbWlnaHQgYmUgc2xpZ2h0bHkgd3JvbmcgYWJvdXQgd2hhdCB3ZSBoZXJlIHN0YXRlLCBz aW5jZSAnJ2RvIG1vJycgYWxzbyBjYW4gbWVhbiDigJxXaGF0IGFyZSB5b3U/4oCdLCBidXQgbGV0 4oCZcyByb2xsIHdpdGggaXQgZm9yIGEgc2Vjb25kLiBXaGF0IHdlIG5lZWQgaGVyZSBpcyB0aGUg d29yZCAnJ3pvaScnLgoKCgonJ3pvaScnIE5leHQgY21hdm8gaXMgYmVnaW4gYWxsLXB1cnBvc2Ug cXVvdGUgYW5kIGNsb3NlIGFsbC1wdXJwb3NlIHF1b3RlLgoKCgpXaGVuIHVzaW5nICcnem9pJycs IHlvdSBwaWNrIGFueSBtb3JwaG9sb2dpY2FsbHkgY29ycmVjdCBsb2piYW4gd29yZCBhdCB3aWxs IChjYWxsZWQgdGhlIGRlbGltaXRlciksIHdoaWNoIHRoZW4gb3BlbnMgYSBxdW90ZS4gVG8gY2xv c2UgaXMsIHVzZSB0aGF0IHdvcmQgYWdhaW4uIFRoaXMgd2F5LCB5b3UgY2FuIHF1b3RlIGFueXRo aW5nIGV4Y2VwdCB0aGUgZGVsaW1pdGVyLCB3aGljaCBzaG91bGRu4oCZdCBiZSBhIHByb2JsZW0g YmVjYXVzZSB5b3UgY2FuIHBpY2sgaXQgeW91cnNlbGYuIFVzdWFsbHksIHRoZSB3b3JkIHBpY2tl ZCBpcyBlaXRoZXIgJyd6b2knJyBpdHNlbGYsIG9yIGEgbGV0dGVyIHdoaWNoIHN0YW5kcyBmb3Ig dGhlIGxhbmd1YWdlIHdoaWNoIHRoZSBxdW90ZSBpcyB3cml0dGVuIGluLiBFeGFtcGxlOiDigJxJ IGxpa2VkIFRoZSBQaGFudG9tIG9mIHRoZSBPcGVyYeKAnSBpcyAnJ21pIHB1IG5lbGNpIGxh4oCZ ZSB6b2kgem9pLiBUaGUgUGhhbnRvbSBvZiB0aGUgT3BlcmEgLnpvaScnIE5vdGljZSB0d28gdGhp bmdzOiBGaXJzdGx5LCBJIG5lZWQgYSAnJ2xh4oCZZScnLCBzaW5jZSBJIGRpZG7igJl0IGxpa2Ug dGhlIHF1b3RlLCBidXQgcmF0aGVyIHdoYXQgaXQgcmVmZXJyZWQgdG8uIFNlY29uZGx5LCBiZXR3 ZWVuIHRoZSBjaG9zZW4gZGVsaW1pdGVyIGFuZCB0aGUgcXVvdGUsIHRoZXJlIGFyZSBwYXVzZXMs IG9wdGlvbmFsbHkgcmVwcmVzZW50ZWQgYnkgYSBmdWxsIHN0b3AgaW4gd3JpdGluZy4gVGhpcyBw YXVzZSBpcyBuZWNlc3NhcnkgdG8gY29ycmVjdGx5IGlkZW50aWZ5IHRoZSBkZWxpbWl0ZXIuCgoK ClRyeSB0byB0cmFuc2xhdGUgdGhlIGFib3ZlIHNlbnRlbmNlIGNvbmNlcm5pbmcg4oCcV2hhdOKA mXMgdXA/4oCdCgoKCl9fJydkcmFuaScnX18geDEgaXMgY29ycmVjdC9wcm9wZXIgaW4gYXNwZWN0 IHgyIGluIHNpdHVhdGlvbiB4MyBieSBzdGFuZGFyZCB4NAoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OicneHUgbHUgZG8gbW8gbGnigJl1IGRyYW5pIHhlIGZhbnZhIHpvaSBneS4gV2hhdOKAmXMgdXA/ IC5neScnLiBIZXJlIHRoZSBkZWxpbWl0ZXIgJydneScnIGlzIGNob3NlbiBiZWNhdXNlIGl0J3Mg c2hvcnQgZm9yICcnZ2xpY28nJywgbWVhbmluZyAiRW5nbGlzaCJ+fgoKCgpDbG9zZWx5IGFuYWxv Z291c2x5LCB0aGVyZSBpcyAnJ2xh4oCZbycnLiBJdCB3b3JrcyBleGFjdGx5IGxpa2UgJyd6b2kn JywgYnV0IHR1cm5zIHRoZSByZXN1bHRpbmcgcXVvdGUgaW50byBhIG5hbWUuIEl0IGlzIG5lZWRl ZCBiZWNhdXNlIG5vcm1hbGx5LCBvbmx5IHNlbGJyaSBhbmQgY21ldmxhIGNhbiBiZSBuYW1lcywg bm90IHF1b3Rlcy4KCl9fJydsYeKAmW8nJ19fIE5leHQgY21hdm8gaXMgYmVnaW4gYWxsLXB1cnBv c2UgcXVvdGUgYW5kIGNsb3NlIGFsbC1wdXJwb3NlIHF1b3RlIOKAkyB1c2UgYXMgbmFtZS4KCgoK TGFzdCBvZiB0aGUgb2ZmaWNpYWwgcXVvdGUgd29yZHMsIHRoZXJlIGlzICcnem8nJy4gJyd6bycn IGFsd2F5cyBxdW90ZXMgdGhlIG5leHQgTG9qYmFuIHdvcmQsIG5vIG1hdHRlciB3aGF0IGl0IGlz LiBJdOKAmXMgcHJldHR5IGhhbmR5LgoKJyd6bycnIFF1b3RlIG5leHQgTG9qYmFuIHdvcmQsIG5v IG1hdHRlciB3aGF0LgoKRXhhbXBsZTogJyd6byB6byB6b+KAmW8gcGxpeGF1JycgPSDigJwg4oCc em/igJ0gaXMgdXNlZnVsLCBoZWhl4oCdCgpfXycnem/igJlvJydfXyBhdHRpdHVkaW5hbDogZGlz Y3Vyc2l2ZTogSHVtb3JvdXNseSwg4oCca2lkZGluZyB5b3XigJ0KCl9fJydwbGl4YXUnJ19fIHgx IGlzIHVzZWZ1bCBmb3IgeDIgdG8gZG8gcHVycG9zZSB4MwoKCgpMb2piYW4gdXNlcnMgaGF2ZSBm b3VuZCBpdCB1c2VmdWwgdG8gc3VwcGxlbWVudCB3aXRoIGZvdXIgYWRkaXRpb25hbCBxdW90ZSB3 b3Jkcy4gVGhleSBhcmUgYWxsIGV4cGVyaW1lbnRhbCwgYW5kIHRoZSBmb3JtYWwgZ3JhbW1hciBk b2VzIG5vdCBzdXBwb3J0IGl0LiBOb25ldGhlbGVzcywgdGhleSBhcmUgdXNlZCBvZnRlbiwgYW5k IGl04oCZcyBnb29kIHRvIGJlIGFibGUgdG8gcmVjb2duaXplIHRoZW0uIFRoZSBtb3N0IHVzZWQg aXM6CgoKCl9fJyd6b+KAmW9pJydfXyBRdW90ZSBuZXh0IHdvcmQgb25seS4gTmV4dCB3b3JkIGlz IGlkZW50aWZpZWQgYnkgcGF1c2VzIGluIHNwZWVjaCBvciB3aGl0ZXNwYWNlIGluIHdyaXRpbmc6 CgoKCkV4YW1wbGU6ICcncmkgcHUgY3Vza3Ugem/igJlvaSBEb2ghIC514oCZaScnIOKAnEhhIGhh LCBoZSBzYWlkIOKAnERvaCHigJ0g4oCcCgoKCkl04oCZcyB2ZXJ5IGVhc3kgdG8gdXNlLiBBZ2Fp biwgbm90ZSB0aGF0IGFsbCBncmFtbWFyIGJvdHMgd2lsbCBjb25zaWRlciB0aGUgc2VudGVuY2Ug bm90IGdyYW1tYXRpY2FsLCBiZWNhdXNlIHRoZXNlIHdvcmRzIGRvIG5vdCBleGlzdCBpbiB0aGUg Zm9ybWFsIGdyYW1tYXIuCgoKCkFuYWxvZ291cyB0byAnJ3pvJ29pJycgYW5kICcnbGHigJlvJycs IHRoZXJlIGlzIGFsc28gdGhlIHdvcmQgJydsYeKAmW9pJycsIHdoaWNoIHdvcmtzIGp1c3QgbGlr ZSAnJ3pv4oCZb2knJywgYnV0IHRyZWF0cyB0aGUgcXVvdGUgYXMgYSBuYW1lOgoKX18nJ2xh4oCZ b2knJ19fIFF1b3RlIG5leHQgd29yZCBvbmx5LCB1c2UgYXMgbmFtZS4gTmV4dCB3b3JkIGlzIGlk ZW50aWZpZWQgYnkgcGF1c2VzIGluIHNwZWVjaCBvciB3aGl0ZXNwYWNlIGluIHdyaXRpbmc6CgoK CkhvdyB3b3VsZCB5b3Ugc2F5OiDigJxNeSBFbmdsaXNoIG5hbWUgaXMg4oCcU2FmaeKAneKAnT8K Cl9fJydnbGljbycnX18geDEgaXMgRW5nbGlzaC9wZXJ0YWlucyB0byBFbmdsaXNoIGN1bHR1cmUg aW4gYXNwZWN0IHgyCgpfXycnY21lbmUnJ19fIHgxIGlzIHRoZSBuYW1lIG9mIHgyIGFzIHVzZWQg YnkgeDMKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIGdsaWNvIHNlIGNtZW5lIGxh4oCZb2kg U2FmaScnLiBOb3RpY2UgdGhlIG5lY2Vzc2FyeSBzZS4gV2UgZG9u4oCZdCB3aGF0IHRvIHNheSB0 aGF0IHdl4oCZcmUgYSBuYW1lIX5+CgoKClRoaXJkbHksICcncmHigJlvaScnIHF1b3RlcyB0aGUg bmV4dCByYWZzaS4gU2luY2UgcmFmc2kgYXJlIG5vdCB3b3JkcywgdGhleSB3b3VsZCB1c3VhbGx5 IGhhdmUgdG8gYmUgcXVvdGVkIGJ5ICcnem9pJycuIEZ1cnRoZXJtb3JlLCBzZXZlcmFsIHJhZnNp IGFyZSBhbHNvIGNtYXZvLiBUbyBhdm9pZCBjb25mdXNpb24gb2Ygd2hpY2ggaXMgbWVhbnQsICcn cmHigJlvaScnIGFsd2F5cyByZWZlciB0byBhIHJhZnNpLCBhbmQgaXMgd3JvbmcgaW4gZnJvbnQg b2YgYW55IHRleHQgc3RyaW5nIHdoaWNoIGFyZSBub3QgcmFmc2kuCgoKCldoYXQgZG9lcyAnJ3Jh 4oCZb2kgenXigJllIHJhZnNpIHpvIHp1a3RlIC5pa3XigJlpIHpv4oCZb2kgenXigJllIHN1bXRj aXRhJycgbWVhbj8KCl9fJydrdeKAmWknJ19fIGF0dGl0dWRpbmFsOiBkaXNjdXJzaXZlOiBIb3dl dmVyIC8gdGhvdWdoIChjb250cmFzdHMgdG8gc29tZXRoaW5nIHByZXZpb3VzbHkgc2FpZCkKCl9f JydyYWZzaScnX18geDEgYW4gYWZmaXggZm9yIHdvcmQvY29uY2VwdCB4MiB3aXRoIHByb3BlcnRp ZXMvb2YgZm9ybSB4MyBpbiBsYW5ndWFnZSB4NAoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRo ZSByYWZzaSDigJx6deKAmWXigJ0gaXMgYSByYWZzaSBmb3Ig4oCcenVrdGXigJ0uIEJ1dCDigJx6 deKAmWXigJ0gaXMgYSBzdW10Y2l0YeKAnX5+CgoKCkFuZCBmaW5hbGx5IHRoZSB1c2VmdWwgd29y ZCAnJ21h4oCZb2knJy4gJydtYeKAmW9pJycgcXVvdGVzIGFueSBjbWF2bywgYnV0IHRyZWF0cyB0 aGUgcXVvdGUgYXMgYSBuYW1lIGZvciB0aGUgd29yZCBjbGFzcyAoc2VsbWHigJlvKSB0byB3aGlj aCB0aGF0IHdvcmQgYmVsb25ncy4gU28sIGZvciBpbnN0YW5jZSwgYmHigJlvIGJlbG9uZ3MgdG8g dGhlIHdvcmRjbGFzcyBjYWxsZWQgWkFoTywgc28gJydtYeKAmW9pIGJh4oCZbycnIGlzIHVub2Zm aWNpYWwgTG9qYmFuIGZvciDigJxaYWhP4oCdCgoKClRyeSBpdCBvdXQuIFNheSB0aGF0ICcncHUn JyBhbmQgJydiYScnIGFyZSBpbiB0aGUgc2FtZSBzZWxtYeKAmW8hCgpfXycnY21hdm8nJ19fIHgx IGlzIGEgZ3JhbW1hdGljYWwgd29yZCBvZiBjbGFzcyB4MiBpbiBsYW5ndWFnZSB4MwoKCgooT25l IHBvc3NpYmxlKSBBbnN3ZXI6ICB+fmdyZXksZ3JleTonJ3pvIHB1IGNtYXZvIG1h4oCZb2kgYmEn J35+CgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBuaW5ldGVlbiAobnVtYmVycykKCldo ZW4gbGVhcm5pbmcgYSBsYW5ndWFnZSwgb25lIG9mIHRoZSB0aGluZ3Mgd2hpY2ggYXJlIHVzdWFs bHkgdGF1Z2h0IHZlcnkgZWFybHkgb24gaXMgaG93IHRvIGNvdW50LiBUaGlzIHJlYWxseSBtYWtl cyBsaXR0bGUgc2Vuc2UsIGJlY2F1c2UgaXTigJlzIG5vdCBuZWNlc3NhcnkgdG8ga25vdyBudW1i ZXJzIGlmIHlvdSBkb27igJl0IGtub3cgaG93IHRvIHNwZWFrIGFib3V0IHRob3NlIHRoaW5ncyB0 byB3aGljaCB0aGV5IGFwcGx5LiBUaGlzIGlzIHBhcnRseSB0aGUgcmVhc29uIHdoeSBJIGhhdmUg bGVmdCBpdCBmb3IgbGVzc29uIG51bWJlciBuaW5ldGVlbi4gVGhlIG90aGVyIHJlYXNvbiBpcyB0 aGF0IHdoaWxlIHRoZSBudW1iZXJzIHRoZW1zZWx2ZXMgYXJlIGVhc3kgdG8gbGVhcm4sIGhvdyB0 aGV5IGFwcGx5IHRvIHN1bXRpIGNhbiBnZXQgdmVyeSBjb25mdXNpbmcgaW5kZWVkLiBUaGF0LCBo b3dldmVyLCB3ZSB3aWxsIHNhdmUgZm9yIGEgbGF0ZXIgbGVzc29uLgoKQmVmb3JlIGxlYXJuaW5n IHRoZSB3b3JkcyB0aGVtc2VsdmVzLCB5b3Ugc2hvdWxkIGtub3cgdGhhdCBudW1iZXJzIGRvIG5v dCBoYXZlIGFueSBpbnRlcm5hbCBncmFtbWFyLiBUaGlzIG1lYW5zIHRoYXQgYW55IHJvdyBvZiBu dW1iZXIgd29yZHMgKGhlbmNlZm9ydGggcmVmZXJyZWQgdG8gYXMgYSAibnVtYmVyIHN0cmluZyIp IGFyZSB0cmVhdGVkIGlkZW50aWNhbGx5IHRvIGFueSBvdGhlciBudW1iZXIgc3RyaW5nIHRvIHRo ZSBMb2piYW4gZ3JhbW1hciwgZXZlbiBpZiB0aGUgc3RyaW5nIG1ha2VzIG5vIHNlbnNlLiBUaGVy ZWZvcmUsIG9uZSBjYW4gbmV2ZXIgYW5zd2VyIHVuYW1iaWd1b3VzbHkgd2hldGhlciBhIG51bWJl ciBjb25zdHJ1Y3QgbWFrZXMgc2Vuc2Ugb3Igbm90LiBUaGVyZSBhcmUsIGhvd2V2ZXIsIGludGVu ZGVkIHdheXMgb2YgdXNpbmcgdGhlIG51bWJlciB3b3JkcywgYW5kIGNvbmZ1c2lvbiB3aWxsIHBy b2JhYmx5IHJlc3VsdCBpZiB5b3UgZGV2aWF0ZSBmcm9tIHRoZSBzdGFuZGFyZC4KCkxlYXJuaW5n IGFsbCB0aGUgbnVtYmVyIHdvcmRzIG9mIExvamJhbiBhcmUgd2F5IGJleW9uZCB0aGUgc2NvcGUg b2YgdGhpcyBsZXNzb24sIHNvIHlvdSB3aWxsIG9ubHkgYmUgaW50cm9kdWNlZCB0byB3aGF0IGlz IG5vcm1hbGx5IHVzZWQgaW4gdGV4dC4gVGhlIHdpZGUgcmFuZ2Ugb2YgTG9qYmFuIG1hdGhlbWF0 aWNhbCBjbWF2byBhcmUgY2FsbGVkICcnbWVrc28nJyAoTG9qYmFuIGZvciAibWF0aGVtYXRpY2Fs IGV4cHJlc3Npb24iKSwgYW5kIGlzIHdpZGVseSBkaXNyZWdhcmRlZCBiZWNhdXNlIG9mIGl0cyBj b21wbGV4aXR5IGFuZCBxdWVzdGlvbmFibGUgYWR2YW50YWdlIG92ZXIgc28tY2FsbGVkIGJyaWRp IG1hdGguCgpMZXTigJlzIGJlZ2luIHdpdGggdGhlIG9yZGluYXJ5IExvamJhbiBudW1iZXJzLCBm cm9tIHplcm8gdG8gbmluZToKCnx8emVyb3xvbmV8dHdvfHRocmVlfGZvdXJ8Zml2ZXxzaXh8c2V2 ZW58ZWlnaHR8bmluZQoKbm98cGF8cmV8Y2l8dm98bXV8eGF8emV8Yml8c298fAoKTm90aWNlIGhv dyB0aGUgdm93ZWxzIGFyZSBhbHRlcm5hdGluZyAod2l0aCB0aGUgZXhjZXB0aW9uIG9mICcnbm8n JyksIGFuZCBob3cgbm8gY29uc29uYW50IGlzIHVzZWQgZm9yIHR3byBkaWdpdHMuCgpJbiBvcmRl ciB0byBleHByZXNzIG51bWJlcnMgaGlnaGVyIHRoYW4gbmluZSwgdGhlIG51bWJlcnMgYXJlIGp1 c3Qgc3RydW5nIHRvZ2V0aGVyOgoKJyd2byBtdSBjaScnIOKAkyBmb3VyIGh1bmRyZWQgYW5kIGZp ZnR5IHRocmVlICg0NTMpCgonJ3BhIG5vIG5vIG5vIG5vJycgdGVuIHRob3VzYW5kICgxMCAwMDAp CgpUaGVyZSBpcyBhbHNvIGEg4oCccXVlc3Rpb24tZGlnaXTigJ0sIHdoaWNoIGlzIHVzZWQgbGlr ZSBvdGhlciBmaWxsLWluLXRoZS1ibGFuayBxdWVzdGlvbiB3b3Jkcy4gSXTigJlzICcneG8nJy4g VGhlIGFuc3dlciB0byBzdWNoIGEgcXVlc3Rpb24gbWF5IGJlIGp1c3QgdGhlIHJlbGV2YW50IGRp Z2l0KHMpIGJ5IGl0c2VsZiwgb3IgdGhleSBjYW4gYmUgbnVtZXJpY2FsIGNvbnN0cnVjdHMsIGFz IHNob3duIGxhdGVyLgoKJydjaSB4byB4byB4bycnIOKAkyAiVGhyZWUgdGhvdXNhbmQgYW5kIGhv dyBtYW55PyIgKDM/Pz8pCgpfXycneG8nJ19fIHF1ZXN0aW9uIGRpZ2l0IOKAkyB1c2UgbGlrZSBh bnkgb3RoZXIgZGlnaXQgdG8gYXNrIGZvciB0aGUgY29ycmVjdCBkaWdpdC4KClRoZSBleHBlcmlt ZW50YWwgd29yZCAnJ3hvJ2UnJyBpcyBzb21ldGltZXMgdXNlZCB0byBtZWFuIGFuIHVuc3BlY2lm aWVkLCBlbGxpcHRpY2FsIGRpZ2l0LiBJdHMgZGVmaW5pdGlvbiBpcyBub3Qgb2ZmaWNpYWwsIHRo b3VnaC4KCicnY2kgeG/igJllIHhv4oCZZSB4b+KAmWUnJyDigJMgVGhyZWUgdGhvdXNhbmQgYW5k IHNvbWV0aGluZwoKX18nJ3hvJ2UnJ19fIGVsbGlwdGljYWwgZGlnaXQuCgpTaW5jZSBhbGwgbnVt YmVyIHN0cmluZ3MgYXJlIHRyZWF0ZWQgZ3JhbW1hdGljYWxseSB0aGUgc2FtZSwgb25lIG1pZ2h0 IGFsc28gYW5zd2VyIHNldmVyYWwgZGlnaXRzIHRvIG9uZSAnJ3hvJ2UnJwoKCgpGdXJ0aGVybW9y ZSwgdGhlcmUgaXMgYWxzbyBhIHNldCBvZiBoZXhhZGVjaW1hbCBkaWdpdHMgQSB0aHJvdWdoIEYu IEJ5IGRlZmF1bHQsIExvamJhbiBvcGVyYXRlcyBpbiBiYXNlIDEwLCBidXQgd2hlbiB1c2luZyBo ZXhhZGVjaW1hbCBkaWdpdHMsIGl0IGNhbiBiZSBzYWZlbHkgYXNzdW1lZCB0aGF0IHlvdSB1c2Ug YmFzZSBzaXh0ZWVuOgoKfHxkYXV8ZmVpfGdhaXxqYXV8cmVpfHhlaSB8dmFpfAoKMTAoQSl8MTEo Qil8MTIoQyl8MTMoRCl8MTQoRSl8MTQoRSl8MTUoRil8fAoKWWVzLCBJIGtub3cgdGhlcmUgYXJl IHR3byB3b3JkcyBmb3IgRS4gVGhlIG9mZmljaWFsIG9uZSBpcyAnJ3JlaScnIChhbGwgdGhyZWUt bGV0dGVyIGNtYXZvIGJlZ2lubmluZyB3aXRoIHggaXMgZXhwZXJpbWVudGFsKS4gJyd4ZWknJyB3 YXMgaW52ZW50ZWQgdG8gYXZvaWQgY29uZnVzaW9uIHdpdGggJydyZScnLgoKVGhlIGJhc2UgY2Fu IGJlIGV4cGxpY2l0bHkgc3RhdGVkIHVzaW5nICcnanUndScnOiBBbnkgbnVtYmVyIGJlZm9yZSAn J2p1J3UnJyB0aGUgbnVtYmVyIGJlaW5nIHNwb2tlbiBvZiwgYW55IG51bWJlciBhZnRlciBpcyB0 aGUgYmFzZSBvZiB0aGUgbnVtYmVyOgoKJydkYXUgc28gZmVpIG5vIGp14oCZdSBwYSByZScnIOKA kyBBOUIwIGluIGJhc2UgMTIgKG5vdGljZSBoZXJlIHRoYXQgYmFzZSAxMiBpcyBhbHdheXMgaW4g ZGVjaW1hbC4gSXQgaXMgcG9zc2libGUgdG8gcGVybWFuZW50bHkgY2hhbmdlIHRoZSBiYXNlIHlv dSBzcGVhayBpbiwgYnV0IHNpbmNlIGl0IGhhcyBuZXZlciBiZWVuIHVzZWQgaW4gcHJhY3RpY2Us IGl0IGhhcyBub3QgYmVlbiBzdGFuZGFyZGl6ZWQgaG93IG9uZSBzaG91bGQgZG8gaXQpCgpGcmFj dGlvbnMgYXJlIGFsc28gdXNlZnVsIHRvIGxlYXJuIGhvdyB0byBleHByZXNzLiBUaGV5IGFyZSB1 c3VhbGx5IGV4cHJlc3NlZCB2aWEgYSBkZWNpbWFsIHBvaW50LCAnJ3BpJycuCgpfXycncGknJ19f IERlY2ltYWwgcG9pbnQgKG9yIHBvaW50IGluIHdoaWNoZXZlciBiYXNlIHlvdSBhcmUgdGFsa2lu ZyBpbikKCicncGEgcmUgcGkgcmUgbXUnJyDigJMgdHdlbHZlIHBvaW50IHR3byBmaXZlICgxMi4y NSkuIAoKTGlrZSBpbiBtYXRoZW1hdGljcywgd2hlbiBubyBudW1iZXIgc3RyaW5nIGlzIHBsYWNl ZCBiZWZvcmUgb3IgYWZ0ZXIgJydwaScnLCB6ZXJvIGlzIGFzc3VtZWQuIAoKUmVsYXRlZCB0byB0 aGlzLCB0aGUgbnVtYmVyIHNlcGFyYXRvciAnJ3BpJ2UnJyBpcyB1c2VkIHRvIHNlcGFyYXRlIG51 bWJlcnMsIGVpdGhlciB0byBzZXBhcmF0ZSBkaWdpdHMgd2hlbiBzcGVha2luZyBpbiBhIGJhc2Ug bGFyZ2VyIHRoYW4gc2l4dGVlbiwgb3Igd2hlbiBhIGRlY2ltYWwgcG9pbnQgaXMgbm90IGFwcGxp Y2FibGUsIGZvciBpbnN0YW5jZSwgd2hlbiB0YWxraW5nIGFib3V0IHRpbWUgaW4gaG91cnMsIG1p bnV0ZXMsIHNlY29uZHM6CgonJ3BhIHNvIHBpJ2UgcmUgbXUgcGknZSBubyBqdSd1IHJlIHplJycg 4oCTIE5pbmV0ZWVuLCB0d2VudHktZml2ZSwgemVybyBpbiBiYXNlIDI3IChKUDAgYmFzZSAyNykK CicncmUgcmUgcGnigJllIHZvIGJpJycg4oCTIHR3ZW50eS10d28sIGZvdXJ0eSBlaWdodCAoMjI6 NDgpCgoKClRoZXJlIGlzIGFsc28gYSByYW5nZSBvZiBudW1iZXIgd29yZHMgd2hpY2ggYXJlIG5v dCBtYXRoZW1hdGljYWxseSBleGFjdCBidXQgcmF0aGVyIHN1YmplY3RpdmUgb3IgcmVsYXRpdmUu IFRoZSBiZWhhdmlvcnMgb2YgdGhlc2Ugd29yZHMgYXJlIGFsbW9zdCBleGFjdGx5IGxpa2UgdGhl IGJlaGF2aW9yIG9mIGRpZ2l0cywgZXhjZXB0IHRoZXkgY2Fubm90IGJlIGNvbWJpbmVkIHRvIG1h a2UgYmlnZ2VyIG51bWJlcnMgdGhlIHdheSBkaWdpdHMgY2FuOgoKfHwgcm98c28nYXxzbydlfHNv J2l8c28nb3xzbyd1fAoKYWxsfGFsbW9zdCBhbGx8bW9zdHxtYW55fHNvbWV8ZmV3fHwKCldoZW4g Y29tYmluZWQgd2l0aCBhbnkgb2YgdGhlIGRpZ2l0cywgdGhlc2Ugd29yZHMgYXJlIGFzc3VtZWQg dG8gZ2l2ZSBhIHNlY29uZCB2ZXJkaWN0IGFib3V0IHRoZSBzaXplIG9mIHRoZSBudW1iZXI6Cgon J211IGJpIHNvJ2kgc2FpJycg4oCTRmlmdHkgZWlnaHQsIHdoaWNoIGlzIHJlYWxseSBtYW55LgoK VGhleSBzaG91bGQgdGhlcmVmb3JlIG5vdCBiZSBwbGFjZWQgaW4gdGhlIG1pZGRsZSBvZiBhIG51 bWJlciBzdHJpbmcuIFdoZW4gcGxhY2VkIGFmdGVyICcncGknJywgdGhleSBhcmUgYXNzdW1lZCB0 byBjb252ZXkgdGhlIHNpemUgb2YgYSBmcmFjdGlvbjoKCicncGkgc28naScnIOKAkyBhIGdvb2Qg cGFydCBvZiBpdDoKCicncGkgc28nbycnIOKAkyBzb21lIG9mIGl0IAoKJydwaSBzbydhJycg4oCT IGFsbW9zdCBhbGwgb2YgaXQKCgoKVGhlc2UgYXJlIHNvbWUgaGlnaHRseSBzdWJqZWN0aXZlIG51 bWJlcnMgLSB0aGV5IHdvcmsganVzdCBsaWtlIHRoZSBwcmV2aW91cyBvbmVzLgoKfHxkdeKAmWV8 bW8nYXxyYXUKCnRvbyBtYW55fHRvbyBmZXd8ZW5vdWdofHwKClRoZSBmb2xsb3dpbmcgZml2ZSBh cmUgY29udGV4dC1iYXNlZCBudW1iZXJzIOKAkyB0aGVzZSB3b3JrIGxpa2UgdGhlIHByZXZpb3Vz IG9uZXMsIHdpdGggdGhlIGV4Y2VwdGlvbiB0aGF0IHRoZXkgdGFrZSB0aGUgbmV4dCBudW1iZXIg aW4gb3JkZXIgdG8gYXNzaWduIHRoZW0gbWVhbmluZzoKCnx8ZGEnYXxzdSdlfHN1J298emEndXxt ZSdpCgphbGwgZXhjZXB0IG4gfEF0IG1vc3QgbnxBdCBsZWFzdCBufG1vcmUgdGhhbiBufGxlc3Mg dGhhbiBufHwKCklmIG5vIG51bWJlciBzdHJpbmcgZm9sbG93IHRoZW0sIOKAnG9uZeKAnSBpcyBh c3N1bWVkLgoKJydzb+KAmWkgcGEgcmUgZGEnYSBtdScnIOKAkyBNYW55LCB3aGljaCBpcyB0d2Vs dmUsIHdoaWNoIGlzIGFsbCBidXQgZml2ZS4KClRoZSB0d28gbGFzdCBudW1iZXIgd29yZHMgeW91 IHNob3VsZCBrbm93IGhhdmUgc2xpZ2h0bHkgbW9yZSBjb21wbGljYXRlZCBncmFtbWFyOgoKX18n J2ppJ2knJ19fIC0gbnVtYmVyIHJvdW5kaW5nIG9yIG51bWJlciBhcHByb3hpbWF0aW9uCgpXaGVu ICcnamknaScnIGlzIHBsYWNlZCBiZWZvcmUgYSBudW1iZXIsIHRoZSBlbnRpcmUgbnVtYmVyIGlz IGFwcHJveGltYXRlZDoKCicnamknaSB6ZSB6YSd1IHJhdSBqdSdvJycg4oCTICJBYm91dCBzZXZl bnR5LCB3aGljaCBpcyBtb3JlIHRoYW4gZW5vdWdoLCBjZXJ0YWlubHnigJ0KClBsYWNlZCBpbiB0 aGUgbWlkZGxlIG9mIHRoZSBudW1iZXIsIG9ubHkgdGhlIGZvbGxvd2luZyBkaWdpdHMgYXJlIG5v bi1leGFjdC4gQXQgdGhlIGVuZCBvZiBhIG51bWJlciwgaXQgc2lnbmlmaWVzIHRoYXQgdGhlIG51 bWJlciBoYXMgYmVlbiByb3VuZGVkIG9mZi4gCgpfXycna2knbycnX18gTnVtYmVyIGNvbW1hICAt IHNlcGFyYXRlcyBkaWdpdHMgd2l0aGluIG9uZSBzdHJpbmc7IFRob3VzYW5kcy4KCkl0IGlzIG5v dCBpbmNpZGVudGlhbCB0aGF0ICcna2knbycnIHNvdW5kcyBsaWtlIOKAnGtpbG/igJ0uIEF0IGl0 cyBzaW1wbGVzdCwgJydraSdvJycgaXMgdXNlZCB0byBzZXBhcmF0ZSB0aHJlZSBkaWdpdHMgYXQg YSB0aW1lIGluIGxhcmdlIG51bWJlcnMsIG11Y2ggbGlrZSBjb21tYXMgYXJlIHVzZWQgaW4gRW5n bGlzaDoKCicncGEga2knbyBzbyBzbyBzbyBraSdvIGJpIHhhIHplJycg4oCTIDEsOTk5LDg2NwoK SWYgbGVzcyB0aGFuIHRocmVlIGRpZ2l0cyBhcmUgcHV0IGJlZm9yZSBhICcna2knbycnLCB0aGUg ZGlnaXRzIGFyZSBhc3N1bWVkIHRvIGJlIHRoZSBsZWFzdCBzaWduaWZpY2FudCBvbmVzLCBhbmQg emVyb3MgYXJlIGFzc3VtZWQgdG8gZmlsbCBpbiB0aGUgcmVzdDoKCicndm8ga2knbyBjaSBiaSBr aSdvIHBhIGtpJ28ga2knbycnIOKAkyA0LDAzOCwwMDEsMDAwLDAwMAoKJydraSdvJycgaXMgdXNl ZCBzaW1pbGFybHkgYWZ0ZXIgYSBkZWNpbWFsIHBvaW50LgoKCgpUaGF0IGNvbmNsdWRlcyB0aGUg Y29tbW9uIExvamJhbiBudW1iZXJzIHRoZW1zZWx2ZXMuIEhvdyB0aGV5IGFwcGx5IHRvIHN1bXRp IGlzIGEgc2NpZW5jZSBpbiBpdHNlbGYsIGFuZCB3ZSBsZWF2ZSB0aGF0IGZvciBsZXNzb24gdHdl bnR5LXR3by4gTm93IHdlIGZvY3VzIG9uIGhvdyB0aGVzZSBudW1iZXJzIGNhbiBiZSB1c2VkIGlu IGEgYnJpZGkuCgpBIHN0cmluZyBvZiBudW1iZXIgd29yZHMgYnkgdGhlbXNlbHZlcyBhcmUgZ3Jh bW1hdGljYWwsIHNpbmNlIHRoZXkgY2FuIGFjdCBhcyBhbiBhbnN3ZXIgdG8gYSAnJ3hvJyctdHlw ZSBvZiBxdWVzdGlvbi4gSW4gdGhpcyBjYXNlLCBob3dldmVyLCB0aGV5IGNhbm5vdCBiZSBjb25z aWRlcmVkIHBhcnQgb2YgYW55IGJyaWRpLiBJbiBnZW5lcmFsLCBpZiBudW1iZXJzIGZpbGwgcGFy dCBvZiBhIGJyaWRpLCB0aGV5IGRvIHNvIGluIG9uZSBvZiB0d28gZm9ybXM6IFB1cmUgbnVtYmVy cyBhbmQgcXVhbnRpZmllcnMuCgpBIHB1cmUgbnVtYmVyIGlzIGFueSByb3cgb2YgbnVtYmVyIHdv cmRzIHByZWZpeGVkIHdpdGggJydsaScnLiBUaGlzIG1ha2VzIGEgc3VtdGkgZGlyZWN0bHkgZnJv bSB0aGUgbnVtYmVyLCBhbmQgcmVmZXJzIHRvIHRoZSBtYXRoZW1hdGljYWwgY29uY2VwdCBvZiwg Zm9yIGluc3RhbmNlLCDigJx0aGUgbnVtYmVyIHNpeOKAnS4gSXRzIGZhJ29ybWEnbyBpcyAnJ2xv J28nJwoKX18nJ2xpJydfXyBjb252ZXJ0IG51bWJlci9tZWtzby1leHByZXNzaW9uIHRvIHN1bXRp LgoKX18nJ2xvJ28nJ19fIGZhJ29ybWEnbzogZW5kIGNvbnZlcnQgbnVtYmVyL21la3NvLWV4cHJl c3Npb24gdG8gc3VtdGkuCgpUaGVzZSBwdXJlIHN1bXRpIGFyZSB1c3VhbGx5IHdoYXQgZmlsbHMg dGhlIHgyIG9mIGJyaXZsYSBzdWNoIGFzICcnbWl0cmUnJyBvciAnJ2NhY3JhJycKCl9fJydtaXRy ZScnX18geDEgaXMgeDIgbWV0cmVzIGluIGRpbWVuc2lvbiB4MyBieSBzdGFuZGFyZCB4NAoKX18n J2NhY3JhJydfXyB4MSBpcyB4MiBob3VycyBpbiBkdXJhdGlvbiAoZGVmYXVsdCAxKSBieSBzdGFu ZGFyZCB4MwoKCgpUcnkgdG8gdHJhbnNsYXRlIHRoZSBmb2xsb3dpbmc6CgonJ2xlIHRhIG51IGNp bmppa2NhIGN1IGNhY3JhIGxpIGNpIGppJ2kgdSdpIG5haScnCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OiDigJ0qc2lnaCogVGhhdCBmbGlydGluZyBoYXMgYmVlbiBnb2luZyBvbiBmb3IgYXJvdW5kIHRo cmVlIGhvdXJzLuKAnSB+fgoKSG93IGRvIHlvdSBjb3VudCB0byB0aHJlZSBpbiBMb2piYW4/CgpB bnN3ZXI6IH5+Z3JleSxncmV5OiAnJ2xpIHBhIGxpIHJlIGxpIGNpJycgfn4KCgoKVGhlIGxhc3Qg dGhpbmcgd2XigJlsbCBnbyB0aHJvdWdoIGluIHRoaXMgbGVzc29uIGlzIHRoZSB3b3JkcyBvZiB0 aGUgc2VsbWHigJlvIE1BSSBhbmQgdGhvc2Ugb2YgTU9JLgoKTUFJIG9ubHkgY29udGFpbnMgdHdv IHdvcmRzLCAnJ21haScnIGFuZCAnJ21vJ28nJy4gQm90aCBvZiB0aGVzZSBjb252ZXJ0IGFueSBu dW1iZXIgc3RyaW5nIHRvIGFuIG9yZGluYWwsIHdoaWNoIGhhcyB0aGUgZ3JhbW1hciBvZiBhdHRp dHVkaW5hbHMuIE9yZGluYWxzIGFyZSB1c2VkIHRvIGRpdmlkZSBhIHRleHQgaW50byBudW1iZXJl ZCBzZWdtZW50cywgbGlrZSBjaGFwdGVycyBvciBwYXJ0cy4gVGhlIG9ubHkgZGlmZmVyZW5jZSBi ZXR3ZWVuICcnbWFpJycgYW5kICcnbW8nbycnIGlzIHRoYXQgJydtbydvJycgcXVhbnRpZmllcyBs YXJnZXIgc3ViZGl2aXNpb25zIG9mIHRleHQsIGFsbG93aW5nIHlvdSB0byBkaXZpZGUgYSB0ZXh0 IG9uIHR3byBkaWZmZXJlbnQgbGV2ZWxzLCBmb3IgZXhhbXBsZSBlbnVtZXJhdGluZyBjaGFwdGVy cyB3aXRoICcnbW8nbycnIGFuZCBzZWN0aW9ucyB3aXRoICcnbWFpJycuIE5vdGljZSB0aGF0IHRo ZXNlIGFzIHdlbGwgYXMgdGhlIE1PSSB0YWtlIGFueSBudW1iZXIgc3RyaW5nIGRpcmVjdGx5LCB3 aXRob3V0IGFueSBuZWVkIGZvciAnJ2xpJycuCgpfXycnbWFpJydfXzogTG93ZXItb3JkZXIgb3Jk aW5hbCBtYXJrZXI6IENvbnZlcnQgbnVtYmVyIHRvIG9yZGluYWwKCl9fJydtb+KAmW8nJ19fOiBI aWdoZXIgb3JkZXIgb3JkaW5hbCBtYXJrZXI6IENvbnZlcnQgbnVtYmVyIHRvIG9yZGluYWwuCgoK ClRoZXJlIGFyZSBmaXZlIE1PSSwgYW5kIHRoZXkgYWxsIGNvbnZlcnQgYW55IG51bWJlciBzdHJp bmcgdG8gc2VsYnJpLiBXZeKAmWxsIHRha2UgdGhlbSBvbmUgYXQgYSB0aW1lOgoKX18nJ21vaScn X18gLSBDb252ZXJ0IG51bWJlciBuIHRvIHNlbGJyaTogeDEgaXMgdGhlIG7igJl0aCBtZW1iZXIg b2Ygc2V0IHgyIGJ5IG9yZGVyIHgzCgpFeGFtcGxlOiAnJ2xhIGx1dGNpbWluIGNpIG1vaSBsbydp IG5pbm11IHBlbmRvIGJlIG1pIGxlIHN1J3UgbG8gY2xhbmkgem1hZHUgY3UgbGlkbmUgbG8gY2xh bmkgbWxlY2EnJyDigJMg4oCcTHVpLUNoaSBNaW4gaXMgdGhpcmQgYW1vbmcgbXkgZmVtYWxlIGZy aWVuZHMgYnkgdGhlIG9yZGVyOiBUaGUgbW9yZSB0YWxsIG9uZXMgcHJlY2VkZXMgdGhlIGxlc3Mg dGFsbCBvbmVz4oCdLgoKKFdoZW4gc3BlY2lmeWluZyBhIHNlcXVlbmNlLCBpdCBpcyB3aWRlbHkg dW5kZXJzdG9vZCB0aGF0IGlmIGEgJydrYScnLWFic3RyYWN0aW9uIChsZXNzb24gdHdlbnR5LWVp Z2h0KSBpcyB1c2VkIGFzIGEgc3VtdGksIHRoZSBtZW1iZXJzIG9mIHRoZSBzZXQgYXJlIG9yZGVy ZWQgZnJvbSB0aGUgb25lIHdpdGggbW9zdCBvZiB0aGUgcHJvcGVydHkgdG8gdGhlIG9uZSB3aXRo IGxlc3Mgb2YgdGhlIHByb3BlcnR5LCBzbyB0aGUgeDMgb2YgdGhlIGZvbGxvd2luZyBzZW50ZW5j ZSBjb3VsZCBoYXZlIGJlZW4gc2hvcnRlbmVkIHRvICcnbG8ga2EgY2xhbmknJykKCl9fJydsaWRu ZScnX18geDEgaXMgYmVmb3JlIHgyIGluIHNlcXVlbmNlIHgzCgpfXycnY2xhbmknJ19fIHgxIGlz IHNob3J0IGluIGRpbWVuc2lvbiB4MiBieSBzdGFuZGFyZCB4MwoKX18nJ3ptYWR1JydfXyB4MSBl eGNlZWRzIHgyIGluIHByb3BlcnR5IHgzIGJ5IGFtb3VudCB4NAoKX18nJ21sZWNhJydfXyB4MSBp cyBsZXNzIHRoYW4vaXMgbGVzcyBjaGFyYWN0ZXJpemVkIHRoYW4geDIgYnkgcHJvcGVydHkgeDMg YnkgYW1vdW50IHg0CgoKCl9fJydtZWknJ19fIC0gQ29udmVydCBudW1iZXIgbiB0byBzZWxicmk6 IHgxIGlzIHRoZSBtYXNzIGZvcm1lZCBmcm9tIHRoZSBzZXQgeDIsIHdoaWNoIGhhcyB0aGUgbiBt ZW1iZXJzIG9mIHgzCgpOb3RpY2UgaGVyZSB0aGF0IHgzIGFyZSBzdXBwb3NlZCB0byBiZSBpbmRp dmlkdWFscywgeDIgYSBzZXQgYW5kIHgxIGEgbWFzcy4KCldoYXQgd291bGQgJydtaSBjaSBtZWkn JyBtZWFuPyAKCkFud2VyOiB+fmdyZXksZ3JleTrigJxXZSBhcmUgZ3JvdXAgb2YgdGhyZWUu4oCd fn4KCgoKX18nJ3NpJ2UnJ19fIC0gQ29udmVydCBudW1iZXIgbiB0byBzZWxicmk6IHgxIGlzIG9u ZS1udGggb2YgbWFzcyB4MgoKRXhhbXBsZTogJydsZSB2aSBwbGlzZSBjdSBtZSdpIHBpIHBhIHNp J2UgbGVpIG1pIGNpZGphIGJlIHplJ2EgbG8gZGplZGknJyDigJMg4oCcVGhpcyBhcHBsZSBoZXJl IGlzIGxlc3MgdGhhbiBvbmUgdGVudGggb2YgbXkgZm9vZCBmb3Igb25lIGRheeKAnQoKX18nJ2N1 J28nJ19fIC0gQ29udmVydCBudW1iZXIgbiB0byBzZWxicmk6IHgxIGhhcyBuIHByb2JhYmlsaXR5 IG9mIG9jY3VycmluZyB1bmRlciBjb25kaXRpb25zIHgyCgpFeGFtcGxlOiAnJ2xvIG51IG1pIG1y b2JpJ28gY3UgcGEgY3UnbyBsbyBudSBtaSBkZW5wYSByaScnIOKAkyDigJ1BbiBldmVudCBvZiBt ZSBkeWluZyBoYXMgcHJvYmFiaWxpdHkgMSB1bmRlciB0aGUgY29uZGl0aW9uczogSSB3YWl0IGZv ciBpdOKAnSA9IOKAnU1lIGR5aW5nIGlzIGNvbXBsZXRlbHkgY2VydGFpbiBpZiBJIHdhaXQgbG9u ZyBlbm91Z2gu4oCdCgpfXycnZGVucGEnJ19fIHgxIHdhaXRzIGZvciB4MiwgYmVpbmcgaW4gc3Rh dGUgeDMgdW50aWwgcmVzdW1pbmcvZG9pbmcgeDQKCl9fJyd2YSdlJydfXyAtIENvbnZlcnQgbnVt YmVyIG4gdG8gc2VsYnJpOiB4MSBpcyBhdCB0aGUgbuKAmXRoIHBvc2l0aW9uIG9uIHRoZSBzY2Fs ZSB4MgoKRXhhbXBsZTogJydsaSBwYSBubyBjdSBybyB2YeKAmWUgbGEgdG9yaW5vbicnIOKAkyDi gJwxMCBpcyB0aGUgaGlnaGVzdCB2YWx1ZSBvbiB0aGUgVG9yaW5vLXNjYWxl4oCdCgoKCgoKISFM b2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHkgKGJvLCBrZSwgY28gYW5kIG1vcmUgY3V0ZW5l c3MpCgpTYXkgeW914oCZcmUgYW4gaW1wb3J0YW50IEFtZXJpY2FuIGJ1eWVyIG9mIGNvbXB1dGVy cy4gSG93IGRvIHlvdSBleHByZXNzIHRoaXM/IEZvciBjb25zdHJ1Y3RzIGxpa2UgdGhlc2UsIHRh bnJ1IGFyZSBpZGVhbDogJydtaSB2YWpuaSBtZXJrbyBza2FtaSB0ZSB2ZWNudScnLiBObyB3YWl0 LCB0aGF04oCZcyBub3QgcmlnaHQuIFRhbnJ1IGFyZSBncm91cGVkIGZyb20gbGVmdCB0byByaWdo dCwgc28gdGhpcyB0YW5ydSBpcyB1bmRlcnN0b29kOiAoKCcndmFqbmkgbWVya28nJykgJydza2Ft aScnKSAnJ3RlIHZlY251JycsIGEgYnV5ZXIgb2YgY29tcHV0ZXJzIGZvciBpbXBvcnRhbnQgQW1l cmljYW5zLiBZb3UgY2Fu4oCZdCBjaGFuZ2UgdGhlIG9yZGVyIG9mIHRoZSBzZWxicmkgdG8gZ2V0 IGEgdXNlZnVsIHRhbnJ1LiBOZWl0aGVyIGNhbiB0aGlzIGJlIHNvbHZlZCB3aXRoIGxvZ2ljYWwg Y29ubmVjdGl2ZXMsIHdoaWNoIHlvdSB3aWxsIGZpcnN0IGxlYXJuIGFib3V0IGxhdGVyIGFueXdh eS4gVGhlIG9ubHkgd2F5IHRvIG1ha2UgYSBmaXR0aW5nIHRhbnJ1IGlzIHRvIGZvcmNlIHRoZSBz ZWxicmkgdG8gZ3JvdXAgZGlmZmVyZW50bHkuCgoKClRvIGJpbmQgdHdvIHNlbGJyaSBjbG9zZSB0 b2dldGhlciBpbiBhIHRhbnJ1LCB0aGUgd29yZCAnJ2JvJycgY2FuIGJlIHBsYWNlZCBiZXR3ZWVu IHRoZW06ICcnbWkgdmFqbmkgYm8gbWVya28gc2thbWkgYm8gdGUgdmVjbnUnJyBpcyByZWFkICcn bWknJyAoJyd2YWpuaSBibyBtZXJrbycnKSAoJydza2FtaSBibyB0ZSB2ZWNudScnKSwgd2hpY2gg aXMgdXNlZnVsIGluIHRoaXMgY29udGV4dC4gSWYgYm8gaXMgcGxhY2VkIGJldHdlZW4gc2V2ZXJh bCBzZWxicmkgaW4gYSByb3csIHRoZXkgYXJlIGdyb3VwZWQgZnJvbSByaWdodCB0byBsZWZ0IGlu c3RlYWQgb2YgdGhlIHVzdWFsIGxlZnQgdG8gcmlnaHQ6ICcnbWkgdmFqbmkgbWVya28gYm8gc2th bWkgYm8gdGUgdmVjbnUnJyBpcyByZWFkICcndmFqbmknJyAoJydtZXJrbyBibycnICgnJ3NrYW1p IGJvIHRlIHZlY251JycpKSBhbiDigJxpbXBvcnRhbnQgKEFtZXJpY2FuIGNvbXB1dGVyLWJ1eWVy KeKAnSwgd2hpY2ggaXMgZXZlbiBtb3JlIGFwcHJvcHJpYXRlIGluIHRoZSBzaXR1YXRpb24uCgpf XycnYm8nJ19fIEJpbmRzIHR3byBzZWxicmkgdG9nZXRoZXIgc3Ryb25nbHkuCgoKCkhvdyB3b3Vs ZCB5b3Ugc2F5IOKAnFRoYXTigJlzIGEgdGFzdHkgeWVsbG93IGFwcGxl4oCdPwoKX18nJ2t1a3Rl JydfXyB4MSBpcyB0YXN0eSBmb3IgeDIKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ3RpIGt1a3Rl IHBlbHh1IGJvIHBsaXNlJyd+fgoKCgpXaGF0IGFib3V0IOKAnVRoYXTigJlzIGEgYmlnLCB0YXN0 eSB5ZWxsb3cgYXBwbGXigJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ3RpIGJhcmRhIGt1a3Rl IGJvIHBlbHh1IGJvIHBsaXNlJyd+fgoKCgpBbm90aGVyIGFwcHJvYWNoIHRvIHRoaXMgaXMgdG8g dXNlIHRoZSB3b3JkcyAnJ2tl4oCma2XigJllJycuIFRoZXNlIGNhbiBiZSBjb25zaWRlcmVkIGFz IGVxdWl2YWxlbnQgdG8gdGhlIHBhcmVudGhlc2lzZXMgdXNlZCBpbiB0aGUgcGFyYWdyYXBoIGFi b3ZlLiAnJ2tlJycgYmVnaW5zIHN0cm9uZyBzZWxicmkgZ3JvdXBpbmcsICcna2XigJllJycgZW5k cyBpdC4KCl9fJydrZScnX18g4oCTIGJlZ2luIHN0cm9uZyBzZWxicmkgZ3JvdXBpbmcuCgpfXycn a2XigJllJydfXyDigJMgZW5kIHN0cm9uZyBzZWxicmkgZ3JvdXBpbmcuCgpUaGUgc3RyZW5ndGgg b2YgdGhlIGJpbmRpbmcgaXMgdGhlIHNhbWUgYXMgdGhhdCBvZiAnJ2JvJycuIFRoZXJlZm9yZSwg JydtaSB2YWpuaSBtZXJrbyBibyBza2FtaSBibyB0ZSB2ZWNudScnIGNhbiBiZSB3cml0dGVuICcn bWkgdmFqbmkga2UgbWVya28ga2Ugc2thbWkgdGUgdmVjbnUge2tl4oCZZX0ge2tl4oCZZX0nJy4K CkhvdyBjb3VsZCB5b3Ugc2F5IOKAnEnigJltIGEgR2VybWFuIHNlbGxlciBvZiB5ZWxsb3cgaG9t ZXM/4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBkb3RjbyBrZSBwZWx4dSB6ZGFuaSB2 ZWNudScnfn4KCgoKV2hpbGUgd2XigJlyZSBhdCBtZXNzaW5nIHdpdGggdGhlIG9yZGluYXJ5IHRh bnJ1IHN0cnVjdHVyZSwgdGhlcmUgaXMgYW5vdGhlciB3b3JkIHdvcnRoIHBheWluZyBhdHRlbnRp b24gdG8uIElmIEkgd2FudCB0byBzYXkgdGhhdCBJ4oCZbSBhIHByb2Zlc3Npb25hbCB0cmFuc2xh dG9yLCBJIGNvdWxkIHNheSAnJ21pIGZhbnZhIHNlIGppYnJpJycuCgpfXycnamlicmknJ19fIHgx IGlzIGEgam9iIG9mIHgyCgpfXycnZG90eWJhdScnX18geDEgaXMgR2VybWFuIHVzZWQgYnkgeDIg dG8gc2F5IHgzCgpfXycnZ2xpYmF1JydfXyB4MSBpcyBFbmdsaXNoIHVzZWQgYnkgeDIgdG8gc2F5 IHgzCgpJZiBJIHdhbnRlZCB0byBzYXkgdGhhdCBJ4oCZbSBhIHByb2Zlc3Npb25hbCB0cmFuc2xh dGVyIGZyb20gRW5nbGlzaCB0byBHZXJtYW4sIEnigJlkIGhhdmUgdG8gbWVzcyBhcm91bmQgd2l0 aCAnJ2JlJycgYW5kICcnYmVpJyc6ICcnbWkgZmFudmEgYmUgbGUgZG90eWJhdSBiZWkgbGUgZ2xp YmF1IGJl4oCZbyBzZSBqaWJyaScnLCBhbmQgdGhlIGZhY3QgdGhhdCBpdCB3YXMgYSB0YW5ydSBj b3VsZCBxdWlja2x5IGJlIGxvc3QgaW4gc3BlZWNoIGR1ZSB0byB0aGUgY29tcGxpY2F0ZWQgc3Ry dWN0dXJlIG9mIHRoZSBzZW50ZW5jZS4gSGVyZSwgd2UgY2FuIHVzZSB0aGUgd29yZCAnJ2NvJycu IGl0IGludmVydHMgdGhlIHRhbnJ1LCBtYWtpbmcgdGhlIHJpZ2h0bW9zdCBzZWxicmkgbW9kaWZ5 IHRoZSBsZWZ0bW9zdCBpbnN0ZWFkIG9mIHRoZSBvdGhlciB3YXkgYXJvdW5kOgoKJydtaSBzZSBq aWJyaSBjbyBmYW52YSBsZSBkb3R5YmF1IGxlIGdsaWJhdScnIGlzIHRoZSBzYW1lIGJyaWRpIGFz IHRoZSBwcmV2aW91cyBMb2piYW4gb25lLCBidXQgbXVjaCBtb3JlIGVhc3kgdG8gdW5kZXJzdGFu ZC4gTm90aWNlIHRoYXQgYW55IHN1bXRpIGJlZm9yZSB0aGUgdGFucnUgZmlsbHMgJydzZSBqaWJy aScnLCB3aGlsZSBhbnkgZm9sbG93aW5nIGl0IG9ubHkgZmlsbHMgdGhlIG1vZGlmeWluZyBzZWxi cmk6ICcnZmFudmEnJy4KCl9fJydjbycnX18gSW52ZXJ0IHRhbnJ1LiBBbnkgcHJldmlvdXMgc3Vt dGkgZmlsbCB0aGUgbW9kaWZpZWQsIGFueSBmb2xsb3dpbmcgZmlsbCB0aGUgbW9kaWZpZXIuCgoK ClRoZSBzdHJlbmd0aCBieSB3aGljaCB0d28gc2VsYnJpIGFyZSBib3VuZCB0b2dldGhlciB3aXRo IGNvIGlzIHZlcnkgd2VhayDigJMgZXZlbiB3ZWFrZXIgdGhhbiBub3JtYWwgdGFucnUgZ3JvdXBp bmcgd2l0aG91dCBhbnkgZ3JvdXBpbmcgd29yZHMuIFRoaXMgbWFrZXMgc3VyZSB0aGF0LCBpbiBh IGNvLWNvbnN0cnVjdCwgdGhlIGxlZnRtb3N0IHNlbGJyaSBpcyBhbHdheXMgdGhlIHNlbGJyaSBi ZWluZyBtb2RpZmllZCwgYW5kIHRoZSByaWdodG1vc3QgYWx3YXlzIG1vZGlmaWVzLCBldmVuIGlm IGFueSBvZiB0aG9zZSBwYXJ0cyBhcmUgdGFucnUuIFRoaXMgbWFrZXMgYSBjby1jb25zdHJ1Y3Qg ZWFzeSB0byBwYXJzZToKCicndGkgcGVseHUgcGxpc2UgY28ga3VrdGUnJyBpcyByZWFkICcndGkn JyAoJydwZWx4dSBwbGlzZScnKSAnJ2NvIGt1a3RlJycsIHdoaWNoIGlzIHRoZSBzYW1lIGFzICcn dGkga3VrdGUgcGVseHUgYm8gcGxpc2UnJy4gVGhpcyBhbHNvIG1lYW5zIHRoYXQgYSAnJ2tl4oCm a2XigJllJycgY2Fubm90IGVuY29tcGFzcyBhICcnY28nJy4KClRoZSBjbWF2byBvZiB0aGUgc2Vs bWEnbyBHSWhBLCB0aGUgYnJpZGktdGFpbCBhZnRlcnRob3VnaHQgbG9naWNhbCBjb25uZWN0aXZl cywgaG93ZXZlciwgYmluZHMgZXZlbiBsb29zZXIgdGhhbiAnJ2NvJycuIFRoaXMgaXMgaW4gb3Jk ZXIgdG8gdG90YWxseSBhdm9pZCBjb25mdXNpb24gYWJvdXQgd2hpY2ggc2VsYnJpIGJpbmRzIHRv IHdoaWNoIGluIGEgR0loQS1jb25zdHJ1Y3QuIFRoZSBhbnN3ZXIgaXMgc2ltcGxlOiBUaGUgR0lo QSBuZXZlciBlbWNvbXBhc3NlcyBhbnkgc2VsYnJpLWdyb3Vwcy4KCgoKSG93IGNhbiB5b3UgZXhw cmVzcyDigJ1JIGFtIGFuIGltcG9ydGFudCBBbWVyaWNhbiBidXllciBvZiBjb21wdXRlcnPigJ0g dXNpbmcgYSAnJ2NvJyc/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBza2FtaSB0ZSB2ZWNu dSBjbyB2YWpuaSBtZXJrbycnfn4KCgoKSWYgaXTigJlzIG9mIGFueSB1c2UsIHRoaXMgaXMgdGhl IGxpc3Qgb2YgZGlmZmVyZW50IGtpbmQgb2Ygc2VsYnJpIGdyb3VwZXJzIHJhbmtlZCBieSBzdHJl bmd0aDoKCgoKMS4gICAgJydibycnIGFuZCAnJ2tlLi5rZeKAmWUnJwoKCgoyLiAgICBsb2dpY2Fs IGNvbm5lY3RpdmVzIG90aGVyIHRoYW4gYnJpZGktdGFpbCBhZnRlcnRob3VnaHQgbG9naWNhbCBj b25uZWN0aXZlcyAoZXhwbGFpbmVkIGluIGxlc3NvbiB0d2VudHktZml2ZSkKCgoKMy4gICAgbm8g Z3JvdXBpbmcgd29yZHMKCgoKNC4gICAgJydjbycnCgoKCjUuICAgIGJyaWRpLXRhaWwgYWZ0ZXJ0 aG91Z2h0IGxvZ2ljYWwgY29ubmVjdGl2ZXMgKGFsc28gaW4gbGVzc29uIHR3ZW50eS1maXZlKQoK CgpUaGUgcmVzdCBvZiB0aGlzIGxlc3NvbiB3aWxsIG5vdCBiZSBvbiBzZWxicmkgZ3JvdXBpbmcs IGJ1dCBtdWNoIGxpa2UgbGVzc29uIHNldmVudGVlbiBtZW50aW9uIGFzc29ydGVkIHdvcmRzLCB3 aGljaCBjYW4gYmUgb2YgdXNlLgoKCgonJ2JvJycgaGFzIGFub3RoZXIgdXNlLCB3aGljaCBzZWVt cyBzZXBhcmF0ZSBmcm9tIHNlbGJyaSBncm91cGluZzogSXQgY2FuIGFsc28gYmluZCBhIHN1bXRj aXRhIHRvIGFuIGVudGlyZSBicmlkaSwgc28gdGhhdCB0aGUgY29udGVudCBvZiB0aGUgc3VtdGNp dGEgaXMgbm90IGEgc3VtdGksIGJ1dCB0aGUgZm9sbG93aW5nIGJyaWRpLiBUaGlzIGlzIGJlc3Qg ZXhwbGFpbmVkIHdpdGggYW4gZXhhbXBsZS4KCl9fJyd4ZWJuaScnX18geDEgaGF0ZXMgeDIKCicn bWkgZGFyeGkgZG8gLmkgbXXigJlpIGJvIG1pIGRvIHhlYm5pJycg4oCTIOKAnEkgaGl0IHlvdSwg d2l0aCBtb3RpdmF0aW9uIHRoYXQgSSBoYXRlIHlvdS7igJ0gSGVyZSB0aGUgJydibycnIGJpbmRz ICcnbXXigJlpJycgdG8gdGhlIGZvbGxvd2luZyBicmlkaS4KClRoaXMgaXMgd2hlcmUgdGhlIHRl Y2huaWNhbCBkaWZmZXJlbmNlIGJldHdlZW4gdGVuc2Ugc3VtdGNpdGEgYW5kIG90aGVyIHN1bXRj aXRhIGlzIHJlbGV2YW50LiBZb3Ugc2VlLCB3aGVuIGJpbmRpbmcgYSBub3JtYWwgc3VtdGNpdGEg dG8gYSBicmlkaSB3aXRoICcnYm8nJywgaXQgbWVhbnMgdGhhdCB0aGUgZm9sbG93aW5nIGJyaWRp IHNvbWVob3cgZml0cyBpbnRvIHRoZSBzdW10aSBwbGFjZSBvZiB0aGUgc3VtdGNpdGEuIEZvciB0 aGUgcmVhc29uIG9mIEdvZCBLbm93cyBXaHksIGJpbmRpbmcgb25lIG9mIHRoZSB3b3JkcyAnJ2Jh Jycgb3IgJydwdScnIHRvIGEgYnJpZGkgaGFzIHRoZSBleGFjdCBvcHBvc2l0ZSBlZmZlY3QuIEZv ciBleGFtcGxlLCBpbiB0aGUgYnJpZGkgJydtaSBkYXJ4aSBkbyAuaSBiYSBibyBkbyBjaW5qaWtj YScnLCBvbmUgd291bGQgYXNzdW1lIHRoYXQgdGhlIHNlY29uZCBicmlkaSBpcyBzb21laG93IGZp bGxlZCBpbnRvIHRoZSBzdW10aSBwbGFjZSBvZiAnJ2JhJycsIG1lYW5pbmcgdGhhdCB0aGUgYnJp ZGkgZmlyc3QgdXR0ZXJlZCB0b29rIHBsYWNlIGluIHRoZSBmdXR1cmUgb2YgdGhlIHNlY29uZCBi cmlkaS4gVGhhdCdzIG5vdCB0aGUgY2FzZSwgaG93ZXZlciwgYW5kIHRoZSBjb3JyZWN0IHRyYW5z bGF0aW9uIG9mIHRoYXQgdXR0ZXJhbmNlIHdvdWxkIGJlICJJIGhpdCB5b3UuIEFmdGVyd2FyZHMs IHlvdSBmbGlydCIuIFRoaXMgd2VpcmQgcnVsZSBpcyBhY3R1YWxseSBvbmUgb2YgdGhlIG1haW4g b2JzdGFjbGVzIHRvIGEgdW5pZmljYXRpb24gb2YgYWxsIHN1bXRjaXRhIGludG8gb25lIHNpbmds ZSB3b3JkIGNsYXNzLgoKCgpUaGUgdW5vZmZpY2lhbCB3b3JkICcnbWXigJlvaScnIGlzIGVxdWl2 YWxlbnQgdG8gbWUgbGHigJllICcnem/igJlvaScnLCB3aGljaCBtZWFucyB0aGF0IGl0IGNvbnZl cnRzIHRoZSBjb250ZW50IG9mIHRoZSBuZXh0IHdvcmQgaW50byBhIHNlbGJyaS4gSXQgaXMgdXNl ZCB0byBpbnZlbnQgYnJpdmxhIG9uIHRoZSBmbHk6ICcnbWkgY2EgemdhbmEgbGEgbWXigJlvaSBY LWZpbGVzJycgZm9yIOKAnEkgbm93IHdhdGNoIFgtZmlsZXPigJ0uIExpa2UgYWxsIHF1b3RlIG5l eHQgd29yZC1jbWF2bywgaXQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgb2ZmaWNpYWwgZ3JhbW1h ciwgYnV0IHRvIHRoZSBsYXp5IExvamJhbmlzdCwgaXTigJlzIGludmFsdWFibGUuCgoKClRoZSB3 b3JkICcnZ2knJyBpcyBzdHJhZ2Uga2luZCBvZiBicmlkaSBzZXBhcmF0b3IsIGFuYWxvZ291cyB0 byAnJy5pJycsIGJ1dCB0byBteSBrbm93bGVkZ2UsIGl0IGlzIHVzZWQgaW4gb25seSB0d28gZGlm ZmVyZW50IGtpbmRzIG9mIGNvbnN0cnVjdHM6IE1vc3Qgb2Z0ZW4gd2l0aCBsb2dpY2FsIGNvbm5l Y3RpdmVzLCBleHBsYWluZWQgaW4gbGVzc29uIHR3ZW50eS1maXZlLCBidXQgYWxzbyB3aXRoIHN1 bXRjaXRhLiBXaXRoIHN1bXRjaXRhIGl0IGNyZWF0ZXMgYSB1c2VmdWwsIGJ1dCBoYXJkbHkgc2Vl biwgY29uc3RydWN0OgoKJydtdeKAmWkgZ2kgQlJJREktMSBnaSBCUklESS0yJycsIHdoaWNoIGlz IGVxdWl2YWxlbnQgdG8gJydCUklESS0yIC5pIG114oCZaSBibyBCUklESS0xJycuIFRoZXJlZm9y ZSwgdGhlIGV4YW1wbGUgYWJvdmUsIHdoaWNoIGV4cGxhaW5lZCB3aHkgSSBoaXQgeW91LCBjYW4g YmUgd3JpdHRlbiAnJ2114oCZaSBnaSBtaSB4ZWJuaSBkbyBnaSBtaSBkYXJ4aSBkbycnLCBvciB0 byBwcmVzZXJ2ZSB0aGUgc2FtZSBvcmRlciBhcyB0aGUgb3JpZ2luYWwgc2VudGVuY2UsIHdlIGNh biBjb252ZXJ0ICcnbXXigJlpJycgd2l0aCAnJ3NlJyc6ICcnc2UgbXXigJlpIGdpIG1pIGRhcnhp IGRvIGdpIG1pIHhlYm5pIGRvJycuCgpJdCBpcyBpbiBleGFtcGxlcyBsaWtlIHRoaXMgdGhhdCAn J2dpJycgcmVhbGx5IGNhbiBzaG93IGl0cyB2ZXJzYXRpbGl0eS4gSXQgZG9lcyBub3QganVzdCBz ZXBhcmF0ZSB0d28gYnJpZGkgbGlrZSAnJy5pJycgZG9lcywgYnV0IGNhbiBhbHNvIHNlcGFyYXRl IHR3byBjb25zdHJ1Y3RzIHdpdGhpbiBhIGJyaWRpLCBtYWtpbmcgYWxsIGNvbnN0cnVjdHMgb3V0 c2lkZSB0aGUgc2NvcGUgb2YgJydnaScnIGFwcGx5IHRvIGJvdGggYnJpZGksIGFzIHRoaXMgZXhh bXBsZSBkZW1vbnN0cmF0ZXM6CgpfXycnY2luYmEnJ19fIHgxIGtpc3NlcyB4MiBhdCBsb2N1cyB4 MwoKCgonJ21pIGdpIHByYW1pIGRvIGdpIGNpbmJhIGRvJycgbGVhdmVzIG1pIG91dHNpZGUgdGhl IGNvbnN0cnVjdCwgbWFraW5nIGl0IGFwcGx5IHRvIGJvdGggYnJpZGkuIFRoaXMgY2FuIGFsc28g YmUgZG9uZSB3aXRoICcnZG8nJywgd2hpY2ggaXMgYWxzbyBwcmVzZW50IGluIGJyb3RoIGJyaWRp OiAnJ21pIGdpIHByYW1pIGdpIGNpbmJhIHZhdSBkbycnLiBOb3RlIHRoYXQgJyd2YXUnJyBpcyBu ZWVkZWQgdG8gbWFrZSBkbyBhcHBlYXIgb3V0c2lkZSB0aGUgc2Vjb25kIGJyaWRpLgoKCgpUaHVz LCB3ZSBjYW4gd3JpdGUgdGhlIG9yaWdpbmFsIHNlbnRlbmNlIHNob3J0ZXI6ICcnbWkgbXXigJlp IGdpIHhlYm5pIGdpIGRhcnhpIHZhdSBkbycnLCBvciwgdG8gb21pdCBldmVuIHRoZSAnJ3ZhdScn LCB3ZSBjYW4gd3JpdGUgaXQgZXZlbiBzaG9ydGVyIGFuZCBtb3JlIGVsZWdhbnRseTogJydtaSBk byBtdeKAmWkgZ2kgeGVibmkgZ2kgZGFyeGknJwoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNz b24gdHdlbnR5LW9uZSAoQ09JKQoKSW4gdGhpcyBsZXNzb24sIHlvdSB3aWxsIGZhbWlsaWFyaXpl IHlvdXJzZWxmIHdpdGggdm9jYXRpdmVzLCBvciAnJ21h4oCZb2kgY29pJycuIFRoZXkgZ2V0IHRo ZWlyIG93biBsZXNzb24sIG5vdCBiZWNhdXNlIHVuZGVyc3RhbmRpbmcgdGhlc2UgcHJvdmlkZXMg YSBiYXNpcyBmb3IgdW5kZXJzdGFuZGluZyBMb2piYW4gZ3JhbW1hciBpbiBnZW5lcmFsLCBvciBi ZWNhdXNlIHRoZXkgYXJlIGhhcmQgdG8gdW5kZXJzdGFuZCwgYnV0IHJhdGhlciBiZWNhdXNlIHRo ZXkgYXJlIHZlcnkgb2Z0ZW4gdXNlZCBpbiBjYXN1YWwgc3BlZWNoLCBhbmQgdGhlcmUgYXJlIGEg bG90IG9mIHRoZW0uCgpBIHZvY2F0aXZlIGlzIHVzZWQgcGFydGx5IHRvIGRlZmluZSB3aG8gJydk bycnIHJlZmVycyB0by4gSWYgdGhlIHZvY2F0aXZlIGlzIGZvbGxvd2VkIGJ5IGEgY21ldmxhLCB0 aGUgY21ldmxhIGdldHMgYW4gaW1wbGllZCBsYSBpbiBmcm9udCBvZiBpdC4gSWYgYSBzZWxicmkg Zm9sbG93cywgYSAnJ2xlJycgaXMgdXNlZCBhcyBhIGdhZHJpIGluc3RlYWQuCgpJbiB0aGVzZSBl eGFtcGxlcywgSSB3aWxsIHVzZSB0aGUgdm9jYXRpdmUgJydjb2knJywgd2l0aCBtZWFucyDigJxI aeKAnSBvciDigJxIZWxsb+KAnS4KCklmIGEgcGVyc29uIGlzIGNhbGxlZCAnJ2xhICsgU0VMQlJJ JycsIHVzaW5nIGEgdm9jYXRpdmUgd2l0aCBvbmx5IHRoZSBzZWxicmkgdG8gYWRkcmVzcyB0aGF0 IHBlcnNvbiB3aWxsIG1lYW4geW91IHJlZmVyIHRvIGhlciBhcyBhY3R1YWxseSBiZWluZyB0aGUg eDEgb2YgdGhhdCBzZWxicmksIHdoaWNoIGlzIG9mdGVuIHdyb25nLiBJZiwgZm9yIGluc3RhbmNl LCBhIHBlcnNvbiBpcyBjYWxsZWQgJydsYSB0c2FuaScnLCDigJxTa3nigJ0sIHNheWluZyAnJ2Nv aSB0c2FuaScnIHJlZmVycyB0byBoZXIgYXMgYSAnJ2xlIHRzYW5pJycsIG1lYW5pbmcg4oCcSGks IHlvdSBza3nigJ0sIHdoaWxlICcnY29pIGxhIHRzYW5pIGNvcnJlY3RseScnIHJlZmVycyB0byBo ZXIgYXMgc29tZW9uZSBjYWxsZWQgIlNreSIsIG1lYW5pbmcg4oCcSGkgU2t54oCdLiBUaGlzIGlz IGEgZnJlcXVlbnQgbWlzdGFrZSwgZXNwZWNpYWxseSBhbW9uZyBuZXcgTG9qYmFuaXN0cy4KCkFs bCB2b2NhdGl2ZXMgaGF2ZSBhIGZhJ29ybWEnbyB3aGljaCBpcyBzb21ldGltZXMgcmVxdWlyZWQu IFRoaXMgaXMgJydkb+KAmXUnJy4gSXTigJlzIG1vc3RseSB1c2VkIGlmIGJvdGggdGhlIGZpcnN0 IHdvcmQgYWZ0ZXIgdGhlIHZvY2F0aXZlIHBocmFzZSBhbmQgdGhlIGxhc3Qgd29yZCBvZiB0aGUg cGhyYXNlIGlzIGEgc2VsYnJpLCBzbyB0aGF0IGl0IHByZXZlbnRzIGZvcm1pbmcgYSB0YW5ydToK CgoKX18nJ2Rv4oCZdScnX18gRW5kIHZvY2F0aXZlIHBocmFzZS4gVXN1YWxseSBlbGlkYWJsZS4K Cl9fJydrbGFrdScnX18geDEgY3JpZXMgeDIgKHRlYXJzKSBmb3IgcmVhc29uIHgzCgonJ2NvaSBs YSBnbGVraSBkb+KAmXUga2xha3UgZmkgbWEnJyDigJ1IZWxsbyBIYXBweS4gV2h5IGNyeT/igJ0K CgoKVGhlIGdlbmVyaWMgdm9jYXRpdmUsICcnZG9pJycsIGRvZXMgbm90aGluZyBleGNlcHQgZGVm aW5pbmcgd2hvIGlzIGJlaW5nIHJlZmVycmVkIHRvIGJ5ICcnZG8nJzoKCicnZG9pIC5lcm5zdC4g eHUgZG8gZG90Y28gbWVya28nJyDigJxFcm5zdDogQXJlIHlvdSBhIEdlcm1hbi1BbWVyaWNhbj/i gJ0KCgoKQWxsIHRoZSBvdGhlciB2b2NhdGl2ZXMgaGF2ZSBzb21lIGNvbnRlbnQgYmVzaWRlIGRl ZmluaW5nICcnZG8nJy4gJydjb2knJywgd2hpY2ggeW91IGtub3csIGFsc28gbWVhbnMg4oCcSGVs bG/igJ0sIGZvciBleGFtcGxlLiBNYW55IG9mIHRoZSB2b2NhdGl2ZXMgaGF2ZSB0d28gb3IgdGhy ZWUgZGVmaW5pdGlvbnMgbGlrZSB0aGUgYXR0aXR1ZGluYWxzLiBMaWtlIGF0dGl0dWRpbmFscywg dGhpcyBpcyBiZWNhdXNlIHRoZXkgY2FuIGJlIG1vZGlmaWVkIHdpdGggJydjdeKAmWknJyBhbmQg JyduYWknJywgdGhvdWdoIG9ubHkgb25lIHZvY2F0aXZlIGhhcyB0aGUgJydjdeKAmWknJy1mb3Jt IGRlZmluZWQuCgpTb21lIGltcG9ydGFudCB2b2NhdGl2ZXMgYXJlIGxpc3RlZCBpbiB0aGUgdGFi bGUgYmVsb3cuIFRoZXJlIGFyZSBvdGhlcnMsIGJ1dCB0aG9zZSBhcmUgbm90IHVzZWQgbXVjaC4K Cnx8dm9jYXRpdmV8V2l0aG91dCBzdWZmaXh8LWN14oCZaXwtbmFpCgpjb2l8SGVsbG98LXwtCgpj b+KAmW98R29vZGJ5ZQl8LXwtCgpqZeKAmWV8VW5kZXJzdG9vZCAvIE9LfC18Tm90IHVuZGVyc3Rv b2QKCmZp4oCZaXxXZWxjb21lfC18Tm90IHdlbGNvbWUgaGVyZQoKcGXigJl1fFBsZWFzZXwtfC0K Cmtp4oCZZXxUaGFua3N8LXxEaXNhcHByZWNpYXRpb24KCnJl4oCZaXxSZWFkeSB0byByZWNpZXZl fC18Tm90IHJlYWR5CgpqdeKAmWl8SGV5IXxBdCBlYXNlfElnbm9yZSBtZQoKdGHigJlhfEludGVy cnVwdGlvbnwtfC0KCnZp4oCZb3xXaWxsIGRvfC18V2lsbCBub3QgZG8KCmtl4oCZb3xQbGVhc2Ug cmVwZWF0fC18Tm8gcmVwZWF0IG5lZWRlZAoKa2knYWl8d2VsbC13aXNofC18Y3Vyc2V8fAoKTm90 aWNlIHRoYXQgJydraSdhaScnIGlzIGV4cGVyaW1lbnRhbAoKCgoKCldoYXQgd291bGQgJydjb2kg Y2/igJlvJycgbWVhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxHcmVldGluZ3MgaW4gcGFz c2luZ+KAnSBvciDigJxIZWxsbyBhbmQgR29vZGJ5ZeKAnX5+CgoKCicnamXigJllJycgaXMgdXNl ZCBhcyDigJxPS+KAnSwgYnV0IGFsc28gdGhlIGFwcHJvcHJpYXRlIHJlc3BvbnNlIHdoZW4gcmVj ZWl2aW5nIHByYWlzZSBvciB0aGFua3MgKGF0IGxlYXN0LCBpZiB5b3Ugd2FudCB0byBiZSBtb2Rl c3QpLCBhcyBpdCBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJhaXNlIG9yIHRoYW5rcyB3YXMgc3VjY2Vz c2Z1bGx5IHVuZGVyc3Rvb2QuCgoKClRyYW5zbGF0ZSAnJ2tp4oCZZSBzaWRqdSBiZSBtaSBiZWkg bG8gdmFqbmkgLmkgamXigJllIC5qZW5pZnluLicnCgpfXycnc2lkanUnJ19fIHgxIGhlbHBzIHgy IGRvIHgzCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcVGhhbmtzLCB5b3UgaGVscGVyIG9mIG1l IHRvIGRvIHNvbWV0aGluZyBpbXBvcnRhbnQu4oCdIOKAnE5vIHByb2JsZW0sIEplbm5pZmVy4oCd fn4KCgoKQW5kICcnZmnigJlpIHRlIHZlY251IC5pIHBl4oCZdSBrbyBjaXRrYScnCgoKCkFuc3dl cjogfn5ncmV5LGdyZXk64oCdV2VsY29tZSwgYnV5ZXIuIFBsZWFzZSBlYXQh4oCdfn4KCgoKJydy ZeKAmWknJyBpcyB1c2VkIHRvIHNpZ25hbCB0aGF0IHlvdSBhcmUgcmVhZHkgdG8gYmUgc3Bva2Vu IHRvLiBJdCBjYW4gYmUgdXNlZCBhcyB0aGUgTG9qYmFuIGVxdWl2YWxlbnQgb2Yg4oCcV2hhdCBj YW4gSSBkbyBmb3IgeW91P+KAnSBvciBwZXJoYXBzIHJlcGxhY2Ug4oCcSGVsbG/igJ0sIHdoZW4g c3BlYWtpbmcgb24gYSBwaG9uZS4gJydyZeKAmWkgbmFpJycgY2FuIG1lYW4g4oCcQUZL4oCdIG9y IOKAnEJlIHRoZXJlIGlzIGEgc2Vjb25kLuKAnQoKCgpUcmFuc2xhdGU6IOKAnEhlbGxvLCB3aGF0 IGNhbiBJIGRvIGZvciB5b3UsIEludGVycHJldGVyL1RyYW5zbGF0ZXI/4oCdCgoKCkFuc3dlcjog fn5ncmV5LGdyZXk6Jydjb2kgcmXigJlpIGxhIGZhbnZhJyd+fgoKCgonJ3Rh4oCZYScnIGlzIHVz ZWQgd2hlbiBhdHRlbXB0aW5nIHRvIHBvbGl0ZWx5IGludGVycnVwdCBzb21lb25lIGVsc2UuIFdo YXQgd291bGQgYmUgZ29vZCByZXNwb25zZXMgdG8gdGhpcz8KCgoKVHJhbnNsYXRlOiAnJ3Rh4oCZ YSBybyBkbyBtaSBjb+KAmWEgY2xpdmEnJwoKX18nJ2NsaXZhJydfXyB4MSBsZWF2ZXMgeDIgdmlh IHJvdXRlIHgzCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcRXhjdXNlIG1lIGZvciBpbnRlcnJ1 cHRpbmcsIGV2ZXJ5b25lLiBJIGJlZ2luIHRvIGxlYXZlIG5vd+KAnSBOb3RpY2UgdGhhdCBubyBm YSdvcm1hJ28gb3IgJycuaScnIGlzIG5lZWRlZC5+fgoKCgonJ2tl4oCZbycnIGlzIHVzZWQgYSBs b3Qgd2hlbiBpbmV4cGVyaWVuY2VkIExvamJhbmlzdHMgc3BlYWsgdG9nZXRoZXIgdm9jYWxseS4g SXTigJlzIHF1aXRlIGEgaGFuZHkgd29yZAoKX18nJ3N1dHJhJydfXyB4MSBpcyBxdWljayBhdCBk b2luZyB4MgoKCgpUcmFuc2xhdGU6ICcnLnkga2XigJlvIHN1dHJhIHRhdmxhJycKCgoKQW5zd2Vy OiB+fmdyZXksZ3JleTrigJxVaCwgUGxlYXNlIHJlcGVhdCwgeW91IHF1aWNrIHNwZWFrZXIu4oCd fn4KCgoKQW5kIOKAnE9rYXkgb2theSwgSSBnb3QgaXQgYWxyZWFkeSEgSeKAmWxsIGRvIGl0IeKA nQoKCgpBbiBhbnN3ZXI6IH5+Z3JleSxncmV5Oicna2XigJlvIG5haSAudWkgbmFpIHZp4oCZbycn fn4KCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHktdHdvIChxdWFudGlmeWluZyBz dW10aSkKCk1vc3Qgb3RoZXIgbGVhcm5pbmcgbWF0ZXJpYWxzIHN1Y2ggYXMgVGhlIENvbXBsZXRl IExvamJhbiBMYW5ndWFnZSBhbmQgTG9qYmFuIGZvciBCZWdpbm5lcnMgd2VyZSB3cml0dGVuIGJl Zm9yZSB0aGUgb2ZmaWNpYWwgYWRvcHRhdGlvbiAieG9ybG8iLCBhIGNoYW5nZSBpbiB0aGUgcnVs ZXMgYWJvdXQgZ2FkcmkgZGVmaW5pdGlvbiBhbmQgZ2FkcmkgcXVhbnRpZmljYXRpb24uIFRoZSBv YnNvbGV0ZW5lc3Mgb2Ygc29tZSBvZiB0aGUgdGV4dCBpbiB0aGUgb2xkZXIgbGVhcm5pbmcgbWF0 ZXJpYWxzIHdhcyBhIG1ham9yIGNhdXNlIGZvciB0aGUgbW90aXZhdGlvbiB0byB3cml0ZSB0aGVz ZSBsZXNzb25zLiBVbmZvcnR1bmF0ZWx5IGZvciBtZSwgcXVhbnRpZmljYXRpb24gb2Ygc3VtdGkg Y2FuIGJlY29tZSBhIHZlcnkgY29tcGxleCB0b3BpYyB3aGVuIHRoZSBpbXBsaWNhdGlvbnMgb2Yg Y2VydGFpbiBydWxlcyBhcmUgZGlzY3Vzc2VkIGluIGRldGFpbC4gSW4gb3JkZXIgdG8gZnVsZmls bCB0aGUgZ29hbCBvZiB0aGlzIHRleHQgYmVpbmcgYWNjdXJhdGUgZW5vdWdoIHRvIHJlcHJlc2Vu dCB0aGUgb2ZmaWNpYWwgImdvbGQgc3RhbmRhcmQiIEJQRksgcnVsZXMsIHRoaXMgY2hhcHRlciB3 YXMgYW1vbmcgdGhlIGxhc3Qgb25lcyBmaW5pc2hlZCBhbmQgdGhlIG9uZXMgbW9zdCBmcmVxdWVu dHkgcmV3cml0dGVuLiBJIHN0cm9uZ2x5IGVuY291cmFnZSBhbnlvbmUgd2hvIGZpbmRzIG1pc3Rh a2VzIGluIHRoaXMgdGV4dCB0byBjb250YWN0IG1lIGluIG9yZGVyIGZvciB0aGVtIHRvIGJlIGNv cnJlY3RlZC4KCkhhdmluZyBzYWlkIHRoYXQgZGlzY2xhaW1lciwgbGV0J3MgZ2V0IHN0YXJ0ZWQ6 CgpUaGUgZmlyc3QgY29uY2VwdCB5b3Ugc2hvdWxkIGtub3cgYWJvdXQgaXMgImRpc3RyaWJ1dGl2 aXR5Ii4gSW4gbGVzc29uIGZvdXJ0ZWVuIGkgdXNlZCB0aGUgd29yZCAiaW5kaXZpZHVhbHMiIGFi b3V0IGEgZ3JvdXAgb2Ygb2JqZWN0cyBjb25zaWRlcmVkIGRpc3RyaWJ1dGl2ZWx5LiBBIGRpc3Ry aWJ1dGl2ZSBncm91cCAnJ2tvJ2EnJyBpcyBmb3IgYW55IHNlbGJyaSAnJ2Jyb2RhJycgYSBncm91 cCBzdWNoIHRoYXQsIGlmICcna28nYSBicm9kYScnIGlzIHRydWUsIGl0IG1lYW5zIHRoYXQgZXZl cnkgbWVtYmVyIG9mIHRoZSBncm91cCBhbHNvIGlzIGNoYXJhY3Rlcml6ZWQgYnkgJydicm9kYScn LiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byBub24tZGlzdHJpYnV0aXZpdHkgKHdoaWNoIG1h c3NlcyBoYXZlKSwgaW4gd2hpY2ggdGhlIGdyb3VwIGhhcyBvdGhlciBwcm9wZXJ0aWVzIHRoYW4g ZWFjaCBvZiB0aGUgaW5kaXZpZHVhbHMgZG8uIFRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIGRpc3Ry aWJ1dGl2aXR5IChpbmRpdmlkdWFsLWxpa2UpIGFuZCBub24tZGlzdHJpYnV0aXZpdHkgKG1hc3Mt bGlrZSkgaXMgb2YgcmVsZXZhbmNlIHdoZW4gcXVhbnRpZnlpbmcgc3VtdGkuCgpMZXQgdXMgZmly c3QgY29uc2lkZXIgaG93IG9uZSBjYW4gcXVhbnRpZnkgZGVjcmlwdGlvbiBzdW10aSwgd2hpY2gg YXJlIHN1bXRpIG9mIHRoZSBmb3JtIEdBRFJJIEJSSVZMQS4gVGhlIG51bWJlciBzdHJpbmcgd2hp Y2ggZG9lcyB0aGUgcXVhbnRpZmljYXRpb24gY2FuIGJlIHBsYWNlZCBiZWZvcmUgdGhlIGdhZHJp LCBpbiB3aGljaCBjYXNlIGl0IGlzIHJlZmVycmVkIHRvIGFzIGFuIF9fb3V0ZXIgcXVhbnRpZmll cl9fLCBhbmQgaXQgY2FuIGJlIHBsYWNlZCBiZXR3ZWVuIHRoZSBnYWRyaSBhbmQgdGhlIGJyaXZs YSwgaW4gd2hpY2ggY2FzZSBpdCdzIGFuIF9faW5uZXIgcXVhbnRpZmllcl9fLiBBbnkga2luZCBv ZiBudW1iZXIgc3RyaW5nIGNhbiBhY3QgYXMgYSBxdWFudGlmaWVyLgoKVGhlIHJ1bGVzIGZvciBo b3cgaW5uZXIgYW5kIG91dGVyIHF1YW50aWZpZXJzIGFmZmVjdHMgc3VtdGkgZGVwZW5kIG9uIHRo ZSBraW5kIG9mIGdhZHJpIHdoaWNoIGlzIHVzZWQ6CgoKCi0gLScnbG8nJyBhbmQgJydsZScnLSAt IEFuIGlubmVyIHF1YW50aWZpZXIgdGVsbHMgdXMgaG93IG1hbnkgb2JqZWN0cyBhcmUgYmVpbmcg c3Bva2VuIG9mIC0gaG93IG1hbnkgb2JqZWN0cyBhcmUgaW4gdGhlIGRpc2NvdXJzZSB0b3RhbC4g SWYgYW4gb3V0ZXIgcXVhbnRpZmllciBpcyBwcmVzZW50LCB0aGUgc3VtdGkgaXMgZGlzdHJpYnV0 ZWQgb3ZlciB0aGF0IGFtb3VudCBvZiBvYmplY3RzLiBBcyBzdGF0ZWQgZWFybGllciwgaWYgbm8g b3V0ZXIgcXVhbnRpZmllciBpcyBwcmVzZW50LCBpdCdzIHZhZ3VlIGhvdyBtYW55IG9iamVjdHMg dGhlIHNlbGJyaSBhcHBsaWVzIHRvICh0aG91Z2ggbm90IG5vbmUpLCBhbmQgd2hldGhlciBpdCBk b2VzIHNvIGRpc3RyaWJ1dGl2ZWx5IG9yIG5vbi1kaXN0cmlidXRpdmVseS4gRXhhbXBsZXMgYXJl IGFsd2F5cyBhIGdvb2QgaWRlYSwgc28gaGVyZSB0aGV5IGFyZToKCicnbXUgbG8gbXUgYmFrbmkg Y3Ugc2UgamlybmEnJyAtIFRoZSBpbm5lciBxdWFudGlmaWVyIG9mIGZpdmUgVGVsbHMgdXMgdGhh dCB3ZSBzcGVhayBhYm91dCBmaXZlIHBpZWNlcyBvZiBjYXR0bGUsIGFuZCB0aGUgb3V0ZXIgcXVh bnRpZmllciBvZiBmaXZlIHRlbGxzIHVzIHRoYXQgdGhlIHNlbGJyaSBpcyB0cnVlIGZvciBlYWNo IG9mIHRoZSBmaXZlLiBUaGVyZWZvcmUsIGl0IG1lYW5zICJBbGwgdGhlIGZpdmUgY293cyBoYWQg aG9ybnMiLiAKCl9fJydiYWtuaScnX18geDEgaXMgYSBjb3cvb3gvY2F0dGxlL2NhbGYgZXRjIG9m IGJyZWVkIHgyCgpfXycnamlybmEnJ19fIHgxIGlzIHRoZSBob3JuIG9mIHgyIChtZXRhcGhvcjog YW55IHBvaW50ZWQgZXh0cmVtaXR5KQoKCgpXaGF0IGRvZXMgdGhlIGZvbGxvd2luZyBicmlkaSBt ZWFuPwoKJydsbyBydSd1cmd1YnVwdSBiZSBsaSByZSBwaSB6ZSBtdSBjdSBqZGltYSBsbyBwYSBy ZSBzb3ZkYScnCgpfXycncnUndXJndWJ1cHUnJ19fIHgxIGlzIG1lYXN1cmVzIHRvIGJlIHgyIEJy aXRpc2ggcG91bmRzIChHQlApCgpfXycnamRpbWEnJ19fIHgxIGlzIHRoZSBwcmljZSBvZiB4MiB0 byBidXllciB4MyBzZXQgYnkgdmVuZG9yIHg0CgpfXycnc292ZGEnJ19fIHgxIGlzIGEgZ2FtZXRl IChlZ2cvc3Blcm0pIG9mIHgyCgpBbnN3ZXI6IH5+Z3JleSxncmV5OiAiVHdlbHZlIGVnZ3MgY29z dCAyLjc1IEJyaXRpc2ggcG91bmRzIiB3aGljaCwgYXMgdGhlIEVuZ2xpc2ggdHJhbnNsYXRpb24s IGNvdWxkIG1lYW4gYm90aCB0aGF0IHRoZXkgY29zdCAyLjc1IGVhY2ggKGRpc3RyaWJ1dGl2ZWx5 KSBvciB0aGF0IGFsbCB0d2VsdmUgdG9nZXRoZXIgY29zdCAyLjc1IChub24tZGlzdHJpYnV0aXZl bHkpfn4KCgoKJydzbyBsZSB0YSBwYSBwYSBjaSdlcmtlaSBjdSBjbGFtYXUgbWknJyAobm90aWNl IHRoYXQgdGhlICcndGEnJyBnb2VzIGJlZm9yZSB0aGUgaW5uZXIgcXVhbnRpZmllcikKCl9fJydj aSdlcmtlaScnX18geDEgcGxheXMgZ2FtZSB4MiBnb3ZlbmVyZCBieSBydWxlcyB4MyBpbnRlcnJl bGF0aW5nIGdhbWUgcGFydHMgeDQge3RoaXMgaXMgdXNlZCB0byB0cmFuc2xhdGUgInBsYXkiIGlu IHRoZSBzZW5zZSAicGxheSBhIGdhbWUiIHJhdGhlciB0aGFuLCBmb3IgaW5zdGFuY2UgInBsYXlp bmcgcHJldGVuZCIgb3IgInBsYXlpbmcgSG91c2UifQoKX18nJ2NsYW1hdScnX18geDEgaXMgdGFs bGVyL2xvbmdlciB0aGFuIHgyIGluIGRpcmVjdGlvbiB4MyBteSBtYXJpZ2luIHg0CgpBbnN3ZXI6 IH5+Z3JleSxncmV5OlRoZSBpbm5lciBzdGF0ZXMgdGhlcmUgYXJlIDExIHBsYXllcnMgaW4gdGhl IGRpc2NvdXJzZSwgYW5kIHRoZSBvdXRlciBzdGF0ZXMgdGhhdCB0aGUgc2VsYnJpIGFwcGxpZXMg dG8gbmluZSBvZiB0aGVtIGRpc3RyaWJ1dGl2ZWx5LiBUaHVzIGl0IG1lYW5zICJOaW5lIG9mIHRo ZSBlbGV2ZW4gcGxheWVycyBhcmUgdGFsbGVyIHRoYW4gbWUifn4KCgoKVGhlcmUgYXJlIGEgZmV3 IHBvaW50cyB0aGF0IG5lZWRzIHRvIGJlIHJhaXNlZCByZWdhcmRpbmcgcXVhbnRpZmljYXRpb24g b2YgJydsbycnLycnbGUnJzoKCkZpcnN0bHksICcnbG8nJyBpcyB1bmlxdWUgaW4gdGhhdCAie251 bWJlcn0ge3NlbGJyaX0iIGlzIGRlZmluZWQgYXMgIntudW1iZXJ9ICcnbG8nJyB7c2VsYnJpfSIu IFRoZXJlZm9yZSwgJydjaSBnZXJrdSBjdSBiYXRjaSByZSBuYW5tdScnIGlzIGRlZmluZWQgdG8g YmUgJydjaSBsbyBnZXJrdSBjdSBiYXRjaSByZSBsbyBuYW5tdScnLCB3aGljaCBjb25zaWRlcnMg Ym90aCB0aGUgZ3JvdXAgb2YgZG9ncyBhbmQgdGhlIGdyb3VwIG9mIG1lbiBkaXN0cmlidXRpdmVs eS4gVGhlcmVmb3JlLCBlYWNoIG9mIHRoZSB0aHJlZSBkb2dzIGJpdCBlYWNoIG9mIHRoZSB0d28g bWVuLCB3aXRoIHNpeCBiaXRpbmcgZXZlbnRzIGluIHRvdGFsLgoKX18nJ2JhdGNpJydfXyB4MSBi aXRlcy9waW5jaGVzIHgyIGF0IGxvY3VzIHgzIHVzaW5nIHg0IGFzIHBpbmNoaW5nIHRvb2wuCgpT ZWNvbmRseTogV2hhdCBpZiB0aGVyZSBpcyBubyBvdXRlciBxdWFudGlmaWVyPyBEb2VzIHRoaXMg bWVhbiB0aGF0IGl0IF9faXNfXyB0aGVyZSwgYnV0IGl0J3MgZWxpZGVkPyBOb3BlLiBJZiB0aGVy ZSBpcyBhbnkga2luZCBvZiBvdXRlciBxdWFudGlmaWVyLCBlbGlkZWQgb3Igbm90LCBpdCB3b3Vs ZCBmb3JjZSB0aGUgc3VtdGkgdG8gYmUgZGlzdHJpYnV0aXZlLCB3aGljaCB3b3VsZCBtZWFuIHRo YXQgbmVpdGhlciAnJ2xvJycgbm9yICcnbGUnJyBjb3VsZCBiZSB1c2VkIHRvIGRlc2NyaWJlIG1h c3Nlcy4gVGhlcmVmb3JlLCBpZiBubyBvdXRlciBxdWFudGlmaWVyIGlzIHByZXNlbnQsIGl0J3Mg bm90IG9ubHkgZWxpZGVkIC0gaXQncyBzaW1wbHkgbm90IHRoZXJlLiBTdW10aSB3aXRob3V0IGFu IG91dGVyIHF1YW50aWZpZXIgY2FuIGJlIHJlZmVycmVkIHRvIGFzICJjb25zdGFudHMiLCBldmVu IHRob3VnaCBJIHdvbid0LgoKVGhpcmRseSwgaXQgbWFrZXMgbm8gc2Vuc2UgdG8gaGF2ZSBhbiBv dXRlciBxdWFudGlmaWVyIHdoaWNoIGlzIGxhcmdlciB0aGFuIHRoZSBpbm5lciBvbmUuIEl0IG1l YW5zIHRoYXQgdGhlIHNlbGJyaSBob2xkcyB0cnVlIGZvciBtb3JlIHN1bXRpIHRoYW4gYXJlIHBy ZXNlbnQgaW4gdGhlIGRpc2NvdXJzZSAtIGJ1dCBzaW5jZSB0aGV5IGFwcGVhciBpbiBhIGJyaWRp LCB0aGV5IF9fYXJlX18gcGFydCBvZiB0aGUgZGlzY291cnNlLiBJdCdzIGdyYW1tYXRpY2FsIHRv IGRvIGl0LCB0aG91Z2guCgpMYXN0bHksIHBsYWNpbmcgYSAnJ2xvJycgb3IgYSAnJ2xlJycgaW4g ZnJvbnQgb2YgYSBzdW10aSBpcyBncmFtbWF0aWNhbCwgaWYgdGhlcmUgaXMgYW4gaW5uZXIgcXVh bnRpZmllciBwcmVzZW50LiAiJydsbycnLycnbGUnJyB7bnVtYmVyfSB7c3VtdGl9IiBpcyBkZWZp bmVkIGFzICInJ2xvJycvJydsZScnIHtudW1iZXJ9ICcnbWUnJyB7c3VtdGl9Ii4KClNvIHdoYXQg d291bGQgdGhpcyBtZWFuPyAnJ21pIG5lbGNpIGxvaSBtaSBicmlqdSBrYW5zYSAuaSBrdSdpIGNp IGxvIHBhIG11IGppJ2kgcmkgY3UgbGF6bmknJwoKX18nJ2JyaWp1JycnX18geDEgaXMgYW4gb2Zm aWNlIGZvciB3b3JrZXIgeDIgYXQgbG9jYXRpb24geDMKCl9fJydrYW5zYScnX18geDEgYWNjb21w YW5pZXMgeDIgaW4gYWN0aW9uL3N0YXRlL2VudGVycHJpc2UgeDMKCl9fJydsYXpuaScnX18geDEg aXMgbGF6eSwgYXZvaWRpbmcgd29yayBjb25jZXJuaW5nIHgyCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OiJJIGxpa2UgbXkgY28td29ya2VycywgYnV0IHRocmVlIG91dCBvZiBhYm91dCB0d2VudHkgZml2 ZSBvZiB0aGVtIGFyZSBsYXp5In5+CgoKCi0gLScnbGEnJy0gLSBBbiBpbm5lciBxdWFudGlmaWVy IGlzIGdyYW1tYXRpY2FsIGlmIHRoZSBuYW1lIGlzIGEgc2VsYnJpIC0gaW4gdGhpcyBjYXNlLCBp dCdzIGNvbnNpZGVyZWQgcGFydCBvZiB0aGUgbmFtZS4gQW4gb3V0ZXIgcXVhbnRpZmllciBpcyB1 c2VkIHRvIHF1YW50aWZ5IGRpc3RyaWJ1dGl2ZWx5IG92ZXIgc3VjaCBpbmRpdmlkdWFscyAobXVj aCBsaWtlICcnbG8nJy8nJ2xlJycpIEl0J3MgZ3JhbW1hdGljYWwgd2hlbiBwbGFjZWQgaW4gZnJv bnQgb2Yge251bWJlcn0ge3N1bXRpfSwgaW4gd2hpY2ggY2FzZSwgdGhlIGJvdGggdGhlIG51bWJl ciBhbmQgdGhlIHN1bXRpIGlzIGNvbnNpZGVyZWQgdGhlIG5hbWUuCgoKClRyYW5zbGF0ZSB0aGlz OiAnJ3JlIGxhIGNpIGJhcmd1IGN1IGppYm5pIGxlIG1pIHpkYW5pJycKCkFuc3dlcjogfn5ncmV5 LGdyZXk6IFR3byAiVGhlIFRocmVlIEFyY2hlcyIgYXJlIGxvY2F0ZWQgY2xvc2UgdG8gbXkgaG91 c2UiIChQZXJoYXBzIFRoZSBUaHJlZSBBcmNoZXMgYXJlIGEga2luZCBvZiByZXN0YXVyYW50Pyl+ fgoKCgotIC0nJ2xvaScnIGFuZCAnJ2xlaScnLSAtIEFuIGlubmVyIHF1YW50aWZpZXIgdGVsbHMg dXMgaG93IG1hbnkgbWVtYmVycyB0aGVyZSBhcmUgaW4gdGhlIG1hc3MvbWFzc2VzIGluIHF1ZXN0 aW9uLiBBbiBvdXRlciBxdWFudGlmaWVyIHF1YW50aWZpZXMgZGlzdHJpYnV0aXZlbHkgeyF9IG92 ZXIgdGhlc2UgbWFzc2VzCgpOb3RpY2UgaGVyZSB0aGF0IHdoaWxlIG1hc3NlcyBjb25zaXN0IG9m IGEgbnVtYmVyIG9mIG9iamVjdHMgY29uc2lkZXJlZCBub24tZGlzdHJpYnV0aXZlbHksIGFuIG91 dGVyIHF1YW50aWZpZXIgYWx3YXlzIHRyZWF0cyBlYWNoIG9mIHRoZXNlIG1hc3NlcyBhcyBhbiBp bmRpdmlkdWFsLgoKV2hlbiBwbGFjZWQgYmVmb3JlIGEgbnVtYmVyIHN0cmluZywgdGhlbiBhIHN1 bXRpLCAnJ2xvaScnLycnbGVpJycgaXMgZGVmaW5lZCBhcyAiJydsbyBndW5tYSBiZSBsbycnLycn bGUnJyB7bnVtYmVyfSB7c3VtdGl9IiAtICJUaGUgbWFzcyBjb25zaXN0aW5nIG9mIHRoZSB7bnVt YmVyfSBvZiB7c3VtdGl9Ii4KCgoKQXR0ZW1wdCB0byB0cmFuc2xhdGUgdGhpczogJydyZSBkZWkg Z3VubWEgcmUgbG9pIHplIHZhbHNpIC5pIGNhJ2UgcGEgZGVpIGphaSBnYXUgamV0bnUnJwoKX18n J2d1bm1hJydfXyB4MSBpcyBhIG1hc3Mgb2YgdGhlIGluZGl2aWR1YWxzIHgyCgpfXycndmFsc2kn J19fIHgxIGlzIGEgd29yZCwgbWVhbmluZyB4MiBpbiBsYW5ndWFnZSB4MwoKX18nJ2NhJ2UnJ19f IEF0dGl0dWRpbmFsOiBFdmlkZW50aWFsOiBJIGRlZmluZQoKX18nJ2pldG51JydfXyB4MSBpcyB0 cnVlIGFjY29yZGluZyB0byBtZXRhcGh5c2ljcy9lcGlzdGVtb2xvZ3kgeDIKCkFuc3dlcjogfn5n cmV5LGdyZXk6ICJUaGVzZSB0d28gdXR0ZXJhbmNlcyBhcmUgYSBtYXNzLCBjb25zaXN0aW5nIG9m IHR3byBpbmRpdmlkdWFsIG1hc3NlcyBlYWNoIG9mIHNldmVuIHdvcmRzLiBJIGRlZmluZTogVGhp cyBvbmUgdXR0ZXJhbmNlIGNhdXNlcyB7aXR9IHRvIGJlIHRydWUuIn5+CgoKCi0gLScnbGFpJyct IC0gTXVjaCBsaWtlICcnbGEnJywgYW4gaW5uZXIgcXVhbnRpZmllciAod2hlbiBuYW1lIGlzIGEg c2VsYnJpKSBpcyBwYXJ0IG9mIHRoZSBuYW1lLiBBbiBvdXRlciBvbmUgcXVhbnRpZmllcyBkaXN0 cmlidXRpdmVseS4gQmVmb3JlIGEgbnVtYmVyK3N1bXRpLCBib3RoIHRoZSBzdW10aSBhbmQgdGhl IG51bWJlciBtYWtlIHVwIHRoZSBuYW1lLgoKV2hlbiBhIGZyYWN0aW9uIGlzIHVzZWQgYXMgYW4g b3V0ZXIgcXVhbnRpZmllciB0byBxdWFudGlmeSAnJ2xvaScnLCAnJ2xlaScnIG9yICcnbGFpJycs IG9uZSBzcGVha3MgYWJvdXQgb25seSBwYXJ0IG9mIHRoZSBtYXNzIChmb3IgaW5zdGFuY2UsICJo YWxmIG9mIHRoZSBKb2huc29ucyIgLSAnJ3BpIG11IGxhaSAuZGphbnN5bi4nJykuCgoKCi0gLScn bG8naScnIGFuZCAnJ2xlJ2knJy0gLSBBbiBpbm5lciBxdWFudGlmaWVyIGRlc2NyaWJlcyB0aGUg YW1vdW50IG9mIG1lbWJlcnMgb2YgdGhlIHNldC4gQW4gb3V0ZXIgcXVhbnRpZmllcyBkaXN0cmli dXRpdmVseSBvdmVyIHNldmVyYWwgb2Ygc3VjaCBzZXRzLiBXaGVuIHBsYWNlZCBiZWZvcmUgYSBu dW1iZXIgYW5kIGEgc3VtdGksIGl0J3MgZGVmaW5lZCBhcyAiJydsbyBzZWxjbWkgYmUgJydsbycn LycnbGUnJyB7bnVtYmVyfSB7c3VtdGl9IiAtICJUaGUgc2V0IG9mIHtudW1iZXJ9IHtzdW10aX0i LgoKCgpUcmFuc2xhdGUgJydsbydpIHJvIHNlIGNpbmtpIGN1IGJyYW1hdSBsYSdhIHBhIG5vIG5v IGxvJ2kgcm8gc2UgYm9neWthbWp1IGp1dHNpJycKCl9fJydjaW5raScnX18geDEgaXMgYW4gaW5z ZWN0IG9mIHNwZWNpZXMgeDIKCl9fJydsYSdhJydfXyBBdHRpdHVkaW5hbDogRGlzY3Vyc2l2ZTog UHJvYmFibHkKCl9fJydicmFtYXUnJ19fIHgxIGlzIGJpZ2dlciB0aGFuIHgyIGluIGRpbWVuc2lv biB4MyBieSBtYXJpZ2luIHg0CgpfXycnYm9neWthbWp1JydfXyB4MSBpcyB0aGUgc3BpbmUgb2Yg eDIKCl9fJydqdXRzaScnX18geDEgaXMgdGhlIHNwZWNpZXMgb2YgZ2VudXMgeDIsIGZhbWlseSB4 MyAuLi4gKG9wZW4gZW5kZWQgY2xhc3NpZmljYXRpb24pCgpBbnN3ZXI6IH5+Z3JleSxncmV5OiAi VGhlIHNldCBvZiBhbGwgdGhlIHNwZWNpZXMgb2YgaW5zZWN0cyBpcyBwcm9iYWJseSBiaWdnZXIg dGhhbiBvbmUgaHVuZHJlZCBzZXRzIG9mIGFsbCBzcGVjaWVzIG9mIHZlcnRlYnJhdGVzIn5+CgoK Ci0gLScnbGEnaScnLSAtIEFzIHdpdGggJydsYWknJwoKTGlrZSB3aXRoIHRoZSBtYXNzIGdhZHJp LCBhbiBvdXRlciBxdWFudGlmaWVyIGJlZm9yZSBhIHNldCBnYWRyaSBlbmFibGVzIG9uZSB0byBz cGVhayBhYm91dCBhIGZyYWN0aW9uIG9mIGEgc2V0LiBJbiBmcm9udCBvZiBhIG51bWJlciBhbmQg YSBzdW10aSwgaXQncyBkZWZpbmVkIGFzICInJ2xvIHNlbGNtaSBiZSBsYScnIHtudW1iZXJ9IHtz dW10aX0iIC0gIlRoZSBzZXQgY29uc2lzdGluZyBvZiBUaGUge051bWJlcn0ge1N1bXRpfSIgKGNv bnNpZGVyZWQgYSBuYW1lKQoKCgotIC0nJ2xvJ2UnJyBhbmQgJydsZSdlJyctIC0gQXJlIGZvciBz b21lIHJlYXNvbiBub3QgaW5jbHVkZWQgaW4gdGhlIGN1cnJlbnRseSBhY2NlcHRlZCBnYWRyaSBw cm9wb3NhbC4gSWYgb25lIHdlcmUgdG8gZXh0ZW5kIHRoZSBydWxlcyBvZiBhbm90aGVyIGdhZHJp LCAnJ2xvJycvJydsZScnIHdvdWxkIHByb2JhYmx5IGJlIHRoZSBiZXN0IGNob2ljZSAoc2luY2Ug Ym90aCBvcGVyYXRlcyB3aXRoIGluZGl2aWR1YWxzIHJhdGhlciB0aGFuIGdyb3VwcyksIGFuZCBz byBvbmUgd291bGQgZXhwZWN0IHRoZSBvdXRlciBxdWFudGlmaWVyIHRvIGZvcmNlIGRpc3RyaWJ1 dGl2aXR5IG92ZXIgdGhlIGFtb3VudCBvZiB0eXBpY2FsL3N0ZXJlb3R5cGljYWwgdGhpbmdzIGdp dmVuIGJ5IHRoZSBpbm5lciBxdWFudGlmaWVyLgoKCgpXaGVuIHF1YW50aWZ5aW5nIHN1bWthJ2kg cmVwcmVzZW50aW5nIHNldmVyYWwgb2JqZWN0cywgaXQgaXMgdXNlZnVsIHRvIHJlbWVtYmVyIHRo YXQgdGhleSBhcmUgdXN1YWxseSBtYXNzZXMuIEJ5IGRlZmluaXRpb24sICJ7bnVtYmVyfSB7c3Vt dGl9IiBpcyBkZWZpbmVkIGFzICJ7bnVtYmVyfSAnJ2RhIHBvaSBrZSdhIG1lJycge3N1bXRpfSIu IFlvdSB3aWxsIG5vdCBiZSBmYW1pbGlhciB3aXRoICcnZGEnJyB1bnRpbCBhIGZldyBsZXNzb25z IGxhdGVyLCBzbyB0YWtlIGl0IG9uIGZhaXRoIHRoYXQgaXMgbWVhbnMgInNvbWV0aGluZyIgaW4g dGhpcyBjb250ZXh0LiBUaGVyZWZvcmUsICcnY2kgbWknJyBtZWFucyAiVHdvIG9mIHRob3NlIHdo byBiZWxvbmcgdG8gInVzIiIuIFdoZW4gcXVhbnRpZnlpbmcgc3VjaCBtYXNzZXMsIGl0IGNhbiBz YWZlbHkgYmUgYXNzdW1lZCB0aGF0IHRoZSByZWxhdGlvbiBpbXBsaWVkIGJ5ICcnbWUnJyBpcyBt ZW1iZXJzaGlwIG9mIHRoZSBtYXNzLCBhbmQgdGhlcmVmb3JlICcnY2kgbWknJyBpcyAiVGhyZWUg b2YgdXMiLgoKCgpTb21lIGltcG9ydGFudCB1c2VzIG9mIHF1YW50aWZpY2F0aW9uIHJlcXVpcmVz IHlvdSB0byBiZSBxdWFudGlmeSBzZWxicmkgb3Igb2JqZWN0cyB3aG9zZSBpZGVudGl0eSBpcyB1 bmtub3duLiBUaGlzIGlzIGRvbmUgYnkgImxvZ2ljYWxseSBxdWFudGlmaWVkIHZhcmlhYmxlcyIu IFRoZXNlLCBhcyB3ZWxsIGFzIGhvdyB0byBxdWFudGlmeSB0aGVtIHdpbGwgYmUgY292ZXJlZCBp biBsZXNzb25zIHR3ZW50eS1zZXZlbi4KCgoKTGFzdGx5LCBob3cgY2FuIHlvdSBxdWFudGlmeSB1 bmNvdW50YWJsZSBzdWJzdGFuY2VzIGxpa2Ugc3VnYXIgb3Igd2F0ZXI/IE9uZSBzb2x1dGlvbiBp cyB0byBxdWFudGlmeSBpdCB1c2luZyBpbmV4YWN0IG51bWJlcnMuIFRoaXMgdXNlIGlzIHZhZ3Vl LCBub3Qgb25seSBiZWNhdXNlIHRoZSB2YWx1ZSBvZiB0aGUgbnVtYmVyIGlzIHZhZ3VlLCBidXQg YWxzbyBiZWNhdXNlIGl0J3Mgbm90IHNwZWNpZmllZCBvbiB3aGF0IHNjYWxlIHlvdSdyZSBjb3Vu dGluZzogVGhlIHN1Z2FyIGNvdWxkIGJlIGNvbnNpZGVyZWQgYSBncm91cCBvZiBtYW55IGNyeXN0 YWxzLCBjb3VudGVkIG9uZSBhdCBhIHRpbWUsIGFuZCB0aGUgd2F0ZXIgY291bGQgYmUgcXVhbnRp ZmllZCBieSB0aGUgYW1vdW50cyBvZiByYWluZHJvcHMgaXQgdG9vayB0byBtYWtlIHRoZSBib2R5 IG9mIHdhdGVyIGluIHF1ZXN0aW9uLiBXaGlsZSB0aGlzIHdheSBvZiBjb3VudGluZyBpcyBsZWdp dGltYXRlLCBpdCdzIG5vdCB2ZXJ5IGV4YWN0IGFuZCBjYW4gZWFzaWx5IGNvbmZ1c2Ugb3IgbWlz bGVhZC4KCkEgd2F5IHRvIGJlIGV4cGxpY2l0IGFib3V0IG5vbi1jb3VudGFiaWxpdHkgaXMgdG8g dXNlIHRoZSBudWxsIG9wZXJhbmQgJyd0dSdvJycgYXMgYW4gaW5uZXIgcXVhbnRpZmllci4KCl9f Jyd0dSdvJydfXyBOdWxsIG9wZXJhbmQgKCDDmCApLiBVc2VkIGluIHVuYXJ5IG1la3NvLgoKVGhp cyBzb2x1dGlvbiBpcyBlbGVnYW50IGFuZCBpbnR1aXRpdmUsIGFuZCBhbHNvIGdpdmVzIG1lIGFu IGV4Y3VzZSB0byBxdW90ZSB0aGlzIGhvcnJpZnlpbmcsIHlldCBjb21pY2FsIGV4YW1wbGUgZnJv bSB0aGUgb3JpZ2luYWwgJyd4b3JsbycnLXByb3Bvc2FsOgoKJydsZSBuYW5tdSBjdSBzZSBzbnV0 aSAuaSBqYSdlIGJvIGxvIHR1J28gZ2Vya3UgY3Uga3VzcGUgbGUga2xhamknJwoKX18nJ3NudXRp JydfXyB4MSBpcyBhbiBhY2NpZGVudCBvbiB0aGUgcGFydCBvZiB4MgoKX18nJ2phJ2UnJ19fIHN1 bXRjaXRhOiBCQUk6IChmcm9tICcnamFsZ2UnJyk6IEJyaWRpIHJlc3VsdHMgaW4ge3N1bXRpfSAK Cl9fJydrdXNwZScnX18geDEgc3BhbnMvZXh0ZW5kcyBvdmVyIHgyCgpfXycna2xhamknJ19fIHgx IGlzIGEgcm9hZC9hdmVudWUvc3RyZWV0IGF0IHgyIGFjY2Vzc2luZyB4MwoKCgpXaGF0IGRvZXMg aXQgbWVhbj8KCkFuc3dlcjogfn5ncmV5LGdyZXk6ICJUaGUgbWFuIGhhZCBhbiBhY2NpZGVudCBh bmQgc28gdGhlcmUgd2FzIGRvZyBhbGwgb3ZlciB0aGUgcm9hZCJ+fgoKCgpBIHNlY29uZCBtZXRo b2Qgb2YgcXVhbnRpZnlpbmcgc3Vic3RhbmNlcyBpcyB0byB1c2UgdGhlIHRlbnNlcyAnJ3ZlJ2kn JywgJyd2ZSdhJycgYW5kICcndmUndScnIGFzIG1lbnRpb25lZCBpbiBsZXNzb24gdGVuOgoKJyd0 aSB2ZSdpIGRqYWN1JycgLSBUaGlzIGlzIGEgc21hbGwgYW1vdW50IG9mIHdhdGVyCgpfXycnZGph Y3UnJ19fIHgxIGlzIGFuIGV4cGFuc2Ugb2Ygd2F0ZXIvaXMgbWFkZSBvZiB3YXRlci9jb250YWlu cyB3YXRlcgoKCgpUaGlyZGx5LCBvZiBjb3Vyc2UsIHlvdSBjb3VsZCB1c2UgYSBicml2bGEgdG8g Z2l2ZSBhbiBleGFjdCBtZWFzdXJlbWVudDoKCicnbGUgdGEgZGphY3UgY3Uga2knb2dyYSBiZSBs aSByZSBwaSBraSdvIGtpJ28nJyAtICJUaGF0IHdhdGVyIGhhcyBhIG1hc3Mgb2YgMi4wMDAgMDAw IGtpbG9ncmFtcyIKCl9fJydraSdvZ3JhJydfXyB4MSBtZWFzdXJlcyBpbiBtYXNzIHgyIGtpbG9n cmFtcyBieSBzdGFuZGFyZCB4MwoKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eS10 aHJlZSAobmVnYXRpb24pCgpTb21ldGltZXMsIGp1c3Qgc2F5aW5nIHdoYXTigJlzIHRoZSB0cnV0 aCBpcyBub3QgZW5vdWdoLiBPZnRlbiwgd2Ugd2FudCB0byBzcGVjaWZ5IHdoYXTigJlzIG5vdCB0 aGUgdHJ1dGgsIGFuZCB3ZSBkbyB0aGlzIGJ5IHVzaW5nIG5lZ2F0aW9uLgoKTmVnYXRpb24gaW4g RW5nbGlzaCBtb3N0bHkgaW52b2x2ZXMg4oCcbm904oCdLCBhbmQgaXMgY29tcGxldGVseSBhcmJp dHJhcnkgYW5kIGFtYmlndW91cy4gV2UsIGFzIExvamJhbmlzdHMsIGNhbuKAmXQgaGF2ZSB0aGF0 LCBvZiBjb3Vyc2UsIHNvIExvamJhbiBjb250YWlucyBhbiBlbGVnYW50IGFuZCB1bmFtYmlnaW91 cyBzeXN0ZW0gZm9yIG5lZ2F0aW5nLgoKCgpUaGUgZmlyc3QgeW91IG5lZWQgdG8ga25vdyBhYm91 dCBpcyBicmlkaSBuZWdhdGlvbiwgc28gY2FsbGVkIGJlY2F1c2UgaXQgbmVnYXRlcyB0aGUgYnJp ZGkgaXTigJlzIGluLCBzYXlpbmcgaXTigJlzIG5vdCB0cnVlLiBUaGUgd2F5IHRvIG5lZ2F0ZSBh IGJyaWRpIGlzIHRvIHBsYWNlICcnbmEnJyBlaXRoZXIganVzdCBiZWZvcmUgdGhlIHNlbGJyaSAo YWZ0ZXIgYW55ICcnY3UnJyksIG9yIGZpcnN0IGluIHRoZSBzZW50ZW5jZSB3aXRoIGEgJydrdScn IGFmdGVyIGl0LgoKX18nJ3NwZW5pJydfXyB4MSBpcyBtYXJyaWVkIHRvIHgyIHVuZGVyIGNvbnZl bnRpb24geDMKClRodXM6ICcnbGUgbWkgc3BlbmkgY3UgbmEgbmlubXUnJyBzdGF0ZXMgdGhhdCDi gJxNeSBzcG91c2UgaXMgbm90IGEgd29tYW7igJ0uIEl0IHN0YXRlcyBub3RoaW5nIGFib3V0IHdo YXQgbXkgd2lmZSBpcywgb3IgaWYgSSBldmVuIGhhdmUgYSB3aWZlLiBJdCBvbmx5IHN0YXRlcyB0 aGF0IEkgZG8gbm90IGhhdmUgYSB3aWZlIHdobyBpcyBhbHNvIGEgd29tYW4uIFRoaXMgaGFzIGFu IGltcG9ydGFudCBpbXBsaWNhdGlvbjogSWYgdGhlIG5lZ2F0aW9uIG9mIGEgYnJpZGkgaXMgZmFs c2UsIHRoZSBicmlkaSBtdXN0IGJlIHRydWU6ICcnbmEga3UgbGUgbWkgc3BlbmkgY3UgbmEgbmlu bXUnJyBtdXN0IG1lYW4gdGhhdCBJIGhhdmUgYm90aCBhIHNwb3VzZSwgYW5kIHRoYXQgc2hlIGlz IGEgc2hlLgoKSXQgaXMgcG9zc2libGUgdG8gdXNlIGJyaWRpIG5lZ2F0aW9ucyBpbiBhbGwgYnJp ZGksIGV2ZW4gdGhlIGltcGxpY2l0IGJyaWRpIG9mIGRlc2NyaXB0aXZlIHN1bXRpLiAnJ2xvIG5h IHByZW51JycgY2FuIHJlZmVyIHRvIGFueXRoaW5nIG5vbi1odW1hbiwgd2hldGhlciBpdCBiZSBh IHNwaGlueCwgYSBiYXNlYmFsbCBvciB0aGUgcHJvcGVydHkgb2YgYXBwcm9wcmlhdGVuZXNzLgoK CgpfXycnYmF1JydfXyBzdW10Y2l0YSwgZnJvbSBiYW5ndTogdXNpbmcgdGhlIGxhbmd1YWdlIG9m IHtzdW10aX0KCl9fJydzZSBqYeKAmWUnJ19fIHN1bXRjaXRhLCBmcm9tIHNlIGphbGdlOiBiZWNh dXNlIG9mIHtzdW10aX0KCgoKT2Z0ZW4gd2hlbiB1c2luZyAnJ25hJycsIGl04oCZcyBhIHByb2Js ZW0gdGhhdCBuZWdhdGVzIHRoZSBlbnRpcmUgYnJpZGkuIElmIEkgc2F5ICcnbWkgbmEgc3V0cmEg dGF2bGEgYmF1IGxlIGdsaWJhdSBzZSBqYeKAmWUgbGUgbnUgbWkgZG90Y28nJywgSSBlbmQgdXAg bmVnYXRpbmcgdG9vIG11Y2gsIGFuZCBpdCBpcyBub3QgY2xlYXIgdGhhdCBJIHdhbnRlZCB0byBv bmx5IG5lZ2F0ZSB0aGF0IEkgc3BlYWsgZmFzdC4gVGhlIHNlbnRlbmNlIGNvdWxkIHN1Z2dlc3Qg dGhhdCBJIGluIGZhY3Qgc3BlYWsgZmFzdCBiZWNhdXNlIG9mIHNvbWUgb3RoZXIgcmVhc29uLCBv ciB0aGF0IEkgc3BlYWsgZmFzdCBpbiBGcmVuY2ggYmVjYXVzZSBJ4oCZbSBHZXJtYW4uIFRvIGV4 cHJlc3MgdGhlIHNlbnRlbmNlIGNvcnJlY3RseSwgSSBuZWVkIHRvIG9ubHkgbmVnYXRlIHRoYXQg SSBzcGVhayBmYXN0LCBhbmQgbm90IHRoZSBvdGhlciB0aGluZ3MuCgpUbyBvbmx5IG5lZ2F0ZSBw YXJ0IG9mIGEgYnJpZGksICcnbmEga3UnJyBjYW4gYmUgbW92ZWQgYXJvdW5kIHRoZSBicmlkaSBh bmQgcGxhY2VkIGFueXdoZXJlIGEgc3VtdGkgY2FuIGdvLiBJdCB0aGVuIG5lZ2F0ZXMgYW55IHN1 bXRpLCBzZWxicmkgYW5kIHN1bXRjaXRhIHBsYWNlZCBhZnRlciBpdC4KCgoKTW92aW5nICcnbmEg a3UnJyBmcm9tIHRoZSBsZWZ0IGVuZCBvZiB0aGUgYnJpZGkgYW5kIHJpZ2h0d2FyZHMgZWZmZWN0 cyBhbnkgcXVhbnRpZmllcnMgaW4gYSBjZXJ0YWluIHdheSwgYXMgY2FuIGJlIHNlZW4gYnkgdGhp cyBleGFtcGxlOgoKCgonJ25hIGt1IHJvIHJlbW5hIGN1IHZlcmJhJycg4oCcSXTigJlzIG5vdCB0 cnVlIHRoYXQ6IEFsbCBodW1hbnMgYXJlIGNoaWxkcmVu4oCdCgonJ3N14oCZbyByZW1uYSBuYSBr dSBjdSB2ZXJiYScnIOKAnEZvciBhdCBsZWFzdCBvbmUgaHVtYW4gaXTigJlzIG5vdCB0cnVlIHRo YXQ6IEl04oCZcyBhIGNoaWxk4oCdLiBTZWUgdGhhdCB0aGUgJyduYSBrdScnIGlzIHBsYWNlZCBi ZWZvcmUgJydjdScnLCBzaW5jZSBhIHN1bXRpIGNhbiBnbyBvbmx5IHRoZXJlLiBIYWQgSSBvbmx5 IHVzZWQgJyduYScnLCBpdCB3b3VsZCBoYXZlIHRvIGdvIGFmdGVyICcnY3UnJy4KCgoKVGhlIHF1 YW50aWZpZXIgaXMgaW52ZXJ0ZWQsICcncm8nJyBpcyB0dXJuZWQgaW50byAnJ3N14oCZbycnLiBU aGlzIGlzLCBvZiBjb3Vyc2UsIG9ubHkgaWYgdGhlIG1lYW5pbmcgb2YgdGhlIGJyaWRpIGhhcyB0 byBiZSBwcmVzZXJ2ZWQuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIHRoZSAnJ25hIGt1JycgaXMgcGxh Y2VkIGF0IHRoZSBlbmQgb2YgdGhlIGJyaWRpLCBvbmx5IHRoZSBzZWxicmkgaXMgbmVnYXRlZCBi dXQgYWxsIHRoZSBzdW10aSBhbmQgc3VtdGNpdGEgYXJlIHByZXNlcnZlZCwgYXMgY2FuIGJlIHNl ZW4gYnkgdGhlc2UgdGhyZWUgaWRlbnRpY2FsIGJyaWRpOgoKX18nJ2NrdWxlJydfXyB4MSBpcyBh IHNjaG9vbCBhdCBsb2NhdGlvbiB4MiB0ZWFjaGluZyB4MyB0byBzdHVkZW50cyB4NCBhbmQgb3Bl cmF0ZWQgYnkgeDUKCgoKJyduYSBrdSBybyB2ZXJiYSBjdSB2ZSBja3VsZSBmbyBzdeKAmW8gY2t1 bGUnJyDigJMg4oCcSXTigJlzIG5vdCB0cnVlIHRoYXQgYWxsIGNoaWxkcmVuIGFyZSBzdHVkZW50 cyBpbiBhIHNjaG9vbC7igJ0KCicnc3XigJlvIHZlcmJhIGN1IHZlIGNrdWxlIG5hIGt1IGZvIHN1 4oCZbyBja3VsZScnIOKAkyDigJxTb21lIGNoaWxkcmVuIGFyZSBzdHVkZW50cyBpbiBub3QgYSBz aW5nbGUgc2Nob29sLuKAnQoKJydzdeKAmW8gdmVyYmEgY3UgdmUgY2t1bGUgZm8gcm8gY2t1bGUg bmEga3UnJyDigJMg4oCcU29tZSBjaGlsZHJlbiBhcmUgZm9yIGFsbCBzY2hvb2xzIG5vdCBzdHVk ZW50cyBpbiB0aGVtLuKAnQoKCgpUaGUgb3Bwb3NpdGUgb2YgJyduYScnIGlzICcnamEnYScnLiBU aGlzIGlzIGJhcmVseSBldmVyIHVzZWQsIHNpbmNlIGl0IGlzIGRlZmF1bHQgaW4gbW9zdCBicmlk aS4gT25lIGV4Y2VwdGlvbiBpcyByZXBlYXRlZCBicmlkaSAobmV4dCBsZXNzb24pLiBTb21ldGlt ZXMgaXQncyB1c2VkIHRvIHB1dCBtb3JlIHdlaWdodCBvbiB0aGUgdHJ1dGggb2YgdGhlIGJyaWRp LCBhcyBpbiAnJ2xhIC5iYWIuIGphJ2EgbWVsYmknJyA9ICJCb2IgaXMgaW5kZWVkIGJlYXV0aWZ1 bCIuCgoKCldoaWxlIHRoZSBtZWNoYW5pc20gb2YgJyduYSBrdScnIHJlc2VtYmxlcyBuYXR1cmFs IGxhbmd1YWdlIG5lZ2F0aW9uLCBpdCBjYW4gYmUgZGlmZmljdWx0IHRvIGtlZXAgdHJhY2sgb2Yg ZXhhY3RseSB3aGF0IGlzIG5lZ2F0ZWQgYW5kIGhvdyB0aGF0IGFmZmVjdHMgdGhlIGJyaWRpLiBG b3IgdGhhdCByZWFzb24sIHRoZSBjb25zdHJ1Y3QgJyduYSBrdScnIGlzIHJhcmVseSBzZWVuIGFu eXdoZXJlIG90aGVyIHRoYW4gdGhlIGJlZ2lubmluZyBvZiBhIGJyaWRpLiBJbiBtb3N0IGNhc2Vz IHdoZXJlIG1vcmUgc3BlY2lmaWMgbmVnYXRpb24gaXMgbmVlZGVkIHBlb3BsZSByZXNvcnQgdG8g YSBkaWZmZXJlbnQgbWV0aG9kLiBUaGlzIG1ldGhvZCwgY2FsbGVkIHNjYWxhciBuZWdhdGlvbiwg aXMgYW4gZWxlZ2FudCBhbmQgaW50dWl0aXZlIHRvb2wuIFVzaW5nIGl0LCB5b3UgZWZmZWN0IG9u bHkgdGhlIHNlbGJyaSwgc2luY2UgdGhlIHdvcmRzIHVzZWQgaW4gc2NhbGFyIG5lZ2F0aW9uIGJp bmRzIHRvIHRoZSBzZWxicmkgbXVjaCBsaWtlIHRoZSB3b3JkICcnc2UnJy4KClRoZSBuYW1lIOKA nHNjYWxhciBuZWdhdGlvbuKAnSBpcyBkZXJpdmVkIGZyb20gdGhlIGZhY3QgdGhhdCB0aGUgd29y ZHMgd2hpY2ggYmluZCB0byB0aGUgc2VsYnJpIGNhbiBiZSBwbGFjZWQgYWxvbmcgYSBzY2FsZSBm cm9tIGFmZmlybWF0aW9uIG92ZXIgbmVnYXRpb24gYW5kIHRvIHN0YXRpbmcgdGhhdCB0aGUgb3Bw b3NpdGUgY2FzZSBpcyB0cnVlOgoKfHxXb3JkfE1lYW5pbmcKCmpl4oCZYXzigJxJbmRlZWTigJ07 IHNjYWxhciBhZmZpcm1lcgoKbm/igJllfOKAnE5vdCByZWFsbHnigJ0sIHNjYWxhciBtaWRwb2lu dAoKbmHigJllfOKAnE5vbi3igJwsIHNjYWxhciBuZWdhdG9yCgp0b+KAmWV84oCcSWzigJ0sIOKA nERpcy3igJwsIOKAnE1pc+KAnSBlY3Q7IHNjYWxhciBvcHBvc2VyfHwKCgoKCgpUaGVzZSB3b3Jk cyBhcmUgbm90IG5lZ2F0b3JzIGluIHRoZSBzYW1lIHNlbnNlIGFzICcnbmEnJy4gVGhleSBkbyBu b3Qgc3RhdGUgdGhhdCBhIGJyaWRpIGlzIGZhbHNlLCBidXQgbWFrZXMgYSBwb3NpdGl2ZSBzdGF0 ZW1lbnQgdGhhdCBhIGJyaWRpIGlzIHRydWUg4oCTIHRoZSBzYW1lIGJyaWRpLCBidXQgd2l0aCBh IGRpZmZlcmVudCBzZWxicmkuIFRoaXMgZGlzdGluY3Rpb24gaXMgbW9zdGx5IGFjYWRlbWljLCB0 aG91Z2guIElmLCBmb3IgZXhhbXBsZSwgSSBzdGF0ZSB0aGF0ICcnbWkgbmEnZSBzZSBuZWxjaScn ICJJIGFtIG5vbi1saWtlZCIsIEkgYWN0dWFsbHkgc3RhdGUgdGhhdCBzb21lIHNlbGJyaSBhcHBs aWVzIHRvIG1lLCB3aGljaCBpcyBhbHNvIG9uIGEgcmVsZXZhbnQgc2NhbGUgd2l0aCB0aGUgc2Vs YnJpICcnbmVsY2knJy4gTW9zdCBvZiB0aGUgdGltZSwgd2UgYXNzdW1lIGEgc2NhbGUgd2hlcmUg dGhlIHBvc2l0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIChsaWtlIGxvdmUtbGlrZS1kaXNs aWtlLWhhdGUpLCBzbyAnJ21pIG5hJ2Ugc2UgbmVsY2knJyBpbXBsaWVzICcnbWkgbmEgc2UgbmVs Y2knJwoKVGhlcmVmb3JlLCB0aGUgd29yZHMgJydub+KAmWUnJyBhbmQgJyd0b+KAmWUnJyBzaG91 bGQgb25seSBiZSB1c2VkIHdoZW4gdGhlIHNlbGJyaSBpcyBwbGFjZWQgb24gc29tZSBvYnZpb3Vz IHNjYWxlOgoKJydsZSBtaSBzcGVuaSBjdSB0b+KAmWUgbWVsYmknJyDigJMg4oCdTXkgc3BvdXNl IGlzIHVnbHnigJ0gbWFrZXMgc2Vuc2UsIHNpbmNlIHdlIGltbWVkaWF0ZWx5IGtub3cgd2hhdCB0 aGUgb3Bwb3NpdGUgb2YgYmVhdXRpZnVsIGlzLCB3aGlsZQoKJydtaSBrbGFtYSBsZSBtaSB0b+KA mWUgemRhbmknJyDigJMg4oCdSSBnbyB0byBteSBvcHBvc2l0ZSB0aGluZyBvZiBob21l4oCdLCB3 aGlsZSBncmFtbWF0aWNhbCwgbGVhdmVzIHRoZSBsaXN0ZW5lciBndWVzc2luZyB3aGF0IHRoZSBz cGVha2VycyDigJxvcHBvc2l0ZS1ob21l4oCdIGlzIGFuZCBzaG91bGQgYmUgYXZvaWRlZC4KCgoK U28gaG93IGNhbiB5b3UgbmVnYXRlIG9ubHkgdGhlIHNlbGJyaSB3aXRob3V0IGFsc28gaW1wbHlp bmcgdGhhdCB0aGUgc2VsYnJpIGlzIGNvcnJlY3QgYXQgc29tZSBvdGhlciBwb3NpdGlvbiBvbiBh IHRydXRoLXNjYWxlPyBTaW1wbGU6IE1vdmluZyB0aGUgJyduYSBrdScnIHRvIHRoZSByaWdodG1v c3QgZW5kIG9mIHRoZSBicmlkaSwgYXMgZGVtb25zdHJhdGVkIGEgZmV3IGxpbmVzIGFib3ZlLiBU aGlzIGZlYXR1cmUgaXMgdmVyeSB1c2VmdWwuIFNvbWUgbG9qYmFuaXN0cyBwcmVmZXIgdG8gcHJl Zml4IHRoZSByYWZzaSAnJ25hci0nJyAodGhlIHJhZnNpIG9mICcnbmEnJykgaW4gZnJvbnQgb2Yg dGhlIHNlbGJyaSAtIHRoaXMgaGFzIHRoZSBzYW1lIGVmZmVjdCwgYnV0IEkgYWR2aXNlIGFnYWlu c3QgaXQsIGJlY2F1c2UgaXQgbWFrZXMgZmFtaWxpYXIgYnJpdmxhIHNlZW0gYWxpZW4sIGFuZCBp dCdzIGhhcmRlciB0byB1bmRlcnN0YW5kIHdoZW4gc3Bva2VuIGNhc3VhbGx5LgoKCgpUcnkgdG8g dHJhbnNsYXRlIHRoZXNlIHNlbnRlbmNlczoKCuKAnE15IHNwb3VzZSBpcyBub3QgYSB3b21hbuKA nSAobWVhbmluZyB0aGF0IGhlIGlzIGEgbWFsZSkKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ2xl IG1pIHNwZW5pIGN1IG5h4oCZZSAvIHRv4oCZZSBuaW5tdScnLiBVc2luZyBzY2FsYXIgbmVnYXRp b24gaGVyZSBpbXBsaWVzIHRoYXQgaGUgZXhpc3RzLCB3aGljaCBuYSBkaWQgbm90Ln5+CgoKCuKA nE15IHNwb3VzZSBpcyBub3QgcmVhbGx5IGEgd29tYW7igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTonJ2xlIG1pIHNwZW5pIGN1IG5v4oCZZSBuaW5tdScnLiBUaGUgc2NhbGUgaGVyZSBpcyBwcmVz dW1lZCB0byBiZSBmcm9tIHdvbWFuIHRvIG1hbi5+fgoKCgrigJxJIGRvbuKAmXQgc3BlYWsgZmFz dCBpbiBFbmdsaXNoIGJlY2F1c2UgSeKAmW0gR2VybWFu4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdy ZXk6JydtaSBuYeKAmWUgc3V0cmEgdGF2bGEgYmF1IGxlIGdsaWJhdSBzZSBqYeKAmWUgbGUgbnUg bWkgZG90Y28nJ35+CgoKCkFsc28sIG5vdGUgdGhhdCB3aGVuZXZlciB0aGVzZSB3b3JkcyBhcmUg dXNlZCB0b2dldGhlciB3aXRoIGEgdGFucnUsIHRoZXkgb25seSBhZmZlY3QgdGhlIGxlZnRtb3N0 IHNlbGJyaS4gSW4gb3JkZXIgdG8gbWFrZSBpdCBiaW5kIHRvIHRoZSB3aG9sZSB0YW5ydSBvciBw YXJ0cyBvZiB0aGUgdGFucnUsIHRoZSB1c3VhbCB0YW5ydS1ncm91cGluZyB3b3JkcyBjYW4gYmUg dXNlZC4KCgoKVHJ5IHRvIHNheSDigJxJIHNlbGwgc29tZXRoaW5nIHdoaWNoIGlzIG5vdCB5ZWxs b3cgaG9tZXPigJ0gdXNpbmcgdGhlIHRhbnJ1ICcncGVseHUgemRhbmkgdmVjbnUnJwoKCgpBbnN3 ZXI6IH5+Z3JleSxncmV5OicnbWkgbmHigJllIGtlIHBlbHh1IHpkYW5pIGtl4oCZZSB2ZWNudSBv ciBtaSBuYeKAmWUgcGVseHUgYm8gemRhbmkgdmVjbnUnJ35+CgoKCldoZW4gYXR0ZW1wdGluZyB0 byBhbnN3ZXI6IOKAnElzIHRoZSBraW5nIG9mIHRoZSBVU0EgZmF0P+KAnSwgYWxsIG9mIHRoZXNl IG5lZ2F0aW9ucyBmYWlsLiBXaGlsZSBpdOKAmXMgdGVjaG5pY2FsbHkgY29ycmVjdCB0byBuZWdh dGUgaXQgd2l0aCAnJ25hJycsIHNpbmNlIGl0IG1ha2VzIG5vIGFzc3VtcHRpb25zIG9mIHRoYXQg aXMgdHJ1ZSwgaXTigJlzIG1pbGRseSBtaXNsZWFkaW5nIHNpbmNlIGl0IGNvdWxkIGxlYWQgdGhl IGxpc3RlbmVyIHRvIGJlbGlldmUgdGhlcmUgaXMgYSBraW5nIG9mIHRoZSBVU0EuIEZvciB0aGVz ZSBzY2VuYXJpb3MsIHRoZXJlIGlzIGEgbWV0YWxpbmd1aXN0aWMgbmVnYXRvciwgJyduYeKAmWkn Jy4KCicnbmHigJlpJycgTWV0YWxpbmd1aXN0aWMgbmVnYXRvci4gU29tZXRoaW5nIGlzIHdyb25n IHdpdGggYXNzaWduaW5nIGEgdHJ1dGggdmFsdWUgdG8gdGhlIGJyaWRpLgoKQmVjYXVzZSAnJ25h 4oCZaScnIGNhbiBiZSBuZWVkZWQgYW55d2hlcmUgaXQgaGFzIGJlZW4gZ2l2ZW4gdGhlIGdyYW1t YXIgb2YgdGhlIGF0dGl0dWRpbmFscywgd2hpY2ggbWVhbnMgaXQgY2FuIGFwcGVhciBhbnl3aGVy ZSwgYW5kIGl0IGF0dGFjaGVzIHRvIHRoZSBwcmV2aW91cyB3b3JkIG9yIGNvbnN0cnVjdC4KCgoK X18nJ3BhbGNpJydfXyB4MSBpcyBldmlsIGJ5IHN0YW5kYXJkIHgyCgonJ2xlIG5h4oCZaSBwdSB0 ZSB6dWt0ZSBiZSBsZSBza2FtaSBjdSBwYWxjaScnIOKAkyDigJ1UaGUgc291Z2h0IGdvYWwge21p c3Rha2UhfSBvZiB0aGUgY29tcHV0ZXIgd2FzIGV2aWzigJ0sIHByb2JhYmx5IHByb3Rlc3RzIHRo YXQgY29tcHV0ZXJzIGNhbiBzZWVrIGEgZ29hbCB2b2xpdGlvbmFsbHkuCgoKClNpbmNlIHRoaXMg aXMgYSBsZXNzb24gb24gbmVnYXRpb24sIEkgYmVsaWV2ZSB0aGUgd29yZCAnJ25haScnIGRlc2Vy dmVzIGEgc2hvcnQgbWVudGlvbi4gSXQgaXMgdXNlZCB0byBuZWdhdGUgbWlub3IgZ3JhbW1hdGlj YWwgY29uc3RydWN0cywgYW5kIGNhbiBiZSB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggYXR0aXR1 ZGluYWxzLCBhbGwgc3VtdGNpdGEgaW5jbHVkaW5nIHRlbnNlcywgdm9jYXRpdmVzIGFuZCBsb2dp Y2FsIGNvbm5lY3RpdmVzLiBUaGUgcnVsZXMgZm9yIG5lZ2F0aW5nIHVzaW5nICcnbmFpJycgZGVw ZW5kIG9uIHRoZSBjb25zdHJ1Y3QsIGFuZCBzbyB0aGUgZWZmZWN0IG9mICcnbmFpJycgaGFzIGJl ZW4gZGlzY3Vzc2VkIHdoZW4gbWVudGlvbmluZyB0aGUgY29uc3RydWN0IHRoZW1zZWx2ZXMuIFRo ZSBleGNlcHRpb24gaXMgc3VtdGNpdGEsIHdoZXJlIHRoZSBydWxlcyBmb3IgbmVnYXRpb24gYXJl IG1vcmUgY29tcGxleCwgYW5kIHdpbGwgbm90IGJlIGRpc2N1c3NlZCBoZXJlLgoKX19Ob3RlOl9f IEF0IHRoZSB0aW1lIG9mIHdyaXRpbmcsIGl0IGhhcyBiZWVuIHByb3Bvc2VkIHRvIG1vdmUgJydu YWknJyB0byB0aGUgc2VsbWEnbyBDQUksIHdoaWNoIG1lYW5zIHRoZSBzZW1hbnRpY3Mgb2YgJydu YWknJyBkZXBlbmQgb24gd2hpY2ggc2VsbWEnbyBpdCBmb2xsb3dzLiAKCgoKCgohIUxvamJhbiBM ZXNzb25zIC0gTGVzc29uIHR3ZW50eS1mb3VyIChicmlrYeKAmWkvcHJvLWJyaWRpIGFuZCBrb+KA mWEpCgpJZiBJIHNheSB0aGF0IEnigJltIGNhbGxlZCBNaWtoYWlsLCAnJ2xhIC5taWthaWwuIGNt ZW5lIG1pJycsIGFuZCB5b3UgaGF2ZSB0byBzYXkgdGhlIGV4YWN0IHNhbWUgYnJpZGksIHdoYXQg d291bGQgdGhhdCBiZT8gT25lIG9mIHRoZSBtYW55IGFuc3dlcnMgaXMgJydkbyBzZSBjbWVuZSBs YSAubWlrYWlsLicnLiBGb3IgdGhlIGJyaWRpIHRvIGJlIHRoZSBzYW1lLCB5b3UgaGF2ZSB0byBy ZXBsYWNlICcnbWknJyB3aXRoICcnZG8nJywgYW5kIGl0IGRvZXNu4oCZdCBtYXR0ZXIgd2hpY2gg aWYgeW91IHNheSB0aGUgYnJpZGkgd2l0aCB0aGUgJydzZScnLWNvbnZlcnRlZCBzZWxicmkgb3Ig bm90LiBUaGlzIGlzIGJlY2F1c2UgYSBicmlkaSBpcyBub3QgdGhlIHdvcmRzIHdoaWNoIGV4cHJl c3MgaXQg4oCTIGEgYnJpZGkgaXMgYW4gaWRlYSwgYW4gYWJzdHJhY3QgcHJvcG9zaXRpb24uIFRo ZSB3b3JkICcnbWknJyB3aGVuIEkgc2F5IGl0IGFuZCB0aGUgd29yZCAnJ2RvJycgd2hlbiB5b3Ug ZG8gcmVmZXJzIHRvIHRoZSBzYW1lIHN1bXRpLCBzbyB0aGUgdHdvIGJyaWRpIGFyZSBpZGVudGlj YWwuCgpUaGlzIGxlc3NvbiBpcyBvbiAnJ2JyaWth4oCZaScnLCB0aGUgYnJpZGkgZXF1aXZhbGVu dCBvZiBzdW1rYeKAmWkuIFRoZXkgYXJlIHdvcmQgd2hpY2ggcmVwcmVzZW50IGVudGlyZSBicmlk aS4gSGVyZSBpdCBpcyBpbXBvcnRhbnQgdG8gcmVtZW1iZXIgdGhhdCBhIGJyaWRpIGNvbnNpc3Rz IG9ubHkgb2Ygc3VtdGkgYW5kIHRoZSB0aGluZ3Mgd2hpY2ggY29udGFpbiB0aGUgc3VtdGksIHNl bGJyaSBhbmQgc3VtdGNpdGEuIE5laXRoZXIgYXR0aXR1ZGluYWxzLCBub3IgdGhlIHNlbWFudGlj IGxheWVyIG9mICcna28nJyBvciAnJ21hJycgYXJlIHBhcnQgb2YgdGhlIGJyaWRpIHByb3Blciwg YW5kIHNvIHRoZXNlIGFyZSBub3QgcmVwcmVzZW50ZWQgYnkgYSAnJ2JyaWth4oCZaScnLgoKCgpU aGVyZSBhcmUgbXVjaCBmZXdlciAnJ2JyaWth4oCZaScnIHRoYW4gdGhlcmUgYXJlIHN1bWth4oCZ aS4gV2Ugd2lsbCBiZWdpbiBieSBnb2luZyB0aHJvdWdoIHNvbWUgb2YgdGhlIHdvcmRzIGluIHRo ZSBtb3N0IHVzZWQgc2VyaWVzLCBjYWxsZWQgR09oQToKCldvcmQ6CURlZmluaXRpb246CgpfXycn Z2/igJl1JydfXwlSZXBlYXRzIHJlbW90ZSBwYXN0IGJyaWRpCgpfXycnZ2/igJlhJydfXwlSZXBl YXRzIHBhc3QgYnJpZGkKCl9fJydnb+KAmWUnJ19fCVJlcGVhdHMgbmV4dC10by1sYXN0IGJyaWRp CgpfXycnZ2/igJlpJydfXwlSZXBlYXRzIGxhc3QgbWVudGlvbmVkIGJyaWRpCgpfXycnZ2/igJlv JydfXwlSZXBlYXRzIGZ1dHVyZSBicmlkaQoKX18nJ25laScnX18JUmVwZWF0cyBjdXJyZW50IGJy aWRpCgpfXycnbm/igJlhJydfXwlSZXBlYXRzIG91dGVyIGJyaWRpCgoKClNvbWUgb2YgdGhlIEdP aEEtJydicmlrYeKAmWknJy4gTm90aWNlIHRoZSBmYW1pbGlhciBpLCBhLCB1LXBhdHRlcm4gZm9y IGNsb3NlIGluIHBhc3QsIG1lZGl1bSBpbiBwYXN0IGFuZCBkaXN0YW50IGluIHBhc3QuCgoKCgoK VGhlc2UgYXJlIHZlcnkgbXVjaCBsaWtlIHRoZSBzdW1rYeKAmWkgJydyaScnLCAnJ3JhJycgYW5k ICcncnUnJy4gVGhleSBjYW4gb25seSByZWZlciB0byBtYWluIGJyaWRpIG9mIGp1ZnJhLCBhbmQg bm90IHRob3NlIGNvbnRhaW5lZCBpbiByZWxhdGl2ZSBwaHJhc2VzIG9yIGRlc2NyaXB0aW9uIHN1 bXRpLiBUaGUgbWFpbiBicmlkaSBjYW4gY29udGFpbiBhIHJlbGF0aXZlIHBocmFzZSwgb2YgY291 cnNlLCBidXQgYSAnJ2JyaWth4oCZaScnIGNhbiBuZXZlciBiZSB1c2VkIHRvIHJlZmVyIHRvIG9u bHkgdGhlIHJlbGF0aXZlIHBocmFzZS4KCkEgR09oQSBhY3RzIGdyYW1tYXRpY2FsbHkgbXVjaCBs aWtlIGEgc2VsYnJpLCBhbnkgY29uc3RydWN0IHdoaWNoIGNhbiBhcHBseSB0byBzZWxicmkgY2Fu IGFsc28gYXBwbHkgdG8gdGhlc2UuIFRoZSBwbGFjZSBzdHJ1Y3R1cmUgb2YgYSBHT2hBIGlzIHRo ZSBzYW1lIGFzIHRoYXQgb2YgdGhlIGJyaWRpIGl0IHJlcHJlc2VudHMsIGFuZCB0aGUgc3VtdGkg YXJlIGJ5IGRlZmF1bHQgdGhlIHNhbWUgYXMgaW4gdGhlIGJyaWRpIGl0IHJlcHJlc2VudHMuIEZp bGxpbmcgdGhlIHN1bXRpIHBsYWNlcyBvZiBhIEdPaEEgZXhwbGljaXRseSBvdmVyd3JpdGVzIHRo ZSBzdW10aSBvZiB0aGUgYnJpZGkgaXQgcmVwcmVzZW50cy4gQ29udHJhc3Q6CgpBOiAnJ21pIGNp dGthIGxvIHBsaXNlJycgQjogJydnb+KAmWknJyDigJMg4oCcSSBlYXQgYW4gYXBwbGUu4oCdIOKA nFlvdSBkby7igJ0gd2l0aAoKQTogJydtaSBjaXRrYSBsbyBwbGlzZScnIEI6ICcnbWkgZ2/igJlp Jycg4oCTIOKAnEkgZWF0IGFuIGFwcGxlLuKAnSDigJxJIGRvLCB0b28u4oCdCgoKClRoZXNlICcn YnJpa2HigJlpJycgYXJlIHZlcnkgdXNlZnVsIHdoZW4gYW5zd2VyaW5nIGEgcXVlc3Rpb24gd2l0 aCAnJ3h1Jyc6CgpBOiAnJ3h1IGRvIG5lbGNpIGxlIG1pIHNwZW5pJycgQjogJydnb+KAmWkgLyBu YSBnb+KAmWknJyDigJMg4oCcRG8geW91IGxpa2UgbXkgd2lmZT/igJ0g4oCcWWVzLi9Oby7igJ0u IFRoZSAnJ3h1JycsIGJlaW5nIGFuIGF0dGl0dWRpbmFsLCBpcyBub3QgY29waWVkLgoKV2hlbiBy ZXBlYXRpbmcgYnJpZGkgbmVnYXRlZCBieSAnJ25hJycsIHRoYXQgaXM6IEJyaWRpIHdoZXJlICcn bmEnJyBpcyBwbGFjZWQgaW4gdGhlIHByZW5leCAobGVzc29uIHR3ZW50eS1zZXZlbiksIGluIHRo ZSBiZWdpbm5pbmcgb2YgdGhlIGJyaWRpIG9yIHJpZ2h0IGJlZm9yZSB0aGUgc2VsYnJpLCB0aGUg cnVsZXMgZm9yIGNvcHlpbmcgb3ZlciAnJ25hJycgYXJlIGRpZmZlcmVudCBmcm9tIHdoYXQgb25l IG1pZ2h0IGV4cGVjdC4gQW55ICcnbmEnJyBpcyBjb3BpZWQgb3ZlciwgYnV0IGFueSBhZGRpdGlv bmFsICcnbmEnJyBpbiB0aGUgcHJvLWJyaWRpIHJlcGxhY2VzIHRoZSBmaXJzdCBuYS4gTGV0IG1l IHNob3cgeW91IHdpdGggYW4gZXhhbXBsZToKCkE6ICcnbWkgbmEgY2l0a2EgbG8gcGxpc2UnJwoK QjogJydtaSBuYSBnbydpJycgPSAnJ21pIG5hIGNpdGthIGxvIHBsaXNlJycKCkM6ICcnbWkgbmEg bmEgZ28naSA9ICcnbWkgY2l0a2EgbG8gcGxpc2UnJyA9ICcnbWkgamEnYSBnbydpJycKCgoKJydu ZWknJyBhbmQgJydub+KAmWEnJyBhcmUgbm90IHVzZWQgbXVjaCwgZXhjZXB0IGZvciDigJxtaW5k LWJyZWFraW5nIHB1cnBvc2Vz4oCdLCB3aGljaCBpcyBtYWtpbmcgdXAgYnJpZGkgd2hpY2ggYXJl IGhhcmQgdG8gcGFyc2UsIGxpa2UgJydkZWkgbmEgc2UgZHXigJl1IGxlIG5v4oCZYSBsYeKAmWUg bGUgbmVpJycuIFNpbmNlICcnbmVpJycgcmVwZWF0cyB0aGUgY3VycmVudCBvdXRlciBicmlkaSwg aG93ZXZlciwgJydsZSBuZWknJyBjYW4gYmUgdXNlZCB0byByZWZlciB0byB0aGUgeDEgb2YgdGhl IGN1cnJlbnQgb3V0ZXIgYnJpZGksICcnbGUgc2UgbmVpJycgdGhlIHgyIGFuZCBzbyBvbi4KCgoK V2hlbiB1c2luZyAnJ2JyaWth4oCZaScnLCBvbmUgbXVzdCBhbHdheXMgYmUgd2FyeSBvZiBjb3B5 aW5nIHNlbnRlbmNlcyB3aXRoIHRoZSBwZXJzb25hbCBzdW1rYeKAmWkgbGlrZSAnJ21pJycsICcn ZG8nJywgJydtYeKAmWEnJyBlY3QsIGFuZCBiZSBjYXJlZnVsIG5vdCB0byByZXBlYXQgdGhlbSB3 aGVuIHRoZXkgYXJlIGluIHRoZSB3cm9uZyBjb250ZWN0LCBhcyBzaG93biBpbiB0aGUgdHdvIGV4 YW1wbGVzIHdpdGggYXBwbGUgZWF0aW5nIGFib3ZlLiBJbnN0ZWFkIG9mIHJlcGxhY2luZyB0aGVt IG9uZSBieSBvbmUsIHRob3VnaCwgdGhlIHdvcmQgJydyYeKAmW8nJyBhbnl3aGVyZSBpbiB0aGUg YnJpZGkgdXBkYXRlcyB0aGUgcGVyc29uYWwgc3Vta2HigJlpIHNvIHRoYXQgdGhleSBhcHBseSBm b3IgdGhlIHNwZWFrZXLigJlzIHBlcnNwZWN0aXZlOgoKQTogJydtaSBkbyBwcmFtaScnIEI6ICcn bWkgZG8gZ2/igJlpJycgaXMgZXF1aXZhbGVudCB0byBBOiAnJ21pIGRvIHByYW1pJycgQjogJydn b+KAmWkgcmHigJlvJycKCl9fJydyYeKAmW8nJ19fIFVwZGF0ZSBhbGwgcGVyc29uYWwgc3Vta2Hi gJlpIHNvIHRoYXQgdGhleSBub3cgZml0IHRoZSBzcGVha2Vy4oCZcyBwb2ludCBvZiB2aWV3LgoK CgpUaGUgb25seSBvdGhlciBzZXJpZXMgb2YgYnJpa2HigJlpIGFyZSB2ZXJ5IGVhc3kgdG8gcmVt ZW1iZXI6CgpfXycnYnJvZGEnJ19fCUJyaWRpIHZhcmlhYmxlIDEKCl9fJydicm9kZScnX18JQnJp ZGkgdmFyaWFibGUgMgoKX18nJ2Jyb2RpJydfXwlCcmlkaSB2YXJpYWJsZSAzCgpfXycnYnJvZG8n J19fCUJyaWRpIHZhcmlhYmxlIDQKCl9fJydicm9kdScnX18JQnJpZGkgdmFyaWFibGUgNQoKX18n J2NlaScnX18JRGVmaW5lIGJyaWRpIHZhcmlhYmxlIChub3QgYSBicmlrYSdpIGFuZCBub3QgaW4g QlJPREEpCgoKCgoKVGhlIGZpcnN0IGZpdmUgYXJlIGp1c3QgZml2ZSBpbnN0YW5jZXMgb2YgdGhl IHNhbWUgd29yZC4gVGhleSBjYW4gYmUgdXNlZCBhcyBzaG9ydGN1dHMgdG8gYnJpZGkuIEFmdGVy IHNheWluZyBhIGJyaWRpLCBzYXlpbmcgJydjZWkgYnJvZGEnJyBkZWZpbmVzIHRoYXQgYnJpZGkg YXMgJydicm9kYScnLCBhbmQgJydicm9kYScnIGNhbiB0aGVuIGJlIHVzZWQgYXMgJydicmlrYeKA mWknJyBmb3IgdGhhdCBicmlkaSBpbiB0aGUgZm9sbG93aW5nIGNvbnZlcnNhdGlvbi4KCldoaWxl IHdl4oCZcmUgYXQgaXQsIHRoZXJlIGlzIGFuIGFuYWxvZ291cyBzZXJpZXMgb2Ygc3Vta2HigJlp LCB3aGljaCBwcm9iYWJseSBkb2VzIG5vdCBiZWxvbmcgaW4gdGhpcyBsZXNzb24sIGJ1dCBoZXJl IHRoZXkgYXJlIGFueXdheToKCl9fJydrb+KAmWEnJ19fCVN1bXRpIHZhcmlhYmxlIDEJX18nJ2Zv 4oCZYScnX18JU3VtdGkgdmFyaWFibGUgNgoKX18nJ2tv4oCZZScnX18JU3VtdGkgdmFyaWFibGUg MglfXycnZm/igJllJydfXwlTdW10aSB2YXJpYWJsZSA3CgpfXycna2/igJlpJydfXwlTdW10aSB2 YXJpYWJsZSAzCV9fJydmb+KAmWknJ19fCVN1bXRpIHZhcmlhYmxlIDgKCl9fJydrb+KAmW8nJ19f CVN1bXRpIHZhcmlhYmxlIDQJX18nJ2Zv4oCZbycnX18JU3VtdGkgdmFyaWFibGUgOQoKX18nJ2tv 4oCZdScnX18JU3VtdGkgdmFyaWFibGUgNQlfXycnZm/igJl1JydfXwlTdW10aSB2YXJpYWJsZSAx MAoKCgphcyB3ZWxsIGFzIHRoZSAnJ2NlaScnLWVxdWl2YWxlbnQgZm9yIHRoaXMgc2VyaWVzOgoK X18nJ2dvaScnX18gRGVmaW5lIHN1bXRpIHZhcmlhYmxlCgoKCgoKVGhlc2UgYXJlIHVzZWQgbGlr ZSB0aGUgJydicmlrYeKAmWknJy1zZXJpZXMuIEp1c3QgcGxhY2UsIGZvciBpbnN0YW5jZSwgJydn b2kga2/igJl1JycgYWZ0ZXIgYSBzdW10aSwgYW5kIHRoYXQgc3VtdGkgY2FuIGJlIHJlZmVycmVk IHRvIGJ5ICcna2/igJl1JycuCgoKClN0cmFuZ2VseSwgdGhlc2Ugc2VyaWVzIGFyZSByYXJlbHkg dXNlZCBmb3IgdGhlaXIgaW50ZW5kZWQgcHVycG9zZS4gVGhleSBhcmUsIGhvd2V2ZXIsIHVzZWQg YXMgYXJiaXRyYXJ5IHNlbGJyaSBhbmQgc3VtdGkgaW4gZXhhbXBsZSB0ZXh0czoKCuKAnFNvLCBp cyBpdCB0cnVlIHRoYXQgdGhlIHRydXRoIGNvbmRpdGlvbnMgb2YgJydrb+KAmWEga2/igJllIGJy b2RhIG5hIGt1JycgYXJlIGFsd2F5cyB0aGUgc2FtZSBhcyAnJ25hIGt1IGtv4oCZYSBrb+KAmWUg YnJvZGEnJz/igJ0g4oCcTm9wZSwgaXQgaXNu4oCZdC7igJ0KCgoKCgohIUxvamJhbiBMZXNzb25z IC0gTGVzc29uIHR3ZW50eS1maXZlIChsb2dpY2FsIGNvbm5lY3RpdmVzKQoK4oCcSWYgeW91IGFz ayBhIExvamJhbmlzdDog4oCcRG8geW91IHdhbnQgbWlsayBvciBzdWdhciBpbiB5b3VyIGNvZmZl ZT/igJ0gc2hl4oCZbGwgYW5zd2VyOiDigJxDb3JyZWN0LuKAneKAnQoKCgpXaXR0eSBhcyB0aGlz IGpva2UgbWlnaHQgYmUsIGl0IGlsbHVzdHJhdGVzIGEgd2VpcmQgcHJvcGVydHkgb2YgdGhlIEVu Z2xpc2ggd2F5IG9mIGFza2luZyB0aGlzIHF1ZXN0aW9uLiBJdCBpcyBwaHJhc2VkIGFzIGEgdHJ1 ZS9mYWxzZSBxdWVzdGlvbiwgYnV0IGl0IHJlYWxseSBpc27igJl0LiBJbiBMb2piYW4sIHdlIGNh buKAmXQgaGF2ZSB0aGlzIGtpbmQgb2YgaW5jb25zaXN0ZW5jeSwgYW5kIHNvIHdlIG11c3QgZmlu ZCBhbm90aGVyIHdheSBvZiBhc2tpbmcgdGhpcyBraW5kIG9mIHF1ZXN0aW9uLiBJZiB5b3UgdGhp bmsgYWJvdXQgaXQsIGl04oCZcyBwcmV0dHkgaGFyZCB0byBmaW5kIGEgZ29vZCBhbmQgZWFzeSB3 YXksIGFuZCBpdCBzZWVtcyBMb2piYW4gaGF2ZSBwaWNrZWQgYSBnb29kIHdheSBpbnN0ZWFkIG9m IGFuIGVhc3kgd2F5LgoKCgpUbyBleHBsYWluIGl0LCBsZXQgdXMgdGFrZSB0d28gc2VwYXJhdGUg YnJpZGk6IEJyaWRpIDE6IOKAnEkgbGlrZSBtaWxrIGluIG15IGNvZmZlZeKAnSBhbmQgYnJpZGkg Mjog4oCcSSBsaWtlIHN1Z2FyIGluIG15IGNvZmZlZeKAnS4gQm90aCBvZiB0aGVzZSBicmlkaSBj YW4gaGF2ZSB0aGUgc3RhdGUgdHJ1ZSBvciBmYWxzZS4gVGhpcyB5aWVsZHMgZm91ciBjb21iaW5h dGlvbnMgb2Ygd2hpY2ggYnJpZGkgaXMvYXJlIHRydWU6CgpBICkgMSBhbmQgMglCICkgMSBidXQg bm90IDIKCkMgKSAyIGJ1dCBub3QgMQlEICluZWl0aGVyIDEgbm9yIDIKCgoKSSwgaW4gYWN0dWFs aXR5LCBsaWtlIG1pbGsgaW4gbXkgY29mZmVlLCBhbmQgSeKAmW0gaW5kaWZmZXJlbnQgYXMgdG8g d2hldGhlciB0aGVyZSBpcyBzdWdhciBpbiBpdCBvciBub3QuIFRoZXJlZm9yZSwgbXkgcHJlZmVy ZW5jZSBjYW4gYmUgd3JpdHRlbiBBICkgdHJ1ZSBCICkgdHJ1ZSBDICkgZmFsc2UgRCApIGZhbHNl LCBzaW5jZSBib3RoIEEgYW5kIEIgeWllbGRzIHRydWUgZm9yIG1lLCBidXQgbmVpdGhlciBDIG5v ciBEIGRvZXMuIEEgbW9yZSBjb21wYWN0IHdheSBvZiB3cml0aW5nIG15IGNvZmZlZSBwcmVmZXJl bmNlcyB3b3VsZCBiZSBUVEZGIGZvciB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UuIFNpbWlsYXJs eSwgYSBwZXJzb24gbGlraW5nIGhpcyBjb2ZmZWUgYmxhY2sgYW5kIHVuc3dlZXRlbmVkIHdvdWxk IGhhdmUgYSBjb2ZmZWUgcHJlZmVyZW5jZSBvZiBGRkZULiBUaGlzIGNvbWJpdGF0aW9uIG9mICJ0 cnVlIiBhbmQgImZhbHNlIiBpcyBjYWxsZWQgYSDigJx0cnV0aCBmdW5jdGlvbuKAnSwgaW4gdGhp cyBjYXNlIGZvciB0aGUgdHdvIHN0YXRlbWVudHMg4oCcSSBsaWtlIG1pbGsgaW4gbXkgY29mZmVl 4oCdIGFuZCDigJxJIGxpa2Ugc3VnYXIgaW4gbXkgY29mZmVl4oCdLiBOb3RlIHRoYXQgdGhlIG9y ZGVyIG9mIHRoZSBzdGF0ZW1lbnRzIG1hdHRlcnMuCgpJbiBMb2piYW4sIHdlIG9wZXJhdGUgd2l0 aCA0IHRydXRoIGZ1bmN0aW9ucywgd2hpY2ggd2UgY29uc2lkZXIgZnVuZGFtZW50YWw6CgpBOiBU VFRGIChhbmQvb3IpCgpPOiBURkZUIChpZiBhbmQgb25seSBpZmYpCgpVOiBUVEZGICh3aGV0aGVy IG9yIG5vdCkKCkU6IFRGRkYgKGFuZCkKCgoKSW4gdGhpcyBleGFtcGxlLCB0aGV5IHdvdWxkIHRy YW5zbGF0ZSB0byBzb21ldGhpbmcgbGlrZTogQTrigJ1KdXN0IG5vdCBibGFjayBjb2ZmZWXigJ0s IE86IOKAnEVpdGhlciBib3RoIG1pbGsgb3Igc3VnYXIsIG9yIG5vdGhpbmcgZm9yIG1lLCBwbGVh c2XigJ0sIFU6IOKAnE1pbGssIGFuZCBJIGRvbuKAmXQgY2FyZSBhYm91dCBpZiB0aGVyZeKAmXMg c3VnYXIgb3Igbm904oCdIGFuZCBFOiDigJxNaWxrIGFuZCBzdWdhciwgcGxlYXNlLuKAnS4KCgoK SW4gTG9qYmFuLCB5b3UgcGxhY2UgdGhlIHdvcmQgZm9yIHRoZSB0cnV0aCBmdW5jdGlvbiBiZXR3 ZWVuIHRoZSB0d28gYnJpZGksIHNlbGJyaSBvciBzdW10aSBpbiBxdWVzdGlvbi4gVGhhdCB3b3Jk IGlzIGNhbGxlZCBhIGxvZ2ljYWwgY29ubmVjdGl2ZS4gVGhlIHdvcmRzIGZvciB0cnV0aCBmdW5j dGlvbnMgYmV0d2VlbiBzdW10aSAoYW5kIGp1c3QgZm9yIHN1bXRpISkgYXJlICAnJy5hJycgJycu bycnICcnLnUnJyBhbmQgJycuZScnLiBIb3cgbmljZS4gRm9yIGluc3RhbmNlOiDigJxJIGFtIGZy aWVuZHMgd2l0aCBhbiBBbWVyaWNhbiBhbmQgYSBHZXJtYW7igJ0gd291bGQgYmUgJydsbyBtZXJr byAuZSBsbyBkb3RjbyBjdSBwZW5kbyBtaScnLgoKSG93IHdvdWxkIHlvdSBzYXk6IOKAnEkgc3Bl YWsgdG8geW91IGFuZCBubyBvbmUgZWxzZT/igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21p IHRhdmxhIGRvIC5lIG5vIGRyYXRhJycgTm90ZSB0aGF0IHRoaXMgYWN0dWFsbHkgc3RhdGVzIHRo YXQgaXQncyB0cnVlIHRoYXQgIkkgc3BlYWsgdG8geW91Ii5+fgoKCgpPbmUgbW9yZTog4oCcSSBs aWtlIGNoZWVzZSB3aGV0aGVyIG9yIG5vdCBJIGxpa2UgY29mZmVl4oCdCgpfXycnY2thZmknJ19f IHgxIGlzIGEgcXVhbnRpdHkvY29udGFpbnMgY29mZmVlIGZyb20gc291cmNlL29mIGdyYWluIHgy CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBuZWxjaSBsb+KAmWUgY2lybGEgLnUgbG/igJll IGNrYWZpJyd+fgoKCgpZb3UgY2FuIHBlcmhhcHMgZGVkdWNlIHRoYXQgdGhlcmUgYXJlIHNpeHRl ZW4gcG9zc2libGUgdHJ1dGggZnVuY3Rpb25zLCBzbyB3ZSBuZWVkIHRvIGxlYXJuIHR3ZWx2ZSBt b3JlIGluIG9yZGVyIHRvIGtub3cgdGhlbSBhbGwuIEVpZ2h0IG1vcmUgY2FuIGJlIG9idGFpbmVk IGJ5IG5lZ2F0aW5nIGVpdGhlciB0aGUgZmlyc3Qgc2VudGVuY2Ugb3IgdGhlIHNlY29uZC4gVGhl IGZpcnN0IGlzIG5lZ2F0ZWQgYnkgcHJlZml4aW5nIHRoZSB0cnV0aCBmdW5jdGlvbiB3b3JkIHdp dGggJyduYScnLCB0aGUgc2Vjb25kIGlzIG5lZ2F0ZWQgYnkgcGxhY2luZyAnJ25haScnIGFmdGVy IHRoZSB3b3JkLiBGb3IgZXhhbXBsZSwgc2luY2UgJycuZScnIHJlcHJlc2VudHMgVEZGRiwgJycu ZSBuYWknJyBtdXN0IGJlIOKAnGJvdGggMSBpcyB0cnVlIGFuZCAyIGlzIGZhbHNl4oCdLCB3aGlj aCBpcyBGVEZGLiBTaW1pbGFybHksICcnbmEgLmEnJyBpcyDigJxKdXN0IG5vdDogMSBpcyB0cnVl IGFuZCAyIGlzIGZhbHNl4oCdLCB3aGljaCBpcyBUVEZULiBEb2luZyB0aGlzIHR5cGUgb2YgY29u dmVyc2lvbiBpbiB0aGUgaGVhZCByZWFsLXRpbWUgaXMgdmVyeSwgdmVyeSBoYXJkLCBzbyBwZXJo YXBzIG9uZSBzaG91bGQgZm9jdXMgb24gbGVhcm5pbmcgaG93IGxvZ2ljYWwgY29ubmVjdGl2ZXMg d29yayBpbiBnZW5lcmFsLCBhbmQgdGhlbiBsZWFybiB0aGUgbG9naWNhbCBjb25uZWN0aXZlcyB0 aGVtc2VsdmVzIGJ5IGhlYXJ0LgoKCgpGb3VyIGZ1bmN0aW9ucyBjYW5ub3QgYmUgbWFkZSB0aGlz IHdheTogVFRUVCwgVEZURiwgRlRGVCBhbmQgRkZGRi4gVGhlIGZpcnN0IGFuZCB0aGUgbGFzdCBj YW5ub3QgYmUgbWFkZSB1c2luZyBsb2dpY2FsIGNvbm5lY3RpdmVzIGF0IGFsbCwgYnV0IHRoZXkg YXJlIGtpbmQgb2YgdXNlbGVzcyBhbnl3YXkuIFVzaW5nIGEgaHlwb3RoZXRpY2FsIGxvZ2ljYWwg Y29ubmVjdGl2ZSBpbiB0aGUgc2VudGVuY2Ug4oCcSSBsaWtlIG1pbGsgRkZGRiBzdWdhciBpbiBt eSBjb2ZmZWXigJ0gaXMgZXF1aXZhbGVudCB0byBzYXlpbmcg4oCcSSBkb27igJl0IGxpa2UgY29m ZmVl4oCdLCBqdXN0IG1vcmUgY29tcGxpY2F0ZWQuIFRoZSBsYXN0IHR3bywgVEZURiBhbmQgRlRG VCwgY2FuIGJlIG1hZGUgYnkgcHJlZml4aW5nICcnLnUnJyB3aXRoIGdvb2Qgb2zigJkgJydzZScn LCB3aGljaCBqdXN0IHJldmVydHMgdGhlIHR3byBzdGF0ZW1lbnRzLiAnJ3NlIC51JycgLCBmb3Ig aW5zdGFuY2UgaXMg4oCcQiB3aGV0aGVyIG9yIG5vdCBB4oCdLCB3aGljaCBpcyBURlRGLiBUaGUg ZmluYWwgbGlzdCBvZiBhbGwgbG9naWNhbCBjb25uZWN0aXZlcyBjYW4gYmUgc2VlbiBiZWxvdy4K CgoKVFRUVDogQ2Fubm90IGJlIG1hZGUKClRUVEY6ICcnLmEnJwoKVFRGVDogJycuYSBuYWknJwoK VFRGRjogJycudScnIE9SICcnLnUgbmFpJycKClRGVFQ6ICcnbmEgLmEnJwoKVEZURjogJydzZSAu dScnCgpURkZUOiAnJy5vJycgT1IgJyduYSAubyBuYWknJwoKVEZGRjogJycuZScnCgpGVFRUOiAn J25hIC5hIG5haScnCgpGVFRGOiAnJ25hIC5vJycgT1IgJycubyBuYWknJwoKRlRGVDogJydzZSAu dSBuYWknJwoKRlRGRjogJycuZSBuYWknJwoKRkZUVDogJyduYSAudScnIE9SICcnbmEgLnUgbmFp JycKCkZGVEY6ICcnbmEgLmUnJwoKRkZGVDogJyduYSAuZSBuYWknJwoKRkZGRjogQ2Fubm90IGJl IG1hZGUKCgoKTG9naWNhbGx5LCBzYXlpbmcgYSBzZW50ZW5jZSB3aXRoIGEgbG9naWNhbCBjb25u ZWN0aXZlLCBsaWtlIGZvciBpbnN0YW5jZSAnJ21pIG5lbGNpIGxv4oCZZSBjaXJsYSAuZSBuYWkg bG/igJllIGNrYWZpJycgaXMgZXF1aXZhbGVudCB0byBzYXlpbmcgdHdvIGJyaWRpLCB3aGljaCBh cmUgY29ubmVjdGVkIHdpdGggdGhlIHNhbWUgbG9naWNhbCBjb25uZWN0aXZlOiAnJ21pIG5lbGNp IGxv4oCZZSBjaXJsYSAuaSB7RSBOQUl9IG1pIG5lbGNpIGxv4oCZZSBja2FmaScnLiBUaGlzIGlz IGhvdyB0aGUgZnVuY3Rpb24gb2YgbG9naWNhbCBjb25uZWN0aXZlcyBpcyBkZWZpbmVkLiBXZSB3 aWxsIGdldCB0byBob3cgdG8gYXBwbHkgbG9naWNhbCBjb25uZWN0aXZlcyB0byBicmlkaSBpbiBh IG1vbWVudC4KCgoKQnkgcHV0dGluZyBhIOKAnGrigJ0gaW4gZnJvbnQgb2YgdGhlIGNvcmUgd29y ZCBvZiBhIGxvZ2ljYWwgY29ubmVjdGl2ZSwgaXQgY29ubmVjdHMgdHdvIHNlbGJyaS4gQW4gZXhh bXBsZSBpcyAnJ21pIG5pbm11IG5hIGpvIG5hbm11Jycg4oCcSSBhbSBhIG1hbiBvciBhIHdvbWFu LCBidXQgbm90IGJvdGjigJ0KCl9fJyduaW5tdScnX18geDEgaXMgYSB3b21hbgoKCgpUaGlzIGlz IOKAnHRhbnJ1LWludGVybmFs4oCdLCBtZWFuaW5nIHRoYXQgaXQgbG9vc2VseSBiaW5kcyBzZWxi cmkgdG9nZXRoZXIsIGV2ZW4gd2hlbiB0aGV5IGZvcm0gYSB0YW5ydTogJydsbyBkb3RjbyBqYSBt ZXJrbyBwcmVudScnIG1lYW5zIOKAnGEgR2VybWFuIG9yIEFtZXJpY2FuIG1hbuKAnSwgYW5kIGlz IHBhcnNlZCAnJ2xvJycgKCcnZG90Y28gamEgbWVya28nJykgJydwcmVudScnLiBUaGlzIGJpbmRp bmcgaXMgc2xpZ2h0bHkgc3Ryb25nZXIgdGhhdCBub3JtYWwgdGFucnUtZ3JvdXBpbmcgKHN0aWxs IHdlYWtlciB0aGFuIHNwZWNpZmljIGdyb3VwaW5nLXdvcmRzKSwgYW5kIGFzIHN1Y2gsICcnbG8g ZG90Y28gamEgbWVya28gbmlubXUgamEgbmFubXUnJyBpcyBwYXJzZWQgJydsbycnICgnJ2RvdGNv IGphIG1lcmtvJycpICgnJ25pbm11IGphIG5hbm11JycpLiBUaGUgc2VsYnJpIGxvZ2ljYWwgY29u bmVjdGl2ZXMgY2FuIGFsc28gYmUgYXR0YWNoZWQgdG8gJycuaScnIGluIG9yZGVyIHRvIGNvbm5l Y3QgdHdvIHNlbnRlbmNlcyB0b2dldGhlcjogJydsYSAua2ltLiBjbWVuZSBtaSAuaSBqdSBtaSBu YW5tdScnIOKAnEnigJltIGNhbGxlZCBLaW0sIHdoZXRoZXIgb3Igbm90IEnigJltIGEgbWFu4oCd LiBUaGUgY29tYmluYXRpb24gJycuaSBqZScnIHN0YXRlcyB0aGF0IGJvdGggc2VudGVuY2VzIGFy ZSB0cnVlLCBtdWNoIGxpa2Ugd2Ugd291bGQgYXNzdW1lIGhhZCBubyBsb2dpY2FsIGNvbm5lY3Rp dmUgYmVlbiBwcmVzZW50LgoKCgpVbmZhaXJseSBoYXJkIHF1ZXN0aW9uOiBVc2luZyBsb2dpY2Fs IGNvbm5lY3RpdmVzLCBob3cgd291bGQgeW91IHRyYW5zbGF0ZSDigJxJZiB5b3XigJlyZSBjYWxs ZWQgQm9iLCB5b3XigJlyZSBhIG1hbi7igJ0/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydsYSAu YmFiLiBjbWVuZSBkbyAuaSBuYSBqYSBkbyBuYW5tdScnIG9yIOKAnEVpdGhlciB5b3XigJlyZSBu b3QgbmFtZWQgQm9iIGFuZCBhIG1hbiwgb3IgeW914oCZcmUgbm90IG5hbWVkIEJvYiBhbmQgbm90 IGEgbWFuLCBvciB5b3XigJlyZSBuYW1lZCBCb2IgYW5kIGEgbWFuLiBCdXQgeW91IGNhbuKAmXQg YmUgbmFtZWQgQm9iIGFuZCBub3QgYmUgYSBtYW4u4oCdIFRoZSBvbmx5IGNvbWJpbmF0aW9uIG5v dCBwZXJtaXR0ZWQgaXM6IOKAnFlvdeKAmXJlIGNhbGxlZCBCb2IsIGJ1dCBub3QgYSBtYW4u4oCd IFRoaXMgbXVzdCBtZWFuIHRoYXQsIGlmIGl04oCZcyB0cnVlIHRoYXQgeW914oCZcmUgY2FsbGVk IEJvYiwgeW91IG11c3QgYmUgYSBtYW4ufn4KCgoKSWYgd2UgdHJ5IHRvIHRyYW5zbGF0ZSB0aGUg c2FkLCBzYWQgZXZlbnQgb2Yg4oCcSSBjcmllZCBhbmQgZ2F2ZSBhd2F5IG15IGRvZ+KAnSwgd2Ug cnVuIGludG8gYSBwcm9ibGVtLgoKQXR0ZW1wdGluZyB0byBzYXkgdGhlIHNlbnRlbmNlIHdpdGgg YSAnJ2plJycgYmV0d2VlbiB0aGUgc2VsYnJpIOKAnGdhdmXigJ0gYW5kIOKAnGNyaWVk4oCdLCB3 b3VsZCBtZWFuIHRoZSBzYW1lIHdvcmQgZm9yIHdvcmQsIGJ1dCB1bmZvcnR1bmF0ZWx5IG1lYW4g dGhhdCDigJxJIGNyaWVkIHRoZSBkb2cgYW5kIGdhdmUgYXdheSB0aGUgZG9n4oCdLCBjZi4gdGhl IGRlZmluaXRpb24gb2YgbG9naWNhbCBjb25uZWN0aXZlcy4gT25lIGNhbiBjcnkgdGVhcnMgb3Ig ZXZlbiBibG9vZCwgYnV0IGNyeWluZyBkb2dzIGlzIGp1c3Qgc2lsbHkuCgpIb3dldmVyLCB3ZSBj YW4gZ2V0IGFyb3VuZCBieSB1c2luZyBicmlkaS10YWlsIGxvZ2ljYWwgY29ubmVjdGl2ZXMuIFdo YXQgdGhleSBkbyBpcyB0aGF0IGFueSBwcmV2aW91cyBzdW10Y2l0YSBhbmQgc3VtdGkgYXR0YWNo ZXMgdG8gYm90aCBzZWxicmkgYm91bmQgYnkgdGhlIGJyaWRpLXRhaWwgbG9naWNhbCBjb25uZWN0 aXZlLCBidXQgYW55IGZvbGxvd2luZyBzdW10aSBvciBzdW10Y2l0YSBvbmx5IGFwcGxpZXMgdG8g dGhlIGxhc3QgbWVudGlvbmVkOiBUaGUgYnJpZGkgc3BsaXRzIHVwIGZyb20gb25lIGhlYWQgdG8g dHdvIHRhaWxzLCB0byBzcGVhayBtZXRhcGhvcmljYWxseS4KClRoZSBmb3JtIG9mIGEgYnJpZGkt dGFpbCBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgZ2nigJlWLCB3aXRoIHRoZSBWIGZvciB0aGUgdm93 ZWwgb2YgdGhlIHRydXRoIGZ1bmN0aW9uLgoKSG93IGNvdWxkIHlvdSBjb3JyZWN0bHkgdHJhbnNs YXRlIHRoZSBFbmdsaXNoIHNlbnRlbmNlIHRvIExvamJhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTonJ21pIHB1IGtsYWt1IGdp4oCZZSBkdW5kYSBsZSBtaSBnZXJrdScnfn4KCgoKV2hhdCBkb2Vz ICcncm8gcmVtbmEgY3UgcGFsY2kgZ2nigJlvIHp1a3RlIGxvIHBhbGNpJycgbWVhbj8KCl9fJydw YWxjaScnX18geDEgaXMgZXZpbCBieSBzdGFuZGFyZCB4MgoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OuKAnFBlb3BsZSBhcmUgZXZpbCBpZiBhbmQgb25seSBpZiB0aGV5IGRvIGV2aWwgdGhpbmdzLuKA nX5+CgoKCkZ1cnRoZXJtb3JlLCB0aGVyZSBpcyBhIGZvcmV0aG91Z2h0IGFsbC1idXQgdGFucnUg aW50ZXJuYWwgZ3JvdXAgb2YgY29ubmVjdGVycyBtYWRlIGJ5IHByZWZpeGluZyDigJxn4oCdIGlu IGZyb250IG9mIHRoZSB0cnV0aCBmdW5jdGlvbiB2b3dlbC4g4oCcRm9yZXRob3VnaHTigJ0gaW4g dGhpcyBjb250ZXh0IG1lYW5zIHRoYXQgdGhleSBuZWVkIHRvIGdvIGluIGZyb250IG9mIHRoZSB0 aGluZ3MgdGhleSBjb25uZWN0LCBhbmQgdGh1cyB5b3UgbmVlZCB0byB0aGluayBhYm91dCB0aGUg Z3JhbW1hdGljYWwgc3RydWN0dXJlIG9mIHRoZSBzZW50ZW5jZSBiZWZvcmUgc2F5aW5nIGl0LiBB bGwtYnV0IHRhbnJ1IGludGVybmFsIG1lYW5zIHRoYXQgaXQgc2VydmVzIGJvdGggYXMgYSBjb25u ZWN0aXZlIGJldHdlZW4gc3VtdGksIGJyaWRpLCBzZWxicmkgYW5kIGJyaWRpLXRhaWxzLCBidXQg bm90IGJldHdlZW4gdHdvIHNlbGJyaSBvZiBvbmUgdGFucnUuIExldCBtZSBzaG93IHlvdSBob3cg aXQgd29ya3MsIHJld3JpdGluZyB0aGUgTG9qYmFuIHNlbnRlbmNlIGFib3ZlOgoKJydnbyBsbyBy ZW1uYSBjdSBwYWxjaSBnaSBsbyByZW1uYSBjdSB6dWt0ZSBsbyBwYWxjaScnCgpUaGUgZmlyc3Qg bG9naWNhbCBjb25uZWN0aXZlIGluIHRoZXNlIGtpbmRzIG9mIGNvbnN0cnVjdHMgYXJlIHdoYXQg Y2FycmllcyB0aGUgdm93ZWwgd2hpY2ggc2lnbmFsIHdoYXQgdHJ1dGggZnVuY3Rpb24gaXMgYmVp bmcgdXNlZC4gVGhlIHNlY29uZCBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgYWx3YXlzICcnZ2knJywg YW5kIGxpa2UgJycuaScnLCBpdCBoYXMgbm8gdHJ1dGggZnVuY3Rpb24uIEl0IHNpbXBseSBzZXJ2 ZXMgdG8gc2VwYXJhdGUgdGhlIHR3byB0ZXJtcyBiZWluZyBjb25uZWN0ZWQuIElmIHlvdSB3YW50 IHRvIG5lZ2F0ZSB0aGUgZmlyc3Qgb3Igc2Vjb25kIHNlbnRlbmNlLCBhICcnbmFpJycgaXMgc3Vm Zml4ZWQgdG8gZWl0aGVyIHRoZSBmaXJzdCAoZm9yIHRoZSBmaXJzdCBzZW50ZW5jZSkgb3Igc2Vj b25kIChmb3IgdGhlIHNlY29uZCBzZW50ZW5jZSkgbG9naWNhbCBjb25uZWN0aXZlLgoKUHJvdmlk ZWQgdGhhdCB0aGUgY29uc3RydWN0cyBhcmUgdGVybWluYXRlZCBwcm9wZXJseSwgaXQgaGFzIHJl bWFya2FibGUgZmxleGliaWxpdHksIGFzIHRoZSBmb2xsb3dpbmcgZmV3IGV4YW1wbGVzIGRlbW9u c3RyYXRlOgoKJydtaSBnbyBrbGFtYSBnaSBjYWR6dSB2YXUgbGUgbWkgemRhbmknJyDigJxJIGdv LCBpZiBhbmQgb25seSBpZiB3YWxrLCB0byBteSBob21l4oCdIG9yIOKAnEkgY2FuIG9ubHkgZ28g dG8gbXkgaG9tZSBieSB3YWxraW5nLuKAnSBOb3RpY2UgdGhhdCB0aGUgJyd2YXUnJyBpcyBuZWVk ZWQgdG8gbWFrZSBsZSBtaSB6ZGFuaSBhcHBseSB0byBib3RoICcnY2FkenUnJyBhbmQgJydrbGFt YScnLgoKJydzZSBndSBkbyBnaSBuYWkgbWkgYmFqcmEgbGUgZG8gY2t1bGUnJyDigJxXaGV0aGVy IG9yIG5vdCB5b3UsIHRoZW4gbm90IEksIHJ1biB0byB5b3VyIHNjaG9vbOKAnSBvciDigJxJIHdv buKAmXQgcnVuIHRvIHlvdXIgc2Nob29sIG5vIG1hdHRlciBpZiB5b3UgZG8gb3Igbm904oCdCgoK ClRoZSB0YW5ydS1pbnRlcm5hbCBlcXVpdmFsZW50IG9mIGdWIGlzIGd14oCZVi4gVGhlc2UgYXJl IGV4YWN0bHkgdGhlIHNhbWUsIGV4Y2VwdCB0aGF0IHRoZXkgYXJlIGV4Y2x1c2l2ZWx5IHRhbnJ1 LWludGVybmFsLCBhbmQgdGhhdCB0aGV5IGJpbmQgYSBzZWxicmkgdG8gdGhlICcnZ2knJyB0aWdo dGVyIHRoYW4gbm9ybWFsIHRhbnJ1LWdyb3VwaW5nLCBidXQgd2Vha2VyIHRoYW4gZXhwbGljaXQg YmluZGluZy1zdW10aToKCicnbGEgeGFuei5rcnQuIGd14oCZZSBtZXJrbyBnaSBkb3RjbyBuYW5t dScnIGlzIGVxdWl2YWxlbnQgdG8KCicnbGEgeGFuei5rcnQuIG1lcmtvIGplIGRvdGNvIG5hbm11 JycKCgoKQW5kIHNvIHlvdeKAmXZlIHJlYWQgcGFnZSB1cCBhbmQgcGFnZSBkb3duIGp1c3QgdG8g Z2V0IHRoZSBuZWNlc3Nhcnkga25vd2xlZGdlIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gbGVhcm4g aG93IHRvIGFzayDigJxXb3VsZCB5b3UgbGlrZSBtaWxrIG9yIHN1Z2FyIGluIHlvdXIgY29mZmVl P+KAnSBpbiBMb2piYW4uIFNpbXBseSBwbGFjZSBhIHF1ZXN0aW9uIGxvZ2ljYWwgY29ubmVjdGl2 ZSBpbnN0ZWFkIG9mIGFub3RoZXIgbG9naWNhbCBjb25uZWN0aXZlLCBhbmQgbGlrZSAnJ21hJycs IGl0IGFza3MgdGhlIGxpc3RlbmVyIHRvIGZpbGwgaW4gYSBjb3JyZWN0IHJlc3BvbnNlLiBVbmZv cnR1bmF0ZWx5LCB0aGVzZSBxdWVzdGlvbi1sb2dpY2FsIGNvbm5lY3RpdmVzIGRvbuKAmXQgYWx3 YXlzIG1hdGNoIHRoZSBtb3JwaG9sb2dpY2FsIHBhdHRlcm4gb2YgdGhlIGxvZ2ljYWwgY29ubmVj dGl2ZXMgdGhleSBhc2sgZm9yOgoKX18nJ2ppJydfXyBMb2dpY2FsIGNvbm5lY3RpdmUgcXVlc3Rp b246IEFza3MgZm9yIGEgc3VtdGkgbG9naWNhbCBjb25uZWN0aXZlIChBKQoKX18nJ2pl4oCZaScn X18gTG9naWNhbCBjb25uZWN0aXZlIHF1ZXN0aW9uOiBBc2tzIGZvciBhIHRhbnJ1LWludGVybmFs IHNlbGJyaSBsb2dpY2FsIGNvbm5lY3RpdmUgKEpBKQoKX18nJ2dp4oCZaScnX18gTG9naWNhbCBj b25uZWN0aXZlIHF1ZXN0aW9uOiBBc2tzIGZvciBhIGJyaWRpLXRhaWwgbG9naWNhbCBjb25uZWN0 aXZlIChHSWhBKQoKX18nJ2dl4oCZaScnX18gTG9naWNhbCBjb25uZWN0aXZlIHF1ZXN0aW9uOiBB c2tzIGZvciBhIGZvcmV0aG91Z2h0IGFsbC1idXQgdGFucnUgaW50ZXJuYWwgbG9naWNhbCBjb25u ZWN0aXZlIChHQSkKCl9fJydndeKAmWknJ19fIExvZ2ljYWwgY29ubmVjdGl2ZSBxdWVzdGlvbjog QXNrcyBmb3IgYSBmb3JldGhvdWdodCBvbmx5IHRhbnJ1IGludGVybmFsIGxvZ2ljYWwgY29ubmVj dGl2ZSAoR1VoQSkKCgoKU28uLi4gaG93IHdvdWxkIHlvdSBhc2sgaWYgdGhlIHBlcnNvbnMgd2Fu dHMgbWlsayBvciBzdWdhciBpbiBoZXIgY29mZmVlPwoKX18nJ2xhZHJ1JydfXyB4MSBpcy9jb250 YWlucyBtaWxrIGZyb20gc291cmNlIHgyCgpfXycnc2FrdGEnJ19fIHgxIGlzL2NvbnRhaW5zIHN1 Z2FyIGZyb20gc291cmNlIHgyIG9mIGNvbXBvc2l0aW9uIHgzCgoKClBvc3NpYmxlIGFuc3dlcjog fn5ncmV5LGdyZXk6JydzYWt0YSBqZeKAmWkgbGFkcnUgbGUgZG8gY2thZmknJyB0aG91Z2ggSSBn dWVzcyBzb21ldGhpbmcgbW9yZSBFbmdsaXNoIGFuZCBsZXNzIGVsZWdhbnQgY291bGQgYWxzbyBz dWZmaWNlIGxpa2UgJydkbyBkamljYSBsZW51IGxvIHNha3RhIGppIGxvIGxhZHJ1IGN1IG5lbnJp IGxlIGRvIGNrYWZpJyd+fgoKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHR3ZW50eS1zaXgg KG5vbi1sb2dpY2FsIGNvbm5lY3RpdmVzKQoKVGhlIHdvcmQgImxvZ2ljYWwiIGluICJsb2dpY2Fs IGNvbm5lY3RpdmUiIHJlZmVycyB0byB0aGUgYXNzb2NpYXRpb24gYSBsb2dpY2FsIGNvbm5lY3Rp dmUgaGFzIHdpdGggYSB0cnV0aCBmdW5jdGlvbi4gTm90IGFsbCB1c2VmdWwgY29ubmVjdGl2ZXMg Y2FuIGJlIGRlZmluZWQgdGhyb3VnaCBhIHRydXRoIGZ1bmN0aW9uLCBob3dldmVyLCBhbmQgc28g dGhlcmUgYXJlIG90aGVyIGNvbm5lY3RpdmVzIGJlc2lkZSB0aGUgbG9naWNhbCBvbmVzLgoKVGhl IG1lYW5pbmcgb2YgYSBsb2dpY2FsIGNvbm5lY3RpdmUgaXMgZGVmaW5lZCB0aGUgc2FtZSBhcyB0 d28gZGlmZmVyZW50IGJyaWRpIGNvbm5lY3RlZCB3aXRoIHRoYXQgbG9naWNhbCBjb25uZWN0aXZl LiBGb3IgaW5zdGFuY2UsICcnbWkgbml0Y3UgZG8gLmEgbGEgLmRqYW4uJycgaXMgZGVmaW5lZCB0 byBiZSBlcXVpdmFsZW50IHRvICcnbWkgbml0Y3UgZG8gLmkgamEgbWkgbml0Y3UgbGEgLmRqYW4u JycuIFRoaXMgZGVmaW5pdGlvbiBpcyB1c2VmdWwgdG8gYmVhciBpbiBtaW5kLCBiZWNhdXNlIGl0 IGltcGxpZXMgdGhhdCBzb21ldGltZXMsIHN1bXRpIGNhbm5vdCBiZSBjb25uZWN0ZWQgd2l0aCBs b2dpY2FsIGNvbm5lY3RpdmVzIHdpdGhvdXQgY2hhbmluZyB0aGUgbWVhbmluZy4gQ29uc2lkZXIg dGhlIHNlbnRlbmNlOiAiSmFjayBhbmQgSm9lIHdyb3RlIHRoaXMgcGxheS4iIE9uZSBhdHRlbXB0 IGF0IGEgdHJhbnNsYXRpb24gd291bGQgYmU6ICcndGkgZHJhY2kgZmkgbGEgLmRqYWsuIGUgbGEg LmRqb3VzLicnCgpfXycnZHJhY2knJ19fIHgxIGlzIGEgZHJhbWEvcGxheSBhYm91dCB4MiBieSB3 cml0ZXIvZHJhbWF0aXN0IHgzIGZvciBhdWRpZW5jZSB4NCB3aXRoIGFjdG9ycyB4NQoKCgpUaGUg cHJvYmxlbSB3aXRoIHRoaXMgdHJhbnNsYXRpb24gaXMgdGhhdCBpdCBtZWFucyAnJ3RpIGRyYWNp IGxhIC5kamFrLiBpamUgdGkgZHJhY2kgbGEgLmRqb3VzLicnLCB3aGljaCBpcyBub3QgcmVhbGx5 IHRydWUuIE5laXRoZXIgSmFjayBub3IgSm9lIHdyb3RlIGl0LCB0aGV5IGRpZCBzbyB0b2dldGhl ci4gV2hhdCB3ZSB3YW50IGhlcmUgaXMgb2YgY291cnNlIGEgbWFzcywgYW5kIHNvbWUgd2F5IHRv IGpvaW4gSmFjayBhbmQgSm9lIGluIG9uZSBtYXNzLiBUaGlzIGhhcyBsaXR0bGUgdG8gZG8gd2l0 aCBhIHRydXRoIGZ1bmN0aW9uIHNvIHdlIG11c3QgdXNlIGEgbm9uLWxvZ2ljYWwgY29ubmVjdGl2 ZSwgd2hpY2ggYXJlIG9mIHNlbG1hJ28gSk9JLiBXZSdsbCByZXR1cm4gdG8gdGhpcyBKYWNrIGFu ZCBKb2UtcHJvYmxlbSBpbiBhIGxpdHRsZSAtIGZpcnN0OiBGb3VyIG9mIHRoZSBrbm93biBKT0k6 CgoKCnx8VGhlIExvamJhbiBjb25uZWN0aXZlOnwnJ2NlJyd8JydjZSdvJyd8Jydqb2knJ3wnJ2pv J3UnJwoKSm9pbnMgc3VtdGkgYW5kIGZvcm1zIGE6fHNldHxzZXF1ZW5jZXxtYXNzfGdyb3VwIG9m IGluZGl2aWR1YWxzfHwKClRoZSBmdW5jdGlvbnMgb2YgdGhlc2Ugd29yZHMgYXJlIHNpbXBsZTog JydsbydpIHJlbW5hIGpvJ3UgbG8naSBnZXJrdScnIGNvbnNpZGVycyBib3RoIHRoZSBzZXQgb2Yg aHVtYW5zIGFuZCB0aGUgc2V0IG9mIGRvZ3MgZGlzdHJpYnV0aXZlbHkgKGFzIGluZGl2aWR1YWxz KS4gUmVtZW1iZXIgZnJvbSBsZXNzb24gdHdlbnR5LXR3byAocXVhbnRpZmllcnMpIHRoYXQgImRp c3RyaWJ1dGl2aXR5IiBtZWFucyB0aGF0IHdoYXQgaXMgdHJ1ZSBmb3IgdGhlIGdyb3VwIGlzIGFs c28gdHJ1ZSBmb3IgZWFjaCBvZiB0aGUgaW5kaXZpZHVhbHMgYWxvbmUuIFNpbWlsYXJseSAnJ2xv aSBybyBnaXNtdSBjZSdvIGxvaSBybyBsdWp2byBjZSdvIGxvaSBybyBmdSdpdmxhJycgaXMgYSBz ZXF1ZW5jZSBjb25zaXN0aW5nIG9mIHRoZSBtYXNzIG9mIGFsbCBnaXNtdSwgZm9sbG93ZWQgYnkg dGhlIG1hc3Mgb2YgYWxsIGx1anZvLCBmb2xsb3dlZCBieSB0aGUgbWFzcyBvZiBhbGwgZnUnaXZs YS4KCkFzIHdpdGggYWxsIG9mIHRoZSBKT0kgd2hpY2ggaGFzIGFuIGluaGVyZW50IG9yZGVyLCAn J3NlJycgbWF5IGJlIHB1dCBiZWZvcmUgJydjZSdvJycgdG8gaW52ZXJzZSB0aGUgb3JkZXI6ICJB ICcnY2UnbycnIEIiIGlzIHRoZSBzYW1lIGFzICJCIHNlICcnY2UnbycnIEEiLgoKCgpIb3cgY2Fu IHlvdSBjb3JyZWN0bHkgdHJhbnNsYXRlICJKYWNrIGFuZCBKb2Ugd3JvdGUgdGhpcyBwbGF5Ij8K CkFuc3dlcjogfn5ncmV5LGdyZXk6ICcndGkgZHJhY2kgZmkgbGEgLmRqYWsuIGpvaSBsYSAuZGpv dXMuJyd+fiAKCgoKVGhlIGNtYXZvIG9mIEpPSSBhcmUgdmVyeSBmbGV4aWJsZTogVGhleSBjYW4g YWN0IGJvdGggYXMgc3VtdGkgY29ubmVjdGl2ZXMgYW5kIHRhbnJ1LWludGVybmFsIGNvbm5lY3Rp dmVzLCBzbyB0aGV5IGNhbiBiZSB1c2VkIHRvIGNvbm5lY3Qgc3VtdGksIHNlbGJyaSBhbmQgYnJp ZGkuIFRoaXMgZmxleGliaWxpdHkgbWVhbnMgdGhhdCBvbmUgbXVzdCBiZSBjYXJlZnVsIHRvIHVz ZSBmYSdvcm1hJ28gY29ycmVjdGx5IHdoZW4gdXNpbmcgYSBKT0kuIAoKV2hhdCBpcyB3cm9uZyB3 aXRoIHRoZSBicmlkaSAnJ2xvIGRvdGNvIGpvJ3UgbWkgY3Uga2xhbWEgbGEgZG90Y28gZ3VnZGUn Jz8KCkFuc3dlcjogfn5ncmV5LGdyZXk6ICcnam8ndScnIGlzIHB1dCBhZnRlciBhIHNlbGJyaSwg c28gaXQgZXhwZWN0cyBhIHNlbGJyaSBhZnRlciBpdCB0byBjb25uZWN0IHRvLCBidXQgbm9uZSBp cyBmb3VuZC4gSGFkICBhICcna3UnJyBiZWVuIHByZXNlbnQgYmVmb3JlIHRoZSBjb25uZWN0aXZl LCBpdCB3b3VsZCBoYXZlIGJlZW4gZ3JhbW1hdGljYWx+fgoKCgpJZiBzZXZlcmFsIEpPSSBhcmUg dXNlZCwgJydibycnIGFuZC9vciAnJ2tlJycgbWF5IGJlIHVzZWQgdG8gb3ZlcnJpZGUgdGhlIHVz dWFsIGxlZnQtZ3JvdXBpbmc6ICcnbWkgam9pIGRvIGNlJ28gbGEgLmRqYWsuIGpvaSBibyBsYSAu ZGpvdXMuIGN1IHB1J28gY2knZXJrZWkgZGFtYmEgbGVpIHh1bnJlJycgIk1lIGFuZCB5b3UsIGFu ZCB0aGVuIEphY2sgYW5kIEpvZSBhcmUgYWJvdXQgdGhlIHBsYXkgYWdhaW5zdCB0aGUgcmVkcyIu IENvbnRyYXN0IHdpdGggJydtaSBqb2kgZG8gY2UnbyBsYSAuZGphay4gam9pIGxhIC5kam91cy4g Y3UgcHUnbyBjaSdlcmtlaSBkYW1iYSBsZWkgeHVucmUnJyAtICJGaXJzdCBtZSBhbmQgeW91LCB0 aGVuIEphY2sgd2lsbCB0b2dldGhlciB3aXRoIEpvZSBwbGF5IGFnYWluc3QgdGhlIHJlZHMiLiAK CkNvbm5lY3RpbmcgYnJpZGkgd2l0aCBKT0kgY2FuIG1ha2Ugc29tZSBpbnRlcmVzdGluZyBpbXBs aWNhdGlvbnMgb2YgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoZSBicmlkaTogJydsYSAuZGph ay4gbW9yc2kgcmknYSBsbyBudSByaSBkenVzb2kgLmkgam9pIGxlIGplbWphJ2EgcG8gcmkgY3Ug YmVibmEnJyAtICJKYWNrIGlzIGRlYWQgYmVjYXVzZSBoZSB3YXMgYSBpbmZhbnRyeSBzb2xkaWVy IGFuZCBoaXMgZ2VuZXJhbCB3YXMgYW4gaWRpb3QiLCBpbXBseWluZyB0aGF0IHRoZXNlIHR3byBi cmlkaSBtYXNzZWQgdG9nZXRoZXIgd2FzIHRoZSBwaHlzaWNhbCBjYXVzZSBvZiBoaXMgZGVhdGg6 IEhhZCBoZSBvbmx5IGJlZW4gaW4gYW4gYXJtb3JlZCB2ZWhpY2xlIG9yIHdpdGggYSBjb21wZXRl bnQgY29tbWFuZGVyLCBoZSBtaWdodCBoYWQgc3Vydml2ZWQuCgpfXycnZHp1c29pJydfXyB4MSBp cyBhbiBpbmZhbnRyeSBzb2xkaWVyIG9mIGFybXkgeDIKCl9fJydqZW1qYSdhJydfXyB4MSBpcyBh IGdlbmVyYWwgb2YgYXJteSB4MiBpbiBmdW5jdGlvbiB4MwoKX18nJ2JlYm5hJydfXyB4MSBpcyBm b29saXNoL2lkaW90aWMgaW4gcHJvcGVydHkgeDIKCgoKTm9uLWxvZ2ljYWwgY29ubmVjdGl2ZXMg bWF5IGFsc28gYmUgbmVnYXRlZCB3aXRoICcnbmFpJycsIGluZGljYXRpbmcgdGhhdCBzb21lIG90 aGVyIGNvbm5lY3RpdmUgaXMgYXBwcm9wcmlhdGU6ICcnbG8gZGphY3UgY2UnbyBuYWkgLmUnbyBs byBsYWRydSBjdSBjYXZ5ZmxlIGZpIGxlIG1pIHRjYXRpJycgLSAiUGxlYXNlIGRvbid0IHBvdXIg Zmlyc3Qgd2F0ZXIgdGhlbiBtaWxrIGluIG15IHRlYSIuIFRoaXMsIG9mIGNvdXJzZSwgc2F5cyBu b3RoaW5nIGFib3V0IHdoaWNoIGNvbm5lY3RpdmUgaXMgYXBwcm9wcmlhdGUgLSBvbmUgbWlnaHQg Z3Vlc3MgJydzZSBjZSdvJycgKGZpcnN0IG1pbGssIHRoZW4gd2F0ZXIpLCBvbmx5IHRvIGZpbmQg b3V0IHRoYXQgJycuZSBuYWknJyAob25seSB3YXRlciwgbm8gbWlsayBhdCBhbGwpIHdhcyB0aGUg Y29ycmVjdCBvbmUuCgpfXycnY2F2eWZsZScnX18geDEsIGNvbnNpc3Rpbmcgb2YgeDIsIGZsb3dz IGludG8geDMgZnJvbSB4NAoKSnVzdCBsaWtlIGEgbG9naWNhbCBjb25uZWN0aXZlIGlzIGEgcGxh dXNpYmxlIG5lZ2F0aW9uIG9mIGEgbm9uLWxvZ2ljYWwgY29ubmVjdGl2ZSwgYW5zd2VycyB0byBx dWVzdGlvbnMgb2YgdGhlIHR5cGUgJydqaScnIG9yICcnamUnaScnIGNhbiBiZSBib3RoIGxvZ2lj YWwgYW5kIG5vbi1sb2dpY2FsOiBBOiAnJ2xhZHJ1IGplJ2kgc2FrdGEgbGUgZG8gY2thZmknJyBC OiAnJ3NlIGNlJ28nJyAoIk1pbGsgb3Igc3VnYXIgaW4geW91IGNvZmZlZT8iICJGaXJzdCB0aGUg bGF0dGVyLCB0aGVuIHRoZSBmb3JtZXIiKS4gSW4gdGhpcyBjYXNlICcnY2UnJyB3b3VsZCBtYWtl IG5vIHNlbnNlIGF0IGFsbCwgc2luY2Ugc2V0cyBjYW4ndCBiZSBjb250YWluZWQgaW4gY29mZmVl LCBhbmQgJydqb2knJyAoYm90aCBtaXhlZCB0b2dldGhlcikgd291bGQgbWVhbiB0aGUgc2FtZSBh cyAnJ2pvJ3UnJyAoYm90aCBvZiB0aGVtKSwgdW5sZXNzIHRoZSByZXNwb25kYW50IHByZWZlcnJl ZCB1bm1peGVkIHN1Z2FyIGluIGhpcyBjb2ZmZWUuCgoKClRoZSBmaWZ0aCBKT0kgSSBwcmVzZW50 IGhlcmUgaXMgYSBiaXQgb2YgYW4gb2RkYmFsbDoKCl9fJydmYSd1JydfXyBOb24tbG9naWNhbCBj b25uZWN0aXZlOiBVbm1peGVkIG9yZGVyZWQgZGlzdHJpYnV0aW9uIChBIGFuZCBCLCByZXNwZWN0 aXZlbHkpCgpXaGVuIG9ubHkgb25lICcnZmEndScnIGlzIHBsYWNlZCB3aXRoaW4gYSBicmlkaSAo b3Igc2V2ZXJhbCBicmlkaSBjb25uZWN0ZWQgdG9nZXRoZXIgd2l0aCBjb25uZWN0b3JzKSwgJydm YSd1JycgbWF5IGJlIGFzc3VtZWQgdG8gYmUgaWRlbnRpY2FsIHRvICcnam8ndScnLiBXaGVuIHNl dmVyYWwgJydmYSd1JycgaXMgdXNlZCB3aXRoaW4gb25lIGJyaWRpLCBob3dldmVyLCB0aGUgY29u c3RydWN0cyBiZWZvcmUgJydmYSd1JycgZWFjaCBhcHBseSB0byBlYWNoIG90aGVyLCBhbmQgdGhl IGNvbnN0cnVjdHMgYWZ0ZXIgJydmYSd1JycgZWFjaCBhcHBseSB0byBlYWNoIG90aGVyLiBMZXQn cyBoYXZlIGFuIGV4YW1wbGU6CgonJ21pIGZhJ3UgZG8gcnVza28gZmEndSBrYWRubycnIC0gIllv dSBhbmQgSSBhcmUgUnVzc2lhbiBhbmQgQ2FuYWRpYW4iLCBpbXBseWluZyB0aGF0ICcnbWknJyBn b2VzIHdpdGggJydydXNrbycnIGFuZCAnJ2RvJycgZ29lcyB3aXRoICcna2Fkbm8nJywgYW5kIGlt cGx5aW5nIG5vdGhpbmcgYWJvdXQgYW55IG90aGVyIGNvbWJpbmF0aW9uLiBPZiBjb3Vyc2UsIGlu IHRoaXMgZXhhbXBsZSwgaXQgd291bGQgYmUgbXVjaCBlYXNpZXIgdG8gc2F5ICcnbWkgcnVza28g LmkgZG8ga2Fkbm8nJy4KCgoKVGhlc2UgbGFzdCB0aHJlZSBKT0kgY29ubmVjdHMgdHdvIHNldHMg dG8gbWFrZSBuZXcgc2V0czoKCl9fJydqbydlJydfXwlBIHVuaW9uIEIKCl9fJydrdSdhJydfXwlB IGludGVyc2VjdGlvbiBCCgpfXycncGkndSAnJ19fCUNyb3NzIHByb2R1Y3Qgb2YgQSBhbmQgQgoK CgpUaGVzZSBhcmUgcHJvYmFibHkgbm90IHZlcnkgdXNlZnVsIGZvciB0aGUgYXZlcmFnZSBMb2pi YW5pc3QsIGJ1dCBJIG1pZ2h0IGFzIHdlbGwgaW5jbHVkZSB0aGVtIGhlcmUuCgpUaGUgZmlyc3Qg b25lLCAnJ2pvJ2UnJywgbWFrZXMgYSBuZXcgc2V0IGZyb20gdHdvIHNldHMuIFRoaXMgbmV3IHNl dCBjb250YWlucyBvbmx5IHRob3NlIG1lbWJlcnMgd2hpY2ggYXJlIGluIGJvdGggc2V0cy4KCkEg c2V0IG1hZGUgd2l0aCAnJ2t1J2EnJyBjb250YWlucyBhbGwgdGhlIG1lbWJlcnMgb2Ygc2V0IEEg YW5kIHRob3NlIG9mIHNldCBCLiBJZiBhbnl0aGluZyBpcyBhIG1lbWJlciBvZiBib3RoIHNldHMs IHRoZXkgYXJlIG5vdCBjb3VudGVkIHR3aWNlLgoKJydwaSd1JycgaXMgYSBsaXR0bGUgbW9yZSBj b21wbGljYXRlZC4gQSBzZXQgIkEgJydwaSd1JycgQiIgY29udGFpbnMgYWxsIHRoZSBwb3NzaWJs ZSBjb21iaW5hdGlvbnMgb2YgImEgJydjZSdvJycgYiIsIHdoZXJlIGEgaXMgYSBtZW1iZXIgb2Yg QSBhbmQgYiBpcyBhIG1lbWJlciBvZiBCLiBJdCBpcyB0aHVzIGEgc2V0IG9mIHNlcXVlbmNlcyBv ZiBtZW1iZXJzLiBJZiwgZm9yIGluc3RhbmNlLCBzZXQgQSBjb250YWluZWQgdGhlIG1lbWJlcnMg cCBhbmQgcSwgYW5kIHNldCBCIGNvbnRhaW5lZCBtZW1iZXJzIGYgYW5kIGcsIHRoZW4gQSAnJ3Bp J3UnJyBCIHdvdWxkIGJlIGEgc2V0IGNvbnNpc3Rpbmcgb2YgdGhlIGZvdXIgbWVtYmVycyBwICcn Y2UnbycnIGYsIHAgJydjZSdvJycgZywgcSAnJ2NlJ28nJyBmIGFuZCBxICcnY2UnbycnIGcuCgoK CiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gdHdlbnR5LXNldmVuIChsb2piYW4gbG9naWM6IGRh LCBideKAmWEsIHpv4oCZdSBhbmQgdGVybXMpCgpUaGUgc3RhdGVkIHRvcGljIG9mIHRoaXMgbGVz c29uIG5lZWRzIHNvbWUganVzdGlmaWNhdGlvbjogVGhpcyBsZXNzb24gaXMgbm90IHJlYWxseSBh Ym91dCBob3cgZG8gdG8gbG9naWMgaW4gTG9qYmFuLCBzaW5jZSBmaXJzdGx5LCBsb2dpYyBpcyBw cmVzdW1hYmx5IHRoZSBzYW1lIGluIGFsbCBsYW5ndWFnZXMsIGFuZCBzZWNvbmRseSwgYWN0dWFs bHkgdGVhY2hpbmcgbG9naWMgd291bGQgYmUgdG90YWxseSBpbXByYWN0aWNhbCBpbiBvbmUgc2lu Z2xlIGxlc3Nvbi4gUmF0aGVyLCB0aGlzIGxlc3NvbiBpcyBleHBsYWlucyBzb21lIGNvbnN0cnVj dHMgd2hpY2ggcmVzZW1ibGVzIHRob3NlIHdoaWNoIGxvZ2ljaWFucyB1c2UuIEl0IHR1cm5zIG91 dCB0aGV5IGhhdmUgYSByZW1hcmthYmxlIHdpZGUgcmFuZ2Ugb2YgdXNlcyBpbiBMb2piYW4uCgoK CkdldHRpbmcgaW52b2x2ZWQgaW4gdGhlIG1vcmUgb2JzY3VyZSBkZXRhaWxzIG9mIHRoZXNlIGxv Z2ljYWwgY29uc3RydWN0cyBjYW4gYmUgbWluZC13YXJwaW5nbHkgZGlmZmljdWx0LCBhbmQgdGhl cmUgd2lsbCBhbHdheXMgYmUgc29tZSBkaXNhZ3JlZW1lbnQgaW4gdGhlIGNvcm5lcnMgb2YgdGhp cyBwYXJ0IG9mIHRoZSBsYW5ndWFnZS4KCgoKTGVhcm5pbmcgdGhlc2UgbG9naWNhbCBjb25zdHJ1 Y3RzIHJlcXVpcmVzIG9uZSB0byBsZWFybiBhIGJpdCBhYm91dCBjb25zdHJ1Y3RzIHdoaWNoIGFy ZSBub3QgbG9naWNhbCBpbiBuYXR1cmUuIExldCdzIGJlZ2luIHdpdGggJyd6byd1JycKCgoKX18n J3pvJ3UnJ19fIFNlcGFyYXRlcyBwcmVuZXggZnJvbSBicmlkaQoKCgpCZWZvcmUgYW55ICcnem8n dScnIGlzIHRoZSBwcmVuZXgsIGFmdGVyICcnem8ndScnIGlzIHRoZSBicmlkaS4gSW5mb3JtYWxs eSwgYSBwcmVuZXggaXMgYSBwbGFjZSBpbiBmcm9udCBvZiB0aGUgYnJpZGksIHdoZXJlIHlvdSBw dXQgYSBidW5jaCBvZiB0ZXJtcy4gQSB0ZXJtIGlzIGFuIEVuZ2xpc2ggd29yZCBnaXZlbiB0byBz b21lIGtpbmRzIG9mIExvamJhbiBjb25zdHJ1Y3RzOiBTdW10aSwgc3VtdGNpdGEgd2l0aCBvciB3 aXRob3V0IHN1bXRpIGF0dGFjaGVkLCAnJ25hIGt1JycgYW5kIGFuIGFib21pbmF0aW9uIGNhbGxl ZCBfX3Rlcm1zZXRzX18sIHdoaWNoIEkgcmVmdXNlIHRvIGluY2x1ZGUgaW4gdGhlc2UgbGVzc29u cy4gVGhlIHByZW5leCBpcyBub3QgcGFydCBvZiB0aGUgYnJpZGksIGJ1dCBhbnkgdGVybXMgcHV0 IGluc2lkZSBpdCBnaXZlcyB1cyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJpZGkuIE9uZSBjYW4s IGZvciBleGFtcGxlLCB1c2UgaXQgdG8gc3RhdGUgYSB0b3BpYyBhcyBzaG93biB0aHVzOgoKCgon J2xvIHBhbXBlJ28gamUgbmFpIHNwZW5pIHpvJ3UgbWkgbmEgenVucmUnJyAtICJDb25jZXJuaW5n IGxvdmVycyB3aG8gYXJlIG5vdCBzcG91c2VzOiBJIGRvIG5vdCBhcHByb3ZlIi4gVGhlIGJlbmVm aXRzIG9mIGtpbmQgb2Ygc2VudGVuY2Ugc3RydWN0dXJpbmcgaXMgcXVlc3Rpb25hYmxlLCBidXQg aXQncyBhbHdheXMgZ29vZCB0byBoYXZlIHNvbWUgdmFyaWF0aW9uIHRvIHBsYXkgd2l0aC4gRnVy dGhlcm1vcmUsIGNvbnN0cnVjdGluZyBzZW50ZW5jZXMgdGhpcyB3YXkgcmVzZW1ibGVzIE1hbmRh cmluIChhbmQgb3RoZXIgbGFuZ3VhZ2VzKSBjbG9zZWx5LCBtZWFuaW5nIGl0IG1pZ2h0IHNlZW0g bW9yZSBpbnR1aXRpdmUgZm9yIHNwZWFrZXJzIG9mIHRoYXQgbGFuZ3VhZ2UuCgpfXycncGFtcGUn bycnX18geDEgaXMgYSBsb3ZlciBvZiB4MgoKX18nJ3phbnJ1JydfXyB4MSBhcHByb3ZlcyBvZiB4 MiAocGxhbiwgZXZlbnQgb3IgYWN0aW9uKQoKCgpPZiBjb3Vyc2UsIHRoZSByZWxhdGlvbiBiZXR3 ZWVuIHRoZSB0ZXJtcyBpbiB0aGUgcHJlbmV4IGFuZCB0aGUgYnJpZGkgaXMgdmFndWUuIE9uZSBj YW4gaW1hZ2luZSBhbnkgc3VtdGkgaW4gdGhlIHByZW5leCBiZWFyaW5nIHRoZSBzYW1lIHJlbGV2 YW5jZSB0byB0aGUgYnJpZGkgYXMgaWYgdGhleSB3ZXJlIHB1dCBpbiB0aGUgYnJpZGkgYWZ0ZXIg YSAnJ2RvJ2UnJyBzdW10Y2l0YSwgYW5kIGFueSBzdW10Y2l0YSBpbiB0aGUgcHJlbmV4IGRvaW5n IHByZXR0eSBtdWNoIHRoZSBzYW1lIGFzIGlmIHRoZXkgd2VyZSBpbiB0aGUgYnJpZGkuIEl0IGlz IHF1aXRlIHBvc3NpYmxlIHRvIHB1dCB0ZXJtcyBpbiBwcmVuZXhlcyB3aXRob3V0IGFueSBjbGVh ciBoaW50cyBhcyB0byBob3cgdGhlIHRlcm0gbWF5IHJlbGF0ZSB0byB0aGUgYnJpZGk6CgonJ2xl IHZpIGdlcmt1IHpvJ3UgbWkgdG8nZSBuZWxjaSBsbyBjaWRqcnBpdHNhJycgLSAiQ29uY2Vybmlu ZyB0aGlzIGRvZyBoZXJlOiBJIGRpc2xpa2UgcGl6emEuIiBJdCBsZWF2ZXMgeW91IGd1ZXNzaW5n IGFib3V0IHRoZSByZWFzb24gZm9yIG1lbnRpb25pbmcgdGhlIGRvZy4KCl9fJydjaWRqcnBpdHNh JydfXyB4MSBpcyBwaXp6YSB3aXRoIHRvcHBpbmcvaW5ncmVkaWVudHMgeDIKCgoKSWYgdGhlIHBy ZW5leCBjb250YWlucyAnJ25hIGt1JycsIGl0J3MgcHJldHR5IHN0cmFpZ2h0IGZvcndhcmQ6IFRo ZSBlbnRpcmUgYnJpZGkgaXMgbmVnYXRlZCwganVzdCBhcyBpZiB0aGUgYnJpZGkgaXRzZWxmIGJl Z2FuIHdpdGggJyduYSBrdScnLgoKCgpTbyBob3cgbG9uZyBkb2VzIGEgcHJlbmV4IGxhc3Q/IEl0 IGxhc3RzIHVudGlsIHRoZSBmb2xsb3dpbmcgYnJpZGkgaXMgdGVybWluYXRlZC4gSWYgdGhhdCBp cyBub3QgZGVzaXJlZCwgdGhlcmUgYXJlIHR3byB3YXlzIHRvIG1ha2UgaXQgYXBwbHkgdG8gc2V2 ZXJhbCBicmlkaTogT25lIGlzIHRvIHB1dCBzb21lIGtpbmQgb2YgY29ubmVjdGl2ZSBhZnRlciB0 aGUgJycuaScnIHNlcGFyYXRpbmcgdGhlIGJyaWRpLCBhbmQgYW5vdGhlciBtZXRob2QgaXMgdG8g c2ltcGx5IGluY2x1ZGUgYWxsIG9mIHRoZSB0ZXh0IGluICcndHUnZScnIC4uLiAnJ3R1J3UnJy1i cmFja2V0cy4gVGhlc2UgYnJhY2tldHMgd29yayBwcmV0dHkgbXVjaCBieSBnbHVpbmcgYWxsIHRo ZSBicmlkaSB0b2dldGhlciBhbmQgbWFrZXMgYWxsIHNvcnRzIG9mIGNvbnN0cnVjdCBhcHBseSB0 byBzZXZlcmFsIGJyaWRpLgoKCgpOb3cgdGhhdCB3ZSBjb3ZlcmVkICcnem8ndScnLCB0aGUgZmly c3QgImxvZ2ljYWwiIHdvcmRzIHdlIGNhbiB1c2UgaXQgd2l0aCBhcmUgdGhlc2U6CgpfXycnZGEn J19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIHByby1zdW10aSAxCgpfXycnZGUn J19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIHByby1zdW10aSAyCgpfXycnZGkn J19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIHByby1zdW10aSAzCgoKClRoZXNl IHdvcmRzIGFyZSBhbGwgdGhlIHNhbWUsIGxpa2UgdGhlIG1hdGhlbWF0aWNhbCB2YXJpYWJsZXMg eCwgeSBhbmQgei4gT25jZSB5b3UgaGF2ZSBkZWZpbmVkIHRoZW0sIGhvd2V2ZXIsIHRoZXkga2Vl cCByZWZlcmluZyB0byB0aGUgc2FtZSB0aGluZy4gVGhlc2Ugd29yZHMgYXJlIGRlZmluZWQgaW4g dGhlIHByZW5leCBvZiBicmlkaSwgbWVhbmluZyB0aGF0IHdoZW4gdGhlIHByZW5leCBzdG9wIGFw cGx5aW5nLCB0aGUgZGVmaW5pdGlvbiBvZiB0aGVzZSB0aHJlZSB3b3JkcyBhcmUgY2FuY2VsbGVk LgoKCgpUaGUgd29yZHMgJydkYScnLCAnJ2RlJycgYW5kICcnZGknJyBjYW4gcmVmZXIgdG8gbGl0 ZXJhbGx5IGFueSBzdW10aSwgd2hpY2ggbWFrZXMgdGhlbSBraW5kIG9mIHVzZWxlc3MgdW5sZXNz IHJlc3RyaWN0ZWQgaW4gc29tZSB3YXkuIFRoZSBmaXJzdCBhbmQgZm9yZW1vc3Qgd2F5IHRvIHJl c3RyaWN0IHRoZW0gaXMgdG8gcXVhbnRpZnkgdGhlbTogVGhleSBhcmUgbm90IGNhbGxlZCAibG9n aWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwgcHJvLXN1bXRpIiBmb3Igbm90aGluZy4gVGhl eSBhcmUgcHJvLXN1bXRpLCB0aGV5IGFyZSBtb3N0IHVzZWZ1bCB3aGVuIHF1YW50aWZpZWQsIGFu ZCB0aGV5IGFyZSBleGlzdGVudGlhbC4gV2hhdCBkb2VzIGl0IG1lYW4sIGJlaW5nICJleGlzdGVu dGlhbCI/IEl0IG1lYW5zIHRoYXQgaWYgdGhleSBhcmUgdXNlZCwgdGhhdCBpbXBsaWVzIHRoYXQg dGhleSBhY3R1YWxseSByZWZlciB0byBzb21ldGhpbmcgd2hpY2ggZXhpc3RzLiBBbiBleGFtcGxl OgoKCgpUaGUgc3RhdGVtZW50ICcncGEgZGEgem8ndSBkYSBnZXJrdScnIGhhcyAnJ3BhIGRhJycg aW4gdGhlIHByZW5leCwgd2hpY2ggbWVhbnMgIkNvbmNlcm5pbmcgb25lIGV4aXN0aW5nIHRoaW5n OiIsIGFuZCB0aGVuICcnZGEnJywgbm93IGRlZmluZWQsIGlzIHVzZWQgaW4gdGhlIGJyaWRpICcn ZGEgZ2Vya3UnJy4gVHJhbnNsYXRlZCB0byBFbmdsaXNoLCB0aGlzIG1lYW5zOiAiVGhlcmUgZXhp c3RzIG9uZSB0aGluZyB3aGljaCBpcyBhIGRvZyIuIFRoaXMgaXMgb2J2aW91c2x5IGZhbHNlLCB0 aGVyZSBhcmUgYXJvdW5kIDQwMCwwMDAsMDAwIG9mIHRoZW0gaW4gdGhlIHdvcmxkLiBJZiAnJ2Rh JycgYW5kIGl0cyBzaXN0ZXJzIGFyZSBub3QgcXVhbnRpZmllZCwgdGhlIG51bWJlciAnJ3N1J28n JyBpcyB0aGUgZGVmYXVsdC4gVGh1cyAnJ2RhIHpvJ3UgZGEgZ2Vya3UnJyBtZWFucyAiVGhlcmUg ZXhpc3QgYXQgbGVhc3Qgb25lIHRoaW5nIHdoaWNoIGlzIGEgZG9nIiwgd2hpY2ggaXMgdHJ1ZS4g Tm90aWNlIGhlcmUsIHRoYXQgYW55IHF1YW50aWZpY2F0aW9uIG11c3QgYmUgbW9yZSBvciBsZXNz IGV4YWN0IGluIG9yZGVyIHRvIGJlIHRydWU6IE9mIGNvdXJzZSBvbmUgZG9nIGV4aXN0cywgYnV0 IGluIExvamJhbiwgJydwYSBkYSB6byd1IGRhIGdlcmt1JycgbWVhbnMgbm90IG9ubHkgdGhhdCBk b2VzIG9uZSBkb2cgZXhpc3RzLCBidXQgYWxzbyB0aGF0IG5vIG1vcmUgdGhhbiBvbmUgZG9lcy4g CgoKClRoZXJlIGFyZSBhIGZldyBzcGVjaWZpYyBydWxlcyB0byB0aGVzZSBleGlzdGVudGlhbCBw cm8tc3VtdGk6CgotIElmIHRoZSBxdWFudGlmaWVyICcncm8nJyBpcyB1c2VkIGJlZm9yZSAnJ2Rh JycsIGl0IGluc3RlYWQgcmVmZXJzIHRvICJhbGwgd2hpY2ggZXhpc3RzIi4gIAoKLSBJZiB0aGUg c2FtZSB2YXJpYWJsZSBpcyBxdWFudGlmaWVkIHNldmVyYWwgdGltZXMsIHRoZSBmaXJzdCBxdWFu dGlmaWNhdGlvbiBpcyB0aGUgb25lIHdoaWNoIHN0aWNrczogQW55IGxhdGVyIHF1YW50aWZpZWQg aW5zdGFuY2Ugb2YgdGhhdCB2YXJpYWJsZSBjYW4gcmVmZXIgb25seSB0byB0aGluZ3Mgd2hpY2gg YXJlIGFsc28gYmVpbmcgcmVmZXJyZWQgdG8gYnkgdGhlIGZpcnN0IGluc3RhbmNlIG9mIHRoYXQg dmFyaWFibGUsIGFuZCBhbnkgbGF0ZXIgbm9uLXF1YW50aWZpZWQgaW5zdGFuY2Ugb2YgdGhhdCB2 YXJpYWJsZSB3aWxsIGdhaW4gdGhlIGZpcnN0IHF1YW50aWZpZXIuIFRvIHVzZSBhbiBleGFtcGxl OiAnJ2NpIGRhIHpvJ3UgcmUgZGEgYmFyZGEgLmlqZSBkYSBwZWx4dScnIG1lYW5zICJUaGVyZSBl eGlzdHMgdGhyZWUgdGhpbmdzIHN1Y2ggdGhhdCB0d28gb2YgdGhlbSBhcmUgYmlnIGFuZCBhbGwg dGhyZWUgYXJlIHllbGxvdyIuICcncmUgZGEnJywgYmVpbmcgYWZ0ZXIgJydjaSBkYScnLCBjYW4g b25seSByZWZlciB0byB0d28gb2YgdGhlIGFscmVhZHkgc3RhdGVkIHRocmVlIHRoaW5ncy4gV2hl biAnJ2RhJycgYXBwZWFycyB3aXRob3V0IGEgcXVhbnRpZmllciwgJydjaScnIGlzIGFzc3VtZWQu CgotIElmIHRoZXJlIGFyZSBzZXZlcmFsIHRlcm1zIGluIHRoZSBwcmVuZXgsIHRoZSB0ZXJtcyBh cmUgYWx3YXlzIHJlYWQgbGVmdCB0byByaWdodC4gU29tZXRpbWVzLCB0aGlzIG1hdHRlcnM6ICcn cm8gZGEgZGUgem8ndSBkYSBwcmFtaSBkZScnIG1lYW5zICJDb25jZXJuaW5nIGFsbCB0aGUgdGhp bmdzIFggdGhhdCBleGlzdHMsIGNvbmNlcm5pbmcgYXQgbGVhc3Qgb25lIHRoaW5nIFk6IFggbG92 ZXMgWSIuIFRoaXMgaXMgdGhlIHNhbWUgYXMgIkFsbCB0aGluZ3MgbG92ZSBhdCBsZWFzdCBvbmUg dGhpbmcuIiwgd2hlcmUgdGhlICJ0aGluZyhzKSIgY2FuIGJlIGFueXRoaW5nLCBpbmNsdWRpbmcg dGhlIHRoaW5nIGl0c2VsZi4gTm90ZSBoZXJlIHRoYXQgJydkZScnIGNhbiByZWZlciB0byBkaWZm ZXJlbnQgdGhpbmdzIGZvciBlYWNoICcnZGEnJyAtIHRoZSB0aGluZyB3aGljaCBpcyByZWZlcnJl ZCB0byBieSAnJ2RlJycgaXMgZGVwZW5kZW50IG9uIHRoZSAnJ2RhJycsIHNpbmNlIGl0IGNhbWUg YmVmb3JlIGl0IGluIHRoZSBwcmVuZXgsIHRoZXJlZm9yZSBlYWNoIHRoaW5nIG1pZ2h0IGxvdmUg c29tZXRoaW5nIGRpZmZlcmVudC4gSWYgd2Ugc3dpdGNoZWQgdGhlIHBsYWNlcyBvZiAnJ2RhJycg YW5kICcnZGUnJyBpbiB0aGUgcHJlbmV4LCBhIGRpZmZlcmVudCByZXN1bHQgd291bGQgYXJpc2U6 ICcnZGUgcm8gZGEgem8ndSBkYSBwcmFtaSBkZScnID0gIkNvbmNlcm5pbmcgYXQgbGVhc3Qgb25l IHRoaW5nIFksIGNvbmNlcm5pbmcgYWxsIFggd2hpY2ggZXhpc3RzOiBYIGxvdmVzIFkiLCBtZWFu aW5nICJUaGVyZSBleGlzdHMgYXQgbGVhc3Qgb25lIHRoaW5nIHdoaWNoIGV2ZXJ5dGhpbmcgbG92 ZXMiLgoKCgpPZiBjb3Vyc2UsIGJvdGggY2xhaW1zIGFyZSBjb21wbGV0ZWx5IGZhbHNlLiBUaGVy ZSBhcmUgbWFueSB0aGluZ3Mgd2hpY2ggbG92ZXMgbm90aGluZyAtIHJvY2tzLCBvciBhYnN0cmFj dCBjb25jZXB0cywgZm9yIGV4YW1wbGUuIExpa2V3aXNlLCBpdCdzIGltcG9zc2libGUgdG8gY29u Y2lldmUgb2Ygc29tZXRoaW5nIHdoaWNoIGV2ZXJ5dGhpbmcgbG92ZXMsIHNpbmNlICJldmVyeXRo aW5nIiBhbHNvIGVuY29tcGFzc2VzIG5vbi1zZW50aWVudCB0aGluZ3MuIFdlIG5lZWQgYmV0dGVy IHdheXMgdG8gcmVzdHJpY3Qgd2hhdCB0aGVzZSB2YXJpYWJsZXMgY2FuIHBvaW50IHRvLiBPbmUg Z29vZCB3YXkgb2YgZG9pbmcgaXQgaXMgdG8gbWFrZSB0aGVtIHRoZSBzdWJqZWN0IG9mIGEgcmVs YXRpdmUgY2xhdXNlOgoKJydybyBkaSBwb2kgcmVtbmEgem8ndSBiaXJrYSBkaScnID0gIkNvbmNl cm5pbmcgYWxsIFggdGhhdCBleGlzdHMsIHdoaWNoIGlzIGh1bWFuOiBYIGhhcyBvbmUgb3IgbW9y ZSBhcm1zLiIgb3IgIkFsbCBodW1hbnMgaGF2ZSBhcm1zIiwgd2hpY2ggaXMgdHJ1ZSwgYXQgbGVh c3Qgd2hlbiBzcGVha2luZyBpbiBhIHBvdGVudGlhbCwgdGltZWxlc3Mgc2Vuc2UuCgpfXycnYmly a2EnJ19fIHgxIGlzIGFuIGFybSBvZiB4MgoKV2hlbiByZXN0cmljdGluZyBjbGFpbXMgdXNpbmcg dGhpcyBraW5kIG9mIGxvZ2ljYWwgImV4aXN0ZW50aWFsIiB2YXJpYWJsZSwgaXQncyB2ZXJ5IGlt cG9ydGFudCB0byByZW1lbWJlciB0aGF0IHVubGVzcyB0aGVyZSBpcyBhbiBleHBsaWNpdCAnJ25v JycgYXMgYSBxdWFudGlmaWVyLCB0aGVzZSBraW5kIG9mIHN0YXRlbWVudHMgYWx3YXlzIGltcGx5 IHRoYXQgdGhlcmUgX19hY3R1YWxseSBleGlzdHNfXyBzb21ldGhpbmcgd2hpY2ggY2FuIGJlIHJl ZmVycmVkIHRvIGJ5ICcnZGEnJy4gVGhlcmVmb3JlLCBhbnkga2luZCBvZiBub24tbmVnYXRlZCBz dGF0ZW1lbnQgd2hlcmUgJydkYScnIHBvaW50cyB0byBzb21ldGhpbmcgd2hpY2ggZG9lcyBub3Qg ZXhpc3QgaXMgZmFsc2UsIGFzIGluIHRoaXMgZXhhbXBsZTogJydybyBkYSBwb2kgcGF2eXNlbGpp cm5hIHpvJ3UgZGEgc2UgamlybmEnJyAtICJBbGwgdW5pY29ybnMgaGF2ZSBob3JucyIuIFRoaXMg aXMgd3JvbmcgYmVjYXVzZSwgc2luY2UgJydkYScnIGlzIGV4aXN0ZW5zaWFsLCBpdCBhbHNvIG1l YW5zIHRoYXQgdGhlcmUgbXVzdCBleGlzdCBhdCBsZWFzdCBvbmUgdW5pY29ybi4KCkludGVyZXN0 aW5nbHksIHdoZW4gdXNpbmcgYSByZWxhdGl2ZSBjbGF1c2UsIHRoZSB2YXJpYWJsZSBpcyBiZWlu ZyByZXN0cmljdGVkIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB5b3UgdXNlICcncG9pJycgb3IgJydu b2knJy4gVGhpcyBpcyBiZWNhdXNlICcncmUgZGEgbm9pIGdlcmt1Jycgc3RpbGwgb25seSBjYW4g cmVmZXIgdG8gdHdvIHRoaW5ncyB3aGljaCBhcmUgaHVtYW5zLiBUaGVyZWZvcmUsICcnbm9pJycg bWFrZXMgbGl0dGxlIHNlbnNlIHdpdGggJydkYScnLycnZGUnJy8nJ2RpJycuIEFueSBjbGF1c2Ug aXMgYWx3YXlzIHJlc3RyaWN0aXZlLCB1bmxlc3MgaXQncyByZWFsbHkgc3R1cGlkIGFuZCBvYnZp b3VzIGxpa2UgJydkZSBub2kgZ2Vya3UgY3UgZ2Vya3UnJy4KCgoKSW4gZmFjdCwgeW91IGRvbid0 IHJlYWxseSBuZWVkIHRoZSBwcmVuZXggdG8gZGVmaW5lIHRoZSB2YXJpYWJsZXMuIFlvdSBjYW4g dXNlIHRoZW0gZGlyZWN0bHkgYXMgc3VtdGkgaW4gdGhlIGJyaWRpLCBhbmQgcXVhbnRpZnkgdGhl bSB0aGVyZS4gWW91IG9ubHkgbmVlZCB0byBxdWFudGlmeSB0aGVtIHRoZSBmaXJzdCB0aW1lIHRo ZXkgYXBwZWFyLCB0aG91Z2guIFRodXMsIHRoZSBzZW50ZW5jZSBhYm91dCBodW1hbnMgaGF2aW5n IGFybXMgY291bGQgYmUgdHVybmVkIGludG8gJydiaXJrYSBybyBkaSBwb2kgcmVtbmEnJy4gVGhl IG9yZGVyIG9mIHRoZSB2YXJpYWJsZXMgc3RpbGwgbWF0dGVycyB0aG91Z2gsIGFuZCBzbyB0aGUg cHJlbmV4IGNhbiBiZSB1c2VkIHRvIGF2b2lkIGhhdmluZyB0byBtZXNzIHVwIHlvdXIgYnJpZGkg dG8gcGxhY2UgdGhlIHZhcmlhYmxlcyBpbiB0aGUgY29ycmVjdCBvcmRlci4gV2hlbiBoYXZpbmcg bW9yZSB2YXJpYWJsZXMsIGEgcHJlbmV4IGlzIHVzdWFsbHkgYSBnb29kIGlkZWEuCgoKClRoZSBz ZWNvbmQga2luZCBvZiBsb2dpY2FsIHdvcmRzIGFyZSBiYXNpY2FsbHkgdGhlIHNhbWUgYXMgdGhl IHRocmVlIHdlIGhhdmUgYWxyZWFkeSBiZWVuIHRob3VnaCwgYnV0IHRoZXNlIGFyZSBwcm8tYnJp ZGkgaW5zdGVhZCBvZiBwcm8tc3VtdGk6CgoKCl9fJydidSdhJydfXyBsb2dpY2FsbHkgcXVhbnRp ZmllZCBleGlzdGVudGlhbCBwcm8tYnJpZGkgMQoKX18nJ2J1J2UnJ19fIGxvZ2ljYWxseSBxdWFu dGlmaWVkIGV4aXN0ZW50aWFsIHByby1icmlkaSAyCgpfXycnYnUnaScnX18gbG9naWNhbGx5IHF1 YW50aWZpZWQgZXhpc3RlbnRpYWwgcHJvLWJyaWRpIDMKCgoKVGhlc2Ugd29yayBwcmV0dHkgbXVj aCB0aGUgc2FtZSB3YXkgYXMgdGhlIG90aGVyIHRocmVlLCBidXQgdGhlcmUgYXJlIGEgZmV3IHBv aW50cyB3aGljaCBhcmUgaW1wb3J0YW50IHRvIG1lbnRpb246CgpTaW5jZSBvbmx5IHRlcm1zIGNh biBnbyBpbiB0aGUgcHJlbmV4LCB0aGVzZSBwcm8tYnJpZGkgbmVlZCB0byBoYXZlIGEgcXVhbnRp ZmllciBpbiBvcmRlciB0byBtYWtlIHRoZW0gaW50byBzdW10aS4gV2hlbiBxdWFudGlmaWVkIGlu IHRoZSBwcmVuZXgsIGhvd2V2ZXIsIHRoZSBxdWFudGlmaWVyIHdvcmtzIHZlcnkgZGlmZmVyZW50 IGZyb20gcXVhbnRpZmllcnMgd2l0aCBub3JtYWwgc2VsYnJpOiBJbnN0ZWFkIG9mIHF1YW50aWZ5 aW5nIHRoZSBhbW91bnQgb2YgdGhpbmdzIHdoaWNoIGZpdHMgdGhlIHgxIG9mIHRoZSBzZWxicmkg dmFyaWFibGUsIGl0IGRpcmVjdGx5IHF1YW50aWZpZXMgdGhlIGFtb3VudCBvZiBzZWxicmkgd2hp Y2ggYXBwbGllcy4gQWdhaW4sIHRoZSBkZWZhdWx0IHF1YW50aWZpZXIgaXMgJydzbyd1JycuIFRo dXMsIGluc3RlYWQgb2YgJydyZSBidSdhIHpvJ3UnJyBtZWFuaW5nICJDb25jZXJuaW5nIHR3byB0 aGluZ3Mgd2hpY2ggaXMgaW4gcmVsYXRpb25zaGlwIFg6IiwgaXQgbWVhbnMgIkNvbmNlcm5pbmcg dHdvIHJlbGF0aW9uc2hpcHMgWDoiCgoKCkl0J3MgcHJvYmFibHkgZ29vZCB0byBzZWUgYW4gZXhh bXBsZSBwZiAnJ2J1J2EnJyBwdXQgdG8gcHJhY3RpY2U6CgonJ3JvIGRhIGJ1J2EgbGEgLmJhYi4n JyA9ICJDb25zaWRlcmluZyBhbGwgWCB3aGljaCBleGlzdHM6IFggaXMgaW4gYXQgbGVhc3Qgb25l IHJlbGF0aW9uc2hpcCB3aXRoIEJvYiIgPSAiRXZlcnl0aGluZyBpcyByZWxhdGVkIHRvIEJvYiBp biBhdCBsZWFzdCBvbmUgd2F5LiIuIE5vdGljZSBhZ2FpbiB0aGUgb3JkZXIgbWF0dGVyczogJydi dSdhIHJvIGRhIHpvJ3UgZGEgYnUnYSBCb2InJyBtZWFuczogIlRoZXJlIGlzIGF0IGxlYXN0IG9u ZSByZWxhdGlvbnNoaXAgc3VjaCB0aGF0IGV2ZXJ5dGhpbmcgdGhhdCBleGlzdHMgaXMgaW4gdGhh dCByZWxhdGlvbnNoaXAgd2l0aCBCb2IiLiBUaGUgZmlyc3Qgc3RhdGVtZW50IGlzIHRydWUgLSBm b3IgYW55IG9uZSB0aGluZywgb25lIGNhbiBpbmRlZWQgbWFrZSB1cCBzb21lIHNlbGJyaSB3aGlj aCByZWxhdGVzIGFueSBndXkgY2FsbGVkIEJvYiBhbmQgaXQuIEJ1dCBJJ20gbm90IHN1cmUgdGhl IGxhdHRlciBpcyB0cnVlIC0gdGhhdCBvbmUgY2FuIG1ha2UgYSBzZWxicmkgd2hpY2ggY2FuIHJl bGF0ZSBhbnl0aGluZywgbm8gbWF0dGVyIHdoYXQgaXQgaXMsIGFuZCBCb2IuCgoKCkxldCdzIGhh dmUgYW4gZXhhbXBsZSB3aGljaCBxdWFudGlmaWVzIHNlbGJyaToKCicnY2knaSBidSdlIHpvJ3Ug bWkgYnUnZSBkbycnIC0gIkNvbmNlcm5pbmcgYW4gaW5maW5pdGUgYW1vdW50IG9mIHJlbGF0aW9u c2hpcHM6IEkgYW0gaW4gYWxsIHRob3NlIHJlbGF0aW9uc2hpcCB3aXRoIHlvdS4iIG9yICJUaGVy ZSBleGlzdHMgYW4gaW5maW5pdGUgYW1vdW50IG9mIHJlbGF0aW9uc2hpcHMgYmV0d2VlbiB1cyIK CllvdSBjYW4ndCBxdWFudGlmeSB0aGUgc2VsYnJpIHZhcmlhYmxlcyBpbiB0aGUgYnJpZGkgaXRz ZWxmLCB0aG91Z2guIFRoZW4gaXQgd2lsbCBhY3QgYXMgYSBzdW10aTogJydtaSBjaSdpIGJ1J2Eg ZG8nJyBpcyBub3QgYSBicmlkaS4KCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VudHkt ZWlnaHQgKG5vdGVzIG9uIGFic3RyYWN0b3JzKQoKVGhlIG5vdGlvbiBvZiBhYnN0cmFjdGlvbnMg YW5kIGFic3RyYWN0b3JzIGlzIHF1aXRlIGZ1bmRhbWVudGFsIHRvIExvamJhbiwgYW5kIHlvdSBo YXZlIGFscmVhZHkgbGVhcm5lZCB0aGUgbWVjaGFuaXNtIHR3ZW50eS10d28gbGVzc29ucyBhZ28u IFRoZXJlIGFyZSwgaG93ZXZlciwgbWFueSBhYnN0cmFjdG9ycyB3aXRoIHNsaWdodGx5IGRpZmZl cmVudCBzZW1hbnRpYyBtZWFuaW5nIHRvIGV4cGxvcmUsIGFzIHdlbGwgYXMgYSBzaW5nbGUgaW1w b3J0YW50IG1lY2hhbmlzbSB3aGljaCBoYXMgbm90IGJlZW4gY292ZXJlZCB5ZXQuIEluIHRoaXMg bGVzc29uLCBhbGwgdHdlbHZlIGFic3RyYWN0b3JzIHdpbGwgYmUgZWxhYm9yYXRlZCBvbi4gVGhl IGZhJ29ybWEnbyBmb3IgYWxsIG9mIHRoZXNlIGlzICcna2VpJycuCgoKClRoZSBmaXJzdCBhbmQg bW9zdCBiYXNpYyBhYnN0cmFjdG9yIGlzICcnc3XigJl1JycsIHdoaWNoIHlvdSBhbHJlYWR5IGtu b3cuCgpZb3UgbWlnaHQgcmVtZW1iZXIgZnJvbSBsZXNzb24gc2l4IHRoYXQgJydzdSd1JycgaGFk IGEgcGxhY2Ugc3RydWN0dXJlIHdpdGggdHdvIHN1bXRpIHBsYWNlcy4gVGhlIHNlY29uZCBzdW10 aSBwbGFjZSBvZiAnJ3N1J3UnJyBtYWtlcyB0aGUgd29yZCB2ZXJzYXRpbGUsIGFzIHRoZSB4MiBj YW4gYmUgdXNlZCB0byBzcGVjaWZ5IGhvdyB0aGUgYWJzdHJhY3Rpb24gc2hvdWxkIGJlIGNvbnNp ZGVyZWQuCgpUaGUgRW5nbGlzaCBwaHJhc2Ug4oCcdGhhdCBJIGxvdmUgeW914oCdIGlzIGRlZmlu aXRlbHkgYSBzdW10aSwgc2luY2UgaXTigJlzIG1lYW50IHRvIGZ1bmN0aW9uIGFzIGEgc3ViamVj dCBvciBvYmplY3QgaW4gYSBzZW50ZW5jZS4gSXTigJlzIGFsc28gY2xlYXJseSBtYWRlIGZyb20g YW4gYWJzdHJhY3Rpb24uIEl0IGNhbiB0aGVyZWZvcmUgYmUgdHJhbnNsYXRlZCAoJydsbycnLycn bGUnJykgJydzdeKAmXUgbWkgZG8gcHJhbWknJy4gV2l0aG91dCB0aGUgY29udGV4dCBvZiB0aGUg RW5nbGlzaCBzZW50ZW5jZSwgdGhvdWdoLCBpdOKAmXMgaGFyZCB0byBndWVzcyB3aGF0IGtpbmQg b2YgYWJzdHJhY3Rpb24gd2FzIG1lYW50LiDigJxJIHdpbGwgZGllIGhhcHB5IGJ5IHRoZSB0aW1l IHRoYXQgSSBsb3ZlIHlvdS7igJ0gdHJlYXRzIHRoZSBhYnN0cmFjdGlvbiBsaWtlIGFuIGV2ZW50 IGhhcHBlbmluZyBpbiB0aW1lLiDigJxUaGUgdHJ1dGggaXMgdGhhdCBJIGxvdmUgeW91LuKAnSB0 cmVhdHMgdGhlIGFic3RyYWN0aW9uIGxpa2UgYSBicmlkaSwgd2hpY2ggY2FuIGJlIGNvbnNpZGVy ZWQgdHJ1ZSBvciBmYWxzZS4gSW4gdGhlIHNlbnRlbmNlIOKAnFRoZSBtb3N0IGJlYXV0aWZ1bCB0 aGluZyBpbiB0aGUgd29ybGQgaXMgdGhlIGlkZWEgdGhhdCBJIGxvdmUgeW914oCdLCB0aGUgYWJz dHJhY3Rpb24gaXMgY29uc2lkZXJlZCBhbiBhYnN0cmFjdCBjb25jZXB0LiBVc2luZyB0aGUgc2Vj b25kIHN1bXRpIHBsYWNlIG9mICcnc3XigJl1JycsIHRoZXNlIGNhbiBiZSBleHBsaWNpdGx5IGRp c3Rpbmd1aXNoZWQgYmV0d2VlbjoKCicnbGUgc3XigJl1IG1pIGRvIHByYW1pIGtlaSBiZSBsbyBm YXNudScnIGlzIGFuIGV2ZW50LgoKJydsZSBzdeKAmXUgbWkgZG8gcHJhbWkga2VpIGJlIGxvIGJy aWRpJycgaXMgYSBicmlkaS4KCicnbGUgc3XigJl1IG1pIGRvIHByYW1pIGtlaSBiZSBsbyBzaWRi bycnIGlzIGEgY29uY2VwdC4KCgoKVXNpbmcgJydzdeKAmXUnJyB0aGlzIHdheSwgdGhlIHNlbWFu dGljLCB0aG91Z2ggbm90IGdyYW1tYXRpY2FsLCByYW5nZSBvZiBhbGwgYWJzdHJhY3RvcnMgY2Fu IGJlIGNvdmVyZWQuIE1vcmUgdXN1YWxseSwgdGhvdWdoLCBvdGhlciBhYnN0cmFjdG9ycyBhcmUg dXNlZC4gJydudScnLCB3aGljaCB5b3UgYWxzbyBrbm93LCB0cmVhdHMgdGhlIGFic3RyYWN0aW9u IGFzIGFuIGV2ZW50LgoKX18nJ251JydfXyB4MSBpcyBhbiBldmVudCBvZiBCUklESQoKCgpUaGVy ZSBhcmUgbWFueSB3YXlzIHRvIHZpZXcgYW4gZXZlbnQsIGFuZCBzbyB0aGVyZSBhcmUgZm91ciBv dGhlciBhYnN0cmFjdG9ycyB3aG9zZSBzZW1hbnRpYyBhcmUgYWxsIGNvdmVyZWQgYnkgbnUsIGJ1 dCBtb3JlIHNwZWNpZmljLgoKX18nJ2114oCZZScnX18geDEgaXMgYSBwb2ludC1saWtlIGV2ZW50 IG9mIEJSSURJIGhhcHBlbmluZwoKX18nJ3ph4oCZaScnX18geDEgaXMgYSBzdGF0ZSBvZiBCUklE SSBiZWluZyB0cnVlCgpfXycncHXigJl1JydfXyB4MSBpcyBhIHByb2Nlc3Mgb2YgQlJJREkgdW5m b2xkaW5nIHRocm91Z2ggc3RhZ2VzIHgyCgpfXycnenXigJlvJydfXyB4MSBpcyBhbiBhY3Rpdml0 eSBvZiBCUklESSBjb25zaXN0aW5nIG9mIHRoZSByZXBlYXRlZCBldmVudCBvZiB4MgoKCgpUaGUg dW5kZXJzdGFuZGluZyBvZiB0aGVzZSBhYnN0cmFjdG9ycyBpcyB0aWVkIHRvIHRoZSB1bmRlcnN0 YW5kaW5nIG9mIGV2ZW50IGNvbnRvdXJzLiAnJ2114oCZZScnIGlzIGFraW4gdG8gdGhlIGV2ZW50 IGNvbnRvdXIgJydjb+KAmWknJyBpbiB0aGUgc2Vuc2UgdGhhdCBib3RoIHRyZWF0IHRoZSBicmlk aSBhcyBwb2ludC1saWtlIGluIHRpbWUgYW5kIHNwYWNlOgoKJydsZSBtdeKAmWUgbWkga2Fucm8g YmlueG8gY3Ugc2UgZGppY2EgbWknJyDigJMg4oCdTWUgYmVjb21pbmcgaGVhbHRoeSBpcyBkZXNp cmVkIGJ5IG1l4oCdIGhhcyB0aGUgc2VtYW50aWMgbWVhbmluZyB0aGF0IHRoZSBwcm9jZXNzIG9m IGJlY29taW5nIGhlYWx0aHkgaXMgbm90IGJlaW5nIGNvbnNpZGVyZWQuIElmIGl0IGNvbnNpc3Rz IG9mIGNoZW1vdGhlcmFweSwgaXQgaXMgcGxhdXNpYmxlIHRoYXQgdGhpcyBwcm9jZXNzIGlzIG5v dCBkZXNpcmVkIGF0IGFsbC4g4oCcQmVjb21pbmcgaGVhbHRoeeKAnSwgaW4gYSBwb2ludC1saWtl IHNlbnNlIGlzIGRlc2lyZWQsIGhvd2V2ZXIuCgoKCicnemHigJlpJycgaXMgbGlrZSB0aGUgZXZl bnQgY29udG91ciAnJ2Nh4oCZbycnIGluIHRoZSBzZW5zZSB0aGF0ICcnbGUgemHigJlpIEJSSURJ JycgYmVnaW5zIHRvIGFwcGx5IHdoZW4gdGhlIGJyaWRpIGJlZ2lucyBhbmQgc2hhcnBseSBlbmRz IHdoZW4gdGhlIGJyaWRpIGNlYXNlcyB0byBiZSB0cnVlLCBtdWNoIGxpa2UgJydjYeKAmW8nJy4K CicnemHigJlvIHph4oCZaSBtaSBrYW5ybyBiaW54bycnIG1lYW5zIHRoYXQgdGhlIHN0YXRlIG9m IG1lIGJlY29taW5nIGhlYWx0aHkgdG9vayB0b28gbG9uZyB0aW1lOyB0aGF0IHRoZSB0aW1lIGJl dHdlZW4gbXkgaGVhbHRoIGJlZ2lubmluZyB0byBpbXByb3ZlIGFuZCBiZSBhY3R1YWxseSBiZWlu ZyBoZWFsdGh5IHdhcyBsb25nLXdpbmRlZC4KCgoKVGhlIGFjdHVhbCB0cmVhdG1lbnQgaXMgcGVy aGFwcyBiZXR0ZXIgY2F1Z2h0IGJ5ICcncHXigJl1JycsIHdoaWNoLCBsaWtlIGV2ZW50IGNvbnRv dXJzIGluIGdlbmVyYWwsIHB1dHMgZW1waGFzaXMgb24gdGhlIGVudGlyZSBldmVudCBhcyB1bmZv bGRpbmcgdGhyb3VnaCB0aW1lLiAnJy5paSBiYSB6aSBjb+KAmWEgcHXigJl1IG1pIGthbnJvIGJp bnhvIHZhdSAub2knJyBleHByZXNzZXMgZmVhciB0aGF0IHRoZSBwYWluZnVsIHByb2Nlc3Mgb2Yg YmVjb21pbmcgaGVhbHRoeSBpcyBhYm91dCB0byBiZWdpbi5UaGUgeDIgaXMgZmlsbGVkIGJ5IGEg c2VxdWVuY2Ugb2Ygc3RhZ2VzLCB3aGljaCBjYW4gYmUgbWFkZSBieSBpbnRlcnNwYWNpbmcgdGhl IHN0YWdlcyB3aXRoIHRoZSBub24tbG9naWNhbCBjb25uZWN0aXZlICcnY2XigJlvJyc6ICcnemXi gJl1IHB14oCZdSBtaSBrYW5ybyBiaW54byBrZWkgbGUgbnUgbWkgZmFja2kgY2XigJlvIGxlIG51 IG1pIGphaSB0b2xzdGkgY2XigJlvIG1pIHJlbnZpJycgbWVhbnMg4oCcc29tZXRoaW5nIGlzIGEg bG9uZyBwcm9jZXNzIG9mIG1lIGJlY29taW5nIGhlYWx0aHkgY29uc2lzdGluZyBvZiB0aGUgc3Rh Z2VzIEEgKSBJIGZpbmQgb3V0IEIgKSBzb21ldGhpbmcgYWJvdXQgbWUgYmVnaW5zIEMgKSBJIGVu ZHVyZS7igJ0KCgoKRmluYWxseSwgdGhlIHNlbWFudGljcyBvZiAnJ3p14oCZbycnIHRyZWF0cyB0 aGUgYWJzdHJhY3Rpb24gYXMgY29uc2lzdGluZyBvZiByZXBlYXRlZCBhY3Rpb25zOiAnJ2ppYnJp IG1pIGZhIGxvIHp14oCZbyBtaSB6YmFzdSBsbyBrYXJjZScnIOKAkyDigJxUaGUgYWN0aXZpdHkg b2YgbWUgbWFraW5nIGNhcnMgaXMgbXkgam9i4oCdIGlzIGFjY3VyYXRlIGlmLCBmb3IgaW5zdGFu Y2UsIHRoZSBzcGVha2VyIHdvcmtzIGF0IGEgY2FyLXByb2R1Y2luZyBmYWN0b3J5LiBIZXJlLCBo ZXIgYWN0aXZpdHkgb2YgcHJvZHVjaW5nIGNhcnMgY29uc2lzdHMgb2YgdGhlIHJlcGVhdGVkIGFj dGlvbnMgQSApIHNoZSBsb3dlcnMgZnJhbWUgMSBvbnRvIGNhciAxIEIgKSBzaGUgd2VsZHMgZnJh bWUgMSB0byBjYXIgMSwgQyApIHJlcGVhdCB3aXRoIGNhciAyLiBUaGUgeDIgaGVyZSBpcyBhbHNv IGEgc2VxdWVuY2UuCgoKCk5vdGUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiAnJ2114oCZZSBiYWpy YScnLCAnJ3ph4oCZaSBiYWpyYScnLCAnJ3B14oCZdSBiYWpyYScnLCAnJ3p14oCZbyBiYWpyYScn IGFuZCAnJ251IGJhanJhJycuIFRoZSBwb2ludC1saWtlIGV2ZW50IG9mIHJ1bm5pbmcgcHV0cyBl bXBoYXNpcyBvbiB0aGUgZXZlbnQgaGFwcGVuaW5nLCBidXQgbm90aGluZyBlbHNlLiBUaGUgc3Rh dGUgb2YgcnVubmluZyBiZWdpbnMgd2hlbiB0aGUgcnVubmVyIGJlZ2lucyBhbmQgc3RvcHMgd2hl biB0aGUgcnVubmVyIHN0b3BzLiBUaGUgcHJvY2VzcyBvZiBydW5uaW5nIGNvbnNpc3RzIG9mIGEg d2FybS11cCwga2VlcGluZyBhIHN0ZWFkeSBzcGVlZCwgYW5kIHRoZSBmaW5hbCBzcHJpbnQuIFRo ZSBhY3Rpdml0eSBvZiBydW5uaW5nIGNvbnNpc3RzIHRoZSBjeWNsZXMgb2YgbGlmdGluZyBvbmUg Zm9vdCwgbW92aW5nIGl0IGZvcndhcmQsIGRyb3BwaW5nIGl0IGRvd24sIHJlcGVhdCB3aXRoIHRo ZSBvdGhlciBmb290LiBBbGwgb2YgdGhlc2UgYXJlIGNvdmVyZWQgYnkgdGhlIGV2ZW50IG9mIHJ1 bm5pbmcuCgoKClRoZSBhYnN0cmFjdG9yICcnZHXigJl1JycgaGFzIG5vdGhpbmcgdG8gZG8gd2l0 aCBldmVudHMgYW5kIG9ubHkgY29uc2lkZXJzIHRoZSBicmlkaSBpbnNpZGUgdGhlIGFic3RyYWN0 aW9uIGFzIGEgYnJpZGk6CgonJy51aSBzYWkgemkgZmFja2kgbGUgZHXigJl1IHppIGNpdGthIGxv IGNpZGpycGl0c2EnJyDigJMg4oCcWWVzISBJIGp1c3QgZm91bmQgb3V0IHRoYXQgcGl6emEgd2ls bCBiZSBlYXRlbiBzb29uIeKAnS4gV2hhdCBpcyBiZWluZyBkaXNjb3ZlcmVkIGlzIHRoZSB0cnV0 aCBvZiBhbiBhYnN0cmFjdCBicmlkaSwgbm90IGFuIGV2ZW50LiBJbiBnZW5lcmFsLCBhYnN0cmFj dGlvbnMgbGlrZSB0cnV0aHMsIGxpZXMsIHRoaW5ncyBiZWluZyBkaXNjb3ZlcmVkIG9yIGJlbGll dmVkIGFyZSBhbGwgcHVyZSBicmlkaSwgc28gJydkdeKAmXUnJyBpcyBhcHByb3ByaWF0ZS4gCgpf XycnZHXigJl1JydfXyB4MSBpcyB0aGUgYnJpZGkgb2YgQlJJREkgZXhwcmVzc2VkIGluIHNlbnRl bmNlIHgyCgpGb3IgYnJpZGkgdG8gZXhpc3QgKG9yIGF0IGxlYXN0IHRvIGhhdmUgYW55IHJlbGV2 YW5jZSksIHRoZXkgbXVzdCBiZSBleHByZXNzZWQgaW4gc29tZSBtZWRpdW0sIHdoZXRoZXIgdGhp cyBpcyBzcGVlY2gsIHRob3VnaHQgb3Igd3JpdGluZy4gVGhlIHRlcm0g4oCcZXhwcmVzc2Vk4oCd IGlzIG1pc2xlYWRpbmcgaWYgaXQgaXMgZXhwcmVzc2VkIG9ubHkgaW4gdGhlIG1pbmQgb2Ygc29t ZW9uZSBidXQgdGhlIHRlcm0gbm9uZXRoZWxlc3MgYXBwbGllcy4gU3BlY2lmeWluZyB3aGljaCBt ZWRpdW0gdGhlIGJyaWRpIGlzIGV4cHJlc3NlZCBpbiBpcyB3aGF0IHRoZSB4MiBvZiAnJ2R14oCZ dScnIGlzIHVzZWQgZm9yOiAgJycudWkgZmFja2kgbGUgZHXigJl1IGphaSBjaWRqcnBpdHNhIGtl aSB6b+KAmWUgcGUgbGUgbWkgbWFtdGEnJyDigJMg4oCcWWF5LCBkaXNjb3ZlcmVkIHRoYXQgc29t ZXRoaW5nIGFib3V0IHBpenphLCBleHByZXNzZWQgaW4gc29tZXRoaW5nIHRoYXQgaGFkIHRvIGRv IHdpdGggbXkgbW90aGVyIeKAnS4gVGhlIHRyYW5zbGF0aW9uIGlzIGNsdW1zeSwgYnV0IHByb2Jh Ymx5IG1lYW5zIHRoYXQgdGhlIHNwZWFrZXLigJlzIG1vdGhlciB0b2xkIGhpbSB0aGF0IHBpenph IHdhcyBjb21pbmcuCgoKClRoZSBuZXh0IGFic3RyYWN0b3IsICcnc2nigJlvJycsIGlzIGRlcml2 ZWQgZnJvbSB0aGUgZ2lzbXUgJydzaWRibycnIG1lYW5pbmcg4oCcaWRlYeKAnS4gSXTigJlzIHJl bGF0aXZlbHkgZWFzeSB0byB1bmRlcnN0YW5kOiAnJ2xlIHNp4oCZbyBtaSBtYW10YScnIGlzIHRo ZSB2ZXJ5IGlkZWEgdGhhdCBJIGFtIGEgbW90aGVyLiBTaW1pbGFybHksICcnbGUgc2nigJlvIHBy YW1pJycgaXMg4oCcVGhlIGNvbmNlcHQgdGhhdCBzb21lb25lIGxvdmVzIHNvbWVvbmXigJ0sIHdo aWNoIGNhbiBiZSB0cmFuc2xhdGVkIGFzIG1lcmVseSDigJxMb3ZlIGl0c2VsZi7igJ0gQWxsIGlk ZWFzIG5lZWQgc29tZW9uZSB0byByZWZsZWN0IG9uIHRoZW0sIGFuZCB0aGUgc2Vjb25kIHN1bXRp IHBsYWNlIG9mICcnc2nigJlvJycgbWlycm9ycyB0aGlzOgoKX18nJ3Np4oCZbycnX18geDEgaXMg YW4gaWRlYSBvZiBCUklESSBhcyBpbWFnaW5lZCBieSB4MgoKJydsZSBzaeKAmW8gbmFubXUga2Vp IGJlIGRvIGN1IHhsYWxpIHZhdSBwZeKAmWknJyDigJMg4oCcWW91ciBpZGVhIG9mIG1hbmxpbmVz cyBpcyBoYXJtZnVsLCBJIHRoaW5rLOKAnQoKCgpUaGUgYWJzdHJhY3RvciAnJ2plaScnIGlzIHZl cnkgZGlmZmVyZW50IGZyb20gdGhvc2UgY292ZXJlZCBzbyBmYXIsIGJlY2F1c2Ugb2YgaXRzIHBs YWNlIHN0cnVjdHVyZToKCl9fJydqZWknJ19fIHgxIGlzIHRoZSB0cnV0aCB2YWx1ZSBvZiBCUklE SSB1bmRlciBlcGlzdGVtb2xvZ3kgeDIKClRoZSBmaXJzdCBzdW10aSBwbGFjZSBpcyBub3QgYW4g YWJzdHJhY3RlZCBicmlkaSwgYnV0IGEgdmVyZGljdCBvZiB0cnV0aCwgd2hpY2ggbGllcyBiZXR3 ZWVuIDAgKGZhbHNlKSBhbmQgMSAodHJ1dGgpIGluY2x1c2l2ZS4gVGhlc2UgdHdvIG51bWJlcnMg YXJlIHVzZWQgdG8gcmVwcmVzZW50IGZhbHNlaG9vZCBvciB0cnV0aCwgYW5kIHdoaWxlIHRoZSB4 MSBvZiB0aGUgYWJzdHJhY3Rpb24gaXMgdGVjaG5pY2FsbHkgYSBudW1iZXIgKCcnbGknJyksIGl0 J3Mgbm90IHZlcnkgdXNlZnVsIHRvIGRvIG1hdGhlbWF0aWNzIG9uIHN0YXRlbWVudHMgc3VjaCBh cyAidHJ1ZSIgb3IgImZhbHNlIiwgc28gdGhleSBzaG91bGQgcHJvYmFibHkgbm90IGJlIGNvbnNp ZGVyZWQgbWF0aGVtYXRpY2FsIHF1YW50aXRpZXMuCgpUaGUgeDIgaXMgb2Z0ZW4gbGVmdCB2YWd1 ZS4KCicnLnkgbGkgcGkgc2/igJl1IGplaSBnb+KAmWkga2VpIHR14oCZYSBtaScnIOKAkyDigJxV dWgsIHRoYXTigJlzIG5vdCB2ZXJ5IHRydWUsIGFjY29yZGluZyB0byBtZS7igJ0KCgoKJydrYScn IGlzIGdsb3NzZWQgInByb3BlcnR5Iiwgd2hpY2ggaXMgbm90IGNsZWFyIGF0IGFsbC4gSXQgcmVm ZXJzIHRvIHRoZSBlc3NlbmNlIG9mIGZpdHRpbmcgdG8gYSBjZXJ0YWluIHNlbGJyaSwgdGh1cyAn J2xvIGthIGNsYW5pJycgaXMgInRhbGxuZXNzIiwgYW5kICcnbG8ga2EgZGppY2EnJyBpcyAiZGVz aXJlIi4gSW4gZmFjdCwgZm9yIGFueSBzZWxicmksICJYIHNhdGlzZmllcyB0aGUgc2VsYnJpIiBp cyB0aGUgc2FtZSBhcyAiWCBpcyBjaGFyYWN0ZXJpemVkIGJ5IHRoZSBwcm9wZXJ0eSBvZiB0aGUg c2VsYnJpIi4KClRoaXMgc2VsYnJpIG1heSBoYXZlIHNvbWUgc3VtdGkgcGxhY2VzIGZpbGxlZCBv dXQsIGFsbG93aW5nIHZlcnkgc3BlY2lmaWMgcHJvcGVydGllcyB0byBiZSBleHByZXNzZWQ6ICcn bGUga2EgcGVuZG8gbGEgeGFuei5rcnQgZ2knZSBiYWRyaScnLCAiVGhlIHByb3BlcnR5IG9mIGJl aW5nIGEgZnJpZW5kIG9mIEhhbnMgS3VydCBhbmQgYmVpbmcgZGVwcmVzc2VkIi4gVGhpcyBnaXZl cyByaXNlIHRvIHN0cm9uZyBhbWJpZ3VpdHk6IFNpbmNlICcna2EnJyBpcyBhYm91dCBmaXR0aW5n IHRvIGEgc2VsYnJpIChvciBldmVuIGFuIGVudGlyZSBicmlkaSksIG9uZSBtdXN0IGJlIGFibGUg dG8gc3BlY2lmeSB3aGljaCBzdW10aSBwbGFjZSB3ZSBhcmUgdGFsa2luZyBhYm91dDogIlRoZSBw cm9wZXJ0eSBvZiBzd2ltbWluZyBpbiBzb21ldGhpbmciIGlzIHZlcnkgZGlmZmVyZW50IGZyb20g IlRoZSBwcm9wZXJ0eSBvZiBzb21ldGhpbmcgc3dpbW1pbmcgaW4geW91Ii4gCgpPZiBjb3Vyc2Us IHRoaXMgY2Fubm90IGFsd2F5cyBiZSB1cCB0byBjb250ZXh0LCBhbmQgc28gd2UgaGF2ZSBhIHdv cmQsICcnY2UndScnLCB3aGljaCBpZGVudGlmaWVzIHdoaWNoIHN1bXRpIHBsYWNlIGlzIGJlaW5n IGZvY3VzZWQgb246CgpfXycnY2UndScnX18gU2V0cyBmb2N1cyBvbiBzdW10aSBwbGFjZSBpbiBh YnN0cmFjdGlvbi4KCgoKJydrYScnLWNvbnN0cnVjdHMgYXJlIHVzZWQgaW4gYWxsIGtpbmRzIG9m IHNlbGJyaSwgJyd6bWFkdScnIGFuZCAnJ21sZWNhJycgaW50cm9kdWNlZCBpbiBsZXNzb24gbmlu ZXRlZW4gaXMgZXhhbXBsZXMgb2Ygc3VjaCBzZWxicmkuIFNvOiB3aGF0IGlzIHRoZSBkaWZmZXJl bmNlIGJldHdlZW4gJydtaSBkbyB6bWFkdSBsbyBrYSBsYSBsaXogcHJhbWkgY2UndScnIGFuZCAn J21pIGRvIHptYWR1IGxvIGthIGNlJ3UgcHJhbWkgbGEgbGl6Jyc/CgpBbnN3ZXI6IH5+Z3JleSxn cmV5OiBUaGUgZmlyc3Qgb25lIG1lYW5zICJMaXogbG92ZXMgbWUgbW9yZSB0aGFuIHlvdSIsIHRo ZSBzZWNvbmQgIkkgbG92ZSBMaXogbW9yZSB0aGFuIHlvdSBkbyJ+fgoKVGhlICcnY2UndScnIGNh biBiZSBlbGlkZWQsIGluIHdoaWNoIGNhc2UgaXQgaXMgdW5kZXJzdG9vZCB0byBmaWxsIHRoZSBm aXJzdCB1bmZpbGxlZCBzdW10aSBwbGFjZSBvZiB0aGUgYWJzdHJhY3Rpb24uCgoKCkxhc3RseSwg d2UgaGF2ZSB0aGUgd29yZCAnJ25pJycsIHRoZSBkZWZpbml0aW9uIG9mIHdoaWNoIGlzIG11Y2gg Y29udGVzdGVkIGFuZCBkaXNjdXNzZWQgYW1vbmcgTG9qYmFuaXN0cy4gQXQgbGVhc3QgdHdvIHNs aWdodGx5IGRpZmZlcmVudCBtZWFuaW5ncyBjYW4gYmUgY29udmV5ZWQgd2l0aCAnJ25pJycsIHBv c3NpYmx5IG1vcmUsIGFuZCBpdCBoYXMgbm90IGJlZW4gc2V0dGxlZCB3aGljaCBvbmUgaXMgdGhl IGNvcnJlY3QgdXNlIG9mICcnbmknJy4gTGV0J3MgZmlyc3Qgc2VlIGhvdyB0aGUgd29yZCBpcyBn bG9zc2VkOgoKX18nJ25pJydfXyB4MSBpcyB0aGUgcXVhbnRpdHkgb2YgQlJJREkgYXMgbWVhc3Vy ZWQgYXQgc2NhbGUgeDIKClVubGlrZSB0aGUgeDEgb2YgJydqZWknJywgdGhlIHgxIG9mICcnbmkn JyBfX2lzX18gdXNlZnVsIHRvIHRyZWF0IGFzIGEgbnVtYmVyLiBUaGUgZGlzY3Vzc2lvbiBhcmlz ZXMgYmVjYXVzZSBpdCdzIHBvc3NpYmxlIHRvIHF1YW50aWZ5IGJyaWRpIGluIHNldmVyYWwgd2F5 cy4gVGhlIGZvbGxvd2luZyBmb3VyIGV4YW1wbGVzIHNob3cgdHdvIGRpZmZlcmVudCB3YXlzOgoK X18nJ3hhbXNpJydfXyB4MSBpcyB0aGUvYSBzZWEvb2NlYW4gb2YgcGxhbmV0IHgyIG1hZGUgb2Yg Zmx1aWQgeDMKCl9fJydjZW5iYScnX18geDEgdmFyaWVzIGluIHByb3BlcnR5L2Ftb3VudCB4MiBi eSBhbW91bnQvZGVncmVlIHgzIHVuZGVyIGNvbmRpdGlvbnMgeDQKCicnbGUgeGFtc2kgY3UgY2Vu YmEgbGUgbmkgY2UndSBibGFudScnIC0gIlRoZSBvY2VhbiB2YXJpZXMgaW4gYmx1ZW5lc3MiICht ZWFuaW5nIHRoYXQgaXQgbWlnaHQgYmUgbGVzcyBvciBtb3JlIGJsdWUsIGNvbnRyYXN0IHdpdGgg JydsZSB4YW1zaSBjdSBjZW5iYSBsZSBrYSBjZSd1IGJsYW51JycsIHdoaWNoIG1lYW5zIHRoYXQg aXQgdmFyaWVzIGluIHdoZXRoZXIgaXQncyBibHVlIG9yIG5vdCkKCicnbWkgem1hZHUgZG8gbG8g bmkgcGVuZG8gY2UndScnLSAiSSBoYXZlIG1vcmUgZnJpZW5kcyB0aGFuIHlvdSIKCldoZXJlIHRo ZSBmaXJzdCBleGFtcGxlIHVzZXMgJyduaScnIHRvIHF1YW50aWZ5IGhvdyBtdWNoIGFuIG9iamVj dCBpcyBjaGFyYWN0ZXJpemVkIGJ5IGEgc2VsYnJpLCBhbmQgdGhlIHNlY29uZCBleGFtcGxlIHRv IHF1YW50aWZ5IGhvdyBtYW55IHggYXJlIGNoYXJhY3Rlcml6ZWQgYnkgYSBzZWxicmkuCgpUaGlz IGlzLCBvZiBjb3Vyc2UsIGEgcHJvYmxlbSB0byBhIGxhbmd1YWdlIGxpa2UgTG9qYmFuLCB3aGlj aCBwcmlkZXMgaXRzZWxmIHdpdGggdW5hbWJpZ2l1dHkuIFRoaXMgcHJvYmxlbSBoYXZlIG5vdCBi ZWVuIHNvbHZlZCB5ZXQsIGFuZCBzbyBhcyBvZiBub3csIHdlIGFyZSBzdHVjayB3aXRoICcnbmkn JyBoYXZpbmcgZHVhbCBtZWFuaW5ncy4gIAoKVGhlcmUgaXMgYWxzbyBzbGlnaHQgZGlzYWdyZWVt ZW50IGFib3V0IHdoYXQgaXQgbWFrZXMgc2Vuc2UgdG8gcXVhbnRpZnksIHRob3VnaCB0aGlzIGlz IGEgcGhpbG9zb3BoaWNhbCByYXRoZXIgdGhhbiBsaW5ndWlzdGljIGRlYmF0ZS4gU29tZSB0ZXh0 cyBzdHJlc3MgdGhhdCB0aG9zZSB0aGluZ3Mgd2hpY2ggYXJlIG5vdCBlYXNpbHkgcXVhbnRpZmlh YmxlIGxpa2UgJydsZSBuaSBtaSB0dW5iYSBkbycnLCB0aGUgYW1vdW50IG9mIG1lIGJlaW5nIHlv dXIgc2libGluZywgbWFrZXMgbm8gc2Vuc2UgaSBhICcnbmknJy1jb25zdHJ1Y3QuIEZvciBvdGhl cnMgdGhpcyBpcyBhIHBlcmZlY3RseSByZWFzb25hYmxlIHRoaW5nIHRvIHNheSwgZXZlbiB0aG91 Z2ggYWN0dWFsbHkgbWVhc3VyaW5nIGl0IGlzIG5vdCBwcmFjdGljYWwsIHNpbWlsYXJseSB0byB0 aGUgRW5nbGlzaCBxdWFudGlmaWNhdGlvbiBvZiBsb3ZlIGluIHRoZSBzZW50ZW5jZSAiSSBkaWRu J3Qga25vdyBob3cgbXVjaCBJIGxvdmVkIHlvdSB1bnRpbCBub3ciLgoKQm90aCAnJ2thJycgYW5k ICcnbmknJyBhbHdheXMgaGFzIGFuIGV4cGxpY2l0IG9yIGltcGxpY2l0ICcnY2UndScnLgoKCgoh ISFFbmQgb2YgbGVzc29ucwoKU29ycnksIGJ1dCBhcyBvZiBub3csIHRoZXJlIGFyZSBubyBtb3Jl IGxlc3NvbnMgaW4gdGhpcyBzZXJpZXMuIFBlcmhhcHMgbW9yZSB3aWxsIGJlIGFkZGVkIGxhdGVy LgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCldpa2lu ZXVyb3RpYyBtYWlsaW5nIGxpc3QKV2lraW5ldXJvdGljQGxvamJhbi5vcmcKaHR0cDovL21haWwu bG9qYmFuLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3dpa2luZXVyb3RpYwo=