Received: from localhost ([::1]:58467 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1Tt6Oe-0002d6-Cy; Wed, 09 Jan 2013 16:53:28 -0800 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:51142 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1Tt6OV-0002cz-HE for wikineurotic@lojban.org; Wed, 09 Jan 2013 16:53:25 -0800 Received: by digitalkingdom.org (sSMTP sendmail emulation); Wed, 9 Jan 2013 16:53:19 -0800 From: "Apache" Date: Wed, 9 Jan 2013 16:53:19 -0800 To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 2.0 (++) X-Spam_score: 2.0 X-Spam_score_int: 20 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 wavelessonscontinued was changed by snanu at 00:52 UTC Comment: Changed date to reflect proofreading changes You can view the page by following this link: http://www.lojban.org/tiki/wavelessonscontinued [...] Content analysis details: (2.0 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 Subject: [Wikineurotic] Wiki page wavelessonscontinued changed by snanu 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 Content-Length: 131619 VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWQgd2FzIGNoYW5nZWQgYnkgc25hbnUgYXQgMDA6 NTIgVVRDCkNvbW1lbnQ6IENoYW5nZWQgZGF0ZSB0byByZWZsZWN0IHByb29mcmVhZGluZyBjaGFu Z2VzCgpZb3UgY2FuIHZpZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5nIHRoaXMgbGluazoKIApodHRw Oi8vd3d3LmxvamJhbi5vcmcvdGlraS93YXZlbGVzc29uc2NvbnRpbnVlZAoKWW91IGNhbiB2aWV3 IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2luZyB0aGlzIGxp bms6IApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5LnBocD9wYWdl PXdhdmVsZXNzb25zY29udGludWVkJmNvbXBhcmU9MSZvbGR2ZXI9NDMmbmV3dmVyPTQ0CgoKKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioK VGhlIGNoYW5nZXMgaW4gdGhpcyB2ZXJzaW9uIGZvbGxvdyBiZWxvdywgZm9sbG93ZWQgYWZ0ZXIg YnkgdGhlIGN1cnJlbnQgZnVsbCBwYWdlIHRleHQuCioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoKKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAgLUxpbmVzOiAxLTQgY2hh bmdlZCB0byArTGluZXM6IDEtNCBAQAorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKwohTG9qYmFuIFdhdmUgTGVzc29ucyBDb250aW51ZWQ6 Ci0gISEhYnkgbGEga2xha3Ugd2l0aCBoZWxwIGZyb20gbGEgLmtyaWJhY3IuLCBsYSB4YWxibyBh bmQgb3RoZXJzLCBhdXR1bW4gMjAxMS4KKyAhISFieSBsYSBrbGFrdSB3aXRoIGhlbHAgZnJvbSBs YSAua3JpYmFjci4sIGxhIHhhbGJvIGFuZCBvdGhlcnMsIEphbnVhcnkgOXRoIDIwMTMuCgohIWxl c3NvbiB6ZXJvOiBGb3Jld29yZAoKCgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioKVGhlIG5ldyBwYWdlIGNvbnRlbnQgZm9sbG93cyBi ZWxvdy4KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioKCiFMb2piYW4gV2F2ZSBMZXNzb25zIENvbnRpbnVlZDoKCiEhIWJ5IGxhIGtsYWt1 IHdpdGggaGVscCBmcm9tIGxhIC5rcmliYWNyLiwgbGEgeGFsYm8gYW5kIG90aGVycywgSmFudWFy eSA5dGggMjAxMy4KCgoKISFsZXNzb24gemVybzogRm9yZXdvcmQKClRoZXNlIGxlc3NvbnMgYXJl IGFuIGF0dGVtcHQgdG8gZXhwYW5kIG9uIHRoZSBHb29nbGUgV2F2ZSBMZXNzb25zLCBhbiBleGNl bGxlbnQgTG9qYmFuIHR1dG9yaWFsIGJ5IGtyaWJhY3IsIHhhbGJvLCBhbmQgb3RoZXJzLCB3aGlj aCBzYWRseSBvbmx5IGNvdmVyZWQgdGhlIGZpcnN0IGZvdXIgY2hhcHRlcnMgaW4gdGhpcyB0dXRv cmlhbC4gSXQgaW1wbGVtZW50cyB0aGUgbmV3ZXN0IHJ1bGVzIG9mIExvamJhbiBub3QgY292ZXJl ZCBieSBvbGRlciBtYXRlcmlhbHMgc3VjaCBhcyBXaGF0IGlzIExvamJhbj8gYW5kIExvamJhbiBm b3IgQmVnaW5uZXJzLgoKCgpJZiB5b3UgYXJlIG5ldyB0byBMb2piYW4sIEkgcmVjb21tZW5kIGxp c3RlbmluZyB0byBhbnkgcmVjb3JkaW5ncyB5b3UgY2FuIGZpbmQgb2Ygc3Bva2VuIExvamJhbiBi b3RoIGJlZm9yZSBhbmQgd2hpbGUgeW91IGFyZSB0YWtpbmcgdGhpcyB0dXRvcmlhbCwgaW4gb3Jk ZXIgdG8gbWFrZSB5b3Vyc2VsZiBmYW1pbGlhciB3aXRoIHRoZSBzb3VuZHMgYW5kIHdvcmRzIG9m IHRoZSBsYW5ndWFnZSwgd2hpY2ggd2lsbCBub3QgYmUgZXhwbGFpbmVkIGhlcmUuIEZ1cnRoZXJt b3JlLCB0cnkgdG8gc2F5IHRoZSB0aGluZ3MgeW91IHJlYWQgaW4gTG9qYmFuIGFjY2VudCBpZiBp dOKAmXMgcmVhc29uYWJseSBwcmFjdGljYWwuIFRoaXMgY2FuIGhlbHAgeW91ciBwcm9udW5jaWF0 aW9uIGEgbG90LgoKCgpXaGVuIHRha2luZyB0aGlzIHR1dG9yaWFsLCBpdOKAmXMgYmVzdCB0byBw YXVzZSBiZXR3ZWVuIGxlc3NvbnMgaW4gb3JkZXIgdG8gaW50ZXJuYWxpemUgd2hhdCB5b3UgaGF2 ZSBsZWFybnQuIEkgaGF2ZSBhdHRlbXB0ZWQgdG8gYnVpbGQgdGhlc2UgbGVzc29ucyBmcm9tIHRo ZSBib3R0b20gdXAgYW5kIGV4Y2x1ZGUgYW55IHdvcmRzIG9yIGNvbmNlcHRzIHRoYXQgaGF2ZSBu b3QgYmVlbiBleHBsYWluZWQgaW4gcHJldmlvdXMgbGVzc29ucy4gT25jZSBleHBsYWluZWQsIHRo ZXkgYXJlIHVzZWQgZnJlZWx5IHRocm91Z2hvdXQgdGhlIHJlbWFpbmRlciBvZiB0aGUgdHV0b3Jp YWwuIEkgdXJnZSByZWFkZXJzIG5vdCB0byBwYXNzIGFueSBtaXN1bmRlcnN0b29kIGNvbnRlbnQ7 IGlmIHlvdSBoYXZlIHF1ZXN0aW9ucyBvciBhcmUgdW5jZXJ0YWluIGFib3V0IHNvbWV0aGluZywg ZmVlbCBmcmVlIHRvIGFzayB0aGUgTG9qYmFuIGNvbW11bml0eSwgd2hpY2ggY2FuIGJlIGZvdW5k IGluICNsb2piYW4gb24gdGhlIEZyZWVub2RlIElSQyBuZXR3b3JrLiBUaGV5IHdpbGwgYmUgaGFw cHkgdG8gaGVscC4KCgoKSW4gdGhpcyB0dXRvcmlhbCwgTG9qYmFuIHRleHQgaXMgd3JpdHRlbiBp biAnJ2l0YWxpY3MnJy4gTGF0ZXIsIHdoZW4gdXNlZCBhcyBMb2piYW4gbG9hbndvcmRzIGluIEVu Z2xpc2ggc2VudGVuY2VzLCB0aGV5IGFyZSBub3QgbWFya2VkLiBBbnN3ZXJzIHRvIGV4ZXJjaXNl cyBhcmUgZGlzcGxheWVkIGFzIGEgZ3JleSBiYXIuIEhpZ2hsaWdodCB0aGUgdGV4dCBpbiBvcmRl ciB0byBzZWUgaXQuCgoKCkxhc3RseSwgSSBoYXZlIGFzIGZhciBhcyBwb3NzaWJsZSBhdHRlbXB0 ZWQgdG8gdXNlIHRoZSBMb2piYW4gd29yZHMgZm9yIGdyYW1tYXRpY2FsIGNvbnN0cnVjdHM6ICcn c3Vta2HigJlpJycgaW5zdGVhZCBvZiBwcm8tc3VtdGksICcnc3VtdGNpdGEnJyBpbnN0ZWFkIG9m IG1vZGFsIGFuZCBqdWZyYSBpbnN0ZWFkIG9mIHV0dGVyYW5jZS4gVGhpcyBpcyBiZWNhdXNlIEkg ZmVlbCB0aGUgRW5nbGlzaCB3b3JkcyBhcmUgb2Z0ZW4gZWl0aGVyIGFyYml0cmFyeSwgaW4gd2hp Y2ggY2FzZSB0aGV5IGFyZSBqdXN0IG1vcmUgd29yZHMgdG8gbGVhcm4sIG9yIG1pc2xlYWRpbmcs IGluIHdoaWNoIGNhc2UgdGhleSBhcmUgd29yc2UgdGhhbiB1c2VsZXNzLiBJbiBlaXRoZXIgY2Fz ZSwgYXMgbG9uZyBhcyB0aGUgd29yZHMgYXJlIHNwZWNpZmljIHRvIHRob3NlIHdobyBhcmUgbGVh cm5pbmcgTG9qYmFuIGFueXdheSwgdGhlcmUgaXMgbm8gcmVhc29uIGZvciB0aGVtIHRvIGV4aXN0 IGFzIHNlcGFyYXRlIEVuZ2xpc2ggd29yZHMuCgoKCgoKISFMb2piYW4gTGVzc29ucyDigJMgbGVz c29uIG9uZSAoYnJpZGksIGp1ZnJhLCBzdW10aSBhbmQgc2VsYnJpKQoKQSAnJ2JyaWRpJycgaXMg dGhlIG1vc3QgY2VudHJhbCB1bml0IG9mIExvamJhbiB1dHRlcmFuY2VzLiBUaGUgY29uY2VwdCBp cyB2ZXJ5IGNsb3NlIHRvIHdoYXQgd2UgY2FsbCBhIHByb3Bvc2l0aW9uIGluIEVuZ2xpc2guIEEg YnJpZGkgaXMgYSBjbGFpbSB0aGF0IHNvbWUgb2JqZWN0cyBzdGFuZCBpbiBhIHJlbGF0aW9uIHRv IGVhY2ggb3RoZXIsIG9yIHRoYXQgYW4gb2JqZWN0IGhhcyBzb21lIHByb3BlcnR5LiBUaGlzIHN0 YW5kcyBpbiBjb250cmFzdCB0byAnJ2p1ZnJhJycsIHdoaWNoIGFyZSBtZXJlbHkgTG9qYmFuIHV0 dGVyYW5jZXMsIHdoaWNoIGNhbiBiZSBicmlkaSBvciBhbnl0aGluZyBlbHNlIGJlaW5nIHNhaWQu IFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBicmlkaSBhbmQgYSBqdWZyYSBpcyB0aGF0IGEganVm cmEgZG9lcyBub3QgbmVjZXNzYXJpbHkgc3RhdGUgYW55dGhpbmcsIHdoaWxlIGEgYnJpZGkgZG9l cy4gVGh1cywgYSBicmlkaSBtaWdodCBiZSB0cnVlIG9yIGZhbHNlLCB3aGlsZSBub3QgYWxsIGp1 ZnJhIGNhbiBiZSBzYWlkIHRvIGJlIHN1Y2guCgpUbyBoYXZlIHNvbWUgZXhhbXBsZXMgKGluIEVu Z2xpc2gsIHRvIGJlZ2luIHdpdGgpLCDigJxNb3phcnQgd2FzIHRoZSBncmVhdGVzdCBtdXNpY2lh biBvZiBhbGwgdGltZeKAnSBpcyBhIGJyaWRpLCBiZWNhdXNlIGl0IG1ha2VzIGEgY2xhaW0gd2l0 aCBhIHRydXRoIHZhbHVlLCBhbmQgaXQgaW52b2x2ZXMgYW4gb2JqZWN0LCBNb3phcnQsIGFuZCBh IHByb3BlcnR5LCBiZWluZyB0aGUgZ3JlYXRlc3QgbXVzaWNpYW4gb2YgYWxsIHRpbWUuIE9uIHRo ZSBjb250cmFyeSwg4oCcT3chIE15IHRvZSHigJ0gaXMgbm90IGEgYnJpZGksIHNpbmNlIGl0IGRv ZXMgbm90IGludm9sdmUgYSByZWxhdGlvbiwgYW5kIHRodXMgZG9lcyBub3Qgc3RhdGUgYW55dGhp bmcuIEJvdGgsIHRob3VnaCwgYXJlIGp1ZnJhLgoKVHJ5IHRvIGlkZW50aWZ5IHRoZSBicmlkaSBh bW9uZyB0aGVzZSBFbmdsaXNoIGp1ZnJhOgoKCgojIOKAnEkgaGF0ZSBpdCB3aGVuIHlvdSBkbyB0 aGF0LuKAnQoKIyDigJxSdW5zLuKAnQoKIyDigJxXb2FoLCB0aGF0IGxvb2tzIGRlbGljaW91cyHi gJ0KCiMg4oCcR2Vleiwgbm90IGFnYWluLuKAnQoKIyDigJxObywgSSBvd24gdGhyZWUgY2Fyc+KA nQoKIyDigJxOaW5ldGVlbiBtaW51dGVzIHBhc3QgZWlnaHQu4oCdCgojIOKAnFRoaXMgU2F0dXJk YXksIHllcy7igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleToxLCAzIGFuZCA1IGFyZSBicmlkaS4g MiBjb250YWlucyBubyBvYmplY3RzIGFuZCB0aGUgcmVzdCBjb250YWluIG5vIHJlbGF0aW9uIG9y IGNsYWltIG9mIGEgcHJvcGVydHkufn4KCgoKUHV0IGluIExvamJhbiB0ZXJtcywgYSBicmlkaSBj b25zaXN0cyBvZiBvbmUgJydzZWxicmknJywgYW5kIG9uZSBvciBtb3JlICcnc3VtdGknJy4gVGhl IHNlbGJyaSBpcyB0aGUgcmVsYXRpb24gb3IgY2xhaW0gYWJvdXQgdGhlIG9iamVjdCwgYW5kIHRo ZSBzdW10aSBhcmUgdGhlIG9iamVjdHMgd2hpY2ggYXJlIGluIGEgcmVsYXRpb24uIE5vdGUgdGhh dCDigJxvYmplY3TigJ0gaXMgbm90IGEgcGVyZmVjdCB0cmFuc2xhdGlvbiBvZiDigJxzdW10aeKA nSwgc2luY2Ug4oCcc3VtdGnigJ0gY2FuIHJlZmVyIHRvIG5vdCBqdXN0IHBoeXNpY2FsIG9iamVj dHMsIGJ1dCBjYW4gYWxzbyBwdXJlbHkgYWJzdHJhY3QgdGhpbmdzIGxpa2Ug4oCcVGhlIGlkZWEg b2Ygd2FyZmFyZeKAnS4gQSBiZXR0ZXIgdHJhbnNsYXRpb24gd291bGQgYmUgc29tZXRoaW5nIGxp a2Ug4oCcc3ViamVjdCwgZGlyZWN0IG9yIGluZGlyZWN0IG9iamVjdOKAnSBmb3Igc3VtdGksIGFu ZCDigJx2ZXJi4oCdIGZvciBzZWxicmksIHRob3VnaCwgYXMgd2Ugd2lsbCBzZWUsIHRoaXMgaXMg bm90IG9wdGltYWwgZWl0aGVyLgoKV2UgY2FuIG5vdyB3cml0ZSB0aGUgZmlyc3QgaW1wb3J0YW50 IGxlc3NvbiBkb3duOgoKYnJpZGkgPSBzZWxicmkgKyBvbmUgb3IgbW9yZSBzdW10aQoKUHV0IGFu b3RoZXIgd2F5LCBhIGJyaWRpIHN0YXRlcyB0aGF0IHNvbWUgc3VtdGkgZG8vYXJlIHNvbWV0aGlu ZyBleHBsYWluZWQgYnkgYSBzZWxicmkuCgoKCklkZW50aWZ5IHRoZSBzdW10aSBhbmQgc2VsYnJp IGVxdWl2YWxlbnRzIGluIHRoZXNlIEVuZ2xpc2gganVmcmE6CgrigJxJIHdpbGwgcGljayB1cCBt eSBkYXVnaHRlcnMgd2l0aCBteSBjYXLigJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTpzZWxicmk6 IOKAnHBpY2sgdXAgKHdpdGgp4oCdLiBzdW10aTog4oCcSeKAnSwg4oCcbXkgZGF1Z2h0ZXJz4oCd LCDigJxteSBjYXLigJ1+fgoKCgrigJxIZSBib3VnaHQgc2l4dGVlbiBuZXcgc2hpcnRzIGZyb20g TGVhJkxldnnigJlzIGZvciBqdXN0IHR3byBodW5kcmVkIGV1cm8h4oCdCgoKCkFuc3dlcjogfn5n cmV5LGdyZXk6c2VsYnJpOiDigJxib3VnaHQgKGZyb20pIChmb3Ip4oCdIHN1bXRpOiDigJxIZeKA nSwg4oCcc2l4dGVlbiBuZXcgc2hpcnRz4oCdLCDigJxMZWEmTGV3aXPigJ0gYW5kIOKAnHR3byBo dW5kcmVkIGV1cm9z4oCdfn4KCgoKU2luY2UgdGhlc2UgY29uY2VwdHMgYXJlIHNvIGZ1bmRhbWVu dGFsIHRvIExvamJhbiwgbGV04oCZcyBoYXZlIGEgdGhpcmQgZXhhbXBsZTog4oCcU28gZmFyLCB0 aGUgRVBBIGhhcyBkb25lIG5vdGhpbmcgYWJvdXQgdGhlIGFtb3VudCBvZiBzdWxwaHVyIGRpb3hp ZGUgaW4gdGhlIGFpci7igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTpzZWxicmk6IOKAnGhhcyBk b25lIChhYm91dCnigJ0gc3VtdGk6IOKAnFRoZSBFUEHigJ0sIOKAnG5vdGhpbmfigJ0gYW5kIOKA nHRoZSBhbW91bnQgb2Ygc3VscGh1ciBkaW94aWRlIGluIHRoZSBhaXLigJ1+fgoKCgpOb3cgdHJ5 IG1ha2luZyBMb2piYW4gYnJpZGkuIEZvciB0aGlzIHlvdSB3aWxsIG5lZWQgdG8gdXNlIHNvbWUg d29yZHMsIHdoaWNoIGNhbiBhY3QgYXMgc2VsYnJpOgoKJydfX2R1bmRhX18nJyB4MSBnaXZlcyB4 MiB0byB4MyAod2l0aG91dCBwYXltZW50KQoKJydfX3BlbHh1X18nJyB4MSBpcyB5ZWxsb3cKCicn X196ZGFuaV9fJycgeDEgaXMgYSBob21lIG9mIHgyCgoKCk5vdGljZSB0aGF0IHRoZXNlIHdvcmRz IG1lYW5pbmcg4oCcZ2l2ZeKAnSwg4oCceWVsbG934oCdIGFuZCDigJxob21l4oCdIHdvdWxkIGJl IGNvbnNpZGVyZWQgYSB2ZXJiLCBhbiBhZGplY3RpdmUgYW5kIGEgbm91biBpbiBFbmdsaXNoLiBJ biBMb2piYW4sIHRoZXJlIGFyZSBubyBzdWNoIGNhdGVnb3JpZXMgYW5kIG5vIHN1Y2ggZGlzdGlu Y3Rpb24uICcnZHVuZGEnJyBjYW4gYmUgdHJhbnNsYXRlZCDigJxnaXZlc+KAnSAodmVyYiksIOKA nGlzIGEgZ2l2ZXLigJ0gKG5vdW4pLCDigJxpcyBnaXZpbmfigJ0gKGFkamVjdGl2ZSkgYXMgd2Vs bCBhcyB0byBhbiBhZHZlcmIgZm9ybS4gVGhleSBhbGwgYWN0IGFzIHNlbGJyaSwgYW5kIGFyZSB1 c2VkIGluIHRoZSBzYW1lIHdheS4KCgoKQXMgd2VsbCBhcyBhIGZldyB3b3Jkcywgd2hpY2ggY2Fu IGFjdCBhcyBzdW10aToKCicnX19taV9fJycg4oCcSeKAnSBvciDigJx3ZeKAnSDigJMgdGhlIG9u ZSBvciB0aG9zZSB3aG8gYXJlIHNwZWFraW5nLgoKJydfX3RpX18nJyDigJx0aGlz4oCdIOKAkyBh IGNsb3NlIHRoaW5nIG9yIGV2ZW50IG5lYXJieSB3aGljaCBjYW4gYmUgcG9pbnRlZCB0byBieSB0 aGUgc3BlYWtlci4KCicnX19kb19fJycg4oCceW914oCdIOKAkyB0aGUgb25lIG9yIHRob3NlIHdo byBhcmUgYmVpbmcgc3Bva2VuIHRvLgoKCgpTZWUgdGhlIHN0cmFuZ2UgdHJhbnNsYXRpb25zIG9m IHRoZSBzZWxicmkgYWJvdmUgLSBlc3BlY2lhbGx5IHRoZSB4MSwgeDIgYW5kIHgzPyBUaG9zZSBh cmUgY2FsbGVkIHN1bXRpIHBsYWNlcy4gVGhleSBhcmUgcGxhY2VzIHdoZXJlIHN1bXRpIGNhbiBn byB0byBmaWxsIGEgYnJpZGkuIEZpbGxpbmcgYSBzdW10aSBpbiBhIHBsYWNlIHN0YXRlcyB0aGF0 IHRoZSBzdW10aSBmaXRzIGluIHRoYXQgcGxhY2UuIFRoZSBzZWNvbmQgcGxhY2Ugb2YgJydkdW5k YScnLCBmb3IgZXhhbXBsZSwgeDIsIGlzIHRoZSB0aGluZyBiZWluZyBnaXZlbi4gVGhlIHRoaXJk IGlzIHRoZSBvYmplY3Qgd2hpY2ggcmVjZWl2ZXMgdGhlIHRoaW5nLiBOb3RpY2UgYWxzbyB0aGF0 IHRoZSB0cmFuc2xhdGlvbiBvZiAnJ2R1bmRhJycgaGFzIHRoZSB3b3JkIOKAnHRv4oCdIGluIGl0 LiBUaGlzIGlzIGJlY2F1c2UsIHdoaWxlIHRoaXMgd29yZCBpcyBuZWVkZWQgaW4gRW5nbGlzaCB0 byBzaWduaWZ5IHRoZSByZWNlaXZlciwgdGhlIHJlY2VpdmVyIGlzIGluIHRoZSB0aGlyZCBzdW10 aSBwbGFjZSBvZiAnJ2R1bmRhJycuIFNvIHdoZW4geW91IGZpbGwgdGhlIHRoaXJkIHN1bXRpIHBs YWNlIG9mICcnZHVuZGEnJywgdGhlIHN1bXRpIHlvdSBmaWxsIGluIGlzIGFsd2F5cyB0aGUgcmVj ZWl2ZXIsIGFuZCB5b3UgZG9u4oCZdCBuZWVkIGFuIGVxdWl2YWxlbnQgdG8gdGhlIHdvcmQg4oCc dG/igJ0hCgoKClRvIHNheSBhIGJyaWRpLCB5b3Ugc2ltcGx5IHNheSB0aGUgeDEgc3VtdGkgZmly c3QsIHRoZW4gdGhlIHNlbGJyaSwgdGhlbiBhbnkgb3RoZXIgc3VtdGkuCgpVc3VhbCBicmlkaTog e3gxIHN1bXRpfSBfX3tzZWxicml9X18ge3gyIHN1bXRpfSB7eDMgc3VtdGl9IHt4NCBzdW10aX0g e3g1IHN1bXRpfSB7YW5kIHNvIG9ufQoKVGhlIG9yZGVyIGNhbiBiZSBwbGF5ZWQgYXJvdW5kIHdp dGgsIGJ1dCBmb3Igbm93LCB3ZSBzdGljayB3aXRoIHRoZSB1c3VhbCBmb3JtLiBUbyBzYXkg4oCc SSBnaXZlIHRoaXMgdG8geW914oCdIHlvdSBqdXN0IHNheSAnJ21pIGR1bmRhIHRpIGRvJycsIHdp dGggdGhlIHRocmVlIHN1bXRpIGF0IHRoZSByaWdodCBwbGFjZXMuCgoKClNvLCBob3cgd291bGQg eW91IHNheSDigJxUaGlzIGlzIGEgaG9tZSBvZiBtZeKAnT8KCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTonJ3RpIHpkYW5pIG1pJyd+fgoKCgpUcnkgYSBmZXcgbW9yZSBpbiBvcmRlciB0byBnZXQgdGhl IGlkZWEgb2YgYSBwbGFjZSBzdHJ1Y3R1cmUgc2luayBpbi4KCgoK4oCcWW91IGdpdmUgdGhpcyB0 byBtZeKAnT8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ2RvIGR1bmRhIHRpIG1pJyd+fgoKCgpB bmQgdHJhbnNsYXRlICcndGkgcGVseHUnJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoaXMg aXMgeWVsbG93LuKAnX5+CgoKClF1aXRlIGVhc3kgb25jZSB5b3UgZ2V0IHRoZSBoYW5nIG9mIGl0 LCByaWdodD8KCgoKTXVsdGlwbGUgYnJpZGkgYWZ0ZXIgZWFjaCBvdGhlciBhcmUgc2VwYXJhdGVk IGJ5ICcnLmknJyBUaGlzIGlzIHRoZSBMb2piYW4gZXF1aXZhbGVudCBvZiBmdWxsIHN0b3AsIGJ1 dCBpdCB1c3VhbGx5IGdvZXMgYmVmb3JlIGJyaWRpIGluc3RlYWQgb2YgYWZ0ZXIgdGhlbS4gSXTi gJlzIG9mdGVuIGxlZnQgb3V0IGJlZm9yZSB0aGUgZmlyc3QgYnJpZGksIHRob3VnaCwgYXMgaW4g YWxsIHRoZXNlIGV4YW1wbGVzOgoKJydfXy5pX18nJyBTZW50ZW5jZSBzZXBhcmF0b3IuIFNlcGFy YXRlcyBhbnkgdHdvIGp1ZnJhIChhbmQgdGhlcmVmb3JlIGFsc28gYnJpZGkpLgoKCgonJ3RpIHpk YW5pIG1pICAuaSB0aSBwZWx4dScnIOKAnVRoaXMgaXMgYSBob21lIHRvIG1lLiBUaGlzIGlzIHll bGxvdy7igJ0KCgoKQmVmb3JlIHlvdSBtb3ZlIG9uIHRvIHRoZSBuZXh0IGxlc3NvbiwgSSByZWNv bW1lbmQgdGhhdCB5b3UgdGFrZSBhIGJyZWFrIGZvciBhdCBsZWFzdCBzZXZlbiBtaW51dGVzIHRv IGxldCB0aGUgaW5mb3JtYXRpb24gc2luayBpbi4KCgoKCgohIUxvamJhbiBMZXNzb25zIOKAkyBs ZXNzb24gdHdvIChGQSBhbmQgem/igJllKQoKTW9zdCBzZWxicmkgaGF2ZSBmcm9tIG9uZSB0byBm aXZlIHN1bXRpIHBsYWNlcywgYnV0IHNvbWUgaGF2ZSBtb3JlLiBIZXJlIGlzIGEgc2VsYnJpIHdp dGggZm91ciBzdW10aSBwbGFjZXM6CgonJ19fdmVjbnVfXycnIHgxIHNlbGxzIHgyIHRvIHgzIGZv ciBwcmljZSB4NAoKCgpJZiBJIHdhbnQgdG8gc2F5IOKAnEkgc2VsbCB0aGlz4oCdLCBpdCB3b3Vs ZCBiZSB0b28gbXVjaCB0byBoYXZlIHRvIGZpbGwgdGhlIHN1bXRpIHBsYWNlcyB4MyBhbmQgeDQs IHdoaWNoIHNwZWNpZnkgd2hvIEkgc2VsbCB0aGUgdGhpbmcgdG8sIGFuZCBmb3Igd2hhdCBwcmlj ZS4gTHVja2lseSwgSSBkb27igJl0IG5lZWQgdG8uIHN1bXRpIHBsYWNlcyBjYW4gYmUgZmlsbGVk IHdpdGggJyd6b+KAmWUnJy4gJyd6b+KAmWUnJyBpbmRpY2F0ZXMgdG8gdXMgdGhhdCB0aGUgdmFs dWUgb2YgdGhlIHN1bXRpIHBsYWNlIGlzIHVuc3BlY2lmaWVkIGJlY2F1c2UgaXTigJlzIHVuaW1w b3J0YW50IG9yIGNhbiBiZSBkZXRlcm1pbmVkIGZyb20gY29udGV4dC4KCicnX196b+KAmWVfXycn IOKAnHNvbWV0aGluZ+KAnSBGaWxscyBhIHN1bXRpIHBsYWNlIHdpdGggc29tZXRoaW5nLCBidXQg ZG9lcyBub3Qgc3RhdGUgd2hhdC4KCgoKU28gdG8gc2F5IOKAnEkgc2VsbCB0byB5b3XigJ0sIEkg Y291bGQgc2F5ICcnbWkgdmVjbnUgem/igJllIGRvIHpv4oCZZScnIOKAkyBJIHNlbGwgc29tZXRo aW5nIHRvIHlvdSBmb3Igc29tZSBwcmljZS4KCkhvdyB3b3VsZCB5b3Ugc2F5OiDigJxUaGF04oCZ cyBhIGhvbWUgKGZvciBzb21lYm9keSnigJ0/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6ICcndGkg emRhbmkgem/igJllJyd+fgoKCgpIb3cgYWJvdXQg4oCcKHNvbWVvbmUpIGdpdmVzIHRoaXMgdG8g KHNvbWVvbmUp4oCdPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5Oicnem/igJllIGR1bmRhIHRpIHpv 4oCZZScnfn4KCgoKU3RpbGwsIGZpbGxpbmcgb3V0IHRocmVlIHpv4oCZZSBqdXN0IHRvIHNheSB0 aGF0IGEgdGhpbmcgaXMgYmVpbmcgc29sZCB0YWtlcyB0aW1lLiBUaGVyZWZvcmUgeW91IGRvbuKA mXQgbmVlZCB0byB3cml0ZSBhbGwgdGhlICcnem/igJllJycgaW4gYSBicmlkaS4gVGhlIHJ1bGUg c2ltcGx5IGlzIHRoYXQgaWYgeW91IGxlYXZlIG91dCBhbnkgc3VtdGksIHRoZXkgd2lsbCBiZSBj b25zaWRlcmVkIGFzIGlmIHRoZXkgY29udGFpbmVkICcnem/igJllJycuIElmIHRoZSBicmlkaSBi ZWdpbnMgd2l0aCBhIHNlbGJyaSwgdGhlIHgxIGlzIHByZXN1bWVkIHRvIGJlIG9taXR0ZWQgYW5k IGl0IGJlY29tZXMgJyd6b+KAmWUnJy4KClRyeSBpdCBvdXQuIFdoYXTigJlzIExvamJhbiBmb3Ig 4oCcSSBzZWxs4oCdPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgdmVjbnUnJ35+CgoKCkFu ZCB3aGF0IGRvZXMgJyd6ZGFuaSBtaScnIG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCc U29tZXRoaW5nIGlzIGEgaG9tZSBvZiBtZeKAnSBvciBqdXN0IOKAnEkgaGF2ZSBhIGhvbWUu4oCd fn4KCgoKQXMgbWVudGlvbmVkIGVhcmxpZXIsIHRoZSBmb3JtIGRvZXNu4oCZdCBoYXZlIHRvIGJl IHt4MSBzdW10aX0ge3NlbGJyaX0ge3gyIHN1bXRpfSB7eDMgc3VtdGl9IChldGMuKSBJbiBmYWN0 LCB5b3UgY2FuIHBsYWNlIHRoZSBzZWxicmkgYW55d2hlcmUgeW91IHdhbnQsIGp1c3Qgbm90IGF0 IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJyaWRpLiBJZiB5b3UgZG8gdGhhdCwgdGhlIHgxIGlzIGNv bnNpZGVyZWQgbGVmdCBvdXQgYW5kIGZpbGxlZCB3aXRoICcnem/igJllJycgaW5zdGVhZC4gU28g dGhlIGZvbGxvd2luZyB0aHJlZSBqdWZyYSBhcmUgYWxsIHRoZSBleGFjdGx5IHNhbWUgYnJpZGk6 CgonJ21pIGR1bmRhIHRpIGRvJycKCicnbWkgdGkgZHVuZGEgZG8nJwoKJydtaSB0aSBkbyBkdW5k YScnCgoKClNvbWV0aW1lcyB0aGlzIGlzIHVzZWQgZm9yIHBvZXRpYyBlZmZlY3QuIOKAnFlvdSBz ZWxsIHlvdXJzZWxm4oCdIGNvdWxkIGJlICcnZG8gZG8gdmVjbnUnJywgd2hpY2ggc291bmRzIGJl dHRlciB0aGFuICcnZG8gdmVjbnUgZG8nJy4gT3IgaXQgY2FuIGJlIHVzZWQgZm9yIGNsYXJpdHkg aWYgdGhlIHNlbGJyaSBpcyB2ZXJ5IGxvbmcgYW5kIHRoZXJlZm9yZSBiZXR0ZXIgYmUgbGVmdCBh dCB0aGUgZW5kIG9mIHRoZSBicmlkaS4KCgoKVGhlcmUgYXJlIGFsc28gc2V2ZXJhbCB3YXlzIHRv IHBsYXkgYXJvdW5kIHdpdGggdGhlIG9yZGVyIG9mIHRoZSBzdW10aSBpbnNpZGUgdGhlIGJyaWRp LiBUaGUgZWFzaWVzdCBvbmUgaXMgYnkgdXNpbmcgdGhlIHdvcmRzICcnZmEnJywgJydmZScnLCAn J2ZpJycsICcnZm8nJyBhbmQgJydmdScnLiBOb3RpY2UgdGhhdCB0aGUgdm93ZWxzIGFyZSB0aGUg Zml2ZSB2b3dlbHMgaW4gdGhlIExvamJhbiBhbHBoYWJldCBpbiBvcmRlci4gVXNpbmcgb25lIG9m IHRoZXNlIHdvcmRzIG1hcmtzIHRoYXQgdGhlIG5leHQgc3VtdGkgd2lsbCBmaWxsIHRoZSB4MSwg eDIsIHgzLCB4NCBhbmQgeDUgcmVzcGVjdGl2ZWx5LiBUaGUgbmV4dCBzdW10aSBhZnRlciB0aGF0 IHdpbGwgYmUgcHJlc3VtZWQgdG8gZmlsbCBhIHNsb3Qgb25lIGdyZWF0ZXIgdGhhbiB0aGUgcHJl dmlvdXMuIFRvIHVzZSBhbiBleGFtcGxlOgoKJydkdW5kYSBmYSBkbyBmZSB0aSBkbycnIOKAkyDi gJxHaXZpbmcgYnkgeW91IG9mIHRoaXMgdGhpbmcgdG8geW914oCdLiAnJ2ZhJycgbWFya3MgdGhl IHgxLCB0aGUgZ2l2ZXIsIHdoaWNoIGlzIHlvdS4gJydmZScnIG1hcmtzIHRoZSB0aGluZyBiZWlu ZyBnaXZlbiwgdGhlIHgyLiBTdW10aSBjb3VudGluZyB0aGVuIGNvbnRpbnVlcyBmcm9tICcnZmUn JywgbWVhbmluZyB0aGF0IHRoZSBsYXN0IHN1bXRpIGZpbGxzIHgzLCB0aGUgb2JqZWN0IHJlY2Vp dmluZy4KCgoKQXR0ZW1wdCB0byB0cmFuc2xhdGUgdGhlIGZvbGxvd2luZyB0aHJlZSBzZW50ZW5j ZXM6CgoKCicnbWkgdmVjbnUgZm8gdGkgZmUgZG8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKA nUkgc2VsbCwgZm9yIHRoZSBwcmljZSBvZiB0aGlzLCB5b3XigJ0uIG9yIOKAnEkgc2VsbCB5b3Ug Zm9yIHRoZSBwcmljZSBvZiB0aGlz4oCdIChwcm9iYWJseSBwb2ludGluZyB0byBhIGJ1bmNoIG9m IG1vbmV5KX5+CgoKCicnemRhbmkgZmUgdGknJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRo aXMgaGFzIGEgaG9tZeKAnS4gSGVyZSwgdGhlIGZlIGlzIHJlZHVuZGFudC5+fgoKCgonJ3ZlY251 IHpv4oCZZSBtaSB0aSBmYSBkbycnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcWW91IHNlbGwg c29tZXRoaW5nIHRvIG1lIGZvciB0aGlzIHByaWNl4oCdfn4KCgoKCgohIUxvamJhbiBMZXNzb25z IOKAkyBsZXNzb24gdGhyZWUgKHRhbnJ1IGFuZCBsbykKCkluIHRoaXMgbGVzc29uLCB5b3Ugd2ls bCBiZWNvbWUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdCBvZiBhICcndGFucnUnJy4gQSB0YW5y dSBpcyBmb3JtZWQgd2hlbiBhIHNlbGJyaSBpcyBwdXQgaW4gZnJvbnQgb2YgYW5vdGhlciBzZWxi cmksIG1vZGlmeWluZyBpdHMgbWVhbmluZy4gQSB0YW5ydSBpcyBpdHNlbGYgYSBzZWxicmksIGFu ZCBjYW4gY29tYmluZSB3aXRoIG90aGVyIHNlbGJyaSBvciB0YW5ydSB0byBmb3JtIG1vcmUgY29t cGxleCB0YW5ydS4gVGh1cyAnJ3pkYW5pIHZlY251JycgaXMgYSB0YW5ydSwgYXMgd2VsbCBhcyAg JydwZWx4dSB6ZGFuaSB2ZWNudScnLCB3aGljaCBpcyBtYWRlIGZyb20gdGhlIHRhbnJ1ICcncGVs eHUgemRhbmknJyBhbmQgdGhlIHNpbmdsZSBicml2bGEgd29yZCAnJ3ZlY251JycuIFRvIHVuZGVy c3RhbmQgdGhlIGNvbmNlcHQgb2YgdGFucnUsIGNvbnNpZGVyIHRoZSBFbmdsaXNoIG5vdW4gY29t YmluYXRpb24g4oCcbGVtb24gdHJlZeKAnS4gSWYgeW91IGRpZG7igJl0IGtub3cgd2hhdCBhIGxl bW9uIHRyZWUgd2FzLCBidXQgaGFkIGhlYXJkIGFib3V0IGJvdGggbGVtb25zIGFuZCB0cmVlcywg eW91IHdvdWxkIG5vdCBiZSBhYmxlIHRvIGRlZHVjZSB3aGF0IGEgbGVtb24gdHJlZSB3YXMuIFBl cmhhcHMgYSBsZW1vbi1jb2xvcmVkIHRyZWUsIG9yIGEgdHJlZSBzaGFwZWQgbGlrZSBhIGxlbW9u LCBvciBhIHRyZWUgd2hvc2UgYmFyayB0YXN0ZXMgbGlrZSBsZW1vbi4gVGhlIG9ubHkgdGhpbmdz IHlvdSBjb3VsZCBrbm93IGZvciBzdXJlIHdvdWxkIGJlIHRoYXQgaXQgd291bGQgYmUgYSB0cmVl LCBhbmQgaXQgd291bGQgYmUgbGVtb24tbGlrZSBpbiBzb21lIHdheS4KCkEgdGFucnUgaXMgY2xv c2VseSBhbmFsb2dvdXMgdG8gdGhpcy4gSXQgY2Fubm90IGJlIHNhaWQgZXhhY3RseSB3aGF0IGEg Jyd6ZGFuaSB2ZWNudScnIGlzLCBidXQgaXQgY2FuIGJlIHNhaWQgdGhhdCBpdCBpcyBkZWZpbml0 ZWx5IGEgdmVjbnUsIGFuZCB0aGF0IGl04oCZcyB6ZGFuaS1saWtlIGluIHNvbWUgd2F5LiBBbmQg aXQgY291bGQgYmUgemRhbmktbGlrZSBpbiBhbnkgd2F5LiBJbiB0aGVvcnksIG5vIG1hdHRlciBo b3cgc2lsbHkgb3IgYWJzdXJkIHRoZSBjb25uZWN0aW9uIHRvIHpkYW5pIHdhcywgaXQgY291bGQg c3RpbGwgdHJ1bHkgYmUgYSAnJ3pkYW5pIHZlY251JycuIEhvd2V2ZXIsIGl0IG11c3QgYWN0dWFs bHkgYmUgYSB2ZWNudSBpbiB0aGUgb3JkaW5hcnkgc2Vuc2UgaW4gb3JkZXIgZm9yIHRoZSB0YW5y dSB0byBhcHBseS4gWW91IGNvdWxkIGdsb3NzICcnemRhbmkgdmVjbnUnJyBhcyDigJxob21lIHNl bGxlcuKAnSwgb3IgZXZlbiBiZXR0ZXIgYnV0IHdvcnNlIHNvdW5kaW5nIOKAnGEgaG9tZS10eXBl LW9mIHNlbGxlcuKAnS4gVGhlIHBsYWNlIHN0cnVjdHVyZSBvZiBhIHRhbnJ1IGlzIGFsd2F5cyB0 aGF0IG9mIHRoZSByaWdodG1vc3Qgc2VsYnJpLiBJdOKAmXMgYWxzbyBzYWlkIHRoYXQgdGhlIGxl ZnQgc2VsYnJpIG1vZGlmaWVzIHRoZSByaWdodCBzZWxicmkuCgrigJxSZWFsbHk/4oCdLCB5b3Ug YXNrLCBzY2VwdGljYWxseSwg4oCcSXQgZG9lc27igJl0IG1hdHRlciBob3cgc2lsbHkgdGhlIGNv bm5lY3Rpb24gdG8gdGhlIGxlZnQgd29yZCBpbiBhIHRhbnJ1IGlzLCBpdOKAmXMgc3RpbGwgdHJ1 ZT8gU28gSSBjb3VsZCBjYWxsIGFsbCBzZWxsZXJzIGZvciAnJ3pkYW5pIHZlY251JycgYW5kIHRo ZW4gbWFrZSB1cCBzb21lIHNpbGx5IGV4Y3VzZSB3aHkgSSB0aGluayBpdOKAmXMgemRhbmktbGlr ZT/igJ0KCldlbGwgeWVzLCBidXQgdGhlbiB5b3XigJlkIGJlIGEgZGljay4gT3IgYXQgbGVhc3Qg eW914oCZZCBiZSBpbnRlbnRpb25hbGx5IG1pc2xlYWRpbmcuIEluIGdlbmVyYWwsIHlvdSBzaG91 bGQgdXNlIGEgdGFucnUgd2hlbiBpdOKAmXMgb2J2aW91cyBob3cgdGhlIGxlZnQgd29yZCByZWxh dGVzIHRvIHRoZSByaWdodC4KCgoKQXR0ZW1wdCB0byB0cmFuc2xhdGUgdGhlIGZvbGxvd2luZzog Jyd0aSBwZWx4dSB6ZGFuaSBkbycnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcVGhhdCBpcyBh IHllbGxvdyBob21lIGZvciB5b3XigJ0gQWdhaW4sIHdlIGRvbuKAmXQga25vdyBpbiB3aGljaCB3 YXkgaXTigJlzIHllbGxvdy4gUHJvYmFibHkgaXTigJlzIHBhaW50ZWQgeWVsbG93LCBidXQgd2Ug ZG9u4oCZdCBrbm93IGZvciBzdXJlLn5+CgoKCicnbWkgdmVjbnUgZHVuZGEnJwoKCgpBbnN3ZXI6 IH5+Z3JleSxncmV5OuKAnEkgc2VsbC1saWtlIGdpdmXigJ0uIFdoYXQgY2FuIHRoYXQgbWVhbj8g Tm8gaWRlYS4gSXQgY2VydGFpbmx5IGRvZXNu4oCZdCBtZWFuIHRoYXQgeW91IHNvbGQgc29tZXRo aW5nLCBzaW5jZSwgYnkgZGVmaW5pdGlvbiBvZiAnJ2R1bmRhJycsIHRoZXJlIGNhbiBiZSBubyBw YXltZW50IGludm9sdmVkLiBJdCBoYXMgdG8gYmUgYSBnaXZlYXdheSwgYnV0IGJlIHNlbGwtbGlr ZSBpbiBzb21lIGFzcGVjdC5+fgoKCgpBbmQgbm93IGZvciBzb21ldGhpbmcgY29tcGxldGVseSBk aWZmZXJlbnQuIFdoYXQgaWYgSSB3YW50ZWQgdG8gc2F5IEkgc29sZCB0byBhIEdlcm1hbj8KCicn X19kb3Rjb19fJycgeDEgaXMgR2VybWFuL3JlZmxlY3RzIEdlcm1hbiBjdWx0dXJlIGluIGFzcGVj dCB4MgoKCgpJIGNhbuKAmXQgc2F5ICcnbWkgdmVjbnUgem/igJllIGRvdGNvJycgYmVjYXVzZSB0 aGF0IHdvdWxkIGxlYXZlIHR3byBzZWxicmkgaW4gYSBicmlkaSwgd2hpY2ggaXMgbm90IHBlcm1p dHRlZC4gSSBjb3VsZCBzYXkgJydtaSBkb3RjbyB2ZWNudScnIGJ1dCB0aGF0IHdvdWxkIGJlIHVu bmVjZXNzYXJ5IHZhZ3VlIC0gSSBjb3VsZCBzZWxsIGluIGEgR2VybWFuIHdheS4gTGlrZXdpc2Us IGlmIEkgd2FudCB0byBzYXkg4oCcSSBhbSBmcmllbmRzIHdpdGggYW4gQW1lcmljYW7igJ0sIHdo YXQgc2hvdWxkIEkgc2F5PwoKJydfX3BlbmRvX18nJyAxeCBpcyBhIGZyaWVuZCBvZiB4MgoKJydf X21lcmtvX18nJyB4MSBpcyBBbWVyaWNhbi9yZWZsZWN0IFVTIGN1bHR1cmUgaW4gYXNwZWN0IHgy CgoKCkFnYWluLCB0aGUgb2J2aW91cyB3b3VsZCBiZSB0byBzYXkgJydtaSBwZW5kbyBtZXJrbycn LCBidXQgdGhhdCB3b3VsZCBmb3JtIGEgdGFucnUsIG1lYW5pbmcg4oCcSSBhbSBmcmllbmQtbGlr ZSBBbWVyaWNhbuKAnSwgd2hpY2ggaXMgd3JvbmcuIFdoYXQgd2UgcmVhbGx5IHdhbnQgdG8gaXMg dG8gdGFrZSB0aGUgc2VsYnJpICcnbWVya28nJyBhbmQgdHJhbnNmb3JtIGl0IGludG8gYSBzdW10 aSBzbyBpdCBjYW4gYmUgdXNlZCBpbiB0aGUgc2VsYnJpICcncGVuZG8nJy4gVGhpcyBpcyBkb25l IGJ5IHRoZSB0d28gd29yZHMgJydsbycnIGFuZCAnJ2t1JycuCgpfXycnbG8nJ19fIOKAkyBnZW5l cmljIGJlZ2luIGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRpIHdvcmQuIEV4dHJhY3RzIHgxIG9mIHNl bGJyaSB0byB1c2UgYXMgc3VtdGkuCgpfXycna3UnJ19fIOKAkyBlbmQgY29udmVydCBzZWxicmkg dG8gc3VtdGkgcHJvY2Vzcy4KCgoKWW91IHNpbXBseSBwbGFjZSBhIHNlbGJyaSBiZXR3ZWVuIHRo ZXNlIHR3byB3b3JkcywgYW5kIGl0IHRha2VzIGFueXRoaW5nIHRoYXQgY2FuIGZpbGwgdGhlIHgx IG9mIHRoYXQgc2VsYnJpIGFuZCB0dXJucyBpdCBpbnRvIGEgc3VtdGkuCgpTbyBmb3IgaW5zdGFu Y2UsIHRoZSB0aGluZ3MgdGhhdCBjYW4gZmlsbCB6ZGFuaeKAmHMgeDEgYXJlIG9ubHkgdGhpbmdz IHdoaWNoIGFyZSBob21lcyBvZiBzb21lYm9keS4gU28gJydsbyB6ZGFuaSBrdScnIG1lYW5zIOKA nGEgaG9tZSBvciBzb21lIGhvbWVzIGZvciBzb21lYm9keS7igJ0gU2ltaWxhcmx5LCBpZiBJIHNh eSB0aGF0IHNvbWV0aGluZyBpcyBwZWx4dSwgaXQgbWVhbnMgaXTigJlzIHllbGxvdy4gU28gJyds byBwZWx4dSBrdScnIHJlZmVycyB0byBzb21ldGhpbmcgeWVsbG93LgoKCgpOb3cgeW91IGdvdCB0 aGUgbmVjZXNzYXJ5IGdyYW1tYXIgdG8gYmUgYWJsZSB0byBzYXkg4oCcSSBhbSBmcmllbmRzIHdp dGggYW4gQW1lcmljYW4u4oCdIEhvdz8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIHBlbmRv IGxvIG1lcmtvIGt1Jyd+fgoKCgpUaGVyZSBpcyBhIGdvb2QgcmVhc29uIHdoeSB0aGUgJydrdScn IGlzIG5lY2Vzc2FyeS4gVHJ5IHRvIHRyYW5zbGF0ZSDigJxBIEdlcm1hbiBzZWxscyB0aGlzIHRv IG1l4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydsbyBkb3RjbyBrdSB2ZWNudSB0aSBtaScn IElmIHlvdSBsZWF2ZSBvdXQgdGhlIGt1LCB5b3UgZG8gbm90IGdldCBhIGJyaWRpLCBidXQgc2lt cGx5IHRocmVlIHN1bXRpLiBTaW5jZSBsb+KApmt1IGNhbm5vdCBjb252ZXJ0IGJyaWRpLCB0aGUg dGkgaXMgZm9yY2VkIG91dHNpZGUgdGhlIHN1bXRpLCB0aGUgbG8tY29uc3RydWN0IGlzIGZvcmNl ZCB0byBjbG9zZSBhbmQgaXQgc2ltcGx5IGJlY29tZXMgdGhlIHRocmVlIHN1bXRpIG9mICcnbG8g ZG90Y28gdmVjbnUge2t1fScnLCAnJ3RpJycgYW5kICcnbWknJy5+fgoKCgpZb3UgYWx3YXlzIGhh dmUgdG8gYmUgY2FyZWZ1bCB3aXRoIGp1ZnJhIGxpa2UgJydsbyB6ZGFuaSBrdSBwZWx4dScnLiBJ ZiB0aGUgJydrdScnIGlzIGxlZnQgb3V0IHRoZSBjb252ZXJzaW9uIHByb2Nlc3MgZG9lcyBub3Qg ZW5kLCBhbmQgaXQgc2ltcGx5IGJlY29tZXMgb25lIHN1bXRpLCBtYWRlIGZyb20gdGhlIHRhbnJ1 ICcnemRhbmkgcGVseHUnJyBhbmQgdGhlbiBjb252ZXJ0ZWQgd2l0aCAnJ2xvJycuCgoKCgoKISFM b2piYW4gTGVzc29ucyDigJMgbGVzc29uIGZvdXIgKGF0dGl0dWRpbmFscykKCkFub3RoZXIgY29u Y2VwdCB3aGljaCBjYW4gYmUgdW5mYW1pbGlhciB0byBFbmdsaXNoIHNwZWFrZXJzIGlzIHRoYXQg b2YgYXR0aXR1ZGluYWxzLiBBdHRpdHVkaW5hbHMgYXJlIHdvcmRzIHRoYXQgZXhwcmVzcyBlbW90 aW9ucyBkaXJlY3RseS4gVGhlIGlkZWEgb2YgYXR0aXR1ZGluYWxzIG9yaWdpbmF0ZWQgaW4gdGhl IGZlbWluaXN0IGNvbnN0cnVjdGVkIGxhbmd1YWdlIEzDoWFkYW4sIHN1cHBvc2VkbHkgdG8gZW5h YmxlIHRydWUgZmVtYWxlIGVtb3Rpb25zLiBUaGUgaWRlYSB3YXMgdGhhdCBmZW1hbGUgZW1vdGlv bmFsIGV4cHJlc3Npb24gd2FzIGhpbmRlcmVkIGJ5IG1hbGUgZG9taW5hdGVkIGxhbmd1YWdlLCBh bmQgaWYgb25seSB0aGV5IHdlcmUgYWJsZSB0byBiZSBleHByZXNzZWQgbW9yZSBmcmVlbHksIHRo aXMgd291bGQgZW1wb3dlciB3b21lbiB0aHJvdWdoIGxpYmVyYXRpb24gb2YgdGhlIGxhbmd1YWdl LgoKSW4gTG9qYmFuLCB0aGVyZSBpcyBubyBzdWNoIGFnZW5kYSwgYW5kIGF0dGl0dWRpbmFscyBt b3N0IHByb2JhYmx5IGhhdmUgYmVlbiBkZXNpZ25lZCBpbnRvIHRoZSBsYW5ndWFnZSBiZWNhdXNl IHRoZXkgdHVybmVkIG91dCB0byBiZSBpbmNyZWRpYmx5IGF3ZXNvbWUgYW5kIHVzZWZ1bC4gVGhl eSBhbGwgaGF2ZSBhIHNvLWNhbGxlZCBmcmVlIGdyYW1tYXIsIHdoaWNoIG1lYW5zIHRoYXQgdGhl eSBjYW4gYXBwZWFyIGFsbW9zdCBhbnl3aGVyZSB3aXRoaW4gYnJpZGkgd2l0aG91dCBkaXNydXB0 aW5nIHRoZSBicmlkaeKAmXMgZ3JhbW1hciBvciBhbnkgZ3JhbW1hdGljYWwgY29uc3RydWN0cy4K CkluIExvamJhbiBncmFtbWFyLCBhbiBhdHRpdHVkaW5hbCBhcHBsaWVzIHRvIHRoZSBwcmV2aW91 cyB3b3JkLiBJZiB0aGF0IHByZXZpb3VzIHdvcmQgaXMgYSB3b3JkIHdoaWNoIGJlZ2lucyBhIGNv bnN0cnVjdCAobGlrZSAnJy5pJycgb3IgJydsbycnKSwgaXQgYXBwbGllcyB0byB0aGUgZW50aXJl IGNvbnN0cnVjdC4gTGlrZXdpc2UsIGlmIHRoZSBhdHRpdHVkaW5hbCBmb2xsb3dzIGEgd29yZCB3 aGljaCBlbmRzIGEgY29uc3RydWN0IGxpa2UgJydrdScnLCBpdCBhcHBsaWVzIHRvIHRoZSBlbmRl ZCBjb25zdHJ1Y3QuCgoKCkxldOKAmXMgaGF2ZSB0d28gYXR0aXR1ZGluYWxzIHRvIG1ha2Ugc29t ZSBleGFtcGxlczoKCl9fJycudWknJ19fOiBhdHRpdHVkaW5hbDogc2ltcGxlIHB1cmUgZW1vdGlv bjogaGFwcGluZXNzIC0gdW5oYXBwaW5lc3MKCl9fJyd6YeKAmWEnJ19fOiBhdHRpdHVkaW5hbDog ZXZpZGVudGlhbDogSSBkaXJlY3RseSBvYnNlcnZlCgoKCk5vdGUgdGhhdCBpbiB0aGUgZGVmaW5p dGlvbiBvZiAnJy51aScnLCB0aGVyZSBhcmUgbGlzdGVkIHR3byBlbW90aW9ucywgaGFwcGluZXNz IGFuZCB1bmhhcHBpbmVzcy4gVGhpcyBtZWFucyB0aGF0ICcnLnVpJycgaXMgZGVmaW5lZCBhcyBo YXBwaW5lc3MsIHdoaWxlIGl0cyDigJxuZWdhdGlvbuKAnSwgbWVhbnMgdW5oYXBwaW5lc3MuIOKA nE5lZ2F0aW9u4oCdIG1pZ2h0IGJlIHRoZSB3cm9uZyB3b3JkIGhlcmUuIFRlY2huaWNhbGx5LCB0 aGUgb3RoZXIgZGVmaW5pdGlvbiBvZiAnJy51aScnIGlzIGFub3RoZXIgY29uc3RydWN0LCAnJy51 aSBuYWknJy4gTW9zdCBvZiB0aGUgdGltZSwgdGhlIHNlY29uZCBkZWZpbml0aW9uIG9mIGF0dGl0 dWRpbmFscyAtIHRoZSBvbmVzIHN1ZmZpeGVkIHdpdGggJyduYWknJyAtIHJlYWxseSBpcyB0aGUg bmVnYXRpb24gb2YgdGhlIGJhcmUgYXR0aXR1ZGluYWwuIE90aGVyIHRpbWVzLCBub3Qgc28gbXVj aC4KCl9fJyduYWknJ19fIG1pc2MuIG5lZ2F0aW9uIC0gYXR0YWNoZWQgdG8gYXR0aXR1ZGluYWxz LCBpdCBjaGFuZ2VzIHRoZSBtZWFuaW5nIGludG8gdGhlIGF0dGl0dWRpbmFsJ3MgIm5lZ2F0aW9u IgoKCgpBbmQgc29tZSBtb3JlIHNlbGJyaSwganVzdCBmb3IgdGhlIGhlY2sgb2YgaXQ6CgpfXycn Y2l0a2EnJ19fIOKAkyB4MSBlYXRzIHgyCgpfXycncGxpc2UnJ19fIOKAkyB4MSBpcyBhbiBhcHBs ZSBvZiBzdHJhaW4vdHlwZSB4MgoKCgpUaGUgc2VudGVuY2UgJydkbyBjaXRrYSBsbyBwbGlzZSBr dSAudWknJywgbWVhbnMg4oCcWW91IGVhdCBhbiBhcHBsZSwgeWF5IeKAnSAoZXNwZWNpYWxseSBl eHByZXNzaW5nIHRoYXQgaXQgaXMgdGhlIF9fYXBwbGVfXyB0aGF0IHRoZSBzcGVha2VyIGlzIGhh cHB5IGFib3V0LCBub3QgdGhlIGVhdGluZywgb3IgdGhlIGZhY3QgdGhhdCBpdCB3YXMgeW91Likg SW4gdGhlIHNlbnRlbmNlICcnZG8gemHigJlhIGNpdGthIGxvIHBsaXNlIGt1JycsIHRoZSBzcGVh a2VyIGRpcmVjdGx5IG9ic2VydmVzIHRoYXQgaXQgaXMgaW5kZWVkIHRoZSBfX+KAnHlvdeKAnV9f LCB3aG8gZWF0cyBhbiBhcHBsZSBhcyBvcHBvc2VkIHRvIHNvbWVvbmUgZWxzZS4KCgoKSWYgYW4g YXR0aXR1ZGluYWwgaXMgcGxhY2VkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJyaWRpLCBpdCBp cyB1bmRlcnN0b29kIHRvIGFwcGx5IHRvIGFuIGV4cGxpY2l0IG9yIGltcGxpY2l0ICcnLmknJywg dGh1cyBhcHBseWluZyB0byB0aGUgZW50aXJlIGJyaWRpOgoKJycudWkgemHigJlhIGRvIGR1bmRh IGxvIHBsaXNlIGt1IG1pJycg4oCTIOKAnFlheSwgSSBvYnNlcnZlIHRoYXQgeW91IGdpdmUgYW4v c29tZSBhcHBsZSB0byBtZSHigJ0KCgoKJydtaSB2ZWNudSAudWkgbmFpIGxvIHpkYW5pIGt1Jycg 4oCcSSBzZWxsICh3aGljaCBzdWNrcyEpIGEgaG9tZeKAnS4KCgoKVHJ5IGl0IG91dCB3aXRoIGEg ZmV3IGV4YW1wbGVzLiBGaXJzdCwgdGhvdWdoLCBoZXJlIGFyZSBzb21lIG1vcmUgYXR0aXR1ZGlu YWxzOgoKX18nJy514oCZdScnX18gYXR0aXR1ZGluYWw6IHNpbXBsZSBwdXJlIGVtb3Rpb246IGd1 aWx0IC0gcmVtb3JzZWxlc3NuZXNzIC0gaW5ub2NlbmNlLgoKX18nJy5vaScnX18gYXR0aXR1ZGlu YWw6IGNvbXBsZXggcHVyZSBlbW90aW9uOiBwYWluIC0gY29tcGxhY2VuY3kgLSBjb21mb3J0LgoK X18nJy5pdScnX18gYXR0aXR1ZGluYWw6IG1pc2NlbGxhbmVvdXMgcHVyZSBlbW90aW9uOiBsb3Zl IC0gaGF0ZS4KCgoKTG9vayBhdCB0aGF0LCB0d28gd29yZHMgd2l0aCB0aHJlZSBlbW90aW9ucyBp biB0aGUgZGVmaW5pdGlvbiEgVGhlIG1pZGRsZSBvbmUgaXMgYWNjZXNzZWQgYnkgc3VmZml4aW5u ZyB3aXRoICcnY3XigJlpJycuIEl04oCZcyBjb25zaWRlcmVkIHRoZSBtaWRwb2ludCBvZiB0aGUg ZW1vdGlvbi4KCl9fJydjdSdpJydfXyBhdHRpdHVkaW5hbCBtaWRwb2ludCBzY2FsYXI6IGF0dGFj aCB0byBhdHRpdHVkaW5hbCB0byBjaGFuZ2UgdGhlIG1lYW5pbmcgdG8gdGhlICJtaWRwb2ludCIg b2YgdGhlIGVtb3Rpb24uCgoKClRyeSBzYXlpbmcg4oCcSSBnaXZlIHNvbWV0aGluZyB0byBhIEdl cm1hbiwgd2hvIEkgbG92ZeKAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgZHVuZGEgZmkg bG8gZG90Y28ga3UgLml1Jycgb3IgJyd6b+KAmWUnJyBpbnN0ZWFkIG9mICcnZmknJ35+CgoKCk5v dyDigJxBYWgsIEkgZWF0IGEgeWVsbG93IGFwcGxl4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6 Jycub2kgbmFpIG1pIGNpdGthIGxvIHBlbHh1IHBsaXNlIGt1Jyd+fgoKCgpMZXTigJlzIGhhdmUg YW5vdGhlciBhdHRpdHVkaW5hbCBvZiBhIGRpZmZlcmVudCBraW5kIHRvIGlsbHVzdHJhdGUgc29t ZXRoaW5nIHBlY3VsaWFyOgoKJycuZWknJyBBdHRpdHVkaW5hbDogY29tcGxleCBwcm9wb3NpdGlv bmFsIGVtb3Rpb246IG9ibGlnYXRpb24gLSBmcmVlZG9tLgoKCgpTbywgcXVpdGUgZWFzeTog4oCc SSBoYXZlIHRvIGdpdmUgdGhlIGFwcGxlIGF3YXnigJ0gaXMgJydtaSBkdW5kYSAuZWkgbG8gcGxp c2Uga3UnJywgcmlnaHQ/IEl0IGlzLCBhY3R1YWxseSEgV2hlbiB5b3UgdGhpbmsgYWJvdXQgaXQs IHRoYXTigJlzIHdlaXJkLiBXaHkgaXMgaXQgdGhhdCBhbGwgdGhlIG90aGVyIGF0dGl0dWRpbmFs cyB3ZSBoYXZlIHNlZW4gc28gZmFyIGV4cHJlc3NlcyB0aGUgc3BlYWtlcnMgZmVlbGluZyBhYm91 dCB0aGUgYnJpZGksIGJ1dCB0aGlzIG9uZSBhY3R1YWxseSBjaGFuZ2VzIHdoYXQgdGhlIGJyaWRp IG1lYW5zPyBTdXJlbHksIGJ5IHNheWluZyDigJxJIGhhdmUgdG8gZ2l2ZSB0aGUgYXBwbGUgYXdh eeKAnSwgd2Ugc2F5IG5vdGhpbmcgYWJvdXQgd2hldGhlciB0aGUgYXBwbGUgYWN0dWFsbHkgaXMg YmVpbmcgZ2l2ZW4gYXdheS4gSWYgSSBoYWQgdXNlZCAnJy51aScnLCBob3dldmVyLCBJIHdvdWxk IGFjdHVhbGx5IGhhdmUgc3RhdGVkIHRoYXQgSSBnYXZlIHRoZSBhcHBsZSBhd2F5LCBhbmQgdGhh dCBJIHdhcyBoYXBweSBhYm91dCBpdC4gV2hhdOKAmXMgdGhhdCBhbGwgYWJvdXQ/CgoKClRoaXMg aXNzdWUsIGV4YWN0bHkgaG93IGF0dGl0dWRpbmFscyBjaGFuZ2UgdGhlIGNvbmRpdGlvbnMgb24g d2hpY2ggYSBicmlkaSBpcyB0cnVlLCBpcyBhIHN1YmplY3Qgb2YgYSBtaW5vciBkZWJhdGUuIFRo ZSBvZmZpY2lhbCwg4oCcdGV4dGJvb2vigJ0gcnVsZSwgd2hpY2ggcHJvYmFibHkgd29u4oCZdCBi ZSBjaGFuZ2VkLCBpcyB0aGF0IHRoZXJlIGlzIGEgZGlzdGluY3Rpb24gYmV0d2VlbiDigJxwdXJl IGVtb3Rpb25z4oCdIGFuZCDigJxwcm9wb3NpdGlvbmFsIGVtb3Rpb25z4oCdLiBPbmx5IHByb3Bv c3Rpb25hbCBlbW90aW9ucyBjYW4gY2hhbmdlIHRoZSB0cnV0aCBjb25kaXRpb25zLCB3aGlsZSBw dXJlIGVtb3Rpb25zIGNhbm5vdC4gSW4gb3JkZXIgdG8gZXhwcmVzcyBhIHByb3Bvc2l0aW9uYWwg ZW1vdGlvbmFsIGF0dGl0dWRpbmFsIHdpdGhvdXQgY2hhbmdpbmcgdGhlIHRydXRoIHZhbHVlIG9m IHRoZSBicmlkaSwgeW91IGNhbiBqdXN0IHNlcGFyYXRlIGl0IGZyb20gdGhlIGJyaWRpIHdpdGgg JycuaScnLiBUaGVyZSBpcyBhbHNvIGEgd29yZCBmb3IgZXhwbGljaXRseSBjb25zZXJ2aW5nIG9y IGNoYW5naW5nIHRoZSB0cnV0aCBjb25kaXRpb25zIG9mIGEgYnJpZGk6CgoKCl9fJydkYeKAmWkn J19fIGF0dGl0dWRpbmFsOiBkaXNjdXJzaXZlOiBzdXBwb3NpbmcgLSBpbiBmYWN0CgpTYXlpbmcg JydkYeKAmWknJyBpbiBhIGJyaWRpIGNoYW5nZXMgdGhlIHRydXRoIGNvbmRpdGlvbnMgdG8gaHlw b3RoZXRpY2FsLCB3aGljaCBpcyB0aGUgZGVmYXVsdCB1c2luZyBwcm9wb3NpdGlvbmFsIGF0dGl0 dWRpbmFscy4gU2F5aW5nICcnZGHigJlpIG5haScnIGNoYW5nZXMgdGhlIHRydXRoIGNvbmRpdGlv biB0byB0aGUgbm9ybWFsLCB3aGljaCBpcyBkZWZhdWx0IHVzaW5nIHB1cmUgYXR0aXR1ZGluYWxz LgoKCgpTbywgd2hhdOKAmXMgdHdvIHdheXMgb2Ygc2F5aW5nIOKAnEkgZ2l2ZSB0aGUgYXBwbGUg YXdheeKAnT8gKGFuZCBmZWVsIG9ibGlnYXRpb24gYWJvdXQgaXQpCgoKCkFuc3dlcjogfn5ncmV5 LGdyZXk6JydtaSBkdW5kYSBsbyBwbGlzZSAuaSAuZWknJyAgYW5kICcnbWkgZHVuZGEgZGHigJlp IG5haSAuZWkgbG8gcGxpc2UnJ35+CgoKClRoZSBmZWVsaW5nIG9mIGFuIGF0dGl0dWRpbmFsIGNh biBiZSBzdWJzY3JpYmVkIHRvIHNvbWVvbmUgZWxzZSB1c2luZyAnJ2RhaScnLiBVc3VhbGx5IGlu IG9yZGluYXJ5IHNwZWVjaCwgdGhlIGF0dGl0dWRpbmFsIGlzIHN1YnNjcmliZWQgdG8gdGhlIGxp c3RlbmVyLCBidXQgaXQgZG9lc27igJl0IGhhdmUgdG8gYmUgc28uIEFsc28sIGJlY2F1c2UgdGhl IHdvcmQgaXMgZ2xvc3NlZCDigJxlbXBhdGh54oCdIChmZWVsaW5nIG90aGVycyBlbW90aW9ucyks IHNvbWUgTG9qYmFuaXN0cyBtaXN0YWtlbmx5IHRoaW5rIHRoYXQgdGhlIHNwZWFrZXIgbXVzdCBz aGFyZSB0aGUgZW1vdGlvbiBiZWluZyBzdWJzY3JpYmVkIHRvIG90aGVycy4KCl9fJydkYWknJ19f IGF0dGl0dWRpbmFsIG1vZGlmeWVyOiBFbXBhdGh5IChzdWJzY3JpYmVzIGF0dGl0dWRpbmFsIHRv IHNvbWVvbmUgZWxzZSwgdW5zcGVjaWZpZWQpCgpFeGFtcGxlOiAnJ3XigJlpIC5vaSBkYWkgY2l0 a2EgdGknJyAtIOKAnEhhIGhhLCB0aGlzIHdhcyBlYXRlbiEgVGhhdCBtdXN0IGhhdmUgaHVydCHi gJ0KCgoKV2hhdCBvZnRlbiB1c2VkIHBocmFzZSBjb3VsZCAnJy5vaSB14oCZaSBkYWknJyBtZWFu PwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnE91Y2gsIHZlcnkgZnVubnku4oCdfn4KCgoKQW5k IGFub3RoZXIgb25lIHRvIHRlc3QgeW91ciBrbm93bGVkZ2U6IFRyeSB0byB0cmFuc2xhdGUg4oCc SGUgd2FzIHNvcnJ5IGhlIHNvbGQgYSBob21l4oCdIChyZW1lbWJlcmluZywgdGhhdCB0ZW5zZSBp cyBpbXBsaWVkIGFuZCBuZWVkIG5vdCBiZSBzcGVjaWZpZWQuIEFsc28sIOKAnGhl4oCdIGNvdWxk IGJlIG9idmlvdXMgZnJvbSBjb250ZXh0KQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicndeKAmXUg ZGFpIHZlY251IGxvIHpkYW5pIGt1Jyd+fgoKCgpMYXN0bHksIHRoZSBpbnRlbnNpdHkgb2YgYW4g YXR0aXR1ZGluYWwgY2FuIGJlIHNwZWNpZmllZCB1c2luZyBjZXJ0YWluIHdvcmRzLiBUaGVzZSBj YW4gYmUgdXNlZCBhZnRlciBhbiBhdHRpdHVkaW5hbCwgb3IgYW4gYXR0aXR1ZGluYWwgd2l0aCAn J25haScnIG9yICcnY3XigJlpJycgc3VmZml4ZWQuIEl04oCZcyBsZXNzIGNsZWFyIHdoYXQgaGFw cGVucyB3aGVuIHlvdSBhdHRhY2ggaXQgdG8gb3RoZXIgd29yZHMsIGxpa2UgYSBzZWxicmksIG11 c3QgaXTigJlzIG1vc3RseSB1bmRlcnN0b29kIGFzIGludGVuc2lmeWluZyBvciB3ZWFrZW5pbmcg dGhlIHNlbGJyaSBpbiBzb21lIHVuc3BlY2lmaWVkIHdheToKCnx8IE1vZGlmeWluZyB3b3JkICB8 IEludGVuc2l0eSAgCgogY2FpfCAgIEV4dHJlbWUKCiBzYWl8ICAgU3Ryb25nCgogKG5vbmUpfCAg IFVuc3BlY2lmaWVkIChtZWRpdW0pCgogcnUnZSAgfCAgIFdlYWt8fAoKCgpXaGF0IGVtb3Rpb24g aXMgZXhwcmVzc2VkIHVzaW5nICcnLnUnaSBuYWkgc2FpJycgPwoKX18nJy514oCZaScnX186IGF0 dGl0dWRpbmFsOiBzaW1wbGUgcHVyZSBlbW90aW9uOiBhbXVzZW1lbnQgLSB3ZWFyaW5lc3MKCgoK QW5zd2VyOiB+fmdyZXksZ3JleTpTdHJvbmcgd2VhcmluZXNzfn4KCgoKQW5kIGhvdyB3b3VsZCB5 b3UgZXhwcmVzcyB0aGF0IHlvdSBhcmUgbWlsZGx5IHJlbW9yc2VsZXNzPwoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OicnLnXigJl1IGN14oCZaSBydeKAmWUnJ35+CgoKCiEhTG9qYmFuIGxlc3NvbnMg 4oCTIGxlc3NvbiBmaXZlIChTRSkKCkJlZm9yZSB3ZSB2ZW50dXJlIGludG8gdGhlIHRlcnJpdG9y eSBvZiBtb3JlIGNvbXBsZXggY29uc3RydWN0cywgeW91IHNob3VsZCBsZWFybiBhbm90aGVyIG1l Y2hhbmlzbSBmb3IgcmVvcmRlcmluZyB0aGUgc3VtdGkgb2YgYSBzZWxicmkuIFRoaXMsIGFzIHdl IHdpbGwgc2hvdywgaXMgdmVyeSB1c2VmdWwgZm9yIG1ha2luZyBkZXNjcmlwdGlvbi1saWtlIHN1 bXRpICh0aGUga2luZCBvZiBzdW10aSB3aXRoICcnbG8nJykuCgpDb25zaWRlciB0aGUgc2VudGVu Y2Ug4oCcSSBlYXQgYSBnaWZ04oCdLCB3aGljaCBtaWdodCBiZSBhcHByb3ByaWF0ZSBpZiB0aGF0 IGdpZnQgaXMgYW4gYXBwbGUuIFRvIHRyYW5zbGF0ZSB0aGlzLCBpdCB3b3VsZCBzZWVtIG5hdHVy YWwgdG8gbG9vayB1cCBhIHNlbGJyaSBtZWFuaW5nIOKAnGdpZnTigJ0gYmVmb3JlIGNvbnRpbnVp bmcuIEhvd2V2ZXIsIGlmIG9uZSBsb29rcyBjYXJlZnVsbHkgYXQgdGhlIGRlZmluaXRpb24gb2Yg JydkdW5kYScnLCB4MSBnaXZlcyB4MiB0byB4Mywgb25lIHJlYWxpemVzIHRoYXQgdGhlIHgyIG9m ICcnZHVuZGEnJyBpcyBzb21ldGhpbmcgZ2l2ZW4g4oCTIGEgZ2lmdC4KClNvLCB0byBleHByZXNz IHRoYXQgc2VudGVuY2UsIHdlIGNhbuKAmXQgc2F5ICcnbWkgY2l0a2EgbG8gZHVuZGEga3UnJywg YmVjYXVzZSAnJ2xvIGR1bmRhIGt1Jycgd291bGQgYmUgdGhlIHgxIG9mICcnZHVuZGEnJywgd2hp Y2ggaXMgYSBkb25vciBvZiBhIGdpZnQuIENhbm5pYmFsaXNtIGFzaWRlLCB3ZSBkb27igJl0IHdh bnQgdG8gc2F5IHRoYXQuIFdoYXQgd2Ugd2FudCBpcyBhIHdheSB0byBleHRyYWN0IHRoZSB4MiBv ZiBhIHNlbGJyaS4KClRoaXMgaXMgb25lIGV4YW1wbGUgd2hlcmUgaXQgaXMgdXNlZnVsIHRvIHVz ZSB0aGUgd29yZCAnJ3NlJycuIFdoYXQgJydzZScnIGRvZXMgaXMgdG8gbW9kaWZ5IGEgc2VsYnJp IHN1Y2ggdGhhdCB0aGUgeDEgYW5kIHgyIG9mIHRoYXQgc2VsYnJpIHRyYWRlIHBsYWNlcy4gVGhl IGNvbnN0cnVjdCBvZiAnJ3NlJycgKyBzZWxicmkgaXMgb24gaXRzIG93biBjb25zaWRlcmVkIG9u ZSBzZWxicmkuIExldOKAmXMgdHJ5IHdpdGggYW4gb3JkaW5hcnkgc2VudGVuY2U6CgpfXycnZmFu dmEnJ19fID0g4oCceDEgdHJhbnNsYXRlcyB4MiB0byBsYW5ndWFnZSB4MyBmcm9tIGxhbmd1YWdl IHg0IHdpdGggcmVzdWx0IG9mIHRyYW5zbGF0aW9uIHg14oCdCgonJ3RpIHNlIGZhbnZhIG1pJycg PSAnJ21pIGZhbnZhIHRpJycKClRoaXMgaXMgdHJhbnNsYXRlZCBieSBtZSAoPSBJIHRyYW5zbGF0 ZSB0aGlzKS4gT2Z0ZW4sIGJ1dCBub3QgYWx3YXlzLCBicmlkaSB3aXRoICcnc2UnJy1jb25zdHJ1 Y3RzIGFyZSB0cmFuc2xhdGVkIHRvIHNlbnRlbmNlcyB3aXRoIHRoZSBwYXNzaXZlIHZvaWNlLCBz aW5jZSB0aGUgeDEgaXMgb2Z0ZW4gdGhlIG9iamVjdCB0YWtpbmcgYWN0aW9uLgoKJydzZScnIGhh cyBpdHMgb3duIGZhbWlseSBvZiB3b3Jkcy4gQWxsIG9mIHRoZW0gc3dhcCBhIGRpZmZlcmVudCBw bGFjZSB3aXRoIHRoZSB4MS4KCnx8c2UJfHN3YXAgeDEgYW5kIHgyCgp0ZQl8c3dhcCB4MSBhbmQg eDMKCnZlCXxzd2FwIHgxIGFuZCB4NAoKeGUJfHN3YXAgeDEgYW5kIHg1fHwKCk5vdGUgdGhhdCBz LCB0LCB2LCBhbmQgeCBhcmUgY29uc2VjdXRpdmUgY29uc29uYW50cyBpbiB0aGUgbG9qYmFuIGFs cGhhYmV0LgoKCgpTbzogVXNpbmcgdGhpcyBrbm93bGVkZ2UsIHdoYXQgd291bGQgJyd0aSB4ZSBm YW52YSB0aScnIG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcVGhpcyBpcyBhIHRyYW5z bGF0aW9uIG9mIHRoaXPigJ0gKG9yICcnZmFudmEgdGkgZnUgdGknJyl+fgoKCgonJ3NlJycgYW5k IGl0cyBmYW1pbHkgY2FuIG9mIGNvdXJzZSBiZSBjb21iaW5lZCB3aXRoICcnZmEnJyBhbmQgaXRz IGZhbWlseS4gVGhlIHJlc3VsdCBjYW4gYmUgdmVyeSBjb25mdXNpbmcgaW5kZWVkLCBpZiB5b3Ug d2lzaCB0byBtYWtlIGl0IHNvOgoKX18nJ2tsYW1hJydfXyA9IOKAnHgxIHRyYXZlbHMvZ29lcyB0 byB4MiBmcm9tIHgzIHZpYSB4NCB1c2luZyB4NSBhcyB0cmFuc3BvcnRhdGlvbiBkZXZpY2XigJ0K CicnZnUgbG8gemRhbmkga3UgdGUga2xhbWEgZmUgZG8gdGkgZmEgbWknJyA9ICcnbWkgdGUga2xh bWEgZG8gdGkgbG8gemRhbmkga3UnJyBhbmQgc2luY2UgJyd0ZScnIGV4Y2hhbmdlcyB4MSBhbmQg eDM6ID0gJyd0aSBrbGFtYSBkbyBtaSBsbyB6ZGFuaSBrdScnCgrigJxUaGlzIHRyYXZlbHMgdG8g eW91IGZyb20gbWUgdmlhIGEgaG9tZS7igJ0gT2YgY291cnNlLCBubyBvbmUgd291bGQgbWFrZSBz dWNoIGEgc2VudGVuY2UgZXhjZXB0IHRvIGNvbmZ1c2UgcGVvcGxlLCBvciBjcnVlbGx5IHRvIHRl c3QgdGhlaXIgdW5kZXJzdGFuZGluZyBvZiBMb2piYW4gZ3JhbW1hci4KCkFuZCB0aHVzLCB3ZSBo YXZlIGNvbWUgdG8gdGhlIHBvaW50IHdoZXJlIHdlIGNhbiBzYXkg4oCcSSBlYXQgYSBnaWZ0LuKA nS4gU2ltcGx5IGV4Y2hhbmdlIHRoZSBzdW10aSBwbGFjZXMgb2YgJydkdW5kYScnIHRvIGdldCB0 aGUgZ2lmdCB0byBiZSB4MSwgdGhlbiBleHRyYWN0IHRoaXMgbmV3IHgxIHdpdGggJydsbycnLi4u JydrdScnLiBTbywgaG93IHdvdWxkIHlvdSBzYXkgaXQ/CgpPbmUgKHBvc3NpYmxlKSBhbnN3ZXI6 IH5+Z3JleSxncmV5OicnbWkgY2l0a2EgbG8gc2UgZHVuZGEga3UnJ35+CgpUaGlzIHNob3dzIG9u ZSBvZiB0aGUgbWFueSB1c2VzIGZvciAnJ3NlJycgYW5kIGl0cyBmYW1pbHkuCgoKCgoKISFMb2pi YW4gbGVzc29ucyDigJMgbGVzc29uIHNpeCAoYWJzdHJhY3Rpb25zKQoKU28gZmFyIHdlIGhhdmUg b25seSBleHByZXNzZWQgc2luZ2xlIHNlbnRlbmNlcyBvbmUgYXQgYSB0aW1lLiBUbyBleHByZXNz IG1vcmUgY29tcGxleCB0aGluZ3MsIGhvd2V2ZXIsIHlvdSBvZnRlbiBuZWVkIHN1Ym9yZGluYXRl IHNlbnRlbmNlcy4gTHVja2lseSwgdGhlc2UgYXJlIG11Y2ggZWFzaWVyIGluIExvamJhbiB0aGFu IHdoYXQgb25lIHdvdWxkIGV4cGVjdC4KCldlIGNhbiBiZWdpbiB3aXRoIGFuIGV4YW1wbGUgdG8g ZGVtb25zdHJhdGUgdGhpczog4oCcSSBhbSBoYXBweSB0aGF0IHlvdSBhcmUgbXkgZnJpZW5kLuKA nSBIZXJlLCB0aGUgbWFpbiBicmlkaSBpcyDigJxJIGFtIGhhcHB5IHRoYXQgWC7igJ0sIGFuZCB0 aGUgc3ViLWJyaWRpIGlzIOKAnFlvdSBhcmUgbXkgZnJpZW5kLuKAnSBMb29raW5nIGF0IHRoZSBk ZWZpbml0aW9uIGZvciDigJxoYXBweeKAnSwgd2hpY2ggaXMgJydnbGVraScnOgoKX18nJ2dsZWtp JydfXyDigJx4MSBpcyBoYXBweSBhYm91dCB4MiAoZXZlbnQvc3RhdGUp4oCdCgpPbmUgc2VlcyB0 aGF0IHRoZSB4MiBuZWVkcyB0byBiZSBhbiBldmVudCBvciBhIHN0YXRlLiBUaGlzIGlzIG5hdHVy YWwsIGJlY2F1c2Ugb25lIGNhbm5vdCBiZSBoYXBweSBhYm91dCBhbiBvYmplY3QgaW4gaXRzZWxm LCBvbmx5IGFib3V0IHNvbWUgc3RhdGUgdGhlIG9iamVjdCBpcyBpbi4gQnV0IGFsYXMhIE9ubHkg YnJpZGkgY2FuIGV4cHJlc3MgYSBzdGF0ZSBvciBhbiBldmVudCwgYW5kIG9ubHkgc3VtdGkgY2Fu IGZpbGwgdGhlIHgyIG9mICcnZ2xla2knJyEKCkFzIHlvdSBtaWdodCBoYXZlIGd1ZXNzZWQsIHRo ZXJlIGlzIGEgc29sdXRpb24uIFRoZSB3b3JkcyAnJ3N14oCZdScnLi4uJydrZWknJyBpcyBhIGdl bmVyaWMg4oCcY29udmVydCBicmlkaSB0byBzZWxicmnigJ0gZnVuY3Rpb24sIGFuZCB3b3JrcyBq dXN0IGxpa2UgJydsbycn4oCmJydrdScnLiBFeGFtcGxlOgoKX18nJ21yb2Jp4oCZbycnX18g4oCc eDEgZGllcyB1bmRlciBjb25kaXRpb24geDLigJ0KCl9fJydzdSd1JydfXyB4MSBpcyBhbiBhYnN0 cmFjdGlvbiBvZiB7YnJpZGl9IG9mIHR5cGUgeDIKCl9fJydrZWknJ19fIGVuZCBhYnN0cmFjdGlv bgoKJydtaSBzdeKAmXUgZG8gbXJvYmnigJlvIGtlaScnIOKAkyDigJxJIGFtIHlvdXIgZGVhdGji gJ0uCgpJdOKAmXMgaGFyZCB0byBmaW5kIGdvb2QgdXNlcyBvZiBhIGJyaWRpIGFzIGEgc2VsYnJp LCBhbmQgdGhlIGFib3ZlIGV4YW1wbGUgc2VlbXMgYSBsaXR0bGUgdW5jb252aW5jaW5nLiBIb3dl dmVyLCBzaW5jZSAnJ3N14oCZdSBCUklESSBrZWknJyBpcyBhIHNlbGJyaSwgb25lIGNhbiBjb252 ZXJ0IGl0IHRvIGEgc3VtdGkgdXNpbmcgJydsbycnLi4uJydrdScnLgoKTm93IHdlIGhhdmUgdGhl IGVxdWlwbWVudCB0byBleHByZXNzIOKAnEkgYW0gaGFwcHkgdGhhdCB5b3UgYXJlIG15IGZyaWVu ZOKAnS4gVHJ5IGl0IG91dCEKCl9fJydwZW5kbycnX18g4oCceDEgaXMgYSBmcmllbmQgb2YgeDLi gJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIGdsZWtpIGxvIHN14oCZdSBkbyBwZW5kbyBt aSBrZWkga3UnJ35+CgoKCkhvd2V2ZXIsICcnc3XigJl1JyfigKYnJ2tlaScnIGRvZXMgbm90IHNl ZSBtdWNoIHVzZS4gUGVvcGxlIHByZWZlciB0byB1c2UgdGhlIG1vcmUgc3BlY2lmaWMgd29yZHMg JydudScn4oCmJydrZWknJyBhbmQgJydkdeKAmXUnJ+KApicna2VpJycuIFRoZXkgd29yayB0aGUg c2FtZSB3YXksIGJ1dCBtZWFuIHNvbWV0aGluZyBkaWZmZXJlbnQuICcnbnXigKZrZWknJyB0cmVh dHMgdGhlIGJyaWRpIGluIGJldHdlZW4gYXMgYW4gZXZlbnQgb3Igc3RhdGUsIGFuZCAnJ2R14oCZ deKApmtlaScnIHRyZWF0cyBpdCBhcyBhbiBhYnN0cmFjdCBicmlkaSwgZm9yIGV4cHJlc3Npbmcg dGhpbmdzIGxpa2UgaWRlYXMsIHRob3VnaHRzIG9yIHRydXRocy4gQWxsIHRoZXNlIHdvcmRzIChl eGNlcHQgJydrZWknJykgYXJlIGNhbGxlZCBhYnN0cmFjdG9ycy4gVGhlcmUgYXJlIG1hbnkgb2Yg dGhlbSwgYW5kIG9ubHkgZmV3IGFyZSB1c2VkIG11Y2guICcnc3XigJl14oCma2VpJycgaXMgYSBn ZW5lcmFsIGFic3RyYWN0b3IsIGFuZCB3aWxsIHdvcmsgaW4gYWxsIGNhc2VzLgoKCgpVc2UgJydu dScnIHRvIHNheSDigJxJ4oCZbSBoYXBweSBhYm91dCB0YWxraW5nIHRvIHlvdS7igJ0KCl9fJyd0 YXZsYScnX18geDEgdGFsa3MgdG8geDIgYWJvdXQgc3ViamVjdCB4MyBpbiBsYW5ndWFnZSB4NC4K CgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIGdsZWtpIGxvIG51IHRhdmxhIGRvIGtlaSBrdScn IChub3RpY2UgYm90aCB0aGUgRW5nbGlzaCBhbmQgdGhlIExvamJhbiBpcyB2YWd1ZSBhcyB0byB3 aG8gaXMgZG9pbmcgdGhlIHRhbGtpbmcpLn5+CgoKCk90aGVyIGltcG9ydGFudCBhYnN0cmFjdG9y cyBpbmNsdWRlOiAnJ2thLi4ua2VpJycgKHByb3BlcnR5IGFic3RyYWN0aW9uKSwgJydzaeKAmW8u Li5rZWknJyAoY29uY2VwdC9pZGVhIGFic3RyYWN0aW9uKSwgJyduaS4uLmtlaScnIChxdWFudGl0 eSBhYnN0cmFjdGlvbikgYW1vbmcgb3RoZXJzLgoKCgpJdCBpcyBpbXBvcnRhbnQgdG8gbm90aWNl IHRoYXQgc29tZSBhYnN0cmFjdG9ycyBoYXZlIHNldmVyYWwgc3VtdGkgcGxhY2VzLiBBcyBhbiBl eGFtcGxlLCAnJ2R14oCZdScnIGNhbiBiZSBtZW50aW9uZWQuICcnZHXigJl1JycgaXMgZGVmaW5l ZDoKCicnZHXigJl1JycgPSDigJxhYnN0cmFjdG9yLiB4MSBpcyB0aGUgcHJlZGljYXRlL2JyaWRp IG9mIHticmlkaX0gZXhwcmVzc2VkIGluIHNlbnRlbmNlIHgy4oCdLgoKVGhlIG90aGVyIHN1bXRp IHBsYWNlcyBiZXNpZGVzIHgxIGlzIHJhcmVseSB1c2VkLCBidXQgJydsbyBzZSBkdSd1IHticmlk aX0ga2VpIGt1JycgaXMgc29tZXRpbWVzIHVzZWQgYXMgYSBzdW10aSBmb3IgaW5kaXJlY3QgcXVv dGF0aW9uOiDigJxJIHNhaWQgdGhhdCBJIHdhcyBnaXZlbiBhIGRvZ+KAnSBjYW4gYmUgd3JpdHRl biAnJ21pIGN1c2t1IGxvIHNlIGR14oCZdSBtaSB0ZSBkdW5kYSBsbyBnZXJrdSBrdSBrZWkga3Un JywgaWYgeW91IHdpbGwgcGFyZG9uIHRoZSB3ZWlyZCBleGFtcGxlLgoKX18nJ2N1c2t1JydfXyB4 MSBleHByZXNzZXMgeDIgdG8geDMgdGhyb3VnaCBtZWRpdW0geDQKCl9fJydnZXJrdScnX18geDEg aXMgYSBkb2cgb2YgcmFjZSB4MgoKCgohIUxvamJhbiBsZXNzb25zIOKAkyBsZXNzb24gc2V2ZW4g KE5PSSkKCldoaWxlIHdl4oCZcmUgYXQgaXQsIHRoZXJl4oCZcyBhbm90aGVyIHR5cGUgb2Ygc3Vi b3JkaW5hdGUgYnJpZGkuIFRoZXNlIGFyZSBjYWxsZWQgcmVsYXRpdmUgY2xhdXNlcy4gVGhleSBh cmUgc2VudGVuY2VzIHdoaWNoIGFkZCBzb21lIGRlc2NyaXB0aW9uIHRvIGEgc3VtdGkuIEluZGVl ZCwgdGhlIOKAnHdoaWNo4oCdIGluIHRoZSBwcmV2aW91cyBzZW50ZW5jZSBtYXJrZWQgdGhlIGJl Z2lubmluZyBvZiBhIHJlbGF0aXZlIGNsYXVzZSBpbiBFbmdsaXNoIGRlc2NyaWJpbmcgcmVsYXRp dmUgY2xhdXNlcy4gSW4gTG9qYmFuLCB0aGV5IGNvbWUgaW4gdHdvIGZsYXZvcnMsIGFuZCBpdCBt aWdodCBiZSB3b3J0aCBkaXN0aW5ndWlzaGluZyB0aGUgdHdvIGtpbmRzIGJlZm9yZSBsZWFybmlu ZyBob3cgdG8gZXhwcmVzcyB0aGVtLgoKVGhlIHR3byBraW5kcyBhcmUgY2FsbGVkIHJlc3RyaWN0 aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgKG9yIGluY2lkZW50aWFsKSByZWxhdGl2ZSBjbGF1c2Vz LiBBbiBleGFtcGxlIHdvdWxkIGJlIGdvb2QgaGVyZToKCuKAnE15IGJyb3RoZXIsIHdobyBpcyB0 d28gbWV0ZXJzIHRhbGwsIGlzIGEgcG9saXRpY2lhbi7igJ0gVGhpcyBjYW4gYmUgdW5kZXJzdG9v ZCBpbiB0d28gd2F5cy4gSSBjb3VsZCBoYXZlIHNldmVyYWwgYnJvdGhlcnMsIGluIHdoaWNoIGNh c2Ugc2F5aW5nIGhlIGlzIHR3byBtZXRlcnMgdGFsbCB3aWxsIGxldCB5b3Uga25vdyB3aGljaCBi cm90aGVyIEkgYW0gdGFsa2luZyBhYm91dC4gT3IgSSBtaWdodCBoYXZlIG9ubHkgb25lIGJyb3Ro ZXIsIGluIHdoaWNoIGNhc2UgSSBhbSBzaW1wbHkgZ2l2aW5nIHlvdSBhZGRpdGlvbmFsIGluZm9y bWF0aW9uLgoKCgpJbiBFbmdsaXNoIGFzIHdlbGwgYXMgTG9qYmFuIHdlIGRpc3Rpbmd1aXNoIGJl dHdlZW4gdGhlc2UgdHdvIGtpbmRzIOKAkyB0aGUgZmlyc3QgaW50ZXJwcmV0YXRpb24gaXMgcmVz dHJpY3RpdmUgKHNpbmNlIGl0IGhlbHBzIHJlc3RyaWN0IHRoZSBwb3NzaWJsZSBicm90aGVycyBJ IG1pZ2h0IGJlIHRhbGtpbmcgYWJvdXQpLCB0aGUgc2Vjb25kIG5vbi1yZXN0cmljdGl2ZS4gV2hl biBzcGVha2luZyBFbmdsaXNoLCBjb250ZXh0IGFuZCB0b25lIG9mIHZvaWNlIChvciBpbiB3cml0 dGVuIEVuZ2xpc2gsIHB1bmN0dWF0aW9uKSBoZWxwcyB1cyBkaXN0aW5ndWlzaCBiZXR3ZWVuIHRo ZXNlIHR3bywgYnV0IG5vdCBzbyBpbiBMb2piYW4uIExvamJhbiB1c2VzIHRoZSBjb25zdHJ1Y3Rz ICcncG9p4oCma3XigJlvJycgYW5kICcnbm9p4oCma3XigJlvJycgZm9yIHJlc3RyaWN0aXZlIGFu ZCBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlcywgcmVzcGVjdGl2ZWx5LgoKTGV04oCZ cyBoYXZlIGEgTG9qYmFuaWMgZXhhbXBsZSwgd2hpY2ggY2FuIGFsc28gZXhwbGFpbiBvdXIgc3Ry YW5nZSBnaWZ0LWVhdGluZyBiZWhhdmlvdXIgaW4gdGhlIGV4YW1wbGUgaW4gbGVzc29uIGZpdmU6 CgpfXycnbm9pJydfXyBiZWdpbiBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlIChjYW4g b25seSBhdHRhY2ggdG8gc3VtdGkpCgpfXycncG9pJydfXyBiZWdpbiByZXN0cmljdGl2ZSByZWxh dGl2ZSBjbGF1c2UgKGNhbiBvbmx5IGF0dGFjaCB0byBzdW10aSkKCl9fJydrdSdvJydfXyBlbmQg cmVsYXRpdmUgY2xhdXNlCgoKCicnbWkgY2l0a2EgbG8gc2UgZHVuZGEga3UgcG9pIHBsaXNlIGt1 4oCZbycnID0g4oCcSSBlYXQgYSBnaWZ0IHN1Y2ggdGhhdCAoc29tZXRoaW5nIGlzKSBhbiBhcHBs ZeKAnS4gCgpIZXJlIHRoZSAnJ3BvaeKApmt14oCZbycnIGlzIHBsYWNlZCBqdXN0IGFmdGVyICcn bG8gc2UgZHVuZGEga3UnJywgc28gaXQgYXBwbGllcyB0byB0aGUgZ2lmdC4gVG8gYmUgc3RyaWN0 LCB0aGUgcmVsYXRpdmUgY2xhdXNlIGRvZXMgbm90IHNwZWNpZnkgd2hhdCBhbiBhcHBsZSBpcywg YnV0IHNpbmNlIHRoZSByZWxhdGl2ZSBjbGF1c2UgYXBwbGllcyB0byB0aGUgZ2lmdCwgd2UgY2Fu IHNhZmVseSBhc3N1bWUgdGhhdCBpcyBtZWFucyB0aGUgZ2lmdCBpcyBhbiBhcHBsZS4gQWZ0ZXIg YWxsLCBpbiB0aGUgY29udGV4dCBvZiBsZXNzb24gZml2ZSwgdGhpcyBzZWVtcyByZWFzb25hYmxl LiBJZiB3ZSB3YW50IHRvIGJlIGFic29sdXRlbHkgc3VyZSB0aGF0IGl0IGluZGVlZCB3YXMgdGhl IGdpZnQgdGhhdCB3YXMgYW4gYXBwbGUsIHdlIHVzZSB0aGUgd29yZCAnJ2tl4oCZYScnLCB3aGlj aCBpcyBhICcnc3Vta2EnaScnIChhIExvamJhbiBwcm9ub3VuLCBtb3JlIG9uIHRoZW0gbGF0ZXIp IHJlcHJlc2VudGluZyB0aGUgc3VtdGkgd2hpY2ggdGhlIHJlbGF0aXZlIGNsYXVzZSBpcyBhdHRh Y2hlZCB0by4KCl9fJydrZSdhJydfXyBzdW1rYSdpOyByZWZlcnMgdG8gdGhlIHN1bXRpLCB0byB3 aGljaCB0aGUgcmVsYXRpdmUgY2xhdXNlIGl0IGF0dGFjaGVkLgoKCgonJy51aSBtaSBjaXRrYSBs byBzZSBkdW5kYSBrdSBwb2kga2XigJlhIHBsaXNlIGt14oCZbycnID0g4oCcWWF5LCBJIGVhdCBh IGdpZnQgd2hpY2ggaXMgYW4gYXBwbGXigJ0uCgpUbyB1bmRlcmxpbmUgdGhlIGRpZmZlcmVuY2Ug YmV0d2VlbiByZXN0cmljdGl2ZSBhbmQgbm9uLXJlc3RyaWN0aXZlIHJlbGF0aXZlIGNsYXVzZXMs IGhlcmXigJlzIGFub3RoZXIgZXhhbXBsZToKCgoKX18nJ2xvamJvJydfXyDigJx4MSByZWZsZWN0 cyBMb2piYW5pYyBjdWx0dXJlL2NvbW11bml0eSBpcyBhc3BlY3QgeDI7IHgxIGlzIExvamJhbmlj LuKAnQoKCgonJ21pIG5vaSBsb2pibyBrdeKAmW8gZmFudmEgZm8gbG8gbG9qYm8ga3UnJyA9IOKA nEksIHdobyBhbSBhIExvamJhbmljLCB0cmFuc2xhdGUgZnJvbSBzb21lIExvamJhbmljIGxhbmd1 YWdlLuKAnSBIZXJlLCB0aGVyZSBpcyBub3QgbXVsdGlwbGUgdGhpbmdzIHdoaWNoICcnbWknJyBj b3VsZCByZWZlciB0bywgYW5kIHRoZSBmYWN0IHRoYXQgSSBhbSBsb2piYW5pYyBpcyBtZXJlbHkg YWRkaXRpb25hbCBpbmZvcm1hdGlvbiBub3QgbmVlZGVkIHRvIGlkZW50aWZ5IG1lLiBUaGVyZWZv cmUgJydub2nigKZrdeKAmW8nJyBpcyBhcHByb3ByaWF0ZS4KClNlZSBpZiB5b3UgY2FuIHRyYW5z bGF0ZSB0aGlzOiDigJxJIGZsaXJ0IHdpdGggYSBtYW4gd2hvIGlzIGJlYXV0aWZ1bC9oYW5kc29t ZeKAnS4KCl9fJyduYW5tdScnX18g4oCceDEgaXMgYSBtYW7igJ0KCl9fJydtZWxiaScnX18g4oCc eDEgaXMgYmVhdXRpZnVsIHRvIHgyIGluIGFzcGVjdCAoa2EpIHgzIGJ5IHN0YW5kYXJkIHg04oCd CgpfXycnY2luamlrY2EnJ19fIOKAnHgxIGZsaXJ0cy9jb3VydHMgeDIsIGV4aGliaXRpbmcgc2V4 dWFsaXR5IHgzIGJ5IHN0YW5kYXJkIHg04oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBj aW5qaWtjYSBsbyBuYW5tdSBrdSBwb2kge2tl4oCZYX0gbWVsYmkga3XigJlvJyd+fgoKCgpPbiBh IG1vcmUgdGVjaG5pY2FsIHNpZGUgbm90ZSwgaXQgbWlnaHQgYmUgdXNlZnVsIHRvIGtub3cgdGhh dCAnJ2xvIHtzZWxicml9IGt1JycgaXMgb2Z0ZW4gc2VlbiBkZWZpbmVkIGFzICcnem/igJllIG5v aSBrZeKAmWEge3NlbGJyaX0ga3XigJlvJycuCgoKCgoKISFMb2piYW4gTGVzc29ucyDigJMgTGVz c29uIGVpZ2h0ICh0ZXJtaW5hdG9yIGVsaXNpb24pCgonJy5hdSBkYeKAmWkgbWkgZGppY2EgbG8g bnUgbGUgbWVya28gcG9pIHR1bmJhIG1pIF9fdmF1IGt1J28ga3VfXyBqaW1wZSBsbyBkdSd1IG1p IG5hIG5lbGNpIGxvIG51IHZv4oCZYSBkYXJ4aSBtaSBfX3ZhdSBrZWkga3UgdmF1IGtlaSBrdSB2 YXUga2VpIGt1IHZhdV9fJycKCiAtICDigJxJIHdpc2ggdGhlIEFtZXJpY2FuLCB3aG8gaXMgbXkg c2libGluZywgd291bGQgdW5kZXJzdGFuZCB0aGF0IEkgZG9u4oCZdCBsaWtlIHRoYXQgaGUgaGl0 cyBtZS7igJ0KClJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB0aGUgYWJvdmUgc2VudGVuY2UgaXMgYmVp bmcgdW5kZXJzdG9vZCwgKGl0IHNob3VsZG7igJl0LCBhcyBpdCBjb250YWlucyB3b3JkcyB3ZSBo YXZlIG5vdCBjb3ZlcmVkIGluIHRoZXNlIGxlc3NvbnMgeWV0KSBvbmUgdGhpbmcgc3RhbmRzIG91 dDogQXMgbW9yZSBjb21wbGV4IExvamJhbiBzdHJ1Y3R1cmVzIGFyZSBsZWFybmVkLCBtb3JlIGFu ZCBtb3JlIG9mIHRoZSBzZW50ZW5jZXMgZ2V0IGZpbGxlZCB3aXRoICcna3UnJywgJydrZWknJywg JydrdeKAmW8nJyBhbmQgb3RoZXIgb2YgdGhvc2Ugd29yZHMgd2hpY2ggYnkgdGhlbXNlbHZlcyBj YXJyeSBubyBtZWFuaW5nLgoKCgpUaGUgZnVuY3Rpb24gb2YgYWxsIHRoZXNlIHdvcmRzIGlzIHRv IHNpZ25hbCB0aGUgZW5kIG9mIGEgY2VydGFpbiBncmFtbWF0aWNhbCBjb25zdHJ1Y3QsIGxpa2Ug Zm9yIGluc3RhbmNlIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdIGluIHRoZSBjYXNlIG9m ICcna3UnJy4gVGhlIEVuZ2xpc2ggd29yZCBmb3IgdGhpcyBraW5kIG9mIHdvcmQgaXMg4oCcdGVy bWluYXRvcuKAnSwgdGhlIExvamJhbiB3b3JkIGlzICcnZmHigJlvcm1h4oCZbycnLiBUaGV5IGFy ZSB3cml0dGVuIGluIGJvbGQgaW4gdGhlIGV4YW1wbGUgYWJvdmUuCgpOb3RlOiBUaGUgJyd2YXUn JyBpbiB0aGUgYWJvdmUgZXhhbXBsZSBhcmUgdGhlIGZhJ29ybWEnbyBmb3Ig4oCcZW5kIGJyaWRp 4oCdLiBUaGVyZSBpcyBhIGdvb2QgcmVhc29uIHlvdSBoYXZlIG5vdCB5ZXQgc2VlbiBpdCwgc3Rh eSB0dW5lZC4KCl9fJyd2YXUnJ19fIGZhJ29ybWEnbzogVGVybWluYXRlcyBicmlkaS4KCgoKSW4g bW9zdCBzcG9rZW4gYW5kIHdyaXR0ZW4gTG9qYmFuLCBtb3N0IGZhJ29ybWEnbyBhcmUgc2tpcHBl ZCAoZWxpZGVkKS4gVGhpcyBncmVhdGx5IHNhdmVzIHN5bGxhYmxlcyBpbiBzcGVlY2ggYW5kIHNw YWNlIGluIHdyaXRpbmcsIGhvd2V2ZXIsIG9uZSBtdXN0IGFsd2F5cyBiZSBjYXJlZnVsIHdoZW4g ZWxpZGluZyBmYSdvcm1hJ28uIEluIHRoZSBzaW1wbGUgZXhhbXBsZSAnJ2xvIG1lcmtvIGt1IGts YW1hJycsIHJlbW92aW5nIHRoZSBmYSdvcm1hJ28gJydrdScnIHdvdWxkIHlpZWxkICcnbG8gbWVy a28ga2xhbWEnJywgd2hpY2ggaXMgYSBzaW5nbGUgc3VtdGkgbWFkZSBmcm9tIHRoZSB0YW5ydSAn J21lcmtvIGtsYW1hJycuIFRodXMsIGl0IG1lYW5zIOKAnGFuIEFtZXJpY2FuIHRyYXZlbGVy4oCd IGluc3RlYWQgb2Yg4oCcYW4gQW1lcmljYW4gdHJhdmVsc+KAnS4gZmEnb3JtYSdvIGVsaXNpb24g Y2FuIGxlYWQgdG8gdmVyeSB3cm9uZyByZXN1bHRzIGlmIGRvbmUgaW5jb3JyZWN0bHksIHdoaWNo IGlzIHdoeSB5b3UgaGF2ZW7igJl0IGxlYXJuZWQgYWJvdXQgaXQgdW50aWwgbm93LgoKCgpUaGUg cnVsZSBmb3Igd2hlbiBmYSdvcm1hJ28gY2FuIGJlIGVsaWRlZCBpcyB2ZXJ5IHNpbXBsZSwgYXQg bGVhc3QgaW4gdGhlb3J5OiDigJxZb3UgY2FuIGVsaWRlIGEgZmEnb3JtYSdvLCBfX2lmIGFuZCBv bmx5IGlmX18gZG9pbmcgc28gZG9lcyBub3QgY2hhbmdlIHRoZSBncmFtbWF0aWNhbCBjb25zdHJ1 Y3RzIGluIHRoZSBzZW50ZW5jZS7igJ0KCk1vc3QgZmEnb3JtYSdvIGNhbiBiZSBzYWZlbHkgZWxp ZGVkIGF0IHRoZSBlbmQgb2YgdGhlIGJyaWRpLiBFeGNlcHRpb25zIGFyZSB0aGUgb2J2aW91cyBv bmVzIGxpa2Ug4oCcZW5kIHF1b3Rl4oCdLWZhJ29ybWEnbyBhbmQg4oCcZW5kIGJyaWRpIGdyb3Vw aW5n4oCdLWZhJ29ybWEnby4gVGhpcyBpcyB3aHkgJyd2YXUnJyBpcyBhbG1vc3QgbmV2ZXIgdXNl ZCDigJMgc2ltcGx5IGJlZ2lubmluZyBhIG5ldyBicmlkaSB3aXRoICcnLmknJyB3aWxsIGFsbW9z dCBhbHdheXMgdGVybWluYXRlIHRoZSBwcmVjZWRpbmcgYnJpZGkgYW55d2F5LiBJdCBoYXMgb25l IGZyZXF1ZW50IHVzZSwgaG93ZXZlci4gU2luY2UgYXR0aXR1ZGluYWxzIGFsd2F5cyBhcHBseSB0 byB0aGUgcHJlY2VkaW5nIHdvcmQsIGFwcGx5aW5nIGl0IHRvIGEgZmEnb3JtYSdvIGFwcGxpZXMg aXQgdG8gdGhlIGVudGlyZSBjb25zdHJ1Y3Qgd2hpY2ggaXMgdGVybWluYXRlZC4gVXNpbmcgJyd2 YXUnJywgb25lIGNhbiB0aGVuIHVzZSBhdHRpdHVkaW5hbHMgYWZ0ZXJ0aG91Z2h0IGFuZCBhcHBs eSB0aGVtIHRvIHRoZSBlbnRpcmUgYnJpZGk6CgonJ3ph4oCZYSBkbyBkdW5kYSBsbyB6ZGFuaSB7 a3V9IGxvIHByZW51IHtrdX0uLi4gdmF1IGnigJllJycgLSDigJxJIHNlZSB0aGF0IHlvdSBnaXZl IGEgaG9tZSB0byBhIHBlcnNvbi4uLiBJIGFwcHJvdmUh4oCdCgpfXycncHJlbnUnJ19fIHgxIGlz IGEgcGVyc29uOyB4MSBoYXMgYSBwZXJzb25hbGl0eS4KCgoKS25vd2luZyB0aGUgYmFzaWMgcnVs ZXMgZm9yIGZhJ29ybWEnbyBlbGlzaW9uLCB3ZSBjYW4gdGh1cyByZXR1cm4gdG8gdGhlIG9yaWdp bmFsIHNlbnRlbmNlIGFuZCBiZWdpbiByZW1vdmluZyBmYSdvcm1hJ286CgoKCicnLmF1IGRh4oCZ aSBtaSBkamljYSBsbyBudSBsZSBtZXJrbyBwb2kgdHVuYmEgbWkgX192YXUga3UnbyBrdV9fIGpp bXBlIGxvIGR1J3UgbWkgbmEgbmVsY2kgbG8gbnUgdm/igJlhIGRhcnhpIG1pIF9fdmF1IGtlaSBr dSB2YXUga2VpIGt1IHZhdSBrZWkga3UgdmF1X18nJwoKCgpXZSBjYW4gc2VlIHRoYXQgdGhlIGZp cnN0ICcndmF1JycgaXMgZ3JhbW1hdGljYWxseSB1bm5lY2Vzc2FyeSwgYmVjYXVzZSB0aGUgbmV4 dCBub24tZmEnb3JtYSdvLXdvcmQgaXMgJydqaW1wZScnLCB3aGljaCBpcyBhIHNlbGJyaS4gU2lu Y2UgdGhlcmUgY2FuIG9ubHkgYmUgb25lIHNlbGJyaSBwZXIgYnJpZGksICcndmF1JycgaXMgbm90 IG5lZWRlZC4gU2luY2UgJydqaW1wZScnIGFzIGEgc2VsYnJpIGNhbm5vdCBiZSBpbiB0aGUgcmVs YXRpdmUgY2xhdXNlIGVpdGhlciAob25seSBvbmUgYnJpZGkgaW4gYSBjbGF1c2UsIG9ubHkgb25l IHNlbGJyaSBpbiBlYWNoIGJyaWRpKSwgd2UgY2FuIGVsaWRlICcna3UnbycnLiBMaWtld2lzZSwg JydqaW1wZScnIGNhbm5vdCBiZSBhIHNlY29uZCBzZWxicmkgaW5zaWRlIHRoZSBjb25zdHJ1Y3Qg JydsZSBtZXJrbyBwb2l7Li4ufScnLCBzbyB0aGUgJydrdScnIGlzIG5vdCBuZWVkZWQgZWl0aGVy LiBGdXJ0aGVybW9yZSwgYWxsIHRoZSBmYSdvcm1hJ28gYXQgdGhlIHZlcnkgZW5kIG9mIHRoZSBz ZW50ZW5jZSBjYW4gYmUgZWxpZGVkIHRvbywgc2luY2UgYmVnaW5uaW5nIGEgbmV3IGJyaWRpIHdp bGwgdGVybWluYXRlIGFsbCBvZiB0aGVzZSBjb25zdHJ1Y3RzIGFueXdheS4KCldlIHRoZW4gZW5k IHVwIHdpdGg6CgonJy5hdSBkYeKAmWkgbWkgZGppY2EgbG8gbnUgbGUgbWVya28gcG9pIHR1bmJh IG1pIGppbXBlIGxvIGR1J3UgbWkgbmEgbmVsY2kgbG8gbnUgdm/igJlhIGRhcnhpIG1pJycg4oCT IHdpdGggbm8gZmEnb3JtYSdvIGF0IGFsbCEKCgoKV2hlbiBlbGlkaW5nIGZhJ29ybWEnbywgaXQg aXMgYSBnb29kIGlkZWEgdG8gYmUgYWNxdWFpbnRlZCB3aXRoICcnY3UnJy4gJydjdScnIGlzIG9u ZSBvZiB0aG9zZSB3b3JkcyB3aGljaCBjYW4gbWFrZSB5b3VyIChMb2piYW5pYykgbGlmZSBhIGxv dCBlYXNpZXIuIFdoYXQgaXQgZG9lcyBpcyB0byBzZXBhcmF0ZSBhbnkgcHJldmlvdXMgc3VtdGkg ZnJvbSB0aGUgc2VsYnJpLiBPbmUgY291bGQgc2F5IHRoYXQgaXQgZGVmaW5lcyB0aGUgbmV4dCB3 b3JkIHRvIGJlIGEgc2VsYnJpLCBhbmQgdGVybWluYXRlcyBleGFjdGx5IGFzIG11Y2ggYXMgaXQg bmVlZHMgdG8gaW4gb3JkZXIgdG8gZG8gdGhhdC4KCl9fJydjdScnX18gZWxpZGFibGUgbWFya2Vy OiBzZXBhcmF0ZXMgc2VsYnJpIGZyb20gcHJlY2VkaW5nIHN1bXRpLCBhbGxvd3MgcHJlY2VkaW5n IGZhJ29ybWEnbyBlbGlzaW9uLgoKCgpfXycncHJhbWknJ19fID0g4oCceDEgbG92ZXMgeDLigJ0K CgoKJydsbyBzdeKAmXUgZG8gY3Vza3UgbG8gc2UgZHXigJl1IGRvIHByYW1pIG1pIF9fdmF1IGtl aSBrdSB2YXUga2VpIGt1X18gc2UgZGppY2EgbWknJyA9CgonJ2xvIHN14oCZdSBkbyBjdXNrdSBs byBzZSBkdeKAmXUgZG8gcHJhbWkgbWkgX19jdV9fIHNlIGRqaWNhIG1pJycKCuKAnFRoYXQgeW91 IHNheSB0aGF0IHlvdSBsb3ZlIG1lIGlzIGRlc2lyZWQgYnkgYmXigJ0gb3Ig4oCcSSB3aXNoIHlv dSBzYWlkIHlvdSBsb3ZlZCBtZeKAnQoKbm90ZTogJydjdScnIGlzIG5vdCBhIGZhJ29ybWEnbywg YmVjYXVzZSBpdCBpcyBub3QgdGllZCB0byBvbmUgc3BlY2lmaWMgY29uc3RydWN0LiBCdXQgaXQg Y2FuIGJlIHVzZWQgdG8gZWxpZGUgb3RoZXIgZmEnb3JtYSdvLgoKCgpPbmUgb2YgdGhlIGdyZWF0 ZXN0IHN0cmVuZ3RocyBvZiAnJ2N1JycgaXMgdGhhdCBpdCBxdWlja2x5IGJlY29tZXMgZWFzeSB0 byBpbnR1aXRpdmVseSB1bmRlcnN0YW5kLiBCeSBpdHNlbGYgaXQgbWVhbnMgbm90aGluZywgYnV0 IGl0IHJldmVhbHMgdGhlIHN0cnVjdHVyZSBvZiBMb2piYW4gZXhwcmVzc2lvbnMgYnkgaWRlbnRp ZnlpbmcgdGhlIGNvcmUgc2VsYnJpLiBJbiB0aGUgb3JpZ2luYWwgZXhhbXBsZSB3aXRoIHRoZSB2 aW9sZW50IEFtZXJpY2FuIGJyb3RoZXIsIHVzaW5nICcnY3UnJyBiZWZvcmUgJydqaW1wZScnIGRv ZXMgbm90IGNoYW5nZSB0aGUgbWVhbmluZyBvZiB0aGUgc2VudGVuY2UgaW4gYW55IHdheSwgYnV0 IG1pZ2h0IG1ha2UgaXQgZWFzaWVyIHRvIHJlYWQuCgoKCkluIHRoZSBmb2xsb3dpbmcgY291cGxl IG9mIGxlc3NvbnMsICcnY3UnJyB3aWxsIGJlIHVzZWQgd2hlbiBuZWNlc3NhcnksIGFuZCBhbGwg ZmEnb3JtYSdvIGVsaWRlZCBpZiBwb3NzaWJsZS4gVGhlIGVsaWRlZCBmYSdvcm1hJ28gd2lsbCBi ZSBlbmNhc2VkIGluIGN1cmx5IGJyYWNrZXRzLCBhcyBzaG93biBiZWxvdy4gVHJ5IHRvIHRyYW5z bGF0ZSBpdCEKCl9fJyd2YWpuaScnX18g4oCceDEgaXMgaW1wb3J0YW50IHRvIHgyIGZvciByZWFz b24geDPigJ0KCl9fJydqaW1wZScnX18g4oCceDEgdW5kZXJzdGFuZHMgdGhhdCB4MiAoZHXigJl1 LWFic3RyYWN0aW9uKSBpcyB0cnVlIGFib3V0IHgz4oCdCgpfXycnYeKAmW8nJ19fIC0gQXR0aXR1 ZGluYWw6IFNpbXBsZSBwcm9wb3NpdGlvbmFsIGVtb3Rpb246IEhvcGUgLSBkZXNwYWlyCgoKCicn YeKAmW8gZG8gbm9pIGtl4oCZYSBsb2pibyAuaeKAmWUge2t14oCZb30ge2t1fSBjdSBqaW1wZSBs byBkdeKAmXUgbG8gZmHigJlvcm1h4oCZbyB7a3V9IGN1IHZham5pIHt2YXV9IHtrZWl9IHtrdX0g e3ZhdX0nJwoKV2hhdCBkbyBJIHN0YXRlPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnEkgaG9w ZSB0aGF0IHlvdSwgd2hvIGFyZSBMb2piYW5pYyAoSSBhcHByb3ZlIG9mIHRoaXMpLCB1bmRlcnN0 YW5kcyB0aGF0IGZhJ29ybWEnbyBhcmUgaW1wb3J0YW504oCdfn4KCgoKRnVuIHNpZGUgbm90ZTog TW9zdCBwZW9wbGUgd2VsbC12ZXJzZWQgaW4gZmEnb3JtYSdvLWVsaXNpb24gZG8gaXQgc28gaW5z dGluY3RpdmVseSB0aGF0IHRoZXkgb2Z0ZW4gbXVzdCBiZSByZW1pbmRlZCBob3cgaW1wb3J0YW50 IHVuZGVyc3RhbmRpbmcgZmEnb3JtYSdvIGFyZSB0byB0aGUgdW5kZXJzdGFuZGluZyBvZiBMb2pi YW4uIFRoZXJlZm9yZSwgZWFjaCBUdWVzZGF5IGhhdmUgYmVlbiBkZXNpZ25hdGVkIOKAnFRlcm1p bmF0b3IgRGF54oCdIG9yICcnZmHigJlvcm1h4oCZbyBkamVkaScnIG9uIHRoZSBMb2piYW4gSVJD IGNoYXRyb29tLiBEdXJpbmcgVGVybWluYXRvciBEYXksIG1hbnkgcGVvcGxlIHRyeSAoYW5kIG9m dGVuIGZhaWwpIHRvIHJlbWVtYmVyIHdyaXRpbmcgb3V0IGFsbCBmYSdvcm1hJ28gd2l0aCBzb21l IHZlcnkgdmVyYm9zZSBjb252ZXJzYXRpb25zIGFzIGEgcmVzdWx0LgoKCgoKCiEhTG9qYmFuIExl c3NvbnMgLSBMZXNzb24gbmluZSAoc3VtdGNpdGEpCgpTbyBmYXIgd2UgaGF2ZSBiZWVuIGRvaW5n IHByZXR0eSB3ZWxsIHdpdGggdGhlIHNlbGJyaSB3ZSBoYXZlIGhhZCBhdCBoYW5kLiBIb3dldmVy LCB0aGVyZSBpcyBhIGZpbml0ZSBhbW91bnQgb2YgZGVmaW5lZCBzZWxicmkgb3V0IHRoZXJlLCBh bmQgaW4gbWFueSBjYXNlcyB0aGUgc3VtdGkgcGxhY2VzIGFyZSBub3QgdXNlZnVsIGZvciB3aGF0 IHdlIGhhZCBpbiBtaW5kLiBXaGF0IGlmLCBzYXksIGkgd2FudCB0byBzYXkgdGhhdCBJIGFtIHRy YW5zbGF0aW5nIHVzaW5nIGEgY29tcHV0ZXI/IFRoZXJlIGlzIG5vIHBsYWNlIGluIHRoZSBzdHJ1 Y3R1cmUgb2YgJydmYW52YScnIHRvIHNwZWNpZnkgd2hhdCB0b29sIEkgdHJhbnNsYXRlIHdpdGgs IHNpbmNlLCBtb3N0IG9mIHRoZSB0aW1lLCB0aGF0IGlzIG5vdCBuZWNlc3NhcnkuIE5vdCB0byB3 b3JyeSwgdGhpcyBsZXNzb24gaXMgb24gaG93IHRvIGFkZCBhZGRpdGlvbmFsIHN1bXRpIHBsYWNl cyB0byB0aGUgc2VsYnJpLgoKCgpUaGUgbW9zdCBiYXNpYyB3YXkgdG8gYWRkIHN1bXRpIHBsYWNl cyBhcmUgd2l0aCAnJ2Zp4oCZby4uLmZl4oCZdScnICh5ZXMsIGFub3RoZXIgZXhhbXBsZSBvZiBh IGZhJ29ybWEnbywgJydmZeKAmXUnJy4gSXTigJlzIGFsbW9zdCBuZXZlciBuZWNlc3NhcnksIHNv IHRoaXMgbWlnaHQgYmUgdGhlIGxhc3QgdGltZSB5b3UgZXZlciBzZWUgaXQuKQoKSW4gYmV0d2Vl biB0aGVzZSB0d28gd29yZHMgZ29lcyBhIHNlbGJyaSwgYW5kIGxpa2UgJydsby4uLmt1JycsICcn ZmnigJlvLi4uZmXigJl1JycgZXh0cmFjdHMgdGhlIHgxIG9mIHRoZSBzZWxicmkgcHV0IGludG8g aXQuIEhvd2V2ZXIsIHdpdGggJydmaeKAmW8uLi5mZeKAmXUnJywgdGhlIHNlbGJyaSBwbGFjZSBp cyBjb252ZXJ0ZWQsIG5vdCB0byBhIHN1bXRpLCBidXQgdG8gYSAnJ3N1bXRjaXRhJycsIG1lYW5p bmcg4oCcc3VtdGktbGFiZWzigJ0sIHdpdGggdGhlIHBsYWNlIHN0cnVjdHVyZSBvZiB0aGUgeDEg b2YgdGhlIHNlbGJyaSBpdCBjb252ZXJ0ZWQuIFRoaXMgJydzdW10Y2l0YScnIHRoZW4gYWJzb3Ji cyB0aGUgbmV4dCBzdW10aS4gT25lIGNvdWxkIHNheSB0aGF0IHVzaW5nIGEgJydzdW10Y2l0YScn LCB5b3UgaW1wb3J0IGEgc3VtdGkgcGxhY2UgZnJvbSBhbm90aGVyIHNlbGJyaSwgYW5kIGFkZCBp dCB0byB0aGUgYnJpZGkgYmVpbmcgc2FpZC4KCk5vdGU6IFNvbWV0aW1lcywgZXNwZWNpYWxseSBp biBvbGRlciB0ZXh0cywgdGhlIHRlcm0g4oCcdGFn4oCdIG9yIOKAnG1vZGFs4oCdIGlzIHVzZWQg Zm9yICcnc3VtdGNpdGEnJy4gSWdub3JlIHRob3NlIHB1bnkgRW5nbGlzaCBleHByZXNzaW9ucy4g V2UgdGVhY2ggcHJvcGVyIExvamJhbiBoZXJlLgoKCgpXaGlsZSBpdCBpcyBoYXJkIHRvIGdyYXNw IHRoZSBwcm9jZXNzIGZyb20gcmVhZGluZyBhYm91dCBpdCwgYW4gZXhhbXBsZSBjYW4gcGVyaGFw cyBzaG93IGl0cyBhY3R1YWwgc2ltcGxpY2l0eToKCl9fJydza2FtaScnX18g4oCceDEgaXMgYSBj b21wdXRlciBmb3IgcHVycG9zZSB4MuKAnQoKX18nJ3BpbG5vJydfXyDigJx4MSB1c2VzIHgyIGFz IGEgdG9vbCBmb3IgZG9pbmcgeDPigJ0KCgoKJydtaSBmYW52YSB0aSBmaeKAmW8gc2UgcGlsbm8g e2Zl4oCZdX0gbG8gc2thbWkge2t1fXt2YXV9JycgLSDigJxJIHRyYW5zbGF0ZSB0aGlzIHdpdGgg YSBjb21wdXRlcuKAnSBUaGUgeDIgb2YgJydwaWxubycnLCB3aGljaCBpcyB0aGUgeDEgb2YgJydz ZSBwaWxubycnIGlzIGEgcGxhY2Ugc3RydWN0dXJlIGZvciBhIHRvb2wgYmVpbmcgdXNlZCBieSBz b21lb25lLiBUaGlzIHBsYWNlIHN0cnVjdHVyZSBpcyBjYXB0dXJlZCBieSAnJ2Zp4oCZby4uLmZl 4oCZdScnLCBhZGRlZCB0byB0aGUgbWFpbiBzZWxicmksIGFuZCB0aGVuIGZpbGxlZCBieSAnJ2xv IHNrYW1pJycuIFRoZSBpZGVhIG9mICcnc3VtdGNpdGEnJyBpcyBzb21ldGltZXMgZXhwcmVzc2Vk IGluIEVuZ2xpc2ggdXNpbmcgdGhlIGZvbGxvd2luZyB0cmFuc2xhdGlvbjoKCuKAnEkgdHJhbnNs YXRlIHRoaXMgd2l0aC10b29sOiBBIGNvbXB1dGVy4oCdCgoKCkEgJydzdW10Y2l0YScnIGNhbiBv bmx5IGFic29yYiBvbmUgc3VtdGksIHdoaWNoIGlzIGFsd2F5cyB0aGUgZm9sbG93aW5nIG9uZS4g QWx0ZXJuYXRpdmVseSwgdGhlICcnc3VtdGNpdGEnJyBjb25zdHJ1Y3QgY2FuIGJlIHRlcm1pbmF0 ZWQgd2l0aCAnJ2t1JycsIGluIHdoaWNoIGNhc2UgYSAnJ3pv4oCZZScnIGlzIGltcGxpZWQgdG8g ZmlsbCB0aGUgJydzdW10Y2l0YScnLiBPciwgb25lIGNvdWxkIGltYWdpbmUgYW4gZWxpZGVkIHN1 bXRpIGJlaW5nIHRlcm1pbmF0ZWQgd2l0aCB0aGUgJydrdScnLgoKX18nJ3p1a3RlJydfXyDigJx4 MSBpcyBhIHZvbGl0aW9uYWwgZW50aXR5IGNhcnJ5aW5nIG91dCBhY3Rpb24geDIgZm9yIHB1cnBv c2UgeDPigJ0KCgoKJydmaeKAmW8genVrdGUge2Zl4oCZdX0ga3UgbG8gc2thbWkge2t1fSBjdSBw aWxubyBsbyBsb2pibyB7a3V9e3ZhdX0nJyAtIOKAnFdpdGggdm9saXRpb24sIGEgY29tcHV0ZXIg dXNlZCBzb21ldGhpbmcgTG9qYmFuaWPigJ0gKHBlcmhhcHMgaW1wbHlpbmcgdGhhdCBhIExvamJh bmljIGNvbXB1dGVyIHdlbnQgc2VudGllbnQ/IFRvdWdoIGl0IGRvZXMgbm90IHNwZWNpZnkgd2hv IGhhZCB2b2xpdGlvbi4gSXQgY291bGQganVzdCBiZSB0aGUgcHJvZ3JhbW1lciB3aG8gcHJvZ3Jh bW1lZCB0aGUgY29tcHV0ZXIgLSBob3cgYm9yaW5nLikKCgoKV2hhdCBkb2VzICcnbWkgamltcGUg ZmkgbG8gbG9qYm8ge2t1fSBmaeKAmW8gc2UgdGF2bGEge2Zl4oCZdX0gbWknJyBzdGF0ZT8KCgoK QW5zd2VyOiB+fmdyZXksZ3JleTrigJxJIHVuZGVyc3RhbmQgc29tZXRoaW5nIGFib3V0IExvamJh biwgc3Bva2VuIHRvIG1l4oCdfn4KCgoKUHV0dGluZyB0aGUgJydzdW10Y2l0YScnIHJpZ2h0IGlu IGZyb250IG9mIHRoZSBzZWxicmkgYWxzbyBtYWtlcyBpdCBzZWxmLXRlcm1pbmF0ZSwgc2luY2Ug c3VtdGNpdGEgb25seSBjYW4gYWJzb3JiIHN1bXRpLCBhbmQgbm90IHNlbGJyaS4gVGhpcyBmYWN0 IHdpbGwgYmUgb2YgaW1wb3J0YW5jZSBpbiBuZXh0IGxlc3NvbiwgYXMgeW91IHdpbGwgc2VlLgoK CgpTYWRseSwgJydmaeKAmW8nJyBpcyBub3QgdXNlZCB2ZXJ5IG9mdGVuIGRlc3BpdGUgaXRzIGZs ZXhpYmlsaXR5LiBXaGF0IElTIHVzZWQgdmVyeSBvZnRlbiwgdGhvdWdoLCBhcmUgQkFJLiBCQUkg YXJlIGEgY2xhc3Mgb2YgTG9qYmFuIHdvcmRzLCB3aGljaCBpbiB0aGVtc2VsdmVzIGFjdCBhcyAn J3N1bXRjaXRhJycuIEFuIGV4YW1wbGUgb2YgdGhpcyBpcyAnJ3p14oCZZScnLCB0aGUgQkFJIGZv ciAnJ3p1a3RlJycuIEdyYW1hdGljYWxseSwgJyd6deKAmWUnJyBpcyB0aGUgc2FtZSBhcyAnJ2Zp 4oCZbyB6dWt0ZSBmZeKAmXUnJy4gVGh1cywgdGhlIGFib3ZlIGV4YW1wbGUgY291bGQgYmUgcmVk dWNlZCB0bzoKCicnenXigJllIGt1IGxvIHNrYW1pIHtrdX0gY3UgcGlsbm8gbG8gbG9qYm8ge2t1 fSB7dmF1fScnLiBUaGVyZSBleGlzdCBzb21ldGhpbmcgbGlrZSA2MCBCQUksIGFuZCBhIGxvdCBv ZiB0aGVzZSBhcmUgdmVyeSB1c2VmdWwgaW5kZWVkLiBGdXJ0ZXJtb3JlLCBCQUkgY2FuIGFsc28g YmUgY29udmVydGVkIHdpdGggJydzZScnIGFuZCBmcmllbmRzLCBtZWFuaW5nIHRoYXQgJydzZSB6 deKAmWUnJyBpcyBlcXVhbCB0byAnJ2Zp4oCZbyBzZSB6dWt0ZSBmZeKAmXUnJywgd2hpY2ggcmVz dWx0cyBpbiBhIGdyZWF0IGRlYWwgbW9yZSBCQUkuCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNz b24gdGVuIChQVSwgRkFoQSwgWkksIFZBLCBaRWhBLCBWRWhBKQoKSG93IHVuZmFtaWxpYXIgdG8g dGhlIEVuZ2xpc2gtc3BlYWtlciBhIGxhbmd1YWdlIExvamJhbiBpcyB3aGVuIG9uZSBjYW4gcmVh ZCB0aHJvdWdoIG5pbmUgbGVzc29ucyBvZiBMb2piYW4gZ3JhbW1hciB3aXRob3V0IG1lZXRpbmcg YSB0ZW5zZSBvbmNlLiBUaGlzIGlzIGJlY2F1c2UsIHVubGlrZSBtYW55IG5hdHVyYWwgbGFuZ3Vh Z2VzIChtb3N0IEluZG8tRXVyb3BlYW4gb25lcywgZm9yIGluc3RhbmNlKSwgYWxsIHRlbnNlcyBp biBMb2piYW4gYXJlIG9wdGlvbmFsLiBTYXlpbmcgJydtaSBjaXRrYSBsbyBjaXJsYSB7a3V9Jycg Y2FuIG1lYW4g4oCcSSBlYXQgY2hlZXNl4oCdIG9yIOKAnEkgYXRlIHRoZSBjaGVlc2XigJ0gb3Ig 4oCcSSBhbHdheXMgZWF0IGNoZWVzZeKAnSBvciDigJxJbiBhIG1vbWVudCwgaSB3aWxsIGhhdmUg anVzdCBmaW5pc2hlZCBlYXRpbmcgY2hlZXNl4oCdLiBDb250ZXh0IHJlc29sdmVzIHdoYXQgaXMg Y29ycmVjdCwgYW5kIGluIG1vc3QgY29udmVyc2F0aW9uLCB0ZW5zZXMgYXJlIG5vdCBuZWVkZWQg YXQgYWxsLiBIb3dldmVyLCB3aGVuIGl04oCZcyBuZWVkZWQgaXTigJlzIG5lZWRlZCwgYW5kIGl0 IG11c3QgYmUgdGF1Z2h0LiBGdXJ0aGVybW9yZSwgTG9qYmFuIHRlbnNlcyBhcmUgdW51c3VhbCBi ZWNhdXNlIHRoZXkgdHJlYXQgdGltZSBhbmQgc3BhY2UgZnVuZGFtZW50YWxseSB0aGUgc2FtZSAt IHNheWluZyB0aGF0IEkgd29ya2VkIGEgbG9uZyB0aW1lIGFnbyBpcyBub3QgZ3JhbW1hdGljYWxs eSBkaWZmZXJlbnQgdGhhbiBzYXlpbmcgSSB3b3JrIGZhciBhd2F5IHRvIHRoZSBub3J0aC4KCkxp a2UgbWFueSBvdGhlciBsYW5ndWFnZXMsIHRoZSBMb2piYW4gdGVuc2Ugc3lzdGVtIGlzIHBlcmhh cHMgdGhlIG1vc3QgZGlmZmljdWx0IHBhcnQgb2YgdGhlIGxhbmd1YWdlLiBVbmxpa2UgbWFueSBv dGhlciBsYW5ndWFnZXMgdGhvdWdoLCBpdOKAmXMgcGVyZmVjdGx5IHJlZ3VsYXIgYW5kIG1ha2Vz IHNlbnNlLiBTbyBmZWFyIG5vdCwgZm9yIGl0IHdpbGwgbm90IGludm9sdmUgc3dlYXRpbmcgdG8g bGVhcm4gaG93IHRvIG1vZGlmeSB0aGUgc2VsYnJpIG9yIGFueXRoaW5nIHNpbGx5IGxpa2UgdGhh dC4KCgoKTm8sIGluIHRoZSBMb2piYW4gdGVuc2Ugc3lzdGVtLCBhbGwgdGVuc2VzIGFyZSBzdW10 Y2l0YSwgd2hpY2ggd2UgaGF2ZSBjb252ZW5pZW50bHkganVzdCBtYWRlIG91cnNlbHZlcyBmYW1p bGlhciB3aXRoLiBPa2F5IG9rYXksIHRlY2huaWNhbGx5LCB0ZW5zZXMgYXJlIHNsaWdodGx5IGRp ZmZlcmVudCBmcm9tIG90aGVyIHN1bXRjaXRhLCBidXQgdGhpcyBkaWZmZXJlbmNlIGlzIGFsbW9z dCBpbnNpZ25pZmljYW50LCBhbmQgd2lsbCBiZSB3b24ndCBiZSBleHBsYWluZWQgdW50aWwgbGF0 ZXIuIAoKVGhlcmUgYXJlIG1hbnkgZGlmZmVyZW50IGtpbmRzIG9mIHRlbnNlLXN1bXRjaXRhLCBz byBsZXTigJlzIHN0YXJ0IGF0IHRoZSBvbmVzIG1vc3QgZmFtaWxpYXIgdG8gRW5nbGlzaC1zcGVh a2Vycy4KCl9fJydwdScnX18gLSBzdW10Y2l0YTogYmVmb3JlIHtzdW10aX0KCl9fJydjYScnX18g LSBzdW10Y2l0YTogYXQgdGhlIHNhbWUgdGltZSBhcyB7c3VtdGl9CgpfXycnYmEnJ19fIC0gc3Vt dGNpdGE6IGFmdGVyIHtzdW10aX0KCgoKVGhlc2UgYXJlIGxpa2UgdGhlIEVuZ2xpc2ggY29uY2Vw dHMg4oCcYmVmb3Jl4oCdLCDigJxub3figJ0gYW5kIOKAnGFmdGVy4oCdLiBJbiBhY3R1YWxpdHkg dGhvdWdoLCBvbmUgY291bGQgYXJndWUgdGhhdCB0d28gcG9pbnQtbGlrZSBldmVudHMgY2FuIG5l dmVyIG9jY3VyIGV4YWN0bHkgc2ltdWx0YW5lb3VzbHksIHJlbmRlcmluZyAnJ2NhJycgdXNlbGVz cy4gQnV0ICcnY2EnJyBleHRlbmRzIHNsaWdodGx5IGludG8gdGhlIHBhc3QgYW5kIHRoZSBmdXR1 cmUsIG1lYW5pbmcganVzdCDigJxhYm91dCBub3figJ0uIFRoaXMgaXMgYmVjYXVzZSBodW1hbiBi ZWluZ3MgZG9u4oCZdCBwZXJjZWl2ZSB0aW1lIGluIGEgcGVyZmVjdGx5IGxvZ2ljYWwgd2F5LCBh bmQgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gcmVmbGVjdHMgdGhhdC4KCgoKU2lkZSBub3RlOiBJ dCB3YXMgYWN0dWFsbHkgc3VnZ2VzdGVkIG1ha2luZyB0aGUgTG9qYmFuIHRlbnNlIHN5c3RlbSBy ZWxhdGl2aXN0aWMuIFRoYXQgaWRlYSwgaG93ZXZlciwgd2FzIGRyb3BwZWQsIGJlY2F1c2UgaXQg aXMgY291bnRlci1pbnR1aXRpdmUsIGFuZCB3b3VsZCBtZWFuIHRoYXQgdG8gbGVhcm4gTG9qYmFu LCBvbmUgd291bGQgaGF2ZSB0byBsZWFybiB0aGUgdGhlb3J5IG9mIHJlbGF0aXZpdHkgZmlyc3Qu ICAKCgoKU28sIGhvdyB3b3VsZCB5b3Ugc2F5IOKAnEkgZXhwcmVzcyB0aGlzIGFmdGVyIEkgY2Ft ZSBoZXJlP+KAnSAocG9pbnRpbmcgdG8gYSBwYXBlcikKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTon J21pIGN1c2t1IHRpIGJhIGxvIG51IG1pIGtsYW1hIHRpIHt2YXV9IHtrZWkge2t1fSB7dmF1fScn fn4KCgoKVXN1YWxseSB3aGVuIHNwZWFraW5nLCB3ZSBkbyBub3QgbmVlZCB0byBzcGVjaWZ5IHdo aWNoIGV2ZW50IHRoaXMgYWN0aW9uIGlzIGluIHRoZSBwYXN0IHJlbGF0aXZlIHRvLiBJbjog4oCc SSBnYXZlIGEgY29tcHV0ZXIgYXdheeKAnSwgd2UgY2FuIGFzc3VtZSB0aGF0IHRoZSBhY3Rpb24g aGFwcGVuZWQgcmVsYXRpdmUgdG8g4oCcbm934oCdLCBhbmQgdGh1cyB3ZSBjYW4gZWxpZGUgdGhl IHN1bXRpIG9mIHRoZSBzdW10Y2l0YSwgYmVjYXVzZSBpdOKAmXMgb2J2aW91czoKCicncHUga3Ug bWkgZHVuZGEgbG8gc2thbWkge2t1fSB7dmF1fScnIG9yCgonJ21pIGR1bmRhIGxvIHNrYW1pIHtr dX0gcHUge2t1fSB7dmF1fScnIG9yLCBtb3JlIGNvbW1vbmx5CgonJ21pIHB1IHtrdX0gZHVuZGEg bG8gc2thbWkge2t1fSB7dmF1fScnLiBUaGUgc3VtdGkgd2hpY2ggZmlsbHMgdGhlIHN1bXRjaXRh IGlzIGFuIGltcGxpZWQgJyd6b+KAmWUnJywgd2hpY2ggaXMgYWxtb3N0IGFsd2F5cyB1bmRlcnN0 b29kIGFzIHJlbGF0aXZlIHRvIHRoZSBzcGVha2VyJ3MgdGltZSBhbmQgcGxhY2UgKHRoaXMgaXMg ZXNwZWNpYWxseSBpbXBvcnRhbnQgd2hlbiBzcGVha2luZyBhYm91dCBsZWZ0IGFuZCByaWdodCku IElmIHNwZWFraW5nIGFib3V0IHNvbWUgZXZlbnRzIHRoYXQgaGFwcGVuZWQgc29tZSBvdGhlciB0 aW1lIHRoYW4gdGhlIHByZXNlbnQsIGl0IGlzIHNvbWV0aW1lcyBhc3N1bWVkIHRoYXQgYWxsIHRl bnNlcyBhcmUgcmVsYXRpdmUgdG8gdGhhdCBldmVudCB3aGljaCBpcyBiZWluZyBzcG9rZW4gYWJv dXQuIEluIG9yZGVyIHRvIGNsYXJpZnkgdGhhdCBhbGwgdGVuc2VzIGFyZSByZWxhdGl2ZSB0byB0 aGUgc3BlYWtlcidzIGN1cnJlbnQgcG9zaXRpb24sIHRoZSB3b3JkICcnbmF1JycgY2FuIGJlIHVz ZWQgYXQgYW55IHRpbWUuIEFub3RoZXIgd29yZCwgJydraScnIG1hcmtzIGEgdGVuc2Ugd2hpY2gg aXMgdGhlbiBjb25zaWRlcmVkIHRoZSBuZXcgc3RhbmRhcmQuIFRoYXQgd2lsbCBiZSB0YXVnaHQg d2F5IGxhdGVyLgoKX18nJ25hdScnX18gdXBkYXRlcyB0ZW1wb3JhbCBhbmQgc3BhY2lhbCBmcmFt ZSBvZiByZWZlcmVuY2UgdG8gdGhlIHNwZWFrZXIncyBjdXJyZW50IGhlcmUgYW5kIG5vdy4KCgoK X18nJ2d1Z2RlJydfXyA9IOKAnHgxIGlzIHRoZSBjb3VudHJ5IG9mIHBlb3BsZSB4MiB3aXRoIGxh bmQvdGVycml0b3J5IHgz4oCdCgoKCkFsc28gbm90ZSB0aGF0ICcnbWkgcHUge2t1fSBrbGFtYSBs byBtZXJrbyBndWdkZSB7a3V9IHt2YXV9JycsIOKAnEkgd2VudCB0byBBbWVyaWNh4oCdLCBkb2Vz IG5vdCBpbXBseSB0aGF0IEnigJltIG5vdCBzdGlsbCB0cmF2ZWxpbmcgdG8gVVNBLCBvbmx5IHRo YXQgaXQgd2FzIGFsc28gdHJ1ZSBzb21lIHRpbWUgaW4gdGhlIHBhc3QsIGZvciBpbnN0YW5jZSBm aXZlIG1pbnV0ZXMgYWdvLgoKCgpBcyBtZW50aW9uZWQsIHNwYWNpYWwgYW5kIHRlbXBvcmFsIHRp bWUgdGVuc2VzIGFyZSB2ZXJ5IG11Y2ggYWxpa2UuIENvbnRyYXN0IHRoZSBwcmV2aW91cyB0aHJl ZSB0aW1lIHRlbnNlcyB3aXRoIHRoZXNlIGZvdXIgc3BhY2lhbCB0ZW5zZXM6CgpfXycnenXigJlh JydfXyBzdW10Y2l0YTogbGVmdCBvZiB7c3VtdGl9CgpfXycnY2HigJl1JydfXyBzdW10Y2l0YTog aW4gZnJvbnQgb2Yge3N1bXRpfQoKX18nJ3Jp4oCZdScnX18gc3VtdGNpdGE6IHJpZ2h0IG9mIHtz dW10aX0KCl9fJydideKAmXUnJ19fIHN1bXRjaXRhOiBhdCB0aGUgc2FtZSBwbGFjZSBhcyB7c3Vt dGl9IChzcGFjaWFsIGVxdWl2YWxlbnQgb2YgJydjYScnKQoKCgpfXycnbydvJydfXzogYXR0aXR1 ZGluYWw6IGNvbXBsZXggcHVyZSBlbW90aW9uOiBwYXRpZW5jZSAtIHRvbGVyYW5jZSAtIGFuZ2Vy CgoKCldoYXQgd291bGQgJycub+KAmW9uYWkgcmnigJl1IHtrdX0gbnUgbG8gcHJlbnUge2t1fSBj dSBkYXJ4aSBsbyBnZXJrdSBwdSB7a3V9IHtrdX0ge3ZhdX0ge2tlaX0ge3ZhdX0nJyBtZWFuPyAo bm90aWNlIHRoZSBmaXJzdCBlbGlkZWQga3UhKQoKX18nJ2RhcnhpJydfXyB4MSBiZWF0cy9oaXRz IHgyIHdpdGggaW5zdHJ1bWVudCB4MyBhdCBsb2N1cyB4NAoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OuKAnHthbmdlciF9IFRvIHRoZSByaWdodCAob2Ygc29tZXRoaW5nLCBwcm9iYWJseSBtZSkgYW5k IGluIHRoZSBwYXN0IChvZiBzb21lIGV2ZW50KSwgc29tZXRoaW5nIGlzIGFuIGV2ZW50IG9mIGEg cGVyc29uIGJlYXRpbmcgYSBkb2cu4oCdIG9yIOKAnEEgbWFuIGhpdCBhIGRvZyB0byBteSByaWdo dCHigJ1+fgoKCgpJZiB0aGVyZSBhcmUgc2V2ZXJhbCB0ZW5zZSBzdW10Y2l0YSBpbiBvbmUgYnJp ZGksIHRoZSBydWxlIGlzIHRoYXQgeW91IHJlYWQgdGhlbSBmcm9tIGxlZnQgdG8gcmlnaHQsIHRo aW5raW5nIGl0IGFzIGEgc28gY2FsbGVkIOKAnGltYWdpbmFyeSBqb3VybmV54oCdLCBXaGVyZSB5 b3UgYmVnaW4gYXQgYW4gaW1wbGllZCBwb2ludCBpbiB0aW1lIGFuZCBzcGFjZSAoZGVmYXVsdDog dGhlIHNwZWFrZXLigJlzIG5vdyBhbmQgaGVyZSksIGFuZCB0aGVuIGZvbGxvdyB0aGUgc3VtdGNp dGEgb25lIGF0IGEgdGltZSBmcm9tIGxlZnQgdG8gcmlnaHQuCgpFeGFtcGxlCgonJ21pIHB1IHtr dX0gYmEge2t1fSBqaW1wZSBmaSBsbyBsb2pibyBmYeKAmW9ybWHigJlvIHtrdX0ge3ZhdX0nJyA9 IOKAnEF0IHNvbWUgdGltZSBpbiB0aGUgcGFzdCwgSSB3aWxsIGJlIGFib3V0IHRvIGtub3cgYWJv dXQgZmEnb3JtYSdvcy7igJ0KCicnbWkgYmEge2t1fSBwdSB7a3V9IGppbXBlIGZpIGxvIGxvamJv IGZh4oCZb3JtYeKAmW8ge2t1fSB7dmF1fScnIOKAnEF0IHNvbWUgcG9pbnQgaW4gdGhlIGZ1dHVy ZSwgSSB3aWxsIGhhdmUgdW5kZXJzdG9vZCBhYm91dCBmYSdvcm1hJ29zLuKAnQoKU2luY2Ugd2Ug ZG8gbm90IHNwZWNpZnkgdGhlIGFtb3VudCBvZiB0aW1lIHdlIG1vdmUgYmFjayBvciBmb3J0aCwg dGhlIHVuZGVyc3RhbmRpbmcgY291bGQgaW4gYm90aCBjYXNlcyBoYXBwZW4gaW4gdGhlIGZ1dHVy ZSBvciB0aGUgcGFzdCBvZiB0aGUgcG9pbnQgb2YgcmVmZXJlbmNlLgoKCgpBbHNvLCBpZiBzcGFj aWFsIGFuZCB0ZW1wb3JhbCB0ZW5zZXMgYXJlIG1peGVkLCB0aGUgcnVsZSBpcyB0byBhbHdheXMg cHV0IHRlbXBvcmFsIGJlZm9yZSBzcGFjaWFsLiBJZiB0aGlzIHJ1bGUgaXMgdmlvbGF0ZWQsIGl0 IGNhbiBzb21ldGltZXMgcmVzdWx0IGluIHN5bnRhY3RpY2FsIGFtYmlndWl0eSwgd2hpY2ggTG9q YmFuIGRvZXMgbm90IHRvbGVyYXRlLgoKCgpTdXBwb3NlIHdlIHdhbnQgdG8gc3BlY2lmeSB0aGF0 IGEgbWFuIGhpdCBhIGRvZyBqdXN0IGEgbWludXRlIGFnby4gVGhlIHdvcmRzICcnemknJywgJyd6 YScnIGFuZCAnJ3p1Jycgc3BlY2lmaWVzIGEgc2hvcnQsIHVuc3BlY2lmaWVkIChwcmVzdW1hYmx5 IG1lZGl1bSkgYW5kIGxvbmcgZGlzdGFuY2UgaW4gdGltZS4gTm90aWNlIHRoZSB2b3dlbCBvcmRl ciAnJ2knJywgJydhJycgYW5kICcndScnLiBUaGlzIG9yZGVyIGFwcGVhcnMgYWdhaW4gYW5kIGFn YWluIGluIExvamJhbiwgYW5kIG1pZ2h0IGJlIHdvcnRoIHRvIG1lbW9yaXplLiDigJxTaG9ydOKA nSBhbmQg4oCcbG9uZ+KAnSBpbiBhcmUgYWx3YXlzIGNvbnRleHQgZGVwZW5kZW50LCByZWxhdGl2 ZSBhbmQgc3ViamVjdGl2ZS4gVHdvIGh1bmRyZWQgeWVhcnMgaXMgYSBzaG9ydCB0aW1lIGZvciBh IHNwZWNpZXMgdG8gZXZvbHZlLCBidXQgYSBsb25nIHRpbWUgdG8gd2FpdCBmb3IgdGhlIGJ1cy4K Cl9fJyd6aScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSBzbWFsbCBkaXN0YW5jZSBvZiB7c3Vt dGl9IGluIHRpbWUgZnJvbSBwb2ludCBvZiByZWZlcmVuY2UgCgpfXycnemEnJ19fIHN1bXRjaXRh OiBPY3VycmluZyB0aGUgdW5zcGVjaWZpZWQobWVkaXVtKSBkaXN0YW5jZSBvZiB7c3VtdGl9IGlu IHRpbWUgZnJvbSBwb2ludCBvZiByZWZlcmVuY2UgCgpfXycnenUnJ19fIHN1bXRjaXRhOiBPY3Vy cmluZyB0aGUgZmFyIGRpc3RhbmNlIG9mIHtzdW10aX0gaW4gdGltZSBmcm9tIHRoZSBwb2ludCBv ZiByZWZlcmVuY2UgCgoKClNpbWlsYXJseSwgc3BhY2lhbCBkaXN0YW5jZSBpcyBtYXJrZWQgYnkg Jyd2aScnLCAnJ3ZhJycgYW5kICcndnUnJyBmb3Igc2hvcnQsIHVuc3BlY2lmaWVkIChtZWRpdW0p IGFuZCBsb25nIGRpc3RhbmNlIGluIHNwYWNlLgoKX18nJ3ZpJydfXyBzdW10Y2l0YTogT2N1cnJp bmcgdGhlIHNtYWxsIGRpc3RhbmNlIG9mIHtzdW10aX0gaW4gc3BhY2UgZnJvbSBwb2ludCBvZiBy ZWZlcmVuY2UgCgpfXycndmEnJ19fIHN1bXRjaXRhOiBPY3VycmluZyB0aGUgdW5zcGVjaWZpZWQo bWVkaXVtKSBkaXN0YW5jZSBvZiB7c3VtdGl9IGluIHNwYWNlIGZyb20gcG9pbnQgb2YgcmVmZXJl bmNlIAoKX18nJ3Z1JydfXyBzdW10Y2l0YTogT2N1cnJpbmcgdGhlIGZhciBkaXN0YW5jZSBvZiB7 c3VtdGl9IGluIHNwYWNlIGZyb20gdGhlIHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJydndW5rYScn X18g4oCceDEgd29ya3MgYXQgeDIgd2l0aCBvYmplY3RpdmUgeDPigJ0KCgoKVHJhbnNsYXRlOiAn J2JhIHtrdX0gemEga3UgbWkgdnUge2t1fSBndW5rYSB7dmF1fScnCgoKCkFuc3dlcjogfn5ncmV5 LGdyZXk64oCcU29tZSB0aW1lIGluIHRoZSBmdXR1cmUsIEkgd2lsbCB3b3JrIGEgcGxhY2UgbG9u ZyBhd2F54oCdfn4KCk5vdGU6IFBlb3BsZSByYXJlbHkgdXNlICcnemknJywgJyd6YScnIG9yICcn enUnJyB3aXRob3V0IGEgJydwdScnIG9yICcnYmEnJyBpbiBmcm9udCBvZiBpdC4gVGhpcyBpcyBi ZWNhdXNlIG1vc3QgcGVvcGxlIGFsd2F5cyBuZWVkIHRvIHNwZWNpZnkgcGFzdCBvciBmdXR1cmUg aW4gdGhlaXIgbmF0aXZlIGxhbmd1YWdlLiBXaGVuIHlvdSB0aGluayBhYm91dCBpdCBMb2piYW5p Y2FsbHksIG1vc3Qgb2YgdGhlIHRpbWUgdGhlIHRpbWUtZGlyZWN0aW9uIGlzIG9idmlvdXMsIGFu ZCB0aGUgJydwdScnIG9yICcnYmEnJyBzdXBlcmZsdW91cyEKCgoKVGhlIG9yZGVyIGluIHdoaWNo IGRpcmVjdGlvbi1zdW10Y2l0YSBhbmQgZGlzdGFuY2Utc3VtdGNpdGEgYXJlIHNhaWQgbWFrZXMg YSBkaWZmZXJlbmNlLiBSZW1lbWJlciB0aGF0IHRoZSBtZWFuaW5ncyBvZiBzZXZlcmFsIHRlbnNl IHdvcmRzIGFyZSBwaWN0dXJlZCBieSBhbiBpbWFnaW5hcnkgam91cm5leSByZWFkaW5nIGZyb20g bGVmdCB0byByaWdodC4gVGh1cyAnJ3B1IHp1JycgaXMg4oCcYSBsb25nIHRpbWUgYWdv4oCdIHdo aWxlICcnenUgcHUnJyBpcyDigJxpbiB0aGUgcGFzdCBvZiBzb21lIHBvaW50IGluIHRpbWUgd2hp Y2ggaXMgYSBsb25nIHRpbWUgdG93YXJkIHRoZSBmdXR1cmUgb3IgdGhlIHBhc3Qgb2Ygbm934oCd LiBJbiB0aGUgZmlyc3QgZXhhbXBsZSwgJydwdScnIHNob3dzIHRoYXQgd2UgYmVnaW4gaW4gdGhl IHBhc3QsICcnenUnJyB0aGVuIHRoYXQgaXQgaXMgYSBsb25nIHRpbWUgYmFja3dhcmRzLiBJbiB0 aGUgc2Vjb25kIGV4YW1wbGUsICcnenUnJyBzaG93cyB0aGF0IHdlIGJlZ2luIGF0IHNvbWUgcG9p bnQgZmFyIGF3YXkgaW4gdGltZSBmcm9tIG5vdywgJydwdScnIHRoZW4sIHRoYXQgd2UgbW92ZSBi YWNrd2FyZHMgZnJvbSB0aGF0IHBvaW50LiBUaHVzICcncHUgenUnJyBpcyBhbHdheXMgaW4gdGhl IHBhc3QuICcnenUgcHUnJyBjb3VsZCBiZSBpbiB0aGUgZnV0dXJlLiBUaGUgZmFjdCB0aGF0IHRo ZXNlIHRpbWUgdGVuc2VzIGNvbWJpbmUgaW4gdGhpcyB3YXkgaXMgb25lIG9mIHRoZSBkaWZmZXJl bmNlcyBiZXR3ZWVuIHRlbnNlIHN1bXRjaXRhIGFuZCBvdGhlciBzdW10Y2l0YS4gVGhlIG1lYW5p bmdzIG9mIG90aGVyIHN1bXRjaXRhIGFyZSBub3QgYWx0ZXJlZCBieSB0aGUgcHJlc2VuY2Ugb2Yg YWRkaXRpb25hbCBzdW10Y2l0YSBpbiBhIGJyaWRpLgoKCgpBcyBicmllZmx5IGltcGxpZWQgZWFy bGllciwgYWxsIHRoZXNlIGNvbnN0cnVjdHMgYmFzaWNhbGx5IHRyZWF0IGJyaWRpIGFzIGlmIHRo ZXkgd2VyZSBwb2ludC1saWtlIGluIHRpbWUgYW5kIHNwYWNlLiBJbiBhY3R1YWxpdHksIG1vc3Qg ZXZlbnRzIHBsYXkgb3V0IG92ZXIgYSBzcGFuIG9mIHRpbWUgYW5kIHNwYWNlLiBJbiB0aGUgZm9s bG93aW5nIGZldyBwYXJhZ3JhcGhzLCB3ZSB3aWxsIGxlYXJuIGhvdyB0byBzcGVjaWZ5IGludGVy dmFscyBvZiB0aW1lIGFuZCBzcGFjZS4KCgoKX18nJ3pl4oCZaScnX18gc3VtdGNpdGE6IHNwYW5u aW5nIG92ZXIgdGhlIHNob3J0IHRpbWUgb2Yge3N1bXRpfQoKX18nJ3pl4oCZYScnX18gc3VtdGNp dGE6IHNwYW5uaW5nIG92ZXIgdGhlIHVuc3BlY2lmaWVkIChtZWRpdW0pIHRpbWUgb2Yge3N1bXRp fQoKX18nJ3pl4oCZdScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgdGltZSBv ZiB7c3VtdGl9CgoKCl9fJyd2ZeKAmWknJ19fIHN1bXRjaXRhOiBzcGFubmluZyBvdmVyIHRoZSBz aG9ydCBzcGFjZSBvZiB7c3VtdGl9CgpfXycndmXigJlhJydfXyBzdW10Y2l0YTogc3Bhbm5pbmcg b3ZlciB0aGUgdW5zcGVjaWZpZWQgKG1lZGl1bSkgc3BhY2Ugb2Yge3N1bXRpfQoKX18nJ3Zl4oCZ dScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgc3BhY2Ugb2Yge3N1bXRpfQoK CgpTaXggd29yZHMgYXQgYSB0aW1lLCBJIGtub3csIGJ1dCByZW1lbWJlcmluZyB0aGUgdm93ZWwg c2VxdWVuY2UgYW5kIHRoZSBzaW1pbGFyaXR5IG9mIHRoZSBpbml0aWFsIGxldHRlciB6IGZvciB0 ZW1wb3JhbCB0ZW5zZXMgYW5kIHYgZm9yIHNwYWNpYWwgdGVuc2VzIG1pZ2h0IGhlbHAgdGhlIG1l bW9yaXppbmcuCgpfXycnLm9pJydfXyAtIGF0dGl0dWRpbmFsOiBwYWluIC0gcGxlYXN1cmUKCgoK VHJhbnNsYXRlOiAnJy5vaSBkYWkgZG8gdmXigJl1IHtrdX0ga2xhbWEgbG8gZG90Y28gZ3VnZGUg e2t1fSB6ZeKAmXUge2t1fSB7dmF1fScnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcT3VjaCwg eW91IHNwZW5kIGEgbG9uZyB0aW1lIHRyYXZlbGluZyBhIGxvbmcgc3BhY2UgdG8gR2VybWFueeKA nSB+fgoKCgpUaG91Z2ggbW9zdCBwZW9wbGUgYXJlIG5vdCBmYW1pbGlhciB3aXRoIHNwYWNpYWwg dGVuc2VzLCB0aGVzZSBuZXcgd29yZHMgY2FuIG9wZW4gdXAgZm9yIHNvbWUgcHJldHR5IHN3ZWV0 IHVzZXMuIE9uZSBjb3VsZCwgZm9yIGluc3RhbmNlLCB0cmFuc2xhdGUg4oCcVGhhdOKAmXMgYSBi aWcgZG9n4oCdIGFzICcndGkgdmXigJl1IHtrdX0gZ2Vya3Uge3ZhdX0nJy4gU2F5aW5nOiDigJxU aGlzIHRoaW5nIGRvZ3MgZm9yIGEgbG9uZyBzcGFjZeKAnSBtYWtlcyB5b3Ugc291bmQgcmV0YXJk ZWQgaW4gRW5nbGlzaCwgYnV0IHdlbGwtc3Bva2VuIGluIExvamJhbiEKCgoKJyd6ZeKAmXUnJyBh bmQgaXRzIGJyb3RoZXJzIGFsc28gY29tYmluZSB3aXRoIG90aGVyIHRlbnNlcyB0byBmb3JtIGNv bXBvdW5kIHRlbnNlcy4gVGhlIHJ1bGUgZm9yICcnemXigJl1JycgYW5kIHRoZSBvdGhlcnMgYXJl IHRoYXQgYW55IHRlbnNlcyBwcmVjZWRpbmcgaXQgbWFya3MgYW4gZW5kcG9pbnQgb2YgdGhlIHBy b2Nlc3MgKHJlbGF0aXZlIHRvIHRoZSBwb2ludCBvZiByZWZlcmVuY2UpIGFuZCBhbnkgdGVuc2Vz IGNvbWluZyBhZnRlciBpdCBtYXJrcyB0aGUgb3RoZXIgZW5kcG9pbnQgcmVsYXRpdmUgdG8gdGhl IGZpcnN0LiBUaGlzIHNob3VsZCBiZSBkZW1vbnN0cmF0ZWQgd2l0aCBhIGNvdXBsZSBvZiBleGFt cGxlczoKCicnLm/igJlvY3XigJlpIGRvIGNpdGthIHB1IHtrdX0gemXigJl1IHtrdX0gYmEge2t1 fSB6dSB7a3V9IHt2YXV9JycgLSDigJx7dG9sZXJhbmNlfSB5b3UgZWF0IGJlZ2lubmluZyBpbiB0 aGUgcGFzdCBhbmQgZm9yIGEgbG9uZyB0aW1lIGVuZGluZyBhdCBzb21lIHBvaW50IGZhciBpbnRv IHRoZSBmdXR1cmUgb2Ygd2hlbiB5b3Ugc3RhcnRlZOKAnSBvciDigJxIbXBmLCB5b3UgYXRlIGZv ciBhIGxvbmcgdGltZeKAnS4gT25lIGNhbiBhbHNvIGNvbnRyYXN0ICcnZG8gY2Ege2t1fSB6ZeKA mWkge2t1fSBwdSB7a3V9IGtsYW1hIHt2YXV9Jycgd2l0aCAnJ2RvIHB1IHtrdX0gemXigJlpIHtr dX0gY2Ege2t1fSBrbGFtYSB7dmF1fScnLiBUaGUgZmlyc3QgZXZlbnQgb2YgdHJhdmVsaW5nIGhh cyBvbmUgZW5kcG9pbnQgaW4gdGhlIHByZXNlbnQgYW5kIGV4dGVuZHMgYSBsaXR0bGUgdG93YXJk cyB0aGUgcGFzdCwgd2hpbGUgdGhlIHNlY29uZCBldmVudCBoYXMgb25lIGVuZHBvaW50IGluIHRo ZSBwYXN0IGFuZCBleHRlbmRzIG9ubHkgdG8gdGhlIHByZXNlbnQgKHRoYXQgaXMsIHNsaWdodHkg aW50byB0aGUgcGFzdCBvciBmdXR1cmUpIG9mIHRoYXQgZW5kcG9pbnQuCgpfXycnam1pdmUnJ19f IOKAnHgxIGlzIGFsaXZlIGJ5IHN0YW5kYXJkIHgy4oCdCgoKCldoYXQgZG9lcyAnJy51aSBtaSBw dSB7a3V9IHppIHtrdX0gemXigJl1IHtrdX0gam1pdmUge3ZhdX0nJyBleHByZXNzPwoKCgpBbnN3 ZXI6IH5+Z3JleSxncmV5OuKAnHtoYXBwaW5lc3MhfSBJIGxpdmUgZnJvbSBhIGxpdHRsZSBpbnRv IHRoZSBwYXN0IGFuZCBhIGxvbmcgd2F5IHRvd2FyZHMgdGhlIGZ1dHVyZSBvciBwYXN0IChvYnZp b3VzbHkgdGhlIGZ1dHVyZSwgaW4gdGhpcyBjYXNlKSBvZiB0aGF0IGV2ZW504oCdIG9yIOKAnEkg YW0geW91bmcsIGFuZCBoYXZlIG1vc3Qgb2YgbXkgbGlmZSBhaGVhZCBvZiBtZSA6KeKAnX5+CgoK Ckp1c3QgdG8gdW5kZXJsaW5lIHRoZSBzaW1pbGFyaXR5IHdpdGggc3BhY2lhbCB0ZW5zZXMsIGxl dOKAmXMgaGF2ZSBhbm90aGVyIGV4YW1wbGUsIHRoaXMgdGltZSB3aXRoIHNwYWNpYWwgdGVuc2Vz OgoKX18nJy514oCZZScnX18gYXR0aXR1ZGluYWw6IHdvbmRlciAtIGNvbW1vbnBsYWNlCgoKCicn LnXigJllIHph4oCZYSB7a3V9IGJ14oCZdSB7a3V9IHZl4oCZdSB7a3V9IGNh4oCZdSB7a3V9IHpk YW5pIHt2YXV9JycgLSBXaGF0IGRvZXMgaXQgbWVhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTog 4oCce3dvbmRlcn0ge0kgb2JzZXJ2ZSF9IEV4dGVuZGluZyBhIGxvbmcgc3BhY2UgZnJvbSBoZXJl IHRvIG15IGZyb250IGlzIGEgaG9tZS7igJ0gb3Ig4oCcV293LCB0aGlzIGhvbWUgZXh0ZW5kaW5n IGFoZWFkIGlzIGh1Z2Uh4oCdfn4KCgoKQmVmb3JlIHdlIGNvbnRpbnVlIHdpdGggdGhpcyBzeW50 YXgtaGVhdnkgdGVuc2Ugc3lzdGVtLCBpIHJlY29tbWVuZCBzcGVuZGluZyBhdCBsZWFzdCB0ZW4g bWludXRlcyBkb2luZyBzb21ldGhpbmcgd2hpY2ggZG9lc27igJl0IG9jY3VweSB5b3VyIGJyYWlu IGluIG9yZGVyIHRvIGxldCB0aGUgaW5mb3JtYXRpb24gc2luayBpbi4gU2luZyBhIHNvbmcgb3Ig ZWF0IGEgY29va2llIHZlcnkgc2xvd2x5IC0gd2hhdGV2ZXIsIGFzIGxvbmcgYXMgeW91IGxldCB5 b3VyIG1pbmQgcmVzdC4KCgoKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIGVsZXZlbiAoWkFo TykKClRob3VnaCB3ZSB3b27igJl0IGdvIHRocm91Z2ggYWxsIExvamJhbiB0ZW5zZSBjb25zdHJ1 Y3RzIGZvciBub3csIHRoZXJlIGlzIG9uZSBvdGhlciBraW5kIG9mIHRlbnNlIHRoYXQgSSB0aGlu ayBzaG91bGQgYmUgdGF1Z2h0IG5vdy4gVGhlc2UgYXJlIGNhbGxlZCDigJxldmVudCBjb250b3Vy c+KAnSwgYW5kIHJlcHJlc2VudCBhIHZlcnkgZGlmZmVyZW50IHdheSBvZiB2aWV3aW5nIHRlbnNl cyB0aGF0IHdlIGhhdmUgc2VlbiBzbyBmYXIuIFNvIGxldOKAmXMgZ2V0IHRvIGl0OgoKCgpVc2lu ZyB0aGUgdGVuc2VzIHdlIGhhdmUgbGVhcm5lZCBzbyBmYXIsIHdlIGNhbiBpbWFnaW5lIGFuIGlu ZGVmaW5pdGUgdGltZSBsaW5lLCBhbmQgd2UgdGhlbiBwbGFjZSBldmVudHMgb24gdGhhdCBsaW5l IHJlbGF0aXZlIHRvIHRoZSDigJxub3figJ0uIFdpdGggZXZlbnQgY29udG91cnMsIGhvd2V2ZXIs IHdlIHZpZXcgZWFjaCBldmVudCBhcyBhIHByb2Nlc3MsIHdoaWNoIGhhcyBjZXJ0YWluIHN0YWdl czogQSB0aW1lIGJlZm9yZSBpdCB1bmZvbGRzLCBhIHRpbWUgd2hlbiBpdCBiZWdpbnMsIGEgdGlt ZSB3aGVuIGl0IGlzIGluIHByb2Nlc3MsIGEgdGltZSB3aGVuIGl0IGVuZHMsIGFuZCBhIHRpbWUg YWZ0ZXIgaXQgaGFzIGVuZGVkLiBFdmVudCBjb250b3VycyB0aGVuIHRlbGxzIHVzIHdoaWNoIHBh cnQgb2YgdGhlIGV2ZW504oCZcyBwcm9jZXNzIHdhcyBoYXBwZW5pbmcgZHVyaW5nIHRoZSB0aW1l IHNwZWNpZmllZCBieSB0aGUgb3RoZXIgdGVuc2VzLiBXZSBuZWVkIGEgY291cGxlIG9mIHRlbnNl cyBmaXJzdDoKCgoKX18nJ3B14oCZbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJp ZGkgaGFzIG5vdCB5ZXQgaGFwcGVuZWQgZHVyaW5nIHtzdW10aX0KCl9fJydjYeKAmW8nJ19fIC0g c3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGluIHByb2Nlc3MgZHVyaW5nIHtzdW10 aX0KCl9fJydiYeKAmW8nJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IFRoZSBwcm9jZXNz IG9mIGJyaWRpIGhhcyBlbmRlZCBkdXJpbmcge3N1bXRpfQoKCgpUaGlzIG5lZWRzIHRvIGJlIGRl bW9uc3RyYXRlZCBieSBzb21lIGV4YW1wbGVzLiBXaGF04oCZcyAnJy51aSBtaSBwdeKAmW8ge2t1 fSBzZSB6ZGFuaSB7dmF1fScnIG1lYW4/CgoKCkFuc3dlcjog4oCcWWF5LCBJ4oCZbGwgYmVnaW4g dG8gaGF2ZSBhIGhvbWXigJ0uCgoKCkJ1dCBoZXksIHlvdSBhc2ssIHdoeSBub3QganVzdCBzYXkg JycudWkgbWkgYmEge2t1fSBzZSB6ZGFuaSB7dmF1fScnIGFuZCBldmVuIHNhdmUgYSBzeWxsYWJs ZT8gQmVjYXVzZSwgcmVtZW1iZXIsIHNheWluZyB0aGF0IHlvdSB3aWxsIGhhdmUgYSBob21lIGlu IHRoZSBmdXR1cmUgc2F5cyBub3RoaW5nIGFib3V0IHdoZXRoZXIgeW91IGhhdmUgYSBob21lIG5v dy4gVXNpbmcgJydwdeKAmW8nJywgdGhvdWdoLCB5b3Ugc2F5IHRoYXQgeW91IGFyZSBub3cgaW4g dGhlIHBhc3Qgb2YgdGhlIHByb2Nlc3Mgb2YgeW91IGhhdmluZyBhIGhvbWUsIHdoaWNoIG1lYW5z IHRoYXQgeW91IGRvbuKAmXQgaGF2ZSBvbmUgbm93LgoKTm90ZSwgYnkgdGhlIHdheSwgdGhhdCAn J21pIGJhIHtrdX0gc2UgemRhbmkge3ZhdX0nJyBpcyBzaW1pbGFyIHRvICcnbWkgcHXigJlvIHtr dX0gc2UgemRhbmkge3ZhdX0nJywgYW5kIGxpa2V3aXNlIHdpdGggJydiYeKAmW8nJyBhbmQgJydw dScnLiBXaHkgZG8gdGhleSBzZWVtIHJldmVyc2VkPyBCZWNhdXNlIGV2ZW50IGNvbnRvdXJzIHZp ZXcgdGhlIHByZXNlbnQgYXMgc2VlbiBmcm9tIHRoZSB2aWV3cG9pbnQgb2YgdGhlIHByb2Nlc3Mu IFdoZXJlYXMgdGhlIG90aGVyIHRlbnNlcyB2aWV3IGV2ZW50cyBzZWVuIGZyb20gdGhlIHByZXNl bnQuCgoKCk9mdGVuLCBldmVudCBjb250b3VycyBhcmUgbW9yZSBwcmVjaXNlIHRoYW4gb3RoZXIg a2luZHMgb2YgdGVuc2VzLiBFdmVuIG1vcmUgY2xhcml0eSBpcyBhY2hpZXZlZCBieSBjb21iaW5p bmcgc2V2ZXJhbCB0ZW5zZXM6ICcnLmHigJlvIG1pIGJhe2t1fSB6aSB7a3V9IGJh4oCZbyB7a3V9 IGd1bmthIHt2YXV9JycgLSDigJxJIGhvcGUgSeKAmXZlIHNvb24gZmluaXNoZWQgd29ya2luZy7i gJ0KCgoKSW4gTG9qYmFuLCB3ZSBhbHNvIG9wZXJhdGUgd2l0aCBhbiBldmVudOKAmXMg4oCcbmF0 dXJhbCBiZWdpbm5pbmfigJ0gYW5kIGl0cyDigJxuYXR1cmFsIGVuZOKAnS4gVGhlIHRlcm0g4oCc bmF0dXJhbOKAnSBpcyBoaWdobHkgc3ViamVjdGl2ZSBpbiB0aGlzIHNlbnNlLCBhbmQgdGhlIG5h dHVyYWwgZW5kIHJlZmVycyB0byB0aGUgcG9pbnQgaW4gdGhlIHByb2Nlc3Mgd2hlcmUgaXQgc2hv dWxkIGVuZC4gWW91IGNhbiBzYXkgYWJvdXQgYSBsYXRlIHRyYWluLCBmb3IgaW5zdGFuY2UsIHRo YXQgaXRzIHByb2Nlc3Mgb2YgcmVhY2hpbmcgeW91IGlzIG5vdyBleHRlbmRpbmcgYmV5b25kIGl0 cyBuYXR1cmFsIGVuZC4gQW4gdW5kZXJjb29rZWQsIGJ1dCBzZXJ2ZWQgbWVhbCwgc2ltaWxhcmx5 LCBpcyBiZWluZyBlYXRlbiBiZWZvcmUgdGhhdCBwcm9jZXNz4oCZIG5hdHVyYWwgYmVnaW5uaW5n LiBUaGUgZXZlbnQgY29udG91cnMgdXNlZCBpbiB0aGVzZSBleGFtcGxlcyBhcmUgYXMgZm9sbG93 czoKCgoKX18nJ3ph4oCZbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMg aW4gcHJvY2VzcyBiZXlvbmQgaXRzIG5hdHVyYWwgZW5kIGR1cmluZyB7c3VtdGl9CgpfXycneGHi gJlvJydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBpbW1hdHVyZWx5IGlu IHByb2Nlc3MgZHVyaW5nIHtzdW10aX0KCgoKX18nJ2NpZGphJydfXzog4oCceDEgaXMgZm9vZCwg d2hpY2ggaXMgZWRpYmxlIGZvciB4MuKAnQoKCgpUcmFuc2xhdGU6ICcnLm9pIGRvIGNpdGthIHph 4oCZbyBsbyBudSBkbyBiYeKAmW8ge2t1fSB14oCZZSBjaXRrYSB6b+KAmWUgbm9pIGNpZGphIGRv IHt2YXV9IHtrdeKAmW99IHt2YXV9IHtrZWl9IHtrdX0nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OuKAnE95LCB5b3Uga2VlcCBlYXRpbmcgd2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCwgaW5jcmVkaWJs eSwgZWF0aW5nIHNvbWV0aGluZyBlZGlibGUh4oCdfn4KCgoKe2ltZyBmaWxlSWQ9IjIiIHRodW1i PSJ5IiByZWw9ImJveFtnXSJ9CgpJbWFnZSBhYm92ZTogWkFoTyB0ZW5zZXMgKGV2ZW50IGNvbnRv dXJzKS4gQWxsIHRlbnNlcyBhYm92ZSB0aGUgbGluZSBvZiB0aGUgZXZlbnQgc2lnbmlmeSBzdGFn ZXMgY292ZXJpbmcgYW4gYW1vdW50IG9mIHRpbWUuIEFsbCB0ZW5zZXMgYmVsb3cgdGhlIGV2ZW50 IGxpbmUgc2lnbmlmeSBzdGFnZXMgd2hpY2ggYXJlIHBvaW50LWxpa2UuCgoKCkFsbCBvZiB0aGVz ZSB0ZW5zZXMgaGF2ZSBiZWVuIGRlc2NyaWJpbmcgc3RhZ2VzIG9mIGEgcHJvY2VzcyB3aGljaCB0 YWtlcyBzb21lIHRpbWUgKGFzIHNob3duIG9uIHRoZSBncmFwaCBhYm92ZTsgdGhvc2UgdGVuc2Vz IGFib3ZlIHRoZSBldmVudCBsaWtlKS4gQnV0IG1hbnkgb2YgdGhlIGV2ZW50IGNvbnRvdXJzIGRl c2NyaWJlcyBwb2ludCBsaWtlIHN0YWdlcyBpbiB0aGUgcHJvY2VzcywgbGlrZSBpdHMgYmVnaW5u aW5nLiBBcyBpcyB0cnVlIG9mICcnY2EnJyBhbmQgJydideKAmXUnJywgdGhleSBhY3R1YWxseSBl eHRlbmQgc2xpZ2h0bHkgaW50byB0aGUgcGFzdCBhbmQgZnV0dXJlIG9mIHRoYXQgcG9pbnQsIGFu ZCBuZWVkIG5vdCB0byBiZSBwcmVjaXNlLgoKCgpUaGUgdHdvIG1vc3QgaW1wb3J0YW50IHBvaW50 LWxpa2UgZXZlbnQgY29udG91cnMgYXJlOgoKX18nJ2Nv4oCZYScnX18gLSBzdW10Y2l0YTogZXZl bnQgY29udG91cjogQnJpZGkgaXMgYXQgaXRzIGJlZ2lubmluZyBkdXJpbmcge3N1bXRpfQoKX18n J2Nv4oCZdScnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgYXQgaXRzIGVu ZGluZyBkdXJpbmcge3N1bXRpfQoKCgpGdXJ0aGVybW9yZSwgdGhlcmUgaXMgYSBwb2ludCB3aGVy ZSB0aGUgcHJvY2VzcyBpcyBuYXR1cmFsbHkgY29tcGxldGUsIGJ1dCBub3QgbmVjZXNzYXJpbHkg aGFzIGVuZGVkIHlldDoKCl9fJydtb+KAmXUnJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6 IEJyaWRpIGlzIGF0IGl0cyBuYXR1cmFsIGVuZGluZyBkdXJpbmcge3N1bXRpfQoKTW9zdCBvZiB0 aGUgdGltZSwgdGhvdWdoLCBwcm9jZXNzZXMgYWN0dWFsbHkgZW5kIGF0IHRoZWlyIG5hdHVyYWwg ZW5kaW5nOyB0aGlzIGlzIHdoYXQgbWFrZXMgaXQgbmF0dXJhbC4gVHJhaW5zIGFyZSBub3QgdXN1 YWxseSBsYXRlLCBhbmQgcGVvcGxlIHVzdWFsbHkgcmV0cmFpbiB0aGVtc2VsdmVzIHRvIGVhdCBv bmx5IGVkaWJsZSBmb29kLgoKCgpTaW5jZSBhIHByb2Nlc3MgY2FuIGJlIGludGVycnVwdGVkIGFu ZCByZXN1bWVkLCB0aGVzZSBwb2ludHMgaGF2ZSBlYXJuZWQgdGhlaXIgb3duIGV2ZW50IGNvbnRv dXIgYWxzbzoKCl9fJydkZeKAmWEnJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRp IGlzIHBhdXNpbmcgZHVyaW5nIHtzdW10aX0KCl9fJydkaeKAmWEnJ19fIC0gc3VtdGNpdGE6IGV2 ZW50IGNvbnRvdXI6IEJyaWRpIGlzIHJlc3VtaW5nIGR1cmluZyB7c3VtdGl9CgoKCkluIGZhY3Qs IHNpbmNlICcnanVuZGknJyBtZWFucyDigJx4MSBwYXlzIGF0dGVudGlvbiB0byB4MuKAnSwgJydk ZeKAmWEganVuZGknJyBhbmQgJydkaeKAmWEganVuZGknJyBhcmUgY29tbW9uIExvamJhbiB3YXlz IG9mIHNheWluZyDigJxCUkLigJ0gYW5kIOKAnGJhY2vigJ0uIE9uZSBjb3VsZCBvZiBjb3Vyc2Ug YWxzbyBzYXkgdGhlIGV2ZW50IGNvbnRvdXJzIGJ5IHRoZW1zZWx2ZXMgYW5kIGhvcGUgdGhlIHBv aW50IGdldHMgYWNyb3NzLgoKCgpGaW5hbGx5LCBvbmUgY2FuIHRyZWF0IGFuIGVudGlyZSBldmVu dCwgZnJvbSB0aGUgYmVnaW5uaW5nIHRvIHRoZSBlbmQgYXMgb25lIHNpbmdsZSBwb2ludCB1c2lu ZyAnJ2Nv4oCZaScnOgoKX18nJ3Blbm1pJydfXyDigJx4MSBtZWV0cyB4MiBhdCBsb2NhdGlvbiB4 M+KAnQoKJydtaSBwdSB7a3V9IHppIHtrdX0gY2/igJlpIHtrdX0gcGVubWkgbG8gZG90Y28gcHJl bnUge2t1fSB7dmF1fScnIC0g4oCcQSBsaXR0bGUgd2hpbGUgYWdvLCBJIHdhcyBhdCB0aGUgcG9p bnQgaW4gdGltZSB3aGVyZSBpIG1ldCBhIEdlcm1hbiBwZXJzb27igJ0KCgoKCgohIUxvamJhbiBM ZXNzb25zIC0gTGVzc29uIHR3ZWx2ZSAob3JkZXJzIGFuZCBxdWVzdGlvbnMpCgpQaGV3LCB0aG9z ZSB0d28gbG9uZyBsZXNzb25zIHdpdGggc3ludGF4IGhlYXZ5IExvamJhbiBnaXZlcyB0aGUgYnJh aW4gc29tZXRoaW5nIHRvIHBvbmRlciBhYm91dC4gRXNwZWNpYWxseSBiZWNhdXNlIGl04oCZcyBz byBkaWZmZXJlbnQgZnJvbSBFbmdsaXNoLiBTbyBsZXTigJlzIHR1cm4gdG8gc29tZXRoaW5nIGEg bGl0dGxlIGxpZ2h0ZXI6IE9yZGVycyBhbmQgcXVlc3Rpb25zLgoKCgpXaGF0IHRoZS4uLiBfX3Np dCB1cCBhbmQgZm9jdXMhX18KCgoKU2luY2UgdGhlIHdheSB0byBleHByZXNzIG9yZGVycyBpbiBF bmdsaXNoIGlzIHRvIGxlYXZlIG91dCB0aGUgc3ViamVjdCBvZiB0aGUgY2xhdXNlLCB3aHkgZGlk IHlvdSBhc3N1bWUgdGhhdCBpdCB3YXMgeW91IEkgd2FzIHNwZWFraW5nIHRvLCBhbmQgbm90IG9y ZGVyaW5nIG15c2VsZiwgb3IgZXhwcmVzc2luZyB0aGUgb2JsaWdhdGlvbiBzb21lb25lIGVsc2Ug aGFzPyBCZWNhdXNlIHRoZSBFbmdsaXNoIGxhbmd1YWdlIHVuZGVyc3RhbmRzIHRoYXQgb3JkZXJz LCBieSB0aGVpciB2ZXJ5IG5hdHVyZSwgYXJlIGFsd2F5cyBkaXJlY3RlZCB0b3dhcmRzIHRoZSBs aXN0ZW5lciAtIHRoZSDigJx5b3XigJ0sIGFuZCBzbyB0aGUgc3ViamVjdCBpcyBub3QgbmVjZXNz YXJ5LgoKSW4gTG9qYmFuLCBlbGlkaW5nIHRoZSBzdWJqZWN0IHlpZWxkcyAnJ3pv4oCZZScnLCBz byB0aGF0IHBvc3NpYmlsaXR5IGlzIHNhZGx5IG5vdCBvcGVuIHRvIHVzLiBJbnN0ZWFkLCB3ZSB1 c2UgdGhlIHdvcmQgJydrbycnLCB3aGljaCBpcyB0aGUgaW1wZXJhdGl2ZSBmb3JtIG9mICcnZG8n Jy4gR3JhbW1hdGljYWxseSBhbmQgYnJpZGktd2lzZSwgaXTigJlzIGVxdWl2YWxlbnQgdG8gJydk bycnLCBidXQgaXQgYWRkcyBhIGxheWVyIG9mIHNlbWFudGljcywgc2luY2UgaXQgdHVybnMgZXZl cnkgc3RhdGVtZW50IHdpdGggJydrbycnIGluIGl0IGludG8gYW4gb3JkZXIuIOKAnERvIHN1Y2gg dGhhdCB0aGlzIHNlbnRlbmNlIGlzIHRydWUgZm9yIHlvdT0nJ2tvJych4oCdIEZvciB0aGUgc2Ft ZSByZWFzb24gd2UgZG9u4oCZdCBuZWVkIHRoZSBzdWJqZWN0IGluIEVuZ2xpc2ggc2VudGVuY2Vz LCB3ZSBkb27igJl0IG5lZWQgb3JkZXItd29yZHMgZGVyaXZlZCBmcm9tIGFueSBvdGhlciBzdW10 aSB0aGFuICcnZG8nJy4KCgoKSG93IGNvdWxkIHlvdSBvcmRlciBvbmUgdG8gZ28gZmFyIGF3YXkg Zm9yIGEgbG9uZyB0aW1lICh1c2luZyAnJ2tsYW1hJycgYXMgdGhlIG9ubHkgc2VsYnJpPykKCgoK QW5zd2VyOiB+fmdyZXksZ3JleTprbyB2ZeKAmXUgemXigJl1IGtsYW1hfn4KCignJy5pIHph4oCZ YSBkYWkgYeKAmW8gbWkgY2EgY2/igJl1IGNpc2thIGxvIGZh4oCZb3JtYeKAmW8gLmkga28gamlt cGUgdmF1IC51aScnKSAtIGxvb2sgdXAgY2lza2EgYW5kIHdvcmsgaXQgb3V0LgoKCgpRdWVzdGlv bnMgaW4gTG9qYmFuIGFyZSB2ZXJ5IGVhc3kgdG8gbGVhcm4sIGFuZCB0aGV5IGNvbWUgaW4gdHdv IGtpbmRzOiBGaWxsIGluIHRoZSBibGFuaywgYW5kIHRydWUvZmFsc2UgcXVlc3Rpb25zLiBMZXTi gJlzIGJlZ2luIHdpdGggdGhlIHRydWUtZmFsc2UgcXVlc3Rpb24ga2luZCAtIHRoYXTigJlzIHBy ZXR0eSBvdmVyY29tZWFibGUsIHNpbmNlIGl0IG9ubHkgaW52b2x2ZXMgb25lIHdvcmQsICcneHUn Jy4KCicneHUnJyB3b3JrcyBsaWtlIGFuIGF0dGl0dWRpbmFsIGluIHRoZSBzZW5zZSB0aGF0IGl0 IGNhbiBnbyBhbnl3aGVyZSwgYW5kIGl0IGFwcGxpZXMgdG8gdGhlIHByZWNlZGluZyB3b3JkIChv ciBjb25zdHJ1Y3QpLiBJdCB0aGVuIHRyYW5zZm9ybXMgdGhlIHNlbnRlbmNlIGludG8gYSBxdWVz dGlvbiwgYXNraW5nIHdoZXRoZXIgaXQgaXMgdHJ1ZSBvciBub3QuIEluIG9yZGVyIHRvIGFmZmly bSwgeW91IHNpbXBseSByZXBlYXQgdGhlIGJyaWRpOgoKJyd4dSB2ZeKAmXUgemRhbmkgZG8nJyAn Jy5pIHZl4oCZdSB6ZGFuaSBtaScnLCBvciB5b3UganVzdCByZXBlYXQgdGhlIHRoZSBzZWxicmks IHdoaWNoIGlzIHRoZSBicmlkaSB3aXRoIGFsbCB0aGUgc3VtdGkgYW5kIHRlbnNlcyBlbGlkZWQ6 ICcnemRhbmknJy4KClRoZXJlIGlzIGFuIGV2ZW4gZWFzaWVyIHdheSB0byBhZmZpcm0gdXNpbmcg cHJvLWJyaWRpcywgYnV0IHRob3NlIGFyZSBhIHRhbGUgZm9yIGFub3RoZXIgdGltZS4gVG8gYW5z d2VyIOKAnG5v4oCdIG9yIOKAnGZhbHNl4oCdLCB5b3Ugc2ltcGx5IGFuc3dlciB3aXRoIHRoZSBi cmlkaSBuZWdhdGVkLiBUaGF0IHRvbywgd2lsbCBiZSBsZWZ0IGZvciBsYXRlciwgYnV0IHdlIHdp bGwgcmV0dXJuIHRvIHF1ZXN0aW9uIGFuc3dlcmluZyBieSB0aGVuLgoKCgpUaGUgb3RoZXIga2lu ZCBpcyBmaWxsIGluIHRoZSBibGFuay4gSGVyZSwgeW91IGFzayBmb3IgdGhlIHF1ZXN0aW9uIHdv cmQgdG8gYmUgcmVwbGFjZWQgZm9yIGEgY29uc3RydWN0LCB3aGljaCBtYWtlcyB0aGUgYnJpZGkg Y29ycmVjdC4gVGhlcmUgYXJlIHNldmVyYWwgb2YgdGhlc2Ugd29yZHMsIGRlcGVuZGluZyBvbiB3 aGF0IHlvdSBhcmUgYXNraW5nIGFib3V0OgoKX18nJ21hJydfXyAtIHN1bXRpIHF1ZXN0aW9uCgpf XycnbW8nJ19fIC0gc2VsYnJpIHF1ZXN0aW9uCgpfXycneG8nJ19fIC0gbnVtYmVyIHF1ZXN0aW9u CgpfXycnY3XigJllJydfXyAtIHRlbnNlIHF1ZXN0aW9uCgoKCkFzIHdlbGwgYXMgbWFueSBvdGhl cnMuIFRvIGFzayBhYm91dCBhIHN1bXRpLCB5b3UgdGhlbiBqdXN0IHBsYWNlIHRoZSBxdWVzdGlv biB3b3JkIHdoZXJlIHlvdSB3YW50IHlvdXIgYW5zd2VyOiAnJ2RvIGR1bmRhIG1hIG1pJycgLSBh c2tzIGZvciB0aGUgeDIgdG8gYmUgZmlsbGVkIHdpdGggYSBjb3JyZWN0IHN1bXRpLiDigJxZb3Ug Z2l2ZSB3aGF0IHRvIG1lP+KAnS4gVGhlIGNvbWJpbmF0aW9uIG9mICcnc3VtdGNpdGEnJyArICcn bWEnJyBpcyB2ZXJ5IHVzZWZ1bCBpbmRlZWQ6CgpfXycnbXXigJlpJydfXyAtIHN1bXRjaXRhOiBt b3RpdmF0ZWQgYnkgdGhlIGFic3RyYWN0aW9uIG9mIHtzdW10aX0KCgoKJycub2kgZG8gZGFyeGkg bWkgbXXigJlpIG1hJycgLSDigJxPeSwgd2h5IGRvIHlvdSBoaXQgbWU/IeKAnQoKCgpMZXTigJlz IHRyeSBhbm90aGVyIG9uZS4gVGhpcyB0aW1lLCB5b3UgdHJhbnNsYXRlOgoKJycudWkgZGFpIGRv IGNhIHpl4oCZdSBwdSBtbycnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcWW914oCZcmUgaGFw cHksIHdoYXQgaGF2ZSB5b3UgYmVlbiBkb2luZyBhbGwgdGhpcyBsb25nIHRpbWUgdW50aWwgbm93 P+KAnSBUZWNobmljYWxseSwgaXQgY291bGQgYWxzbyBtZWFuIOKAnHdoYXQgaGF2ZSB5b3UgYmVl bj/igJ0sIGJ1dCBhbnN3ZXJpbmcgd2l0aCAnJy51YSBuYWkgbGnigJlhIHJlbW5hJycgKFVoLCBo dW1hbiwgb2J2aW91c2x5KSBpcyBqdXN0IGJlaW5nIGluY3JlZGlibHkgYW5ub3lpbmcgb24gcHVy cG9zZS5+fgoKCgpTaW5jZSB0b25lIG9mIHZvaWNlIG9yIHNlbnRlbmNlIHN0cnVjdHVyZSBkb2Vz IG5vdCByZXZlYWwgd2hldGhlciBhIHNlbnRlbmNlIGlzIGEgcXVlc3Rpb24gb3Igbm90LCBvbmUg YmV0dGVyIG5vdCBtaXNzIHRoZSBxdWVzdGlvbiB3b3JkLiBUaGVyZWZvcmUsIHNpbmNlIHBlb3Bs ZSB0ZW5kIHRvIGZvY3VzIG1vcmUgb24gd29yZHMgaW4gdGhlIGJlZ2lubmluZyBvciBhdCB0aGUg ZW5kIG9mIHNlbnRlbmNlcywgaXTigJlzIHVzdWFsbHkgd29ydGggdGhlIHdoaWxlIHRvIHJlLW9y ZGVyIHRoZSBzZW50ZW5jZSBzbyB0aGF0IHRoZSBxdWVzdGlvbiB3b3JkcyBhcmUgYXQgdGhvc2Ug cGxhY2VzLiBJZiB0aGF0IGlzIG5vdCBmZWFzYWJsZSwgJydwYXUnJyBpcyBhbiBhdHRpdHVkaW5h bCBtYXJraW5nIHRoYXQgdGhlIHNlbnRlbmNlIGlzIGEgcXVlc3Rpb24uIENvbnRyYXJ5LCAnJ3Bh dSBuYWknJyBleHBsaWNpdGx5IG1hcmtzIGFueSBxdWVzdGlvbiBhcyBiZWluZyByaGV0b3JpY2Fs LgoKCgpXaGlsZSB3ZSBhcmUgb24gdGhlIHRvcGljIG9mIHF1ZXN0aW9ucywgaXTigJlzIGFsc28g YXBwcm9wcmlhdGUgdG8gbWVudGlvbiB0aGUgd29yZCAnJ2thdScnLCB3aGljaCBpcyBhIG1hcmtl ciBmb3Ig4oCcaW5kaXJlY3QgcXVlc3Rpb27igJ0uIFdoYXTigJlzIGFuIGluZGlyZWN0IHF1ZXN0 aW9uLCB0aGVuPyBXZWxsLCB0YWtlIGEgbG9vayBhdCB0aGUgc2VudGVuY2U6ICcnbWkgZGp1bm8g bG8gZHXigJl1IG1hIGthdSB6ZGFuaSBkbycnIC0g4oCcSSBrbm93IHdoYXQgaXMgeW91ciBob21l LuKAnQoKX18nJ2RqdW5vJydfXyDigJx4MSBrbm93cyBmYWN0KHMpIHgyIGFyZSB0cnVlIGFib3V0 IHgzIGJ5IGVwaXN0ZW1vbG9neSB4NOKAnQoKT25lIGNhbiB0aGluayBpdCBhcyB0aGUgYW5zd2Vy IHRvIHRoZSBxdWVzdGlvbiAnJ21hIHpkYW5pIGRvJycuIE1vcmUgcmFyZWx5LCBvbmUgY2FuIG1h cmsgYSBub24tcXVlc3Rpb24gd29yZCB3aXRoICcna2F1JycsIGluIHdoaWNoIGNhc2Ugb25lIHN0 aWxsIGNhbiBpbWFnaW5lIGl0IGFzIHRoZSBhbnN3ZXIgdG8gYSBxdWVzdGlvbjogJydtaSBqaW1w ZSBsbyBkdeKAmXUgZHVuZGEgdGkga2F1IGRvJycgLSDigJxJIGtub3cgd2hhdCB5b3UgaGF2ZSBi ZWVuIGdpdmVuLCBpdCBpcyB0aGlzLuKAnQoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24g dGhpcnRlZW4gKG1vcnBob2xvZ3kgYW5kIHdvcmQgY2xhc3NlcykKCkJhY2sgdG8gbW9yZSBoZWF2 eSAoYW5kIGludGVyZXN0aW5nKSBzdHVmZi4KCklmIHlvdSBoYXZlbuKAmXQgYWxyZWFkeSwgSSBz dHJvbmdseSBzdWdnZXN0IHlvdSBmaW5kIHRoZSBMb2piYW5pYyByZWNvcmRpbmcgY2FsbGVkICJT dG9yeSBUaW1lIHdpdGggVW5jbGUgUm9iaW4iLCBvciBsaXN0ZW4gdG8gc29tZW9uZSBzcGVhayBM b2piYW4gb24gTXVtYmxlLCBhbmQgdGhlbiBwcmFjdGljZSB5b3VyIHByb251bmNpYXRpb24uIEhh dmluZyBhbiBpbnRlcm5hbCBjb252ZXJzYXRpb24gaW4geW91ciBoZWFkIGluIExvamJhbiBpcyBv bmx5IGdvb2QgaWYgaXQgaXNu4oCZdCB3aXRoIGFsbCB0aGUgd3Jvbmcgc291bmRzLCBhbmQgbGVh cm5pbmcgcHJvbnVuY2lhdGlvbiBmcm9tIHdyaXR0ZW4gdGV4dCBpcyBoYXJkLiBUaGVyZWZvcmUs IHRoaXMgbGVzc29uIHdpbGwgbm90IGJlIG9uIHRoZSBMb2piYW4gc291bmRzLCBob3dldmVyIGlt cG9ydGFudCB0aGV5IG1pZ2h0IGJlLCBidXQgYSBzaG9ydCBpbnRyb2R1Y3Rpb24gdG8gdGhlIExv amJhbiBtb3JwaG9sb2d5LgoKCgpXaGF0IGlzIG1vcnBob2xvZ3k/IFRoZSB3b3JkIGlzIGRlcml2 ZWQgZnJvbSBHcmVlayBtZWFuaW5nIOKAnHRoZSBzdHVkeSBvZiBzaGFwZXPigJ0sIGFuZCBpbiB0 aGlzIGNvbnRleHQsIHdlIHRhbGsgYWJvdXQgaG93IHdlIG1ha2Ugd29yZHMgZnJvbSBsZXR0ZXJz IGFuZCBzb3VuZHMsIGFzIGNvbnRyYXN0ZWQgd2l0aCBzeW50YXggLSBob3cgd2UgbWFrZSBzZW50 ZW5jZXMgd2l0aCB3b3Jkcy4gTG9qYmFuIG9wZXJhdGVzIHdpdGggZGlmZmVyZW50IG1vcnBob2xv Z2ljYWwgd29yZCBjbGFzc2VzLCB3aGljaCBhcmUgYWxsIGRlZmluZWQgYnkgdGhlaXIgbW9ycGhv bG9neS4gVG8gbWFrZSBpdCBhbGwgbmljZSBhbmQgc3lzdGVtYXRpYyB0aG91Z2gsIHdvcmRzIHdp dGggY2VydGFpbiBmdW5jdGlvbnMgdGVuZCB0byBiZSBncm91cGVkIGJ5IG1vcnBob2xvZ2ljYWwg Y2xhc3NlcywgYnV0IGV4Y2VwdGlvbnMgbWF5IG9jY3VyLgoKfHwgICBDbGFzc3xNZWFuaW5nfERl ZmluZWQgQnl8VHlwaWNhbCBGdW5jdGlvbgoKICAgV29yZHM6fCAgIHwgICB8ICAgCgogICBCcml2 bGF8ICAgYnJpZGktd29yZHwgICBBbW9uZyBmaXJzdCA1IGxldHRlcnMgKGV4Y2x1ZGluZyDigJwg 4oCYIOKAnCkgaXMgYSBjb25zb25hbnQgY2x1c3Rlci4gRW5kcyBpbiB2b3dlbC4gICB8ICAgQWN0 cyBhcyBhIHNlbGJyaSBieSBkZWZhdWx0LiBBbHdheXMgaGFzIGEgcGxhY2Ugc3RydWN0dXJlLgoK ICAgLS1HaXNtdXwgICBSb290LXdvcmR8IDUgbGV0dGVycyBvZiB0aGUgZm9ybSBDVkNDViBvciBD Q1ZDViAgIHwgICBPbmUgdG8gZml2ZSBzdW10aSBwbGFjZXMuIENvdmVycyBiYXNpYyBjb25jZXB0 cy4KCiAgIC0tTHVqdm98ICBDb21wb3VuZCB3b3JkLiBEZXJpdmVkIGZyb20gZnJvbSDigJxsdWp2 bGHigJ0sIG1lYW5pbmcg4oCcY29tcGxleCB3b3Jk4oCdIHwgICBNaW4uIDYgbGV0dGVycy4gTWFk ZSBieSBzdHJpbmdpbmcgcmFmc2kgdG9nZXRoZXIgd2l0aCBiaW5kaW5nIGxldHRlcnMgaWYgbmVj ZXNzYXJ5LnwgICBDb3ZlcnMgbW9yZSBjb21wbGV4IGNvbmNlcHRzIHRoYW4gZ2lzbXUuCgogICAt LUZ1J2l2bGF8ICBDb3B5LXdvcmQgfCBBcyBicml2bGEsIGJ1dCBkbyBub3QgbWVldCBkZWZpbmlu ZyBjcml0ZXJpYSBvZiBnaXNtdSBvciBsdWp2bywgZXg6ICcnYW5nZWxpJycgIHwgICBDb3ZlcnMg dW5pcXVlIGNvbmNlcHRzIGxpa2UgbmFtZXMgb2YgcGxhY2VzIG9yIG9yZ2FuaXNtcy4KCiAgIENt ZXZsYXwgIE5hbWUtd29yZCB8ICAgQmVnaW5uaW5nIGFuZCBlbmRpbmcgd2l0aCBwYXVzZSAoZnVs bCBzdG9wKS4gTGFzdCBzb3VuZC9sZXR0ZXIgaXMgYSBjb25zb25hbnQufCAgIEFsd2F5cyBhY3Rz IGFzIGEgbmFtZSBvciBhcyB0aGUgY29udGVudCBvZiBhIHF1b3RlLgoKICAgQ21hdm98ICAgR3Jh bW1hci13b3JkLiBGcm9tIOKAnGNtYXZsYeKAnSwgbWVhbmluZyDigJxzbWFsbCB3b3Jk4oCdfCBP bmUgY29uc29uYW50IG9yIHplcm8sIGFsd2F5cyBhdCB0aGUgYmVnaW5uaW5nLiBFbmRzIGluIGEg dm93ZWwuICB8ICAgR3JhbW1hdGljYWwgZnVuY3Rpb25zLiBWYXJpZXMKCiAgIFdvcmQtZnJhZ21l bnRzOnwgICB8ICAgfAoKICAgUmFmc2l8ICAgQWZmaXh8ICBDQ1YsIENWQywgQ1YnViwgLUNWQ0NW LCAtQ0NWQ1YsIENWQ0N5LSBvciBDQ1ZDeS0gIHwgTm90IGFjdHVhbCB3b3JkcywgYnV0IGNhbiBi ZSBzdHJpbmdlZCB0b2dldGhlciB0byBmb3JtIGx1anZvIHx8CgoKCgoKX18nJ2NtZXZsYScnX18g YXJlIHZlcnkgZWFzeSB0byBpZGVudGlmeSBiZWNhdXNlIHRoZXkgYmVnaW4gYW5kIGVuZCB3aXRo IGEgcGF1c2UsIHNpZ25hbGVkIGJ5IGEgZnVsbCBzdG9wIGluIHdyaXRpbmcsIGFuZCB0aGUgbGFz dCBsZXR0ZXIgaXMgYSBjb25zb25hbnQuIGNtZXZsYSBjYW7igJl0IGhhdmUgYW55IG90aGVyIGZ1 bmN0aW9uIGJlc2lkZXMgYWN0aW5nIGFzIGEgbmFtZS4gT24gdGhlIG90aGVyIGhhbmQsIG5hbWVz IHdoaWNoIGFyZSBub3Qgc2VsYnJpIGNhbm5vdCBhcHBlYXIgaW4gTG9qYmFuIHdpdGhvdXQgdGhl bSBiZWluZyBjbWV2bGEsIG9yIGVuY2FzZWQgYnkgY2VydGFpbiBxdW90ZSB3b3Jkcy4gT25lIGNh biBtYXJrIHN0cmVzcyBpbiB0aGUgbmFtZXMgYnkgY2FwaXRhbGl6aW5nIHRoZSBsZXR0ZXJzIHdo aWNoIGFyZSBzdHJlc3NlZC4gRXhhbXBsZXMgb2YgY21ldmxhIGFyZTogJycuaW9oQU4uJycgKEpv aGFuLCBoIGlzIGNhcGl0YWwgYXBvc3Ryb3BoZSksICcnLm1hdC4nJyAoTWF0dCkgYW5kICcnLmx1 dGNpTUlOLicnIChMdWktQ2hpIE1pbikuIE5hbWVzIHdoaWNoIGRvIG5vdCBlbmQgaW4gY29uc29u YW50cyBoYXZlIHRvIGhhdmUgb25lIGFkZGVkOiAnJy5pdnluLicnIChFdmUpLCBvciAocHJvYmFi bHkgYmV0dGVyIGluIHRoaXMgY2FzZSkgcmVtb3ZlZDogJycuaXYuJycKCgoKX18nJ2JyaXZsYScn X18gYXJlIGNhbGxlZCDigJxicmlkaS13b3Jkc+KAnSBiZWNhdXNlIHRoZXkgYnkgZGVmYXVsdCBh cmUgc2VsYnJpLCBhbmQgdGhlcmVmb3JlIGFsbW9zdCBhbGwgTG9qYmFuIHdvcmRzIHdpdGggYSBw bGFjZSBzdHJ1Y3R1cmUgYXJlIGJyaXZsYS4gVGhpcyBoYXMgYWxzbyBnaXZlbiB0aGVtIHRoZSBF bmdsaXNoIG5pY2tuYW1lIOKAnGNvbnRlbnQtd29yZHPigJ0uIEl04oCZcyBuZWFybHkgaW1wb3Nz aWJsZSB0byBzYXkgYW55dGhpbmcgdXNlZnVsIHdpdGhvdXQgYnJpdmxhLCBhbmQgYWxtb3N0IGFs bCB3b3JkcyBmb3IgY29uY2VwdHMgb3V0c2lkZSBsb2piYW4gZ3JhbW1hciAoYW5kIGV2ZW4gbW9z dCBvZiB0aGUgd29yZHMgZm9yIHRoaW5ncyBpbiB0aGUgbGFuZ3VhZ2UpIGFyZSBjYXB0dXJlZCBi eSBicml2bGEuIEFzIHNob3duIGluIHRoZSB0YWJsZSwgYnJpdmxhIGhhcyB0aHJlZSBzdWJjYXRl Z29yaWVzOgoKX18nJ2dpc211JydfXyBhcmUgdGhlIHJvb3Qgd29yZHMgb2YgdGhlIGxhbmd1YWdl LiBPbmx5IGFib3V0IDE0NTAgZXhpc3RzLCBhbmQgdmVyeSBmZXcgbmV3IG9uZXMgYXJlIGFkZGVk LiBUaGV5IGNvdmVyIHRoZSBtb3N0IGJhc2ljIGNvbmNlcHRzIGxpa2Ug4oCcY2lyY2xl4oCdLCDi gJxmcmllbmTigJ0sIOKAnHRyZWXigJ0gYW5kIOKAnGRyZWFt4oCdLiBFeGFtcGxlcyBpbmNsdWRl ICcnemRhbmknJywgJydwZWx4dScnIGFuZCAnJ2R1bmRhJycKCl9fJydsdWp2bycnX18gYXJlIG1h ZGUgYnkgY29tYmluaW5nIHJhZnNpIChzZWUgdW5kZXIgcmFmc2kpLCByZXNwcmVzZW50aW5nIGdp c211LiBCeSBjb21iaW5pbmcgcmFmc2ksIG9uZSBuYXJyb3dzIGRvd24gdGhlIG1lYW5pbmcgb2Yg dGhlIHdvcmQuIGx1anZvIGFyZSBtYWRlIGJ5IGFuIGVsYWJvcmF0ZSBhbGdvcml0aG0sIHNvIG1h a2luZyB2YWxpZCBsdWp2byBvbiB0aGUgZmx5IGlzIG5lYXIgaW1wb3NzaWJsZSwgd2l0aCBmZXcg ZXhjZXB0aW9ucyBsaWtlICcnc2VscGHigJlpJycsIGZyb20gJydzZSBwcmFtaScnLCB3aGljaCBj YW4gb25seSBoYXZlIG9uZSBkZWZpbml0aW9uLiBJbnN0ZWFkLCBsdWp2byBhcmUgbWFkZSBvbmNl LCBpdHMgcGxhY2Ugc3RydWN0dXJlIGRlZmluZWQsIGFuZCB0aGVuIHRoYXQgZGVmaW5pdGlvbiBp cyBtYWRlIG9mZmljaWFsIGJ5IHRoZSBkaWN0aW9uYXJ5LiBFeGFtcGxlcyBpbmNsdWRlIGJyaXZs YSAoYnJpZGktd29yZCksICcnY2luamlrY2EnJyAoc2V4dWFsLXNvY2lhbGl6aW5nID0gZmxpcnRp bmcpIGFuZCAnJ2Nha2NpbmtpJycgKHNoZWxsLWluc2VjdCA9IGJlZXRsZSkuCgpfXycnZnXigJlp dmxhJydfXyBhcmUgbWFkZSBieSBtYWtpbmcgdXAgd29yZHMgd2hpY2ggZml0IHRoZSBkZWZpbml0 aW9uIGZvciBicml2bGEsIGJ1dCBub3QgZm9yIGx1anZvIG9yIGdpc211LiBUaGV5IHRlbmQgdG8g Y292ZXIgY29uY2VwdHMgd2hpY2ggaXTigJlzIGhhcmQgdG8gY292ZXIgYnkgbHVqdm8sIGZvciBp bnN0YW5jZSBuYW1lcyBvZiBzcGVjaWVzLCBuYXRpb25zIG9yIHZlcnkgY3VsdHVyYWwgc3BlY2lm aWMgY29uY2VwdHMuIEV4YW1wbGVzIGluY2x1ZGUgJydndWdkcmdvZ3VyaW8nJyAoS29yZWEpICcn Y2lkanJwaXRzYScnIChwaXp6YSkgb3IgJydhbmdlbGknJyAoYW5nZWwpLgoKCgpfXycnY21hdm8n J19fIGFyZSBzbWFsbCB3b3JkcyB3aXRoIG9uZSBvciB6ZXJvIGNvbnNvbmFudHMuIFRoZXkgdGVu ZCB0byBub3Qgc2lnbmlmeSBhbnl0aGluZyBpbiB0aGUgZXh0ZXJpb3Igd29ybGQsIGJ1dCB0byBo YXZlIG9ubHkgZ3JhbW1hdGljYWwgZnVuY3Rpb24uIEV4Y2VwdGlvbnMgb2NjdXIsIGFuZCBpdOKA mXMgZGViYXRhYmxlIGhvdyBtdWNoIGF0dGl0dWRpbmFscyBleGlzdHMgZm9yIHRoZWlyIGdyYW1t YXRpY2FsIGZ1bmN0aW9uLiBBbm90aGVyIHdlaXJkIGV4YW1wbGUgYXJlIHRoZSB3b3JkcyBvZiB0 aGUgY2xhc3MgR09oQSwgd2hpY2ggYWN0IGFzIGJyaXZsYS4gSXQgaXMgdmFsaWQgdG8gdHlwZSBz ZXZlcmFsIGNtYXZvIGluIGEgcm93IGFzIG9uZSB3b3JkLCBidXQgaW4gdGhlc2UgbGVzc29ucywg dGhhdCB3b27igJl0IGJlIGRvbmUuIEJ5IGdyb3VwaW5nIGNlcnRhaW4gY21hdm8gaW4gZnVuY3Rp b25hbCB1bml0cywgdGhvdWdoLCBpdCBpcyBzb21ldGltZXMgZWFzaWVyIHRvIHJlYWQuIFRodXMs ICcnLnVpcHV6dXZ1a3VtaSBjaXRrYScnIGlzIHZhbGlkLCBhbmQgaXMgcGFyc2VkIGFuZCB1bmRl cnN0b29kIGFzICcnLnVpIHB1IHp1IHZ1IGt1IG1pIGNpdGthJycuIExpa2Ugb3RoZXIgTG9qYmFu IHdvcmRzLCBvbmUgc2hvdWxkIChidXQgbmVlZCBub3QgYWx3YXlzKSBwbGFjZSBhIGZ1bGwgc3Rv cCBiZWZvcmUgYW55IHdvcmRzIGJlZ2lubmluZyB3aXRoIGEgdm93ZWwuCgpjbWF2byBvZiB0aGUg Zm9ybSB4VlYsIENW4oCZVlYgb3IgVuKAmVZWIGFyZSBleHBlcmltZW50YWwsIGFuZCBhcmUgd29y ZHMgd2hpY2ggYXJlIG5vdCBpbiB0aGUgZm9ybWFsIGdyYW1tYXIsIGJ1dCB3aGljaCBoYXZlIGJl ZW4gYWRkZWQgYnkgTG9qYmFuIHVzZXJzIHRvIHJlc3BvbmQgdG8gYSBjZXJ0YWluIG5lZWQuCgoK Cl9fJydyYWZzaScnX18gYXJlIG5vdCBMb2piYW4gd29yZHMsIGFuZCBjYW4gbmV2ZXIgYXBwZWFy IGFsb25lLiBIb3dldmVyLCBzZXZlcmFsIChtb3JlIHRoYW4gb25lKSByYWZzaSBjb21iaW5lIHRv IGZvcm0gbHVqdm8uIFRoZXNlIG11c3Qgc3RpbGwgbGl2ZSB1cCB0byB0aGUgYnJpdmxhLWRlZmlu aXRpb24sIGZvciBpbnN0YW5jZSAnJ2xvamJhbicnIGlzIGludmFsaWQgYmVjYXVzZSBpdCBlbmRz IGluIGEgY29uc29uYW50ICh3aGljaCBtYWtlcyBpdCBhIGNtZXZsYSksIGFuZCAnJ2Np4oCZZWtl aScnIGlzIGludmFsaWQgYmVjYXVzZSBpdCBkb2VzIG5vdCBjb250YWluIGEgY29uc29uYW50IGNs dXN0ZXIsIGFuZCBpcyB0aHVzIHJlYWQgYXMgdHdvIGNtYXZvIHdyaXR0ZW4gYXMgb25lIHdvcmQu IE9mdGVuLCBhIDMtNCBsZXR0ZXIgc3RyaW5nIGlzIGJvdGggYSBjbWF2byBhbmQgYSByYWZzaSwg bGlrZSAnJ3p14oCZZScnLCB3aGljaCBpcyBib3RoIHRoZSBCQUkgYW5kIHRoZSByYWZzaSBmb3Ig Jyd6dWt0ZScnLiBOb3RlIHRoYXQgdGhlcmUgaXMgbm93aGVyZSB0aGF0IGJvdGggYSBjbWF2byBh bmQgYSByYWZzaSB3b3VsZCBiZSBncmFtbWF0aWNhbCwgc28gdGhlc2UgYXJlIG5vdCBjb25zaWRl cmVkIGhvbW9waG9uZXMuIEFsbCBnaXNtdSBjYW4gZG91YmxlIGFzIHJhZnNpLCBpZiB0aGV5IGFy ZSBwcmVmaXhlZCB3aXRoIGFub3RoZXIgcmFmc2kuIFRoZSBmaXJzdCBmb3VyIGxldHRlciBvZiBh IGdpc211IHN1ZmZpeGVkIHdpdGggYW4gInkiIGNhbiBhbHNvIGFjdCBhcyBhIHJhZnNpLCBpZiB0 aGV5IGFyZSBzdWZmaXhlZCB3aXRoIGFub3RoZXIgcmFmc2kuIFRoZSB2b3dlbCAieSIgY2FuIG9u bHkgYXBwZWFyIGluIGx1anZvIG9yIGNtZXZsYS4gVmFsaWQgcmFmc2kgbGV0dGVyIGNvbWJpbmF0 aW9ucyBhcmU6IENWViwgQ1bigJlWLCBDQ1YsIENWQ0N5LSBDQ1ZDeS0sIC1DVkNDViBhbmQgLUND VkNWLgoKCgpVc2luZyB3aGF0IHlvdSBrbm93IG5vdywgeW91IHNob3VsZCBiZSBhYmxlIHRvIGFu c3dlciB0aGUgdGVzdCBpIHRodXMgcHJlc2VudDoKCkNhdGVnb3JpemUgZWFjaCBvZiB0aGUgZm9s bG93aW5nIHdvcmRzIGFzIGNtZXZsYSAoQyksIGdpc211IChnKSwgbHVqdm8gKGwpLCAnJ2Z14oCZ aXZsYScnIChmKSBvciBjbWF2byAoYyk6CgpBICkgamFpICAgICAgICBHICkgbXVtYmwKCkIgKSAu aXJjaSAgICAgICAgSCApIC5p4oCZaQoKQyApIGJvc3R1ICAgICAgICBJICkgY3UKCkQgKSB4ZWxt YW4gICAgICAgIEogKSBwbGFqdmEKCkUgKSBwb+KAmWUgICAgICAgIEsgKSBkYW5zZWtlCgpGICkg ZGppc2t1ICAgICAgICBMICkgLmVydHNhCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6YS1jLCBiLWYs IGMtZywgZC1DLCBlLWMsIGYtbCwgZy1DLCBoLWMsIGktYywgai1sLCBrLWYsIGwtZi4gSSBsZWZ0 IG91dCB0aGUgZnVsbCBzdG9wcyBiZWZvcmUgYW5kIGFmdGVyIG5hbWVzIHNvIGl0IHdvdWxkbuKA mXQgYmUgdG9vIGVhc3kuCgpOb3RlOiBzb21lIG9mIHRoZXNlIHdvcmRzLCBsaWtlICcnYm9zdHUn JyBkbyBub3QgZXhpc3QgaW4gdGhlIGRpY3Rpb25hcnksIGJ1dCB0aGlzIGlzIGlycmVsZXZhbnQu IFRoZSBtb3JwaG9sb2d5IHN0aWxsIG1ha2VzIGl0IGEgZ2lzbXUsIHNvIGl04oCZcyBqdXN0IGFu IHVuZGVmaW5lZCBnaXNtdS4gU2ltaWxhcmx5IHdpdGggJycuZXJ0c2EnJ35+CgoKCgoKISFMb2pi YW4gTGVzc29ucyAtIExlc3NvbiBmb3VydGVlbiAodGhlIExvamJhbiBzdW10aSAxOiBMRSBhbmQg TEEpCgpJZiB5b3UgaGF2ZSByZWFkIGFuZCB1bmRlcnN0b29kIHRoZSBjb250ZW50IG9mIGFsbCB0 aGUgbGVzc29ucyB1bnRpbCBub3csIHlvdSBoYXZlIGFtYXNzZWQgYSBsYXJnZSBlbm91Z2gga25v d2xlZGdlIG9mIExvamJhbiBzbyB0aGF0IGl0IGRvZXNu4oCZdCBtYXR0ZXIgaW4gd2hpY2ggb3Jk ZXIgeW91IGxlYXJuIHRoZSByZXN0LiBBcyBhIHJlc3VsdCwgdGhlIG9yZGVyIG9mIHRoZSBuZXh0 IGxlc3NvbnMgd2lsbCBiZSBhIG1peHR1cmUgb2Ygc29ydGVkIGJ5IGluY3JlYXNpbmcgZGlmZmlj dWx0eSBhbmQgc29ydGVkIGJ5IGltcG9ydGFuY2UgaW4gb3JkaW5hcnkgTG9qYmFuIGNvbnZlcnNh dGlvbi4KCgoKT25lIG9mIHRoZSBiaWdnZXN0IGNvbnN0cmFpbnMgb24geW91ciBzcGVhayBub3cg aXMgeW91ciBsaW1pdGVkIGtub3dsZWRnZSBvbiBob3cgdG8gbWFrZSBzdW10aS4gU28gZmFyLCB5 b3Ugb25seSBrbm93ICcndGknJyBhbmQgJydsbyBTRUxCUkknJywgd2hpY2ggZG9lc27igJl0IHRh a2UgeW91IGZhciBjb25zaWRlcmluZyBob3cgaW1wb3J0YW50IHN1bXRpIGFyZSBpbiBMb2piYW4u IFRoaXMgbGVzc29uIGFzIHdlbGwgYXMgdGhlIGZvbGxvd2luZyB0d28gd2lsbCBiZSBhYm91dCB0 aGUgTG9qYmFuIHN1bXRpLiBGb3Igbm93LCB3ZSBmb2N1cyBvbiB0aGUgZGVzY3JpcHRpdmUtbGlr ZSBzdW10aSwgdGhlIG9uZXMgbWFkZSB3aXRoIGFydGljbGVzIGxpa2UgJydsbycnCgpBcnRpY2xl cyBhcmUgaW4gbG9qYmFuIGNhbGxlZCAnJ2dhZHJpJycsIGFuZCBhbGwgdGhlIG9uZXMgZGlzY3Vz c2VkIGluIHRoaXMgbGVzc29uIGFyZSB0ZXJtaW5hdGVkIGJ5ICcna3UnJyAoZXhjZXB0IHRoZSBj b21iaW5hdGlvbiAnJ2xhIENNRVZMQScnKS4gV2Ugd2lsbCBiZWdpbiBieSBkZXNjcmliaW5nIHRo cmVlIHNpbXBsZSBraW5kcywgYW5kIHRoZW4gaW1tZWRpYXRlbHkgZmluZCB0aGF0IHRoZXkgYXJl IG5vdCBzbyBzaW1wbGUgYWZ0ZXIgYWxsOgoKX18nJ2xvJydfXyAtICBnYWRyaTogR2VuZXJpYyB2 ZXJpZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFJlc3VsdCBpcyB2YWd1ZSB3 aXRoIHJlZ2FyZCB0byBpbmRpdmlkdWFsaXR5L21hc3MtbmVzcy4KCl9fJydsZScnX18gLSBnYWRy aTogR2VuZXJpYyBkZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gUmVz dWx0IGlzIHZhZ3VlIHdpdGggcmVnYXJkIHRvIGluZGl2aWR1YWxpdHkvbWFzcy1uZXNzLgoKX18n J2xhJydfXyAtIGdhZHJpOiBOYW1pbmcgYXJ0aWNsZTogQ29udmVudGlvbmFsLCDigJxjb252ZXJ0 IHNlbGJyaSBvciBjbWV2bGEgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBpbmRpdmlkdWFs KHMpLgoKCgpZb3UgYXJlIGFscmVhZHkgZmFtaWxpYXIgd2l0aCAnJ2xvJycgYW5kIHdoYXQgaXQg ZG9lcy4gQnV0IHdoYXQgZG9lcyBpdCBtZWFuLCDigJxWZXJpZGljYWzigJ0gYW5kIOKAnFRyZWF0 IHJlc3VsdCBhcyBpbmRpdmlkdWFsc+KAnT8gVGhlIGxhdHRlciBhYm91dCBpbmRpdmlkdWFscywg SeKAmWxsIGNvbWUgYmFjayB0byBsYXRlciB3aGVuIHNwZWFraW5nIGFib3V0IG1hc3Nlcy4gRm9y IG5vdywg4oCcdmVyaWRpY2Fs4oCdIGluIHRoaXMgY29udGV4dCBtZWFucyB0aGF0IGluIG9yZGVy IGZvciBhIHRoaW5nIHRvIHF1YWxpZnkgYmVnaW4gbGFiZWxsZWQgYXMgJydsbyBrbGFtYScnLCBp dCBoYXMgdG8gYWN0dWFsbHkgJydrbGFtYScnLiBUaHVzLCB2ZXJpZGljYWwgJydnYWRyaScnIG1h a2VzIGEgY2xhaW0gd2hpY2ggbWF5IGJlIHRydWUgb3IgZmFsc2UgLSB0aGF0IHRoZSBvYmplY3Qo cykgaW4gcXVlc3Rpb24gYXJlIGFjdHVhbGx5IHRoZSB4MSBvZiB0aGUgc2VsYnJpIGFmdGVyICcn bG8nJy4KCgoKVGhpcyBtYXkgYmUgY29udHJhc3RlZCB3aXRoICcnbGUnJywgd2hpY2ggaXMgZGVz Y3JpcHRpdmUsIGFuZCB0aHVzIG5vdCB2ZXJpZGljYWwuIFNheWluZyAnJ2xlIGdlcmt1Jycgc2F5 cyB0aGF0IHlvdSBoYXZlIG9uZSBvciBtb3JlIHNwZWNpZmljIG9iamVjdHMgaW4gbWluZCwgYW5k IHlvdSB1c2UgdGhlIHNlbGJyaSAnJ2dlcmt1JycgdG8gZGVzY3JpYmUgaXQsIHNvIHRoYXQgdGhl IGxpc3RlbmVyIG1heSBpZGVudGlmeSB0aG9zZSBzcGVjaWZpYyBvYmplY3RzLlRoaXMgbWVhbnMg dGhhdCAnJ2xlJycgaGF2ZXMgdHdvIGltcG9ydGFudCBkaWZmZXJlbmNlcyBmcm9tICcnbG8nJzog Rmlyc3RseSwgaXQgZG9lcyBub3QgcmVmZXIgdG8gb2JqZWN0cyBpbiBnZW5lcmFsLCBidXQgdG8g c3BlY2lmaWMgb2JqZWN0cy4gU2Vjb25kbHksIHdoaWxlICcnbG8gZ2Vya3UnJyBkZWZpbml0ZWx5 IGlzIG9uZSBvciBtb3JlIGRvZ3MsICcnbGUgZ2Vya3UnJywgYmVjYXVzZSBpdOKAmXMgbm90IHZl cmlkaWNhbCwgY2FuIGJlIGFueXRoaW5nLCBhcyBsb25nIGFzIHRoZSBzcGVha2VyIHRoaW5rcyB0 aGUgZGVzY3JpcHRpb24gd2lsbCBoZWxwIGlkZW50aWZ5aW5nIHRoZSBjb3JyZWN0IG9iamVjdHMu IFBlcmhhcHMgdGhlIHNwZWFrZXIgaXMgcmVmZXJyaW5nIHRvIGEgaHllbmEsIGJ1dCBhcmUgbm90 IGZhbWlsaWFyIHdpdGggdGhlbSBhbmQgdGhpbmsg4oCcZG9n4oCdIGlzIGEgZ29vZCBlbm91Z2gg YXBwcm94aW1hdGlvbiB0byBiZSB1bmRlcnN0b29kLiBUaGlzIG5vbi12ZXJpZGljYWxpdHkgaXMg cGVyaGFwcyBvdmVyLWVtcGhhc2lzZWQgaW4gbW9zdCBtYW55IHRleHRzOyBUaGUgYmVzdCB3YXkg dG8gZGVzY3JpYmUgYSBkb2cgaXMgdXN1YWxseSB0byBkZXNjcmliZSBpdCBhcyBiZWluZyBhIGRv ZywgYW5kIHVubGVzcyB0aGVyZSBpcyBhIGdvb2QgcmVhc29uIG5vdCB0bywgJydsZSBnZXJrdScn IGlzIHVzdWFsbHkgcHJlc3VtZWQgdG8gcmVmZXIgdG8gc29tZXRoaW5nIHdoaWNoIGlzIGFsc28g JydsbyBnZXJrdScnLgoKSW4gdHJhbnNsYXRpb24sICcnbG8gZ2Vya3UnJyBpcyB1c3VhbGx5IOKA nGEgZG9n4oCdIG9yIOKAnHNvbWUgZG9nc+KAnSwgd2hpbGUgJydsZSBnZXJrdScnIGlzIOKAnHRo ZSBkb2figJ0gb3Ig4oCcdGhlIGRvZ3PigJ0uIEV2ZW4gYmV0dGVyIGZvciAnJ2xlIGdlcmt1Jycg d291bGQgYmUg4oCcdGhlIOKAnGRvZyhzKeKAnSDigJ0KCgoKTGFzdCBvZiB0aGUgdGhyZWUgYmFz aWMgJydnYWRyaScnLCB0aGVyZSBpcyAnJ2xhJycsIHRoZSBuYW1pbmcgJydnYWRyaScnLCB3aGlj aCBJIGhhdmUgdW5jb252ZW50aW9uYWxseSBjYWxsZWQg4oCcY29udmVudGlvbmFs4oCdLiBXaGF0 IEkgbWVhbiBieSB0aGlzIGlzIHRoYXQgaXTigJlzIG5laXRoZXIgZGVzY3JpcHRpdmUgbm9yIHZl cmlkaWNhbCwgc2luY2UgaXQgcmVmZXJzIHRvIGEgcHJvcGVyIG5hbWUuIElmIEkgaW4gRW5nbGlz aCByZWZlciB0byBhIHBlcnNvbiBjYWxsZWQgSW5ub2NlbnQgYnkgaGVyIG5hbWUsIEkgbmVpdGhl ciBkZXNjcmliZSBoZXIgYXMgYmVpbmcgaW5ub2NlbnQsIG5vciBkbyBJIHN0YXRlIHRoYXQgc2hl IGlzLiBJIG9ubHkgc3RhdGUgdGhhdCBieSBjb252ZW50aW9uLCB0aGF0IG9iamVjdCBpcyByZWZl cnJlZCB0byBieSB0aGF0IHNlbGJyaSBvciBjbWV2bGEuIE5vdGUgdGhhdCAnJ2xhJycgYW5kIHRo ZSAnJ2dhZHJpJycgZGVyaXZlZCBmcm9tIGl0IGNhbiBjb252ZXJ0IGNtZXZsYSB0byBzdW10aSB1 bmxpa2UgYW55IG90aGVyICcnZ2FkcmknJy4gQWxzbzogQmUgY2F1dGlvdXM6IE90aGVyIHRleHRz IGRvIG5vdCBtZW50aW9uIHRoYXQgbmFtZXMgY2FuIGJlIGZvcm1lZCBmcm9tIG9yZGluYXJ5IHNl bGJyaSB1c2luZyB0aGUgZ2FkcmkgJydsYScnLiBCdXQgdGhvc2UgaGVyZXRpY3MgbXVzdCBidXJu OyBzZWxicmkgbmFtZXMgYXJlIGFzIGdvb2QgYXMgdGhleSBnZXQsIGFuZCBtYW55IGEgcHJvdWQg TG9qYmFuaXN0IGhhdmUgdGhlbS4KCgoKVGhlc2UgdGhyZWUgYmFzaWMgJydnYWRyaScnIGNhbiBi ZSBleHBhbmRlZCB3aXRoIHRocmVlIG1vcmUsIHdoaWNoIGNvcnJlc3BvbmRzIHRvIHRoZSBwcmV2 aW91czoKCgoKX18nJ2xvaScnX18gLSBnYWRyaTogVmVyaWRpY2FsIOKAnGNvbnZlcnQgc2VsYnJp IHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgbWFzcyhlcykuCgpfXycnbGVpJydfXyAtIGdh ZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQgcmVz dWx0IGFzIGEgbWFzcyhlcykuCgpfXycnbGFpJydfXyAtIGdhZHJpOiBOYW1pbmcgYXJ0aWNsZTog Q29udmVudGlvbmFsLCDigJxjb252ZXJ0IHNlbGJyaSBvciBjbWV2bGEgdG8gc3VtdGnigJ0uIFRy ZWF0IHJlc3VsdCBhcyBtYXNzKGVzKS4KCgoKVGhlc2UgYXJlIHRoZSBzYW1lIGluIGFsbCBhc3Bl Y3RzIGV4Y2VwdCBmb3Igb25lOiBUaGV5IHRyZWF0IHRoZSBzdW10aSBleHBsaWNpdGx5IGFzIG1h c3Nlcy4gSWYgdGhlcmUgaXMgb25seSBvbmUgb2JqZWN0IGluIHF1ZXN0aW9uLCBhbiBpbmRpdmlk dWFsIGFuZCBhIG1hc3MgY29uc2lzdGluZyBvZiBvbmUgb2JqZWN0IGFyZSBlcXVpdmFsZW50LiBU aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZXNlIHR3byBjb25jZXB0cyBsaWUgaW4gd2hpY2ggc2Vs YnJpIGNhbiBiZSBhc2NyaWJlZCB0byBhIGdyb3VwIG9mIGluZGl2aWR1YWxzIHZlcnN1cyBhIG1h c3MuIEEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgY2FuIGJlIHNhaWQgdG8gZml0IGEgY2VydGFpbiBz ZWxicmksIGlmIGFsbCBtZW1iZXJzIG9mIHRoZSBncm91cCBlYWNoIGZpdCB0aGUgc2VsYnJpLiBJ dCBpcyBjb3JyZWN0IHRvIGRlc2NyaWJlIGEgcGFjayBvZiAnJ2xvIGdlcmt1JycsIGFzIGJlaW5n IGJsYWNrLCBpZiBmb3IgZWFjaCBvZiB0aGUgZG9ncyBpdOKAmXMgdHJ1ZSB0aGF0IHRoZXkgYXJl IGJsYWNrLiBBIG1hc3MsIG9uIHRoZSBvdGhlciBoYW5kLCBmaXRzIGFsbCB0aGUgc2VsYnJpIHdo aWNoIGFueSBvZiBpdHMgbWVtYmVycyBmaXQsIGFzIHdlbGwgYXMgdGhlIHNlbGJyaSB3aGljaCBu b25lIG9mIHRoZSBtZW1iZXJzIGZpdCwgYnV0IHdoaWNoIHRoZSBncm91cCBjb25zaWRlcmVkIGFz IGEgd2hvbGUgZG9lcy4gVGh1cywgYSBtYXNzIG9mIGRvZ3MgY2FuIGJlIGJvdGggYmxhY2sgYW5k IHdoaXRlLiBIb3dldmVyLCBhbGwgdGhlIG1lbWJlcnMgb2YgdGhlIG1hc3Mgb2YgZG9ncyBtdXN0 IGJlIGRvZ3MgaW4gb3JkZXIgZm9yICcnbG9pJycgdG8gYmUgYXBwbGljYWJsZS4gQW5vdGhlciBl eGFtcGxlIGNhbiBpbGx1c3RyYXRlIGhvdyBhIG1hc3MgY2FuIGhhdmUgcHJvcGVydGllcyB3aGlj aCBub25lIG9mIGl0cyBtZW1iZXJzIGhhczoKCl9fJydzcnVyaScnX186IOKAnHgxIGZsYW5rcy9l bmNpcmNsZXMvZW5jbG9zZXMgeDIgaW4gbGluZS9wbGFuZS9kaXJlY3Rpb25zIHgz4oCdCgonJ2xl aSBwcmVudSBjdSBzcnVyaSBsbyB6ZGFuaScnIC0g4oCcVGhlIHBlb3BsZSBzdXJyb3VuZGVkIHRo ZSBob21lLuKAnSBpcyBwbGF1c2libGUsIGV2ZW4gdGhvdWdoLCB5byBtb21hIGpva2VzIG5vdCBj b25zaWRlcmVkLCBpdOKAmXMgY29tcGxldGVseSBpbXBsYXVzaWJsZSB0aGF0IGl0IGNvdWxkIGJl IHRydWUgZm9yIGFueSBvbmUgb2YgdGhlIG1lbWJlcnMgYWxvbmUuIEFuIEVuZ2xpc2ggYW5hbG9n eSBjb3VsZCBiZTog4oCcSHVtYW5zIGRlZmVhdGVkIHNtYWxscG94IGluIHRoZSAyMHRoIGNlbnR1 cnnigJ0uIFN1cmVseSBubyBodW1hbiBkaWQgc28sIGJ1dCB0aGUgbWFzcyBvZiBodW1hbnMgZGlk LCBhbmQgdGhhdCBtYWtlcyB0aGUgc2VudGVuY2UgdHJ1ZSBpbiBFbmdsaXNoLCBhcyB3ZWxsIGFz IGluIExvamJhbiBpZiDigJxodW1hbnPigJ0gYXJlIGEgbWFzcy4gSnVzdCBsaWtlIHRoZSBMb2pi YW4gbWFzcywgdGhlIEVuZ2xpc2ggbWFzcyDigJxodW1hbnPigJ0gY2FuIG9ubHkgcmVmZXIgdG8g aW5kaXZpZHVhbHMgZWFjaCBvZiB3aGljaCBhcmUgaHVtYW4uCgonJ2xlaSBnZXJrdScnIHJlZmVy cyB0byBhIG1hc3MgZm9ybWVkIGJ5IGEgZ3JvdXAgb2Ygc3BlY2lmaWMgaW5kaXZpZHVhbHMsIGVh Y2ggb2Ygd2hpY2ggdGhlIHNwZWFrZXIgcmVmZXJzIHRvIGFzICcnbGUgZ2Vya3UnJy4KCk1hc3Mg bmFtZXMgYXMgZGVzY3JpYmVzIGJ5ICcnbGFpJycgYXJlIG9ubHkgYXBwcm9wcmlhdGUgaWYgdGhl IGdyb3VwIGFzIGEgd2hvbGUgaXMgbmFtZWQgc3VjaCwgYW5kIG5vdCBqdXN0IGlmIGFueSBvZiB0 aGUgbWVtYmVycyBhcmUuIEl0IGNhbiwgaG93ZXZlciBiZSB1c2VkIGlmIHRoZSBicmlkaSBpcyB0 cnVlIGZvciBvbmx5IGEgZnJhY3Rpb24gb2YgdGhhdCBncm91cC4KCgoKWW91IG1pZ2h0IGhhdmUg bm90aWNlZCB0aGF0IHRoZXJlIGlzIG5vIHdvcmQgd2hpY2ggdW5hbWJpZ3VvdXNseSBjb252ZXJ0 cyBzZWxicmkgdG8gaW5kaXZpZHVhbChzKS4gSW4gb3JkZXIgdG8gYmUgZXhwbGljaXQgYWJvdXQg aW5kaXZpZHVhbG5lc3MsIG9uZSBuZWVkcyAnJ2xvJycsICcnbGUnJyBvciAnJ2xhJycgd2l0aCBh biBvdXRlciBxdWFudGlmaWVyLiBUaGUgc3ViamVjdCBvZiBxdWFudGlmaWVycyB3aWxsIGJlIGNv bnNpZGVyZWQgbGF0ZXIsIGluIGxlc3NvbiB0d2VudHktdHdvLiBXaGF0IGlzIHRoZSByZWFzb24g dGhhdCAnJ2xvJycgYW5kICcnbGUnJyB2YWd1ZSwgYW5kIG5vdCBleHBsaWNpdGx5IGluZGl2aWR1 YWw/IEl0IGlzIGJlY2F1c2UgdGhlaXIgdmFndWVuZXNzIGVuYWJsZXMgdGhlbSB0byBiZSB1c2Vk IGluIGFueSBjb250ZXh0LCB3aXRob3V0IHRoZSBzcGVha2VyIGhhdmluZyB0byB0aGluayBhYm91 dCB3aGV0aGVyIGlzIGJlaGF2ZXMgYXMgYSBtYXNzIG9yIGEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMu CgoKClRoaXJkIGluIHRoaXMgc2VyaWVzLCB0aGVyZSBhcmUgdGhyZWUgc2V0LWZvcm1pbmcgJydn YWRyaScnOgoKCgpfXycnbG8naScnX18gLSBnYWRyaTogVmVyaWRpY2FsIOKAnGNvbnZlcnQgc2Vs YnJpIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgYSBzZXQuCgpfXycnbGXigJlpJydfXyAt IGdhZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQg cmVzdWx0IGFzIGEgc2V0LgoKX18nJ2xh4oCZaScnX18gLSBnYWRyaTogTmFtaW5nIGFydGljbGU6 IENvbnZlbnRpb25hbCwg4oCcY29udmVydCBzZWxicmkgb3IgY21ldmxhIHRvIHN1bXRp4oCdLiBU cmVhdCByZXN1bHQgYXMgYSBzZXQuCgoKClVubGlrZSBncm91cHMgb2YgaW5kaXZpZHVhbHMgb3Ig bWFzc2VzLCBzZXRzIGRvZXMgbm90IHRha2UgYW55IG9mIHRoZSBwcm9wZXJ0aWVzIGZyb20gdGhl IG9iamVjdHMgZnJvbSB3aGljaCB0aGUgc2V0IGlzIGZvcm1lZC4gQSBzZXQgaXMgYSBwdXJlbHkg bWF0aGVtYXRpY2FsIG9yIGxvZ2ljYWwgY29uc3RydWN0LCBhbmQgaGFzIHByb3BlcnRpZXMgbGlr ZSBjYXJkaW5hbGl0eSwgbWVtYmVyc2hpcCBhbmQgc2V0IGluY2x1c2lvbi4gQWdhaW4sIG5vdGUg dGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBhIHNldCBvZiB0aGluZ3MsIGFuZCB0aGUgdGhpbmdzIG9m IHdoaWNoIHRoZSBzZXQgaXMgZm9ybWVkOgoKX18nJ3Rpcnh1JydfXyDigJx4MSBpcyBhIHRpZ2Vy L2xlb3BhcmQvamFndWFyIG9mIHNwZWNpZXMvYnJlZWQgeDIgd2l0aCBjb2F0IG1hcmtpbmdzIHgz 4oCdCgonJ2xv4oCZaSB0aXJ4dSBjdSBjbWFsdScnIHNheXMgbm90aGluZyBhYm91dCB3aGV0aGVy IGJpZyBjYXRzIGFyZSBzbWFsbCAod2hpY2ggaXMsIGJ5IHRoZSB3YXksIG9idmlvdXNseSBmYWxz ZSksIGJ1dCBpbnN0ZWFkIHNheSB0aGF0IHRoZSBzZXQgb2YgYmlnIGNhdHMgaXMgc21hbGw7IHRo YXQgaXMgLSB0aGVyZSBhcmUgZmV3IG9mIHRoZW0uCgoKCkxhc3RseSwgdGhlcmUgYXJlIHRoZSAo b25seSB0d28pIGdlbmVyYWxpemluZyAnJ2dhZHJpJyc6CgpfXycnbG/igJllJydfXyAtIGdhZHJp OiBWZXJpZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFN1bXRpIHJlZmVycyB0 byB0aGUgYXJjaGV0eXBlIG9mICcnbG8ge3NlbGJyaX0nJy4KCl9fJydsZeKAmWUnJ19fIC0gZ2Fk cmk6IERlc2NyaXB0aXZlIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBTdW10aSByZWZl cnMgdG8gdGhlIGRlc2NyaWJlZC9wZXJjZWl2ZWQgYXJjaGV0eXBlIG9mICcnbGUge3NlbGJyaX0n Jy4KCk9mIHdoaWNoIHRoZXJlIGlzIG5vICcnbGEnJy1lcXVpdmFsZW50LgoKCgpTbywgd2hhdCBp cyBhY3R1YWxseSBtZWFudCBieSB0aGUgYXJjaGV0eXBlPyBGb3IgJydsb+KAmWUgdGlyeHUnJywg aXQgaXMgYW4gaWRlYWwsIGltYWdpbmVkIGJpZyBjYXQsIHdoaWNoIGhhcyBhbGwgdGhlIHByb3Bl cnRpZXMgd2hpY2ggYmVzdCBleGVtcGxpZmllcyBiaWcgY2F0cy4gSXQgd291bGQgYmUgd3Jvbmcg dG8gc2F5IHRoYXQgdGhpcyBpbmNsdWRlcyBoYXZpbmcgYSBzdHJpcGVkIGZ1ciwgc2luY2UgYSBi aWcgc3lzdGVtYXRpYyBzdWJncm91cCBvZiB0aGUgbWVtYmVycyBvZiB0aGUgc2V0IG9mIGJpZyBj YXRzIGRvIG5vdCBoYXZlIHN0cmlwZWQgZnVyLCB0aGUgbGVvcGFyZHMgYW5kIHRoZSBqYWd1YXJz LiBMaWtld2lzZSwgdGhlIHR5cGljYWwgaHVtYW4gZG9lcyBub3QgbGl2ZSBpbiBBc2lhIGV2ZW4g dGhvdWdoIGEgbG90IG9mIGh1bWFucyBkby4gSG93ZXZlciwgaWYgc3VmZmljaWVudGx5IG1hbnkg aHVtYW5zIGhhdmUgYSB0cmFpdCwgZm9yIGluc3RhbmNlIGJlaW5nIGFibGUgdG8gc3BlYWssIHdl IGNhbiBzYXk6CgpfXycna2FrbmUnJ19fOiDigJx4MSBpcyBjYXBhYmxlIG9mIGRvaW5nL2JlaW5n IHgyIHVuZGVyIGNpcmN1bXN0YW5jZSB4M+KAnQoKJydsb+KAmWUgcmVtbmEgY3Uga2FrbmUgbG8g bnUgdGF2bGEnJyAtIOKAnFRoZSB0eXBpY2FsIGh1bWFuIGJlaW5nIGNhbiBzcGVha+KAnS4KCgoK JydsZeKAmWUnJyB0aGVuLCBpcyB0aGUgaWRlYWwgb2JqZWN0IGFzIHBlcmNlaXZlZCBvciBkZXNj cmliZWQgYnkgdGhlIHNwZWFrZXIuIFRoaXMgbmVlZCBub3QgYmUgZmFjdHVhbGx5IGNvcnJlY3Qs IGFuZCBpcyBvZnRlbiB0cmFuc2xhdGVkIGFzIHRoZSDigJxzdGVyZW90eXBl4oCdLCBldmVuIHRo b3VnaCB0aGUgRW5nbGlzaCBwaHJhc2UgaGF2ZSBzb21lIHVucGxlYXNhbnQgbmVnYXRpdmUgY29u bm90YXRpb25zLCB3aGljaCB0aGUgTG9qYmFuIGRvZXMgbm90LiBJbiBmYWN0LCBldmVyeW9uZSBo YXMgYSBzdGVyZW90eXBpY2FsIGFyY2hldHlwaWNoYWwgaW1hZ2Ugb2YgYW55IGNhdGVnb3J5LiBJ biBvdGhlciB3b3JkcywgJydsb+KAmWUgcmVtbmEnJyBpcyB0aGUgYXJjaGV0eXBlIHdoaWNoIGJl c3QgZXhlbXBsaWZpZXMgYWxsICcnbG8gcmVtbmEnJywgd2hpbGUgdGhlIGFyY2hldHlwZSAnJ2xl 4oCZZSByZW1uYScnIGJlc3QgZXhlbXBsaWZpZXMgYWxsICcnbGUgcmVtbmEnJy4KCgoKVGhlIGVs ZXZlbiBnYWRyaSBjYW4gYmUgc2VlbiBpbiB0aGUgZGlhZ3JhbSBiZWxvdy4KCnx8IHxHZW5lcmlj fE1hc3Nlc3xTZXRzfEdlbmVyYWxpemluZwoKVmVyaWRpY2FsfGxvfGxvaXxsb+KAmWl8bG/igJll CgpEZXNjcmlwdGl2ZXxsZXxsZWl8bGXigJlpfGxl4oCZZQoKTmFtZXxsYXxsYWl8bGHigJlpfGRv ZXMgbm90IGV4aXN0fHwKCgoKTm90ZTogRWFybGllciwgdGhlcmUgd2FzIGEgd29yZCAnJ3hv4oCZ ZScnIGZvciB0aGUgZ2VuZXJpYyBnYWRyaS4gSG93ZXZlciwgdGhlIHJ1bGVzIGFuZCBkZWZpbml0 aW9ucyBmb3IgZ2Fkcmkgd2VyZSBjaGFuZ2VkIGluIGxhdGUgMjAwNCwgYW5kIHRoZSBjdXJyZW50 IHNldCBvZiBydWxlcyBvbiB0aGlzIHRvcGljLCBuaWNrZWQg4oCceG9ybG/igJ0gaGFzIHJlcGxh Y2VkIHRoZSBvbGQgd2F5LiBOb3csICcnbG8nJyBpcyBnZW5lcmljLCBhbmQgJyd4b+KAmWUnJyBp cyB1c2VkIGFzIGEgZWxsaXB0aWNhbCBkaWdpdCAobGVzc29uIG5pbmV0ZWVuKS4KCgoKCgohIUxv amJhbiBMZXNzb25zIC0gTGVzc29uIGZpZnRlZW4gKHRoZSBMb2piYW4gc3VtdGkgMjogS09oQTMs IEtPaEE1IGFuZCBLT2hBNikKClNlZSB3aGF0IGhhcHBlbnMgaWYgSSB0cnkgdG8gdHJhbnNsYXRl IHRoZSBzZW50ZW5jZTog4oCcU3RlcmVvdHlwaWNhbCBwZW9wbGUgd2hvIGNhbiBzcGVhayBMb2pi YW4gc3BlYWsgdG8gZWFjaCBvdGhlciBhYm91dCB0aGUgbGFuZ3VhZ2VzIHRoZXkgY2FuIHNwZWFr 4oCdOgoKX18nJ2Jhbmd1JydfXyDigJx4MSBpcyBhIGxhbmd1YWdlIHVzZWQgYnkgeDIgdG8gZXhw cmVzcyB4MyAoYWJzdHJhY3Rpb24p4oCdCgonJ2xl4oCZZSBwcmVudSBwb2kga2XigJlhIGtha25l IGxvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHRhdmxhIGxl4oCZZSBwcmVudSBwb2kga2Xi gJlhIGtha25lIGxvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uIGxvIGJhbmd1IHBvaSBsbyBwcmVu dSBwb2kga2XigJlhIHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHNlIGJhbmd1IGtl4oCZYScnCgoK CldoYXQgd2Ugc2VlIGlzIHRoYXQgdGhlIExvamJhbiB2ZXJzaW9uIGlzIG11Y2ggbG9uZ2VyIHRo YW4gdGhlIEVuZ2xpc2guIFRoaXMgaXMgcHJpbWFyaWx5IGJlY2F1c2UgdGhlIGZpcnN0LCByaWRp Y3Vsb3VzbHkgbG9uZyBzdW10aSBpcyBiZWluZyByZXBlYXRlZCB0d28gbW9yZSB0aW1lcyBpbiB0 aGUgTG9qYmFuIHRleHQsIHdoaWxlIHRoZSBFbmdsaXNoIGNhbiByZWZlciB0byBpdCBieSDigJxl YWNoIG90aGVy4oCdIGFuZCDigJx0aGV54oCdIC0gbXVjaCBtb3JlIGVmZmljaWVudGx5LiBXb3Vs ZG7igJl0IGl0IGJlIGNsZXZlciBpZiBMb2piYW4gc29tZWhvdyBoYWQgbWVjaGFuaXNtcyBmb3Ig ZG9pbmcgdGhlIHNhbWU/CgoKCkl0IHR1cm5zIG91dCBpdCBkb2VzLCB3aGF0IGEgc3VycHJpc2Uh IExvamJhbiBoYXMgYSByYW5nZSBvZiB3b3JkcyBjYWxsZWQgJydzdW1rYeKAmWknJyBtZWFuaW5n IOKAnHN1bXRpLXJlcHJlc2VudGF0aXZlc+KAnS4gSW4gRW5nbGlzaCwgd2UgcmVmZXIgdG8gdGhl bSBhcyBwcm8tc3VtdGksIGJlY2F1c2UgdGhleSBhcmUgZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMg dGhlIEVuZ2xpc2ggcHJvbm91bnMsIGJ1dCB3aXRoIHN1bXRpIGluc3RlYWQgb2Ygbm91bnMuIElu IGZhY3QsIHlvdSBhbHJlYWR5IGtub3cgJyd0aScnLCAnJ2RvJycgYW5kICcnbWknJywgYnV0IHRo ZXJlIGFyZSBtYW55IG1vcmUsIHNvIGxldOKAmXMgZ2V0IGxlYXJuaW5nLiBGaXJzdCwgd2Ugd2Fu dCB0byBwdXQgaXQgaW50byBzeXN0ZW0uIFdlIGNhbiBiZWdpbiB3aXRoIHRoZSBvbmVzIG1vc3Qg ZmFtaWxpYXIgdG8gRW5nbGlzaCwgYW5kIHdoYXQgeW914oCZdmUgYWxyZWFkeSBsZWFybmVkOgoK CgpfXycndGknJ19fIC0gc3Vta2HigJlpOiDigJxpbW1lZGlhdGUg4oCYaXTigJk6IHJlcHJlc2Vu dHMgYSBzdW10aSBwaHlzaWNhbGx5IG5lYXIgdGhlIHNwZWFrZXLigJ0KCl9fJyd0YScnX18gLSBz dW1rYeKAmWk6IOKAnG5lYXJieSDigJhpdOKAmTogcmVwcmVzZW50cyBhIHN1bXRpIHNvbWUgcGh5 c2ljYWwgZGlzdGFuY2UgZnJvbSB0aGUgc3BlYWtlciBPUiBjbG9zZSB0byB0aGUgbGlzdGVuZXLi gJ0KCl9fJyd0dScnX18gLSBzdW1rYeKAmWk6IOKAnGRpc3RhbnQg4oCYaXTigJk6IHJlcHJlc2Vu dHMgYSBzdW10aSBwaHlzaWNhbGx5IGZhciBmcm9tIHRoZSBzcGVha2VyIGFuZCB0aGUgbGlzdGVu ZXIu4oCdCgoKCllvdSBjYW4gYWdhaW4gcmVjb2duaXplIHRoZSDigJxpLCBhLCB14oCdLXNlcXVl bmNlIHdoaWNoIHBvcHMgdXAgb3ZlciBhbmQgb3Zlci4gU29tZSB0aGluZ3MgbWlnaHQgdGFrZSBz b21lIGNsZWFyaW5nIHVwLCB0aG91Z2guIEZpcnN0bHksIHRoZXNlIHN1bXRpIGNhbiByZXByZXNl bnQgYW55dGhpbmcgd2hpY2ggY2FuIGJlIHNhaWQgdG8gb2NjdXB5IGEgcGh5c2ljYWwgc3BhY2Uu IE9iamVjdHMsIGNlcnRhaW5seS4gSWRlYXMsIGNlcnRhaW5seSBub3QuIEV2ZW50cyBhcmUgYWNj ZXB0ZWQsIGJ1dCBvbmx5IHRvIHRoZSBleHRlbnQgdGhleSBhcmUgcmVzdHJpY3RlZCB0byBhIHNw ZWNpZmljIHBsYWNlIC0gdGhlIEphc21pbiBSZXZvbHV0aW9uIGNhbm5vdCBiZSBwb2ludGVkIGF0 LCBidXQgc29tZSBiYXItZmlnaHQgb3IgYSBraXNzIG1pZ2h0LiBTZWNvbmRseSwgbm90ZSB0aGF0 IHRoZSBkaXN0YW5jZSBpcyByZWxhdGl2ZSB0byBkaWZmZXJlbnQgdGhpbmdzIGZvciB0aGUgZGlm ZmVyZW50IHdvcmRzOiAnJ3R1Jycgb25seSBhcHBsaWVzIGlmIGl04oCZcyBkaXN0YW50IGZyb20g Ym90aCB0aGUgc3BlYWtlciBhbmQgdGhlIGxpc3RlbmVyLiBJbiBjYXNlcyB3aGVyZSB0aGUgc3Bl YWtlciBhbmQgbGlzdGVuZXIgaXMgZmFyIGFwYXJ0IGFuZCB0aGUgbGlzdGVuZXIgY2Fubm90IHNl ZSB0aGUgc3BlYWtlciB0YWxraW5nLCAnJ3RhJycgcmVmZXJzIHRvIHNvbWV0aGluZyBjbG9zZSB0 byB0aGUgbGlzdGVuZXIuIFRoaXJkbHksIGl04oCZcyBhbGwgcmVsYXRpdmUgYW5kIGNvbnRleHQg ZGVwZW5kZW50LiBUaGVzZSB0aHJlZSB3b3JkcyBhcmUgYWxsIHByb2JsZW1hdGljIGluIHdyaXR0 ZW4gdGV4dCwgZm9yIGluc3RhbmNlLCBiZWNhdXNlIHRoZSBwb3NpdGlvbiBvZiB0aGUgc3BlYWtl ciBhbmQgbGlzdGVuZXIgaXMgdW5rbm93biB0byBlYWNoIG90aGVyLCBhbmQgY2hhbmdlcyBhcyB0 aW1lIGdvZXMgYnkuIEZ1cnRoZXJtb3JlLCB0aGUgYXV0aG9yIG9mIGEgYm9vayBjYW5ub3QgcG9p bnQgdG8gYW4gb2JqZWN0IGFuZCBleHByZXNzIHRoZSBwb2ludGluZyBpbiB0aGUgYm9vay4KCgoK VGhlbiB0aGVyZSBpcyBhIHNlcmllcyBjYWxsZWQgS09oQTMsIHRvIHdoaWNoICcnbWknJyBhbmQg JydkbycnIChhbmQgJydrbycnLCBidXQgSSB3b27igJl0IHdyaXRlIHRoYXQgaGVyZSkgYmVsb25n czoKCl9fJydtaScnX18gLSBzdW1rYeKAmWk6IFRoZSBzcGVha2VyKHMpLgoKX18nJ21p4oCZbycn X18gLSBzdW1rYeKAmWk6IFRoZSBtYXNzIG9mIHRoZSBzcGVha2VyKHMpIGFuZCB0aGUgbGlzdGVu ZXIocykgLgoKX18nJ21p4oCZYScnX18gLSBzdW1rYeKAmWk6IFRoZSBtYXNzIG9mIHRoZSBzcGVh a2VyKHMpIGFuZCBvdGhlcnMuCgpfXycnbWHigJlhJydfXyAtIHN1bWth4oCZaTogVGhlIG1hc3Mg b2YgdGhlIHNwZWFrZXIocyksIHRoZSBsaXN0ZW5lcihzKSBhbmQgb3RoZXJzLgoKX18nJ2RvJydf XyAtIHN1bWth4oCZaTogVGhlIGxpc3RlbmVyKHMpLgoKX18nJ2Rv4oCZbycnX18gLSBzdW1rYeKA mWk6IFRoZSBtYXNzIG9mIHRoZSBsaXN0ZW5lcihzKSBhbmQgb3RoZXJzLgoKCgpUaGVzZSBzaXgg c3Vta2HigJlpIGFyZSBtb3JlIGVhc2lseSBncmFzcGVkIGluIHRoZSBiZWxvdyBWZW5uIGRpYWdy YW06CgoKCntpbWcgZmlsZUlkPSIzIiB0aHVtYj0ieSIgcmVsPSJib3hbZ10ifQoKVmVubiBkaWFn cmFtIG9mIEtPaEEzICgnJ2tvJycgZXhjbHVkZWQpLiAnJ2xlIGRyYXRhJycgaXMgbm90IGEgS09o QTMsIGJ1dCBtZWFucyDigJx0aGUgb3RoZXIocynigJ0KCgoKSXQgaXMgcG9zc2libGUgZm9yIHNl dmVyYWwgcGVvcGxlIHRvIGJlIOKAnHRoZSBzcGVha2Vyc+KAnSwgaWYgb25lIHN0YXRlbWVudCBp cyBtYWRlIG9uIHRoZSBiZWhhbGYgb2YgYWxsIG9mIHRoZW0uIFRoZXJlZm9yZSwgd2hpbGUg4oCc d2XigJ0gY2FuIGJlIHRyYW5zbGF0ZWQgYXMgZWl0aGVyICcnbWknJywgJydtaeKAmW8nJywgJydt aeKAmWEnJyBvciAnJ21h4oCZYScnLCB3aGF0IG9uZSBxdWl0ZSBvZnRlbiBtZWFucyBpcyByZWFs bHkganVzdCAnJ21pJycuIEFsbCBvZiB0aGVzZSBzaXgsIGlmIHRoZXkgcmVmZXIgdG8gbW9yZSB0 aGFuIG9uZSBpbmRpdmlkdWFsLCByZXByZXNlbnQgbWFzc2VzLiBXaXRoaW4gYnJpZGktbG9naWMs IHRoZSBicmlkaSAnJ21pIGdsZWtpJycgc2FpZCBieSBzcGVha2VyIEEgaXMgZXhhY3RseSBlcXVp dmFsZW50IHRvICcnZG8gZ2xla2knJyBzYWlkIGJ5IHNwZWFrZXIgQiB0byBzcGVha2VyIEEsIGFu ZCBhcmUgY29uc2lkZXJlZCB0aGUgc2FtZSBicmlkaS4gV2Ugd2lsbCBjb21lIGJhY2sgdG8gdGhp cyBsYXRlciwgaW4gdGhlICcnYnJpa2HigJlpJycgKHByby1icmlkaSkgbGVzc29uLgoKCgpBbGwg b2YgdGhlc2UgJydzdW1rYeKAmWknJyBhcmUgdmVyeSBjb250ZW50LXNwZWNpZmljLCBhbmQgY2Fu IG5vdCBiZSB1c2VkLCBmb3IgaW5zdGFuY2UsIHRvIGhlbHAgdXMgd2l0aCB0aGUgc2VudGVuY2Ug d2hpY2ggdGhpcyBsZXNzb24gYmVnYW4gd2l0aC4gVGhlIGZvbGxvd2luZyBzZXJpZXMgY2FuIGlu IHByaW5jaXBsZSBiZSB1c2VkIHRvIHJlZmVyIHRvIGFueSBzdW10aToKCl9fJydyaScnX18gLSBz dW1rYeKAmWk6IOKAnExhc3Qgc3VtdGkgbWVudGlvbmVk4oCdCgpfXycncmEnJ19fIC0gc3Vta2Hi gJlpOiDigJxBIHJlY2VudCwgYnV0IG5vdCB0aGUgbGFzdCBzdW10aSBtZW50aW9uZWTigJ0KCl9f JydydScnX18gLSBzdW1rYeKAmWk6IOKAnEEgc3VtdGkgbWVudGlvbmVkIGxvbmcgYWdv4oCdCgoK ClRoZXNlIHN1bXRpIHdpbGwgcmVmZXIgdG8gYW55IHRlcm1pbmF0ZWQgc3VtdGkgZXhjZXB0IG1v c3Qgb3RoZXIgJydzdW1rYeKAmWknJy4gVGhlIHJlYXNvbiB0aGF0IG1vc3Qgb3RoZXIgJydzdW1r YeKAmWknJyBjYW5ub3QgYmUgcmVmZXJyZWQgdG8gYnkgdGhlc2Ugc3VtdGksIGlzIHRoYXQgdGhl eSBhcmUgc28gZWFzeSB0byBqdXN0IHJlcGVhdCBieSB0aGVtc2VsdmVzLiBUaGUgZXhjZXB0aW9u IHRvIHRoZSBydWxlIGFyZSAnJ3RpJycsICcndGEnJyBhbmQgJyd0dScnLCBiZWNhdXNlIHlvdSBj b3VsZCBoYXZlIGNoYW5nZWQgd2hhdCB5b3UgcG9pbnQgYXQsIGFuZCB0aHVzIGNhbm5vdCBqdXN0 IHJlcGVhdCB0aGUgd29yZC4gVGhleSB3aWxsIG9ubHkgcmVmZXIgdG8gdGVybWluYXRlZCBzdW10 aSwgYW5kIHRodXMgY2Fubm90LCBmb3IgaW5zdGFuY2UsIGJlIHVzZWQgdG8gcmVmZXIgdG8gYW4g YWJzdHJhY3Rpb24gaWYgdGhlIHdvcmQgaW4gaXMgdGhhdCBhYnN0cmFjdGlvbjogJydsZSBwZW5k byBub2kga2XigJlhIHBlbmRvIG1pIGN1IGRqaWNhIGxvIG51IHJpIHNlIHpkYW5pJycgLSBoZXJl ICcncmknJyBjYW5ub3QgcmVmZXIgdG8gdGhlIGFic3RyYXRpb24sIHNpbmNlIGl0IGlzIG5vdCB0 ZXJtaW5hdGVkLCBub3IgdG8gJydtaScnIG9yICcna2XigJlhJycsIHNpbmNlIHRoZXkgYXJlIHN1 bWth4oCZaSwgc28gaXQgcmVmZXJzIHRvICcnbGUgcGVuZG8nJy4KCicncmEnJyBhbmQgJydydScn IGFyZSBjb250ZXh0LWRlcGVuZGVudCBpbiB3aGF0IHRoZXkgcmVmZXIgdG8sIGJ1dCB0aGV5IGZv bGxvdyB0aGUgcnVsZXMgbWVudGlvbmVkIGFib3ZlLCBhbmQgJydydScnIGFsd2F5cyByZWZlciB0 byBhIG1vcmUgZGlzdGFudCBzdW10aSB0aGFuICcncmEnJywgd2hpY2ggaXMgYWx3YXlzIG1vcmUg ZGlzdGFudCB0aGFuICcncmknJy4KCgoKJydyaScnIGFuZCBpdOKAmXMgYnJvdGhlcnMgYXJlIHBy ZXR0eSB3ZWxsIHN1aXRlZCBmb3IgZGVhbGluZyB3aXRoIHRoZSBvcmlnaW5hbCBzZW50ZW5jZS4g VHJ5IHNheWluZyBpdCB1c2luZyB0d28gaW5zdGFuY2VzIG9mICcnc3Vta2HigJlpJychCgoKCkFu c3dlcjogfn5ncmV5LGdyZXk6JydsZeKAmWUgcHJlbnUgcG9pIGtl4oCZYSBrYWtuZSBsbyBudSB0 YXZsYSBmbyBsYSAubG9qYmFuLiBjdSB0YXZsYSBydSBsbyBiYW5ndSBwb2kgcnUgY3Ugc2UgYmFu Z3Uga2XigJlhJycuICcncmknJyBpcyBub3QgY29ycmVjdCwgYmVjYXVzZSBpdCByZWZlcnMgdG8g JydsYSAubG9qYmFuLicnLiAnJ3JhJycgY291bGQgYmUgdXNlZCwgYnV0IGNvdWxkIGJlIG1pc3Rh a2VubHkgYmUgdGhvdWdodCB0byByZWZlciB0byAnJ2xvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4u JycsIGJ1dCAnJ3J1JycgaXMgYXNzdW1lZCB0byByZWZlciB0byB0aGUgbW9zdCBkaXN0YW50IHN1 bXRpIC0gdGhlIG1vc3Qgb3V0ZXIgb25lLn5+CgoKCkxhc3RseSwgdGhlcmUgYSBzdW10Y2l0YSB3 aGljaCByZXByZXNlbnQgdXR0ZXJhbmNlczogU28gY2FsbGVkIHV0dGVyYW5jZSB2YXJpYWJsZXMu IFRoZXkgbmVlZCBub3QgYmUgcmVzdHJpY3RlZCB0byBvbmUgc2VudGVuY2UgKGp1ZnJhKSwgYnV0 IGNhbiBiZSBzZXZlcmFsIHNlbnRlbmNlcywgaWYgdGhlIGNvbnRleHQgYWxsb3dzIGl0OgoKX18n J2Rh4oCZdScnX18gVXR0ZXJhbmNlIHZhcmlhYmxlOiBSZW1vdGUgcGFzdCBzZW50ZW5jZQoKX18n J2Rl4oCZdScnX18gVXR0ZXJhbmNlIHZhcmlhYmxlOiBSZWNlbnQgc2VudGVuY2UKCl9fJydkaeKA mXUnJ19fIFV0dGVyYW5jZSB2YXJpYWJsZTogUHJldmlvdXMgc2VudGVuY2UKCl9fJydkZWknJ19f IFV0dGVyYW5jZSB2YXJpYWJsZTogVGhpcyBzZW50ZW5jZQoKX18nJ2Rp4oCZZScnX18gVXR0ZXJh bmNlIHZhcmlhYmxlOiBOZXh0IHNlbnRlbmNlCgpfXycnZGXigJllJydfXyBVdHRlcmFuY2UgdmFy aWFibGU6IE5lYXIgZnV0dXJlIHNlbnRlbmNlCgpfXycnZGHigJllJydfXyBVdHRlcmFuY2UgdmFy aWFibGU6IFJlbW90ZSBmdXR1cmUgc2VudGVuY2UKCl9fJydkb+KAmWknJ19fIFV0dGVyYW5jZSB2 YXJpYWJsZTogRWxsaXB0aWNhbCB1dHRlcmFuY2UgdmFyaWFibGU6IOKAnFNvbWUgc2VudGVuY2Xi gJ0KClRoZXNlIHJlcHJlc2VudHMgc2VudGVuY2VzIGFzIHN1bXRpLCBhbmQgcmVmZXIgb25seSB0 byB0aGUgc3Bva2VuIHdvcmRzIG9yIHRoZSBsZXR0ZXJzLCBub3QgdG8gdGhlIG1lYW5pbmcgYmVo aW5kIHRoZW0uCgoKClRoZXJlIGFyZSBtb3JlIExvamJhbiAnJ3N1bWth4oCZaScnLCBidXQgZm9y IG5vdyB5b3UgcHJvYmFibHkgbmVlZCBhIGJyZWFrIGZyb20gdGhlbS4gVGhlIG5leHQgbGVzc29u IHdpbGwgYmUgb24gZGVyaXZlZCBzdW10aSwgc3VtdGkgbWFkZSBmcm9tIG90aGVyIHN1bXRpLgoK CgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gc2l4dGVlbiAodGhlIExvamJhbiBzdW10aSAz OiBkZXJpdmVkIHN1bXRpKQoKWW91IGNhbiBwcm9iYWJseSBzZWUgdGhhdCB0aGUgc3VtdGkgJyds ZSBiYW5ndSBwb2kgbWkgc2UgYmFuZ3Uga2XigJlhJycgaXMgYSBsZXNzIHRoYW4gZWxlZ2FudCBl eHByZXNzaW9uIGZvciDigJxteSBsYW5ndWFnZeKAnS4gVGhpcyBpcyBiZWNhdXNlIGl04oCZcyBy ZWFsbHkgYSB3b3JrIGFyb3VuZC4gQSBsYW5ndWFnZSB3aGljaCBJIHNwZWFrIGNhbiBiZSBzYWlk IHRvIGZpbGwgaW50byB0aGUgeDEgb2YgdGhlIGJyaWRpICcnYmFuZ3UgbWknJy4gV2UgY2Fu4oCZ dCBjb252ZXJ0IHRoYXQgdG8gYSBzdW10aSB1c2luZyBhIGdhZHJpOiAnJ2xlIGJhbmd1IHtrdX0g bWknJyBpcyB0d28gc3VtdGksIGJlY2F1c2UgJydiYW5ndSBtaScnIGlzIGEgYnJpZGksIG5vdCBh IHNlbGJyaS4gTmVpdGhlciBjYW4gd2UgY29udmVydCBpdCB1c2luZyAnJ2xlIHN14oCZdScnLCBi ZWNhdXNlIHRoZSBzdeKAmXUgZ2l2ZXMgdGhlIGJyaWRpIGEgbmV3IHgxLCB0aGUgYWJzdHJhY3Rp b24sIGFuZCB0aGUgJydsZScnIHRoZW4gZXh0cmFjdHMgdGhhdC4gVGhhdCBtYWtlcyBhbiBhYnN0 cmFjdGlvbiBzdW10aSBtZWFuaW5nIHNvbWV0aGluZyBsaWtlIOKAnHRoYXQgc29tZXRoaW5nIGlz IG15IGxhbmd1YWdl4oCdLgoKRW50ZXIgJydiZScnLiAnJ2JlJycgaXMgYSB3b3JkIHdoaWNoIGJp bmRzIGNvbnN0cnVjdHMgKHN1bXRpLCBzdW10Y2l0YSBhbmQgb3RoZXJzKSB0byBhIHNlbGJyaS4g VXNpbmcgaXQgaW4gb3JkaW5hcnkgc2VsYnJpIGhhcyBubyBlZmZlY3Q6IGluICcnbWkgbmVsY2kg YmUgZG8nJywgdGhlICcnYmUnJyBkb2VzIG5vdGhpbmcuIEhvd2V2ZXIsIHdoZW4gYSBzdW10aSBp cyBib3VuZCB0byBhIHNlbGJyaSB0aGlzIHdheSwgeW91IGNhbiB1c2UgYSBnYWRyaSBvbiB0aGUg c2VsYnJpIHdpdGhvdXQgdGhlIHN1bXRpIHNwbGl0dGluZyBvZmY6ICcnbGUgYmFuZ3UgYmUgbWkn JyBpcyBhIGNvcnJlY3Qgc29sdXRpb24gdG8gdGhlIHByb2JsZW0gYWJvdmUuIExpa2V3aXNlLCB5 b3UgY2FuIGF0dGFjaCBhIHN1bXRjaXRhOiAnJ2xlIG51IGRhcnhpIGtlaSBiZSBnYXUgZG8nJzog 4oCcVGhlIGV2ZW50IG9mIGhpdHRpbmcsIHdoaWNoIGlzIGNhdXNlZCBieSB5b3XigJ0uIE5vdGUg dGhhdCB0aGUgcHJlc2VuY2Ugb3IgYWJzZW5jZSBvZiAnJ2tlaScnIG1ha2VzIGl0IHBhcnNlIGRp ZmZlcmVudGx5OiBXaXRoIHRoZSBmYSdvcm1hJ28gcHJlc2VudCwgJydiZScnIGF0dGFjaGVzIHRv ICcnbnUnJywgd2l0aG91dCB0aGUgZmEnb3JtYSdvLCBpdCBhdHRhY2hlcyB0byAnJ2RhcnhpJycu IFNvIGl0IGRlY2lkZXMgd2hhdCBpcyBiZWluZyBlbXBoYXNpc2VkOiBJcyB0aGUgaGl0dGluZywg b3IgdGhlIGV2ZW50IG9mIGhpdHRpbmcgY2F1c2VkIGJ5IHlvdT8gSW4gdGhpcyBzcGVjaWZpYyBj YXNlLCB0aG91Z2gsIHRoYXTigJlzIGp1c3QgYWJvdXQgdGhlIHNhbWUgdGhpbmcuCgoKCldoYXQg aWYgSSB3YW50IHRvIGF0dGFjaCBzZXZlcmFsIHN1bXRpIHRvIGEgc2VsYnJpIGluc2lkZSBhIGdh ZHJpPyDigJxUaGUgZ2l2ZXIgb2YgdGhlIGFwcGxlIHRvIHlvdeKAnSBpcyAnJ2xlIGR1bmRhIGJl IGxvIHBsaXNlIGJlIGRvJycsIHJpZ2h0PyBOb3BlLiBUaGUgc2Vjb25kICcnYmUnJyBhdHRhY2hl cyB0byB0aGUgYXBwbGUsIG1lYW5pbmcgJydsZSBwbGlzZSBiZSBkbycnIC0g4oCcVGhlIGFwcGxl IG9mIHRoZSBzdHJhaW4gb2YgeW914oCdLCB3aGljaCBtYWtlcyBzbyBzZW5zZS4gSW4gb3JkZXIg dG8gc3RyaW5nIHNldmVyYWwgc3VtdGkgdG8gYSBzZWxicmksIGFsbCBvZiB0aGUgb25lcyBmb2xs b3dpbmcgdGhlIGZpcnN0IG11c3QgYmUgYm91bmQgd2l0aCAnJ2JlaScnLiBUaGUg4oCcYmluZGlu Z+KAnSBjYW4gYmUgdGVybWluYXRlZCB3aXRoICcnYmXigJlvJycgLSBvbmUgaW5zdGFuY2Ugb2Yg JydiZeKAmW8nJyBmb3IgZWFjaCBzZWxicmkgd2hpY2ggaGFzIHN1bXRpIGJvdW5kIGJ5ICcnYmUn Jy4KClRvIGxpc3QgdGhlbToKCl9fJydiZScnX18gYmluZHMgc3VtdGkgb3Igc3VtdGNpdGEgdG8g c2VsYnJpCgpfXycnYmVpJydfXyBiaW5kcyBhIHNlY29uZCwgdGhpcmQsIGZvdXJ0aCAoZWN0KSBz dW10aSBvciBzdW10Y2l0YSB0byBhIHNlbGJyaQoKX18nJ2Jl4oCZbycnX18gZW5kcyBiaW5kaW5n IHRvIHNlbGJyaQoKCgpUaGVyZSBpcyBhbHNvIHdheXMgdG8gbG9vc2VseSBhc3NvY2lhdGUgYSBz dW10aSB3aXRoIGFub3RoZXIuICcncGUnJyBhbmQgJyduZScnIGZvciByZXN0cmljdGl2ZSBhbmQg bm9uLXJlc3RyaWN0aXZlIGFzc29jaWF0aW9uLiBBY3R1YWxseSwgJydsZSBiYW5ndSBwZSBtaScn IGlzIGEgYmV0dGVyIHRyYW5zbGF0aW9uIG9mIOKAnG15IGxhbmd1YWdl4oCdLCBzaW5jZSB0aGlz IHBocmFzZSwgbGlrZSB0aGUgRW5nbGlzaCwgaXMgdmFndWUgYXMgdG8gaG93IHRoZSB0d28gYXJl IGFzc29jaWF0ZWQgd2l0aCBlYWNoIG90aGVyLgoKJydwZScnIGFuZCAnJ25lJycgYXJlIHVzZWQg YXMgbG9vc2UgYXNzb2NpYXRpb24gb25seSwgbGlrZSBzYXlpbmcg4oCcbXkgY2hhaXLigJ0gYWJv dXQgYSBjaGFpciB3aGljaCB5b3Ugc2l0IG9uLiBJdOKAmXMgbm90IHJlYWxseSB5b3VycywgYnV0 IGhhcyBzb21ldGhpbmcgZG8gdG8gd2l0aCB5b3UuIEEgbW9yZSBpbnRpbWF0ZSBjb25uZWN0aW9u IGNhbiBiZSBlc3RhYmxpc2hlZCB3aXRoICcncG8nJywgd2hpY2ggbWFrZXMgdGhlIGFzc29jaWF0 aW9uIHVuaXF1ZSBhbmQgYmluZGluZyB0byBhIHBlcnNvbiwgYXMgaW4g4oCcbXkgY2Fy4oCdIGZv ciBhIGNhciB0aGF0IHlvdSBhY3R1YWxseSBvd24uIFRoZSBsYXN0IGtpbmQgb2YgYXNzb2NpYXRv ciBpcyAnJ3BvJ2UnJywgd2hpY2ggbWFrZXMgYSBzby1jYWxsZWQgImluYWxpZW5hYmxlIiBib25k IGJldHdlZW4gc3VtdGksIG1lYW5pbmcgdGhhdCB0aGUgYm9uZCBpcyBpbm5hdGUgYmV0d2VlbiB0 aGUgdHdvIHN1bXRpLiBTb21lIGV4YW1wbGVzIGNvdWxkIGJlICJteSBtb3RoZXIiLCAibXkgYXJt IiBvciAibXkgaG9tZSBjb3VudHJ5Ijsgbm9uZSBvZiB0aGVzZSAicG9zc2VzaW9ucyIgY2FuIGJl IGxvc3QgKGV2ZW4gaWYgeW91IHNhdyBvZmYgeW91ciBhcm0sIGl0J3Mgc3RpbGwgX195b3VyX18g YXJtKSwgYW5kIGFyZSB0aGVyZWZvcmUgaW5hbGllbmFibGUuIEFsbW9zdCBhbGwgb2YgdGhlIHRp bWVzIGEgJydwbydlJycgaXMgYXBwcm9wcmlhdGUsIHRob3VnaCwgdGhlIHgyIG9mIHRoZSBzZWxi cmkgY29udGFpbnMgdGhlIG9uZSB0byB3aGljaCB0aGUgeDEgaXMgY29ubmVjdGVkLCBzbyAnJ2Jl JycgaXMgYmV0dGVyLgoKX18nJ25lJydfXyBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgcGhyYXNl LiAid2hpY2ggaXMgYXNzb2NpYXRlZCB3aXRoLi4uIgoKX18nJ3BlJydfXyByZXN0cmljdGl2ZSBy ZWxhdGl2ZSBwaHJhc2UuICJ3aGljaCBpcyBhc3NvY2lhdGVkIHdpdGguLi4iCgpfXycncG8nJ19f IHBvc3Nlc2l2ZSByZWxhdGl2ZSBwaHJhc2UuICJ3aGljaCBpcyBzcGVjaWZpYyB0by4uLiIKCl9f JydwbydlJydfXyBpbmFsaWVuYWJsZSByZWxhdGl2ZSBwaHJhc2UuICJ3aGljaCBiZWxvbmdzIHRv Li4uIgoKCgpBIHZlcnkgdXNlZnVsIGNvbnN0cnVjdCB0byBrbm93IGlzICcne2dhZHJpfSB7c3Vt dGl9IHtzZWxicml9JycuIHRoaXMgaXMgZXF1aXZhbGVudCB0byAnJ3tnYWRyaX0ge3NlbGJyaX0g cGUgIHtzdW10aX0nJy4gRm9yIGluc3RhbmNlICcnbGUgbWkgZ2Vya3UnJyBpcyBlcXVpdmFsZW50 IHRvICcnbGUgZ2Vya3UgcGUgbWknJy4gT25lIGNvdWxkIGhhdmUgZGVzY3JpcHRpb24gc3VtdGkg aW5zaWRlIGRlc2NyaXB0aW9uIHN1bXRpLCBzYXlpbmcgJydsZSBsZSBzZSBjaW5qaWtjYSBiZSBt aSBrdSBnZXJrdScnLCA9ICcnbGUgZ2Vya3UgcGUgbGUgc2UgY2luamlrY2EgYmUgbWknJyA94oCc dGhlIGRvZyBvZiB0aGUgbWFuIEnigJltIGZsaXJ0aW5nIHdpdGjigJ0sIGJ1dCB0aGF04oCZcyBu b3QgdmVyeSBlYXN5IHRvIHJlYWQgKG9yIHRvIHVuZGVyc3RhbmQgd2hlbiBzcG9rZW4pLCBhbmQg aXMgb2Z0ZW4gYmVpbmcgYXZvaWRlZC4KCgoKT25lIG5lZWQgYWxzbyB0byBsZWFybiAnJ3R14oCZ YScnLCBzaW5jZSBpdCB3aWxsIG1ha2UgYSBsb3Qgb2Ygc2VudGVuY2VzIG11Y2ggZWFzaWVyLiBJ dCB0YWtlcyBhIHN1bXRpIGFuZCBjb252ZXJ0cyBpdCB0byBhbm90aGVyIHN1bXRpIC0gYW4gZWxs aXB0aWNhbCBhYnN0cmFjdGlvbiB3aGljaCBoYXMgc29tZXRoaW5nIHRvIGRvIHdpdGggdGhlIGZp cnN0IHN1bXRpLiBGb3IgZXhhbXBsZSwgSSBjb3VsZCBzYXkgJydtaSBkamljYSBsbyBudSBtaSBj aXRrYSBsbyBwbGlzZScnLCBvciBJIGNvdWxkIGxldCBpdCBiZSB1cCB0byBjb250ZXh0IHdoYXQg YWJzdHJhY3Rpb24gYWJvdXQgdGhlIGFwcGxlIEkgZGVzaXJlIGFuZCBqdXN0IHNheSAnJ21pIGRq aWNhIHR14oCZYSBsbyBwbGlzZScnLiBPbmUgYWx3YXlzIGhhcyB0byBndWVzcyB3aGF0IGFic3Ry YWN0aW9uIHRoZSBzcGVha2VyIG1lYW5zIGJ5ICcndHXigJlhIFNVTVRJJycsIHNvIGl0IHNob3Vs ZCBvbmx5IGJlIHVzZWQgd2hlbiBjb250ZXh0IG1ha2VzIGl0IGVhc3kgdG8gZ3Vlc3MuIEFub3Ro ZXIgZXhhbXBsZToKCl9fJydnYXNudScnX18g4oCceDEgZG9lcy9icmluZ3MgYWJvdXQgeDIgKHZv bGl0aW9uIG5vdCBpbXBsaWVkKeKAnQoKJyd6YeKAmWEgZG8gZ2FzbnUgdHXigJlhIGxvIHNrYW1p JycgLSDigJxJIHNlZSB0aGF0IHlvdSBtYWtlIHRoZSBjb21wdXRlciBkbyBzb21ldGhpbmfigJ0u IE9mZmljaWFsbHksICcndHXigJlhIFNVTVRJJycgaXMgZXF1aXZhbGVudCB0byAnJ2xlIHN14oCZ dSBTVU1USSBjb+KAmWUnJy4gVmFndWUsIGJ1dCB1c2VmdWwuIFRoZXJlIGFyZSBzaXR1YXRpb25z IHdoZXJlIHlvdSBjYW5ub3QgdXNlICcndHXigJlhJycsIGV2ZW4gdGhvdWdoIGl0IHdvdWxkIHNl ZW0gc3VpdGFibGUuIFRoZXNlIHNpdHVhdGlvbnMgYXJlIHdoZW4gSSBkb27igJl0IHdhbnQgdGhl IHJlc3VsdGluZyBzdW10aSB0byBiZSBhbiBhYnN0cmFjdGlvbiwgYnV0IGEgY29uY3JldGUgc3Vt dGkuIEluIHRoaXMgY2FzZSwgb25lIGNhbiB1c2UgJyd6b+KAmWUgcGUnJy4KCl9fJyd0dSdhJydf XyBjb252ZXJ0IHN1bXRpIHRvIHZhZ3VlIGFic3RyYWN0aW9uIGludm9sdmluZyB0aGUgc3VtdGku IEVxdWl2YWxlbnQgdG8gJydsZSBzdSd1IFNVTVRJIGNvJ2Uga2VpIGt1JycKCgoKRmluYWxseSwg b25lIGtpbmQgb2Ygc3VtdGkgY2FuIGJlIHR1cm5lZCBpbnRvIGFub3RoZXIgYnkgdGhlIHdvcmRz IG9mIHRoZSBjbGFzcyBMQWhFLgoKX1/igJnigJlsdeKAmWHigJnigJlfXyAtIENvbnZlcnQgaW5k aXZpZHVhbChzKS9tYXNzL3NlcXVlbmNlL3NldCB0byBpbmRpdmlkdWFscy4KCl9f4oCZ4oCZbHXi gJlp4oCZ4oCZX18gLSBDb252ZXJ0IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8g YSBzZXQuCgpfX+KAmeKAmWx14oCZb+KAmeKAmV9fIC0gQ29udmVydCBpbmRpdmlkdWFsKHMpL21h c3Mvc2VxdWVuY2Uvc2V0IHRvIG1hc3MuCgpfX+KAmeKAmXZ14oCZaeKAmeKAmV9fIC0gQ29udmVy dCBpbmRpdmlkdWFsKHMpL21hc3Mvc2VxdWVuY2Uvc2V0IHRvIHNlcXVlbmNlOyB0aGUgb3JkZXIg aXMgbm90IHN0YXRlZC4KClRoZSB1c2Ugb2YgdGhlc2Ugd29yZHMgaXMgc3RyYWlnaHQtZm9yd2Fy ZGx5OiBQbGFjaW5nIHRoZW0gYmVmb3JlIGEgc3VtdGkgb2YgYSBjZXJ0YWluIHR5cGUgbWFrZXMg YSBuZXcgc3VtdGkgb2YgYSBuZXcgdHlwZS4gTm90aWNlLCB0aG91Z2gsIHRoYXQgYXMgYSBmb3Vy dGgga2luZCBvZiBzdW10aSwgYSBzZXF1ZW5jZSBoYXMgYmVlbiBpbnRyb2R1Y2VkLiBUaGlzIGlz IG5vdCB1c2VkIHZlcnkgb2Z0ZW4gKGl0IGRvZXNu4oCZdCBoYXZlIGl0cyBvd24gZ2FkcmksIGZv ciBpbnN0YW5jZSksIGJ1dCBqdXN0IGluY2x1ZGVkIGhlcmUgZm9yIGNvbXBsZXRpb24uCgpUaGUg bGFzdCB0d28gbWVtYmVycyBvZiBMQWhFIGRvIG5vdCBjb252ZXJ0IGJldHdlZW4gdHlwZXMgb2Yg c3VtdGksIGJ1dCBhbGxvd3MgeW91IHRvIHNwZWFrIG9mIGEgYSBzdW10aSBieSBvbmx5IG1lbnRp b25pbmcgc29tZXRoaW5nIHdoaWNoIHJlZmVyZW5jZXMgdG8gaXQ6CgpJZiBvbmUgc3VtdGkgQSBy ZWZlcnMgdG8gYSBzdW10aSBCLCBmb3IgaW5zdGFuY2UgYmVjYXVzZSBzdW10aSBBIGlzIGEgdGl0 bGUgb2YgYSBib29rLCBvciBhIG5hbWUsIG9yIGEgc2VudGVuY2UgKHdoaWNoIGFsd2F5cyByZWZl ciB0byBzb21ldGhpbmcsIGF0IGxlYXN0IGEgYnJpZGkpLCDigJjigJlsYeKAmWUgU1VNVEkgQeKA meKAmSByZWZlcnMgdG8gc3VtdGkgQi4gRm9yIGluc3RhbmNlLCDigJjigJltaSBuZWxjaSBsYeKA mWUgZGnigJl14oCZ4oCZIGZvciDigJxJIGxpa2Ugd2hhdCB5b3UganVzdCBzYWlk4oCdIChub3Qg JydtaSBuZWxjaSBkaSd1Jycgd2hpY2gganVzdCBtZWFucyAiSSBsaWtlIHlvdXIgcHJldmlvdXMg c2VudGVuY2UiKSBvciDigJjigJlsYeKAmWUgbGUgY21hbHUgbm9sdHJ14oCZ4oCZIGZvciB0aGUg Ym9vayDigJxUaGUgTGl0dGxlIFByaW5jZeKAnSwgYW5kIG5vdCBzb21lIGxpdHRsZSBwcmluY2Ug aGltc2VsZi4gVGhlIGNtYXZvIOKAmOKAmWx14oCZZeKAmeKAmSBkb2VzIHRoZSBleGFjdCByZXZl cnNlIOKAkyDigJjigJlsdeKAmWUgU1VNVEnigJnigJkgcmVmZXJzIHRvIGFuIG9iamVjdCB3aGlj aCByZWZlcnMgdG8gdGhlIHN1bXRpLiAKCl9f4oCZ4oCZbGHigJll4oCZ4oCZX18gLSDigJx0aGUg dGhpbmcgcmVmZXJyZWQgdG8gYnnigJ0gLSBleHRyYWN0cyBhIHN1bXRpIEEgZnJvbSBhIHN1bXRp IEIgd2hpY2ggcmVmZXJzIHRvIEEuIAoKX1/igJnigJlsdeKAmWXigJnigJlfXyAtIOKAnHRoZSB0 aGluZyByZWZlcnJpbmcgdG/igJ0gLSBleHRyYWN0cyBhIHN1bXRpIEIgZnJvbSBhIHN1bXRpIEEs IHdoZW4gQiByZWZlcnMgdG8gQS4KCgoKCgohISFFbmQgb2YgcGFydCBvbmUKCkR1ZSB0byB0aGUg aW1wcmFjdGljYWxseSBsYXJnZSBzaXplIG9mIHRoZXNlIGxlc3NvbnMsIHRoZSBzZWNvbmQgaW5z dGFsbG1lbnQgY2FuIGJlIGZvdW5kIG9uIGEgKCh3YXZlbGVzc29uc2NvbnRpbnVlZHAyfHNlcGFy YXRlIHBhZ2UpKS4gTm8gd29ycmllcywgdGhvdWdoLCBjbGlja2luZyBvbiAic2VwYXJhdGUgcGFn ZSIgd2lsbCB0YWtlIHlvdSB0aGVyZSBwYWlubGVzc2x5LgoKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCldpa2luZXVyb3RpYyBtYWlsaW5nIGxpc3QKV2lr aW5ldXJvdGljQGxvamJhbi5vcmcKaHR0cDovL21haWwubG9qYmFuLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3dpa2luZXVyb3RpYwo=