Received: from localhost ([::1]:33840 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1SA2Ng-0001wY-VD; Tue, 20 Mar 2012 09:57:57 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:53542 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1SA2NX-0001wQ-BJ for wikineurotic@lojban.org; Tue, 20 Mar 2012 09:57:54 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Tue, 20 Mar 2012 09:57:47 -0700 From: "Apache" Date: Tue, 20 Mar 2012 09:57:47 -0700 To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 2.6 (++) X-Spam_score: 2.6 X-Spam_score_int: 26 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 klaki at 16:57 UTC You can view the page by following this link: http://www.lojban.org/tiki/wavelessonscontinued [...] Content analysis details: (2.6 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 0.6 TO_NO_BRKTS_DYNIP To: misformatted and dynamic rDNS Subject: [Wikineurotic] Wiki page wavelessonscontinued changed by klaki 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 VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWQgd2FzIGNoYW5nZWQgYnkga2xha2kgYXQgMTY6 NTcgVVRDCgpZb3UgY2FuIHZpZXcgdGhlIHBhZ2UgYnkgZm9sbG93aW5nIHRoaXMgbGluazoKIApo dHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS93YXZlbGVzc29uc2NvbnRpbnVlZAoKWW91IGNhbiB2 aWV3IGEgZGlmZiBiYWNrIHRvIHRoZSBwcmV2aW91cyB2ZXJzaW9uIGJ5IGZvbGxvd2luZyB0aGlz IGxpbms6IApodHRwOi8vd3d3LmxvamJhbi5vcmcvdGlraS90aWtpLXBhZ2VoaXN0b3J5LnBocD9w YWdlPXdhdmVsZXNzb25zY29udGludWVkJmNvbXBhcmU9MSZvbGR2ZXI9MTkmbmV3dmVyPTIwCgoK KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioKVGhlIGNoYW5nZXMgaW4gdGhpcyB2ZXJzaW9uIGZvbGxvdyBiZWxvdywgZm9sbG93ZWQgYWZ0 ZXIgYnkgdGhlIGN1cnJlbnQgZnVsbCBwYWdlIHRleHQuCioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoKKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAgLUxpbmVzOiA4MTkt ODIxIGNoYW5nZWQgdG8gK0xpbmVzOiA4MTktODIxIEBACistKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCgohISFFbmQgb2YgcGFydCBvbmUK LSBEdWUgdG8gdGhlIGltcHJhY3RpY2FsbHkgbGFyZ2Ugc2l6ZSBvZiB0aGVzZSBsZXNzb25zLCB0 aGUgc2Vjb25kIGluc3RhbGxtZW50IGNhbiBiZSBmb3VuZCBvbiBhICgod3d3LmxvamJhbi5vcmcv d2F2ZWxlc3NvbnNjb250aW51ZWRwMnxzZXBlcmF0ZSBwYWdlKSkuIE5vIHdvcnJpZXMsIHRob3Vn aCwgY2xpY2tpbmcgb24gJnF1b3Q7c2VwZXJhdGUgcGFnZSZxdW90OyB3aWxsIHRha2UgeW91IHRo ZXJlIHBhaW5sZXNzbHkuCisgRHVlIHRvIHRoZSBpbXByYWN0aWNhbGx5IGxhcmdlIHNpemUgb2Yg dGhlc2UgbGVzc29ucywgdGhlIHNlY29uZCBpbnN0YWxsbWVudCBjYW4gYmUgZm91bmQgb24gYSAo KHdhdmVsZXNzb25zY29udGludWVkcDJ8c2VwZXJhdGUgcGFnZSkpLiBObyB3b3JyaWVzLCB0aG91 Z2gsIGNsaWNraW5nIG9uICZxdW90O3NlcGVyYXRlIHBhZ2UmcXVvdDsgd2lsbCB0YWtlIHlvdSB0 aGVyZSBwYWlubGVzc2x5LgoKCgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioKVGhlIG5ldyBwYWdlIGNvbnRlbnQgZm9sbG93cyBiZWxv dy4KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioKCiFMb2piYW4gV2F2ZSBMZXNzb25zIENvbnRpbnVlZDoKCiEhIWJ5IGxhIGtsYWt1IHdp dGggaGVscCBmcm9tIGxhIC5rcmliYWNyLiwgbGEgeGFsYm8gYW5kIG90aGVycywgYXV0dW1uIDIw MTEuCgoKCiEhbGVzc29uIHplcm86IEZvcmV3b3JkCgpUaGVzZSBsZXNzb25zIGFyZSBhbiBhdHRl bXB0IHRvIGV4cGFuZCBvbiB0aGUgR29vZ2xlIFdhdmUgTGVzc29ucywgYW4gZXhjZWxsZW50IExv amJhbiB0dXRvcmlhbCBieSBrcmliYWNyLCB4YWxibywgYW5kIG90aGVycywgd2hpY2ggc2FkbHkg b25seSBjb3ZlcmVkIHRoZSBmaXJzdCBmb3VyIGNoYXB0ZXJzIGluIHRoaXMgdHV0b3JpYWwuIEl0 IGltcGxlbWVudHMgdGhlIG5ld2VzdCBydWxlcyBvZiBMb2piYW4gbm90IGNvdmVyZWQgYnkgb2xk ZXIgbWF0ZXJpYWxzIHN1Y2ggYXMgV2hhdCBpcyBMb2piYW4/IGFuZCBMb2piYW4gZm9yIEJlZ2lu bmVycy4KCgoKSWYgeW91IGFyZSBuZXcgdG8gTG9qYmFuLCBJIHJlY29tbWVuZCBsaXN0ZW5pbmcg dG8gYW55IHJlY29yZGluZ3MgeW91IGNhbiBmaW5kIG9mIHNwb2tlbiBMb2piYW4gYm90aCBiZWZv cmUgYW5kIHdoaWxlIHlvdSBhcmUgdGFraW5nIHRoaXMgdHV0b3JpYWwsIGluIG9yZGVyIHRvIG1h a2UgeW91cnNlbGYgZmFtaWxpYXIgd2l0aCB0aGUgc291bmRzIGFuZCB3b3JkcyBvZiB0aGUgbGFu Z3VhZ2UsIHdoaWNoIHdpbGwgbm90IGJlIGV4cGxhaW5lZCBoZXJlLiBGdXJ0aGVybW9yZSwgdHJ5 IHRvIHNheSB0aGUgdGhpbmdzIHlvdSByZWFkIGluIExvamJhbiBhY2NlbnQgaWYgaXTigJlzIHJl YXNvbmFibHkgcHJhY3RpY2FsLiBUaGlzIGNhbiBoZWxwIHlvdXIgcHJvbnVuY2lhdGlvbiBhIGxv dC4KCgoKV2hlbiB0YWtpbmcgdGhpcyB0dXRvcmlhbCwgaXTigJlzIGJlc3QgdG8gcGF1c2UgYmV0 d2VlbiBsZXNzb25zIGluIG9yZGVyIHRvIGludGVybmFsaXplIHdoYXQgeW91IGhhdmUgbGVhcm50 LiBJIGhhdmUgYXR0ZW1wdGVkIHRvIGJ1aWxkIHRoZXNlIGxlc3NvbnMgZnJvbSB0aGUgYm90dG9t IHVwIGFuZCBleGNsdWRlIGFueSB3b3JkcyBvciBjb25jZXB0cyB0aGF0IGhhdmUgbm90IGJlZW4g ZXhwbGFpbmVkIGluIHByZXZpb3VzIGxlc3NvbnMuIE9uY2UgZXhwbGFpbmVkLCB0aGV5IGFyZSB1 c2VkIGZyZWVseSB0aHJvdWdob3V0IHRoZSByZW1haW5kZXIgb2YgdGhlIHR1dG9yaWFsLiBJIHVy Z2UgcmVhZGVycyBub3QgdG8gcGFzcyBhbnkgbWlzdW5kZXJzdG9vZCBjb250ZW50OyBpZiB5b3Ug aGF2ZSBxdWVzdGlvbnMgb3IgYXJlIHVuY2VydGFpbiBhYm91dCBzb21ldGhpbmcsIGZlZWwgZnJl ZSB0byBhc2sgdGhlIExvamJhbiBjb21tdW5pdHksIHdoaWNoIGNhbiBiZSBmb3VuZCBpbiAjbG9q YmFuIG9uIHRoZSBGcmVlbm9kZSBJUkMgbmV0d29yay4gVGhleSB3aWxsIGJlIGhhcHB5IHRvIGhl bHAuCgoKCkluIHRoaXMgdHV0b3JpYWwsIExvamJhbiB0ZXh0IGlzIHdyaXR0ZW4gaW4gJydpdGFs aWNzJycuIExhdGVyLCB3aGVuIHVzZWQgYXMgTG9qYmFuIGxvYW53b3JkcyBpbiBFbmdsaXNoIHNl bnRlbmNlcywgdGhleSBhcmUgbm90IG1hcmtlZC4gQW5zd2VycyB0byBleGVyY2lzZXMgYXJlIGRp c3BsYXllZCBhcyBhIGdyZXkgYmFyLiBIaWdobGlnaHQgdGhlIHRleHQgaW4gb3JkZXIgdG8gc2Vl IGl0LgoKCgpMYXN0bHksIEkgaGF2ZSBhcyBmYXIgYXMgcG9zc2libGUgYXR0ZW1wdGVkIHRvIHVz ZSB0aGUgTG9qYmFuIHdvcmRzIGZvciBncmFtbWF0aWNhbCBjb25zdHJ1Y3RzOiAnJ3N1bWth4oCZ aScnIGluc3RlYWQgb2YgcHJvLXN1bXRpLCAnJ3N1bXRjaXRhJycgaW5zdGVhZCBvZiBtb2RhbCBh bmQgJydqdWZyYScnIGluc3RlYWQgb2YgdXR0ZXJhbmNlLiBUaGlzIGlzIGJlY2F1c2UgSSBmZWVs IHRoZSBFbmdsaXNoIHdvcmRzIGFyZSBvZnRlbiBlaXRoZXIgYXJiaXRyYXJ5LCBpbiB3aGljaCBj YXNlIHRoZXkgYXJlIGp1c3QgbW9yZSB3b3JkcyB0byBsZWFybiwgb3IgbWlzbGVhZGluZywgaW4g d2hpY2ggY2FzZSB0aGV5IGFyZSB3b3JzZSB0aGFuIHVzZWxlc3MuIEluIGVpdGhlciBjYXNlLCBh cyBsb25nIGFzIHRoZSB3b3JkcyBhcmUgc3BlY2lmaWMgdG8gdGhvc2Ugd2hvIGFyZSBsZWFybmlu ZyBMb2piYW4gYW55d2F5LCB0aGVyZSBpcyBubyByZWFzb24gZm9yIHRoZW0gdG8gZXhpc3QgYXMg c2VwYXJhdGUgRW5nbGlzaCB3b3Jkcy4KCgoKCgohIUxvamJhbiBMZXNzb25zIOKAkyBsZXNzb24g b25lIChicmlkaSwganVmcmEsIHN1bXRpIGFuZCBzZWxicmkpCgpBICcnYnJpZGknJyBpcyB0aGUg bW9zdCBjZW50cmFsIHVuaXQgb2YgTG9qYmFuIHV0dGVyYW5jZXMuIFRoZSBjb25jZXB0IGlzIHZl cnkgY2xvc2UgdG8gd2hhdCB3ZSBjYWxsIGEgcHJvcG9zaXRpb24gaW4gRW5nbGlzaC4gQSAnJ2Jy aWRpJycgaXMgYSBjbGFpbSB0aGF0IHNvbWUgb2JqZWN0cyBzdGFuZCBpbiBhIHJlbGF0aW9uIHRv IGVhY2ggb3RoZXIsIG9yIHRoYXQgYW4gb2JqZWN0IGhhcyBzb21lIHByb3BlcnR5LiBUaGlzIHN0 YW5kcyBpbiBjb250cmFzdCB0byAnJ2p1ZnJhJycsIHdoaWNoIGFyZSBtZXJlbHkgTG9qYmFuIHV0 dGVyYW5jZXMsIHdoaWNoIGNhbiBiZSAnJ2JyaWRpJycgb3IgYW55dGhpbmcgZWxzZSBiZWluZyBz YWlkLiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgJydicmlkaScnIGFuZCBhICcnanVmcmEnJyBp cyB0aGF0IGEgJydqdWZyYScnIGRvZXMgbm90IG5lY2Vzc2FyaWx5IHN0YXRlIGFueXRoaW5nLCB3 aGlsZSBhICcnYnJpZGknJyBkb2VzLiBUaHVzLCBhICcnYnJpZGknJyBtaWdodCBiZSB0cnVlIG9y IGZhbHNlLCB3aGlsZSBub3QgYWxsICcnanVmcmEnJyBjYW4gYmUgc2FpZCB0byBiZSBzdWNoLgoK VG8gaGF2ZSBzb21lIGV4YW1wbGVzIChpbiBFbmdsaXNoLCB0byBiZWdpbiB3aXRoKSwg4oCcTW96 YXJ0IHdhcyB0aGUgZ3JlYXRlc3QgbXVzaWNpYW4gb2YgYWxsIHRpbWXigJ0gaXMgYSAnJ2JyaWRp JycsIGJlY2F1c2UgaXQgbWFrZXMgYSBjbGFpbSB3aXRoIGEgdHJ1dGggdmFsdWUsIGFuZCBpdCBp bnZvbHZlcyBhbiBvYmplY3QsIE1vemFydCwgYW5kIGEgcHJvcGVydHksIGJlaW5nIHRoZSBncmVh dGVzdCBtdXNpY2lhbiBvZiBhbGwgdGltZS4gT24gdGhlIGNvbnRyYXJ5LCDigJxPdyEgTXkgdG9l IeKAnSBpcyBub3QgYSAnJ2JyaWRpJycsIHNpbmNlIGl0IGRvZXMgbm90IGludm9sdmUgYSByZWxh dGlvbiwgYW5kIHRodXMgZG9lcyBub3Qgc3RhdGUgYW55dGhpbmcuIEJvdGgsIHRob3VnaCwgYXJl ICcnanVmcmEnJy4KClRyeSB0byBpZGVudGlmeSB0aGUgJydicmlkaScnIGFtb25nIHRoZXNlIEVu Z2xpc2ggJydqdWZyYScnOgoKCgojIOKAnEkgaGF0ZSBpdCB3aGVuIHlvdSBkbyB0aGF0LuKAnQoK IyDigJxSdW5zLuKAnQoKIyDigJxXb2FoLCB0aGF0IGxvb2tzIGRlbGljaW91cyHigJ0KCiMg4oCc R2Vleiwgbm90IGFnYWluLuKAnQoKIyDigJxObywgSSBvd24gdGhyZWUgY2Fyc+KAnQoKIyDigJxO aW5ldGVlbiBtaW51dGVzIHBhc3QgZWlnaHQu4oCdCgojIOKAnFRoaXMgU2F0dXJkYXksIHllcy7i gJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleToxLCAzIGFuZCA1IGFyZSBicmlkaS4gMiBjb250YWlu cyBubyBvYmplY3RzIGFuZCB0aGUgcmVzdCBjb250YWluIG5vIHJlbGF0aW9uIG9yIGNsYWltIG9m IGEgcHJvcGVydHkufn4KCgoKUHV0IGluIExvamJhbiB0ZXJtcywgYSAnJ2JyaWRpJycgY29uc2lz dHMgb2Ygb25lICcnc2VsYnJpJycsIGFuZCBvbmUgb3IgbW9yZSAnJ3N1bXRpJycuIFRoZSAnJ3Nl bGJyaScnIGlzIHRoZSByZWxhdGlvbiBvciBjbGFpbSBhYm91dCB0aGUgb2JqZWN0LCBhbmQgdGhl ICcnc3VtdGknJyBhcmUgdGhlIG9iamVjdHMgd2hpY2ggYXJlIGluIGEgcmVsYXRpb24uIE5vdGUg dGhhdCDigJxvYmplY3TigJ0gaXMgbm90IGEgcGVyZmVjdCB0cmFuc2xhdGlvbiBvZiDigJxzdW10 aeKAnSwgc2luY2Ug4oCcc3VtdGnigJ0gY2FuIHJlZmVyIHRvIG5vdCBqdXN0IHBoeXNpY2FsIG9i amVjdHMsIGJ1dCBjYW4gYWxzbyBwdXJlbHkgYWJzdHJhY3QgdGhpbmdzIGxpa2Ug4oCcVGhlIGlk ZWEgb2Ygd2FyZmFyZeKAnS4gQSBiZXR0ZXIgdHJhbnNsYXRpb24gd291bGQgYmUgc29tZXRoaW5n IGxpa2Ug4oCcc3ViamVjdCwgZGlyZWN0IG9yIGluZGlyZWN0IG9iamVjdOKAnSBmb3Igc3VtdGks IGFuZCDigJx2ZXJi4oCdIGZvciBzZWxicmksIHRob3VnaCwgYXMgd2Ugd2lsbCBzZWUsIHRoaXMg aXMgbm90IG9wdGltYWwgZWl0aGVyLgoKV2UgY2FuIG5vdyB3cml0ZSB0aGUgZmlyc3QgaW1wb3J0 YW50IGxlc3NvbiBkb3duOgoKJydicmlkaScnID0gJydzZWxicmknJyArIG9uZSBvciBtb3JlICcn c3VtdGknJwoKUHV0IGFub3RoZXIgd2F5LCBhICcnYnJpZGknJyBzdGF0ZXMgdGhhdCBzb21lICcn c3VtdGknJyBkby9hcmUgc29tZXRoaW5nIGV4cGxhaW5lZCBieSBhICcnc2VsYnJpJycuCgoKCklk ZW50aWZ5IHRoZSAnJ3N1bXRpJycgYW5kICcnc2VsYnJpJycgZXF1aXZhbGVudHMgaW4gdGhlc2Ug RW5nbGlzaCAnJ2p1ZnJhJyc6CgrigJxJIHdpbGwgcGljayB1cCBteSBkYXVnaHRlcnMgd2l0aCBt eSBjYXLigJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTpzZWxicmk6IOKAnHBpY2sgdXAgKHdpdGgp 4oCdLiBzdW10aTog4oCcSeKAnSwg4oCcbXkgZGF1Z2h0ZXJz4oCdLCDigJxteSBjYXLigJ1+fgoK CgrigJxIZSBib3VnaHQgc2l4dGVlbiBuZXcgc2hpcnRzIGZyb20gTGVhJkxldnnigJlzIGZvciBq dXN0IHR3byBodW5kcmVkIGV1cm8h4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6c2VsYnJpOiDi gJxib3VnaHQgKGZyb20pIChmb3Ip4oCdIHN1bXRpOiDigJxIZeKAnSwg4oCcc2l4dGVlbiBuZXcg c2hpcnRz4oCdLCDigJxMZWEmTGV3aXPigJ0gYW5kIOKAnHR3byBodW5kcmVkIGV1cm9z4oCdfn4K CgoKU2luY2UgdGhlc2UgY29uY2VwdHMgYXJlIHNvIGZ1bmRhbWVudGFsIHRvIExvamJhbiwgbGV0 4oCZcyBoYXZlIGEgdGhpcmQgZXhhbXBsZTog4oCcU28gZmFyLCB0aGUgRVBBIGhhdmUgZG9uZSBu b3RoaW5nIGFib3V0IHRoZSBhbW91bnQgb2Ygc3VscGh1ciBkaW94aWRlIGluIHRoZSBhaXIu4oCd CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6c2VsYnJpOiDigJxoYXZlIGRvbmUgKGFib3V0KeKAnSBz dW10aTog4oCcVGhlIEVQQeKAnSwg4oCcbm90aGluZ+KAnSBhbmQg4oCcdGhlIGFtb3VudCBvZiBz dWxwaG9yIGRpb3hpZGUgaW4gdGhlIGFpcuKAnX5+CgoKCk5vdyB0cnkgYmVnaW4gbWFraW5nIExv amJhbiAnJ2JyaWRpJycuIEZvciB0aGlzIHlvdSB3aWxsIG5lZWQgdG8gdXNlIHNvbWUgd29yZHMs IHdoaWNoIGNhbiBhY3QgYXMgJydzZWxicmknJzoKCicnX19kdW5kYV9fJycgeDEgZ2l2ZXMgeDIg dG8geDMgKHdpdGhvdXQgcGF5bWVudCkKCicnX19wZWx4dV9fJycgeDEgaXMgeWVsbG93CgonJ19f emRhbmlfXycnIHgxIGlzIGEgaG9tZSBvZiB4MgoKCgpOb3RpY2UgdGhhdCB0aGVzZSB3b3JkcyBt ZWFuaW5nIOKAnGdpdmXigJ0sIOKAnHllbGxvd+KAnSBhbmQg4oCcaG9tZeKAnSB3b3VsZCBiZSBj b25zaWRlcmVkIGEgdmVyYiwgYW4gYWRqZWN0aXZlIGFuZCBhIG5vdW4gaW4gRW5nbGlzaC4gSW4g TG9qYmFuLCB0aGVyZSBhcmUgbm8gc3VjaCBjYXRlZ29yaWVzIGFuZCBubyBzdWNoIGRpc3RpbmN0 aW9uLiAnJ2R1bmRhJycgY2FuIGJlIHRyYW5zbGF0ZWQg4oCcZ2l2ZXPigJ0gKHZlcmIpLCDigJxp cyBhIGdpdmVy4oCdIChub3VuKSwg4oCcaXMgZ2l2aW5n4oCdIChhZGplY3RpdmUpIGFzIHdlbGwg YXMgdG8gYW4gYWR2ZXJiIGZvcm0uIFRoZXkgYWxsIGFjdCBhcyAnJ3NlbGJyaScnLCBhbmQgYXJl IHVzZWQgaW4gdGhlIHNhbWUgd2F5LgoKCgpBcyB3ZWxsIGFzIGEgZmV3IHdvcmRzLCB3aGljaCBj YW4gYWN0IGFzIHN1bXRpOgoKJydfX21pX18nJyDigJxJ4oCdIG9yIOKAnFdl4oCdIOKAkyB0aGUg b25lIG9yIHRob3NlIHdobyBhcmUgc3BlYWtpbmcuCgonJ19fdGlfXycnIOKAnHRoaXPigJ0g4oCT IGEgY2xvc2UgdGhpbmcgb3IgZXZlbnQgbmVhcmJ5IHdoaWNoIGNhbiBiZSBwb2ludGVkIHRvIGJ5 IHRoZSBzcGVha2VyLgoKJydfX2RvX18nJyDigJx5b3XigJ0g4oCTIHRoZSBvbmUgb3IgdGhvc2Ug d2hvIGFyZSBiZWluZyBzcG9rZW4gdG8uCgoKClNlZSB0aGUgc3RyYW5nZSB0cmFuc2xhdGlvbnMg b2YgdGhlICcnc2VsYnJpJycgYWJvdmUgLSBlc3BlY2lhbGx5IHRoZSB4MSwgeDIgYW5kIHgzPyBU aG9zZSBhcmUgY2FsbGVkIHN1bXRpIHBsYWNlcy4gVGhleSBhcmUgcGxhY2VzIHdoZXJlICcnc3Vt dGknJyBjYW4gZ28gdG8gZmlsbCBhICcnYnJpZGknJy4gRmlsbGluZyBhICcnc3VtdGknJyBpbiBh IHBsYWNlIHN0YXRlcyB0aGF0IHRoZSAnJ3N1bXRpJycgZml0cyBpbiB0aGF0IHBsYWNlLiBUaGUg c2Vjb25kIHBsYWNlIG9mICcnZHVuZGEnJywgZm9yIGV4YW1wbGUsIHgyLCBpcyB0aGUgdGhpbmcg YmVpbmcgZ2l2ZW4uIFRoZSB0aGlyZCBpcyB0aGUgb2JqZWN0IHdoaWNoIHJlY2VpdmVzIHRoZSB0 aGluZy4gTm90aWNlIGFsc28gdGhhdCB0aGUgdHJhbnNsYXRpb24gb2YgJydkdW5kYScnIGhhcyB0 aGUgd29yZCDigJx0b+KAnSBpbiBpdC4gVGhpcyBpcyBiZWNhdXNlLCB3aGlsZSB0aGlzIHdvcmQg aXMgbmVlZGVkIGluIEVuZ2xpc2ggdG8gc2lnbmlmeSB0aGUgcmVjZWl2ZXIsIHRoZSByZWNlaXZl ciBpcyBpbiB0aGUgdGhpcmQgc3VtdGkgcGxhY2Ugb2YgJydkdW5kYScnLiBTbyB3aGVuIHlvdSBm aWxsIHRoZSB0aGlyZCBzdW10aSBwbGFjZSBvZiAnJ2R1bmRhJycsIHRoZSAnJ3N1bXRpJycgeW91 IGZpbGwgaW4gaXMgYWx3YXlzIHRoZSByZWNlaXZlciwgYW5kIHlvdSBkb27igJl0IG5lZWQgYW4g ZXF1aXZhbGVudCB0byB0aGUgd29yZCDigJx0b+KAnSEKCgoKVG8gc2F5IGEgJydicmlkaScnLCB5 b3Ugc2ltcGx5IHNheSB0aGUgeDEgc3VtdGkgZmlyc3QsIHRoZW4gdGhlIHNlbGJyaSwgdGhlbiBh bnkgb3RoZXIgc3VtdGkuCgpVc3VhbCBicmlkaTogW3gxIHN1bXRpXSBfX1tzZWxicmldX18gW3gy IHN1bXRpXSBbeDMgc3VtdGldIFt4NCBzdW10aV0gW3g1IHN1bXRpXSBbYW5kIHNvIG9uXQoKVGhl IG9yZGVyIGNhbiBiZSBwbGF5ZWQgYXJvdW5kIHdpdGgsIGJ1dCBmb3Igbm93LCB3ZSBzdGljayB3 aXRoIHRoZSB1c3VhbCBmb3JtLiBUbyBzYXkg4oCcSSBnaXZlIHRoaXMgdG8geW914oCdIHlvdSBq dXN0IHNheSAnJ21pIGR1bmRhIHRpIGRvJycsIHdpdGggdGhlIHRocmVlICcnc3VtdGknJyBhdCB0 aGUgcmlnaHQgcGxhY2VzLgoKCgpTbywgaG93IHdvdWxkIHlvdSBzYXkg4oCcVGhpcyBpcyBhIGhv bWUgb2YgbWXigJ0/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd0aSB6ZGFuaSBtaScnfn4KCgoK VHJ5IGEgZmV3IG1vcmUgaW4gb3JkZXIgdG8gZ2V0IHRoZSBpZGVhIG9mIGEgcGxhY2Ugc3RydWN0 dXJlIHNpbmsgaW4uCgoKCuKAnFlvdSBnaXZlIHRoaXMgdG8gbWXigJ0/CgoKCkFuc3dlcjogfn5n cmV5LGdyZXk6JydkbyBkdW5kYSB0aSBtaScnfn4KCgoKQW5kIHRyYW5zbGF0ZSAnJ3RpIHBlbHh1 JycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxUaGlzIGlzIHllbGxvdy7igJ1+fgoKCgpRdWl0 ZSBlYXN5IG9uY2UgeW91IGdldCB0aGUgaGFuZyBvZiBpdCwgcmlnaHQ/CgoKCk11bHRpcGxlICcn YnJpZGknJyBhZnRlciBlYWNoIG90aGVyIGFyZSBzZXBhcmF0ZWQgYnkgJycuaScnIFRoaXMgaXMg dGhlIExvamJhbiBlcXVpdmFsZW50IG9mIGZ1bGwgc3RvcCwgYnV0IGl0IHVzdWFsbHkgZ29lcyBi ZWZvcmUgJydicmlkaScnIGluc3RlYWQgb2YgYWZ0ZXIgdGhlbS4gSXTigJlzIG9mdGVuIGxlZnQg b3V0IGJlZm9yZSB0aGUgZmlyc3QgJydicmlkaScnLCB0aG91Z2gsIGFzIGluIGFsbCB0aGVzZSBl eGFtcGxlczoKCicnX19pX18nJyBTZXRlbmNlIHNlcGVyYXRvci4gU2VwZXJhdGVzIGFueSB0d28g JydqdWZyYScnIChhbmQgdGhlcmVmb3JlIGFsc28gJydicmlkaScnKS4KCgoKJyd0aSB6ZGFuaSBt aSAgLmkgdGkgcGVseHUnJyDigJ1UaGlzIGlzIGEgaG9tZSB0byBtZS4gVGhpcyBpcyB5ZWxsb3cu 4oCdCgoKCkJlZm9yZSB5b3UgbW92ZSBvbiB0byB0aGUgbmV4dCBsZXNzb24sIEkgcmVjb21tZW5k IHRoYXQgeW91IHRha2UgYSBicmVhayBmb3IgYXQgbGVhc3Qgc2V2ZW4gbWludXRlcyB0byBsZXQg dGhlIGluZm9ybWF0aW9uIHNpbmsgaW4uCgoKCgoKISFMb2piYW4gTGVzc29ucyDigJMgbGVzc29u IHR3byAoRkEgYW5kIHpv4oCZZSkKCk1vc3Qgc2VsYnJpIGhhdmUgZnJvbSBvbmUgdG8gZml2ZSBz dW10aSBwbGFjZXMsIGJ1dCBzb21lIGhhdmUgbW9yZS4gSGVyZSBpcyBhIHNlbGJyaSB3aXRoIGZv dXIgc3VtdGkgcGxhY2VzOgoKJydfX3ZlY251X18nJyB4MSBzZWxscyB4MiB0byB4MyBmb3IgcHJp Y2UgeDQKCgoKSWYgSSB3YW50IHRvIHNheSDigJxJIHNlbGwgdGhpc+KAnSwgaXQgd291bGQgYmUg dG9vIG11Y2ggdG8gaGF2ZSB0byBmaWxsIHRoZSBzdW10aSBwbGFjZXMgeDMgYW5kIHg0LCB3aGlj aCBzcGVjaWZ5IHdobyBJIHNlbGwgdGhlIHRoaW5nIHRvLCBhbmQgZm9yIHdoYXQgcHJpY2UuIEx1 Y2tpbHksIEkgZG9u4oCZdCBuZWVkIHRvLiBzdW10aSBwbGFjZXMgY2FuIGJlIGZpbGxlZCB3aXRo ICcnem/igJllJycuICcnem/igJllJycgaW5kaWNhdGVzIHRvIHVzIHRoYXQgdGhlIHZhbHVlIG9m IHRoZSBzdW10aSBwbGFjZSBpcyB1bnNwZWNpZmllZCBiZWNhdXNlIGl04oCZcyB1bmltcG9ydGFu dCBvciBjYW4gYmUgZGV0ZXJtaW5lZCBmcm9tIGNvbnRleHQuCgonJ19fem/igJllX18nJyDigJxz b21ldGhpbmfigJ0gRmlsbHMgYSBzdW10aSBwbGFjZSB3aXRoIHNvbWV0aGluZywgYnV0IGRvZXMg bm90IHN0YXRlIHdoYXQuCgoKClNvIHRvIHNheSDigJxJIHNlbGwgdG8geW914oCdLCBJIGNvdWxk IHNheSAnJ21pIHZlY251IHpv4oCZZSBkbyB6b+KAmWUnJyDigJMgSSBzZWxsIHNvbWV0aGluZyB0 byB5b3UgZm9yIHNvbWUgcHJpY2UuCgpIb3cgd291bGQgeW91IHNheTog4oCcVGhhdOKAmXMgYSBo b21lIChmb3Igc29tZWJvZHkp4oCdPwoKCgp+fmdyZXksZ3JleTpBbnN3ZXI6ICcndGkgemRhbmkg em/igJllJyd+fgoKCgpIb3cgYWJvdXQg4oCcKHNvbWVvbmUpIGdpdmVzIHRoaXMgdG8gKHNvbWVv bmUp4oCdPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5Oicnem/igJllIGR1bmRhIHRpIHpv4oCZZScn fn4KCgoKU3RpbGwsIGZpbGxpbmcgb3V0IHRocmVlIHpv4oCZZSBqdXN0IHRvIHNheSB0aGF0IGEg dGhpbmcgaXMgYmVpbmcgc29sZCB0YWtlcyB0aW1lLiBUaGVyZWZvcmUgeW91IGRvbuKAmXQgbmVl ZCB0byB3cml0ZSBhbGwgdGhlICcnem/igJllJycgaW4gYSBicmlkaS4gVGhlIHJ1bGUgc2ltcGx5 IGlzIHRoYXQgaWYgeW91IGxlYXZlIG91dCBhbnkgc3VtdGksIHRoZXkgd2lsbCBiZSBjb25zaWRl cmVkIGFzIGlmIHRoZXkgY29udGFpbmVkICcnem/igJllJycuIElmIHRoZSBicmlkaSBiZWdpbnMg d2l0aCBhIHNlbGJyaSwgdGhlIHgxIGlzIHByZXN1bWVkIHRvIGJlIG9taXR0ZWQgYW5kIGl0IGJl Y29tZXMgJyd6b+KAmWUnJy4KClRyeSBpdCBvdXQuIFdoYXTigJlzIExvamJhbiBmb3Ig4oCcSSBz ZWxs4oCdPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgdmVjbnUnJ35+CgoKCkFuZCB3aGF0 IGRvZXMgJyd6ZGFuaSBtaScnIG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcU29tZXRo aW5nIGlzIGEgaG9tZSBvZiBtZeKAnSBvciBqdXN0IOKAnEkgaGF2ZSBhIGhvbWUu4oCdfn4KCgoK QXMgbWVudGlvbmVkIGVhcmxpZXIsIHRoZSBmb3JtIGRvZXNu4oCZdCBoYXZlIHRvIGJlIFt4MSBz dW10aV0gW3NlbGJyaV0gW3gyIHN1bXRpXSBbeDMgc3VtdGldIChlY3QuKSBJbiBmYWN0LCB5b3Ug Y2FuIHBsYWNlIHRoZSBzZWxicmkgYW55d2hlcmUgeW91IHdhbnQsIGp1c3Qgbm90IGF0IHRoZSBi ZWdpbm5pbmcgb2YgdGhlIGJyaWRpLiBJZiB5b3UgZG8gdGhhdCwgdGhlIHgxIGlzIGNvbnNpZGVy ZWQgbGVmdCBvdXQgYW5kIGZpbGxlZCB3aXRoICcnem/igJllJycgaW5zdGVhZC4gU28gdGhlIGZv bGxvd2luZyB0aHJlZSBqdWZyYSBhcmUgYWxsIHRoZSBleGFjdGx5IHNhbWUgYnJpZGk6CgonJ21p IGR1bmRhIHRpIGRvJycKCicnbWkgdGkgZHVuZGEgZG8nJwoKJydtaSB0aSBkbyBkdW5kYScnCgoK ClNvbWV0aW1lcyB0aGlzIGlzIHVzZWQgZm9yIHBvZXRpYyBlZmZlY3QuIOKAnFlvdSBzZWxsIHlv dXJzZWxm4oCdIGNvdWxkIGJlICcnZG8gZG8gdmVjbnUnJywgd2hpY2ggc291bmRzIGJldHRlciB0 aGFuICcnZG8gdmVjbnUgZG8nJy4gT3IgaXQgY2FuIGJlIHVzZWQgZm9yIGNsYXJpdHkgaWYgdGhl IHNlbGJyaSBpcyB2ZXJ5IGxvbmcgYW5kIHRoZXJlZm9yZSBiZXR0ZXIgYmUgbGVmdCBhdCB0aGUg ZW5kIG9mIHRoZSBicmlkaS4KCgoKVGhlcmUgYXJlIGFsc28gc2V2ZXJhbCB3YXlzIHRvIHBsYXkg YXJvdW5kIHdpdGggdGhlIG9yZGVyIG9mIHRoZSBzdW10aSBpbnNpZGUgdGhlIGJyaWRpLiBUaGUg bW9zdCBlYXN5IG9uZSBpcyBieSB1c2luZyB0aGUgd29yZHMgJydmYScnLCAnJ2ZlJycsICcnZmkn JywgJydmbycnIGFuZCAnJ2Z1JycuIE5vdGljZSB0aGF0IHRoZSB2b3dlbHMgYXJlIHRoZSBmaXZl IHZvd2VscyBpbiB0aGUgTG9qYmFuIGFscGhhYmV0IGluIG9yZGVyLiBVc2luZyBvbmUgb2YgdGhl c2Ugd29yZHMgbWFya3MgdGhhdCB0aGUgbmV4dCBzdW10aSB3aWxsIGZpbGwgdGhlIHgxLCB4Miwg eDMsIHg0IGFuZCB4NSByZXNwZWN0aXZlbHkuIFRoZSBuZXh0IHN1bXRpIGFmdGVyIHRoYXQgd2ls bCBiZSBwcmVzdW1lZCB0byBmaWxsIGEgc2xvdCBvbmUgZ3JlYXRlciB0aGFuIHRoZSBwcmV2aW91 cy4gVG8gdXNlIGFuIGV4YW1wbGU6CgonJ2R1bmRhIGZhIGRvIGZlIHRpIGRvJycg4oCTIOKAnEdp dmluZyBieSB5b3Ugb2YgdGhpcyB0aGluZyB0byB5b3XigJ0uICcnZmEnJyBtYXJrcyB0aGUgeDEs IHRoZSBnaXZlciwgd2hpY2ggaXMgeW91LiAnJ2ZlJycgbWFya3MgdGhlIHRoaW5nIGJlaW5nIGdp dmVuLCB0aGUgeDIuIFN1bXRpIGNvdW50aW5nIHRoZW4gY29udGludWVzIGZyb20gJydmZScnLCBt ZWFuaW5nIHRoYXQgdGhlIGxhc3Qgc3VtdGkgZmlsbHMgeDMsIHRoZSBvYmplY3QgcmVjZWl2aW5n LgoKCgpBdHRlbXB0IHRvIHRyYW5zbGF0ZSB0aGUgZm9sbG93aW5nIHRocmVlIHNlbnRlbmNlczoK CgoKJydtaSB2ZWNudSBmbyB0aSBmZSBkbycnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCdSSBz ZWxsLCBmb3IgdGhlIHByaWNlIG9mIHRoaXMsIHlvdeKAnS4gb3Ig4oCcSSBzZWxsIHlvdSBmb3Ig dGhlIHByaWNlIG9mIHRoaXPigJ0gKHByb2JhYmx5IHBvaW50aW5nIHRvIGEgYnVuY2ggb2YgbW9u ZXkpfn4KCgoKJyd6ZGFuaSBmZSB0aScnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcVGhpcyBo YXMgYSBob21l4oCdLiBIZXJlLCB0aGUgZmUgaXMgcmVkdW5kYW50Ln5+CgoKCicndmVjbnUgem/i gJllIG1pIHRpIGZhIGRvJycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxZb3Ugc2VsbCBzb21l dGhpbmcgdG8gbWUgZm9yIHRoaXMgcHJpY2XigJ1+fgoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCT IGxlc3NvbiB0aHJlZSAodGFucnUgYW5kIGxvKQoKSW4gdGhpcyBsZXNzb24sIHlvdSB3aWxsIGJl Y29tZSBmYW1pbGlhciB3aXRoIHRoZSBjb25jZXB0IG9mICcndGFucnUnJy4gQSAnJ3RhbnJ1Jycg aXMgZm9ybWVkIHdoZW4gYSBzZWxicmkgaXMgcHV0IGluIGZyb250IG9mIGFub3RoZXIgc2VsYnJp LCBtb2RpZnlpbmcgaXRzIG1lYW5pbmcuIEEgJyd0YW5ydScnIGlzIGl0c2VsZiBhIHNlbGJyaSwg YW5kIGNhbiBjb21iaW5lIHdpdGggb3RoZXIgc2VsYnJpIG9yICcndGFucnUnJyB0byBmb3JtIG1v cmUgY29tcGxleCAnJ3RhbnJ1JycuIFRodXMgJyd6ZGFuaSB2ZWNudScnIGlzIGEgJyd0YW5ydScn LCBhcyB3ZWxsIGFzICAnJ3BlbHh1IHpkYW5pIHZlY251JycsIHdoaWNoIGlzIG1hZGUgZnJvbSB0 aGUgdGFucnUgJydwZWx4dSB6ZGFuaScnIGFuZCB0aGUgc2luZ2xlIGJyaXZsYSB3b3JkICcndmVj bnUnJy4gVG8gdW5kZXJzdGFuZCB0aGUgY29uY2VwdCBvZiAnJ3RhbnJ1JycsIGNvbnNpZGVyIHRo ZSBFbmdsaXNoIG5vdW4gY29tYmluYXRpb24g4oCcbGVtb24gdHJlZeKAnS4gSWYgeW91IGRpZG7i gJl0IGtub3cgd2hhdCBhIGxlbW9uIHRyZWUgd2FzLCBidXQgaGFkIGhlYXJkIGFib3V0IGJvdGgg bGVtb25zIGFuZCB0cmVlcywgeW91IHdvdWxkIG5vdCBiZSBhYmxlIHRvIGRlZHVjZSB3aGF0IGEg bGVtb24gdHJlZSB3YXMuIFBlcmhhcHMgYSBsZW1vbi1jb2xvcmVkIHRyZWUsIG9yIGEgdHJlZSBz aGFwZWQgbGlrZSBhIGxlbW9uLCBvciBhIHRyZWUgd2hvc2UgYmFyayB0YXN0ZXMgbGlrZSBsZW1v bi4gVGhlIG9ubHkgdGhpbmdzIHlvdSBjb3VsZCBrbm93IGZvciBzdXJlIHdvdWxkIGJlIHRoYXQg aXQgd291bGQgYmUgYSB0cmVlLCBhbmQgaXQgd291bGQgYmUgbGVtb24tbGlrZSBpbiBzb21lIHdh eS4KCkEgJyd0YW5ydScnIGlzIGNsb3NlbHkgYW5hbG9nb3VzIHRvIHRoaXMuIEl0IGNhbm5vdCBi ZSBzYWlkIGV4YWN0bHkgd2hhdCBhICcnemRhbmkgdmVjbnUnJyBpcywgYnV0IGl0IGNhbiBiZSBz YWlkIHRoYXQgaXQgaXMgZGVmaW5pdGVseSBhIHZlY251LCBhbmQgdGhhdCBpdOKAmXMgemRhbmkt bGlrZSBpbiBzb21lIHdheS4gQW5kIGl0IGNvdWxkIGJlIHpkYW5pLWxpa2UgaW4gYW55IHdheS4g SW4gdGhlb3J5LCBubyBtYXR0ZXIgaG93IHNpbGx5IG9yIGFic3VyZCB0aGUgY29ubmVjdGlvbiB0 byB6ZGFuaSB3YXMsIGl0IGNvdWxkIHN0aWxsIHRydWx5IGJlIGEgJyd6ZGFuaSB2ZWNudScnLiBI b3dldmVyLCBpdCBtdXN0IGFjdHVhbGx5IGJlIGEgdmVjbnUgaW4gdGhlIG9yZGluYXJ5IHNlbnNl IGluIG9yZGVyIGZvciB0aGUgJyd0YW5ydScnIHRvIGFwcGx5LiBZb3UgY291bGQgZ2xvc3MgJyd6 ZGFuaSB2ZWNudScnIGFzIOKAnGhvbWUgc2VsbGVy4oCdLCBvciBldmVuIGJldHRlciBidXQgd29y c2Ugc291bmRpbmcg4oCcYSBob21lLXR5cGUtb2Ygc2VsbGVy4oCdLiBUaGUgcGxhY2Ugc3RydWN0 dXJlIG9mIGEgJyd0YW5ydScnIGlzIGFsd2F5cyB0aGF0IG9mIHRoZSByaWdodG1vc3Qgc2VsYnJp LiBJdOKAmXMgYWxzbyBzYWlkIHRoYXQgdGhlIGxlZnQgc2VsYnJpIG1vZGlmaWVzIHRoZSByaWdo dCBzZWxicmkuCgrigJxSZWFsbHk/4oCdLCB5b3UgYXNrLCBzY2VwdGljYWxseSwg4oCcSXQgZG9l c27igJl0IG1hdHRlciBob3cgc2lsbHkgdGhlIGNvbm5lY3Rpb24gdG8gdGhlIGxlZnQgd29yZCBp biBhIHRhbnJ1IGlzLCBpdOKAmXMgc3RpbGwgdHJ1ZT8gU28gSSBjb3VsZCBjYWxsIGFsbCBzZWxs ZXJzIGZvciAnJ3pkYW5pIHZlY251JycgYW5kIHRoZW4gbWFrZSB1cCBzb21lIHNpbGx5IGV4Y3Vz ZSB3aHkgSSB0aGluayBpdOKAmXMgemRhbmktbGlrZT/igJ0KCldlbGwgeWVzLCBidXQgdGhlbiB5 b3XigJlkIGJlIGEgZGljay4gT3IgYXQgbGVhc3QgeW914oCZZCBiZSBpbnRlbnRpb25hbGx5IG1p c2xlYWRpbmcuIEluIGdlbmVyYWwsIHlvdSBzaG91bGQgdXNlIGEgJyd0YW5ydScnIHdoZW4gaXTi gJlzIG9idmlvdXMgaG93IHRoZSBsZWZ0IHdvcmQgcmVsYXRlcyB0byB0aGUgcmlnaHQuCgoKCkF0 dGVtcHQgdG8gdHJhbnNsYXRlIHRoZSBmb2xsb3dpbmc6ICcndGkgcGVseHUgemRhbmkgZG8nJwoK CgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoYXQgaXMgYSB5ZWxsb3cgaG9tZSBmb3IgeW914oCd IEFnYWluLCB3ZSBkb27igJl0IGtub3cgaW4gd2hpY2ggd2F5IGl04oCZcyB5ZWxsb3cuIFByb2Jh Ymx5IGl04oCZcyBwYWludGVkIHllbGxvdywgYnV0IHdlIGRvbuKAmXQga25vdyBmb3Igc3VyZS5+ fgoKCgonJ21pIHZlY251IGR1bmRhJycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxJIHNlbGwt bGlrZSBnaXZl4oCdLiBXaGF0IGNhbiB0aGF0IG1lYW4/IE5vIGlkZWEuIEl0IGNlcnRhaW5seSBk b2VzbuKAmXQgbWVhbiB0aGF0IHlvdSBzb2xkIHNvbWV0aGluZywgc2luY2UsIGJ5IGRlZmluaXRp b24gb2YgJydkdW5kYScnLCB0aGVyZSBjYW4gYmUgbm8gcGF5bWVudCBpbnZvbHZlZC4gSXQgaGFz IHRvIGJlIGEgZ2l2ZWF3YXksIGJ1dCBiZSBzZWxsLWxpa2UgaW4gc29tZSBhc3BlY3Qufn4KCgoK QW5kIG5vdyBmb3Igc29tZXRoaW5nIGNvbXBsZXRlbHkgZGlmZmVyZW50LiBXaGF0IGlmIEkgd2Fu dGVkIHRvIHNheSBJIHNvbGQgdG8gYSBHZXJtYW4/CgonJ19fZG90Y29fXycnIHgxIGlzIEdlcm1h bi9yZWZsZWN0cyBHZXJtYW4gY3VsdHVyZSBpbiBhc3BlY3QgeDIKCgoKSSBjYW7igJl0IHNheSAn J21pIHZlY251IHpv4oCZZSBkb3RjbycnIGJlY2F1c2UgdGhhdCB3b3VsZCBsZWF2ZSB0d28gc2Vs YnJpIGluIGEgYnJpZGksIHdoaWNoIGlzIG5vdCBwZXJtaXR0ZWQuIEkgY291bGQgc2F5ICcnbWkg ZG90Y28gdmVjbnUnJyBidXQgdGhhdCB3b3VsZCBiZSB1bm5lY2Vzc2FyeSB2YWd1ZSAtIEkgY291 bGQgc2VsbCBpbiBhIEdlcm1hbiB3YXkuLiBMaWtld2lzZSwgaWYgSSB3YW50IHRvIHNheSDigJxJ IGFtIGZyaWVuZHMgd2l0aCBhbiBBbWVyaWNhbuKAnSwgd2hhdCBzaG91bGQgSSBzYXk/CgonJ19f cGVuZG9fXycnIDF4IGlzIGEgZnJpZW5kIG9mIHgyCgonJ19fbWVya29fXycnIHgxIGlzIEFtZXJp Y2FuL3JlZmxlY3QgVVMgY3VsdHVyZSBpbiBhc3BlY3QgeDIKCgoKQWdhaW4sIHRoZSBvYnZpb3Vz IHdvdWxkIGJlIHRvIHNheSAnJ21pIHBlbmRvIG1lcmtvJycsIGJ1dCB0aGF0IHdvdWxkIGZvcm0g YSAnJ3RhbnJ1JycsIG1lYW5pbmcg4oCcSSBhbSBmcmllbmQtbGlrZSBBbWVyaWNhbuKAnSwgd2hp Y2ggaXMgd3JvbmcuIFdoYXQgd2UgcmVhbGx5IHdhbnQgdG8gaXMgdG8gdGFrZSB0aGUgc2VsYnJp ICcnbWVya28nJyBhbmQgdHJhbnNmb3JtIGl0IGludG8gYSBzdW10aSBzbyBpdCBjYW4gYmUgdXNl ZCBpbiB0aGUgc2VsYnJpICcncGVuZG8nJy4gVGhpcyBpcyBkb25lIGJ5IHRoZSB0d28gd29yZHMg JydsbycnIGFuZCAnJ2t1JycuCgpfXycnbG8nJ19fIOKAkyBnZW5lcmljIGJlZ2luIGNvbnZlcnQg c2VsYnJpIHRvIHN1bXRpIHdvcmQuIEV4dHJhY3RzIHgxIG9mIHNlbGJyaSB0byB1c2UgYXMgc3Vt dGkuCgpfXycna3UnJ19fIOKAkyBlbmQgY29udmVydCBzZWxicmkgdG8gc3VtdGkgcHJvY2Vzcy4K CgoKWW91IHNpbXBseSBwbGFjZSBhIHNlbGJyaSBiZXR3ZWVuIHRoZXNlIHR3byB3b3JkcywgYW5k IGl0IHRha2VzIGFueXRoaW5nIHRoYXQgY2FuIGZpbGwgdGhlIHgxIG9mIHRoYXQgc2VsYnJpIGFu ZCB0dXJucyBpdCBpbnRvIGEgc3VtdGkuCgpTbyBmb3IgaW5zdGFuY2UsIHRoZSB0aGluZ3MgdGhh dCBjYW4gZmlsbCB6ZGFuaeKAmHMgeDEgYXJlIG9ubHkgdGhpbmdzIHdoaWNoIGFyZSBob21lcyBv ZiBzb21lYm9keS4gU28gJydsbyB6ZGFuaSBrdScnIG1lYW5zIOKAnGEgb3Igc29tZSBob21lcyBm b3Igc29tZWJvZHku4oCdIFNpbWlsYXJseSwgaWYgSSBzYXkgdGhhdCBzb21ldGhpbmcgaXMgcGVs eHUsIGl0IG1lYW5zIGl04oCZcyB5ZWxsb3cuIFNvICcnbG8gcGVseHUga3UnJyByZWZlcnMgdG8g c29tZXRoaW5nIHllbGxvdy4KCgoKTm93IHlvdSBnb3QgdGhlIG5lY2Vzc2FyeSBncmFtbWFyIHRv IGJlIGFibGUgdG8gc2F5IOKAnEkgYW0gZnJpZW5kcyB3aXRoIGFuIEFtZXJpY2FuLuKAnSBIb3c/ CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBwZW5kbyBsbyBtZXJrbyBrdScnfn4KCgoKVGhl cmUgaXMgYSBnb29kIHJlYXNvbiB3aHkgdGhlICcna3UnJyBpcyBuZWNlc3NhcnkuIFRyeSB0byB0 cmFuc2xhdGUg4oCcQSBHZXJtYW4gc2VsbHMgdGhpcyB0byBtZeKAnQoKCgpBbnN3ZXI6IH5+Z3Jl eSxncmV5OicnbG8gZG90Y28ga3UgdmVjbnUgdGkgbWknJyBJZiB5b3UgbGVhdmUgb3V0IHRoZSBr dSwgeW91IGRvIG5vdCBnZXQgYSBicmlkaSwgYnV0IHNpbXBseSB0aHJlZSBzdW10aS4gU2luY2Ug bG/igKZrdSBjYW5ub3QgY29udmVydCBicmlkaSwgdGhlIHRpIGlzIGZvcmNlZCBvdXRzaWRlIHRo ZSBzdW10aSwgdGhlIGxvLWNvbnN0cnVjdCBpcyBmb3JjZWQgdG8gY2xvc2UgYW5kIGl0IHNpbXBs eSBiZWNvbWVzIHRoZSB0aHJlZSBzdW10aSBvZiAnJ2xvIGRvdGNvIHZlY251IFtrdV0nJywgJyd0 aScnIGFuZCAnJ21pJycufn4KCgoKWW91IGFsd2F5cyBoYXZlIHRvIGJlIGNhcmVmdWwgd2l0aCBq dWZyYSBsaWtlICcnbG8gemRhbmkga3UgcGVseHUnJy4gSWYgdGhlICcna3UnJyBpcyBsZWZ0IG91 dCB0aGUgY29udmVyc2lvbiBwcm9jZXNzIGRvZXMgbm90IGVuZCwgYW5kIGl0IHNpbXBseSBiZWNv bWVzIG9uZSBzdW10aSwgbWFkZSBmcm9tIHRoZSB0YW5ydSAnJ3pkYW5pIHBlbHh1JycgYW5kIHRo ZW4gY29udmVydGVkIHdpdGggJydsbycnLgoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIGxlc3Nv biBmb3VyIChhdHRpdHVkaW5hbHMpCgpBbm90aGVyIGNvbmNlcHQgd2hpY2ggY2FuIGJlIHVuZmFt aWxpYXIgdG8gRW5nbGlzaCBzcGVha2VyIGlzIHRoYXQgb2YgJydhdHRpdHVkaW5hbHMnJywgd2hp Y2ggIGFyZSB3b3JkcyB3aGljaCBleHByZXNzIGVtb3Rpb25zIGRpcmVjdGx5LiBUaGUgaWRlYSBv ZiAnJ2F0dGl0dWRpbmFscycnIG9yaWdpbmF0ZWQgaW4gdGhlIGZlbWluaXN0IGNvbnN0cnVjdGVk IGxhbmd1YWdlIEzDoWFkYW4sIHN1cHBvc2VkbHkgdG8gZW5hYmxlIHRydWUgZmVtYWxlIGVtb3Rp b25zLiBUaGUgaWRlYSB3YXMgdGhhdCBmZW1hbGUgZW1vdGlvbmFsIGV4cHJlc3Npb24gd2FzIGhp bmRlcmVkIGJ5IG1hbGUgZG9taW5hdGVkIGxhbmd1YWdlLCBhbmQgaWYgb25seSB0aGV5IHdlcmUg YWJsZSB0byBiZSBleHByZXNzZWQgbW9yZSBmcmVlbHksIHRoaXMgd291bGQgZW1wb3dlciB3b21l biB0aHJvdWdoIGxpYmVyYXRpb24gb2YgdGhlIGxhbmd1YWdlLgoKSW4gTG9qYmFuLCB0aGVyZSBp cyBubyBzdWNoIGFnZW5kYSwgYW5kICcnYXR0aXR1ZGluYWxzJycgbW9zdCBwcm9iYWJseSBoYXZl IGJlZW4gZGVzaWduZWQgaW50byB0aGUgbGFuZ3VhZ2UgYmVjYXVzZSB0aGV5IHR1cm5lZCBvdXQg dG8gYmUgaW5jcmVkaWJseSBhd2Vzb21lIGFuZCB1c2VmdWwuIFRoZXkgYWxsIGhhdmUgYSBzby1j YWxsZWQgZnJlZSBncmFtbWFyLCB3aGljaCBtZWFucyB0aGF0IHRoZXkgY2FuIGFwcGVhciBhbG1v c3QgYW55d2hlcmUgd2l0aGluIGJyaWRpIHdpdGhvdXQgZGlzcnVwdGluZyB0aGUgYnJpZGnigJlz IGdyYW1tYXIgb3IgYW55IGdyYW1tYXRpY2FsIGNvbnN0cnVjdHMuCgpJbiBMb2piYW4gZ3JhbW1h ciwgYW4gJydhdHRpdHVkaW5hbCcnIGFwcGxpZXMgdG8gdGhlIHByZXZpb3VzIHdvcmQuIElmIHRo YXQgcHJldmlvdXMgd29yZCBpcyBhIHdvcmQgd2hpY2ggYmVnaW5zIGEgY29uc3RydWN0IChsaWtl ICcnLmknJyBvciAnJ2xvJycpLCBpdCBhcHBsaWVzIHRvIHRoZSBlbnRpcmUgY29uc3RydWN0LiBM aWtld2lzZSwgaWYgdGhlIGF0dGl0dWRpbmFsIGZvbGxvd3MgYSB3b3JkIHdoaWNoIGVuZHMgYSBj b25zdHJ1Y3QgbGlrZSAnJ2t1JycsIGl0IGFwcGxpZXMgdG8gdGhlIGVuZGVkIGNvbnN0cnVjdC4K CgoKTGV04oCZcyBoYXZlIHR3byBhdHRpdHVkaW5hbHMgdG8gbWFrZSBzb21lIGV4YW1wbGVzOgoK X18nJy51aScnX186IGF0dGl0dWRpbmFsOiBzaW1wbGUgcHVyZSBlbW90aW9uOiBoYXBwaW5lc3Mg LSB1bmhhcHBpbmVzcwoKX18nJ3ph4oCZYScnX186IGF0dGl0dWRpbmFsOiBldmlkZW50aWFsOiBJ IGRpcmVjdGx5IG9ic2VydmUKCgoKTm90ZSB0aGF0IGluIHRoZSBkZWZpbml0aW9uIG9mICcnLnVp JycsIHRoZXJlIGFyZSBsaXN0ZWQgdHdvIGVtb3Rpb25zLCBoYXBwaW5lc3MgYW5kIHVuaGFwcGlu ZXNzLiBUaGlzIG1lYW5zIHRoYXQgLnVpIGlzIGRlZmluZWQgYXMgaGFwcGluZXNzLCB3aGlsZSBp dHMg4oCcbmVnYXRpb27igJ0sIG1lYW5zIHVuaGFwcGluZXNzLiDigJxOZWdhdGlvbuKAnSBtaWdo dCBiZSB0aGUgd3Jvbmcgd29yZCBoZXJlLiBUZWNobmljYWxseSwgdGhlIG90aGVyIGRlZmluaXRp b24gb2YgJycudWknJyBpcyBhbm90aGVyIGNvbnN0cnVjdCwgJycudWkgbmFpJycuIE1vc3Qgb2Yg dGhlIHRpbWUsIHRoZSBzZWNvbmQgZGVmaW5pdGlvbiBvZiBhdHRpdHVkaW5hbHMgLSB0aGUgb25l cyBzdWZmaXhlZCB3aXRoICcnbmFpJycgLSByZWFsbHkgaXMgdGhlIG5lZ2F0aW9uIG9mIHRoZSBi YXJlIGF0dGl0dWRpbmFsLiBPdGhlciB0aW1lcywgbm90IHNvIG11Y2guCgpfXycnbmFpJydfXyBt aXNjLiBuZWdhdGlvbiAtIGF0dGFjaGVkIHRvIGF0dGl0dWRpbmFscywgaXQgY2hhbmdlcyB0aGUg bWVhbmluZyBpbnRvIHRoZSBhdHRpdHVkaW5hbCdzICJuZWdhdGlvbiIKCgoKQW5kIHNvbWUgbW9y ZSBzZWxicmksIGp1c3QgZm9yIHRoZSBoZWNrIG9mIGl0OgoKX18nJ2NpdGthJydfXyDigJMgeDEg ZWF0cyB4MgoKX18nJ3BsaXNlJydfXyDigJMgeDEgaXMgYW4gYXBwbGUgb2Ygc3RyYWluL3R5cGUg eDIKCgoKVGhlIHNlbnRlbmNlICcnZG8gY2l0a2EgbG8gcGxpc2Uga3UgLnVpJycsIG1lYW5zIOKA nFlvdSBlYXQgYW4gYXBwbGUsIHlheSHigJ0gKGV4cHJlc3NpbmcgZXNwZWNpYWxseSB0aGF0IGl0 IGlzIHRoZSBfX2FwcGxlX18gdGhhdCB0aGUgc3BlYWtlciBpcyBoYXBweSBhYm91dCwgbm90IHRo ZSBlYXRpbmcsIG9yIHRoZSBmYWN0IHRoYXQgaXQgd2FzIHlvdS4pIEluIHRoZSBzZW50ZW5jZSAn J2RvIHph4oCZYSBjaXRrYSBsbyBwbGlzZSBrdScnLCB0aGUgc3BlYWtlciBkaXJlY3RseSBvYnNl cnZlcyB0aGF0IGl0IGlzIGluZGVlZCB0aGUgX1/igJx5b3XigJ1fXywgd2hvIGVhdHMgYW4gYXBw bGUgYXMgb3Bwb3NlZCB0byBzb21lb25lIGVsc2UuCgoKCklmIGFuICcnYXR0aXR1ZGluYWwnJyBp cyBwbGFjZWQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgYnJpZGksIGl0IGlzIHVuZGVyc3Rvb2Qg dG8gYXBwbHkgdG8gYW4gZXhwbGljaXQgb3IgaW1wbGljaXQgJycuaScnLCB0aHVzIGFwcGx5aW5n IHRvIHRoZSBlbnRpcmUgYnJpZGk6CgonJy51aSB6YeKAmWEgZG8gZHVuZGEgbG8gcGxpc2Uga3Ug bWknJyDigJMg4oCcWWF5LCBJIG9ic2VydmUgdGhhdCB5b3UgZ2l2ZSBhbi9zb21lIGFwcGxlIHRv IG1lIeKAnQoKCgonJ21pIHZlY251IC51aSBuYWkgbG8gemRhbmknJyDigJxJIHNlbGwgKHdoaWNo IHN1Y2tzISkgYSBob21l4oCdLgoKCgpUcnkgaXQgb3V0IHdpdGggYSBmZXcgZXhhbXBsZXMuIEZp cnN0LCB0aG91Z2gsIGhlcmUgYXJlIHNvbWUgbW9yZSBhdHRpdHVkaW5hbHM6CgpfXycnLnXigJl1 JydfXyBhdHRpdHVkaW5hbDogc2ltcGxlIHB1cmUgZW1vdGlvbjogZ3VpbHQgLSByZW1vcnNlbGVz c25lc3MgLSBpbm5vY2VuY2UuCgpfXycnLm9pJydfXyBhdHRpdHVkaW5hbDogY29tcGxleCBwdXJl IGVtb3Rpb246IHBhaW4gLSBjb21wbGFjZW5jeSAtIGNvbWZvcnQuCgpfXycnLml1JydfXyBhdHRp dHVkaW5hbDogbWlzY2VsbGFuZW91cyBwdXJlIGVtb3Rpb246IGxvdmUgLSBoYXRlLgoKCgpMb29r IGF0IHRoYXQsIHR3byB3b3JkcyB3aXRoIHRocmVlIGVtb3Rpb25zIGluIHRoZSBkZWZpbml0aW9u ISBUaGUgbWlkZGxlIG9uZSBpcyBhY2Nlc3NlZCBieSBzdWZmaXhpbm5nIHdpdGggJydjdeKAmWkn Jy4gSXTigJlzIGNvbnNpZGVyZWQgdGhlIG1pZHBvaW50IG9mIHRoZSBlbW90aW9uLgoKX18nJ2N1 J2knJ19fIGF0dGl0dWRpbmFsIG1pZHBvaW50IHNjYWxhcjogYXR0YWNoIHRvIGF0dGl0dWRpbmFs IHRvIGNoYW5nZSB0aGUgbWVhbmluZyBpbiAKCgoKVHJ5IHNheWluZyDigJxJIGdpdmUgc29tZXRo aW5nIHRvIGEgR2VybWFuLCB3aG8gSSBsb3Zl4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jydt aSBkdW5kYSBmaSBsbyBkb3RjbyBrdSAuaXUnJyBvciAnJ3pv4oCZZScnIGluc3RlYWQgb2YgJydm aScnfn4KCgoKTm93IOKAnEFhaCwgSSBlYXQgYSB5ZWxsb3cgYXBwbGXigJ0KCgoKQW5zd2VyOiB+ fmdyZXksZ3JleTonJy5vaSBuYWkgbWkgY2l0a2EgbG8gcGVseHUgcGxpc2Uga3UnJ35+CgoKCkxl dOKAmXMgaGF2ZSBhbm90aGVyIGF0dGl0dWRpbmFsIG9mIGEgZGlmZmVyZW50IGtpbmQgdG8gaWxs dXN0cmF0ZSBzb21ldGhpbmcgcGVjdWxpYXI6CgonJy5laScnIEF0dGl0dWRpbmFsOiBjb21wbGV4 IHByb3Bvc2l0aW9uYWwgZW1vdGlvbjogb2JsaWdhdGlvbiAtIGZyZWVkb20uCgoKClNvLCBxdWl0 ZSBlYXN5OiDigJxJIGhhdmUgdG8gZ2l2ZSB0aGUgYXBwbGUgYXdheeKAnSBpcyAnJ21pIGR1bmRh IC5laSBsbyBwbGlzZSBrdScnLCByaWdodD8gSXQgaXMsIGFjdHVhbGx5ISBXaGVuIHlvdSB0aGlu ayBhYm91dCBpdCwgdGhhdOKAmXMgd2VpcmQuIFdoeSBpcyBpdCB0aGF0IGFsbCB0aGUgb3RoZXIg YXR0aXR1ZGluYWxzIHdlIGhhdmUgc2VlbiBzbyBmYXIgZXhwcmVzc2VzIHRoZSBzcGVha2VycyBm ZWVsaW5nIGFib3V0IHRoZSBicmlkaSwgYnV0IHRoaXMgb25lIGFjdHVhbGx5IGNoYW5nZXMgd2hh dCB0aGUgYnJpZGkgbWVhbnM/IFN1cmVseSwgYnkgc2F5aW5nIOKAnEkgaGF2ZSB0byBnaXZlIHRo ZSBhcHBsZSBhd2F54oCdLCB3ZSBzYXkgbm90aGluZyBhYm91dCB3aGV0aGVyIHRoZSBhcHBsZSBh Y3R1YWxseSBpcyBiZWluZyBnaXZlbiBhd2F5LiBJZiBJIGhhZCB1c2VkICcnLnVpJycsIGhvd2V2 ZXIsIEkgd291bGQgYWN0dWFsbHkgaGF2ZSBzdGF0ZWQgdGhhdCBJIGdhdmUgdGhlIGFwcGxlIGF3 YXksIGFuZCB0aGF0IEkgd2FzIGhhcHB5IGFib3V0IGl0LiBXaGF04oCZcyB0aGF0IGFsbCBhYm91 dD8KCgoKVGhpcyBpc3N1ZSwgZXhhY3RseSBob3cgYXR0aXR1ZGluYWxzIGNoYW5nZSB0aGUgY29u ZGl0aW9ucyBvbiB3aGljaCBhIGJyaWRpIGlzIHRydWUsIGlzIGEgc3ViamVjdCBvZiBhIG1pbm9y IGRlYmF0ZS4gVGhlIG9mZmljaWFsLCDigJx0ZXh0Ym9va+KAnSBydWxlcywgd2hpY2ggcHJvYmFi bHkgd29u4oCZdCBiZSBjaGFuZ2VkLCBpcyB0aGF0IHRoZXJlIGlzIGEgZGlzdGluY3Rpb24gYmV0 d2VlbiDigJxwdXJlIGVtb3Rpb25z4oCdIGFuZCDigJxwcm9wb3NpdGlvbmFsIGVtb3Rpb25z4oCd LiBPbmx5IHByb3Bvc3Rpb25hbCBlbW90aW9ucyBjYW4gY2hhbmdlIHRoZSB0cnV0aCBjb25kaXRp b25zLCB3aGlsZSBwdXJlIGVtb3Rpb25zIGNhbm5vdC4gSW4gb3JkZXIgdG8gZXhwcmVzcyBhIHBy b3Bvc2l0aW9uYWwgZW1vdGlvbmFsIGF0dGl0dWRpbmFsIHdpdGhvdXQgY2hhbmdpbmcgdGhlIHRy dXRoIHZhbHVlIG9mIHRoZSBicmlkaSwgeW91IGNhbiBqdXN0IHNlcGFyYXRlIGl0IGZybyB0aGUg YnJpZGkgd2l0aCAnJy5pJycuIFRoZXJlIGlzIGFsc28gYSB3b3JkIGZvciBleHBsaWNpdGx5IGNv bnNlcnZpbmcgb3IgY2hhbmdpbmcgdGhlIHRydXRoIGNvbmRpdGlvbnMgb2YgYSBicmlkaToKCgoK X18nJ2Rh4oCZaScnX18gYXR0aXR1ZGluYWw6IGRpc2N1cnNpdmU6IHN1cHBvc2luZyAtIGluIGZh Y3QKClNheWluZyAnJ2Rh4oCZaScnIGluIGEgYnJpZGkgY2hhbmdlcyB0aGUgdHJ1dGggY29uZGl0 aW9ucyB0byBoeXBvdGhldGljYWwsIHdoaWNoIGlzIHRoZSBkZWZhdWx0IHVzaW5nIHByb3Bvc2l0 aW9uYWwgYXR0aXR1ZGluYWxzLiBTYXlpbmcgJydkYeKAmWkgbmFpJycgY2hhbmdlcyB0aGUgdHJ1 dGggY29uZGl0aW9uIHRvIHRoZSBub3JtYWwsIHdoaWNoIGlzIGRlZmF1bHQgdXNpbmcgcHVyZSBh dHRpdHVkaW5hbHMsIGV2ZW4gd2hlbiBhIHByb3Bvc2l0aW9uYWwgYXR0aXR1ZGlhbCBpcyBwcmVz ZW50LgoKCgpTbywgd2hhdOKAmXMgdHdvIHdheXMgb2Ygc2F5aW5nIOKAnEkgZ2l2ZSB0aGUgYXBw bGUgYXdheeKAnT8gKGFuZCBmZWVsIG9ibGlnYXRpb24gYWJvdXQgaXQpCgoKCkFuc3dlcjogfn5n cmV5LGdyZXk6JydtaSBkdW5kYSBsbyBwbGlzZSAuaSAuZWknJyAgYW5kICcnbWkgZHVuZGEgZGHi gJlpIG5haSAuZWkgbG8gcGxpc2UnJ35+CgoKClRoZSBmZWVsaW5nIG9mIGFuIGF0dGl0dWRpbmFs IGNhbiBiZSBzdWJzY3JpYmVkIHRvIHNvbWVvbmUgZWxzZSB1c2luZyAnJ2RhaScnLiBVc3VhbGx5 IGluIG9yZGluYXJ5IHNwZWVjaCwgdGhlIGF0dGl0dWRpbmFsIGlzIHN1YnNjcmliZWQgdG8gdGhl IGxpc3RlbmVyLCBidXQgaXQgZG9lc27igJl0IGhhdmUgdG8gYmUgc28uIEFsc28sIGJlY2F1c2Ug dGhlIHdvcmQgaXMgZ2xvc3NlZCDigJxlbXBhdGh54oCdIChmZWVsaW5nIG90aGVycyBlbW90aW9u cyksIHNvbWUgTG9qYmFuaXN0cyBtaXN0YWtlbmx5IHRoaW5rIHRoYXQgdGhlIGxpc3RlbmVyIG11 c3Qgc2hhcmUgdGhlIGVtb3Rpb24gYmVpbmcgc3Vic2NyaWJlZCB0byBvdGhlcnMuCgpfXycnZGFp JydfXyBhdHRpdHVkaW5hbCBtb2RpZnllcjogRW1wYXRoeSAoc3Vic2NyaWJlcyBhdHRpdHVkaW5h bCB0byBzb21lb25lIGVsc2UsIHVuc3BlY2lmaWVkKQoKRXhhbXBsZTogJyd14oCZaSAub2kgZGFp IGNpdGthIHRpJycgLSDigJxIYSBoYSwgdGhpcyB3YXMgZWF0ZW4hIFRoYXQgbXVzdCBoYXZlIGh1 cnQh4oCdCgoKCldoYXQgb2Z0ZW4gdXNlZCBwaHJhc2UgY291bGQgJycub2kgdeKAmWkgZGFpJycg bWVhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxPdWNoLCB2ZXJ5IGZ1bm55LuKAnX5+CgoK CkFuZCBhbm90aGVyIG9uZSB0byB0ZXN0IHlvdXIga25vd2xlZGdlOiBUcnkgdG8gdHJhbnNsYXRl IOKAnEhlIHdhcyBzb3JyeSBoZSBzb2xkIGEgaG9tZeKAnSAocmVtZW1iZXJpbmcsIHRoYXQgdGVu c2UgaXMgaW1wbGllZCBhbmQgbmVlZCBub3QgYmUgc3BlY2lmaWVkLiBBbHNvLCDigJxoZeKAnSBj b3VsZCBiZSBvYnZpb3VzIGZyb20gY29udGV4dCkKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ3Xi gJl1IGRhaSB2ZWNudSBsbyB6ZGFuaSBrdScnfn4KCgoKTGFzdGx5LCB0aGUgaW50ZW5zaXR5IG9m IGFuIGF0dGl0dWRpbmFsIGNhbiBiZSBzcGVjaWZpZWQgdXNpbmcgY2VydGFpbiB3b3Jkcy4gVGhl c2UgY2FuIGJlIHVzZWQgYWZ0ZXIgYW4gYXR0aXR1ZGluYWwsIG9yIGFuIGF0dGl0dWRpbmFsIHdp dGggJyduYWknJyBvciAnJ2N14oCZaScnIHN1ZmZpeGVkLiBJdOKAmXMgbGVzcyBjbGVhciB3aGF0 IGhhcHBlbnMgd2hlbiB5b3UgYXR0YWNoIGl0IHRvIG90aGVyIHdvcmRzLCBsaWtlIGEgc2VsYnJp LCBtdXN0IGl04oCZcyBtb3N0bHkgdW5kZXJzdG9vZCBhcyBpbnRlbnNpZnlpbmcgb3Igd2Vha2Vu aW5nIHRoZSBzZWxicmkgaW4gc29tZSB1bnNwZWNpZmllZCB3YXk6Cgp8fCBNb2RpZnlpbmcgd29y ZCAgfCBJbnRlbnNpdHkgIAoKIGNhaXwgICBFeHRyZW1lCgogc2FpfCAgIFN0cm9uZwoKIChub25l KXwgICBVbnNwZWNpZmllZCAobWVkaXVtKQoKIHJ1J2UgIHwgICBXZWFrfHwKCgoKV2hhdCBlbW90 aW9uIGlzIGV4cHJlc3NlZCB1c2luZyAnJy514oCZaSBuYWkgc2FpJycgPwoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OlN0cm9uZyB3ZWFyaW5lc3N+fgoKCgpBbmQgaG93IHdvdWxkIHlvdSBleHByZXNz IHRoYXQgeW91IGFyZSBtaWxkbHkgcmVtb3JzZWxlc3M/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6 JycudeKAmXUgY3XigJlpIHJ14oCZZScnfn4KCgoKISFMb2piYW4gbGVzc29ucyDigJMgbGVzc29u IGZpdmUgKFNFKQoKQmVmb3JlIHdlIHZlbnR1cmUgaW50byB0aGUgdGVycml0b3J5IG9mIG1vcmUg Y29tcGxleCBjb25zdHJ1Y3RzLCB5b3Ugc2hvdWxkIGxlYXJuIGFub3RoZXIgbWVjaGFuaXNtIGZv ciByZW9yZGVyaW5nIHRoZSBzdW10aSBvZiBhIHNlbGJyaS4gVGhpcywgYXMgd2Ugd2lsbCBzaG93 LCBpcyB2ZXJ5IHVzZWZ1bCBmb3IgbWFraW5nIGRlc2NyaXB0aW9uLWxpa2Ugc3VtdGkgKHRoZSBr aW5kIG9mIHN1bXRpIHdpdGggJydsbycnKS4KCkNvbnNpZGVyIHRoZSBzZW50ZW5jZSDigJxJIGVh dCBhIGdpZnTigJ0sIHdoaWNoIG1pZ2h0IGJlIGFwcHJvcHJpYXRlIGlmIHRoYXQgZ2lmdCBpcyBh biBhcHBsZS4gVG8gdHJhbnNsYXRlIHRoaXMsIGl0IHdvdWxkIHNlZW0gbmF0dXJhbCB0byBsb29r IHVwIGEgc2VsYnJpIG1lYW5pbmcg4oCcZ2lmdOKAnSBiZWZvcmUgY29udGludWluZy4gSG93ZXZl ciwgaWYgb25lIGxvb2tzIGNhcmVmdWxseSBhdCB0aGUgZGVmaW5pdGlvbiBvZiAnJ2R1bmRhJycs IHgxIGdpdmVzIHgyIHRvIHgzLCBvbmUgcmVhbGl6ZXMgdGhhdCB0aGUgeDIgb2YgJydkdW5kYScn IGlzIHNvbWV0aGluZyBnaXZlbiDigJMgYSBnaWZ0LgoKU28sIHRvIGV4cHJlc3MgdGhhdCBzZW50 ZW5jZSwgd2UgY2Fu4oCZdCBzYXkgJydtaSBjaXRrYSBsbyBkdW5kYSBrdScnLCBiZWNhdXNlICcn bG8gZHVuZGEga3UnJyB3b3VsZCBiZSB0aGUgeDEgb2YgJydkdW5kYScnLCB3aGljaCBpcyBhIGRv bm9yIG9mIGEgZ2lmdC4gQ2FubmliYWxpc20gYXNpZGUsIHdlIGRvbuKAmXQgd2FudCB0byBzYXkg dGhhdC4gV2hhdCB3ZSB3YW50IGlzIGEgd2F5IHRvIGV4dHJhY3QgdGhlIHgyIG9mIGEgc2VsYnJp LgoKVGhpcyBpcyBvbmUgZXhhbXBsZSB3aGVyZSBpdCBpcyB1c2VmdWwgdG8gdXNlIHRoZSB3b3Jk ICcnc2UnJy4gV2hhdCAnJ3NlJycgZG9lcyBpcyB0byBtb2RpZnkgYSBzZWxicmkgc3VjaCB0aGF0 IHRoZSB4MSBhbmQgeDIgb2YgdGhhdCBzZWxicmkgdHJhZGUgcGxhY2VzLiBUaGUgY29uc3RydWN0 IG9mICcnc2UnJyArIHNlbGJyaSBpcyBvbiBpdHMgb3duIGNvbnNpZGVyZWQgb25lIHNlbGJyaS4g TGV04oCZcyB0cnkgd2l0aCBhbiBvcmRpbmFyeSBzZW50ZW5jZToKCl9fJydmYW52YScnX18gPSDi gJx4MSB0cmFuc2xhdGVzIHgyIHRvIGxhbmd1YWdlIHgzIGZyb20gbGFuZ3VhZ2UgeDQgd2l0aCBy ZXN1bHQgb2YgdHJhbnNsYXRpb24geDXigJ0KCicndGkgc2UgZmFudmEgbWknJyA9ICcnbWkgZmFu dmEgdGknJwoKVGhpcyBpcyB0cmFuc2xhdGVkIGJ5IG1lICg9IEkgdHJhbnNsYXRlIHRoaXMpLiBP ZnRlbiwgYnV0IG5vdCBhbHdheXMsIGJyaWRpIHdpdGggJydzZScnLWNvbnN0cnVjdHMgYXJlIHRy YW5zbGF0ZWQgdG8gc2VudGVuY2VzIHdpdGggdGhlIHBhc3NpdmUgdm9pY2UsIHNpbmNlIHRoZSB4 MSBpcyBvZnRlbiB0aGUgb2JqZWN0IHRha2luZyBhY3Rpb24uCgonJ3NlJycgaGFzIGl0cyBvd24g ZmFtaWx5IG9mIHdvcmRzLiBBbGwgb2YgdGhlbSBzd2FwIGEgZGlmZmVyZW50IHBsYWNlIHdpdGgg dGhlIHgxLgoKfHxzZQl8c3dhcCB4MSBhbmQgeDIKCnRlCXxzd2FwIHgxIGFuZCB4MwoKdmUJfHN3 YXAgeDEgYW5kIHg0Cgp4ZQl8c3dhcCB4MSBhbmQgeDV8fAoKCgoKCk5vdGUgdGhhdCBzLCB0LCB2 LCBhbmQgeCBhcmUgY29uc2VjdXRpdmUgY29uc29uYW50cyBpbiB0aGUgbG9qYmFuIGFscGhhYmV0 LgoKCgpTbzogVXNpbmcgdGhpcyBrbm93bGVkZ2UsIHdoYXQgd291bGQgJyd0aSB4ZSBmYW52YSB0 aScnIG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcVGhpcyBpcyBhIHRyYW5zbGF0aW9u IG9mIHRoaXPigJ0gKG9yICcnZmFudmEgdGkgZnUgdGknJyl+fgoKCgonJ3NlJycgYW5kIGl0cyBm YW1pbHkgY2FuIG9mIGNvdXJzZSBiZSBjb21iaW5lZCB3aXRoIGZhIGFuZCBpdHMgZmFtaWx5LiBU aGUgcmVzdWx0IGNhbiBiZSB2ZXJ5IGNvbmZ1c2luZyBpbmRlZWQsIGlmIHlvdSB3aXNoIHRvIG1h a2UgaXQgc286CgpfXycna2xhbWEnJ19fID0g4oCceDEgdHJhdmVscy9nb2VzIHRvIHgyIGZyb20g eDMgdmlhIHg0IHVzaW5nIHg1IGFzIHRyYW5zcG9ydGF0aW9uIGRldmljZeKAnQoKJydmdSBsbyB6 ZGFuaSBrdSB0ZSBrbGFtYSBmZSBkbyB0aSBmYSBtaScnID0gJydtaSB0ZSBrbGFtYSBkbyB0aSBs byB6ZGFuaSBrdScnIGFuZCBzaW5jZSAnJ3RlJycgZXhjaGFuZ2VzIHgxIGFuZCB4MzogPSAnJ3Rp IGtsYW1hIGRvIG1pIGxvIHpkYW5pIGt1JycKCuKAnFRoaXMgdHJhdmVscyB0byB5b3UgZnJvbSBt ZSB2aWEgYSBob21lLuKAnSBPZiBjb3Vyc2UsIG5vIG9uZSB3b3VsZCBtYWtlIHN1Y2ggYSBzZW50 ZW5jZSBleGNlcHQgdG8gY29uZnVzZSBwZW9wbGUsIG9yIGNydWVsbHkgdG8gdGVzdCB0aGVpciB1 bmRlcnN0YW5kaW5nIG9mIExvamJhbiBncmFtbWFyLgoKQW5kIHRodXMsIHdlIGhhdmUgY29tZSB0 byB0aGUgcG9pbnQgd2hlcmUgd2UgY2FuIHNheSDigJxJIGVhdCBhIGdpZnQu4oCdLiBTaW1wbHkg ZXhjaGFuZ2UgdGhlIHN1bXRpIHBsYWNlcyBvZiAnJ2R1bmRhJycgdG8gZ2V0IHRoZSBnaWZ0IHRv IGJlIHgxLCB0aGVuIGV4dHJhY3QgdGhpcyBuZXcgeDEgd2l0aCAnJ2xvJycuLi4nJ2t1JycuIFNv LCBob3cgd291bGQgeW91IHNheSBpdD8KCk9uZSAocG9zc2libGUpIGFuc3dlcjogfn5ncmV5LGdy ZXk6JydtaSBjaXRrYSBsbyBzZSBkdW5kYSBrdScnfn4KClRoaXMgc2hvd3Mgb25lIG9mIHRoZSBt YW55IHVzZXMgZm9yICcnc2UnJyBhbmQgaXRzIGZhbWlseS4KCgoKCgohIUxvamJhbiBsZXNzb25z IOKAkyBsZXNzb24gc2l4IChOVSkKClNvIGZhciB3ZSBoYXZlIG9ubHkgZXhwcmVzc2VkIHNpbmds ZSBzZW50ZW5jZXMgb25lIGF0IGEgdGltZS4gVG8gZXhwcmVzcyBtb3JlIGNvbXBsZXggdGhpbmdz LCBob3dldmVyLCB5b3Ugb2Z0ZW4gbmVlZCBzdWJvcmRpbmF0ZSBzZW50ZW5jZXMuIEx1Y2tpbHks IHRoZXNlIGFyZSBtdWNoIGVhc2llciBpbiBMb2piYW4gdGhhbiB3aGF0IG9uZSB3b3VsZCBleHBl Y3QuCgpXZSBjYW4gYmVnaW4gd2l0aCBhbiBleGFtcGxlIHRvIGRlbW9uc3RyYXRlIHRoaXM6IOKA nEkgYW0gaGFwcHkgdGhhdCB5b3UgYXJlIG15IGZyaWVuZC7igJ0gSGVyZSwgdGhlIG1haW4gYnJp ZGkgaXMg4oCcSSBhbSBoYXBweSB0aGF0IFgu4oCdLCBhbmQgdGhlIHN1Yi1icmlkaSBpcyDigJxZ b3UgYXJlIG15IGZyaWVuZC7igJ0gTG9va2luZyBhdCB0aGUgZGVmaW5pdGlvbiBmb3Ig4oCcaGFw cHnigJ0sIHdoaWNoIGlzICcnZ2xla2knJzoKCl9fJydnbGVraScnX18g4oCceDEgaXMgaGFwcHkg YWJvdXQgeDIgKGV2ZW50L3N0YXRlKeKAnQoKT25lIHNlZXMgdGhhdCB0aGUgeDIgbmVlZHMgdG8g YmUgYW4gZXZlbnQgb3IgYSBzdGF0ZS4gVGhpcyBpcyBuYXR1cmFsLCBiZWNhdXNlIG9uZSBjYW5u b3QgYmUgaGFwcHkgYWJvdXQgYW4gb2JqZWN0IGluIGl0c2VsZiwgb25seSBhYm91dCBzb21lIHN0 YXRlIHRoZSBvYmplY3QgaXMgaW4uIEJ1dCBhbGFzISBPbmx5IGJyaWRpIGNhbiBleHByZXNzIGEg c3RhdGUgb3IgYW4gZXZlbnQsIGFuZCBvbmx5IHN1bXRpIGNhbiBmaWxsIHRoZSB4MiBvZiAnJ2ds ZWtpJychLgoKQXMgeW91IG1pZ2h0IGhhdmUgZ3Vlc3NlZCwgdGhlcmUgaXMgYSBzb2x1dGlvbi4g VGhlIHdvcmRzICcnc3XigJl1JycuLi4nJ2tlaScnIGlzIGEgZ2VuZXJpYyDigJxjb252ZXJ0IGJy aWRpIHRvIHNlbGJyaeKAnSBmdW5jdGlvbiwgYW5kIHdvcmtzIGp1c3QgbGlrZSAnJ2xvJyfigKYn J2t1JycuIEV4YW1wbGU6CgpfXycnbXJvYmnigJlvJydfXyDigJx4MSBkaWVzIHVuZGVyIGNvbmRp dGlvbiB4MuKAnQoKX18nJ3N1J3UnJ19fIHgxIGlzIGFuIGFidHJhY3Rpb24gb2YgW0JSSURJXSBv ZiB0eXBlIHgyCgpfXycna2VpJydfXyBlbmQgYWJzdHJhY3Rpb24KCicnbWkgc3XigJl1IGRvIG1y b2Jp4oCZbyBrZWknJyDigJMg4oCcSSBhbSB5b3VyIGRlYXRo4oCdLgoKSXTigJlzIGhhcmQgdG8g ZmluZCBnb29kIHVzZXMgb2YgYSBicmlkaSBhcyBhIHNlbGJyaSwgYW5kIHRoZSBhYm92ZSBleGFt cGxlIHNlZW1zIGEgbGl0dGxlIHVuY29udmluY2luZy4gSG93ZXZlciwgc2luY2UgJydzdeKAmXUg QlJJREkga2VpJycgaXMgYSBzZWxicmksIG9uZSBjYW4gY29udmVydCBpdCB0byBhIHN1bXRpIHVz aW5nICcnbG8nJy4uLicna3UnJy4KCk5vdyB3ZSBoYXZlIHRoZSBlcXVpcG1lbnQgdG8gZXhwcmVz cyDigJxJIGFtIGhhcHB5IHRoYXQgeW91IGFyZSBteSBmcmllbmTigJ0uIFRyeSBpdCBvdXQhCgpf XycncGVuZG8nJ19fIOKAnHgxIGlzIGEgZnJpZW5kIG9mIHgy4oCdCgoKCkFuc3dlcjogfn5ncmV5 LGdyZXk6JydtaSBnbGVraSBsbyBzdeKAmXUgZG8gcGVuZG8gbWkga2VpIGt1Jyd+fgoKCgpIb3dl dmVyLCAnJ3N14oCZdScn4oCmJydrZWknJyBkb2VzIG5vdCBzZWUgbXVjaCB1c2UuIFBlb3BsZSBw cmVmZXIgdG8gdXNlIHRoZSBtb3JlIHNwZWNpZmljIHdvcmRzICcnbnUnJ+KApicna2VpJycgYW5k ICcnZHXigJl1JyfigKYnJ2tlaScnLiBUaGV5IHdvcmsgdGhlIHNhbWUgd2F5LCBidXQgbWVhbiBz b21ldGhpbmcgZGlmZmVyZW50LiAnJ2514oCma2VpJycgdHJlYXRzIHRoZSBicmlkaSBpbiBiZXR3 ZWVuIGFzIGFuIGV2ZW50IG9yIHN0YXRlLCBhbmQgJydkdeKAmXXigKZrZWknJyB0cmVhdHMgaXQg YXMgYW4gYWJzdHJhY3QgYnJpZGksIGZvciBleHByZXNzaW5nIHRoaW5ncyBsaWtlIGlkZWFzLCB0 aG91Z2h0cyBvciB0cnV0aHMuIEFsbCB0aGVzZSB3b3JkcyAoZXhjZXB0ICcna2VpJycpIGFyZSBj YWxsZWQgYWJzdHJhY3RvcnMuIFRoZXJlIGFyZSBtYW55IG9mIHRoZW0sIGFuZCBvbmx5IGZldyBh cmUgdXNlZCBtdWNoLiAnJ3N14oCZdeKApmtlaScnIGlzIGEgZ2VuZXJhbCBhYnN0cmFjdG9yLCBh bmQgd2lsbCB3b3JrIGluIGFsbCBjYXNlcy4KCgoKVXNlICcnbnUnJyB0byBzYXkg4oCcSeKAmW0g aGFwcHkgYWJvdXQgdGFsa2luZyB0byB5b3Uu4oCdCgpfXycndGF2bGEnJ19fIHgxIHRhbGtzIHRv IHgyIGFib3V0IHN1YmplY3QgeDMgaW4gbGFuZ3VhZ2UgeDQuCgoKCkFuc3dlcjogfn5ncmV5LGdy ZXk6JydtaSBnbGVraSBsbyBudSB0YXZsYSBkbycnIChub3RpY2UgYm90aCB0aGUgRW5nbGlzaCBh bmQgdGhlIExvamJhbiBpcyB2YWd1ZSBhcyB0byB3aG8gaXMgZG9pbmcgdGhlIHRhbGtpbmcpLn5+ CgoKCk90aGVyIGltcG9ydGFudCBhYnN0cmFjdG9ycyBpbmNsdWRlOiAnJ2thLi4ua2VpJycgKHBy b3BlcnR5IGFic3RyYWN0aW9uKSwgJydzaeKAmW8uLi5rZWknJyAoY29uY2VwdC9pZGVhIGFic3Ry YWN0aW9uKSwgJyduaS4uLmtlaScnIChxdWFudGl0eSBhYnN0cmFjdGlvbikgYW1vbmcgb3RoZXJz LgoKCgpJdCBpcyBpbXBvcnRhbnQgdG8gbm90aWNlIHRoYXQgc29tZSBhYnN0cmFjdG9ycyBoYXZl IHNldmVyYWwgc3VtdGkgcGxhY2VzLiBBcyBhbiBleGFtcGxlLCAnJ2R14oCZdScnIGNhbiBiZSBt ZW50aW9uZWQuICcnZHXigJl1JycgaXMgZGVmaW5lZDoKCicnZHXigJl1JycgPSDigJxhYnN0cmFj dG9yLiB4MSBpcyB0aGUgcHJlZGljYXRlL2JyaWRpIG9mIFticmlkaV0gZXhwcmVzc2VkIGluIHNl bnRlbmNlIHgy4oCdLgoKVGhlIG90aGVyIHN1bXRpIHBsYWNlcyBiZXNpZGVzIHgxIGlzIHJhcmVs eSB1c2VkLCBidXQgJydsbyBzZSBkdeKAmXUgQlJJREkga2VpIGt1JycgaXMgc29tZXRpbWVzIHVz ZWQgYXMgYSBzdW10aSBmb3IgaW5kaXJlY3QgcXVvdGF0aW9uOiDigJxJIHNhaWQgdGhhdCBJIHdh cyBnaXZlbiBhIGRvZ+KAnSBjYW4gYmUgd3JpdHRlbiAnJ21pIGN1c2t1IGxvIHNlIGR14oCZdSBt aSB0ZSBkdW5kYSBsbyBnZXJrdSBrdSBrZWkga3UnJywgaWYgeW91IHdpbGwgcGFyZG9uIHRoZSB3 ZWlyZCBleGFtcGxlLgoKX18nJ2N1c2t1JydfXyB4MSBleHByZXNzZXMgeDIgdG8geDMgdGhyb3Vn aCBtZWRpdW0geDQKCl9fJydnZXJrdScnX18geDEgaXMgYSBkb2cgb2YgcmFjZSB4MgoKCgohIUxv amJhbiBsZXNzb25zIOKAkyBsZXNzb24gc2V2ZW4gKE5PSSkKCldoaWxlIHdl4oCZcmUgYXQgaXQs IHRoZXJl4oCZcyBhbm90aGVyIHR5cGUgb2Ygc3Vib3JkaW5hdGUgYnJpZGkuIFRoZXNlIGFyZSBj YWxsZWQgcmVsYXRpdmUgY2xhdXNlcy4gVGhleSBhcmUgc2VudGVuY2VzIHdoaWNoIGFkZCBzb21l IGRlc2NyaXB0aW9uIHRvIGEgc3VtdGkuIEluZGVlZCwgdGhlIOKAnHdoaWNo4oCdIGluIHRoZSBw cmV2aW91cyBzZW50ZW5jZSBtYXJrZWQgdGhlIGJlZ2lubmluZyBvZiBhIHJlbGF0aXZlIGNsYXVz ZSBpbiBFbmdsaXNoIGRlc2NyaWJpbmcgcmVsYXRpdmUgY2xhdXNlcy4gSW4gTG9qYmFuLCB0aGV5 IGNvbWUgaW4gdHdvIGZsYXZvcnMsIGFuZCBpdCBtaWdodCBiZSB3b3J0aCBkaXN0aW5ndWlzaGlu ZyB0aGUgdHdvIGtpbmRzIGJlZm9yZSBsZWFybmluZyBob3cgdG8gZXhwcmVzcyB0aGVtLgoKVGhl IHR3byBraW5kcyBhcmUgY2FsbGVkIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgKG9y IGluY2lkZW50aWFsKSByZWxhdGl2ZSBjbGF1c2VzLiBBbiBleGFtcGxlIHdvdWxkIGJlIGdvb2Qg aGVyZToKCuKAnE15IGJyb3RoZXIsIHdobyBpcyB0d28gbWV0ZXJzIHRhbGwsIGlzIGEgcG9saXRp Y2lhbi7igJ0gVGhpcyBjYW4gYmUgdW5kZXJzdG9vZCBpbiB0d28gd2F5cy4gSSBjb3VsZCBoYXZl IHNldmVyYWwgYnJvdGhlcnMsIGluIHdoaWNoIGNhc2Ugc2F5aW5nIGhlIGlzIHR3byBtZXRlcnMg dGFsbCB3aWxsIGxldCB5b3Uga25vdyB3aGljaCBicm90aGVyIEkgYW0gdGFsa2luZyBhYm91dC4g T3IgSSBtaWdodCBoYXZlIG9ubHkgb25lIGJyb3RoZXIsIGluIHdoaWNoIGNhc2UgSSBhbSBzaW1w bHkgZ2l2aW5nIHlvdSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uLgoKCgpJbiBFbmdsaXNoIGFzIHdl bGwgYXMgTG9qYmFuIHdlIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlc2UgdHdvIGtpbmRzIOKAkyB0 aGUgZmlyc3QgaW50ZXJwcmV0YXRpb24gaXMgcmVzdHJpY3RpdmUgKHNpbmNlIGl0IGhlbHBzIHJl c3RyaWN0IHRoZSBwb3NzaWJsZSBicm90aGVycyBJIG1pZ2h0IGJlIHRhbGtpbmcgYWJvdXQpLCB0 aGUgc2Vjb25kIG5vbi1yZXN0cmljdGl2ZS4gV2hlbiBzcGVha2luZyBFbmdsaXNoLCBjb250ZXh0 IGFuZCB0b25lIG9mIHZvaWNlIChvciBpbiB3cml0dGVuIEVuZ2xpc2gsIHB1bmN0dWF0aW9uKSBo ZWxwcyB1cyBkaXN0aW5ndWlzaCBiZXR3ZWVuIHRoZXNlIHR3bywgYnV0IG5vdCBzbyBpbiBMb2pi YW4uIExvamJhbiB1c2VzIHRoZSBjb25zdHJ1Y3RzICcncG9p4oCma3XigJlvJycgYW5kICcnbm9p 4oCma3XigJlvJycgZm9yIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUg Y2xhdXNlcywgcmVzcGVjdGl2ZWx5LgoKTGV04oCZcyBoYXZlIGEgTG9qYmFuaWMgZXhhbXBsZSwg d2hpY2ggY2FuIGFsc28gZXhwbGFpbiBvdXIgc3RyYW5nZSBnaWZ0LWVhdGluZyBiZWhhdmlvdXIg aW4gdGhlIGV4YW1wbGUgaW4gbGVzc29uIGZpdmU6CgpfXycnbm9pJydfXyBiZWdpbiBub24tcmVz dHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlIChjYW4gb25seSBhdHRhY2ggdG8gc3VtdGkpCgotLScn cG9pJydfXyBiZWdpbiByZXN0cmljdGl2ZSByZWxhdGl2ZSBjbGF1c2UgKGNhbiBvbmx5IGF0dGFj aCB0byBzdW10aSkKCl9fJydrdSdvJydfXyBlbmQgcmVsYXRpdmUgY2xhdXNlCgoKCicnbWkgY2l0 a2EgbG8gc2UgZHVuZGEga3UgcG9pIHBsaXNlIGt14oCZbycnID0g4oCcSSBlYXQgYSBnaWZ0IHN1 Y2ggdGhhdCAoc29tZXRoaW5nIGlzKSBhbiBhcHBsZeKAnS4gCgpIZXJlIHRoZSBwb2nigKZrdeKA mW8gaXMgcGxhY2VkIGp1c3QgYWZ0ZXIgJydsbyBzZSBkdW5kYSBrdScnLCBzbyBpdCBhcHBsaWVz IHRvIHRoZSBnaWZ0LiBUbyBiZSBzdHJpY3QsIHRoZSByZWxhdGl2ZSBjbGF1c2UgZG9lcyBub3Qg c3BlY2lmeSB3aGF0IGlzIGFuIGFwcGxlLCBidXQgc2luY2UgdGhlIHJlbGF0aXZlIGNsYXVzZSBh cHBsaWVzIHRvIHRoZSBnaWZ0LCB3ZSBjYW4gc2FmZWx5IGFzc3VtZSB0aGF0IGlzIG1lYW5zIHRo ZSBnaWZ0IGlzIGFuIGFwcGxlLiBBZnRlciBhbGwsIGluIHRoZSBjb250ZXh0IG9mIGxlc3NvbiBm aXZlLCB0aGlzIHNlZW1zIHJlYXNvbmFibGUuIElmIHdlIHdhbnQgdG8gYmUgYWJzb2x1dGVseSBz dXJlIHRoYXQgaXQgaW5kZWVkIHdhcyB0aGUgZ2lmdCB0aGF0IHdhcyBhbiBhcHBsZSwgd2UgdXNl IHRoZSB3b3JkICcna2XigJlhJycsIHdoaWNoIGlzIGEgcHJvLXN1bXRpIChhIExvamJhbiBwcm9u b3VuLCBtb3JlIG9uIHRoZW0gbGF0ZXIpIHJlcHJlc2VudGluZyB0aGUgc3VtdGkgd2hpY2ggdGhl IHJlbGF0aXZlIGNsYXVzZSBpcyBhdHRhY2hlZCB0by4KCl9fJydrZSdhJydfXyBzdW1rYSdpOyBy ZWZlcnMgdG8gdGhlIHN1bXRpLCB0byB3aGljaCB0aGUgcmVsYXRpdmUgY2xhdXNlIGl0IGF0dGFj aGVkLgoKCgonJy51aSBtaSBjaXRrYSBsbyBzZSBkdW5kYSBrdSBwb2kga2XigJlhIHBsaXNlIGt1 4oCZbycnID0g4oCcWWF5LCBJIGVhdCBhIGdpZnQsIHdoaWNoIGlzIGFuIGFwcGxl4oCdLgoKVG8g dW5kZXJsaW5lIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gcmVzdHJpY3RpdmUgYW5kIG5vbi1yZXN0 cmljdGl2ZSByZWxhdGl2ZSBjbGF1c2VzLCBoZXJl4oCZcyBhbm90aGVyIGV4YW1wbGU6CgoKCl9f Jydsb2pibycnX18g4oCceDEgcmVmbGVjdHMgTG9qYmFuaWMgY3VsdHVyZS9jb21tdW5pdHkgaXMg YXNwZWN0IHgyOyB4MSBpcyBMb2piYW5pYy7igJ0KCgoKJydtaSBub2kgbG9qYm8ga3XigJlvIGZh bnZhIGZvIGxvIGxvamJvIGt1JycgPSDigJxJLCB3aG8gYW0gYSBMb2piYW5pYywgdHJhbnNsYXRl IGZyb20gc29tZSBMb2piYW5pYyBsYW5ndWFnZS7igJ0gSGVyZSwgdGhlcmUgaXMgbm90IG11bHRp cGxlIHRoaW5ncyB3aGljaCAnJ21pJycgY291bGQgcmVmZXIgdG8sIGFuZCB0aGUgZmFjdCB0aGF0 IEkgYW0gbG9qYmFuaWMgaXMgbWVyZWx5IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gbm90IG5lZWRl ZCB0byBpZGVudGlmeSBtZS4gVGhlcmVmb3JlICcnbm9p4oCma3XigJlvJycgaXMgYXBwcm9wcmlh dGUuCgpTZWUgaWYgeW91IGNhbiB0cmFuc2xhdGUgdGhpczog4oCcSSBmbGlydCB3aXRoIGEgbWFu IHdobyBpcyBiZWF1dGlmdWwvaGFuZHNvbWXigJ0uCgpfXycnbmFubXUnJ19fIOKAnHgxIGlzIGEg bWFu4oCdCgpfXycnbWVsYmknJ19fIOKAnHgxIGlzIGJlYXV0aWZ1bCB0byB4MiBpbiBhc3BlY3Qg KGthKSB4MyBieSBzdGFuZGFyZCB4NOKAnQoKX18nJ2Npbmppa2NhJydfXyDigJx4MSBmbGlydHMv Y291cnRzIHgyLCBleGhpYml0aW5nIHNleHVhbGl0eSB4MyBieSBzdGFuZGFyZCB4NOKAnQoKCgpB bnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgY2luamlrY2EgbG8gbmFubXUga3UgcG9pIFtrZeKAmWFd IG1lbGJpIGt14oCZbycnfn4KCgoKT24gYSBtb3JlIHRlY2huaWNhbCBzaWRlIG5vdGUsIGl0IG1p Z2h0IGJlIHVzZWZ1bCB0byBrbm93IHRoYXQgJydsbyBTRUxCUkkga3UnJyBpcyBvZnRlbiBzZWVu IGRlZmluZWQgYXMgJyd6b+KAmWUgbm9pIGtl4oCZYSBTRUxCUkkga3XigJlvJycuCgoKCgoKISFM b2piYW4gTGVzc29ucyDigJMgTGVzc29uIGVpZ2h0ICh0ZXJtaW5hdG9yIGVsaXNpb24pCgonJy5h dSBkYeKAmWkgbWkgZGppY2EgbG8gbnUgbGUgbWVya28gcG9pIHR1bmJhIG1pIF9fdmF1IGt1J28g a3VfXyBqaW1wZSBsbyBkdSd1IG1pIG5hIG5lbGNpIGxvIG51IHZv4oCZYSBkYXJ4aSBtaSBfX3Zh dSBrZWkga3UgdmF1IGtlaSBrdSB2YXUga2VpIGt1IHZhdV9fJycKCiAtICDigJxJIHdpc2ggdGhl IEFtZXJpY2FuLCB3aG8gaXMgbXkgc2libGluZywgd291bGQgdW5kZXJzdGFuZCB0aGF0IEkgZG9u 4oCZdCBsaWtlIHRoYXQgaGUgaGl0cyBtZS7igJ0KClJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB0aGUg YWJvdmUgc2VudGVuY2UgaXMgYmVpbmcgdW5kZXJzdG9vZCwgKGl0IHNob3VsZG7igJl0LCBhcyBp dCBjb250YWlucyB3b3JkcyB3ZSBoYXZlIG5vdCBjb3ZlcmVkIGluIHRoZXNlIGxlc3NvbnMgeWV0 KSBvbmUgdGhpbmcgc3RhbmRzIG91dDogQXMgbW9yZSBjb21wbGV4IExvamJhbiBzdHJ1Y3R1cmVz IGFyZSBsZWFybmVkLCBtb3JlIGFuZCBtb3JlIG9mIHRoZSBzZW50ZW5jZXMgZ2V0IGZpbGxlZCB3 aXRoICcna3UnJywgJydrZWknJywgJydrdeKAmW8nJyBhbmQgb3RoZXIgb2YgdGhvc2Ugd29yZHMg d2hpY2ggYnkgdGhlbXNlbHZlcyBjYXJyeSBubyBtZWFuaW5nLgoKCgpUaGUgZnVuY3Rpb24gb2Yg YWxsIHRoZXNlIHdvcmRzIGFyZSB0byBzaWduYWwgdGhlIGVuZCBvZiBhIGNlcnRhaW4gZ3JhbW1h dGljYWwgY29uc3RydWN0LCBsaWtlIGZvciBpbnN0YW5jZSDigJxjb252ZXJ0IHNlbGJyaSB0byBz dW10aeKAnSBpbiB0aGUgY2FzZSBvZiAnJ2xv4oCma3UnJy4gVGhlIEVuZ2xpc2ggd29yZCBmb3Ig dGhpcyBraW5kIG9mIHdvcmQgaXMg4oCcdGVybWluYXRvcuKAnSwgdGhlIExvamJhbiB3b3JkIGlz ICcnZmHigJlvcm1h4oCZbycnLiBUaGV5IGFyZSB3cml0dGVuIGluIGJvbGQgaW4gdGhlIGV4YW1w bGUgYWJvdmUuCgpOb3RlOiBUaGUgJyd2YXUnJyBpbiB0aGUgYWJvdmUgZXhhbXBsZSBhcmUgdGhl IGZhJ29ybWEnbyBmb3Ig4oCcZW5kIGJyaWRp4oCdLiBUaGVyZSBpcyBhIGdvb2QgcmVhc29uIHlv dSBoYXZlIG5vdCB5ZXQgc2VlbiBpdCwgc3RheSB0dW5lZC4KCl9fJyd2YXUnJ19fIGZhJ29ybWEn bzogVGVybWluYXRlcyBicmlkaS4KCgoKSW4gbW9zdCBzcG9rZW4gYW5kIHdyaXR0ZW4gTG9qYmFu LCBtb3N0IGZhJ29ybWEnb2FyZSBza2lwcGVkIChlbGlkZWQpLiBUaGlzIGdyZWF0bHkgc2F2ZXMg c3lsbGFibGVzIGluIHNwZWVjaCBhbmQgc3BhY2UgaW4gd3JpdGluZywgaG93ZXZlciwgb25lIG11 c3QgYWx3YXlzIGJlIGNhcmVmdWwgd2hlbiBlbGlkaW5nIGZhJ29ybWEnb3MuIEluIHRoZSBzaW1w bGUgZXhhbXBsZSAnJ2xvIG1lcmtvIGt1IGtsYW1hJycsIHJlbW92aW5nIHRoZSBmYSdvcm1hJ28g JydrdScnIHdvdWxkIHlpZWxkICcnbG8gbWVya28ga2xhbWEnJywgd2hpY2ggaXMgYSBzaW5nbGUg c3VtdGkgbWFkZSBmcm9tIHRoZSB0YW5ydSAnJ21lcmtvIGtsYW1hJycuIFRodXMsIGl0IG1lYW5z IOKAnGFuIEFtZXJpY2FuIHRyYXZlbGVy4oCdIGluc3RlYWQgb2Yg4oCcYW4gQW1lcmljYW4gdHJh dmVsc+KAnS4gRmEnb3JtYSdvIGVsaXNpb24gY2FuIGxlYWQgdG8gdmVyeSB3cm9uZyByZXN1bHRz IGlmIGRvbmUgaW5jb3JyZWN0bHksIHdoaWNoIGlzIHdoeSB5b3UgaGF2ZW7igJl0IGxlYXJuZWQg YWJvdXQgaXQgdW50aWwgbm93LgoKCgpUaGUgcnVsZSBmb3Igd2hlbiBmYSdvcm1hJ29jYW4gYmUg ZWxpZGVkIGlzIHZlcnkgc2ltcGxlLCBhdCBsZWFzdCBpbiB0aGVvcnk6IOKAnFlvdSBjYW4gZWxp ZGUgYSBmYSdvcm1hJ28sIF9faWYgYW5kIG9ubHkgaWZfXyBkb2luZyBzbyBkb2VzIG5vdCBjaGFu Z2UgdGhlIGdyYW1tYXRpY2FsIGNvbnN0cnVjdHMgaW4gdGhlIHNlbnRlbmNlLuKAnQoKTW9zdCBm YSdvcm1hJ29jYW4gYmUgc2FmZWx5IGVsaWRlZCBhdCB0aGUgZW5kIG9mIHRoZSBicmlkaS4gRXhj ZXB0aW9ucyBhcmUgdGhlIG9idmlvdXMgb25lcyBsaWtlIOKAnGVuZCBxdW90ZeKAnS1mYSdvcm1h J29hbmQg4oCcZW5kIGJyaWRpIGdyb3VwaW5n4oCdLWZhJ29ybWEnb3MuIFRoaXMgaXMgd2h5ICcn dmF1JycgaXMgYWxtb3N0IG5ldmVyIHVzZWQg4oCTIHNpbXBseSBiZWdpbm5pbmcgYSBuZXcgYnJp ZGkgd2l0aCAnJy5pJycgd2lsbCBhbHdheXMgdGVybWluYXRlIHRoZSBwcmVjZWRpbmcgYnJpZGkg YW55d2F5LiBJdCBoYXMgb25lIGZyZXF1ZW50IHVzZSwgaG93ZXZlci4gU2luY2UgYXR0aXR1ZGlu YWxzIGFsd2F5cyBhcHBseSB0byB0aGUgcHJlY2VkaW5nIHdvcmQsIGFwcGx5aW5nIGl0IHRvIGEg ZmEnb3JtYSdvIGFwcGxpZXMgaXQgdG8gdGhlIGVudGlyZSBjb25zdHJ1Y3Qgd2hpY2ggaXMgdGVy bWluYXRlZC4gVXNpbmcgJyd2YXUnJywgb25lIGNhbiB0aGVuIHVzZSBhdHRpdHVkaW5hbHMgYWZ0 ZXJ0aG91Z2h0IGFuZCBhcHBseSB0aGVtIHRvIHRoZSBlbnRpcmUgYnJpZGk6CgonJ3ph4oCZYSBk byBkdW5kYSBsbyB6ZGFuaSBsbyBwcmVudS4uLiB2YXUgaeKAmWUnJyAtIOKAnEkgc2VlIHRoYXQg eW91IGdpdmUgYSBob21lIHRvIGEgcGVyc29uLi4uIEkgYXBwcm92ZSHigJ0KCl9fJydwcmVudScn X18geDEgaXMgYSBwZXJzb247IHgxIGhhcyBhIHBlcnNvbmFsaXR5LgoKCgpLbm93aW5nIHRoZSBi YXNpYyBydWxlcyBmb3IgZmEnb3JtYSdvIGVsaXNpb24sIHdlIGNhbiB0aHVzIHJldHVybiB0byB0 aGUgb3JpZ2luYWwgc2VudGVuY2UgYW5kIGJlZ2luIHJlbW92aW5nIGZhJ29ybWEnb3M6CgoKCicn LmF1IGRh4oCZaSBtaSBkamljYSBsbyBudSBsZSBtZXJrbyBwb2kgdHVuYmEgbWkgX192YXUga3Un byBrdV9fIGppbXBlIGxvIGR1J3UgbWkgbmEgbmVsY2kgbG8gbnUgdm/igJlhIGRhcnhpIG1pIF9f dmF1IGtlaSBrdSB2YXUga2VpIGt1IHZhdSBrZWkga3UgdmF1X18nJwoKCgpXZSBjYW4gc2VlIHRo YXQgdGhlIGZpcnN0ICcndmF1JycgaXMgZ3JhbW1hdGljYWxseSB1bm5lY2Vzc2FyeSwgYmVjYXVz ZSB0aGUgbmV4dCBub24tZmEnb3JtYSdvLXdvcmQgaXMgJydqaW1wZScnLCB3aGljaCBpcyBhIHNl bGJyaS4gU2luY2UgdGhlcmUgY2FuIG9ubHkgYmUgb25lIHNlbGJyaSBwZXIgYnJpZGksICcndmF1 JycgaXMgbm90IG5lZWRlZC4gU2luY2UgJydqaW1wZScnIGFzIGEgc2VsYnJpIGNhbiBub3QgYmUg aW4gdGhlIHJlbGF0aXZlIGNsYXVzZSBlaXRoZXIgKG9ubHkgb25lIGJyaWRpIGluIGEgY2xhdXNl LCBvbmx5IG9uZSBzZWxicmkgaSBhIGJyaWRpKSwgd2UgY2FuIGVsaXRlICcna3UnbycnLiBMaWtl d2lzZSwgJydqaW1wZScnIGNhbm5vdCBiZSBhIHNlY29uZCBzZWxicmkgaW5zaWRlIHRoZSBjb25z dHJ1Y3QgJydsZSBtZXJrbyBwb2lbLi4uXScnLCBzbyB0aGF0IGlzIG5vdCBuZWVkZWQgZWl0aGVy LiBGdXJ0aGVybW9yZSwgYWxsIHRoZSBmYSdvcm1hJ29hdCB0aGUgdmVyeSBlbmQgY2FuIGJlIGVs aWRlZCB0b28sIHNpbmNlIGJlZ2lubmluZyBhIG5ldyBicmlkaSB3aWxsIHRlcm1pbmF0ZSBhbGwg b2YgdGhlc2UgY29uc3RydWN0cyBhbnl3YXkuCgpXZSB0aGVuIGVuZCB1cCB3aXRoOgoKJycuYXUg ZGHigJlpIG1pIGRqaWNhIGxvIG51IGxlIG1lcmtvIHBvaSB0dW5iYSBtaSBqaW1wZSBsbyBkdSd1 IG1pIG5hIG5lbGNpIGxvIG51IHZv4oCZYSBkYXJ4aSBtaScnIOKAkyB3aXRoIG5vIGZhJ29ybWEn b2F0IGFsbCEKCgoKV2hlbiBlbGlkaW5nIGZhJ29ybWEnb3MsIGl0IGlzIGEgZ29vZCBpZGVhIHRv IGJlIGFjcXVhaW50ZWQgd2l0aCAnJ2N1JycuICcnY3UnJyBpcyBvbmUgb2YgdGhvc2Ugd29yZHMg d2hpY2ggY2FuIG1ha2UgeW91ciAoTG9qYmFuaWMpIGxpZmUgYSBsb3QgZWFzaWVyLiBXaGF0IGl0 IGRvZXMgaXMgdG8gc2VwYXJhdGUgYW55IHByZXZpb3VzIHN1bXRpIGZyb20gdGhlIHNlbGJyaS4g T25lIGNvdWxkIHNheSB0aGF0IGl0IGRlZmluZXMgdGhlIG5leHQgd29yZCB0byBiZSBhIHNlbGJy aSwgYW5kIHRlcm1pbmF0ZXMgZXhhY3RseSBhcyBtdWNoIGFzIGl0IG5lZWRzIHRvIGluIG9yZGVy IHRvIGRvIHRoYXQuCgpfXycnY3UnJ19fIGVsaWRhYmxlIG1hcmtlcjogc2VwYXJhdGVzIHNlbGJy aSBmcm9tIHByZWNlZGluZyBzdW10aSwgYWxsb3dzIHByZWNlZGluZyBmYSdvcm1hJ28gZWxpc2lv bi4KCgoKX18nJ3ByYW1pJydfXyA9IOKAnHgxIGxvdmVzIHgy4oCdCgoKCicnbG8gc3XigJl1IGRv IGN1c2t1IGxvIHNlIGR14oCZdSBkbyBwcmFtaSBtaSBfX3ZhdSBrZWkga3UgdmF1IGtlaSBrdV9f IHNlIGRqaWNhIG1pJycgPQoKJydsbyBzdeKAmXUgZG8gY3Vza3UgbG8gc2UgZHXigJl1IGRvIHBy YW1pIG1pIF9fY3VfXyBzZSBkamljYSBtaScnCgrigJxUaGF0IHlvdSBzYXkgdGhhdCB5b3UgbG92 ZSBtZSBpcyBkZXNpcmVkIGJ5IGJl4oCdIG9yIOKAnEkgd2lzaCB5b3Ugc2FpZCB5b3UgbG92ZWQg bWXigJ0KCm5vdGU6ICcnY3UnJyBpcyBub3QgYSBmYSdvcm1hJ28sIGJlY2F1c2UgaXQgaXMgbm90 IHRpZWQgdG8gb25lIHNwZWNpZmljIGNvbnN0cnVjdC4gQnV0IGl0IGNhbiBiZSB1c2VkIHRvIGVs aWRlIG90aGVyIGZhJ29ybWEnb3MuCgoKCk9uZSBvZiB0aGUgZ3JlYXRlc3Qgc3RyZW5ndGhzIG9m ICcnY3UnJyBpcyB0aGF0IGl0IHF1aWNrbHkgYmVjb21lcyBlYXN5IHRvIGludHVpdGl2ZWx5IHVu ZGVyc3RhbmQuIEJ5IGl0c2VsZiBpdCBtZWFucyBub3RoaW5nLCBidXQgaXQgcmV2ZWFscyB0aGUg c3RydWN0dXJlIG9mIExvamJhbiBleHByZXNzaW9ucyBieSBpZGVudGlmeWluZyB0aGUgY29yZSBz ZWxicmkuIEluIHRoZSBvcmlnaW5hbCBleGFtcGxlIHdpdGggdGhlIHZpb2xlbnQgQW1lcmljYW4g YnJvdGhlciwgdXNpbmcgJydjdScnIGJlZm9yZSAnJ2ppbXBlJycgZG9lcyBub3QgY2hhbmdlIHRo ZSBtZWFuaW5nIG9mIHRoZSBzZW50ZW5jZSBpbiBhbnkgd2F5LCBidXQgbWlnaHQgbWFrZSBpdCBl YXNpZXIgdG8gcmVhZC4KCgoKSW4gdGhlIGZvbGxvd2luZyBjb3VwbGUgb2YgbGVzc29ucywgJydj dScnIHdpbGwgYmUgdXNlZCB3aGVuIG5lY2Vzc2FyeSwgYW5kIGFsbCBmYSdvcm1hJ29lbGlkZWQg aWYgcG9zc2libGUuIFRoZSBlbGlkZWQgZmEnb3JtYSdvd2lsbCBiZSBlbmNhc2VkIGluIHNxdWFy ZSBicmFja2V0cywgYXMgc2hvd24gYmVsb3cuIFRyeSB0byB0cmFuc2xhdGUgaXQhcGEKCl9fJyd2 YWpuaScnX18g4oCceDEgaXMgaW1wb3J0YW50IHRvIHgyIGZvciByZWFzb24geDPigJ0KCl9fJydq aW1wZScnX18g4oCceDEgdW5kZXJzdGFuZHMgdGhhdCB4MiAoZHXigJl1LWFic3RyYWN0aW9uKSBp cyB0cnVlIGFib3V0IHgz4oCdCgpfXycnYeKAmW8nJ19fIC0gQXR0aXR1ZGluYWw6IEhvcGUgLSBk ZXNwYWlyCgoKCicnYeKAmW8gZG8gbm9pIGtl4oCZYSBsb2pibyAuaeKAmWUgW2t14oCZb10gW2t1 XSBjdSBqaW1wZSBsbyBkdeKAmXUgbG8gZmHigJlvcm1h4oCZbyBba3VdIGN1IHZham5pIFt2YXVd IFtrZWldIFtrdV0gW3ZhdV0nJwoKV2hhdCBkbyBJIHN0YXRlPwoKCgpBbnN3ZXI6IH5+Z3JleSxn cmV5OuKAnEkgaG9wZSB0aGF0IHlvdSwgYSBwcm91ZCBMb2piYW5pc3QsIHVuZGVyc3RhbmRzIHRo YXQgZmEnb3JtYSdvYXJlIGltcG9ydGFudOKAnX5+CgoKCkZ1biBzaWRlIG5vdGU6IE1vc3QgcGVv cGxlIHdlbGwtdmVyc2VkIGluIGZhJ29ybWEnby1lbGlzaW9uIGRvIGl0IHNvIGluc3RpbmN0aXZl bHkgdGhhdCB0aGV5IG9mdGVuIG11c3QgYmUgcmVtaW5kZWQgaG93IGltcG9ydGFudCB1bmRlcnN0 YW5kaW5nIGZhJ29ybWEnb2FyZSB0byB0aGUgdW5kZXJzdGFuZGluZyBvZiBMb2piYW4uIFRoZXJl Zm9yZSwgZWFjaCBUdWVzZGF5IGhhdmUgYmVlbiBkZXNpZ25hdGVkIOKAnFRlcm1pbmF0b3IgRGF5 4oCdIG9yICcnZmHigJlvcm1h4oCZbyBkamVkaScnIG9uIHRoZSBMb2piYW4gSVJDIGNoYXRyb29t LiBEdXJpbmcgVGVybWluYXRvciBEYXksIG1hbnkgcGVvcGxlIHRyeSAoYW5kIG9mdGVuIGZhaWwp IHRvIHJlbWVtYmVyIHdyaXRpbmcgb3V0IGFsbCBmYSdvcm1hJ293aXRoIHNvbWUgdmVyeSB2ZXJi b3NlIGNvbnZlcnNhdGlvbnMgYXMgYSByZXN1bHQuCgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExl c3NvbiBuaW5lIChzdW10Y2l0YSkKClNvIGZhciB3ZSBoYXZlIGJlZW4gZG9pbmcgcHJldHR5IGdv b2Qgd2l0aCB0aGUgc2VsYnJpIHdlIGhhdmUgaGFkIGF0IGhhbmQuIEhvd2V2ZXIsIHRoZXJlIGlz IGEgZmluaXRlIGFtb3VudCBvZiBkZWZpbmVkIHNlbGJyaSBvdXQgdGhlcmUsIGFuZCBpbiBtYW55 IGNhc2VzIHRoZSBzdW10aSBwbGFjZXMgYXJlIG5vdCB1c2VmdWwgZm9yIHdoYXQgd2UgaGFkIGlu IG1pbmQuIFdoYXQgaWYsIHNheSwgaSB3YW50IHRvIHNheSB0aGF0IEkgYW0gdHJhbnNsYXRpbmcg dXNpbmcgYSBjb21wdXRlcj8gVGhlcmUgaXMgbm8gcGxhY2UgaW4gdGhlIHN0cnVjdHVyZSBvZiAn J2ZhbnZhJycgdG8gc3BlY2lmeSB3aGF0IHRvb2wgSSB0cmFuc2xhdGUgd2l0aCwgc2luY2UgbW9z dCBvZiB0aGUgdGltZSwgdGhhdCBpcyBub3QgbmVjZXNzYXJ5LiBOb3QgdG8gd29ycnksIHRoaXMg bGVzc29uIGlzIG9uIGhvdyB0byBhZGQgYWRkaXRpb25hbCBzdW10aSBwbGFjZXMgdG8gdGhlIHNl bGJyaS4KCgoKVGhlIG1vc3QgYmFzaWMgd2F5IHRvIGFkZCBzdW10aSBwbGFjZXMgYXJlIHdpdGgg JydmaeKAmW8uLi5mZeKAmXUnJyAoeWVzLCBhbm90aGVyIGV4YW1wbGUgb2YgYSBmYSdvcm1hJ28s ICcnZmXigJl1JycuIEl04oCZcyBhbG1vc3QgbmV2ZXIgbmVjZXNzYXJ5LCBzbyB0aGlzIG1pZ2h0 IGJlIHRoZSBsYXN0IHRpbWUgeW91IGV2ZXIgc2VlIGl0LikKCkluIGJldHdlZW4gdGhlc2UgdHdv IHdvcmRzIGdvZXMgYSBzZWxicmksIGFuZCBsaWtlICcnbG8uLi5rdScnLCAnJ2Zp4oCZby4uLmZl 4oCZdScnIGV4dHJhY3RzIHRoZSB4MSBvZiB0aGUgc2VsYnJpIHB1dCBpbnRvIGl0LiBIb3dldmVy LCB3aXRoICcnZmnigJlvLi4uZmXigJl1JycsIHRoZSBzZWxicmkgcGxhY2UgaXMgY29udmVydGVk LCBub3QgdG8gYSBzdW10aSwgYnV0IHRvIGEgJydzdW10Y2l0YScnLCBtZWFuaW5nIOKAnHN1bXRp LWxhYmVs4oCdLCB3aXRoIHRoZSBwbGFjZSBzdHJ1Y3R1cmUgb2YgdGhlIHgxIG9mIHRoZSBzZWxi cmkgaXQgY29udmVydGVkLiBUaGlzICcnc3VtdGNpdGEnJyB0aGVuIGFic29yYnMgdGhlIG5leHQg c3VtdGkuIE9uZSBjb3VsZCBzYXkgdGhhdCB1c2luZyBhICcnc3VtdGNpdGEnJywgeW91IGltcG9y dCBhIHN1bXRpIHBsYWNlIGZyb20gYW5vdGhlciBzZWxicmksIGFuZCBhZGQgaXQgdG8gdGhlIGJy aWRpIGJlaW5nIHNhaWQuCgpOb3RlOiBTb21ldGltZXMsIGVzcGVjaWFsbHkgaW4gb2xkZXIgdGV4 dHMsIHRoZSB0ZXJtIOKAnHRhZ+KAnSBvciDigJxtb2RhbOKAnSBpcyB1c2VkIGZvciAnJ3N1bXRj aXRhJycuIElnbm9yZSB0aG9zZSBwdW55IEVuZ2xpc2ggZXhwcmVzc2lvbnMuIFdlIHRlYWNoIHBy b3BlciBMb2piYW4gaGVyZS4KCgoKV2hpbGUgaXQgaXMgaGFyZCB0byBncmFzcCB0aGUgcHJvY2Vz cyBmcm9tIHJlYWRpbmcgYWJvdXQgaXQsIGFuIGV4YW1wbGUgY2FuIHBlcmhhcHMgc2hvdyBpdHMg YWN0dWFsIHNpbXBsaWNpdHk6CgpfXycnc2thbWknJ19fIOKAnHgxIGlzIGEgY29tcHV0ZXIgZm9y IHB1cnBvc2UgeDLigJ0KCl9fJydwaWxubycnX18g4oCceDEgdXNlcyB4MiBhcyBhIHRvb2wgZm9y IGRvaW5nIHgz4oCdCgoKCicnbWkgZmFudmEgdGkgZmnigJlvIHNlIHBpbG5vIFtmZeKAmXVdIGxv IHNrYW1pIFtrdV1bdmF1XScnIC0g4oCcSSB0cmFuc2xhdGUgdGhpcyB3aXRoIGEgY29tcHV0ZXLi gJ0gVGhlIHgyIG9mICcncGlsbm8nJywgd2hpY2ggaXMgdGhlIHgxIG9mICcnc2UgcGlsbm8nJyBp cyBhIHBsYWNlIHN0cnVjdHVyZSBmb3IgYSB0b29sIGJlaW5nIHVzZWQgYnkgc29tZW9uZS4gVGhp cyBwbGFjZSBzdHJ1Y3R1cmUgaXMgY2FwdHVyZWQgYnkgJydmaeKAmW8uLi5mZeKAmXUnJywgYWRk ZWQgdG8gdGhlIG1haW4gc2VsYnJpLCBhbmQgdGhlbiBmaWxsZWQgYnkgJydsbyBza2FtaScnLiBU aGUgaWRlYSBvZiAnJ3N1bXRjaXRhJycgaXMgc29tZXRpbWVzIGV4cHJlc3NlZCBpbiBFbmdsaXNo IHVzaW5nIHRoZSBmb2xsb3dpbmcgdHJhbnNsYXRpb246CgrigJxJIHRyYW5zbGF0ZSB0aGlzIHdp dGgtdG9vbDogQSBjb21wdXRlcuKAnQoKCgpBICcnc3VtdGNpdGEnJyBjYW4gb25seSBhYnNvcmIg b25lIHN1bXRpLCB3aGljaCBpcyBhbHdheXMgdGhlIGZvbGxvd2luZyBvbmUuIEFsdGVybmF0aXZl bHksIHRoZSAnJ3N1bXRjaXRhJycgY29uc3RydWN0IGNhbiBiZSB0ZXJtaW5hdGVkIHdpdGggJydr dScnLCBpbiB3aGljaCBjYXNlIGEgJyd6b+KAmWUnJyBpcyBpbXBsaWVkIHRvIGZpbGwgdGhlICcn c3VtdGNpdGEnJy4gT3IsIG9uZSBjb3VsZCBpbWFnaW5lIGFuIGVsaWRlZCBzdW10aSBiZWluZyB0 ZXJtaW5hdGVkIHdpdGggdGhlICcna3UnJy4KCl9fJyd6dWt0ZScnX18g4oCceDEgaXMgYSB2b2xp dGlvbmFsIGVudGl0eSBjYXJyeWluZyBvdXQgYWN0aW9uIHgyIGZvciBwdXJwb3NlIHgz4oCdCgoK CicnZmnigJlvIHp1a3RlIFtmZeKAmXVdIGt1IGxvIHNrYW1pIFtrdV0gY3UgcGlsbm8gbG8gbG9q Ym8gW2t1XVt2YXVdJycgLSDigJxXaXRoIHZvbGl0aW9uLCBhIGNvbXB1dGVyIHVzZWQgc29tZXRo aW5nIExvamJhbmlj4oCdIChwZXJoYXBzIGltcGx5aW5nIHRoYXQgYSBMb2piYW5pYyBjb21wdXRl ciB3ZW50IHNlbnRpZW50PyBUb3VnaCBpdCBkb2VzIG5vdCBzcGVjaWZ5IHdobyBoYWQgdm9saXRp b24uIEl0IGNvdWxkIGp1c3QgYmUgdGhlIHByb2dyYW1tZXIgd2hvIHByb2dyYW1tZWQgdGhlIGNv bXB1dGVyIC0gaG93IGJvcmluZy4pCgoKCldoYXQgZG9lcyAnJ21pIGppbXBlIGZpIGxvIGxvamJh biBba3VdIGZp4oCZbyBzZSB0YXZsYSBbZmXigJl1XSBtaScnIHN0YXRlPwoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OuKAnEkgdW5kZXJzdGFuZCBzb21ldGhpbmcgYWJvdXQgTG9qYmFuLCBzcG9rZW4g dG8gbWXigJ1+fgoKCgpQdXR0aW5nIHRoZSAnJ3N1bXRjaXRhJycgcmlnaHQgaW4gZnJvbnQgb2Yg dGhlIHNlbGJyaSBhbHNvIG1ha2VzIGl0IHNlbGYtdGVybWluYXRlLCBzaW5jZSBzdW10Y2l0YSBv bmx5IGNhbiBhYnNvcmIgc3VtdGksIGFuZCBub3Qgc2VsYnJpLiBUaGlzIGZhY3Qgd2lsbCBiZSBv ZiBpbXBvcnRhbmNlIGluIG5leHQgbGVzc29uLCBhcyB5b3Ugd2lsbCBzZWUuCgoKClNhZGx5LCAn J2Zp4oCZbycnIGlzIG5vdCB1c2VkIHZlcnkgb2Z0ZW4gZGVzcGl0ZSBpdHMgZmxleGliaWxpdHku IFdoYXQgSVMgdXNlZCB2ZXJ5IG9mdGVuLCB0aG91Z2gsIGFyZSBCQUkuIEJBSSBhcmUgYSBjbGFz cyBvZiBMb2piYW4gd29yZHMsIHdoaWNoIGluIHRoZW1zZWx2ZXMgYWN0IGFzICcnc3VtdGNpdGEn Jy4gQW4gZXhhbXBsZSBvZiB0aGlzIGlzICcnenXigJllJycsIHRoZSBCQUkgZm9yICcnenVrdGUn Jy4gR3JhbWF0aWNhbGx5LCAnJ3p14oCZZScnIGlzIHRoZSBzYW1lIGFzICcnZmnigJlvIHp1a3Rl IGZl4oCZdScnLiBUaHVzLCB0aGUgYWJvdmUgZXhhbXBsZSBjb3VsZCBiZSByZWR1Y2VkIHRvOgoK Jyd6deKAmWUga3UgbG8gc2thbWkgW2t1XSBjdSBwaWxubyBsbyBsb2pibyBba3VdIFt2YXVdJycu IFRoZXJlIGV4aXN0IHNvbWV0aGluZyBsaWtlIDYwIEJBSSwgYW5kIGEgbG90IG9mIHRoZXNlIGFy ZSB2ZXJ5IHVzZWZ1bCBpbmRlZWQuIEZ1cnRlcm1vcmUsIEJBSSBjYW4gYWxzbyBiZSBjb252ZXJ0 ZWQgd2l0aCAnJ3NlJycgYW5kIGZyaWVuZHMsIG1lYW5pbmcgdGhhdCAnJ3NlIHp14oCZZScnIGlz IGVxdWFsIHRvICcnZmnigJlvIHNlIHp1a3RlIGZl4oCZdScnLCB3aGljaCByZXN1bHRzIGluIGEg Z3JlYXQgZGVhbCBtb3JlIEJBSS4KCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0ZW4gKFBV LCBGQWhBLCBaSSwgVkEsIFpFaEEsIFZFaEEpCgpIb3cgdW5mYW1pbGlhciB0byB0aGUgRW5nbGlz aC1zcGVha2VyIGEgbGFuZ3VhZ2UgTG9qYmFuIGlzIHdoZW4gb25lIGNhbiByZWFkIHRocm91Z2gg bmluZSBsZXNzb25zIG9mIExvamJhbiBncmFtbWFyIHdpdGhvdXQgbWVldGluZyBhIHRlbnNlIG9u Y2UuIFRoaXMgaXMgYmVjYXVzZSwgdW5saWtlIG1hbnkgbmF0dXJhbCBsYW5ndWFnZXMgKG1vc3Qg SW5kby1FdXJvcGVhbiBvbmVzLCBmb3IgaW5zdGFuY2UpLCBhbGwgdGVuc2VzIGluIExvamJhbiBh cmUgb3B0aW9uYWwuIFNheWluZyAnJ21pIGNpdGthIGxvIGNpcmxhIFtrdV0nJyBjYW4gbWVhbiDi gJxJIGVhdCBjaGVlc2XigJ0gb3Ig4oCcSSBhdGUgdGhlIGNoZWVzZeKAnSBvciDigJxJIGFsd2F5 cyBlYXQgY2hlZXNl4oCdIG9yIOKAnEluIGEgbW9tZW50LCBpIHdpbGwgaGF2ZSBqdXN0IGZpbmlz aGVkIGVhdGluZyBjaGVlc2XigJ0uIENvbnRleHQgcmVzb2x2ZXMgd2hhdCBpcyBjb3JyZWN0LCBh bmQgaW4gbW9zdCBjb252ZXJzYXRpb24sIHRlbnNlcyBhcmUgbm90IG5lZWRlZCBhdCBhbGwuIEhv d2V2ZXIsIHdoZW4gaXTigJlzIG5lZWRlZCBpdOKAmXMgbmVlZGVkLCBhbmQgaXQgbXVzdCBiZSB0 YXVnaHQuIEZ1cnRoZXJtb3JlLCBMb2piYW4gdGVuc2VzIGFyZSB1bnVzdWFsIGJlY2F1c2UgdGhl eSB0cmVhdCB0aW1lIGFuZCBzcGFjZSBmdW5kYW1lbnRhbGx5IHRoZSBzYW1lIC0gc2F5aW5nIHRo YXQgaSB3b3JrZWQgYSBsb25nIHRpbWUgYWdvIGlzIG5vdCBncmFtbWF0aWNhbGx5IGRpZmZlcmVu dCB0aGFuIHNheWluZyBpIHdvcmsgZmFyIGF3YXkgdG8gdGhlIG5vcnRoLgoKTGlrZSBtYW55IG90 aGVyIGxhbmd1YWdlcywgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gaXMgcGVyaGFwcyB0aGUgbW9z dCBkaWZmaWN1bHQgcGFydCBvZiB0aGUgbGFuZ3VhZ2UuIFVubGlrZSBtYW55IG90aGVyIGxhbmd1 YWdlcyB0aG91Z2gsIGl04oCZcyBwZXJmZWN0bHkgcmVndWxhciBhbmQgbWFrZXMgc2Vuc2UuIFNv IGZlYXIgbm90LCBmb3IgaXQgd2lsbCBub3QgaW52b2x2ZSBzd2VhdGluZyB0byBsZWFybiBob3cg dG8gbW9kaWZ5IHRoZSBzZWxicmkgb3IgYW55dGhpbmcgc2lsbHkgbGlrZSB0aGF0LgoKCgpObywg aW4gdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0sIGFsbCB0ZW5zZXMgYXJlIHN1bXRjaXRhLCB3aGlj aCB3ZSBoYXZlIGNvbnZlbmllbnRseSBqdXN0IG1hZGUgb3Vyc2VsdmVzIGZhbWlsaWFyIHdpdGgu IFRoZXJlIGFyZSBtYW55IGRpZmZlcmVudCBraW5kcyBvZiB0ZW5zZS1zdW10Y2l0YSwgc28gbGV0 4oCZcyBzdGFydCBhdCB0aGUgb25lcyBtb3N0IGZhbWlsaWFyIHRvIEVuZ2xpc2gtc3BlYWtlcnMu CgpfXycncHUnJ19fIC0gc3VtdGNpdGE6IGJlZm9yZSBbc3VtdGldCgpfXycnY2EnJ19fIC0gc3Vt dGNpdGE6IGF0IHRoZSBzYW1lIHRpbWUgYXMgW3N1bXRpXQoKX18nJ2JhJydfXyAtIHN1bXRjaXRh OiBhZnRlciBbc3VtdGldCgoKClRoZXNlIGFyZSBsaWtlIHRoZSBFbmdsaXNoIGNvbmNlcHRzIOKA nGJlZm9yZeKAnSwg4oCcbm934oCdIGFuZCDigJxhZnRlcuKAnS4gSW4gYWN0dWFsaXR5IHRob3Vn aCwgb25lIGNvdWxkIGFyZ3VlIHRoYXQgdHdvIHBvaW50LWxpa2UgZXZlbnRzIGNhbiBuZXZlciBv Y2N1ciBleGFjdGx5IHNpbXVsdGFuZW91c2x5LCByZW5kZXJpbmcgJydjYScnIHVzZWxlc3MuIEJ1 dCAnJ2NhJycgZXh0ZW5kcyBzbGlnaHRseSBpbnRvIHRoZSBwYXN0IGFuZCB0aGUgZnV0dXJlLCBt ZWFuaW5nIGp1c3Qg4oCcYWJvdXQgbm934oCdLiBUaGlzIGlzIGJlY2F1c2UgaHVtYW4gYmVpbmdz IGRvbuKAmXQgcGVyY2VpdmUgdGltZSBpbiBhIHBlcmZlY3RseSBsb2dpY2FsIHdheSwgYW5kIHRo ZSBMb2piYW4gdGVuc2Ugc3lzdGVtIHJlZmxlY3RzIHRoYXQuCgoKClNpZGUgbm90ZTogSXQgd2Fz IGFjdHVhbGx5IHN1Z2dlc3RlZCBtYWtpbmcgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gcmVsYXRp dmlzdGljLiBUaGF0IGlkZWEsIGhvd2V2ZXIsIHdhcyBkcm9wcGVkLCBiZWNhdXNlIGl0IGlzIGNv dW50ZXItaW50dWl0aXZlLCBhbmQgd291bGQgbWVhbiB0aGF0IHRvIGxlYXJuIExvamJhbiwgb25l IHdvdWxkIGhhdmUgdG8gbGVhcm4gdGhlIHRoZW9yeSBvZiByZWxhdGl2aXR5IGZpcnN0LiAgCgoK ClNvLCBob3cgd291bGQgeW91IHNheSDigJxJIGV4cHJlc3MgdGhpcyBhZnRlciBJIGNhbWUgaGVy ZT/igJ0gKHBvaW50aW5nIHRvIGEgcGFwZXIpCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBj dXNrdSB0aSBiYSBsbyBudSBtaSBrbGFtYSB0aSBbdmF1XSBba2VpIFtrdV0gW3ZhdV0nJ35+CgoK ClVzdWFsbHkgd2hlbiBzcGVha2luZywgd2UgZG8gbm90IG5lZWQgdG8gc3BlY2lmeSB3aGljaCBl dmVudCB0aGlzIGFjdGlvbiBpcyBpbiB0aGUgcGFzdCByZWxhdGl2ZSB0by4gSW46IOKAnEkgZ2F2 ZSBhIGNvbXB1dGVyIGF3YXnigJ0sIHdlIGNhbiBhc3N1bWUgdGhhdCB0aGUgYWN0aW9uIGhhcHBl bmVkIHJlbGF0aXZlIHRvIOKAnG5vd+KAnSwgYW5kIHRodXMgd2UgY2FuIGVsaWRlIHRoZSBzdW10 aSBvZiB0aGUgc3VtdGNpdGEsIGJlY2F1c2UgaXTigJlzIG9idmlvdXM6CgonJ3B1IGt1IG1pIGR1 bmRhIGxvIHNrYW1pIFtrdV0gW3ZhdV0nJyBvcgoKJydtaSBkdW5kYSBsbyBza2FtaSBba3VdIHB1 IFtrdV0gW3ZhdV0nJyBvciwgbW9yZSBjb21tb25seQoKJydtaSBwdSBba3VdIGR1bmRhIGxvIHNr YW1pIFtrdV0gW3ZhdV0nJy4gVGhlIHN1bXRpIHdoaWNoIGZpbGxzIHRoZSBzdW10Y2l0YSBpcyBh biBpbXBsaWVkICcnem/igJllJycsIHdoaWNoIGlzIGFsbW9zdCBhbHdheXMgdW5kZXJzdG9vZCBh cyByZWxhdGl2ZSB0byB0aGUgc3BlYWtlcnMgdGltZSBhbmQgcGxhY2UgKHRoaXMgaXMgZXNwZWNp YWxseSBpbXBvcnRhbnQgd2hlbiBzcGVha2luZyBhYm91dCBsZWZ0IGFuZCByaWdodCkuIElmIHNw ZWFraW5nIGFib3V0IHNvbWUgZXZlbnRzIHRoYXQgaGFwcGVuZWQgc29tZSBvdGhlciB0aW1lIHRo YW4gdGhlIHByZXNlbnQsIGl0IGlzIHNvbWV0aW1lcyBhc3N1bWVkIHRoYXQgYWxsIHRlbnNlcyBh cmUgcmVsYXRpdmUgdG8gdGhhdCBldmVudCB3aGljaCBpcyBiZWluZyBzcG9rZW4gYWJvdXQuIElu IG9yZGVyIHRvIGNsYXJpZnkgdGhhdCBhbGwgdGVuc2VzIGFyZSByZWxhdGl2ZSB0byB0aGUgc3Bl YWtlcnMgY3VycmVudCBwb3NpdGlvbiwgdGhlIHdvcmQgJyduYXUnJyBjYW4gYmUgdXNlZCBhdCBh bnkgdGltZS4gQW5vdGhlciB3b3JkLCB7a2l9IG1hcmtzIGEgdGVuc2Ugd2hpY2ggaXMgdGhlbiBj b25zaWRlcmVkIHRoZSBuZXcgc3RhbmRhcmQuIFRoYXQgd2lsbCBiZSB0YXVnaHQgd2F5IGxhdGVy LgoKX18nJ25hdScnX18gdXBkYXRlcyB0ZW1wb3JhbCBhbmQgc3BhY2lhbCBmcmFtZSBvZiByZWZl cmVuY2UgdG8gdGhlIHNwZWFrZXIncyBjdXJyZW50IGhlcmUgYW5kIG5vdy4KCgoKX18nJ2d1Z2Rl JydfXyA9IOKAnHgxIGlzIHRoZSBjb3VudHJ5IG9mIHBlb3BsZSB4MiB3aXRoIGxhbmQvdGVycml0 b3J5IHgz4oCdCgoKCkFsc28gbm90ZSB0aGF0ICcnbWkgcHUgW2t1XSBrbGFtYSBsbyBtZXJrbyBn dWdkZSBba3VdIFt2YXVdJycsIOKAnEkgd2VudCB0byBBbWVyaWNh4oCdLCBkb2VzIG5vdCBpbXBs eSB0aGF0IEnigJltIG5vdCBzdGlsbCB0cmF2ZWxpbmcgdG8gVVNBLCBvbmx5IHRoYXQgaXQgd2Fz IGFsc28gdHJ1ZSBzb21lIHRpbWUgaW4gdGhlIHBhc3QsIGZvciBpbnN0YW5jZSBmaXZlIG1pbnV0 ZXMgYWdvLgoKCgpBcyBtZW50aW9uZWQsIHNwYWNpYWwgYW5kIHRlbXBvcmFsIHRpbWUgdGVuc2Vz IGFyZSB2ZXJ5IG11Y2ggYWxpa2UuIENvbnRyYXN0IHRoZSBwcmV2aW91cyB0aHJlZSB0aW1lIHRl bnNlcyB3aXRoIHRoZXNlIGZvdXIgc3BhY2lhbCB0ZW5zZXM6CgpfXycnenXigJlhJydfXyBzdW10 Y2l0YTogbGVmdCBvZiBbc3VtdGldCgpfXycnY2HigJl1JydfXyBzdW10Y2l0YTogaW4gZnJvbnQg b2YgW3N1bXRpXQoKX18nJ3Jp4oCZdScnX18gc3VtdGNpdGE6IHJpZ2h0IG9mIFtzdW10aV0KCl9f JydideKAmXUnJ19fIHN1bXRjaXRhOiBhdCB0aGUgc2FtZSBwbGFjZSBhcyBbc3VtdGldIChzcGFj aWFsIGVxdWl2YWxlbnQgb2Yge2NhfSkKCgoKX18nJ3tv4oCZb30nJ19fOiBhdHRpdHVkaW5hbDog cGF0aWVuY2UgLSB0b2xlcmFuY2UgLSBhbmdlcgoKCgpXaGF0IHdvdWxkICcnLm/igJlvbmFpIHJp 4oCZdSBba3VdIG51IGxvIHByZW51IFtrdV0gY3UgZGFyeGkgbG8gZ2Vya3UgcHUgW2t1XSBba3Vd IFt2YXVdIFtrZWldIFt2YXVdJycgbWVhbj8gKG5vdGljZSB0aGUgZmlyc3QgZWxpZGVkIGt1ISkK Cl9fJydkYXJ4aScnX18geDEgYmVhdHMvaGl0cyB4MiB3aXRoIGluc3RydW1lbnQgeDMgYXQgbG9j dXMgeDQKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxbYW5nZXIhXSBUbyB0aGUgcmlnaHQgKG9m IHNvbWV0aGluZywgcHJvYmFibHkgbWUpIGFuZCBpbiB0aGUgcGFzdCAob2Ygc29tZSBldmVudCks IHNvbWV0aGluZyBpcyBhbiBldmVudCBvZiBhIHBlcnNvbiBiZWF0aW5nIGEgZG9nLuKAnSBvciDi gJxBIG1hbiBoaXQgYSBkb2cgdG8gbXkgcmlnaHQh4oCdfn4KCgoKSWYgdGhlcmUgYXJlIHNldmVy YWwgdGVuc2Ugc3VtdGNpdGEgaW4gb25lIGJyaWRpLCB0aGUgcnVsZSBpcyB0aGF0IHlvdSByZWFk IHRoZW0gZnJvbSBsZWZ0IHRvIHJpZ2h0LCB0aGlua2luZyBpdCBhcyBhIHNvIGNhbGxlZCDigJxp bWFnaW5hcnkgam91cm5leeKAnSwgV2hlcmUgeW91IGJlZ2luIGF0IGFuIGltcGxpZWQgcG9pbnQg aW4gdGltZSBhbmQgc3BhY2UgKGRlZmF1bHQ6IHRoZSBzcGVha2Vy4oCZcyBub3cgYW5kIGhlcmUp LCBhbmQgdGhlbiBmb2xsb3cgdGhlIHN1bXRjaXRhIG9uZSBhdCBhIHRpbWUgZnJvbSBsZWZ0IHRv IHJpZ2h0LgoKRXhhbXBsZQoKJydtaSBwdSBba3VdIGJhIFtrdV0gamltcGUgZmkgbG8gbG9qYm8g ZmHigJlvcm1h4oCZbyBba3VdIFt2YXVdJycgPSDigJxBdCBzb21lIHRpbWUgaW4gdGhlIHBhc3Qs IEkgd2lsbCBiZSBhYm91dCB0byBrbm93IGFib3V0IGZhJ29ybWEnb3Mu4oCdCgonJ21pIGJhIFtr dV0gcHUgW2t1XSBqaW1wZSBmaSBsbyBsb2pibyBmYeKAmW9ybWHigJlvIFtrdV0gW3ZhdV0nJyDi gJxBdCBzb21lIHBvaW50IGluIHRoZSBmdXR1cmUsIEkgd2lsbCBoYXZlIHVuZGVyc3Rvb2QgYWJv dXQgZmEnb3JtYSdvcy7igJ0KClNpbmNlIHdlIGRvIG5vdCBzcGVjaWZ5IHRoZSBhbW91bnQgb2Yg dGltZSB3ZSBtb3ZlIGJhY2sgb3IgZm9ydGgsIHRoZSB1bmRlcnN0YW5kaW5nIGNvdWxkIGluIGJv dGggY2FzZXMgaGFwcGVuIGluIHRoZSBmdXR1cmUgb3IgdGhlIHBhc3Qgb2YgdGhlIHBvaW50IG9m IHJlZmVyZW5jZS4KCgoKQWxzbywgaWYgc3BhY2lhbCBhbmQgdGVtcG9yYWwgdGVuc2VzIGFyZSBt aXhlZCwgdGhlIHJ1bGUgaXMgdG8gYWx3YXlzIHB1dCB0ZW1wb3JhbCBiZWZvcmUgc3BhY2lhbC4g SWYgdGhpcyBydWxlIGlzIHZpb2xhdGVkLCBpdCBjYW4gc29tZXRpbWVzIHJlc3VsdCBpbiBzeW50 YWN0aWNhbCBhbWJpZ3VpdHksIHdoaWNoIExvamJhbiBkb2VzIG5vdCB0b2xlcmF0ZS4KCgoKU3Vw cG9zZSB3ZSB3YW50IHRvIHNwZWNpZnkgdGhhdCB0aGUgYSBtYW4gaGl0IGEgZG9nIGp1c3QgYSBt aW51dGUgYWdvLiBUaGUgd29yZHMgJyd6aScnLCAnJ3phJycgYW5kICcnenUnJyBzcGVjaWZpZXMg YSBzaG9ydCwgdW5zcGVjaWZpZWQgKHByZXN1bWFibHkgbWVkaXVtKSBhbmQgbG9uZyBkaXN0YW5j ZSBpbiB0aW1lLiBOb3RpY2UgdGhlIHZvd2VsIG9yZGVyIHtpfSwge2F9IGFuZCB7dX0uIFRoaXMg b3JkZXIgYXBwZWFycyBhZ2FpbiBhbmQgYWdhaW4gaW4gTG9qYmFuLCBhbmQgbWlnaHQgYmUgd29y dGggdG8gbWVtb3JpemUuIOKAnFNob3J04oCdIGFuZCDigJxsb25n4oCdIGluIGFyZSBhbHdheXMg Y29udGV4dCBkZXBlbmRlbnQsIHJlbGF0aXZlIGFuZCBzdWJqZWN0aXZlLiBUd28gaHVuZHJlZCB5 ZWFycyBpcyBhIHNob3J0IHRpbWUgZm9yIGEgc3BlY2llcyB0byBldm9sdmUsIGJ1dCBhIGxvbmcg dGltZSB0byB3YWl0IGZvciB0aGUgYnVzLgoKX18nJ3ppJydfXyBzdW10Y2l0YTogT2N1cnJpbmcg dGhlIHNtYWxsIGRpc3RhbmNlIG9mIFtzdW10aV0gaW4gdGltZSBmcm9tIHBvaW50IG9mIHJlZmVy ZW5jZSAKCl9fJyd6YScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSB1bnNwZWNpZmllZChtZWRp dW0pIGRpc3RhbmNlIG9mIFtzdW10aV0gaW4gdGltZSBmcm9tIHBvaW50IG9mIHJlZmVyZW5jZSAK Cl9fJyd6dScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSBmYXIgZGlzdGFuY2Ugb2YgW3N1bXRp XSBpbiB0aW1lIGZyb20gbm93IAoKCgpTaW1pbGFybHksIHNwYWNpYWwgZGlzdGFuY2UgaXMgbWFy a2VkIGJ5IHt2aX0sIHt2YX0gYW5kIHt2dX0gZm9yIHNob3J0LCB1bnNwZWNpZmllZCAobWVkaXVt KSBhbmQgbG9uZyBkaXN0YW5jZSBpbiBzcGFjZS4KCl9fJyd2aScnX18gc3VtdGNpdGE6IE9jdXJy aW5nIHRoZSBzbWFsbCBkaXN0YW5jZSBvZiBbc3VtdGldIGluIHNwYWNlIGZyb20gcG9pbnQgb2Yg cmVmZXJlbmNlIAoKX18nJ3ZhJydfXyBzdW10Y2l0YTogT2N1cnJpbmcgdGhlIHVuc3BlY2lmaWVk KG1lZGl1bSkgZGlzdGFuY2Ugb2YgW3N1bXRpXSBpbiBzcGFjZSBmcm9tIHBvaW50IG9mIHJlZmVy ZW5jZSAKCl9fJyd2dScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSBmYXIgZGlzdGFuY2Ugb2Yg W3N1bXRpXSBpbiBzcGFjZSBmcm9tIG5vdyAKCl9fJydndW5rYScnX18g4oCceDEgd29ya3MgYXQg eDIgd2l0aCBvYmplY3RpdmUgeDPigJ0KCgoKVHJhbnNsYXRlOiAnJ2JhIFtrdV0gemEga3UgbWkg dnUgW2t1XSBndW5rYSBbdmF1XScnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcU29tZSB0aW1l IGluIHRoZSBmdXR1cmUsIEkgd2lsbCB3b3JrIGEgcGxhY2UgbG9uZyBhd2F54oCdfn4KCk5vdGU6 IFBlb3BsZSByYXJlbHkgdXNlcyAnJ3ppJycsICcnemEnJyBvciAnJ3p1Jycgd2l0aG91dCBhICcn cHUnJyBvciAnJ2JhJycgaW4gZnJvbnQgb2YgaXQuIFRoaXMgaXMgYmVjYXVzZSBtb3N0IHBlb3Bs ZSBhbHdheXMgbmVlZCB0byBzcGVjaWZ5IHBhc3Qgb3IgZnV0dXJlIGluIHRoZWlyIG5hdGl2ZSBs YW5ndWFnZS4gV2hlbiB5b3UgdGhpbmsgYWJvdXQgaXQgTG9qYmFuaWNhbGx5LCBtb3N0IG9mIHRo ZSB0aW1lIHRoZSB0aW1lLWRpcmVjdGlvbiBpcyBvYnZpb3VzLCBhbmQgdGhlICcncHUnJyBvciAn J2JhJycgc3VwZXJmbHVvdXMhCgoKClRoZSBvcmRlciBpbiB3aGljaCBkaXJlY3Rpb24tc3VtdGNp dGEgYW5kIGRpc3RhbmNlLXN1bXRjaXRhIGFyZSBzYWlkIG1ha2VzIGEgZGlmZmVyZW5jZS4gUmVt ZW1iZXIgdGhhdCB0aGUgbWVhbmluZyBvZiBzZXZlcmFsIHRlbnNlIHdvcmRzIGFyZSBwaWN0dXJl ZCBieSBhbiBpbWFnaW5hcnkgam91cm5leSByZWFkaW5nIGZyb20gbGVmdCB0byByaWdodC4gVGh1 cyB7JydwdSB6dScnfSBpcyDigJxhIGxvbmcgdGltZSBhZ2/igJ0gd2hpbGUgeycnenUgcHUnJ30g aXMg4oCcaW4gdGhlIHBhc3Qgb2Ygc29tZSBwb2ludCBpbiB0aW1lIHdoaWNoIGlzIGEgbG9uZyB0 aW1lIHRvd2FyZCB0aGUgZnV0dXJlIG9yIHRoZSBwYXN0IG9mIG5vd+KAnS4gSW4gdGhlIGZpcnN0 IGV4YW1wbGUsICcncHUnJyBzaG93cyB0aGF0IHdlIGJlZ2luIGluIHRoZSBwYXN0LCAnJ3p1Jycg dGhlbiB0aGF0IGl0IGlzIGEgbG9uZyB0aW1lIGJhY2t3YXJkcy4gSW4gdGhlIHNlY29uZCBleGFt cGxlLCAnJ3p1Jycgc2hvd3MgdGhhdCB3ZSBiZWdpbiBhdCBzb21lIHBvaW50IGZhciBhd2F5IGlu IHRpbWUgZnJvbSBub3csICcncHUnJyB0aGVuLCB0aGF0IHdlIG1vdmUgYmFja3dhcmRzIGZyb20g dGhhdCBwb2ludC4gVGh1cyB7JydwdSB6dScnfSBpcyBhbHdheXMgaW4gdGhlIHBhc3QuIHsnJ3p1 IHB1Jyd9IGNvdWxkIGJlIGluIHRoZSBmdXR1cmUuCgoKCkFzIGJyaWVmbHkgaW1wbGllZCBlYXJs aWVyLCBhbGwgdGhlc2UgY29uc3RydWN0cyBiYXNpY2FsbHkgdHJlYXQgYnJpZGkgYXMgaWYgdGhl eSB3ZXJlIHBvaW50LWxpa2UgaW4gdGltZSBhbmQgc3BhY2UuIEluIGFjdHVhbGl0eSwgbW9zdCBl dmVudHMgcGxheXMgb3V0IG92ZXIgYSBzcGFuIG9mIHRpbWUgYW5kIHNwYWNlLiBJbiB0aGUgZm9s bG93aW5nIGZldyBwYXJhZ3JhcGhzLCB3ZSB3aWxsIGxlYXJuIGhvdyB0byBzcGVjaWZ5IGludGVy dmFscyBvZiB0aW1lIGFuZCBzcGFjZS4KCgoKX18nJ3pl4oCZaScnX18gc3VtdGNpdGE6IHNwYW5u aW5nIG92ZXIgdGhlIHNob3J0IHRpbWUgb2YgW3N1bXRpXQoKX18nJ3pl4oCZYScnX18gc3VtdGNp dGE6IHNwYW5uaW5nIG92ZXIgdGhlIHVuc3BlY2lmaWVkIChtZWRpdW0pIHRpbWUgb2YgW3N1bXRp XQoKX18nJ3pl4oCZdScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgdGltZSBv ZiBbc3VtdGldCgoKCl9fJyd2ZeKAmWknJ19fIHN1bXRjaXRhOiBzcGFubmluZyBvdmVyIHRoZSBz aG9ydCBzcGFjZSBvZiBbc3VtdGldCgpfXycndmXigJlhJydfXyBzdW10Y2l0YTogc3Bhbm5pbmcg b3ZlciB0aGUgdW5zcGVjaWZpZWQgKG1lZGl1bSkgc3BhY2Ugb2YgW3N1bXRpXQoKX18nJ3Zl4oCZ dScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgc3BhY2Ugb2YgW3N1bXRpXQoK CgpTaXggd29yZHMgYXQgYSB0aW1lLCBJIGtub3csIGJ1dCByZW1lbWJlcmluZyB0aGUgdm93ZWwg c2VxdWVuY2UgYW5kIHRoZSBzaW1pbGFyaXR5IG9mIHRoZSBpbml0aWFsIGxldHRlciB6IGZvciB0 ZW1wb3JhbCB0ZW5zZXMgYW5kIHYgZm9yIHNwYWNpYWwgdGVuc2VzIG1pZ2h0IGhlbHAgdGhlIG1l bW9yaXppbmcuCgpfXycnLm9pJydfXyAtIGF0dGl0dWRpbmFsOiBwYWluIC0gcGxlYXN1cmUKCgoK VHJhbnNsYXRlOiAnJy5vaSBkYWkgZG8gdmXigJl1IFtrdV0ga2xhbWEgbG8gZG90Y28gZ3VnZGUg W2t1XSB6ZeKAmXUgW2t1XSBbdmF1XScnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcT3VjaCwg eW91IHNwZW5kIGEgbG9uZyB0aW1lIHRyYXZlbGluZyBhIGxvbmcgc3BhY2UgdG8gR2VybWFueeKA nSB+fgoKCgpUaG91Z2ggbW9zdCBwZW9wbGUgYXJlIG5vdCBmYW1pbGlhciB3aXRoIHNwYWNpYWwg dGVuc2VzLCB0aGVzZSBuZXcgd29yZHMgY2FuIG9wZW4gdXAgZm9yIHNvbWUgcHJldHR5IHN3ZWV0 IHVzZXMuIE9uZSBjb3VsZCwgZm9yIGluc3RhbmNlLCB0cmFuc2xhdGUg4oCcVGhhdOKAmXMgYSBi aWcgZG9n4oCdIGFzICcndGkgdmXigJl1IFtrdV0gZ2Vya3UgW3ZhdV0nJy4gU2F5aW5nOiDigJxU aGlzIHRoaW5nIGRvZ3MgZm9yIGEgbG9uZyBzcGFjZeKAnSBtYWtlcyB5b3Ugc291bmQgcmV0YXJk ZWQgaW4gRW5nbGlzaCwgYnV0IHdlbGwgc3Bva2VuIGluIExvamJhbiEKCgoKJyd6ZeKAmXUnJyBh bmQgaXRzIGJyb3RoZXJzIGFsc28gY29tYmluZSB3aXRoIG90aGVyIHRlbnNlcyB0byBmb3JtIGNv bXBvdW5kIHRlbnNlcy4gVGhlIHJ1bGUgZm9yICcnemXigJl1JycgYW5kIHRoZSBvdGhlcnMgYXJl IHRoYXQgYW55IHRlbnNlcyBwcmVjZWRpbmcgaXQgbWFya3MgYW4gZW5kcG9pbnQgb2YgdGhlIHBy b2Nlc3MgKHJlbGF0aXZlIHRvIHRoZSBwb2ludCBvZiByZWZlcmVuY2UpIGFuZCBhbnkgdGVuc2Vz IGNvbWluZyBhZnRlciBpdCBtYXJrcyB0aGUgb3RoZXIgZW5kcG9pbnQgcmVsYXRpdmUgdG8gdGhl IGZpcnN0LiBUaGlzIHNob3VsZCBiZSBkZW1vbnN0cmF0ZWQgd2l0aCBhIGNvdXBsZSBvZiBleGFt cGxlczoKCicnLm/igJlvY3XigJlpIGRvIGNpdGthIHB1IFtrdV0gemXigJl1IFtrdV0gYmEgW2t1 XSB6dSBba3VdIFt2YXVdJycgLSDigJxbdG9sZXJhbmNlXSB5b3UgZWF0IGJlZ2lubmluZyBpbiB0 aGUgcGFzdCBhbmQgZm9yIGEgbG9uZyB0aW1lIGVuZGluZyBhdCBzb21lIHBvaW50IGZhciBpbnRv IHRoZSBmdXR1cmUgb2Ygd2hlbiB5b3Ugc3RhcnRlZOKAnSBvciDigJxIbXBmLCB5b3UgYXRlIGZv ciBhIGxvbmcgdGltZeKAnS4gT25lIGNhbiBhbHNvIGNvbnRyYXN0ICcnZG8gY2EgW2t1XSB6ZeKA mWkgW2t1XSBwdSBba3VdIGtsYW1hIFt2YXVdJycgd2l0aCAnJ2RvIHB1IFtrdV0gemXigJlpIFtr dV0gY2EgW2t1XSBrbGFtYSBbdmF1XScnLiBUaGUgZmlyc3QgZXZlbnQgb2YgdHJhdmVsaW5nIGhh cyBvbmUgZW5kcG9pbnQgaW4gdGhlIHByZXNlbnQgYW5kIGV4dGVuZHMgYSBsaXR0bGUgdG93YXJk cyB0aGUgcGFzdCwgd2hpbGUgdGhlIHNlY29uZCBldmVudCBoYXMgb25lIGVuZHBvaW50IGluIHRo ZSBwYXN0IGFuZCBleHRlbmRzIG9ubHkgdG8gdGhlIHByZXNlbnQgKHRoYXQgaXMsIHNsaWdodHkg aW50byB0aGUgcGFzdCBvciBmdXR1cmUpIG9mIHRoYXQgZW5kcG9pbnQuCgpfXycnam1pdmUnJ19f IOKAnHgxIGlzIGFsaXZlIGJ5IHN0YW5kYXJkIHgy4oCdCgoKCldoYXQgZG9lcyAnJy51aSBtaSBw dSBba3VdIHppIFtrdV0gemXigJl1IFtrdV0gam1pdmUgW3ZhdV0nJyBleHByZXNzPwoKCgpBbnN3 ZXI6IH5+Z3JleSxncmV5OuKAnFtoYXBwaW5lc3MhXSBJIGxpdmUgZnJvbSBhIGxpdHRsZSBpbnRv IHRoZSBwYXN0IGFuZCBhIGxvbmcgd2F5IHRvd2FyZHMgdGhlIGZ1dHVyZSBvciBwYXN0IChvYnZp b3VzbHkgdGhlIGZ1dHVyZSwgaW4gdGhpcyBjYXNlKSBvZiB0aGF0IGV2ZW504oCdIG9yIOKAnEkg YW0geW91bmcsIGFuZCBoYXZlIG1vc3QgbXkgbGlmZSBhaGVhZCBvZiBtZSA6KeKAnX5+CgoKCkp1 c3QgdG8gdW5kZXJsaW5lIHRoZSBzaW1pbGFyaXR5IHdpdGggc3BhY2lhbCB0ZW5zZXMsIGxldOKA mXMgaGF2ZSBhbm90aGVyIGV4YW1wbGUsIHRoaXMgdGltZSB3aXRoIHNwYWNpYWwgdGVuc2VzOgoK X18nJy514oCZZScnX18gYXR0aXR1ZGluYWw6IHdvbmRlciAtIGNvbW1vbnBsYWNlCgoKCicnLnXi gJllIHph4oCZYSBba3VdIGJ14oCZdSBba3VdIHZl4oCZdSBba3VdIGNh4oCZdSBba3VdIHpkYW5p IFt2YXVdJycgLSBXaGF0IGRvZXMgaXQgbWVhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTog4oCc W3dvbmRlcl0gW0kgb2JzZXJ2ZSFdIEV4dGVuZGluZyBhIGxvbmcgc3BhY2UgZnJvbSBoZXJlIHRv IG15IGZyb250IGlzIGEgaG9tZS7igJ0gb3Ig4oCcV293LCB0aGlzIGhvbWUgZXh0ZW5kaW5nIGFo ZWFkIGlzIGh1Z2Uh4oCdfn4KCgoKQmVmb3JlIHdlIGNvbnRpbnVlIHdpdGggdGhpcyBzeW50YXgt aGVhdnkgdGVuc2Ugc3lzdGVtLCBpIHJlY29tbWVuZCBzcGVuZGluZyBhdCBsZWFzdCB0ZW4gbWlu dXRlcyBkb2luZyBzb21ldGhpbmcgd2hpY2ggZG9lc27igJl0IG9jY3VweSB5b3VyIGJyYWluIGlu IG9yZGVyIHRvIGxldCB0aGUgaW5mb3JtYXRpb24gc2luayBpbi4gU2luZyBhIHNvbmcgb3IgZWF0 IGEgY29va2llIHZlcnkgc2xvd2x5IC0gd2hhdGV2ZXIsIGFzIGxvbmcgYXMgeW91IGxldCB5b3Vy IG1pbmQgcmVzdC4KCgoKCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIGVsZXZlbiAoWkFoTykK ClRob3VnaCB3ZSB3b27igJl0IGdvIHRocm91Z2ggYWxsIExvamJhbiB0ZW5zZSBjb25zdHJ1Y3Rz IGZvciBub3csIHRoZXJlIGlzIG9uZSBvdGhlciBraW5kIG9mIHRlbnNlIHRoYXQgSSB0aGluayBz aG91bGQgYmUgdGF1Z2h0IG5vdy4gVGhlc2UgYXJlIGNhbGxlZCDigJxldmVudCBjb250b3Vyc+KA nSwgYW5kIHJlcHJlc2VudCBhIHZlcnkgZGlmZmVyZW50IHdheSBvZiB2aWV3aW5nIHRlbnNlcyB0 aGF0IHdlIGhhdmUgc2VlbiBzbyBmYXIuIFNvIGxldOKAmXMgZ2V0IHRvIGl0OgoKCgpVc2luZyB0 aGUgdGVuc2VzIHdlIGhhdmUgbGVhcm5lZCBzbyBmYXIsIHdlIGNhbiBpbWFnaW5lIGFuIGluZGVm aW5pdGUgdGltZSBsaW5lLCBhbmQgd2UgdGhlbiBwbGFjZSBldmVudHMgb24gdGhhdCBsaW5lIHJl bGF0aXZlIHRvIHRoZSDigJxub3figJ0uIFdpdGggZXZlbnQgY29udG91cnMsIGhvd2V2ZXIsIHdl IHZpZXcgZWFjaCBldmVudCBhcyBhIHByb2Nlc3MsIHdoaWNoIGhhcyBjZXJ0YWluIHN0YWdlczog QSB0aW1lIGJlZm9yZSBpdCB1bmZvbGRzLCBhIHRpbWUgd2hlbiBpdCBiZWdpbnMsIGEgdGltZSB3 aGVuIGl0IGlzIGluIHByb2Nlc3MsIGEgdGltZSB3aGVuIGl0IGVuZHMsIGFuZCBhIHRpbWUgYWZ0 ZXIgaXQgaGFzIGVuZGVkLiBFdmVudCBjb250b3VycyB0aGVuIHRlbGxzIHVzIHdoaWNoIHBhcnQg b2YgdGhlIGV2ZW504oCZcyBwcm9jZXNzIHdhcyBoYXBwZW5pbmcgZHVyaW5nIHRoZSB0aW1lIHNw ZWNpZmllZCBieSB0aGUgb3RoZXIgdGVuc2VzLiBXZSBuZWVkIGEgY291cGxlIG9mIHRlbnNlcyBm aXJzdDoKCgoKX18nJ3B14oCZbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkg aGFzIG5vdCB5ZXQgaGFwcGVuZWQgZHVyaW5nIFtzdW10aV0KCl9fJydjYeKAmW8nJ19fIC0gc3Vt dGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGluIHByb2Nlc3MgZHVyaW5nIFtzdW10aV0K Cl9fJydiYeKAmW8nJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IFRoZSBwcm9jZXNzIG9m IGJyaWRpIGhhcyBlbmRlZCBkdXJpbmcgW3N1bXRpXQoKCgpUaGlzIG5lZWRzIHRvIGJlIGRlbW9u c3RyYXRlZCBieSBzb21lIGV4YW1wbGVzLiBXaGF04oCZcyAnJy51aSBtaSBwdeKAmW8gW2t1XSBz ZSB6ZGFuaSBbdmF1XScnIG1lYW4/CgoKCkFuc3dlcjog4oCcWWF5LCBJ4oCZbGwgYmVnaW4gdG8g aGF2ZSBhIGhvbWXigJ0uCgoKCkJ1dCBoZXksIHlvdSBhc2ssIHdoeSBub3QganVzdCBzYXkgJycu dWkgbWkgYmEgW2t1XSBzZSB6ZGFuaSBbdmF1XScnIGFuZCBldmVuIHNhdmUgYSBzeWxsYWJsZT8g QmVjYXVzZSwgcmVtZW1iZXIsIHNheWluZyB0aGF0IHlvdSB3aWxsIGhhdmUgYSBob21lIGluIHRo ZSBmdXR1cmUgc2F5cyBub3RoaW5nIGFib3V0IHdoZXRoZXIgeW91IGhhdmUgYSBob21lIG5vdy4g VXNpbmcgJydwdeKAmW8nJywgdGhvdWdoLCB5b3Ugc2F5IHRoYXQgeW91IGFyZSBub3cgaW4gdGhl IHBhc3Qgb2YgdGhlIHByb2Nlc3Mgb2YgeW91IGhhdmluZyBhIGhvbWUsIHdoaWNoIG1lYW5zIHRo YXQgeW91IGRvbuKAmXQgaGF2ZSBvbmUgbm93LgoKTm90ZSwgYnkgdGhlIHdheSwgdGhhdCAnJ21p IGJhIFtrdV0gc2UgemRhbmkgW3ZhdV0nJyBpcyBzaW1pbGFyIHRvICcnbWkgcHXigJlvIFtrdV0g c2UgemRhbmkgW3ZhdV0nJywgYW5kIGxpa2V3aXNlIHdpdGggJydiYeKAmW8nJyBhbmQgJydwdScn LiBXaHkgZG8gdGhleSBzZWVtIHJldmVyc2VkPyBCZWNhdXNlIGV2ZW50IGNvbnRvdXJzIHZpZXcg dGhlIHByZXNlbnQgYXMgc2VlbiBmcm9tIHRoZSB2aWV3cG9pbnQgb2YgdGhlIHByb2Nlc3MsIHdo ZXJlIGFzIHRoZSBvdGhlciB0ZW5zZXMgdmlldyBldmVudHMgc2VlbiBmcm9tIHRoZSBwcmVzZW50 LgoKCgpPZnRlbiwgZXZlbnQgY29udG91cnMgYXJlIG1vcmUgcHJlY2lzZSB0aGF0IG90aGVyIGtp bmQgb2YgdGVuc2VzLiBFdmVuIG1vcmUgY2xhcml0eSBpcyBhY2hpZXZlZCBieSBjb21iaW5pbmcg c2V2ZXJhbCB0ZW5zZXM6ICcnLmHigJlvIG1pIGJhW2t1XSB6aSBba3VdIGJh4oCZbyBba3VdIGd1 bmthIFt2YXVdJycgLSDigJxJIGhvcGUgSeKAmXZlIHNvb24gZmluaXNoZWQgd29ya2luZy7igJ0K CgoKSW4gTG9qYmFuLCB3ZSBhbHNvIG9wZXJhdGUgd2l0aCBhbiBldmVudOKAmXMg4oCcbmF0dXJh bCBiZWdpbm5pbmfigJ0gYW5kIGl0cyDigJxuYXR1cmFsIGVuZOKAnS4gVGhlIHRlcm0g4oCcbmF0 dXJhbOKAnSBpcyBoaWdobHkgc3ViamVjdGl2ZSBpbiB0aGlzIHNlbnNlLCBhbmQgdGhlIG5hdHVy YWwgZW5kIHJlZmVycyB0byB0aGUgcG9pbnQgaW4gdGhlIHByb2Nlc3Mgd2hlcmUgaXQgc2hvdWxk IGVuZC4gWW91IGNhbiBzYXkgYWJvdXQgYSBsYXRlIHRyYWluLCBmb3IgaW5zdGFuY2UsIHRoYXQg aXRzIHByb2Nlc3Mgb2YgcmVhY2hpbmcgeW91IGlzIG5vdyBleHRlbmRpbmcgYmV5b25kIGl0cyBu YXR1cmFsIGVuZC4gQW4gdW5kZXJjb29rZWQsIGJ1dCBzZXJ2ZWQgbWVhbCwgc2ltaWxhcmx5LCBp cyBiZWluZyBlYXRlbiBiZWZvcmUgdGhhdCBwcm9jZXNz4oCZIG5hdHVyYWwgYmVnaW5uaW5nLiBU aGUgZXZlbnQgY29udG91cnMgdXNlZCBpbiB0aGVzZSBleGFtcGxlcyBhcmUgYXMgZm9sbG93czoK CgoKX18nJ3ph4oCZbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW4g cHJvY2VzcyBiZXlvbmQgaXRzIG5hdHVyYWwgZW5kIGR1cmluZyBbc3VtdGldCgpfXycneGHigJlv JydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBpbW1hdHVyZWx5IGluIHBy b2Nlc3MgZHVyaW5nIFtzdW10aV0KCgoKX18nJ2NpZGphJydfXzog4oCceDEgaXMgZm9vZCwgd2hp Y2ggaXMgZWRpYmxlIGZvciB4MuKAnQoKCgpUcmFuc2xhdGU6ICcnLm9pIGRvIGNpdGthIHph4oCZ byBsbyBudSBkbyBiYeKAmW8gW2t1XSB14oCZZSBjaXRrYSB6b+KAmWUgbm9pIGNpZGphIGRvIFt2 YXVdIFtrdeKAmW9dIFt2YXVdIFtrZWldIFtrdV0nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKA nE95LCB5b3Uga2VlcCBlYXRpbmcgd2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCwgaW5jcmVkaWJseSwg ZWF0aW5nIHNvbWV0aGluZyBlZGlibGUh4oCdfn4KCgoKe2ltZyBmaWxlSWQ9IjIiIHRodW1iPSJ5 IiByZWw9ImJveFtnXSJ9CgpJbWFnZSBhYm92ZTogWkFoTyB0ZW5zZXMgKGV2ZW50IGNvbnRvdXJz KS4gQWxsIHRlbnNlcyBhYm92ZSB0aGUgbGluZSBvZiB0aGUgZXZlbnQgc2lnbmlmeSBzdGFnZXMg Y292ZXJpbmcgYW4gYW1vdW50IG9mIHRpbWUuIEFsbCB0ZW5zZXMgYmVsb3cgdGhlIGV2ZW50IGxp bmUgc2lnbmlmeSBzdGFnZXMgd2hpY2ggYXJlIHBvaW50LWxpa2UuCgoKCkFsbCBvZiB0aGVzZSB0 ZW5zZXMgaGF2ZSBiZWVuIGRlc2NyaWJpbmcgc3RhZ2VzIG9mIGEgcHJvY2VzcyB3aGljaCB0YWtl cyBzb21lIHRpbWUgKGFzIHNob3duIG9uIHRoZSBncmFwaCBhYm92ZTsgdGhvc2UgdGVuc2VzIGFi b3ZlIHRoZSBldmVudCBsaWtlKS4gQnV0IG1hbnkgb2YgdGhlIGV2ZW50IGNvbnRvdXJzIGRlc2Ny aWJlcyBwb2ludCBsaWtlIHN0YWdlcyBpbiB0aGUgcHJvY2VzcywgbGlrZSBpdHMgYmVnaW5uaW5n LiBBcyBpcyB0cnVlIG9mICcnY2EgYW5kICcnYnXigJl1JycsIHRoZXkgYWN0dWFsbHkgZXh0ZW5k IHNsaWdodGx5IGludG8gdGhlIHBhc3QgYW5kIGZ1dHVyZSBvZiB0aGF0IHBvaW50LCBhbmQgbmVl ZCBub3QgdG8gYmUgcHJlY2lzZS4KCgoKVGhlIHR3byBtb3N0IGltcG9ydGFudCBwb2ludC1saWtl IGV2ZW50IGNvbnRvdXJzIGFyZToKCl9fJydjb+KAmWEnJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNv bnRvdXI6IEJyaWRpIGlzIGF0IGl0cyBiZWdpbm5pbmcgZHVyaW5nIFtzdW10aV0KCl9fJydjb+KA mXUnJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIGF0IGl0cyBlbmRpbmcg ZHVyaW5nIFtzdW10aV0KCgoKRnVydGhlcm1vcmUsIHRoZXJlIGlzIGEgcG9pbnQgd2hlcmUgdGhl IHByb2Nlc3MgaXMgbmF0dXJhbGx5IGNvbXBsZXRlLCBidXQgbm90IG5lY2Vzc2FyaWx5IGhhcyBl bmRlZCB5ZXQ6CgpfXycnbW/igJl1JydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlk aSBpcyBhdCBpdHMgbmF0dXJhbCBlbmRpbmcgZHVyaW5nIFtzdW10aV0KCk1vc3Qgb2YgdGhlIHRp bWUsIHRob3VnaCwgcHJvY2Vzc2VzIGFjdHVhbGx5IGVuZCBhdCB0aGVpciBuYXR1cmFsIGVuZGlu ZzsgdGhpcyBpcyB3aGF0IG1ha2VzIGl0IG5hdHVyYWwuIFRyYWlucyBhcmUgbm90IHVzdWFsbHkg bGF0ZSwgYW5kIHBlb3BsZSB1c3VhbGx5IHJldHJhaW4gdGhlbXNlbHZlcyB0byBlYXQgb25seSBl ZGlibGUgZm9vZC4KCgoKU2luY2UgYSBwcm9jZXNzIGNhbiBiZSBpbnRlcnJ1cHRlZCBhbmQgcmVz dW1lZCwgdGhlc2UgcG9pbnRzIGhhdmUgZWFybmVkIHRoZWlyIG93biBldmVudCBjb250b3VyIGFs c286CgpfXycnZGXigJlhJydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBw YXVzaW5nIGR1cmluZyBbc3VtdGldCgpfXycnZGnigJlhJydfXyAtIHN1bXRjaXRhOiBldmVudCBj b250b3VyOiBCcmlkaSBpcyByZXN1bWluZyBkdXJpbmcgW3N1bXRpXQoKCgpJbiBmYWN0LCBzaW5j ZSAnJ2p1bmRpJycgbWVhbnMg4oCceDEgcGF5cyBhdHRlbnRpb24gdG8geDLigJ0sICcnZGXigJlh IGp1bmRpJycgYW5kICcnZGnigJlhIGp1bmRpJycgYXJlIGNvbW1vbiBMb2piYW4gd2F5cyBvZiBz YXlpbmcg4oCcQlJC4oCdIGFuZCDigJxiYWNr4oCdLiBPbmUgY291bGQgb2YgY291cnNlIGFsc28g c2F5IHRoZSBldmVudCBjb250b3VycyBieSB0aGVtc2VsdmVzIGFuZCBob3BlIHRoZSBwb2ludCBn ZXRzIGFjcm9zcy4KCgoKRmluYWxseSwgb25lIGNhbiB0cmVhdCBhbiBlbnRpcmUgZXZlbnQsIGZy b20gdGhlIGJlZ2lubmluZyB0byB0aGUgZW5kIGFzIG9uZSBzaW5nbGUgcG9pbnQgdXNpbmcgJydj b+KAmWknJzoKCl9fJydwZW5taScnX18g4oCceDEgbWVldHMgeDIgYXQgbG9jYXRpb24geDPigJ0K CicnbWkgcHUgW2t1XSB6aSBba3VdIGNv4oCZaSBba3VdIHBlbm1pIGxvIGRvdGNvIHByZW51IFtr dV0gW3ZhdV0nJyAtIOKAnEEgbGl0dGxlIHdoaWxlIGFnbywgSSB3YXMgYXQgdGhlIHBvaW50IGlu IHRpbWUgd2hlcmUgaSBtZXQgYSBHZXJtYW4gcGVyc29u4oCdCgoKCgoKISFMb2piYW4gTGVzc29u cyAtIExlc3NvbiB0d2VsdmUgKG9yZGVycyBhbmQgcXVlc3Rpb25zKQoKUGhldywgdGhvc2UgdHdv IGxvbmcgbGVzc29ucyB3aXRoIHN5bnRheCBoZWF2eSBMb2piYW4gZ2l2ZXMgdGhlIGJyYWluIHNv bWV0aGluZyB0byBwb25kZXIgYWJvdXQuIEVzcGVjaWFsbHkgYmVjYXVzZSBpdOKAmXMgc28gZGlm ZmVyZW50IGZyb20gRW5nbGlzaC4gU28gbGV04oCZcyB0dXJuIHRvIHNvbWV0aGluZyBhIGxpdHRs ZSBsaWdodGVyOiBvcmRlcnMgYW5kIHF1ZXN0aW9ucy4KCgoKV2hhdCB0aGUuLi4gX19zaXQgdXAg YW5kIGZvY3VzIV9fCgoKClNpbmNlIHRoZSB3YXkgdG8gZXhwcmVzcyBvcmRlcnMgaW4gRW5nbGlz aCBpcyB0byBsZWF2ZSBvdXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNsYXVzZSwgd2h5IGRpZCB5b3Ug YXNzdW1lIHRoYXQgaXQgd2FzIHlvdSBJIHdhcyBzcGVha2luZyB0bywgYW5kIG5vdCBvcmRlcmlu ZyBteXNlbGYsIG9yIGV4cHJlc3NpbmcgdGhlIG9ibGlnYXRpb24gc29tZW9uZSBlbHNlIGhhcz8g QmVjYXVzZSB0aGUgRW5nbGlzaCBsYW5ndWFnZSB1bmRlcnN0YW5kcyB0aGF0IG9yZGVycywgYnkg dGhlaXIgdmVyeSBuYXR1cmUsIGFyZSBhbHdheXMgZGlyZWN0ZWQgdG93YXJkcyB0aGUgbGlzdGVu ZXIgLSB0aGUg4oCceW914oCdLCBhbmQgc28gdGhlIHN1YmplY3QgaXMgbm90IG5lY2Vzc2FyeS4K CkluIExvamJhbiwgZWxpZGluZyB0aGUgc3ViamVjdCB5aWVsZHMgJyd6b+KAmWUnJywgc28gdGhh dCBwb3NzaWJpbGl0eSBpcyBzYWRseSBub3Qgb3BlbiB0byB1cy4gSW5zdGVhZCwgd2UgdXNlIHRo ZSB3b3JkICcna28nJywgd2hpY2ggaXMgdGhlIGltcGVyYXRpdmUgZm9ybSBvZiAnJ2RvJycuIEdy YW1tYXRpY2FsbHksIGl04oCZcyBlcXVpdmFsZW50IHRvICcnZG8nJywgYnV0IGl0IGFkZHMgYSBs YXllciBvZiBzZW1hbnRpY3MsIHNpbmNlIGl0IHR1cm5zIGV2ZXJ5IHN0YXRlbWVudCB3aXRoICcn a28nJyBpbiBpdCBpbnRvIGFuIG9yZGVyLiDigJxEbyBzdWNoIHRoYXQgdGhpcyBzZW50ZW5jZSBp cyB0cnVlIGZvciB5b3U9a28h4oCdIEZvciB0aGUgc2FtZSByZWFzb24gd2UgZG9u4oCZdCBuZWVk IHRoZSBzdWJqZWN0IGluIEVuZ2xpc2ggc2VudGVuY2VzLCB3ZSBkb27igJl0IG5lZWQgb3JkZXIt d29yZHMgZGVyaXZlZCBmcm9tIGFueSBvdGhlciBzdW10aSB0aGFuICcnZG8nJy4KCgoKSG93IGNv dWxkIHlvdSBvcmRlciBvbmUgdG8gZ28gZmFyIGF3YXkgZm9yIGEgbG9uZyB0aW1lICh1c2luZyAn J2tsYW1hJycgYXMgdGhlIG9ubHkgc2VsYnJpPykKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTprbyB2 ZeKAmXUgemXigJl1IGtsYW1hfn4KCignJy5pIHph4oCZYSBkYWkgYeKAmW8gbWkgY2EgY2/igJl1 IGNpc2thIGxvIGZh4oCZb3JtYeKAmW8gLmkga28gamltcGUgdmF1IC51aScnKSAtIGxvb2sgdXAg Y2lza2EgYW5kIHdvcmsgaXQgb3V0LgoKCgpRdWVzdGlvbnMgaW4gTG9qYmFuIGFyZSB2ZXJ5IGVh c3kgdG8gbGVhcm4sIGFuZCB0aGV5IGNvbWUgaW4gdHdvIGtpbmRzOiBGaWxsIGluIHRoZSBibGFu aywgYW5kIHRydWUvZmFsc2UgcXVlc3Rpb25zLiBMZXTigJlzIGJlZ2luIHdpdGggdGhlIHRydWUt ZmFsc2UgcXVlc3Rpb24ga2luZCAtIHRoYXTigJlzIHByZXR0eSBvdmVyY29tZWFibGUsIHNpbmNl IGl0IG9ubHkgaW52b2x2ZXMgb25lIHdvcmQsICcneHUnJy4KCicneHUnJyB3b3JrcyBsaWtlIGFu IGF0dGl0dWRpbmFsIGluIHRoZSBzZW5zZSB0aGF0IGl0IGNhbiBnbyBhbnl3aGVyZSwgYW5kIGl0 IGFwcGxpZXMgdG8gdGhlIHByZWNlZGluZyB3b3JkIChvciBjb25zdHJ1Y3QpLiBJdCB0aGVuIHRy YW5zZm9ybXMgdGhlIHNlbnRlbmNlIGludG8gYSBxdWVzdGlvbiwgYXNraW5nIHdoZXRoZXIgaXQg aXMgdHJ1ZSBvciBub3QuIEluIG9yZGVyIHRvIGFmZmlybSwgeW91IHNpbXBseSByZXBlYXQgdGhl IGJyaWRpOgoKJyd4dSB2ZeKAmXUgemRhbmkgZG8nJyAnJy5pIHZl4oCZdSB6ZGFuaSBtaScnLCBv ciB5b3UganVzdCByZXBlYXQgdGhlIHRoZSBzZWxicmksIHdoaWNoIGlzIHRoZSBicmlkaSB3aXRo IGFsbCB0aGUgc3VtdGkgYW5kIHRlbnNlcyBlbGlkZWQ6ICcnemRhbmknJy4KClRoZXJlIGlzIGFu IGV2ZW4gZWFzaWVyIHdheSB0byBhZmZpcm0gdXNpbmcgcHJvLWJyaWRpcywgYnV0IHRob3NlIGFy ZSBhIHRhbGUgZm9yIGFub3RoZXIgdGltZS4gVG8gYW5zd2VyIOKAnG5v4oCdIG9yIOKAnGZhbHNl 4oCdLCB5b3Ugc2ltcGx5IGFuc3dlciB3aXRoIHRoZSBicmlkaSBuZWdhdGVkLiBUaGF0IHRvbywg d2lsbCBiZSBsZWZ0IGZvciBsYXRlciwgYnV0IHdlIHdpbGwgcmV0dXJuIHRvIHF1ZXN0aW9uIGFu c3dlcmluZyBieSB0aGVuLgoKCgpUaGUgb3RoZXIga2luZCBpcyBmaWxsIGluIHRoZSBibGFuay4g SGVyZSwgeW91IGFzayBmb3IgdGhlIHF1ZXN0aW9uIHdvcmQgdG8gYmUgcmVwbGFjZWQgZm9yIGEg Y29uc3RydWN0LCB3aGljaCBtYWtlcyB0aGUgYnJpZGkgY29ycmVjdC4gVGhlcmUgYXJlIHNldmVy YWwgb2YgdGhlc2Ugd29yZHMsIGRlcGVuZGluZyBvbiB3aGF0IHlvdSBhcmUgYXNraW5nIGFib3V0 OgoKX18nJ21hJydfXyAtIHN1bXRpIHF1ZXN0aW9uCgpfXycnbW8nJ19fIC0gc2VsYnJpIHF1ZXN0 aW9uCgpfXycneG8nJ19fIC0gbnVtYmVyIHF1ZXN0aW9uCgpfXycnY3XigJllJydfXyAtIHRlbnNl IHF1ZXN0aW9uCgoKCkFzIHdlbGwgYXMgbWFueSBvdGhlcnMuIFRvIGFzayBhYm91dCBhIHN1bXRp LCB5b3UgdGhlbiBqdXN0IHBsYWNlIHRoZSBxdWVzdGlvbiB3b3JkIHdoZXJlIHlvdSB3YW50IHlv dXIgYW5zd2VyOiAnJ2RvIGR1bmRhIG1hIG1pJycgLSBhc2tzIGZvciB0aGUgeDIgdG8gYmUgZmls bGVkIHdpdGggYSBjb3JyZWN0IHN1bXRpLiDigJxZb3UgZ2l2ZSB3aGF0IHRvIG1lP+KAnSBUaGUg Y29tYmluYXRpb24gb2YgJydzdW10Y2l0YScnICsgJydtYScnIGlzIHZlcnkgdXNlZnVsIGluZGVl ZDoKCl9fJydtdeKAmWknJ19fIC0gc3VtdGNpdGE6IG1vdGl2YXRlZCBieSB0aGUgYWJzdHJhY3Rp b24gb2YgW3N1bXRpXQoKCgonJy5vaSBkbyBkYXJ4aSBtaSBtdeKAmWkgbWEnJyAtIOKAnE95LCB3 aHkgZG8geW91IGhpdCBtZT8h4oCdCgoKCkxldOKAmXMgdHJ5IGFub3RoZXIgb25lLiBUaGlzIHRp bWUsIHlvdSB0cmFuc2xhdGU6CgonJy51aSBkYWkgZG8gY2EgemXigJl1IHB1IG1vJycKCgoKQW5z d2VyOiB+fmdyZXksZ3JleTrigJxZb3XigJlyZSBoYXBweSwgd2hhdCBoYXZlIHlvdSBiZWVuIGRv aW5nIGFsbCB0aGlzIGxvbmcgdGltZSB1bnRpbCBub3c/4oCdIFRlY2huaWNhbGx5LCBpdCBjb3Vs ZCBhbHNvIGFzayDigJx3aGF0IGhhdmUgeW91IGJlZW4/4oCdLCBidXQgYW5zd2VyaW5nIHdpdGgg ey51YSBuYWkgbGnigJlhIHJlbW5hfSAoVWgsIGh1bWFuLCBvYnZpb3VzbHkpIGlzIGp1c3QgYmVp bmcgaW5jcmVkaWJseSBhbm5veWluZyBvbiBwdXJwb3NlLn5+CgoKClNpbmNlIHRvbmUgb2Ygdm9p Y2Ugb3Igc2VudGVuY2Ugc3RydWN0dXJlIGRvZXMgbm90IHJldmVhbCB3aGV0aGVyIGEgc2VudGVu Y2UgaXMgYSBxdWVzdGlvbiBvciBub3QsIG9uZSBiZXR0ZXIgbm90IG1pc3MgdGhlIHF1ZXN0aW9u IHdvcmQuIFRoZXJlZm9yZSwgc2luY2UgcGVvcGxlIHRlbmQgdG8gZm9jdXMgbW9yZSBvbiB3b3Jk cyBpbiB0aGUgYmVnaW5uaW5nIG9yIGF0IHRoZSBlbmQgb2Ygc2VudGVuY2VzLCBpdOKAmXMgdXN1 YWxseSB3b3J0aCB0aGUgd2hpbGUgdG8gcmUtb3JkZXIgdGhlIHNlbnRlbmNlIHNvIHRoYXQgdGhl IHF1ZXN0aW9uIHdvcmRzIGFyZSBhdCB0aG9zZSBwbGFjZXMuIElmIHRoYXQgaXMgbm90IGZlYXNh YmxlLCAnJ3BhdScnIGlzIGFuIGF0dGl0dWRpbmFsIG1hcmtpbmcgdGhhdCB0aGUgc2VudGVuY2Ug aXMgYSBxdWVzdGlvbi4gQ29udHJhcnksICcncGF1IG5haScnIGV4cGxpY2l0bHkgbWFya3MgYW55 IHF1ZXN0aW9uIGFzIGJlaW5nIHJoZXRvcmljYWwuCgoKCldoaWxlIHdlIGFyZSBvbiB0aGUgdG9w aWMgb2YgcXVlc3Rpb25zLCBpdOKAmXMgYWxzbyBhcHByb3ByaWF0ZSB0byBtZW50aW9uIHRoZSB3 b3JkICcna2F1JycsIHdoaWNoIGlzIGEgbWFya2VyIGZvciDigJxpbmRpcmVjdCBxdWVzdGlvbuKA nS4gV2hhdOKAmXMgYW4gaW5kaXJlY3QgcXVlc3Rpb24sIHRoZW4/IFdlbGwsIHRha2UgYSBsb29r IGF0IHRoZSBzZW50ZW5jZTogJydtaSBkanVubyBsbyBkdeKAmXUgbWEga2F1IHpkYW5pIGRvJycg LSDigJxJIGtub3cgd2hhdCBpcyB5b3VyIGhvbWUu4oCdCgpfXycnZGp1bm8nJ19fIOKAnHgxIGtu b3dzIGZhY3QocykgeDIgYXJlIHRydWUgYWJvdXQgeDMgYnkgZXBpc3RlbW9sb2d5IHg04oCdCgpP bmUgY2FuIHRoaW5rIGl0IGFzIHRoZSBhbnN3ZXIgdG8gdGhlIHF1ZXN0aW9uICcnbWEgemRhbmkg ZG8nJy4gTW9yZSByYXJlbHksIG9uZSBjYW4gbWFyayBhIG5vbi1xdWVzdGlvbiB3b3JkIHdpdGgg JydrYXUnJywgaW4gd2hpY2ggY2FzZSBvbmUgc3RpbGwgY2FuIGltYWdpbmUgaXQgYXMgdGhlIGFu c3dlciB0byBhIHF1ZXN0aW9uOiAnJ21pIGppbXBlIGxvIGR14oCZdSBkdW5kYSB0aSBrYXUgZG8n JyAtIOKAnEkga25vdyB3aGF0IHlvdSBoYXZlIGJlZW4gZ2l2ZW4sIGl0IGlzIHRoaXMu4oCdCgoK CgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0aGlydGVlbiAobW9ycGhvbG9neSBhbmQgd29y ZCBjbGFzc2VzKQoKQmFjayB0byBtb3JlIGhlYXZ5IChhbmQgaW50ZXJlc3RpbmcpIHN0dWZmLgoK SWYgeW91IGhhdmVu4oCZdCBhbHJlYWR5LCBJIHN0cm9uZ2x5IHN1Z2dlc3QgeW91IGZpbmQgdGhl IExvamJhbmljIHJlY29yZGluZyBjYWxsZWQgIlN0b3J5IFRpbWUgd2l0aCBVbmNsZSBSb2JpbiIs IG9yIGxpc3RlbiB0byBzb21lb25lIHNwZWFrIExvamJhbiBvbiBNdW1ibGUsIGFuZCB0aGVuIHBy YWN0aWNlIHlvdXIgcHJvbnVuY2lhdGlvbi4gSGF2aW5nIGFuIGludGVybmFsIGNvbnZlcnNhdGlv biBpbiB5b3VyIGhlYWQgaW4gTG9qYmFuIGlzIG9ubHkgZ29vZCBpZiBpdCBpc27igJl0IHdpdGgg YWxsIHRoZSB3cm9uZyBzb3VuZHMsIGFuZCBsZWFybmluZyBwcm9udW5jaWF0aW9uIGZyb20gd3Jp dHRlbiB0ZXh0IGlzIGhhcmQuIFRoZXJlZm9yZSwgdGhpcyBsZXNzb24gd2lsbCBub3QgYmUgb24g dGhlIExvamJhbiBzb3VuZHMsIGhvd2V2ZXIgaW1wb3J0YW50IHRoZXkgbWlnaHQgYmUsIGJ1dCBh IHNob3J0IGludHJvZHVjdGlvbiB0byB0aGUgTG9qYmFuIG1vcnBob2xvZ3kuCgoKCldoYXQgaXMg bW9ycGhvbG9neT8gVGhlIHdvcmQgaXMgZGVyaXZlZCBmcm9tIEdyZWVrIG1lYW5pbmcg4oCcdGhl IHN0dWR5IG9mIHNoYXBlc+KAnSwgYW5kIGluIHRoaXMgY29udGV4dCwgd2UgdGFsayBhYm91dCBo b3cgd2UgbWFrZSB3b3JkcyBmcm9tIGxldHRlcnMgYW5kIHNvdW5kcywgYXMgY29udHJhc3RlZCB3 aXRoIHN5bnRheCAtIGhvdyB3ZSBtYWtlIHNlbnRlbmNlcyB3aXRoIHdvcmRzLiBMb2piYW4gb3Bl cmF0ZXMgd2l0aCBkaWZmZXJlbnQgbW9ycGhvbG9naWNhbCB3b3JkIGNsYXNzZXMsIHdoaWNoIGFy ZSBhbGwgZGVmaW5lZCBieSB0aGVpciBtb3JwaG9sb2d5LiBUbyBtYWtlIGl0IGFsbCBuaWNlIGFu ZCBzeXN0ZW1hdGljIHRob3VnaCwgd29yZHMgd2l0aCBjZXJ0YWluIGZ1bmN0aW9ucyB0ZW5kIHRv IGJlIGdyb3VwZWQgYnkgbW9ycGhvbG9naWNhbCBjbGFzc2VzLCBidXQgZXhjZXB0aW9ucyBtYXkg b2NjdXIuCgp8fCAgIENsYXNzfE1lYW5pbmd8RGVmaW5lZCBCeXxUeXBpY2FsIEZ1bmN0aW9uCgog ICBXb3Jkczp8ICAgfCAgIHwgICAKCiAgIEJyaXZsYXwgICBicmlkaS13b3JkfCAgIEFtb25nIGZp cnN0IDUgbGV0dGVycyAoZXhjbHVkaW5nIOKAnCDigJgg4oCcKSBpcyBhIGNvbnNvbmFudCBjbHVz dGVyLiBFbmRzIGluIHZvd2VsLiAgIHwgICBBY3RzIGFzIGEgc2VsYnJpIGJ5IGRlZmF1bHQuIEFs d2F5cyBoYXMgYSBwbGFjZSBzdHJ1Y3R1cmUuCgogICAtLUdpc211fCAgIFJvb3Qtd29yZHwgNSBs ZXR0ZXJzIG9mIHRoZSBmb3JtIENWQ0NWIG9yIENDVkNWICAgfCAgIE9uZSB0byBmaXZlIHN1bXRp IHBsYWNlcy4gQ292ZXJzIGJhc2ljIGNvbmNlcHRzLgoKICAgLS1MdWp2b3wgIENvbXBvdW5kIHdv cmQuIERlcml2ZWQgZnJvbSBmcm9tIOKAnGx1anZsYeKAnSwgbWVhbmluZyDigJxjb21wbGV4IHdv cmTigJ0gfCAgIE1pbi4gNiBsZXR0ZXJzLiBNYWRlIGJ5IHN0cmluZ2luZyByYWZzaSB0b2dldGhl ciB3aXRoIGJpbmRpbmcgbGV0dGVycyBpZiBuZWNlc3NhcnkufCAgIENvdmVycyBtb3JlIGNvbXBs ZXggY29uY2VwdHMgdGhhbiBnaXNtdS4KCiAgIC0tRnUnaXZsYXwgIENvcHktd29yZCB8IEFzIGJy aXZsYSwgYnV0IGRvIG5vdCBtZWV0IGRlZmluaW5nIGNyaXRlcmlhIG9mIGdpc211IG9yIGx1anZv LCBleDoge2FuZ2VsaX0gIHwgICBDb3ZlcnMgdW5pcXVlIGNvbmNlcHRzIGxpa2UgbmFtZXMgb2Yg cGxhY2VzIG9yIG9yZ2FuaXNtcy4KCiAgIENtZXZsYXwgIE5hbWUtd29yZCB8ICAgQmVnaW5uaW5n IGFuZCBlbmRpbmcgd2l0aCBwYXVzZSAoZnVsbCBzdG9wKS4gTGFzdCBzb3VuZC9sZXR0ZXIgaXMg YSBjb25zb25hbnQufCAgIEFsd2F5cyBhY3RzIGFzIGEgbmFtZSBvciBhcyB0aGUgY29udGVudCBv ZiBhIHF1b3RlLgoKICAgQ21hdm98ICAgR3JhbW1hci13b3JkLiBGcm9tIOKAnGNtYXZsYeKAnSwg bWVhbmluZyDigJxzbWFsbCB3b3Jk4oCdfCBPbmUgY29uc29uYW50IG9yIHplcm8sIGFsd2F5cyBh dCB0aGUgYmVnaW5uaW5nLiBFbmRzIGluIGEgdm93ZWwuICB8ICAgR3JhbW1hdGljYWwgZnVuY3Rp b25zLiBWYXJpZXMKCiAgIFdvcmQtZnJhZ21lbnRzOnwgICB8ICAgfAoKICAgUmFmc2l8ICAgQWZm aXh8ICBDQ1YsIENWQywgQ1YnViwgLUNWQ0NWLCAtQ0NWQ1YsIENWQ0N5LSBvciBDQ1ZDeS0gIHwg Tm90IGFjdHVhbCB3b3JkcywgYnV0IGNhbiBiZSBzdHJpbmdlZCB0b2dldGhlciB0byBmb3JtIGx1 anZvIHx8CgoKCgoKX18nJ2NtZXZsYScnX18gYXJlIHZlcnkgZWFzeSB0byBpZGVudGlmeSBiZWNh dXNlIHRoZXkgYmVnaW4gYW5kIGVuZCB3aXRoIGEgcGF1c2UsIHNpZ25hbGVkIGJ5IGEgZnVsbCBz dG9wIGluIHdyaXRpbmcsIGFuZCB0aGUgbGFzdCBsZXR0ZXIgaXMgYSBjb25zb25hbnQuICcnY21l dmxhJycgY2Fu4oCZdCBoYXZlIGFueSBvdGhlciBmdW5jdGlvbiBiZXNpZGVzIGFjdGluZyBhcyBh IG5hbWUuIE9uIHRoZSBvdGhlciBoYW5kLCBuYW1lcyB3aGljaCBhcmUgbm90IHNlbGJyaSBjYW5u b3QgYXBwZWFyIGluIExvamJhbiB3aXRob3V0IHRoZW0gYmVpbmcgJydjbWV2bGEnJywgb3IgZW5j YXNlZCBieSBjZXJ0YWluIHF1b3RlIHdvcmRzLiBPbmUgY2FuIG1hcmsgc3RyZXNzIGluIHRoZSBu YW1lcyBieSBjYXBpdGFsaXppbmcgdGhlIGxldHRlcnMgd2hpY2ggYXJlIHN0cmVzc2VkLiBFeGFt cGxlcyBvZiAnJ2NtZXZsYScnIGFyZTogey5pb2hBTi59IChKb2hhbiwgaCBpcyBjYXBpdGFsIGFw b3N0cm9waGUpLCB7Lm1hdC59IChNYXR0KSBhbmQgey5sdXRjaU1JTi59IChMdWktQ2hpIE1pbiku IE5hbWVzIHdoaWNoIGRvZXMgbm90IGVuZCBpbiBjb25zb25hbnRzIGhhdmUgdG8gaGF2ZSBvbmUg YWRkZWQ6IHsuaXZ5bi59IChFdmUpCgoKCl9fJydicml2bGEnJ19fIGFyZSBjYWxsZWQg4oCcYnJp ZGktd29yZHPigJ0gYmVjYXVzZSB0aGV5IGJ5IGRlZmF1bHQgYXJlIHNlbGJyaSwgYW5kIHRoZXJl Zm9yZSBhbG1vc3QgYWxsIExvamJhbiB3b3JkcyB3aXRoIGEgcGxhY2Ugc3RydWN0dXJlIGFyZSAn J2JyaXZsYScnLiBUaGlzIGhhcyBhbHNvIGdpdmVuIHRoZW0gdGhlIEVuZ2xpc2ggbmlja25hbWUg 4oCcY29udGVudC13b3Jkc+KAnS4gSXTigJlzIG5lYXJseSBpbXBvc3NpYmxlIHRvIHNheSBhbnl0 aGluZyB1c2VmdWwgd2l0aG91dCAnJ2JyaXZsYScnLCBhbmQgYWxtb3N0IGFsbCB3b3JkcyBmb3Ig Y29uY2VwdHMgb3V0c2lkZSBsb2piYW4gZ3JhbW1hciAoYW5kIGV2ZW4gbW9zdCBvZiB0aGUgd29y ZHMgZm9yIHRoaW5ncyBpbiB0aGUgbGFuZ3VhZ2UpIGFyZSBjYXB0dXJlZCBieSAnJ2JyaXZsYScn LiBBcyBzaG93biBpbiB0aGUgdGFibGUsICcnYnJpdmxhJycgaGFzIHRocmVlIHN1YmNhdGVnb3Jp ZXM6CgpfXycnZ2lzbXUnJ19fIGFyZSB0aGUgcm9vdCB3b3JkcyBvZiB0aGUgbGFuZ3VhZ2UuIE9u bHkgYWJvdXQgMTQ1MCBleGlzdHMsIGFuZCB2ZXJ5IGZldyBuZXcgb25lcyBhcmUgYWRkZWQuIFRo ZXkgY292ZXIgdGhlIG1vc3QgYmFzaWMgY29uY2VwdHMgbGlrZSDigJxjaXJjbGXigJ0sIOKAnGZy aWVuZOKAnSwg4oCcdHJlZeKAnSBhbmQg4oCcZHJlYW3igJ0uIEV4YW1wbGVzIGluY2x1ZGUge3pk YW5pfSwge3BlbHh1fSBhbmQge2R1bmRhfQoKX19sdWp2b19fIGFyZSBtYWRlIGJ5IGNvbWJpbmlu ZyAnJ3JhZnNpJycgKHNlZSB1bmRlciAnJ3JhZnNpJycpLCByZXNwcmVzZW50aW5nICcnZ2lzbXUn Jy4gQnkgY29tYmluaW5nICcncmFmc2knJywgb25lIG5hcnJvd3MgZG93biB0aGUgbWVhbmluZyBv ZiB0aGUgd29yZC4gJydsdWp2bycnIGFyZSBtYWRlIGJ5IGFuIGVsYWJvcmF0ZSBhbGdvcml0aG0s IHNvIG1ha2luZyB2YWxpZCAnJ2x1anZvJycgb24gdGhlIGZseSBpcyBuZWFyIGltcG9zc2libGUs IHdpdGggZmV3IGV4Y2VwdGlvbnMgbGlrZSAnJ3NlbHBh4oCZaScnLCBmcm9tICcnc2UgcHJhbWkn Jywgd2hpY2ggY2FuIG9ubHkgaGF2ZSBvbmUgZGVmaW5pdGlvbi4gSW5zdGVhZCwgJydsdWp2bycn IGFyZSBtYWRlIG9uY2UsIGl04oCZcyBwbGFjZSBzdHJ1Y3R1cmUgZGVmaW5lZCwgYW5kIHRoZW4g dGhhdCBkZWZpbml0aW9uIGlzIG1hZGUgb2ZmaWNpYWwgYnkgdGhlIGRpY3Rpb25hcnkuIEV4YW1w bGVzIGluY2x1ZGUgJydicml2bGEnJyAoYnJpZGktd29yZCksICcnY2luamlrY2EnJyAoc2V4dWFs LXNvY2lhbGl6aW5nID0gZmxpcnRpbmcpIGFuZCAnJ2Nha2NpbmtpJycgKHNoZWxsLWluc2VjdCA9 IGJlZXRsZSkuCgpfXycnZnXigJlpdmxhJydfXyBhcmUgbWFkZSBieSBtYWtpbmcgdXAgd29yZHMg d2hpY2ggZml0IHRoZSBkZWZpbml0aW9uIGZvciAnJ2JyaXZsYScnLCBidXQgbm90IGZvciAnJ2x1 anZvJycgb3IgJydnaXNtdScnLiBUaGV5IHRlbmQgdG8gY292ZXIgY29uY2VwdHMgd2hpY2ggaXTi gJlzIGhhcmQgdG8gY292ZXIgYnkgJydsdWp2bycnLCBmb3IgaW5zdGFuY2UgbmFtZXMgb2Ygc3Bl Y2llcywgbmF0aW9ucyBvciB2ZXJ5IGN1bHR1cmFsIHNwZWNpZmljIGNvbmNlcHRzLiBFeGFtcGxl cyBpbmNsdWRlICcnZ3VnZHJnb2d1cmlvJycgKEtvcmVhKSAnJ2NpZGpycGl0c2EnJyAocGl6emEp IG9yICcnYW5nZWxpJycgKGFuZ2VsKS4KCgoKX18nJ2NtYXZvJydfXyBhcmUgc21hbGwgd29yZHMg d2l0aCBvbmUgb3IgemVybyBjb25zb25hbnRzLiBUaGV5IHRlbmQgdG8gbm90IHNpZ25pZnkgYW55 dGhpbmcgaW4gdGhlIGV4dGVyaW9yIHdvcmxkLCBidXQgdG8gaGF2ZSBvbmx5IGdyYW1tYXRpY2Fs IGZ1bmN0aW9uLiBFeGNlcHRpb25zIG9jY3VyLCBhbmQgaXTigJlzIGRlYmF0YWJsZSBob3cgbXVj aCBhdHRpdHVkaW5hbHMgZXhpc3RzIGZvciB0aGVpciBncmFtbWF0aWNhbCBmdW5jdGlvbi4gQW5v dGhlciB3ZWlyZCBleGFtcGxlIGFyZSB0aGUgd29yZHMgb2YgdGhlIGNsYXNzIEdPaEEsIHdoaWNo IGFjdCBhcyBicml2bGEuIEl0IGlzIHZhbGlkIHRvIHR5cGUgc2V2ZXJhbCBjbWF2byBpbiBhIHJv dyBhcyBvbmUgd29yZCwgYnV0IGluIHRoZXNlIGxlc3NvbnMsIHRoYXQgd29u4oCZdCBiZSBkb25l LiBCeSBncm91cGluZyBjZXJ0YWluIGNtYXZvIGluIGZ1bmN0aW9uYWwgdW5pdHMsIHRob3VnaCwg aXQgaXMgc29tZXRpbWVzIGVhc2llciB0byByZWFkLiBUaHVzLCAnJy51aXB1enV2dWt1bWkgY2l0 a2EnJyBpcyB2YWxpZCwgYW5kIGlzIHBhcnNlZCBhbmQgdW5kZXJzdG9vZCBhcyAnJy51aSBwdSB6 dSB2dSBrdSBtaSBjaXRrYScnLiBMaWtlIG90aGVyIExvamJhbiB3b3Jkcywgb25lIHNob3VsZCAo YnV0IG5lZWQgbm90IGFsd2F5cykgcGxhY2UgYSBmdWxsIHN0b3AgYmVmb3JlIGFueSB3b3JkcyBi ZWdpbm5pbmcgd2l0aCBhIHZvd2VsLgoKJydjbWF2bycnIG9mIHRoZSBmb3JtIHhWViwgQ1bigJlW ViBvciBW4oCZVlYgYXJlIGV4cGVyaW1lbnRhbCwgYW5kIGFyZSB3b3JkcyB3aGljaCBhcmUgbm90 IGluIHRoZSBmb3JtYWwgZ3JhbW1hciwgYnV0IHdoaWNoIGhhdmUgYmVlbiBhZGRlZCBieSBMb2pi YW4gdXNlcnMgdG8gcmVzcG9uZCB0byBhIGNlcnRhaW4gbmVlZC4KCgoKX18nJ3JhZnNpJydfXyBh cmUgbm90IExvamJhbiB3b3JkcywgYW5kIGNhbiBuZXZlciBhcHBlYXIgYWxvbmUuIEhvd2V2ZXIs IHNldmVyYWwgKG1vcmUgdGhhbiBvbmUpICcncmFmc2knJyBjb21iaW5lIHRvIGZvcm0gJydsdWp2 bycnLiBUaGVzZSBtdXN0IHN0aWxsIGxpdmUgdXAgdG8gdGhlICcnYnJpdmxhJyctZGVmaW5pdGlv biwgZm9yIGluc3RhbmNlICcnbG9qYmFuJycgaXMgaW52YWxpZCBiZWNhdXNlIGl0IGVuZHMgaW4g YSBjb25zb25hbnQgKHdoaWNoIG1ha2VzIGl0IGEgJydjbWV2bGEnJyksIGFuZCAnJ2Np4oCZZWtl aScnIGlzIGludmFsaWQgYmVjYXVzZSBpdCBkb2VzIG5vdCBjb250YWluIGEgY29uc29uYW50IGNs dXN0ZXIsIGFuZCBpcyB0aHVzIHJlYWQgYXMgdHdvICcnY21hdm8nJyB3cml0dGVuIGFzIG9uZSB3 b3JkLiBPZnRlbiwgYSAzLTQgbGV0dGVyIHN0cmluZyBpcyBib3RoIGEgJydjbWF2bycnIGFuZCBh ICcncmFmc2knJywgbGlrZSAnJ3p14oCZZScnLCB3aGljaCBpcyBib3RoIHRoZSBCQUkgYW5kIHRo ZSAnJ3JhZnNpJycgZm9yICcnenVrdGUnJy4gTm90ZSB0aGF0IHRoZXJlIGlzIG5vd2hlcmUgdGhh dCBib3RoIGEgJydjbWF2bycnIGFuZCBhICcncmFmc2knJyB3b3VsZCBiZSBncmFtbWF0aWNhbCwg c28gdGhlc2UgYXJlIG5vdCBjb25zaWRlcmVkIGhvbW9waG9uZXMuIEFsbCAnJ2dpc211JycgY2Fu IGRvdWJsZSBhcyAnJ3JhZnNpJycsIGlmIHRoZXkgYXJlIHByZWZpeGVkIHdpdGggYW5vdGhlciAn J3JhZnNpJycuIFRoZSBmaXJzdCBmb3VyIGxldHRlciBvZiBhICcnZ2lzbXUnJyBzdWZmaXhlZCB3 aXRoIGFuICJ5IiBjYW4gYWxzbyBhY3QgYXMgYSByYWZzaSwgaWYgdGhleSBhcmUgc3VmZml4ZWQg d2l0aCBhbm90aGVyICcncmFmc2knJy4gVGhlIHZvd2VsICJ5IiBjYW4gb25seSBhcHBlYXIgaW4g JydsdWp2bycnIG9yICcnY21ldmxhJycuIFZhbGlkIHJhZnNpIGxldHRlciBjb21iaW5hdGlvbnMg YXJlOiBDVlYsIENW4oCZViwgQ0NWLCBDVkNDeS0gQ0NWQ3ktLCAtQ1ZDQ1YgYW5kIC1DQ1ZDVi4K CgoKVXNpbmcgd2hhdCB5b3Uga25vdyBub3csIHlvdSBzaG91bGQgYmUgYWJsZSB0byBhbnN3ZXIg dGhlIHRlc3QgaSB0aHVzIHByZXNlbnQ6CgpDYXRlZ29yaXplIGVhY2ggb2YgdGhlIGZvbGxvd2lu ZyB3b3JkcyBhcyAnJ2NtZXZsYScnIChDKSwgJydnaXNtdScnIChnKSwgJydsdWp2bycnIChsKSwg JydmdeKAmWl2bGEnJyAoZikgb3IgJydjbWF2bycnIChjKToKCkEgKSBqYWkgICAgICAgIEcgKSBt dW1ibAoKQiApIC5pcmNpICAgICAgICBIICkgLmnigJlpCgpDICkgYm9zdHUgICAgICAgIEkgKSBj dQoKRCApIHhlbG1hbiAgICAgICAgSiApIHBsYWp2YQoKRSApIHBv4oCZZSAgICAgICAgSyApIGRh bnNla2UKCkYgKSBkamlza3UgICAgICAgIEwgKSAuZXJ0c2EKCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTphLWMsIGItZiwgYy1nLCBkLUMsIGUtYywgZi1sLCBnLUMsIGgtYywgaS1jLCBqLWwsIGstZiwg bC1mLiBJIGxlZnQgb3V0IHRoZSBmdWxsIHN0b3BzIGJlZm9yZSBhbmQgYWZ0ZXIgbmFtZXMgc28g aXQgd291bGRu4oCZdCBiZSB0b28gZWFzeS4KCk5vdGU6IHNvbWUgb2YgdGhlc2Ugd29yZHMsIGxp a2UgYm9zdHUgZG8gbm90IGV4aXN0IGluIHRoZSBkaWN0aW9uYXJ5LCBidXQgdGhpcyBpcyBpcnJl bGV2YW50LiBUaGUgbW9ycGhvbG9neSBzdGlsbCBtYWtlcyBpdCBhICcnZ2lzbXUnJywgc28gaXTi gJlzIGp1c3QgYW4gdW5kZWZpbmVkICcnZ2lzbXUnJy4gU2ltaWxhcmx5IHdpdGggJycuZXJ0c2En J35+CgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBmb3VydGVlbiAodGhlIExvamJhbiBz dW10aSAxOiBMRSBhbmQgTEEpCgpJZiB5b3UgaGF2ZSByZWFkIGFuZCB1bmRlcnN0b29kIHRoZSBj b250ZW50IG9mIGFsbCB0aGUgbGVzc29ucyB1bnRpbCBub3csIHlvdSBoYXZlIGFtYXNzZWQgYSBs YXJnZSBlbm91Z2gga25vd2xlZGdlIG9mIExvamJhbiBzbyB0aGF0IGl0IGRvZXNu4oCZdCBtYXR0 ZXIgaW4gd2hpY2ggb3JkZXIgeW91IGxlYXJuIHRoZSByZXN0LiBBcyBhIHJlc3VsdCwgdGhlIG9y ZGVyIG9mIHRoZSBuZXh0IGxlc3NvbnMgd2lsbCBiZSBhIG1peHR1cmUgb2Ygc29ydGVkIGJ5IGlu Y3JlYXNpbmcgZGlmZmljdWx0eSBhbmQgc29ydGVkIGJ5IGltcG9ydGFuY2UgaW4gb3JkaW5hcnkg TG9qYmFuIGNvbnZlcnNhdGlvbi4KCgoKT25lIG9mIHRoZSBiaWdnZXN0IGNvbnN0cmFpbnMgb24g eW91ciBzcGVhayBub3cgaXMgeW91ciBsaW1pdGVkIGtub3dsZWRnZSBvbiBob3cgdG8gbWFrZSBz dW10aS4gU28gZmFyLCB5b3Ugb25seSBrbm93ICcndGknJyBhbmQgJydsbyBTRUxCUkknJywgd2hp Y2ggZG9lc27igJl0IHRha2UgeW91IGZhciBjb25zaWRlcmluZyBob3cgaW1wb3J0YW50IHN1bXRp IGFyZSBpbiBMb2piYW4uIFRoaXMgbGVzc29uIGFzIHdlbGwgYXMgdGhlIGZvbGxvd2luZyB0d28g d2lsbCBiZSBhYm91dCB0aGUgTG9qYmFuIHN1bXRpLiBGb3Igbm93LCB3ZSBmb2N1cyBvbiB0aGUg ZGVzY3JpcHRpdmUtbGlrZSBzdW10aSwgdGhlIG9uZXMgbWFkZSB3aXRoIGFydGljbGVzIGxpa2Ug e2xvfQoKQXJ0aWNsZXMgYXJlIGluIGxvamJhbiBjYWxsZWQgJydnYWRyaScnLCBhbmQgYWxsIHRo ZSBvbmVzIGRpc2N1c3NlZCBpbiB0aGlzIGxlc3NvbiBhcmUgdGVybWluYXRlZCBieSAnJ2t1Jycg KGV4Y2VwdCB0aGUgY29tYmluYXRpb24gJydsYSBDTUVWTEEnJykuIFdlIHdpbGwgYmVnaW4gYnkg ZGVzY3JpYmluZyB0aHJlZSBzaW1wbGUga2luZHMsIGFuZCB0aGVuIGltbWVkaWF0ZWx5IGZpbmQg dGhhdCB0aGV5IGFyZSBub3Qgc28gc2ltcGxlIGFmdGVyIGFsbDoKCl9fJydsbycnX18gLSAgZ2Fk cmk6IEdlbmVyaWMgdmVyZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFJlc3Vs dCBpcyB2YWd1ZSB3aXRoIHJlZ2FyZCB0byBpbmRpdmlkdWFsaXR5L21hc3MtbmVzcy4KCl9fJyds ZScnX18gLSBnYWRyaTogR2VuZXJpYyBkZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBz dW10aeKAnS4gUmVzdWx0IGlzIHZhZ3VlIHdpdGggcmVnYXJkIHRvIGluZGl2aWR1YWxpdHkvbWFz cy1uZXNzLgoKX18nJ2xhJydfXyAtIGdhZHJpOiBOYW1pbmcgYXJ0aWNsZTogQ29udmVudGlvbmFs LCDigJxjb252ZXJ0IHNlbGJyaSBvciBjbWV2bGEgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBh cyBpbmRpdmlkdWFsKHMpLgoKCgpZb3UgYXJlIGFscmVhZHkgZmFtaWxpYXIgd2l0aCAnJ2xvJycg YW5kIHdoYXQgaXQgZG9lcy4gQnV0IHdoYXQgZG9lcyBpdCBtZWFuLCDigJxWZXJkaWNhbOKAnSBh bmQg4oCcVHJlYXQgcmVzdWx0IGFzIGluZGl2aWR1YWxz4oCdPyBUaGUgbGF0dGVyIGFib3V0IGlu ZGl2aWR1YWxzLCBJ4oCZbGwgY29tZSBiYWNrIHRvIGxhdGVyIHdoZW4gc3BlYWtpbmcgYWJvdXQg bWFzc2VzLiBGb3Igbm93LCDigJx2ZXJkaWNhbOKAnSBpbiB0aGlzIGNvbnRleHQgbWVhbnMgdGhh dCBpbiBvcmRlciBmb3IgYSB0aGluZyB0byBxdWFsaWZ5IGJlZ2luIGxhYmVsbGVkIGFzICcnbG8g a2xhbWEnJywgaXQgaGFzIHRvIGFjdHVhbGx5ICcna2xhbWEnJy4gVGh1cywgdmVyZGljYWwgJydn YWRyaScnIG1ha2VzIGEgY2xhaW0gd2hpY2ggbWF5IGJlIHRydWUgb3IgZmFsc2UgLSB0aGF0IHRo ZSBvYmplY3QocykgaW4gcXVlc3Rpb24gYXJlIGFjdHVhbGx5IHRoZSB4MSBvZiB0aGUgc2VsYnJp IGFmdGVyICcnbG8nJy4KCgoKVGhpcyBtYXkgYmUgY29udHJhc3RlZCB3aXRoICcnbGUnJywgd2hp Y2ggaXMgZGVzY3JpcHRpdmUsIGFuZCB0aHVzIG5vdCB2ZXJkaWNhbC4gU2F5aW5nICcnbGUgZ2Vy a3UnJyBzYXlzIHRoYXQgeW91IGhhdmUgb25lIG9yIG1vcmUgc3BlY2lmaWMgb2JqZWN0cyBpbiBt aW5kLCBhbmQgeW91IHVzZSB0aGUgc2VsYnJpICcnZ2Vya3UnJyB0byBkZXNjcmliZSBpdCwgc28g dGhhdCB0aGUgbGlzdGVuZXIgbWF5IGlkZW50aWZ5IHRob3NlIHNwZWNpZmljIG9iamVjdHMuVGhp cyBtZWFucyB0aGF0ICcnbGUnJyBoYXZlcyB0d28gaW1wb3J0YW50IGRpZmZlcmVuY2VzIGZyb20g JydsbycnOiBGaXJzdGx5LCBpdCBkb2VzIG5vdCByZWZlciB0byBvYmplY3RzIGluIGdlbmVyYWws IGJ1dCB0byBzcGVjaWZpYyBvYmplY3RzLiBTZWNvbmRseSwgd2hpbGUgJydsbyBnZXJrdScnIGRl ZmluaXRlbHkgaXMgb25lIG9yIG1vcmUgZG9ncywgJydsZSBnZXJrdScnLCBiZWNhdXNlIGl04oCZ cyBub3QgdmVyZGljYWwsIGNhbiBiZSBhbnl0aGluZywgYXMgbG9uZyBhcyB0aGUgc3BlYWtlciB0 aGlua3MgdGhlIGRlc2NyaXB0aW9uIHdpbGwgaGVscCBpZGVudGlmeWluZyB0aGUgY29ycmVjdCBv YmplY3RzLiBQZXJoYXBzIHRoZSBzcGVha2VyIGlzIHJlZmVycmluZyB0byBhIGh5ZW5hLCBidXQg YXJlIG5vdCBmYW1pbGlhciB3aXRoIHRoZW0gYW5kIHRoaW5rIOKAnGRvZ+KAnSBpcyBhIGdvb2Qg ZW5vdWdoIGFwcHJveGltYXRpb24gdG8gYmUgdW5kZXJzdG9vZC4gVGhpcyBub24tdmVyZGljYWxp dHkgaXMgcGVyaGFwcyBvdmVyLWVtcGhhc2lzZWQgaW4gbW9zdCBtYW55IHRleHRzOyBUaGUgYmVz dCB3YXkgdG8gZGVzY3JpYmUgYSBkb2cgaXMgdXN1YWxseSB0byBkZXNjcmliZSBpdCBhcyBiZWlu ZyBhIGRvZywgYW5kIHVubGVzcyB0aGVyZSBpcyBhIGdvb2QgcmVhc29uIG5vdCB0bywgJydsZSBn ZXJrdScnIGlzIHVzdWFsbHkgcHJlc3VtZWQgdG8gcmVmZXIgdG8gc29tZXRoaW5nIHdoaWNoIGlz IGFsc28gJydsbyBnZXJrdScnLgoKSW4gdHJhbnNsYXRpb24sICcnbG8gZ2Vya3UnJyBpcyB1c3Vh bGx5IOKAnGEgZG9n4oCdIG9yIOKAnHNvbWUgZG9nc+KAnSwgd2hpbGUgJydsZSBnZXJrdScnIGlz IOKAnHRoZSBkb2figJ0gb3Ig4oCcdGhlIGRvZ3PigJ0uIEV2ZW4gYmV0dGVyIGZvciAnJ2xlIGdl cmt1Jycgd291bGQgYmUg4oCcdGhlIOKAnGRvZyhzKeKAnSDigJ0KCgoKTGFzdCBvZiB0aGUgdGhy ZWUgYmFzaWMgJydnYWRyaScnLCB0aGVyZSBpcyAnJ2xhJycsIHRoZSBuYW1pbmcgJydnYWRyaScn LCB3aGljaCBJIGhhdmUgdW5jb252ZW50aW9uYWxseSBjYWxsZWQg4oCcY29udmVudGlvbmFs4oCd LiBXaGF0IEkgbWVhbiBieSB0aGlzIGlzIHRoYXQgaXTigJlzIG5laXRoZXIgZGVzY3JpcHRpdmUg bm9yIHZlcmRpY2FsLCBzaW5jZSBpdCByZWZlcnMgdG8gYSBwcm9wZXIgbmFtZS4gSWYgSSBpbiBF bmdsaXNoIHJlZmVyIHRvIGEgcGVyc29uIGNhbGxlZCBJbm5vY2VudCBieSBoZXIgbmFtZSwgSSBu ZWl0aGVyIGRlc2NyaWJlIGhlciBhcyBiZWluZyBpbm5vY2VudCwgbm9yIGRvIEkgc3RhdGUgdGhh dCBzaGUgaXMuIEkgb25seSBzdGF0ZSB0aGF0IGJ5IGNvbnZlbnRpb24sIHRoYXQgb2JqZWN0IGlz IHJlZmVycmVkIHRvIGJ5IHRoYXQgc2VsYnJpIG9yIGNtZXZsYS4gTm90ZSB0aGF0ICcnbGEnJyBh bmQgdGhlICcnZ2FkcmknJyBkZXJpdmVkIGZyb20gaXQgY2FuIGNvbnZlcnQgY21ldmxhIHRvIHN1 bXRpIHVubGlrZSBhbnkgb3RoZXIgJydnYWRyaScnLiBBbHNvOiBCZSBjYXV0aW91czogT3RoZXIg dGV4dHMgZG9lcyBub3QgbWVudGlvbiB0aGF0IG5hbWVzIGNhbiBiZSBmb3JtZWQgZnJvbSBvcmRp bmFyeSBzZWxicmkgdXNpbmcgdGhlIGdhZHJpICcnbGEnJy4gQnV0IHRob3NlIGhlcmV0aWNzIG11 c3QgYnVybjsgc2VsYnJpIG5hbWVzIGFyZSBhcyBnb29kIGFzIHRoZXkgZ2V0LCBhbmQgbWFueSBh IHByb3VkIExvamJhbmlzdCBoYXZlIHRoZW0uCgoKClRoZXNlIHRocmVlIGJhc2ljICcnZ2Fkcmkn JyBjYW4gYmUgZXhwYW5kZWQgd2l0aCB0aHJlZSBtb3JlLCB3aGljaCBjb3JyZXNwb25kcyB0byB0 aGUgcHJldmlvdXM6CgoKCl9fJydsb2knJ19fIC0gZ2Fkcmk6IFZlcmRpY2FsIOKAnGNvbnZlcnQg c2VsYnJpIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgbWFzcyhlcykuCgpfXycnbGVpJydf XyAtIGdhZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJl YXQgcmVzdWx0IGFzIGEgbWFzcyhlcykuCgpfXycnbGFpJydfXyAtIGdhZHJpOiBOYW1pbmcgYXJ0 aWNsZTogQ29udmVudGlvbmFsLCDigJxjb252ZXJ0IHNlbGJyaSBvciBjbWV2bGEgdG8gc3VtdGni gJ0uIFRyZWF0IHJlc3VsdCBhcyBtYXNzKGVzKS4KCgoKVGhlc2UgYXJlIHRoZSBzYW1lIGluIGFs bCBhc3BlY3RzIGV4Y2VwdCBmb3Igb25lOiBUaGV5IHRyZWF0IHRoZSBzdW10aSBleHBsaWNpdGx5 IGFzIG1hc3Nlcy4gSWYgdGhlcmUgaXMgb25seSBvbmUgb2JqZWN0IGluIHF1ZXN0aW9uLCBhbiBp bmRpdmlkdWFsIGFuZCBhIG1hc3MgY29uc2lzdGluZyBvZiBvbmUgb2JqZWN0IGFyZSBlcXVpdmFs ZW50LiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZXNlIHR3byBjb25jZXB0cyBsaWUgaW4gd2hp Y2ggc2VsYnJpIGNhbiBiZSBhc2NyaWJlZCB0byBhIGdyb3VwIG9mIGluZGl2aWR1YWxzIHZlcnN1 cyBhIG1hc3MuIEEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgY2FuIGJlIHNhaWQgdG8gZml0IGEgY2Vy dGFpbiBzZWxicmksIGlmIGFsbCBtZW1iZXJzIG9mIHRoZSBncm91cCBlYWNoIGZpdCB0aGUgc2Vs YnJpLiBJdCBpcyBjb3JyZWN0IHRvIGRlc2NyaWJlIGEgcGFjayBvZiAnJ2xvIGdlcmt1JycsIGFz IGJlaW5nIGJsYWNrLCBpZiBmb3IgZWFjaCBvZiB0aGUgZG9ncyBpdOKAmXMgdHJ1ZSB0aGF0IHRo ZXkgYXJlIGJsYWNrLiBBIG1hc3MsIG9uIHRoZSBvdGhlciBoYW5kLCBmaXRzIGFsbCB0aGUgc2Vs YnJpIHdoaWNoIGFueSBvZiBpdHMgbWVtYmVycyBmaXQsIGFzIHdlbGwgYXMgdGhlIHNlbGJyaSB3 aGljaCBub25lIG9mIHRoZSBtZW1iZXJzIGZpdCwgYnV0IHdoaWNoIHRoZSBncm91cCBjb25zaWRl cmVkIGFzIGEgd2hvbGUgZG9lcy4gVGh1cywgYSBtYXNzIG9mIGRvZ3MgY2FuIGJlIGJvdGggYmxh Y2sgYW5kIHdoaXRlLiBIb3dldmVyLCBhbGwgdGhlIG1lbWJlcnMgb2YgdGhlIG1hc3Mgb2YgZG9n cyBtdXN0IGJlIGRvZ3MgaW4gb3JkZXIgZm9yICcnbG9pJycgdG8gYmUgYXBwbGljYWJsZS4gQW5v dGhlciBleGFtcGxlIGNhbiBpbGx1c3RyYXRlIGhvdyBhIG1hc3MgY2FuIGhhdmUgcHJvcGVydGll cyB3aGljaCBub25lIG9mIGl0cyBtZW1iZXJzIGhhczoKCl9fJydzcnVyaScnX186IOKAnHgxIGZs YW5rcy9lbmNpcmNsZXMvZW5jbG9zZXMgeDIgaW4gbGluZS9wbGFuZS9kaXJlY3Rpb25zIHgz4oCd CgonJ2xlaSBwcmVudSBjdSBzcnVyaSBsbyB6ZGFuaScnIC0g4oCcVGhlIHBlb3BsZSBzdXJyb3Vu ZGVkIHRoZSBob21lLuKAnSBpcyBwbGF1c2libGUsIGV2ZW4gdGhvdWdoLCB5byBtb21hIGpva2Vz IG5vdCBjb25zaWRlcmVkLCBpdOKAmXMgY29tcGxldGVseSBpbXBsYXVzaWJsZSB0aGF0IGl0IGNv dWxkIGJlIHRydWUgZm9yIGFueSBvbmUgb2YgdGhlIG1lbWJlcnMgYWxvbmUuIEFuIEVuZ2xpc2gg YW5hbG9neSBjb3VsZCBiZTog4oCcSHVtYW5zIGRlZmVhdGVkIHNtYWxscG94IGluIHRoZSAyMHRo IGNlbnR1cnnigJ0uIFN1cmVseSBubyBodW1hbiBkaWQgc28sIGJ1dCB0aGUgbWFzcyBvZiBodW1h bnMgZGlkLCBhbmQgdGhhdCBtYWtlcyB0aGUgc2VudGVuY2UgdHJ1ZSBpbiBFbmdsaXNoLCBhcyB3 ZWxsIGFzIGluIExvamJhbiBpZiDigJxodW1hbnPigJ0gYXJlIGEgbWFzcy4gSnVzdCBsaWtlIHRo ZSBMb2piYW4gbWFzcywgdGhlIEVuZ2xpc2ggbWFzcyDigJxodW1hbnPigJ0gY2FuIG9ubHkgcmVm ZXIgdG8gaW5kaXZpZHVhbHMgZWFjaCBvZiB3aGljaCBhcmUgaHVtYW4uCgonJ2xlaSBnZXJrdScn IHJlZmVycyB0byBhIG1hc3MgZm9ybWVkIGJ5IGEgZ3JvdXAgb2Ygc3BlY2lmaWMgaW5kaXZpZHVh bHMsIGVhY2ggb2Ygd2hpY2ggdGhlIHNwZWFrZXIgcmVmZXJzIHRvIGFzICcnbGUgZ2Vya3UnJy4K Ck1hc3MgbmFtZXMgYXMgZGVzY3JpYmVzIGJ5ICcnbGFpJycgYXJlIG9ubHkgYXBwcm9wcmlhdGUg aWYgdGhlIGdyb3VwIGFzIGEgd2hvbGUgaXMgbmFtZWQgc3VjaCwgYW5kIG5vdCBqdXN0IGlmIGFu eSBvZiB0aGUgbWVtYmVycyBhcmUuIEl0IGNhbiwgaG93ZXZlciBiZSB1c2VkIGlmIHRoZSBicmlk aSBpcyB0cnVlIGZvciBvbmx5IGEgZnJhY3Rpb24gb2YgdGhhdCBncm91cC4KCgoKWW91IG1pZ2h0 IGhhdmUgbm90aWNlZCB0aGF0IHRoZXJlIGlzIG5vIHdvcmQgd2hpY2ggdW5hbWJpZ3VvdXNseSBj b252ZXJ0cyBzZWxicmkgdG8gaW5kaXZpZHVhbChzKS4gSW4gb3JkZXIgdG8gYmUgZXhwbGljaXQg YWJvdXQgaW5kaXZpZHVhbG5lc3MsIG9uZSBuZWVkcyAnJ2xvJycsICcnbGUnJyBvciAnJ2xhJycg d2l0aCBhbiBvdXRlciBxdWFudGlmaWVyLiBUaGUgc3ViamVjdCBvZiBxdWFudGlmaWVycyB3aWxs IGJlIGNvbnNpZGVyZWQgbGF0ZXIsIGluIGxlc3NvbiB0d2VudHktdHdvLiBXaGF0IGlzIHRoZSBy ZWFzb24gdGhhdCAnJ2xvJycgYW5kICcnbGUnJyB2YWd1ZSwgYW5kIG5vdCBleHBsaWNpdGx5IGlu ZGl2aWR1YWw/IEl0IGlzIGJlY2F1c2UgdGhlaXIgdmFndWVuZXNzIGVuYWJsZXMgdGhlbSB0byBi ZSB1c2VkIGluIGFueSBjb250ZXh0LCB3aXRob3V0IHRoZSBzcGVha2VyIGhhdmluZyB0byB0aGlu ayBhYm91dCB3aGV0aGVyIGlzIGJlaGF2ZXMgYXMgYSBtYXNzIG9yIGEgZ3JvdXAgb2YgaW5kaXZp ZHVhbHMuCgoKClRoaXJkIGluIHRoaXMgc2VyaWVzLCB0aGVyZSBhcmUgdGhyZWUgc2V0LWZvcm1p bmcgJydnYWRyaScnOgoKCgpfXycnbG8naScnX18gLSBnYWRyaTogVmVyZGljYWwg4oCcY29udmVy dCBzZWxicmkgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4KCl9fJydsZeKAmWkn J19fIC0gZ2Fkcmk6IERlc2NyaXB0aXZlIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBU cmVhdCByZXN1bHQgYXMgYSBzZXQuCgpfXycnbGHigJlpJydfXyAtIGdhZHJpOiBOYW1pbmcgYXJ0 aWNsZTogQ29udmVudGlvbmFsLCDigJxjb252ZXJ0IHNlbGJyaSBvciBjbWV2bGEgdG8gc3VtdGni gJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4KCgoKVW5saWtlIGdyb3VwcyBvZiBpbmRpdmlkdWFs cyBvciBtYXNzZXMsIHNldHMgZG9lcyBub3QgdGFrZSBhbnkgb2YgdGhlIHByb3BlcnRpZXMgZnJv bSB0aGUgb2JqZWN0cyBmcm9tIHdoaWNoIHRoZSBzZXQgaXMgZm9ybWVkLiBBIHNldCBpcyBhIHB1 cmVseSBtYXRoZW1hdGljYWwgb3IgbG9naWNhbCBjb25zdHJ1Y3QsIGFuZCBoYXMgcHJvcGVydGll cyBsaWtlIGNhcmRpbmFsaXR5LCBtZW1iZXJzaGlwIG9yIHNldCBpbmNsdXNpb24uIEFnYWluLCBu b3RlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBzZXQgb2YgdGhpbmdzLCBhbmQgdGhlIHRoaW5n cyBvZiB3aGljaCB0aGUgc2V0IGlzIGZvcm1lZDoKCl9fJyd0aXJ4dScnX18g4oCceDEgaXMgYSB0 aWdlci9sZW9wYXJkL2phZ3VhciBvZiBzcGVjaWVzL2JyZWVkIHgyIHdpdGggY29hdCBtYXJraW5n cyB4M+KAnQoKJydsb+KAmWkgdGlyeHUgY3UgY21hbHUnJyBzYXlzIG5vdGhpbmcgYWJvdXQgd2hl dGhlciBiaWcgY2F0cyBhcmUgc21hbGwgKHdoaWNoIGlzLCBieSB0aGUgd2F5LCBvYnZpb3VzbHkg ZmFsc2UpLCBidXQgaW5zdGVhZCBzYXkgdGhhdCB0aGUgc2V0IG9mIGJpZyBjYXRzIGlzIHNtYWxs OyB0aGF0IGlzIC0gdGhlcmUgYXJlIGZldyBvZiB0aGVtLgoKCgpMYXN0bHksIHRoZXJlIGFyZSB0 aGUgKG9ubHkgdHdvKSBnZW5lcmFsaXppbmcgJydnYWRyaScnOgoKX18nJ2xv4oCZZScnX18gLSBn YWRyaTogVmVyZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFN1bXRpIHJlZmVy cyB0byB0aGUgYXJjaGV0eXBlIG9mIHtsbyBTRUxCUkl9LgoKX18nJ2xl4oCZZScnX18gLSBnYWRy aTogRGVzY3JpcHRpdmUg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFN1bXRpIHJlZmVy cyB0byB0aGUgZGVzY3JpYmVkL3BlcmNlaXZlZCBhcmNoZXR5cGUgb2Yge2xlIFNFTEJSSX0uCgpP ZiB3aGljaCB0aGVyZSBpcyBubyAnJ2xhJyctZXF1aXZhbGVudC4KCgoKU28sIHdoYXQgaXMgYWN0 dWFsbHkgbWVhbnQgYnkgdGhlIGFyY2hldHlwZT8gRm9yICcnbG/igJllIHRpcnh1JycsIGl0IGlz IGFuIGlkZWFsLCBpbWFnaW5lZCBiaWcgY2F0LCB3aGljaCBoYXMgYWxsIHRoZSBwcm9wZXJ0aWVz IHdoaWNoIGJlc3QgZXhlbXBsaWZpZXMgYmlnIGNhdHMuIEl0IHdvdWxkIGJlIHdyb25nIHRvIHNh eSB0aGF0IHRoaXMgaW5jbHVkZXMgaGF2aW5nIGEgc3RyaXBlZCBmdXIsIHNpbmNlIGEgYmlnIHN5 c3RlbWF0aWMgc3ViZ3JvdXAgb2YgdGhlIG1lbWJlcnMgb2YgdGhlIHNldCBvZiBiaWcgY2F0cyBk byBub3QgaGF2ZSBzdHJpcGVkIGZ1ciwgdGhlIGxlb3BhcmRzIGFuZCB0aGUgamFndWFycy4gTGlr ZXdpc2UsIHRoZSB0eXBpY2FsIGh1bWFuIGRvZXMgbm90IGxpdmUgaW4gQXNpYSBldmVuIHRob3Vn aCBhIGxvdCBvZiBodW1hbnMgZG8uIEhvd2V2ZXIsIGlmIHN1ZmZpY2llbnRseSBtYW55IGh1bWFu cyBoYXZlIGEgdHJhaXQsIGZvciBpbnN0YW5jZSBiZWluZyBhYmxlIHRvIHNwZWFrLCB3ZSBjYW4g c2F5OgoKX18nJ2tha25lJydfXzog4oCceDEgaXMgY2FwYWJsZSBvZiBkb2luZy9iZWluZyB4MiB1 bmRlciBjaXJjdW1zdGFuY2UgeDPigJ0KCicnbG/igJllIHJlbW5hIGN1IGtha25lIGxvIG51IHRh dmxhJycgLSDigJxUaGUgdHlwaWNhbCBodW1hbiBiZWluZyBjYW4gc3BlYWvigJ0uCgoKCicnbGXi gJllJycgdGhlbiwgaXMgdGhlIGlkZWFsIG9iamVjdCBhcyBwZXJjZWl2ZWQgb3IgZGVzY3JpYmVk IGJ5IHRoZSBzcGVha2VyLiBUaGlzIG5lZWQgbm90IGJlIGZhY3R1YWxseSBjb3JyZWN0LCBhbmQg aXMgb2Z0ZW4gdHJhbnNsYXRlZCBhcyB0aGUg4oCcc3RlcmVvdHlwZeKAnSwgZXZlbiB0aG91Z2gg dGhlIEVuZ2xpc2ggcGhyYXNlIGhhdmUgc29tZSB1bnBsZWFzYW50IG5lZ2F0aXZlIGNvbm5vdGF0 aW9ucywgd2hpY2ggdGhlIExvamJhbiBkb2VzIG5vdC4gSW4gZmFjdCwgZXZlcnlvbmUgaGFzIGEg c3RlcmVvdHlwaWNhbCBhcmNoZXR5cGljaGFsIGltYWdlIG9mIGFueSBjYXRlZ29yeS4gSW4gb3Ro ZXIgd29yZHMsICcnbG/igJllIHJlbW5hJycgaXMgdGhlIGFyY2hldHlwZSB3aGljaCBiZXN0IGV4 ZW1wbGlmaWVzIGFsbCAnJ2xvIHJlbW5hJycsIHdoaWxlIHRoZSBhcmNoZXR5cGUgJydsZeKAmWUg cmVtbmEnJyBiZXN0IGV4ZW1wbGlmaWVzIGFsbCAnJ2xlIHJlbW5hJycuCgoKClRoZSBlbGV2ZW4g Z2FkcmkgY2FuIGJlIHNlZW4gaW4gdGhlIGRpYWdyYW0gYmVsb3cuCgp8fCB8R2VuZXJpY3xNYXNz ZXN8U2V0c3xHZW5lcmFsaXppbmcKClZlcmRpY2FsfGxvfGxvaXxsb+KAmWl8bG/igJllCgpEZXNj cmlwdGl2ZXxsZXxsZWl8bGXigJlpfGxl4oCZZQoKTmFtZXxsYXxsYWl8bGHigJlpfGRvZXMgbm90 IGV4aXN0fHwKCgoKTm90ZTogRWFybGllciwgdGhlcmUgd2FzIGEgd29yZCAnJ3hv4oCZZScnIGZv ciB0aGUgZ2VuZXJpYyBnYWRyaS4gSG93ZXZlciwgdGhlIHJ1bGVzIGFuZCBkZWZpbml0aW9ucyBm b3IgZ2Fkcmkgd2VyZSBjaGFuZ2VkIGluIGxhdGUgMjAwNCwgYW5kIHRoZSBjdXJyZW50IHNldCBv ZiBydWxlcyBvbiB0aGlzIHRvcGljLCBuaWNrZWQg4oCceG9ybG/igJ0gaGFzIHJlcGxhY2VkIHRo ZSBvbGQgd2F5LiBOb3csICcnbG8nJyBpcyBnZW5lcmljLCBhbmQgJyd4b+KAmWUnJyBpcyB1c2Vk IGFzIGEgZWxsaXB0aWNhbCBkaWdpdCAobGVzc29uIG5pbmV0ZWVuKS4KCgoKCgohIUxvamJhbiBM ZXNzb25zIC0gTGVzc29uIGZpZnRlZW4gKHRoZSBMb2piYW4gc3VtdGkgMjogS09oQTMsIEtPaEE1 IGFuZCBLT2hBNikKClNlZSB3aGF0IGhhcHBlbnMgaWYgSSB0cnkgdG8gdHJhbnNsYXRlIHRoZSBz ZW50ZW5jZTog4oCcU3RlcmVvdHlwaWNhbCBwZW9wbGUgd2hvIGNhbiBzcGVhayBMb2piYW4gc3Bl YWsgdG8gZWFjaCBvdGhlciBhYm91dCB0aGUgbGFuZ3VhZ2VzIHRoZXkgY2FuIHNwZWFr4oCdOgoK X18nJ2Jhbmd1JydfXyDigJx4MSBpcyBhIGxhbmd1YWdlIHVzZWQgYnkgeDIgdG8gZXhwcmVzcyB4 MyAoYWJzdHJhY3Rpb24p4oCdCgonJ2xl4oCZZSBwcmVudSBwb2kga2XigJlhIGtha25lIGxvIG51 IHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHRhdmxhIGxl4oCZZSBwcmVudSBwb2kga2XigJlhIGth a25lIGxvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uIGxvIGJhbmd1IHBvaSBsbyBwcmVudSBwb2kg a2XigJlhIHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHNlIGJhbmd1IGtl4oCZYScnCgoKCldoYXQg d2Ugc2VlIGlzIHRoYXQgdGhlIExvamJhbiB2ZXJzaW9uIGlzIG11Y2ggbG9uZ2VyIHRoYW4gdGhl IEVuZ2xpc2guIFRoaXMgaXMgcHJpbWFyaWx5IGJlY2F1c2UgdGhlIGZpcnN0LCByaWRpY3Vsb3Vz bHkgbG9uZywgc3VtdGkgaXMgYmVpbmcgcmVwZWF0ZWQgdHdvIG1vcmUgdGltZXMgaW4gdGhlIExv amJhbiB0ZXh0LCB3aGlsZSB0aGUgRW5nbGlzaCBjYW4gcmVmZXIgdG8gaXQgYnkg4oCcZWFjaCBv dGhlcuKAnSBhbmQg4oCcdGhleeKAnSAtIG11Y2ggbW9yZSBlZmZpY2llbnRseS4gV291bGRu4oCZ dCBpdCBiZSBjbGV2ZXIgaWYgTG9qYmFuIHNvbWVob3cgaGFkIG1lY2hhbmlzbXMgZm9yIGRvaW5n IHRoZSBzYW1lPwoKCgpJdCB0dXJucyBvdXQgaXQgZG9lcywgd2hhdCBhIHN1cnByaXNlISBMb2pi YW4gaGFzIGEgcmFuZ2Ugb2Ygd29yZHMgY2FsbGVkICcnc3Vta2HigJlpJycgbWVhbmluZyDigJxz dW10aS1yZXByZXNlbnRhdGl2ZXPigJ0uIEluIEVuZ2xpc2gsIHdlIHJlZmVyIHRvIHRoZW0gYXMg cHJvLXN1bXRpLCBiZWNhdXNlIHRoZXkgYXJlIGVzc2VudGlhbGx5IHRoZSBzYW1lIGFzIHRoZSBF bmdsaXNoIHByb25vdW5zLCBidXQgd2l0aCBzdW10aSBpbnN0ZWFkIG9mIG5vdW5zLiBJbiBmYWN0 LCB5b3UgYWxyZWFkeSBrbm93ICcndGknJywgJydkbycnIGFuZCAnJ21pJycsIGJ1dCB0aGVyZSBh cmUgbWFueSBtb3JlLCBzbyBsZXTigJlzIGdldCBsZWFybmluZy4gRmlyc3QsIHdlIHdhbnQgdG8g cHV0IGl0IGludG8gc3lzdGVtLiBXZSBjYW4gYmVnaW4gd2l0aCB0aGUgb25lcyBtb3N0IGZhbWls aWFyIHRvIEVuZ2xpc2gsIGFuZCB3aGF0IHlvdeKAmXZlIGFscmVhZHkgbGVhcm5lZDoKCgoKX18n J3RpJydfXyAtIHN1bWth4oCZaTog4oCcaW1tZWRpYXRlIOKAmGl04oCZOiByZXByZXNlbnRzIGEg c3VtdGkgcGh5c2ljYWxseSBuZWFyIHRoZSBzcGVha2Vy4oCdCgpfXycndGEnJ19fIC0gc3Vta2Hi gJlpOiDigJxuZWFyYnkg4oCYaXTigJk6IHJlcHJlc2VudHMgYSBzdW10aSBzb21lIHBoeXNpY2Fs IGRpc3RhbmNlIGZyb20gdGhlIHNwZWFrZXIgT1IgY2xvc2UgdG8gdGhlIGxpc3RlbmVy4oCdCgpf XycndHUnJ19fIC0gc3Vta2HigJlpOiDigJxkaXN0YW50IOKAmGl04oCZOiByZXByZXNlbnRzIGEg c3VtdGkgcGh5c2ljYWxseSBmYXIgZnJvbSB0aGUgc3BlYWtlciBhbmQgdGhlIGxpc3RlbmVyLuKA nQoKCgpZb3UgY2FuIGFnYWluIHJlY29nbml6ZSB0aGUg4oCcaSwgYSwgdeKAnS1zZXF1ZW5jZSB3 aGljaCBwb3BzIHVwIG92ZXIgYW5kIG92ZXIuIFNvbWUgdGhpbmdzIG1pZ2h0IHRha2Ugc29tZSBj bGVhcmluZyB1cCwgdGhvdWdoLiBGaXJzdGx5LCB0aGVzZSBzdW10aSBjYW4gcmVwcmVzZW50IGFu eXRoaW5nIHdoaWNoIGNhbiBiZSBzYWlkIHRvIG9jY3VweSBhIHBoeXNpY2FsIHNwYWNlLiBPYmpl Y3RzLCBjZXJ0YWlubHkuIElkZWFzLCBjZXJ0YWlubHkgbm90LiBFdmVudHMgYXJlIGFjY2VwdGVk LCBidXQgb25seSB0byB0aGUgZXh0ZW50IHRoZXkgYXJlIHJlc3RyaWN0ZWQgdG8gYSBzcGVjaWZp YyBwbGFjZSAtIHRoZSBKYXNtaW4gUmV2b2x1dGlvbiBjYW5ub3QgYmUgcG9pbnRlZCBhdCwgYnV0 IHNvbWUgYmFyLWZpZ2h0IG9yIGEga2lzcyBtaWdodC4gU2Vjb25kbHksIG5vdGUgdGhhdCB0aGUg ZGlzdGFuY2UgaXMgcmVsYXRpdmUgdG8gZGlmZmVyZW50IHRoaW5ncyBmb3IgdGhlIGRpZmZlcmVu dCB3b3JkczogJyd0dScnIG9ubHkgYXBwbGllcyBpZiBpdOKAmXMgZGlzdGFudCBmcm9tIGJvdGgg dGhlIHNwZWFrZXIgYW5kIHRoZSBsaXN0ZW5lci4gSW4gY2FzZXMgd2hlcmUgdGhlIHNwZWFrZXIg YW5kIGxpc3RlbmVyIGlzIGZhciBhcGFydCBhbmQgdGhlIGxpc3RlbmVyIGNhbm5vdCBzZWUgdGhl IHNwZWFrZXIgdGFsa2luZywgJyd0YScnIHJlZmVycyB0byBzb21ldGhpbmcgY2xvc2UgdG8gdGhl IGxpc3RlbmVyLiBUaGlyZGx5LCBpdOKAmXMgYWxsIHJlbGF0aXZlIGFuZCBjb250ZXh0IGRlcGVu ZGVudC4gVGhlc2UgdGhyZWUgd29yZHMgYXJlIGFsbCBwcm9ibGVtYXRpYyBpbiB3cml0dGVuIHRl eHQsIGZvciBpbnN0YW5jZSwgYmVjYXVzZSB0aGUgcG9zaXRpb24gb2YgdGhlIHNwZWFrZXIgYW5k IGxpc3RlbmVyIGlzIHVua25vd24gdG8gZWFjaCBvdGhlciwgYW5kIGNoYW5nZXMgYXMgdGltZSBn b2VzIGJ5LiBGdXJ0aGVybW9yZSwgdGhlIGF1dGhvciBvZiBhIGJvb2sgY2Fubm90IHBvaW50IHRv IGFuIG9iamVjdCBhbmQgZXhwcmVzcyB0aGUgcG9pbnRpbmcgaW4gdGhlIGJvb2suCgoKClRoZW4g dGhlcmUgaXMgYSBzZXJpZXMgY2FsbGVkIEtPaEEzLCB0byB3aGljaCAnJ21pJycgYW5kICcnZG8n JyAoYW5kICcna28nJywgYnV0IEkgd29u4oCZdCB3cml0ZSB0aGF0IGhlcmUpIGJlbG9uZ3M6Cgpf XycnbWknJ19fIC0gc3Vta2HigJlpOiBUaGUgc3BlYWtlcihzKS4KCl9fJydtaeKAmW8nJ19fIC0g c3Vta2HigJlpOiBUaGUgbWFzcyBvZiB0aGUgc3BlYWtlcihzKSBhbmQgdGhlIGxpc3RlbmVyKHMp IC4KCl9fJydtaeKAmWEnJ19fIC0gc3Vta2HigJlpOiBUaGUgbWFzcyBvZiB0aGUgc3BlYWtlcihz KSBhbmQgb3RoZXJzLgoKX18nJ21h4oCZYScnX18gLSBzdW1rYeKAmWk6IFRoZSBtYXNzIG9mIHRo ZSBzcGVha2VyKHMpLCB0aGUgbGlzdGVuZXIocykgYW5kIG90aGVycy4KCl9fJydkbycnX18gLSBz dW1rYeKAmWk6IFRoZSBsaXN0ZW5lcihzKS4KCl9fJydkb+KAmW8nJ19fIC0gc3Vta2HigJlpOiBU aGUgbWFzcyBvZiB0aGUgbGlzdGVuZXIocykgYW5kIG90aGVycy4KCgoKVGhlc2Ugc2l4IHN1bWth 4oCZaSBhcmUgbW9yZSBlYXNpbHkgZ3Jhc3BlZCBpbiB0aGUgYmVsb3cgVmVubiBkaWFncmFtOgoK Cgp7aW1nIGZpbGVJZD0iMyIgdGh1bWI9InkiIHJlbD0iYm94W2ddIn0KClZlbm4gZGlhZ3JhbSBv ZiBLT2hBMyAoJydrbycnIGV4Y2x1ZGVkKS4gJydsZSBkcmF0YScnIGlzIG5vdCBhIEtPaEEzLCBi dXQgbWVhbnMg4oCcdGhlIG90aGVyKHMp4oCdCgoKCkl0IGlzIHBvc3NpYmxlIGZvciBzZXZlcmFs IHBlb3BsZSB0byBiZSDigJx0aGUgc3BlYWtlcnPigJ0sIGlmIG9uZSBzdGF0ZW1lbnQgaXMgbWFk ZSBvbiB0aGUgYmVoYWxmIG9mIGFsbCBvZiB0aGVtLiBUaGVyZWZvcmUsIHdoaWxlIOKAnHdl4oCd IGNhbiBiZSB0cmFuc2xhdGVkIGFzIGVpdGhlciAnJ21pJycsICcnbWnigJlvJycsICcnbWnigJlh Jycgb3IgJydtYeKAmWEnJywgd2hhdCBvbmUgcXVpdGUgb2Z0ZW4gbWVhbnMgaXMgcmVhbGx5IGp1 c3QgJydtaScnLiBBbGwgb2YgdGhlc2Ugc2l4LCBpZiB0aGV5IHJlZmVyIHRvIG1vcmUgdGhhbiBv bmUgaW5kaXZpZHVhbCwgcmVwcmVzZW50IG1hc3Nlcy4gV2l0aGluIGJyaWRpLWxvZ2ljLCB0aGUg YnJpZGkgJydtaSBnbGVraScnIHNhaWQgYnkgc3BlYWtlciBBIGlzIGV4YWN0bHkgZXF1aXZhbGVu dCB0byAnJ2RvIGdsZWtpJycgc2FpZCBieSBzcGVha2VyIEIgdG8gc3BlYWtlciBBLCBhbmQgYXJl IGNvbnNpZGVyZWQgdGhlIHNhbWUgYnJpZGkuIFdlIHdpbGwgY29tZSBiYWNrIHRvIHRoaXMgbGF0 ZXIsIGluIHRoZSAnJ2JyaWth4oCZaScnIChwcm8tYnJpZGkpIGxlc3Nvbi4KCgoKQWxsIG9mIHRo ZXNlICcnc3Vta2HigJlpJycgYXJlIHZlcnkgY29udGVudC1zcGVjaWZpYywgYW5kIGNhbiBub3Qg YmUgdXNlZCwgZm9yIGluc3RhbmNlLCB0byBoZWxwIHVzIHdpdGggdGhlIHNlbnRlbmNlIHdoaWNo IHRoaXMgbGVzc29uIGJlZ2FuIHdpdGguIFRoZSBmb2xsb3dpbmcgc2VyaWVzIGNhbiBpbiBwcmlu Y2lwbGUgYmUgdXNlZCB0byByZWZlciB0byBhbnkgc3VtdGk6CgpfXycncmknJ19fIC0gc3Vta2Hi gJlpOiDigJxMYXN0IHN1bXRpIG1lbnRpb25lZOKAnQoKX18nJ3JhJydfXyAtIHN1bWth4oCZaTog 4oCcQSByZWNlbnQsIGJ1dCBub3QgdGhlIGxhc3Qgc3VtdGkgbWVudGlvbmVk4oCdCgpfXycncnUn J19fIC0gc3Vta2HigJlpOiDigJxBIHN1bXRpIG1lbnRpb25lZCBsb25nIGFnb+KAnQoKCgpUaGVz ZSBzdW10aSB3aWxsIHJlZmVyIHRvIGFueSB0ZXJtaW5hdGVkIHN1bXRpIGV4Y2VwdCBtb3N0IG90 aGVyICcnc3Vta2HigJlpJycuIFRoZSByZWFzb24gdGhhdCBtb3N0IG90aGVyICcnc3Vta2HigJlp JycgY2Fubm90IGJlIHJlZmVycmVkIHRvIGJ5IHRoZXNlIHN1bXRpLCBpcyB0aGF0IHRoZXkgYXJl IHNvIGVhc3kgdG8ganVzdCByZXBlYXQgYnkgdGhlbXNlbHZlcy4gVGhlIGV4Y2VwdGlvbiB0byB0 aGUgcnVsZSBhcmUgJyd0aScnLCAnJ3RhJycgYW5kICcndHUnJywgYmVjYXVzZSB5b3UgY291bGQg aGF2ZSBjaGFuZ2VkIHdoYXQgeW91IHBvaW50IGF0LCBhbmQgdGh1cyBjYW5ub3QganVzdCByZXBl YXQgdGhlIHdvcmQuIFRoZXkgd2lsbCBvbmx5IHJlZmVyIHRvIHRlcm1pbmF0ZWQgc3VtdGksIGFu ZCB0aHVzIGNhbm5vdCwgZm9yIGluc3RhbmNlLCBiZSB1c2VkIHRvIHJlZmVyIHRvIGFuIGFic3Ry YWN0aW9uIGlmIHRoZSB3b3JkIGluIGlzIHRoYXQgYWJzdHJhY3Rpb246ICcnbGUgcGVuZG8gbm9p IGtl4oCZYSBwZW5kbyBtaSBjdSBkamljYSBsbyBudSByaSBzZSB6ZGFuaScnIC0gaGVyZSAnJ3Jp JycgY2Fubm90IHJlZmVyIHRvIHRoZSBhYnN0cmF0aW9uLCBzaW5jZSBpdCBpcyBub3QgdGVybWlu YXRlZCwgbm9yIHRvICcnbWknJyBvciAnJ2tl4oCZYScnLCBzaW5jZSB0aGV5IGFyZSBzdW1rYeKA mWksIHNvIGl0IHJlZmVycyB0byB7bGUgcGVuZG99LgoKJydyYScnIGFuZCAnJ3J1JycgYXJlIGNv bnRleHQtZGVwZW5kZW50IGluIHdoYXQgdGhleSByZWZlciB0bywgYnV0IHRoZXkgZm9sbG93IHRo ZSBydWxlcyBtZW50aW9uZWQgYWJvdmUsIGFuZCAnJ3J1JycgYWx3YXlzIHJlZmVyIHRvIGEgbW9y ZSBkaXN0YW50IHN1bXRpIHRoYW4gJydyYScnLCB3aGljaCBpcyBhbHdheXMgbW9yZSBkaXN0YW50 IHRoYW4gJydyaScnLgoKCgonJ3JpJycgYW5kIGl04oCZcyBicm90aGVycyBhcmUgcHJldHR5IHdl bGwgc3VpdGVkIGZvciBkZWFsaW5nIHdpdGggdGhlIG9yaWdpbmFsIHNlbnRlbmNlLiBUcnkgc2F5 aW5nIGl0IHVzaW5nIHR3byBpbnN0YW5jZXMgb2YgJydzdW1rYeKAmWknJyEKCgoKQW5zd2VyOiB+ fmdyZXksZ3JleTonJ2xl4oCZZSBwcmVudSBwb2kga2XigJlhIGtha25lIGxvIG51IHRhdmxhIGZv IGxhIC5sb2piYW4uIGN1IHRhdmxhIHJ1IGxvIGJhbmd1IHBvaSBydSBjdSBzZSBiYW5ndSBrZeKA mWEnJy4gJydyaScnIGlzIG5vdCBjb3JyZWN0LCBiZWNhdXNlIGl0IHJlZmVycyB0byAnJ2xhIC5s b2piYW4uJycuICcncmEnJywgY291bGQgYmUgdXNlZCwgYnV0IGNvdWxkIGJlIG1pc3Rha2VubHkg YmUgdGhvdWdodCB0byByZWZlciB0byAnJ2xvIG51IHRhdmxhIGZvIGxhIC5sb2piYW4uJycsIGJ1 dCAnJ3J1JycgaXMgYXNzdW1lZCB0byByZWZlciB0byB0aGUgbW9zdCBkaXN0YW50IHN1bXRpIC0g dGhlIG1vc3Qgb3V0ZXIgb25lLn5+CgoKCkxhc3RseSwgdGhlcmUgYSBzdW10Y2l0YSB3aGljaCBy ZXByZXNlbnQgdXR0ZXJhbmNlczogU28gY2FsbGVkIHV0dGVyYW5jZSB2YXJpYWJsZXMuIFRoZXkg bmVlZCBub3QgYmUgcmVzdHJpY3RlZCB0byBvbmUgc2VudGVuY2UgKGp1ZnJhKSwgYnV0IGNhbiBi ZSBzZXZlcmFsIHNlbnRlbmNlcywgaWYgdGhlIGNvbnRleHQgYWxsb3dzIGl0OgoKX18nJ2Rh4oCZ dScnX18gVXR0ZXJhbmNlIHZhcmlhYmxlOiBSZW1vdGUgcGFzdCBzZW50ZW5jZQoKX18nJ2Rl4oCZ dScnX18gVXR0ZXJhbmNlIHZhcmlhYmxlOiBSZWNlbnQgc2VudGVuY2UKCl9fJydkaeKAmXUnJ19f IFV0dGVyYW5jZSB2YXJpYWJsZTogUHJldmlvdXMgc2VudGVuY2UKCl9fJydkZWknJ19fIFV0dGVy YW5jZSB2YXJpYWJsZTogVGhpcyBzZW50ZW5jZQoKX18nJ2Rp4oCZZScnX18gVXR0ZXJhbmNlIHZh cmlhYmxlOiBOZXh0IHNlbnRlbmNlCgpfXycnZGXigJllJydfXyBVdHRlcmFuY2UgdmFyaWFibGU6 IE5lYXIgZnV0dXJlIHNlbnRlbmNlCgpfXycnZGHigJllJydfXyBVdHRlcmFuY2UgdmFyaWFibGU6 IFJlbW90ZSBmdXR1cmUgc2VudGVuY2UKCl9fJydkb+KAmWknJ19fIFV0dGVyYW5jZSB2YXJpYWJs ZTogRWxsaXB0aWNhbCB1dHRlcmFuY2UgdmFyaWFibGU6IOKAnFNvbWUgc2VudGVuY2XigJ0KClRo ZXNlIHJlcHJlc2VudHMgc2VudGVuY2VzIGFzIHN1bXRpLCBhbmQgcmVmZXIgb25seSB0byB0aGUg c3Bva2VuIHdvcmRzIG9yIHRoZSBsZXR0ZXJzLCBub3QgdG8gdGhlIG1lYW5pbmcgYmVoaW5kIHRo ZW0uCgoKClRoZXJlIGFyZSBtb3JlIExvamJhbiAnJ3N1bWth4oCZaScnLCBidXQgZm9yIG5vdyB5 b3UgcHJvYmFibHkgbmVlZCBhIGJyZWFrIGZyb20gdGhlbS4gVGhlIG5leHQgbGVzc29uIHdpbGwg YmUgb24gZGVyaXZlZCBzdW10aSwgc3VtdGkgbWFkZSBmcm9tIG90aGVyIHN1bXRpLgoKCgoKCiEh TG9qYmFuIExlc3NvbnMgLSBMZXNzb24gc2l4dGVlbiAodGhlIExvamJhbiBzdW10aSAzOiBkZXJp dmVkIHN1bXRpKQoKWW91IGNhbiBwcm9iYWJseSBzZWUgdGhhdCB0aGUgc3VtdGkgJydsZSBiYW5n dSBwb2kgbWkgc2UgYmFuZ3Uga2XigJlhJycgaXMgYSBsZXNzIHRoYW4gZWxlZ2FudCBleHByZXNz aW9uIGZvciDigJxteSBsYW5ndWFnZeKAnS4gVGhpcyBpcyBiZWNhdXNlIGl04oCZcyByZWFsbHkg YSB3b3JrIGFyb3VuZC4gQSBsYW5ndWFnZSB3aGljaCBJIHNwZWFrIGNhbiBiZSBzYWlkIHRvIGZp bGwgaW50byB0aGUgeDEgb2YgdGhlIGJyaWRpICcnYmFuZ3UgbWknJy4gV2UgY2Fu4oCZdCBjb252 ZXJ0IHRoYXQgdG8gYSBzdW10aSB1c2luZyBhIGdhZHJpOiAnJ2xlIGJhbmd1IFtrdV0gbWknJyBp cyB0d28gc3VtdGksIGJlY2F1c2UgJydiYW5ndSBtaScnIGlzIGEgYnJpZGksIG5vdCBhIHNlbGJy aS4gTmVpdGhlciBjYW4gd2UgY29udmVydCBpdCB1c2luZyAnJ2xlIHN14oCZdScnLCBiZWNhdXNl IHRoZSBzdeKAmXUgZ2l2ZXMgdGhlIGJyaWRpIGEgbmV3IHgxLCB0aGUgYWJzdHJhY3Rpb24sIGFu ZCB0aGUgJydsZScnIHRoZW4gZXh0cmFjdHMgdGhhdC4gVGhhdCBtYWtlcyBhbiBhYnN0cmFjdGlv biBzdW10aSBtZWFuaW5nIHNvbWV0aGluZyBsaWtlIOKAnHRoYXQgc29tZXRoaW5nIGlzIG15IGxh bmd1YWdl4oCdLgoKRW50ZXIgJydiZScnLiAnJ2JlJycgaXMgYSB3b3JkIHdoaWNoIGJpbmRzIGNv bnN0cnVjdHMgKHN1bXRpLCBzdW10Y2l0YSBhbmQgb3RoZXJzKSB0byBhIHNlbGJyaS4gVXNpbmcg aXQgaW4gb3JkaW5hcnkgc2VsYnJpIGhhcyBubyBlZmZlY3Q6IGluICcnbWkgbmVsY2kgYmUgZG8n JywgdGhlICcnYmUnJyBkb2VzIG5vdGhpbmcuIEhvd2V2ZXIsIHdoZW4gYSBzdW10aSBpcyBib3Vu ZCB0byBhIHNlbGJyaSB0aGlzIHdheSwgeW91IGNhbiB1c2UgYSBnYWRyaSBvbiB0aGUgc2VsYnJp IHdpdGhvdXQgdGhlIHN1bXRpIHNwbGl0dGluZyBvZmY6ICcnbGUgYmFuZ3UgYmUgbWknJyBpcyBh IGNvcnJlY3Qgc29sdXRpb24gdG8gdGhlIHByb2JsZW0gYWJvdmUuIExpa2V3aXNlLCB5b3UgY2Fu IGF0dGFjaCBhIHN1bXRjaXRhOiAnJ2xlIG51IGRhcnhpIGtlaSBiZSBnYXUgZG8nJzog4oCcVGhl IGV2ZW50IG9mIGhpdHRpbmcsIHdoaWNoIGlzIGNhdXNlZCBieSB5b3XigJ0uIE5vdGUgdGhhdCB0 aGUgcHJlc2VuY2Ugb3IgYWJzZW5jZSBvZiAnJ2tlaScnIG1ha2VzIGl0IHBhcnNlIGRpZmZlcmVu dGx5OiBXaXRoIHRoZSBmYSdvcm1hJ28gcHJlc2VudCwgJydiZScnIGF0dGFjaGVzIHRvICcnbnUn Jywgd2l0aG91dCB0aGUgZmEnb3JtYSdvLCBpdCBhdHRhY2hlcyB0byAnJ2RhcnhpJycuIFNvIGl0 IGRlY2lkZXMgd2hhdCBpcyBiZWluZyBlbXBoYXNpc2VkOiBJcyB0aGUgaGl0dGluZywgb3IgdGhl IGV2ZW50IG9mIGhpdHRpbmcgY2F1c2VkIGJ5IHlvdT8gTHVja2lseSwgaW4gdGhpcyBjYXNlLCB0 aGF04oCZcyBqdXN0IGFib3V0IHRoZSBzYW1lIHRoaW5nLgoKCgpXaGF0IGlmIEkgd2FudCB0byBh dHRhY2ggc2V2ZXJhbCBzdW10aSB0byBhIHNlbGJyaSBpbnNpZGUgYSBnYWRyaT8g4oCcVGhlIGdp dmVyIG9mIHRoZSBhcHBsZSB0byB5b3XigJ0gaXMgJydsZSBkdW5kYSBiZSBsbyBwbGlzZSBiZSBk bycnLCByaWdodD8gTm9wZS4gVGhlIHNlY29uZCAnJ2JlJycgYXR0YWNoZXMgdG8gdGhlIGFwcGxl LCBtZWFuaW5nICcnbGUgcGxpc2UgYmUgZG8nJyAtIOKAnFRoZSBhcHBsZSBvZiB0aGUgc3RyYWlu IG9mIHlvdeKAnSwgd2hpY2ggbWFrZXMgc28gc2Vuc2UuIEluIG9yZGVyIHRvIHN0cmluZyBzZXZl cmFsIHN1bXRpIHRvIGEgc2VsYnJpLCB0aGUgYWxsIHRoZSBvbmVzIGZvbGxvd2luZyB0aGUgZmly c3QgbXVzdCBiZSBib3VuZCB3aXRoICcnYmVpJycuIFRoZSDigJxiaW5kaW5n4oCdIGNhbiBiZSB0 ZXJtaW5hdGVkIHdpdGggJydiZeKAmW8nJyAtIG9uZSBpbnN0YW5jZSBvZiAnJ2Jl4oCZbycnIGZv ciBlYWNoIHNlbGJyaSB3aGljaCBoYXMgc3VtdGkgYm91bmQgYnkgJydiZScnLgoKVG8gbGlzdCB0 aGVtOgoKX18nJ2JlJydfXyBiaW5kcyBzdW10aSBvciBzdW10Y2l0YSB0byBzZWxicmkKCl9fJydi ZWknJ19fIGJpbmRzIGEgc2Vjb25kLCB0aGlyZCwgZm91cnRoIChlY3QpIHN1bXRpIG9yIHN1bXRj aXRhIHRvIGEgc2VsYnJpCgpfXycnYmXigJlvJydfXyBlbmRzIGJpbmRpbmcgdG8gc2VsYnJpCgoK ClRoZXJlIGlzIGFsc28gd2F5cyB0byBsb29zZWx5IGFzc29jaWF0ZSBhIHN1bXRpIHdpdGggYW5v dGhlci4gJydwZScnIGFuZCAnJ25lJycgZm9yIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3Rp dmUgYXNzb2NpYXRpb24uIEFjdHVhbGx5LCAnJ2xlIGJhbmd1IHBlIG1pJycgaXMgYSBiZXR0ZXIg dHJhbnNsYXRpb24gb2Yg4oCcbXkgbGFuZ3VhZ2XigJ0sIHNpbmNlIHRoaXMgcGhyYXNlLCBsaWtl IHRoZSBFbmdsaXNoLCBpcyB2YWd1ZSBhcyB0byBob3cgdGhlIHR3byBhcmUgYXNzb2NpYXRlZCB3 aXRoIGVhY2ggb3RoZXIuCgonJ3BlJycgYW5kICcnbmUnJyBhcmUgdXNlZCBhcyBsb29zZSBhc3Nv Y2lhdGlvbiBvbmx5LCBsaWtlIHNheWluZyDigJxteSBjaGFpcuKAnSBhYm91dCBhIGNoYWlyIHdo aWNoIHlvdSBzaXQgb24uIEl04oCZcyBub3QgcmVhbGx5IHlvdXJzLCBidXQgaGFzIHNvbWV0aGlu ZyBkbyB0byB3aXRoIHlvdS4gQSBtb3JlIGludGltYXRlIGNvbm5lY3Rpb24gY2FuIGJlIGVzdGFi bGlzaGVkIHdpdGggJydwbycnLCB3aGljaCBtYWtlcyB0aGUgYXNzb2NpYXRpb24gdW5pcXVlIGFu ZCBiaW5kaW5nIHRvIGEgcGVyc29uLCBhcyBpbiDigJxteSBjYXLigJ0gZm9yIGEgY2FyIHRoYXQg eW91IGFjdHVhbGx5IG93bi4gVGhlIGxhc3Qga2luZCBvZiBhc3NvY2lhdG9yIGlzICcncG8nZScn LCB3aGljaCBtYWtlcyBhIHNvLWNhbGxlZCAiaW5hbGllbmFibGUiIGJvbmQgYmV0d2VlbiBzdW10 aSwgbWVhbmluZyB0aGF0IHRoZSBib25kIGlzIGlubmF0ZSBiZXR3ZWVuIHRoZSB0d28gc3VtdGku IFNvbWUgZXhhbXBsZXMgY291bGQgYmUgIm15IG1vdGhlciIsICJteSBhcm0iIG9yICJteSBob21l IGNvdW50cnkiOyBuZXRoZXIgb2YgdGhlc2UgInBvc3Nlc2lvbnMiIGNhbiBiZSBsb3N0IChldmVu IGlmIHlvdSBzYXcgb2ZmIHlvdXIgYXJtLCBpdCdzIHN0aWxsIF9feW91cl9fIGFybSksIGFuZCBh cmUgdGhlcmVmb3JlIGluYWxpZW5hYmxlLiBBbG1vc3QgYWxsIG9mIHRoZSB0aW1lcyBhICcncG8n ZScnIGlzIGFwcHJvcHJpYXRlLCB0aG91Z2gsIHRoZSB4MiBvZiB0aGUgc2VsYnJpIGNvbnRhaW5z IHRoZSBvbmUgdG8gd2hpY2ggdGhlIHgxIGlzIGNvbm5lY3RlZCwgc28gJydiZScnIGlzIGJldHRl ci4KCl9fJyduZScnX18gbm9uLXJlc3RyaWN0aXZlIHJlbGF0aXZlIHBocmFzZS4gIndoaWNoIGlz IGFzc29jaWF0ZWQgd2l0aC4uLiIKCl9fJydwZScnX18gcmVzdHJpY3RpdmUgcmVsYXRpdmUgcGhy YXNlLiAid2hpY2ggaXMgYXNzb2NpYXRlZCB3aXRoLi4uIgoKX18nJ3BvJydfXyBwb3NzZXNpdmUg cmVsYXRpdmUgcGhyYXNlLiAid2hpY2ggaXMgc3BlY2lmaWMgdG8uLi4iCgpfXycncG8nZScnX18g aW5hbGllbmFibGUgcmVsYXRpdmUgcGhyYXNlLiAid2hpY2ggYmVsb25ncyB0by4uLiIKCgoKQSB2 ZXJ5IHVzZWZ1bCBjb25zdHJ1Y3QgdG8ga25vdyBpcyB7R0FEUkkgU1VNVEkgU0VMQlJJfS4gdGhp cyBpcyBlcXVpdmFsZW50IHRvIHtHQURSSSBTRUxCUkkgcGUgU1VNVEl9LiBGb3IgaW5zdGFuY2Ug JydsZSBtaSBnZXJrdScnIGlzIGVxdWl2YWxlbnQgdG8gJydsZSBnZXJrdSBwZSBtaScnLiBPbmUg Y291bGQgaGF2ZSBkZXNjcmlwdGlvbiBzdW10aSBpbnNpZGUgZGVzY3JpcHRpb24gc3VtdGksIHNh eWluZyAnJ2xlIGxlIHNlIGNpbmppa2NhIGJlIG1pIGt1IGdlcmt1JycsID0gJydsZSBnZXJrdSBw ZSBsZSBzZSBjaW5qaWtjYSBiZSBtaScnID3igJx0aGUgZG9nIG9mIHRoZSBtYW4gSeKAmW0gZmxp cnRpbmcgd2l0aOKAnSwgYnV0IHRoYXTigJlzIG5vdCB2ZXJ5IGVhc3kgdG8gcmVhZCAob3IgdG8g dW5kZXJzdGFuZCB3aGVuIHNwb2tlbiksIGFuZCBpcyBvZnRlbiBiZWluZyBhdm9pZGVkLgoKCgpP bmUgbmVlZCBhbHNvIHRvIGxlYXJuICcndHXigJlhJycsIHNpbmNlIGl0IHdpbGwgbWFrZSBhIGxv dCBvZiBzZW50ZW5jZXMgbXVjaCBlYXNpZXIuIEl0IHRha2VzIGEgc3VtdGkgYW5kIGNvbnZlcnRz IGl0IHRvIGFub3RoZXIgc3VtdGkgLSBhbiBlbGxpcHRpY2FsIGFic3RyYWN0aW9uIHdoaWNoIGhh cyBzb21ldGhpbmcgdG8gZG8gd2l0aCB0aGUgZmlyc3Qgc3VtdGkuIEZvciBleGFtcGxlLCBJIGNv dWxkIHNheSAnJ21pIGRqaWNhIGxvIG51IG1pIGNpdGthIGxvIHBsaXNlJycsIG9yIEkgY291bGQg bGV0IGl0IGJlIHVwIHRvIGNvbnRleHQgd2hhdCBhYnN0cmFjdGlvbiBhYm91dCB0aGUgYXBwbGUg SSBkZXNpcmUgYW5kIGp1c3Qgc2F5ICcnbWkgZGppY2EgdHXigJlhIGxvIHBsaXNlJycuIE9uZSBh bHdheXMgaGFzIHRvIGd1ZXNzIHdoYXQgYWJzdHJhY3Rpb24gdGhlIHNwZWFrZXIgbWVhbnMgYnkg Jyd0deKAmWEgU1VNVEknJywgc28gaXQgc2hvdWxkIG9ubHkgYmUgdXNlZCB3aGVuIGNvbnRleHQg bWFrZXMgaXQgZWFzeSB0byBndWVzcy4gQW5vdGhlciBleGFtcGxlOgoKX18nJ2dhc251JydfXyDi gJx4MSBkb2VzL2JyaW5ncyBhYm91dCB4MiAodm9saXRpb24gbm90IGltcGxpZWQp4oCdCgonJ3ph 4oCZYSBkbyBnYXNudSB0deKAmWEgbG8gc2thbWknJyAtIOKAnEkgc2VlIHRoYXQgeW91IG1ha2Ug dGhlIGNvbXB1dGVyIGRvIHNvbWV0aGluZ+KAnS4gT2ZmaWNpYWxseSwgJyd0deKAmWEgU1VNVEkn JyBpcyBlcXVpdmFsZW50IHRvICcnbGUgc3XigJl1IFNVTVRJIGNv4oCZZScnLiBWYWd1ZSwgYnV0 IHVzZWZ1bC4gVGhlcmUgYXJlIHNpdHVhdGlvbnMgd2hlcmUgeW91IGNhbm5vdCB1c2UgJyd0deKA mWEnJywgZXZlbiB0aG91Z2ggaXQgd291bGQgc2VlbSBzdWl0YWJsZS4gVGhlc2Ugc2l0dWF0aW9u cyBhcmUgd2hlbiBJIGRvbuKAmXQgd2FudCB0aGUgcmVzdWx0aW5nIHN1bXRpIHRvIGJlIGFuIGFi c3RyYWN0aW9uLCBidXQgYSBjb25jcmV0ZSBzdW10aS4gSW4gdGhpcyBjYXNlLCBvbmUgY2FuIHVz ZSAnJ3pv4oCZZSBwZScnLgoKX18nJ3R1J2EnJ19fIGNvbnZlcnQgc3VtdGkgdG8gdmFndWUgYWJz dHJhY3Rpb24gaW52b2x2aW5nIHRoZSBzdW10aS4gRXF1aXZhbGVudCB0byAnJ2xlIHN1J3UgU1VN VEkgY28nZSBrZWkga3UnJwoKCgpGaW5hbGx5LCBvbmUga2luZCBvZiBzdW10aSBjYW4gYmUgdHVy bmVkIGludG8gYW5vdGhlciBieSB0aGUgd29yZHMgb2YgdGhlIGNsYXNzIExBaEUuCgpfX+KAmeKA mWx14oCZYeKAmeKAmV9fIC0gQ29udmVydCBpbmRpdmlkdWFsKHMpL21hc3Mvc2VxdWVuY2Uvc2V0 IHRvIGluZGl2aWR1YWxzLgoKX1/igJnigJlsdeKAmWnigJnigJlfXyAtIENvbnZlcnQgaW5kaXZp ZHVhbChzKS9tYXNzL3NlcXVlbmNlL3NldCB0byBhIHNldC4KCl9f4oCZ4oCZbHXigJlv4oCZ4oCZ X18gLSBDb252ZXJ0IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8gbWFzcy4KCl9f 4oCZ4oCZdnXigJlp4oCZ4oCZX18gLSBDb252ZXJ0IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5j ZS9zZXQgdG8gc2VxdWVuY2U7IHRoZSBvcmRlciBpcyBub3Qgc3RhdGVkLgoKVGhlIHVzZSBvZiB0 aGVzZSB3b3JkcyBpcyBzdHJhaWdodC1mb3J3YXJkbHk6IFBsYWNpbmcgdGhlbSBiZWZvcmUgYSBz dW10aSBvZiBhIGNlcnRhaW4gdHlwZSBtYWtlcyBhIG5ldyBzdW10aSBvZiBhIG5ldyB0eXBlLiBO b3RpY2UsIHRob3VnaCwgdGhhdCBhcyBhIGZvdXJ0aCBraW5kIG9mIHN1bXRpLCBhIHNlcXVlbmNl IGhhcyBiZWVuIGludHJvZHVjZWQuIFRoaXMgaXMgbm90IHVzZWQgdmVyeSBvZnRlbiAoaXQgZG9l c27igJl0IGhhdmUgaXRzIG93biBnYWRyaSwgZm9yIGluc3RhbmNlKSwgYnV0IGp1c3QgaW5jbHVk ZWQgaGVyZSBmb3IgY29tcGxldGlvbi4KClRoZSBsYXN0IHR3byBtZW1iZXJzIG9mIExBaEUgZG8g bm90IGNvbnZlcnQgYmV0d2VlbiB0eXBlcyBvZiBzdW10aSwgYnV0IGFsbG93cyB5b3UgdG8gc3Bl YWsgb2YgYSBhIHN1bXRpIGJ5IG9ubHkgbWVudGlvbmluZyBzb21ldGhpbmcgd2hpY2ggcmVmZXJl bmNlcyB0byBpdDoKCklmIG9uZSBzdW10aSBBIHJlZmVycyB0byBhIHN1bXRpIEIsIGZvciBpbnN0 YW5jZSBiZWNhdXNlIHN1bXRpIEEgaXMgYSB0aXRsZSBvZiBhIGJvb2ssIG9yIGEgbmFtZSwgb3Ig YSBzZW50ZW5jZSAod2hpY2ggYWx3YXlzIHJlZmVyIHRvIHNvbWV0aGluZywgYXQgbGVhc3QgYSBi cmlkaSksIOKAmOKAmWxh4oCZZSBTVU1USSBB4oCZ4oCZIHJlZmVycyB0byBzdW10aSBCLiBGb3Ig aW5zdGFuY2UsIOKAmOKAmW1pIG5lbGNpIGxh4oCZZSBkaeKAmXXigJnigJkgZm9yIOKAnEkgbGlr ZSB3aGF0IHlvdSBqdXN0IHNhaWTigJ0gKG5vdCAnJ21pIG5lbGNpIGRpJ3UnJyB3aGljaCBqdXN0 IG1lYW5zICJJIGxpa2UgeW91ciBwcmV2aW91cyBzZW50ZW5jZSkgb3Ig4oCY4oCZbGHigJllIGxl IGNtYWx1IG5vbHRydeKAmeKAmSBmb3IgdGhlIGJvb2sg4oCcVGhlIExpdHRsZSBQcmluY2XigJ0s IGFuZCBub3Qgc29tZSBsaXR0bGUgcHJpbmNlIGhpbXNlbGYuIFRoZSBjbWF2byDigJjigJlsdeKA mWXigJnigJkgZG9lcyB0aGUgZXhhY3QgcmV2ZXJzZSDigJMg4oCY4oCZbHXigJllIFNVTVRJ4oCZ 4oCZIHJlZmVycyB0byBhbiBvYmplY3Qgd2hpY2ggcmVmZXJzIHRvIHRoZSBzdW10aS4gCgpfX+KA meKAmWxh4oCZZeKAmeKAmV9fIC0g4oCcdGhlIHRoaW5nIHJlZmVycmVkIHRvIGJ54oCdIC0gZXh0 cmFjdHMgYSBzdW10aSBBIGZyb20gYSBzdW10aSBCIHdoaWNoIHJlZmVycyB0byBBLiAKCl9f4oCZ 4oCZbHXigJll4oCZ4oCZX18gLSDigJx0aGUgdGhpbmcgcmVmZXJyaW5nIHRv4oCdIC0gZXh0cmFj dHMgYSBzdW10aSBCIGZyb20gYSBzdW10aSBBLCB3aGVuIEIgcmVmZXJzIHRvIEEuCgoKCgoKISEh RW5kIG9mIHBhcnQgb25lCgpEdWUgdG8gdGhlIGltcHJhY3RpY2FsbHkgbGFyZ2Ugc2l6ZSBvZiB0 aGVzZSBsZXNzb25zLCB0aGUgc2Vjb25kIGluc3RhbGxtZW50IGNhbiBiZSBmb3VuZCBvbiBhICgo d2F2ZWxlc3NvbnNjb250aW51ZWRwMnxzZXBlcmF0ZSBwYWdlKSkuIE5vIHdvcnJpZXMsIHRob3Vn aCwgY2xpY2tpbmcgb24gInNlcGVyYXRlIHBhZ2UiIHdpbGwgdGFrZSB5b3UgdGhlcmUgcGFpbmxl c3NseS4KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpX aWtpbmV1cm90aWMgbWFpbGluZyBsaXN0Cldpa2luZXVyb3RpY0Bsb2piYW4ub3JnCmh0dHA6Ly9t YWlsLmxvamJhbi5vcmcvbWFpbG1hbi9saXN0aW5mby93aWtpbmV1cm90aWMK