Received: from localhost ([::1]:52917 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.80.1) (envelope-from ) id 1WFpht-0001OD-CH; Tue, 18 Feb 2014 10:47:49 -0800 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:44718 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.80.1) (envelope-from ) id 1WFphi-0001Nu-Hb for wikineurotic@lojban.org; Tue, 18 Feb 2014 10:47:47 -0800 Received: by jukni.digitalkingdom.org (sSMTP sendmail emulation); Tue, 18 Feb 2014 10:47:38 -0800 From: "Apache" Date: Tue, 18 Feb 2014 10:47:38 -0800 To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 Message-ID: X-Spam-Score: 2.0 (++) X-Spam_score: 2.0 X-Spam_score_int: 20 X-Spam_bar: ++ X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page wavelessonscontinued was changed by Eimi at 12:46 CST You can view the page by following this link: http://www.lojban.org/tiki/wavelessonscontinued [...] Content analysis details: (2.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.6 RCVD_IN_BRBL_LASTEXT RBL: RCVD_IN_BRBL_LASTEXT [173.13.139.235 listed in bb.barracudacentral.org] 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS Subject: [Wikineurotic] Wiki page wavelessonscontinued changed by Eimi X-BeenThere: wikineurotic@lojban.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikineurotic-bounces@lojban.org VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWQgd2FzIGNoYW5nZWQgYnkgRWltaSBhdCAxMjo0 NiBDU1QKCllvdSBjYW4gdmlldyB0aGUgcGFnZSBieSBmb2xsb3dpbmcgdGhpcyBsaW5rOgogCmh0 dHA6Ly93d3cubG9qYmFuLm9yZy90aWtpL3dhdmVsZXNzb25zY29udGludWVkCgpZb3UgY2FuIHZp ZXcgYSBkaWZmIGJhY2sgdG8gdGhlIHByZXZpb3VzIHZlcnNpb24gYnkgZm9sbG93aW5nIHRoaXMg bGluazogCmh0dHA6Ly93d3cubG9qYmFuLm9yZy90aWtpL3Rpa2ktcGFnZWhpc3RvcnkucGhwP3Bh Z2U9d2F2ZWxlc3NvbnNjb250aW51ZWQmY29tcGFyZT0xJm9sZHZlcj05MiZuZXd2ZXI9OTMKCgoq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KgpUaGUgY2hhbmdlcyBpbiB0aGlzIHZlcnNpb24gZm9sbG93IGJlbG93LCBmb2xsb3dlZCBhZnRl ciBieSB0aGUgY3VycmVudCBmdWxsIHBhZ2UgdGV4dC4KKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCgorLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwpAQCAtTGluZXM6IDM5MC0z OTQgY2hhbmdlZCB0byArTGluZXM6IDM5MC0zOTQgQEAKKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQW5zd2VyOiB+fmdyZXksZ3JleTon Jy51J3UgY3UnaSBydSdlJyd+fgoKLSAhIUxvamJhbiBsZXNzb25zICBsZXNzb24gZml2ZSAoU0Up CisgISFMb2piYW4gbGVzc29ucyAgbGVzc29uIGZpdmUgKHJlb3JkZXJpbmcgcGxhY2VzIHdpdGgg U0UpCkJlZm9yZSB3ZSB2ZW50dXJlIGludG8gdGhlIHRlcnJpdG9yeSBvZiBtb3JlIGNvbXBsZXgg Y29uc3RydWN0cywgeW91IHNob3VsZCBsZWFybiBhbm90aGVyIG1lY2hhbmlzbSBmb3IgcmVvcmRl cmluZyB0aGUgc3VtdGkgb2YgYSBzZWxicmkuIFRoaXMsIGFzIHdlIHdpbGwgc2hvdywgaXMgdmVy eSB1c2VmdWwgZm9yIG1ha2luZyBkZXNjcmlwdGlvbi1saWtlIHN1bXRpICh0aGUga2luZCBvZiBz dW10aSB3aXRoICcnbG8nJykuCkNvbnNpZGVyIHRoZSBzZW50ZW5jZSDigJxJIGVhdCBhIGdpZnTi gJ0sIHdoaWNoIG1pZ2h0IGJlIGFwcHJvcHJpYXRlIGlmIHRoYXQgZ2lmdCBpcyBhbiBhcHBsZS4g VG8gdHJhbnNsYXRlIHRoaXMsIGl0IHdvdWxkIHNlZW0gbmF0dXJhbCB0byBsb29rIHVwIGEgc2Vs YnJpIG1lYW5pbmcg4oCcZ2lmdOKAnSBiZWZvcmUgY29udGludWluZy4gSG93ZXZlciwgaWYgb25l IGxvb2tzIGNhcmVmdWxseSBhdCB0aGUgZGVmaW5pdGlvbiBvZiAnJ2R1bmRhJycsIHgxIGdpdmVz IHgyIHRvIHgzLCBvbmUgcmVhbGl6ZXMgdGhhdCB0aGUgeDIgb2YgJydkdW5kYScnIGlzIHNvbWV0 aGluZyBnaXZlbiDigJMgYSBnaWZ0LgoKCgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKVGhlIG5ldyBwYWdlIGNvbnRlbnQgZm9sbG93 cyBiZWxvdy4KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioKCiFMb2piYW4gV2F2ZSBMZXNzb25zIENvbnRpbnVlZDoKCiEhIU1hZGUgYnkg bGEga2xha3Ugd2l0aCBoZWxwIGZyb20gdmFyaW91cyBsb2piYW5pc3RzLiBCYXNlZCBvbiB0aGUg d29yayBvZiBsYSAua3JpYmFjci4gU3ByaW5nIDIwMTMuCgoKCiEhRm9yZXdvcmQKClRoZXNlIGxl c3NvbnMgYXJlIGFuIGF0dGVtcHQgdG8gZXhwYW5kIG9uIHRoZSBHb29nbGUgV2F2ZSBMZXNzb25z LCBhbiBleGNlbGxlbnQgTG9qYmFuIHR1dG9yaWFsIGF1dGhvcmVkIGJ5IGtyaWJhY3IsIHhhbGJv LCBhbmQgdHJhbnNjcmliZWQgYnkgTWFyZW56LCBsZXNzb25zIHdoaWNoIHNhZGx5IG9ubHkgY292 ZXJlZCB0aGUgZmlyc3QgZm91ciBjaGFwdGVycyBpbiB0aGlzIHR1dG9yaWFsLiBJdCBpbXBsZW1l bnRzIHRoZSBuZXdlc3QgcnVsZXMgb2YgTG9qYmFuIG5vdCBjb3ZlcmVkIGJ5IG9sZGVyIG1hdGVy aWFscyBzdWNoIGFzIFdoYXQgaXMgTG9qYmFuPyBhbmQgTG9qYmFuIGZvciBCZWdpbm5lcnMuCgoK CklmIHlvdSBhcmUgbmV3IHRvIExvamJhbiwgSSByZWNvbW1lbmQgbGlzdGVuaW5nIHRvIGFueSBy ZWNvcmRpbmdzIHlvdSBjYW4gZmluZCBvZiBzcG9rZW4gTG9qYmFuIGJvdGggYmVmb3JlIGFuZCB3 aGlsZSB5b3UgYXJlIHRha2luZyB0aGlzIHR1dG9yaWFsLCBpbiBvcmRlciB0byBtYWtlIHlvdXJz ZWxmIGZhbWlsaWFyIHdpdGggdGhlIHNvdW5kcyBhbmQgd29yZHMgb2YgdGhlIGxhbmd1YWdlLiBG dXJ0aGVybW9yZSwgdHJ5IHRvIHNheSB0aGUgdGhpbmdzIHlvdSByZWFkIGluIExvamJhbiBhY2Nl bnQgaWYgaXQncyByZWFzb25hYmx5IHByYWN0aWNhbC4gVGhpcyBjYW4gaGVscCB5b3VyIHByb251 bmNpYXRpb24gYSBsb3QuCgoKCldoZW4gdGFraW5nIHRoaXMgdHV0b3JpYWwsIGl0J3MgYmVzdCB0 byBwYXVzZSBiZXR3ZWVuIGxlc3NvbnMgaW4gb3JkZXIgdG8gaW50ZXJuYWxpemUgd2hhdCB5b3Ug aGF2ZSBsZWFybnQuIEkgaGF2ZSBhdHRlbXB0ZWQgdG8gYnVpbGQgdGhlc2UgbGVzc29ucyBmcm9t IHRoZSBib3R0b20gdXAgYW5kIGV4Y2x1ZGUgYW55IHdvcmRzIG9yIGNvbmNlcHRzIHRoYXQgaGF2 ZSBub3QgYmVlbiBleHBsYWluZWQgaW4gcHJldmlvdXMgbGVzc29ucy4gT25jZSBleHBsYWluZWQs IHRoZXkgYXJlIHVzZWQgZnJlZWx5IHRocm91Z2hvdXQgdGhlIHJlbWFpbmRlciBvZiB0aGUgdHV0 b3JpYWwuIEkgdXJnZSByZWFkZXJzIG5vdCB0byBwYXNzIGFueSBtaXN1bmRlcnN0b29kIGNvbnRl bnQ7IGlmIHlvdSBoYXZlIHF1ZXN0aW9ucyBvciBhcmUgdW5jZXJ0YWluIGFib3V0IHNvbWV0aGlu ZywgZmVlbCBmcmVlIHRvIGFzayB0aGUgTG9qYmFuIGNvbW11bml0eSwgd2hpY2ggY2FuIGJlIGZv dW5kIGluICNsb2piYW4gb24gdGhlIEZyZWVub2RlIElSQyBuZXR3b3JrLiBUaGV5IHdpbGwgYmUg aGFwcHkgdG8gaGVscC4KCgoKSW4gdGhpcyB0dXRvcmlhbCwgTG9qYmFuIHRleHQgaXMgd3JpdHRl biBpbiAnJ2l0YWxpY3MnJy4gTGF0ZXIsIHdoZW4gdXNlZCBhcyBMb2piYW4gbG9hbndvcmRzIGlu IEVuZ2xpc2ggc2VudGVuY2VzLCB0aGV5IGFyZSBub3QgbWFya2VkLiBBbnN3ZXJzIHRvIGV4ZXJj aXNlcyBhcmUgZGlzcGxheWVkIGFzIGEgZ3JleSBiYXIuIEhpZ2hsaWdodCB0aGUgdGV4dCBpbiBv cmRlciB0byBzZWUgaXQuCgoKCkxhc3RseSwgSSBoYXZlIGFzIGZhciBhcyBwb3NzaWJsZSBhdHRl bXB0ZWQgdG8gdXNlIHRoZSBMb2piYW4gd29yZHMgZm9yIGdyYW1tYXRpY2FsIGNvbnN0cnVjdHM6 ICcnc3Vta2EnaScnIGluc3RlYWQgb2YgcHJvLXN1bXRpLCAnJ3N1bXRjaXRhJycgaW5zdGVhZCBv ZiBtb2RhbCBhbmQgJydqdWZyYScnIGluc3RlYWQgb2YgdXR0ZXJhbmNlLiBUaGlzIGlzIGJlY2F1 c2UgSSBmZWVsIHRoZSBFbmdsaXNoIHdvcmRzIGFyZSBvZnRlbiBlaXRoZXIgYXJiaXRyYXJ5LCBp biB3aGljaCBjYXNlIHRoZXkgYXJlIGp1c3QgbW9yZSB3b3JkcyB0byBsZWFybiwgb3IgbWlzbGVh ZGluZywgaW4gd2hpY2ggY2FzZSB0aGV5IGFyZSB3b3JzZSB0aGFuIHVzZWxlc3MuIEluIGVpdGhl ciBjYXNlLCBhcyBsb25nIGFzIHRoZSB3b3JkcyBhcmUgc3BlY2lmaWMgdG8gdGhvc2Ugd2hvIGFy ZSBsZWFybmluZyBMb2piYW4gYW55d2F5LCB0aGVyZSBpcyBubyByZWFzb24gZm9yIHRoZW0gdG8g ZXhpc3QgYXMgc2VwYXJhdGUgRW5nbGlzaCB3b3Jkcy4KCgoKCgohIUxvamJhbiBMZXNzb25zIC0g TGVzc29uIHplcm8gKHNvdW5kcykKCldoaWxlIHlvdSBhcmUgKGhvcGVmdWxseSkgZWFnZXIgdG8g Z2V0IHN0YXJ0ZWQgb24gdGhlIGlubmVyIHdvcmtpbmdzIG9mIExvamJhbiBncmFtbWFyLCBhIHNo b3J0IGxlc3NvbiBvbiB0aGUgc291bmRzIGFuZCB3cml0aW5nIGNvbnZlbnRpb25zIG9mIHRoZSBs YW5ndWFnZSBpcyBiZW5lZmljaWFsLiBMZWFybmluZyBhIGxhbmd1YWdlIG9ubHkgYnkgcmVhZGlu ZyBpcyBoYXJkLCBhbmQgaXQncyBub3QgZWFzaWVyIGlmIHlvdXIgaW50ZXJuYWwgdm9pY2UgaXMg bWlzcHJvbnVuY2lhdGluZyBpdC4KCkZvciBtb3JlIGRldGFpbHMgb24gdm93ZWxzIGFuZCBjb25z b25hbnRzIHNvdW5kcyB1c2VkIGluIExvamJhbiwgY2xpY2sgb24gdGhlIGxldHRlcnMgZGVzY3Jp YmVkLiBUaGV5IGFyZSBwb2ludGluZyB0byBXaWtpcGVkaWEgYXJ0aWNsZXMgd2hpY2ggZGVzY3Jp YmUgdGhlIHNvdW5kIGFuZCB1c3VhbGx5IGhhdmUgYW4gYXVkaW8gcmVjb3JkIG9mIGl0LgoKCgpf X1Zvd2Vsc19fCgpUaGVyZSBhcmUgZml2ZSBwcm9wZXIgdm93ZWxzIGluIExvamJhbiBhbmQgb25l IHNlbWktdm93ZWwuIEZpcnN0IHRoZSBwcm9wZXIgb25lczoKCnx8JydbaHR0cDovL2VuLndpa2lw ZWRpYS5vcmcvd2lraS9PcGVuX2Zyb250X3Vucm91bmRlZF92b3dlbHxhXScnIHxhcyBpbiAiZl9f YV9fdGhlciIgb3IgImxfX2FfX3JnZSIKCicnW2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kv Q2xvc2UtbWlkX2Zyb250X3Vucm91bmRlZF92b3dlbHxlXScnIHxhcyBpbiAiZ19fZV9fdCIgb3Ig ImdfX2VfX20iCgonJ1todHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Nsb3NlX2Zyb250X3Vu cm91bmRlZF92b3dlbHxpXScnIHxhcyBpbiAibWFjaF9faV9fbmUiIG9yICJzY3JfX2VhX19tIiAo bm90IGFzIGluICJoX19pX190IikKCicnW2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ2xv c2UtbWlkX2JhY2tfcm91bmRlZF92b3dlbHxvXScnIHxhcyBpbiAiYl9fb19fbGQiIG9yICJtX19v X19yZSIg4oCUIG5vdCBhcyBpbiAic19fb19fIiAodGhpcyBzaG91bGQgYmUgYSAncHVyZScgc291 bmQuKQoKJydbaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9DbG9zZV9iYWNrX3JvdW5kZWRf dm93ZWx8dV0nJyB8YXMgaW4gImNfX29vX19sIiAobm90IGFzIGluICJiX191X190IikgfHwKClRo ZXNlIGFyZSBwcmV0dHkgbXVjaCB0aGUgc2FtZSBhcyB2b3dlbHMgaW4gSXRhbGlhbiBvciBTcGFu aXNoLiBUaGUgc2l4dGggKHNlbWkpdm93ZWwsICcnW2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dp a2kvU2Nod2F8eV0nJywgaXMgY2FsbGVkIGEgInNjaHdhIiBpbiB0aGUgbGFuZ3VhZ2UgdHJhZGUs IGFuZCBpcyBwcm9ub3VuY2VkIGFzICJjb21tX19hX18iLCAidGFrX19lX19uIiBvciBzX191X19y cHJpc2UhIi4gSXQncyB0aGUgc291bmQgdGhhdCBjb21lcyBvdXQgd2hlbiB0aGUgbW91dGggaXMg Y29tcGxldGVseSByZWxheGVkLgoKVHdvIHZvd2VscyB0b2dldGhlciBhcmUgcHJvbm91bmNlZCBh cyBvbmUgc291bmQgKCBhbmRjYWxsZWQgYSAiZGlwaHRob25nIikuIFNvbWUgZXhhbXBsZXMgYXJl OgoKCgp8fCcnYWknJyB8YXMgaW4gImhfX2lnaF9fIgoKJydhdScnIHxhcyBpbiAiaF9fb3dfXyIK CicnZWknJyB8YXMgaW4gImhfX2V5X18iCgonJ29pJycgfGFzIGluICJiX19veV9fIgoKJydpYScn IHxsaWtlIEdlcm1hbiAiX19KYV9fIgoKJydpZScnIHxsaWtlIF9fInllYWhfXyIKCicnaXUnJyB8 bGlrZSBfXyJ5b3VfXyIKCicndWEnJyB8YXMgaW4gX18id2FhaCFfXyIsIG9yIEZyZW5jaCAicV9f dW9pX18iCgonJ3VlJycgfGFzIGluICJxX191ZV9fc3Rpb24iCgonJ3VvJycgfGFzIGluICJxX191 b19fdGUiCgonJ3VpJycgfGxpa2UgX18id2VfXyIsIG9yIEZyZW5jaCBfXyJvdWlfXyIgfHwKCkRv dWJsZSB2b3dlbHMgYXJlIHJhcmUuIFRoZSBvbmx5IGV4YW1wbGVzIGFyZSAnJ2lpJycsIHdoaWNo IGlzIHByb25vdW5jZWQgbGlrZSBFbmdsaXNoICJ5ZSIgKGFzIGluIOKAnE9oIGNvbWUgYWxsIHll IGZhaXRoZnVs4oCdKSBvciBDaGluZXNlICJ5aSIsIGFuZCAnJ3V1JycsIHByb25vdW5jZWQgbGlr ZSAid29vIi4KCgoKX19Db25zb25hbnRzX18KClRoZXJlIGFyZSBzZXZlbnRlZW4gY29uc29uYW50 cyBpbiBMb2piYW4gYW5kIG9uZSBzZW1pLWNvbnNvbmFudC4gVGhlIExvamJhbiBjb25zb25hbnRz IGFyZSB0aGUgc2FtZSBhcyB0aGUgRW5nbGlzaCwgZXhjZXB0IHRoYXQgTG9qYmFuIGRvZXNuJ3Qg dXNlIHRoZSBsZXR0ZXJzIEgsIFEgb3IgVy4gTW9zdCBvZiB0aGUgY29uc29uYW50cyBhcmUgcHJv bm91bmNlZCBsaWtlIGluIEVuZ2xpc2gsIGJ1dCB0aGVyZSBhcmUgc29tZSBleGNlcHRpb25zOgoK Cgp8fFtodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZvaWNlZF92ZWxhcl9wbG9zaXZlfGdd IHxhbHdheXMgJydnJycgYXMgaW4gJydfX2dfX3VtJycsIG5ldmVyICcnZycnIGFzIGluICcnX19n X19lbScnCgpbaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVm9pY2VsZXNzX3BhbGF0by1h bHZlb2xhcl9zaWJpbGFudHxjXSB8JydzaCcnLCBhcyBpbiAnJ19fc2hfX2lwJycKCltodHRwOi8v ZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZvaWNlZF9wYWxhdG8tYWx2ZW9sYXJfc2liaWxhbnR8al0g fGFzIGluICcnbWVhX19zX191cmUnJyBvciBGcmVuY2ggJydib25fX2pfX291cicnCgpbaHR0cHM6 Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVm9pY2VsZXNzX3ZlbGFyX2ZyaWNhdGl2ZXx4XSB8YXMg aW4gR2VybWFuICcnQmFfX2NoJydfXywgU3BhbmlzaCAnJ19fSl9fb3NlJycgb3IgQXJhYmljICcn X19LaF9fYWxlZCcnIHx8CgpUaGUgc2VtaS1jb25zb25hbnQgaXMgdGhlIFtodHRwOi8vZW4ud2lr aXBlZGlhLm9yZy93aWtpL1ZvaWNlbGVzc19nbG90dGFsX2ZyaWNhdGl2ZXxhcG9zdHJvcGhlXSBU aGlzIGxldHRlciBpcyBwcm9ub3VuY2VkIGxpa2UgdGhlIEVuZ2xpc2ggbGV0dGVyIEgsIGJ1dCBp cyBvbmx5IHVzZWQgYmV0d2VlbiB0d28gdm93ZWxzIHRvIHByZXZlbnQgdGhlbSBmcm9tIHJ1bm5p bmcgaW50byBlYWNoIG90aGVyLiBUaHVzICcndWknJyBpcyBub3JtYWxseSBwcm9ub3VuY2VkICJ3 ZSIsIGJ1dCAnJ3UnaScnIGlzICJvb2hlZSIuIFRoZSBjYXBpdGFsIHZlcnNpb24gb2YgdGhpcyBs ZXR0ZXIgaXMgJydoJycsIHRoZSBsb3dlY2FzZSBILgoKCgpGb3IgY29tcHJlaGVuc2l2ZW5lc3Mg c2FrZSwgaGVyZSBpcyBhIGxpc3Qgb2YgdGhlIHJlbWFpbmluZyAoYW5kIGxlc3MgdHJpY2t5KSBs b2piYW4gY29uc29uYW50czoKCicnW2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVm9pY2Vk X2JpbGFiaWFsX3Bsb3NpdmV8Yl0nJywgJydbaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9W b2ljZWRfYWx2ZW9sYXJfcGxvc2l2ZXxkXScnLCAnJ1todHRwOi8vZW4ud2lraXBlZGlhLm9yZy93 aWtpL1ZvaWNlbGVzc19sYWJpb2RlbnRhbF9mcmljYXRpdmV8Zl0nJywgJydbaHR0cDovL2VuLndp a2lwZWRpYS5vcmcvd2lraS9Wb2ljZWxlc3NfdmVsYXJfcGxvc2l2ZXxrXScnLCAnJ1todHRwOi8v ZW4ud2lraXBlZGlhLm9yZy93aWtpL0FsdmVvbGFyX2xhdGVyYWxfYXBwcm94aW1hbnR8bF0nJywg JydbaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9CaWxhYmlhbF9uYXNhbHxtXScnLCAnJ1to dHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FsdmVvbGFyX25hc2FsfG5dJycsICcnW2h0dHA6 Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVm9pY2VsZXNzX2JpbGFiaWFsX3Bsb3NpdmV8cF0nJywg JydbaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9BbHZlb2xhcl90YXB8cl0nJywgJydbaHR0 cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Wb2ljZWxlc3NfYWx2ZW9sYXJfc2liaWxhbnQjVm9p Y2VsZXNzX2FsdmVvbGFyX3NpYmlsYW50fHNdJycsICcnW2h0dHBzOi8vZW4ud2lraXBlZGlhLm9y Zy93aWtpL1ZvaWNlbGVzc19hbHZlb2xhcl9wbG9zaXZlfHRdJycsICcnW2h0dHBzOi8vZW4ud2lr aXBlZGlhLm9yZy93aWtpL1ZvaWNlZF9sYWJpb2RlbnRhbF9mcmljYXRpdmV8dl0nJywgJydbaHR0 cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Wb2ljZWRfYWx2ZW9sYXJfc2liaWxhbnQjVm9pY2Vk X2FsdmVvbGFyX3NpYmlsYW50fHpdJycKCgoKU3BlYWtpbmcgb2YgdGhlIGxldHRlcnMsIHdoYXQg aXMgdGhlIG5hbWUgb2YgdGhlbT8gWW91IGtub3csIEggaXMgcHJvbm91bmNlZCAiYWdlIiBpbiBF bmdsaXNoLCBhbmQgSyBpcyBwcm9ub3VuY2VkICJrYXkiLCByYXRoZXIgZGlmZmVyZW50IHRoYW4g dGhlIHNvdW5kIHRoZSBsZXR0ZXIgbWFrZXMgb24gaXQgb3duLiBIb3cgYWJvdXQgTG9qYmFuPyBX ZWxsLCBjb25zb25hbnRzIGFyZSBzdHJhaWdodGZvcndhcmQ6IFRoZSBuYW1lIG9mIGEgY29uc29u YW50IGxldHRlciBpcyB0aGUgc291bmQgdGhhdCBsZXR0ZXIsIHBsdXMgJyd5JycuIFNvIHRoZSBj b25zb25hbnQgbGV0dGVycyBvZiBMb2piYW4sICJiLCBjLCBkLCBmLCBnIC4uLiIsIGFyZSBjYWxs ZWQgJydieSBjeSBkeSBmeSBneScnIGluIExvamJhbi4gVGhlIHNlbWktY29uc29uYW50ICcgaXMg Y2FsbGVkICcneSd5JycgKHByb25vdW5jZWQgbGlrZSBhbiBhZ3JlZWluZyB1aC1odWgpLiAKClZv d2VscyBfX3dvdWxkX18gYmUgY2FsbGVkICcnLmF5LCAuZXksIC5peScnLCBidXQgdGhhdCB3b3Vs ZCBiZSByYXRoZXIgZGlmZmljdWx0IHRvIHByb25vdW5jZS4gSW5zdGVhZCwgdGhleSBhcmUgaGFu ZGxlZCBieSBmb2xsb3dpbmcgdGhlIHZvd2VsIHNvdW5kIHdpdGggdGhlIHdvcmQgJydidScnLCBh IHNvdW5kIHdoaWNoIHNpZ25pZmllcyB3ZSdyZSBzcGVha2luZyBhYm91dCBhIHN5bWJvbC4gU28g dGhlIHZvd2VscyBvZiBMb2piYW4gYXJlOiAnJy5hYnUgLmVidSAuaWJ1IC5vYnUgLnVidSBhbmQg eWJ1LicnCgpMYXN0bHkgeW91IHNob3VsZCBrbm93IHRoYXQgc3RyZXNzIGlzIHBsYWNlZCBvbiB0 aGUgc2Vjb25kLXRvLWxhc3Qgc3lsbGFibGUgaW4gd29yZHMgd2l0aCBtb3JlIHRoYW4gb25lIHN5 bGxhYmxlLCBhbmQgdGhhdCBvbmUtc3lsbGFibGUgd29yZHMgYXJlIG5vdCBzdHJlc3NlZC4KCgoK X19Db3JyZWN0IHByb251bmNpYXRpb25fXwoKWW91IGRvbid0IGhhdmUgdG8gYmUgdmVyeSBwcmVj aXNlIGFib3V0IExvamJhbiBwcm9udW5jaWF0aW9uLCBiZWNhdXNlIHRoZSBwaG9uZW1lcyBhcmUg ZGlzdHJpYnV0ZWQgc28gdGhhdCBpdCBpcyBoYXJkIHRvIG1pc3Rha2Ugb25lIHNvdW5kIGZvciBh bm90aGVyLiBUaGlzIG1lYW5zIHRoYXQgcmF0aGVyIHRoYW4gb25lICdjb3JyZWN0JyBwcm9udW5j aWF0aW9uLCB0aGVyZSBpcyBhIHJhbmdlIG9mIGFjY2VwdGFibGUgcHJvbnVuY2lhdGlvbuKAlHRo ZSBnZW5lcmFsIHByaW5jaXBsZSBpcyB0aGF0IGFueXRoaW5nIGlzIE9LIHNvIGxvbmcgYXMgaXQg ZG9lc24ndCBzb3VuZCB0b28gbXVjaCBsaWtlIHNvbWV0aGluZyBlbHNlLiBGb3IgZXhhbXBsZSwg TG9qYmFuICcncicnIGNhbiBiZSBwcm9ub3VuY2VkIGxpa2UgdGhlICJSIiBpbiBFbmdsaXNoLCBT Y290dGlzaCBvciBGcmVuY2guCgpUd28gdGhpbmdzIHRvIGJlIGNhcmVmdWwgb2YsIHRob3VnaCwg YXJlIHByb25vdW5jaW5nIExvamJhbiAnJ2knJyBhbmQgJyd1JycgbGlrZSBTdGFuZGFyZCBCcml0 aXNoIEVuZ2xpc2ggImhpdCIgYW5kICJidXQiIChOb3J0aGVybiBFbmdsaXNoICJidXQiIGlzIGZp bmUhKS4gVGhpcyBpcyBiZWNhdXNlIG5vbi1Mb2piYW4gdm93ZWxzLCBwYXJ0aWN1bGFybHkgdGhl c2UgdHdvLCBhcmUgdXNlZCB0byBzZXBhcmF0ZSBjb25zb25hbnRzIGJ5IHBlb3BsZSB3aG8gZmlu ZCB0aGVtIGhhcmQgdG8gc2F5LiBGb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgcHJvYmxlbXMgc3Bp dHRpbmcgb3V0IHRoZSAnJ3pkJycgaW4gJyd6ZGFuaScnIChob3VzZSksIHlvdSBjYW4gc2F5IHrJ qmRhbmnigJR3aGVyZSB0aGUgIsmqIiBpcyB2ZXJ5IHNob3J0LCBidXQgdGhlIGZpbmFsICJpIiBo YXMgdG8gYmUgbG9uZy4KCgoKX19Xcml0aW5nIExvamJhbl9fCgpBcyB5b3UgaGF2ZSBhbHJlYWR5 IHNlZW4sIExvamJhbiB1c2VzIHRoZSBMYXRpbiBhbHBoYWJldCwgdGhvdWdoIHZhcmlvdXMgTG9q YmFuaXN0cyBoYXZlIHN1Z2dlc3RlZCBkaWZmZXJlbnQsIHVzdWFsbHkgc2VsZi1kZXNpZ25lZCBv bmVzLiBGdXJ0aGVybW9yZSwgTG9qYmFuIGFsbW9zdCBhbHdheXMgdXNlcyBsb3dlci1jYXNlIGxl dHRlcnMuIENhcGl0YWwgbGV0dGVycyBhcmUgb25seSB1c2VkIHRvIG1hcmsgc3RyZXNzIGluIHBy b3BlciBuYW1lcywgYnV0IHBlb3BsZSB0ZW5kIHRvIGF2b2lkIHRoZW0gZXZlbiBpbiBuYW1lcy4K CkFwYXJ0IGZyb20gdGhlIGxldHRlcnMsIHNvbWUgcHVuY3R1YXRpb24gaXMgdXNlZDoKCkEgZnVs bCBzdG9wIChwZXJpb2QpIGlzIGEgc2hvcnQgcGF1c2UuIFRoZSBydWxlcyBvZiBMb2piYW4gbWFr ZSBpdCBlYXNpZXIgZm9yIG9uZSB3b3JkIHRvIHJ1biBpbnRvIGFub3RoZXIgd2hlbiB0aGUgc2Vj b25kIHdvcmQgYmVnaW5zIHdpdGggYSB2b3dlbDsgc28gYW55IHdvcmQgc3RhcnRpbmcgd2l0aCBh IHZvd2VsIGNvbnZlbnRpb25hbGx5IGhhcyBhIGZ1bGwgc3RvcCBwbGFjZWQgaW4gZnJvbnQgb2Yg aXQuIEZ1bGwgc3RvcHMgYXJlIG5ldmVyIHVzZWQgdG8gZW5kIHNlbnRlbmNlcy4KCkNvbW1hcyBh cmUgcmFyZSBpbiBMb2piYW4sIGJ1dCBjYW4gYmUgdXNlZCB0byBzdG9wIHR3byB2b3dlbHMgYmx1 cnJpbmcgdG9nZXRoZXIgd2hlbiB5b3UgZG9uJ3Qgd2FudCB0byB1c2UgYW4gYXBvc3Ryb3BoZSAo d2hpY2ggd291bGQgcHV0IGEgSCBiZXR3ZWVuIHRoZW0pLiBObyBMb2piYW4gd29yZHMgaGF2ZSBj b21tYXMsIGJ1dCB0aGV5J3JlIHNvbWV0aW1lcyB1c2VkIGluIHdyaXRpbmcgbm9uLUxvamJhbiBu YW1lcy4KCgoKVGhlIGZvbGxvd2luZyBhcmUgZm91bmQgd3JpdGluZyBzdHlsZXMgb2YgZGlmZmVy ZW50IExvamJhbmlzdHMsIGJ1dCB0aGV5IGFyZSBub3QgY29udmVudGlvbmFsOgoKCgpTcGFjZXMg YXJlIHVzdWFsbHkgdXNlZCBiZXR3ZWVuIHdvcmRzLiAgIFRoZXkgYXJlIG1hbmRhdG9yeSBiZXR3 ZWVuIHNvbWUgd29yZHMgKG1vcmUgb24gdGhhdCBpbiBsZXNzb24gdGhpcnRlZW4pLiAgIERvdWJs ZSBvciB0cmlwbGUgc3BhY2UgaXMgc29tZXRpbWVzIHVzZWQgYmVmb3JlIHRoZSBiZWdpbm5pbmcg b2YgbmV3IHNlbnRlbmNlcy4gICBUaGlzIGlzIHRvIGNsZWFybHkgbWFyayBzZW50ZW5jZSBzaGlm dCB2aXN1YWxseS4gICBUaGlzIG1pZ2h0IGNvbXBlbnNhdGUgZm9yIGxhY2sgb2YgY2FwaXRhbCBs ZXR0ZXJzIHdoaWNoIGFyZSB1c2VkIGZvciB0aGUgc2FtZSBwdXJwb3NlIGluIEVuZ2xpc2guCgoK CkluIMOycmRlciB0byB2aXN1w6BsbHkgcmVwcsOoc2VudCB0aGUgc3RyZXNzIG9uIHRoZSBwZW51 bHTDrG1hdGUgc3lsbMOgYmxlLCBhbmQgYsOoY2F1c2UgdGhleSBmaW5kIGl0IHZpc3XDoGxseSBw bMOoYXNpbmcsIHNvbWUgcMOob3BsZSB1c2UgZ3LDoHZlIMOgY2NlbnRzIMOydmVyIHRoZSBjb25z w7JuYW50IG9mIHRob3NlIHN5bGzDoGJsZXMuCgoKClNvbWUgcGVvcGxlIGJvcnJvdyBvdGhlciBw dW5jdHVhdGlvbiBtYXJrcyBmcm9tIEVuZ2xpc2gsIGV2ZW4gdGhvdWdoIHRoZXkgYXJlIG5vdCBj YW5vbiwgYW5kIExvamJhbiBpcyBlcXVpcHBlZCB3aXRoIGFjdHVhbCB3b3JkcyB3aGljaCBzaG91 bGQgY29tcGVuc2F0ZSBmb3IgYW55IHB1bmN0dWF0aW9uIG9uZSBtaWdodCB3YW50IHRvIHVzZS4g Tm9uZXRoZWxlc3MsIHF1ZXN0aW9uIG1hcmtzLCBmb3IgZXhhbXBsZSwgY2xlYXJseSBtYXJrcyBh IHNlbnRlY2UgYXMgYSBxdWVzdGlvbiBhbmQgaXMgbXVjaCBlYXNpZXIgdG8gY2F0Y2ggd2l0aCB0 aGUgZXllIHRoYW4gYW55IHdvcmQgaXMsIGFuZCBzbyBzb21lIExvamJhbmlzdHMgdXNlIHRoZW0u IFF1b3RhdGlvbiBtYXJrcywgcGFyZW50aGVzaXMgYW5kIGV4Y2xhbWF0aW9ucyBtYXJrcyBjYW4g YmUgdXNlZCBzaW1pbGFybHkuIFdoaWxlIHRoaXMgaXMgbm90IHVuZ3JhbW1hdGljYWwsIHNpbmNl IHRoYXQgZG9lc24ndCBpbnRlcmZlcmUgd2l0aCB0aGUgc2VudGVuY2VzLCBzb21lIHBlb3BsZSB0 aGluayBleG90aWMgcHVuY3R1YXRpb24gY3JlYXRlcyBhbiB1bndhbnRlZCBkaWZmZXJlbmNlIGJl dHdlZW4gd3JpdHRlbiBhbmQgc3Bva2VuIExvamJhbiwgZ2VuZXJhbGx5IGEgYmlnIG5vLW5vLiAK CgoKVGhlIGZvbGxvd2luZyBuYW1lcyBhcmUgTG9qYmFuaXplZCAtIHRoZWlyIHNvdW5kcyBhcmUg dHJhbnNjcmlwZWQgaW50byBMb2piYW4gYW5kIHRoZWlyIGVuZGluZyBzb3VuZCBoYXZlIGJlZW4g Y2hhbmdlZCB0byBhIGNvbnNvbmFudC4gVGhlIGZpbmFsIGNvbnNvbmFudCBpcyBuZWNlc3Nhcnks IGJlY2F1c2UgdGhhdCdzIGhvdyBmb3JlaWduIG5hbWVzIGFyZSBkaWZmZXJlbnRpYXRlZCBmcm9t IExvamJhbiB3b3Jkcy4gQWdhaW4sIG1vcmUgb24gdGhhdCBpbiBsZXNzb24gdGhpcnRlZW4uCgoK Cl9fRXhlcmNpc2UgMV9fCgpXaGVyZSBhcmUgdGhlc2UgcGxhY2VzPwoKIy5udSxJT1JLLgoKIy5y b21hcy4KCiMueGF2YW5hcy4KCiMua2FyZGlmLgoKIy5iZWlkamluLgoKIy5BTmthcmFzLgoKIy5B TGJla2Vya2lzLgoKIy52YW5rdXZlci4KCiMua2VpcHRhdW4uCgojLnRhaWJlaXMuCgojLmJvbi4K CiMuZGVsaXMuCgojLm5pcy4KCiMuYXRpbmFzLgoKIy5saWR6LgoKIy54ZWxzaW5raXMuCgpBbnN3 ZXI6Cgp+fmdyYXksZ3JheTp+fgoKI35+Z3JheSxncmF5Ok5ldyBZb3JrOiBVU0F+fgoKI35+Z3Jh eSxncmF5OlJvbWU6IEl0YWx5fn4KCiN+fmdyYXksZ3JheTpIYXZhbmE6IEN1YmF+fgoKI35+Z3Jh eSxncmF5OkNhcmRpZmY6IFdhbGVzIChUaGUgV2Vsc2ggZm9yICJDYXJkaWZmIiBpcyAiQ2FlcmR5 ZGQiLCB3aGljaCB3b3VsZCBMb2piYW5pc2UgdG8gc29tZXRoaW5nIGxpa2Uga2FpcmR5ZC4uKX5+ Cgojfn5ncmF5LGdyYXk6QmVpamluZzogQ2hpbmF+fgoKI35+Z3JheSxncmF5OkFua2FyYTogVHVy a2V5fn4KCiN+fmdyYXksZ3JheTpBbGJlcXVlcnF1ZTogTmV3IE1leGljbywgVVNBfn4KCiN+fmdy YXksZ3JheTpWYW5jb3V2ZXI6IENhbmFkYX5+Cgojfn5ncmF5LGdyYXk6Q2FwZSBUb3duOiBTb3V0 aCBBZnJpY2F+fgoKI35+Z3JheSxncmF5OlRhaXBlaTogVGFpd2FuIChub3RlIGIsIG5vdCBwLiBB bHRob3VnaCBhY3R1YWxseSwgdGhlIGIgaW4gUGlueWluIGlzIHByb25vdW5jZWQgYXMgYSBwLi4u IEJ1dCB0aGlzIGlzbid0IG1lYW50IHRvIGJlIGEgY291cnNlIG9uIE1hbmRhcmluISl+fgoKI35+ Z3JheSxncmF5OkJvbm46IEdlcm1hbnl+fgoKI35+Z3JheSxncmF5OkRlbGhpOiBJbmRpYSAoVGhl IEhpbmRpIGZvciAiRGVsaGkiIGlzICJEaWxsw64iLCB3aGljaCB3b3VsZCBnaXZlIGRpbGl5cy4g b3IgZGlsaSdpcy4uKX5+Cgojfn5ncmF5LGdyYXk6TmljZTogRnJhbmNlfn4KCiN+fmdyYXksZ3Jh eTpBdGhlbnM6IEdyZWVjZSAoIkF0aGluYSIgaW4gR3JlZWspfn4KCiN+fmdyYXksZ3JheTpMZWVk czogRW5nbGFuZH5+Cgojfn5ncmF5LGdyYXk6SGVsc2lua2k6IEZpbmxhbmR+fgoKX19FeGVyY2lz ZSAyX18KCkxvamJhbmlzZSB0aGUgZm9sbG93aW5nIG5hbWVzLgoKVGhlcmUgYXJlIHVzdWFsbHkg YWx0ZXJuYXRpdmUgc3BlbGxpbmdzIGZvciBuYW1lcywgZWl0aGVyIGJlY2F1c2UgcGVvcGxlIHBy b25vdW5jZSB0aGUgb3JpZ2luYWxzIGRpZmZlcmVudGx5LCBvciBiZWNhdXNlIHRoZSBleGFjdCBz b3VuZCBkb2Vzbid0IGV4aXN0IGluIExvamJhbiwgc28geW91IG5lZWQgdG8gY2hvb3NlIGJldHdl ZW4gdHdvIExvamJhbiBsZXR0ZXJzLiBUaGlzIGRvZXNuJ3QgbWF0dGVyLCBzbyBsb25nIGFzIGV2 ZXJ5b25lIGtub3dzIHdobyBvciB3aGVyZSB5b3UncmUgdGFsa2luZyBhYm91dC4KCiNKb2huCgoj TWVsaXNzYQoKI0FtYW5kYQoKI01hdHRoZXcKCiNNaWNoYWVsCgojRGF2aWQgQm93aWUKCiNKYW5l IEF1c3RlbgoKI1dpbGxpYW0gU2hha2VzcGVhcmUKCiNTaWdvdXJuZXkgV2VhdmVyCgojUmljaGFy ZCBOaXhvbgoKI0lzdGFuYnVsCgojTWFkcmlkCgojVG9reW8KCiNTYW4gU2FsdmFkb3IKCkFuc3dl cjoKCiN+fmdyYXksZ3JheTouZGpvbi4gKG9yIC5kamFuLiB3aXRoIHNvbWUgYWNjZW50cyl+fgoK I35+Z3JheSxncmF5Oi5tZWxpc3lzLn5+Cgojfn5ncmF5LGdyYXk6LmFtYW5keXMuIChhZ2Fpbiwg ZGVwZW5kaW5nIG9uIHlvdXIgYWNjZW50LCB0aGUgZmluYWwgeSBtYXkgYmUgYSwgdGhlIGluaXRp YWwgYSBtYXkgYmUgeSwgYW5kIHRoZSBtaWRkbGUgYSBtYXkgYmUgZS4pfn4KCiN+fmdyYXksZ3Jh eToubWF0aXVzLn5+Cgojfn5ncmF5LGdyYXk6Lm1haWt5bC4gb3IgLm1haWssbC4gLCBkZXBlbmRp bmcgb24gaG93IHlvdSBzYXkgaXQufn4KCiN+fmdyYXksZ3JheTouZGVpdnlkLmJhdSxpcy4gb3Ig LmJvLGlzLiAoYnV0IG5vdCAuYnUsaXMuIOKAlCB0aGF0J3MgdGhlIGtuaWZlKX5+Cgojfn5ncmF5 LGdyYXk6LmRqZWluLm9zdGluLn5+Cgojfn5ncmF5LGdyYXk6LnVpbGlhbS5jZWtzcGlyLn5+Cgoj fn5ncmF5LGdyYXk6LnNpZ29ybmlzLnVpdnlyLiBvciAuc3lnb3JuaXMudWl2eXIufn4KCiN+fmdy YXksZ3JheToucml0Y3lyZC5uaWtzeW4ufn4KCiN+fmdyYXksZ3JheTouaXN0YW5CVUwuIHdpdGgg RW5nbGlzaCBzdHJlc3MsIC5JU3RhbmJ1bC4gd2l0aCBBbWVyaWNhbiwgLmlzdGFuYnVsLiB3aXRo IFR1cmtpc2guIExvamJhbmlzdHMgZ2VuZXJhbGx5IHByZWZlciB0byBiYXNlIGNtZXZsYSBvbiBs b2NhbCBwcm9udW5jaWF0aW9uLCBidXQgdGhpcyBpcyBub3QgYW4gYWJzb2x1dGUgcnVsZS5+fgoK I35+Z3JheSxncmF5Oi5tYURSSUQufn4KCiN+fmdyYXksZ3JheToudG9raW9zLn5+Cgojfn5ncmF5 LGdyYXk6LnNhbi5zYWx2YURPUi4gKHdpdGggU3BhbmlzaCBzdHJlc3Mpfn4KCgoKISFMb2piYW4g TGVzc29ucyDigJMgbGVzc29uIG9uZSAoYnJpZGksIGp1ZnJhLCBzdW10aSBhbmQgc2VsYnJpKQoK QSAnJ2JyaWRpJycgaXMgdGhlIG1vc3QgY2VudHJhbCB1bml0IG9mIExvamJhbiB1dHRlcmFuY2Vz LiBUaGUgY29uY2VwdCBpcyB2ZXJ5IGNsb3NlIHRvIHdoYXQgd2UgY2FsbCBhIHByb3Bvc2l0aW9u IGluIEVuZ2xpc2guIEEgYnJpZGkgaXMgYSBjbGFpbSB0aGF0IHNvbWUgb2JqZWN0cyBzdGFuZCBp biBhIHJlbGF0aW9uIHRvIGVhY2ggb3RoZXIsIG9yIHRoYXQgYW4gb2JqZWN0IGhhcyBzb21lIHBy b3BlcnR5LiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byAnJ2p1ZnJhJycsIHdoaWNoIGFyZSBt ZXJlbHkgTG9qYmFuIHV0dGVyYW5jZXMsIHdoaWNoIGNhbiBiZSBicmlkaSBvciBhbnl0aGluZyBl bHNlIGJlaW5nIHNhaWQuIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBicmlkaSBhbmQgYSBqdWZy YSBpcyB0aGF0IGEganVmcmEgZG9lcyBub3QgbmVjZXNzYXJpbHkgc3RhdGUgYW55dGhpbmcsIHdo aWxlIGEgYnJpZGkgZG9lcy4gVGh1cywgYSBicmlkaSBtaWdodCBiZSB0cnVlIG9yIGZhbHNlLCB3 aGlsZSBub3QgYWxsIGp1ZnJhIGNhbiBiZSBzYWlkIHRvIGJlIHN1Y2guCgpUbyBoYXZlIHNvbWUg ZXhhbXBsZXMgKGluIEVuZ2xpc2gsIHRvIGJlZ2luIHdpdGgpLCDigJxNb3phcnQgd2FzIHRoZSBn cmVhdGVzdCBtdXNpY2lhbiBvZiBhbGwgdGltZeKAnSBpcyBhIGJyaWRpLCBiZWNhdXNlIGl0IG1h a2VzIGEgY2xhaW0gd2l0aCBhIHRydXRoIHZhbHVlLCBhbmQgaXQgaW52b2x2ZXMgYW4gb2JqZWN0 LCBNb3phcnQsIGFuZCBhIHByb3BlcnR5LCBiZWluZyB0aGUgZ3JlYXRlc3QgbXVzaWNpYW4gb2Yg YWxsIHRpbWUuIE9uIHRoZSBjb250cmFyeSwg4oCcT3chIE15IHRvZSHigJ0gaXMgbm90IGEgYnJp ZGksIHNpbmNlIGl0IGRvZXMgbm90IGludm9sdmUgYSByZWxhdGlvbiwgYW5kIHRodXMgZG9lcyBu b3Qgc3RhdGUgYW55dGhpbmcuIEJvdGgsIHRob3VnaCwgYXJlIGp1ZnJhLgoKVHJ5IHRvIGlkZW50 aWZ5IHRoZSBicmlkaSBhbW9uZyB0aGVzZSBFbmdsaXNoIGp1ZnJhOgoKCgojIOKAnEkgaGF0ZSBp dCB3aGVuIHlvdSBkbyB0aGF0LuKAnQoKIyDigJxSdW5zLuKAnQoKIyDigJxXb2FoLCB0aGF0IGxv b2tzIGRlbGljaW91cyHigJ0KCiMg4oCcR2Vleiwgbm90IGFnYWluLuKAnQoKIyDigJxObywgSSBv d24gdGhyZWUgY2Fyc+KAnQoKIyDigJxOaW5ldGVlbiBtaW51dGVzIHBhc3QgZWlnaHQu4oCdCgoj IOKAnFRoaXMgU2F0dXJkYXksIHllcy7igJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleToxLCAzIGFu ZCA1IGFyZSBicmlkaS4gMiBjb250YWlucyBubyBvYmplY3RzIGFuZCB0aGUgcmVzdCBjb250YWlu IG5vIHJlbGF0aW9uIG9yIGNsYWltIG9mIGEgcHJvcGVydHkufn4KCgoKUHV0IGluIExvamJhbiB0 ZXJtcywgYSBicmlkaSBjb25zaXN0cyBvZiBvbmUgJydzZWxicmknJywgYW5kIG9uZSBvciBtb3Jl ICcnc3VtdGknJy4gVGhlIHNlbGJyaSBpcyB0aGUgcmVsYXRpb24gb3IgY2xhaW0gYWJvdXQgdGhl IG9iamVjdCwgYW5kIHRoZSBzdW10aSBhcmUgdGhlIG9iamVjdHMgd2hpY2ggYXJlIGluIGEgcmVs YXRpb24uIE5vdGUgdGhhdCDigJxvYmplY3TigJ0gaXMgbm90IGEgcGVyZmVjdCB0cmFuc2xhdGlv biBvZiDigJxzdW10aeKAnSwgc2luY2Ug4oCcc3VtdGnigJ0gY2FuIHJlZmVyIHRvIG5vdCBqdXN0 IHBoeXNpY2FsIG9iamVjdHMsIGJ1dCBjYW4gYWxzbyBwdXJlbHkgYWJzdHJhY3QgdGhpbmdzIGxp a2Ug4oCcVGhlIGlkZWEgb2Ygd2FyZmFyZeKAnS4gQSBiZXR0ZXIgdHJhbnNsYXRpb24gd291bGQg YmUgc29tZXRoaW5nIGxpa2Ug4oCcc3ViamVjdCwgZGlyZWN0IG9yIGluZGlyZWN0IG9iamVjdOKA nSBmb3Igc3VtdGksIGFuZCDigJx2ZXJi4oCdIGZvciBzZWxicmksIHRob3VnaCwgYXMgd2Ugd2ls bCBzZWUsIHRoaXMgaXMgbm90IG9wdGltYWwgZWl0aGVyLgoKV2UgY2FuIG5vdyB3cml0ZSB0aGUg Zmlyc3QgaW1wb3J0YW50IGxlc3NvbiBkb3duOgoKYnJpZGkgPSBzZWxicmkgKyBvbmUgb3IgbW9y ZSBzdW10aQoKUHV0IGFub3RoZXIgd2F5LCBhIGJyaWRpIHN0YXRlcyB0aGF0IHNvbWUgc3VtdGkg ZG8vYXJlIHNvbWV0aGluZyBleHBsYWluZWQgYnkgYSBzZWxicmkuCgoKCklkZW50aWZ5IHRoZSBz dW10aSBhbmQgc2VsYnJpIGVxdWl2YWxlbnRzIGluIHRoZXNlIEVuZ2xpc2gganVmcmE6CgrigJxJ IHdpbGwgcGljayB1cCBteSBkYXVnaHRlcnMgd2l0aCBteSBjYXLigJ0KCgoKQW5zd2VyOiB+fmdy ZXksZ3JleTpzZWxicmk6IOKAnHBpY2sgdXAgKHdpdGgp4oCdLiBzdW10aTog4oCcSeKAnSwg4oCc bXkgZGF1Z2h0ZXJz4oCdLCDigJxteSBjYXLigJ1+fgoKCgrigJxIZSBib3VnaHQgNSBuZXcgc2hp cnRzIGZyb20gTWFyayBmb3IganVzdCB0d28gaHVuZHJlZCBldXJvIeKAnQoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OnNlbGJyaTog4oCcYm91Z2h0IChmcm9tKSAoZm9yKeKAnSBzdW10aTog4oCcSGXi gJ0sIOKAnDUgbmV3IHNoaXJ0c+KAnSwg4oCcTWFya+KAnSBhbmQg4oCcdHdvIGh1bmRyZWQgZXVy b3PigJ1+fgoKCgpTaW5jZSB0aGVzZSBjb25jZXB0cyBhcmUgc28gZnVuZGFtZW50YWwgdG8gTG9q YmFuLCBsZXQncyBoYXZlIGEgdGhpcmQgZXhhbXBsZTog4oCcU28gZmFyLCB0aGUgRVBBIGhhcyBk b25lIG5vdGhpbmcgYWJvdXQgdGhlIGFtb3VudCBvZiBzdWxwaHVyIGRpb3hpZGUu4oCdCgoKCkFu c3dlcjogfn5ncmV5LGdyZXk6c2VsYnJpOiDigJxoYXMgZG9uZSAoYWJvdXQp4oCdIHN1bXRpOiDi gJxUaGUgRVBB4oCdLCDigJxub3RoaW5n4oCdIGFuZCDigJx0aGUgYW1vdW50IG9mIHN1bHBodXIg ZGlveGlkZeKAnX5+CgoKCk5vdyB0cnkgYmVnaW4gbWFraW5nIExvamJhbiBicmlkaS4gRm9yIHRo aXMgeW91IHdpbGwgbmVlZCB0byB1c2Ugc29tZSB3b3Jkcywgd2hpY2ggY2FuIGFjdCBhcyBzZWxi cmk6CgonJ19fZHVuZGFfXycnIHgxIGdpdmVzIHgyIHRvIHgzICh3aXRob3V0IHBheW1lbnQpCgon J19fcGVseHVfXycnIHgxIGlzIHllbGxvdwoKJydfX3pkYW5pX18nJyB4MSBpcyBhIGhvbWUgb2Yg eDIKCgoKTm90aWNlIHRoYXQgdGhlc2Ugd29yZHMgbWVhbmluZyDigJxnaXZl4oCdLCDigJx5ZWxs b3figJ0gYW5kIOKAnGhvbWXigJ0gd291bGQgYmUgY29uc2lkZXJlZCBhIHZlcmIsIGFuIGFkamVj dGl2ZSBhbmQgYSBub3VuIGluIEVuZ2xpc2guIEluIExvamJhbiwgdGhlcmUgYXJlIG5vIHN1Y2gg Y2F0ZWdvcmllcyBhbmQgbm8gc3VjaCBkaXN0aW5jdGlvbi4gJydkdW5kYScnIGNhbiBiZSB0cmFu c2xhdGVkIOKAnGdpdmVz4oCdICh2ZXJiKSwg4oCcaXMgYSBnaXZlcuKAnSAobm91biksIOKAnGlz IGdpdmluZ+KAnSAoYWRqZWN0aXZlKSBhcyB3ZWxsIGFzIHRvIGFuIGFkdmVyYiBmb3JtLiBUaGV5 IGFsbCBhY3QgYXMgc2VsYnJpLCBhbmQgYXJlIHVzZWQgaW4gdGhlIHNhbWUgd2F5LgoKCgpBcyB3 ZWxsIGFzIGEgZmV3IHdvcmRzLCB3aGljaCBjYW4gYWN0IGFzIHN1bXRpOgoKJydfX21pX18nJyDi gJxJ4oCdIG9yIOKAnHdl4oCdIOKAkyB0aGUgb25lIG9yIHRob3NlIHdobyBhcmUgc3BlYWtpbmcu CgonJ19fdGlfXycnIOKAnHRoaXPigJ0g4oCTIGEgY2xvc2UgdGhpbmcgb3IgZXZlbnQgbmVhcmJ5 IHdoaWNoIGNhbiBiZSBwb2ludGVkIHRvIGJ5IHRoZSBzcGVha2VyLgoKJydfX2RvX18nJyDigJx5 b3XigJ0g4oCTIHRoZSBvbmUgb3IgdGhvc2Ugd2hvIGFyZSBiZWluZyBzcG9rZW4gdG8uCgoKClNl ZSB0aGUgc3RyYW5nZSB0cmFuc2xhdGlvbnMgb2YgdGhlIHNlbGJyaSBhYm92ZSAtIGVzcGVjaWFs bHkgdGhlIHgxLCB4MiBhbmQgeDM/IFRob3NlIGFyZSBjYWxsZWQgc3VtdGkgcGxhY2VzLiBUaGV5 IGFyZSBwbGFjZXMgd2hlcmUgc3VtdGkgY2FuIGdvIHRvIGZpbGwgYSBicmlkaS4gRmlsbGluZyBh IHN1bXRpIGluIGEgcGxhY2Ugc3RhdGVzIHRoYXQgdGhlIHN1bXRpIGZpdHMgaW4gdGhhdCBwbGFj ZS4gVGhlIHNlY29uZCBwbGFjZSBvZiAnJ2R1bmRhJycsIGZvciBleGFtcGxlLCB4MiwgaXMgdGhl IHRoaW5nIGJlaW5nIGdpdmVuLiBUaGUgdGhpcmQgaXMgdGhlIG9iamVjdCB3aGljaCByZWNlaXZl cyB0aGUgdGhpbmcuIE5vdGljZSBhbHNvIHRoYXQgdGhlIHRyYW5zbGF0aW9uIG9mICcnZHVuZGEn JyBoYXMgdGhlIHdvcmQg4oCcdG/igJ0gaW4gaXQuIFRoaXMgaXMgYmVjYXVzZSwgd2hpbGUgdGhp cyB3b3JkIGlzIG5lZWRlZCBpbiBFbmdsaXNoIHRvIHNpZ25pZnkgdGhlIHJlY2VpdmVyLCB0aGUg cmVjZWl2ZXIgaXMgaW4gdGhlIHRoaXJkIHN1bXRpIHBsYWNlIG9mICcnZHVuZGEnJy4gU28gd2hl biB5b3UgZmlsbCB0aGUgdGhpcmQgc3VtdGkgcGxhY2Ugb2YgJydkdW5kYScnLCB0aGUgc3VtdGkg eW91IGZpbGwgaW4gaXMgYWx3YXlzIHRoZSByZWNlaXZlciwgYW5kIHlvdSBkb24ndCBuZWVkIGFu IGVxdWl2YWxlbnQgdG8gdGhlIHdvcmQg4oCcdG/igJ0hCgoKClRvIHNheSBhIGJyaWRpLCB5b3Ug c2ltcGx5IHNheSB0aGUgeDEgc3VtdGkgZmlyc3QsIHRoZW4gdGhlIHNlbGJyaSwgdGhlbiBhbnkg b3RoZXIgc3VtdGkuCgpVc3VhbCBicmlkaToge3gxIHN1bXRpfSBfX3tzZWxicml9X18ge3gyIHN1 bXRpfSB7eDMgc3VtdGl9IHt4NCBzdW10aX0ge3g1IHN1bXRpfSB7YW5kIHNvIG9ufQoKVGhlIG9y ZGVyIGNhbiBiZSBwbGF5ZWQgYXJvdW5kIHdpdGgsIGJ1dCBmb3Igbm93LCB3ZSBzdGljayB3aXRo IHRoZSB1c3VhbCBmb3JtLiBUbyBzYXkg4oCcSSBnaXZlIHRoaXMgdG8geW914oCdIHlvdSBqdXN0 IHNheSAnJ21pIGR1bmRhIHRpIGRvJycsIHdpdGggdGhlIHRocmVlIHN1bXRpIGF0IHRoZSByaWdo dCBwbGFjZXMuCgoKClNvLCBob3cgd291bGQgeW91IHNheSDigJxUaGlzIGlzIGEgaG9tZSBvZiBt ZeKAnT8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ3RpIHpkYW5pIG1pJyd+fgoKCgpUcnkgYSBm ZXcgbW9yZSBpbiBvcmRlciB0byBnZXQgdGhlIGlkZWEgb2YgYSBwbGFjZSBzdHJ1Y3R1cmUgc2lu ayBpbi4KCgoK4oCcWW91IGdpdmUgdGhpcyB0byBtZeKAnT8KCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTonJ2RvIGR1bmRhIHRpIG1pJyd+fgoKCgpBbmQgdHJhbnNsYXRlICcndGkgcGVseHUnJwoKCgpB bnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoaXMgaXMgeWVsbG93LuKAnX5+CgoKClF1aXRlIGVhc3kg b25jZSB5b3UgZ2V0IHRoZSBoYW5nIG9mIGl0LCByaWdodD8KCgoKTXVsdGlwbGUgYnJpZGkgYWZ0 ZXIgZWFjaCBvdGhlciBhcmUgc2VwYXJhdGVkIGJ5ICcnLmknJyBUaGlzIGlzIHRoZSBMb2piYW4g ZXF1aXZhbGVudCBvZiBmdWxsIHN0b3AsIGJ1dCBpdCB1c3VhbGx5IGdvZXMgYmVmb3JlIGJyaWRp IGluc3RlYWQgb2YgYWZ0ZXIgdGhlbS4gSXQncyBvZnRlbiBsZWZ0IG91dCBiZWZvcmUgdGhlIGZp cnN0IGJyaWRpLCB0aG91Z2gsIGFzIGluIGFsbCB0aGVzZSBleGFtcGxlczoKCicnX18uaV9fJycg U2VudGVuY2Ugc2VwYXJhdG9yLiBTZXBhcmF0ZXMgYW55IHR3byBqdWZyYSAoYW5kIHRoZXJlZm9y ZSBhbHNvIGJyaWRpKS4KCgoKJyd0aSB6ZGFuaSBtaSAgLmkgdGkgcGVseHUnJyDigJ1UaGlzIGlz IGEgaG9tZSB0byBtZS4gVGhpcyBpcyB5ZWxsb3cu4oCdCgoKCkJlZm9yZSB5b3UgbW92ZSBvbiB0 byB0aGUgbmV4dCBsZXNzb24sIEkgcmVjb21tZW5kIHRoYXQgeW91IHRha2UgYSBicmVhayBmb3Ig YXQgbGVhc3Qgc2V2ZW4gbWludXRlcyB0byBsZXQgdGhlIGluZm9ybWF0aW9uIHNpbmsgaW4uCgoK CgoKISFMb2piYW4gTGVzc29ucyDigJMgbGVzc29uIHR3byAoc2tpcHBpbmcgYXJvdW5kIHdpdGgg RkEgYW5kIHpvJ2UpCgpNb3N0IHNlbGJyaSBoYXZlIGZyb20gb25lIHRvIGZpdmUgc3VtdGkgcGxh Y2VzLCBidXQgc29tZSBoYXZlIG1vcmUuIEhlcmUgaXMgYSBzZWxicmkgd2l0aCBmb3VyIHN1bXRp IHBsYWNlczoKCicnX192ZWNudV9fJycgeDEgc2VsbHMgeDIgdG8geDMgZm9yIHByaWNlIHg0CgoK CklmIEkgd2FudCB0byBzYXkg4oCcSSBzZWxsIHRoaXPigJ0sIGl0IHdvdWxkIGJlIHRvbyBtdWNo IHRvIGhhdmUgdG8gZmlsbCB0aGUgc3VtdGkgcGxhY2VzIHgzIGFuZCB4NCwgd2hpY2ggc3BlY2lm eSB3aG8gSSBzZWxsIHRoZSB0aGluZyB0bywgYW5kIGZvciB3aGF0IHByaWNlLiBMdWNraWx5LCBJ IGRvbid0IG5lZWQgdG8uIHN1bXRpIHBsYWNlcyBjYW4gYmUgZmlsbGVkIHdpdGggJyd6bydlJycu ICcnem8nZScnIGluZGljYXRlcyB0byB1cyB0aGF0IHRoZSB2YWx1ZSBvZiB0aGUgc3VtdGkgcGxh Y2UgaXMgdW5zcGVjaWZpZWQgYmVjYXVzZSBpdCdzIHVuaW1wb3J0YW50IG9yIGNhbiBiZSBkZXRl cm1pbmVkIGZyb20gY29udGV4dC4KCicnX196bydlX18nJyDigJxzb21ldGhpbmfigJ0gRmlsbHMg YSBzdW10aSBwbGFjZSB3aXRoIHNvbWV0aGluZywgYnV0IGRvZXMgbm90IHN0YXRlIHdoYXQuCgoK ClNvIHRvIHNheSDigJxJIHNlbGwgdG8geW914oCdLCBJIGNvdWxkIHNheSAnJ21pIHZlY251IHpv J2UgZG8gem8nZScnIOKAkyBJIHNlbGwgc29tZXRoaW5nIHRvIHlvdSBmb3Igc29tZSBwcmljZS4K CkhvdyB3b3VsZCB5b3Ugc2F5OiDigJxUaGF0J3MgYSBob21lIChmb3Igc29tZWJvZHkp4oCdPwoK CgpBbnN3ZXI6IH5+Z3JleSxncmV5OiAnJ3RpIHpkYW5pIHpvJ2UnJ35+CgoKCkhvdyBhYm91dCDi gJwoc29tZW9uZSkgZ2l2ZXMgdGhpcyB0byAoc29tZW9uZSnigJ0/CgoKCkFuc3dlcjogfn5ncmV5 LGdyZXk6Jyd6bydlIGR1bmRhIHRpIHpvJ2UnJ35+CgoKClN0aWxsLCBmaWxsaW5nIG91dCB0aHJl ZSB6bydlIGp1c3QgdG8gc2F5IHRoYXQgYSB0aGluZyBpcyBiZWluZyBzb2xkIHRha2VzIHRpbWUu IFRoZXJlZm9yZSB5b3UgZG9uJ3QgbmVlZCB0byB3cml0ZSBhbGwgdGhlICcnem8nZScnIGluIGEg YnJpZGkuIFRoZSBydWxlIHNpbXBseSBpcyB0aGF0IGlmIHlvdSBsZWF2ZSBvdXQgYW55IHN1bXRp LCB0aGV5IHdpbGwgYmUgY29uc2lkZXJlZCBhcyBpZiB0aGV5IGNvbnRhaW5lZCAnJ3pvJ2UnJy4g SWYgdGhlIGJyaWRpIGJlZ2lucyB3aXRoIGEgc2VsYnJpLCB0aGUgeDEgaXMgcHJlc3VtZWQgdG8g YmUgb21pdHRlZCBhbmQgaXQgYmVjb21lcyAnJ3pvJ2UnJy4KClRyeSBpdCBvdXQuIFdoYXQncyBM b2piYW4gZm9yIOKAnEkgc2VsbOKAnT8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIHZlY251 Jyd+fgoKCgpBbmQgd2hhdCBkb2VzICcnemRhbmkgbWknJyBtZWFuPwoKCgpBbnN3ZXI6IH5+Z3Jl eSxncmV5OuKAnFNvbWV0aGluZyBpcyBhIGhvbWUgb2YgbWXigJ0gb3IganVzdCDigJxJIGhhdmUg YSBob21lLuKAnX5+CgoKCkFzIG1lbnRpb25lZCBlYXJsaWVyLCB0aGUgZm9ybSBkb2Vzbid0IGhh dmUgdG8gYmUge3gxIHN1bXRpfSB7c2VsYnJpfSB7eDIgc3VtdGl9IHt4MyBzdW10aX0gKGVjdC4p IEluIGZhY3QsIHlvdSBjYW4gcGxhY2UgdGhlIHNlbGJyaSBhbnl3aGVyZSB5b3Ugd2FudCwganVz dCBub3QgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgYnJpZGkuIElmIHlvdSBkbyB0aGF0LCB0aGUg eDEgaXMgY29uc2lkZXJlZCBsZWZ0IG91dCBhbmQgZmlsbGVkIHdpdGggJyd6bydlJycgaW5zdGVh ZC4gU28gdGhlIGZvbGxvd2luZyB0aHJlZSBqdWZyYSBhcmUgYWxsIHRoZSBleGFjdGx5IHNhbWUg YnJpZGk6CgonJ21pIGR1bmRhIHRpIGRvJycKCicnbWkgdGkgZHVuZGEgZG8nJwoKJydtaSB0aSBk byBkdW5kYScnCgoKClNvbWV0aW1lcyB0aGlzIGlzIHVzZWQgZm9yIHBvZXRpYyBlZmZlY3QuIOKA nFlvdSBzZWxsIHlvdXJzZWxm4oCdIGNvdWxkIGJlICcnZG8gZG8gdmVjbnUnJywgd2hpY2ggc291 bmRzIGJldHRlciB0aGFuICcnZG8gdmVjbnUgZG8nJy4gT3IgaXQgY2FuIGJlIHVzZWQgZm9yIGNs YXJpdHkgaWYgdGhlIHNlbGJyaSBpcyB2ZXJ5IGxvbmcgYW5kIHRoZXJlZm9yZSBiZXR0ZXIgYmUg bGVmdCBhdCB0aGUgZW5kIG9mIHRoZSBicmlkaS4KCgoKVGhlcmUgYXJlIGFsc28gc2V2ZXJhbCB3 YXlzIHRvIHBsYXkgYXJvdW5kIHdpdGggdGhlIG9yZGVyIG9mIHRoZSBzdW10aSBpbnNpZGUgdGhl IGJyaWRpLiBUaGUgZWFzaWVzdCBvbmUgaXMgYnkgdXNpbmcgdGhlIHdvcmRzICcnZmEnJywgJydm ZScnLCAnJ2ZpJycsICcnZm8nJyBhbmQgJydmdScnLiBOb3RpY2UgdGhhdCB0aGUgdm93ZWxzIGFy ZSB0aGUgZml2ZSB2b3dlbHMgaW4gdGhlIExvamJhbiBhbHBoYWJldCBpbiBvcmRlci4gVXNpbmcg b25lIG9mIHRoZXNlIHdvcmRzIG1hcmtzIHRoYXQgdGhlIG5leHQgc3VtdGkgd2lsbCBmaWxsIHRo ZSB4MSwgeDIsIHgzLCB4NCBhbmQgeDUgcmVzcGVjdGl2ZWx5LiBUaGUgbmV4dCBzdW10aSBhZnRl ciB0aGF0IHdpbGwgYmUgcHJlc3VtZWQgdG8gZmlsbCBhIHNsb3Qgb25lIGdyZWF0ZXIgdGhhbiB0 aGUgcHJldmlvdXMuIFRvIHVzZSBhbiBleGFtcGxlOgoKJydkdW5kYSBmYSBkbyBmZSB0aSBkbycn IOKAkyDigJxHaXZpbmcgYnkgeW91IG9mIHRoaXMgdGhpbmcgdG8geW914oCdLiAnJ2ZhJycgbWFy a3MgdGhlIHgxLCB0aGUgZ2l2ZXIsIHdoaWNoIGlzIHlvdS4gJydmZScnIG1hcmtzIHRoZSB0aGlu ZyBiZWluZyBnaXZlbiwgdGhlIHgyLiBTdW10aSBjb3VudGluZyB0aGVuIGNvbnRpbnVlcyBmcm9t ICcnZmUnJywgbWVhbmluZyB0aGF0IHRoZSBsYXN0IHN1bXRpIGZpbGxzIHgzLCB0aGUgb2JqZWN0 IHJlY2VpdmluZy4KCgoKQXR0ZW1wdCB0byB0cmFuc2xhdGUgdGhlIGZvbGxvd2luZyB0aHJlZSBz ZW50ZW5jZXM6CgoKCicnbWkgdmVjbnUgZm8gdGkgZmUgZG8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxn cmV5OuKAnUkgc2VsbCwgZm9yIHRoZSBwcmljZSBvZiB0aGlzLCB5b3XigJ0uIG9yIOKAnEkgc2Vs bCB5b3UgZm9yIHRoZSBwcmljZSBvZiB0aGlz4oCdIChwcm9iYWJseSBwb2ludGluZyB0byBhIGJ1 bmNoIG9mIG1vbmV5KX5+CgoKCicnemRhbmkgZmUgdGknJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OuKAnFRoaXMgaGFzIGEgaG9tZeKAnS4gSGVyZSwgdGhlIGZlIGlzIHJlZHVuZGFudC5+fgoKCgon J3ZlY251IHpvJ2UgbWkgdGkgZmEgZG8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFlvdSBz ZWxsIHNvbWV0aGluZyB0byBtZSBmb3IgdGhpcyBwcmljZeKAnX5+CgoKCgoKISFMb2piYW4gTGVz c29ucyDigJMgbGVzc29uIHRocmVlICh0YW5ydSBhbmQgbG8pCgpJbiB0aGlzIGxlc3NvbiwgeW91 IHdpbGwgYmVjb21lIGZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHQgb2YgYSAnJ3RhbnJ1JycuIEEg dGFucnUgaXMgZm9ybWVkIHdoZW4gYSBzZWxicmkgaXMgcHV0IGluIGZyb250IG9mIGFub3RoZXIg c2VsYnJpLCBtb2RpZnlpbmcgaXRzIG1lYW5pbmcuIEEgdGFucnUgaXMgaXRzZWxmIGEgc2VsYnJp LCBhbmQgY2FuIGNvbWJpbmUgd2l0aCBvdGhlciBzZWxicmkgb3IgdGFucnUgdG8gZm9ybSBtb3Jl IGNvbXBsZXggdGFucnUuIFRodXMgJyd6ZGFuaSB2ZWNudScnIGlzIGEgdGFucnUsIGFzIHdlbGwg YXMgICcncGVseHUgemRhbmkgdmVjbnUnJywgd2hpY2ggaXMgbWFkZSBmcm9tIHRoZSB0YW5ydSAn J3BlbHh1IHpkYW5pJycgYW5kIHRoZSBzaW5nbGUgYnJpdmxhIHdvcmQgJyd2ZWNudScnLiBUbyB1 bmRlcnN0YW5kIHRoZSBjb25jZXB0IG9mIHRhbnJ1LCBjb25zaWRlciB0aGUgRW5nbGlzaCBub3Vu IGNvbWJpbmF0aW9uIOKAnGxlbW9uIHRyZWXigJ0uIElmIHlvdSBkaWRuJ3Qga25vdyB3aGF0IGEg bGVtb24gdHJlZSB3YXMsIGJ1dCBoYWQgaGVhcmQgYWJvdXQgYm90aCBsZW1vbnMgYW5kIHRyZWVz LCB5b3Ugd291bGQgbm90IGJlIGFibGUgdG8gZGVkdWNlIHdoYXQgYSBsZW1vbiB0cmVlIHdhcy4g UGVyaGFwcyBhIGxlbW9uLWNvbG9yZWQgdHJlZSwgb3IgYSB0cmVlIHNoYXBlZCBsaWtlIGEgbGVt b24sIG9yIGEgdHJlZSB3aG9zZSBiYXJrIHRhc3RlcyBsaWtlIGxlbW9uLiBUaGUgb25seSB0aGlu Z3MgeW91IGNvdWxkIGtub3cgZm9yIHN1cmUgd291bGQgYmUgdGhhdCBpdCB3b3VsZCBiZSBhIHRy ZWUsIGFuZCBpdCB3b3VsZCBiZSBsZW1vbi1saWtlIGluIHNvbWUgd2F5LgoKQSB0YW5ydSBpcyBj bG9zZWx5IGFuYWxvZ291cyB0byB0aGlzLiBJdCBjYW5ub3QgYmUgc2FpZCBleGFjdGx5IHdoYXQg YSAnJ3pkYW5pIHZlY251JycgaXMsIGJ1dCBpdCBjYW4gYmUgc2FpZCB0aGF0IGl0IGlzIGRlZmlu aXRlbHkgYSB2ZWNudSwgYW5kIHRoYXQgaXQncyB6ZGFuaS1saWtlIGluIHNvbWUgd2F5LiBBbmQg aXQgY291bGQgYmUgemRhbmktbGlrZSBpbiBhbnkgd2F5LiBJbiB0aGVvcnksIG5vIG1hdHRlciBo b3cgc2lsbHkgb3IgYWJzdXJkIHRoZSBjb25uZWN0aW9uIHRvIHpkYW5pIHdhcywgaXQgY291bGQg c3RpbGwgdHJ1bHkgYmUgYSAnJ3pkYW5pIHZlY251JycuIEhvd2V2ZXIsIGl0IG11c3QgYWN0dWFs bHkgYmUgYSB2ZWNudSBpbiB0aGUgb3JkaW5hcnkgc2Vuc2UgaW4gb3JkZXIgZm9yIHRoZSB0YW5y dSB0byBhcHBseS4gWW91IGNvdWxkIGdsb3NzICcnemRhbmkgdmVjbnUnJyBhcyDigJxob21lIHNl bGxlcuKAnSwgb3IgZXZlbiBiZXR0ZXIgYnV0IHdvcnNlIHNvdW5kaW5nIOKAnGEgaG9tZS10eXBl LW9mIHNlbGxlcuKAnS4gVGhlIHBsYWNlIHN0cnVjdHVyZSBvZiBhIHRhbnJ1IGlzIGFsd2F5cyB0 aGF0IG9mIHRoZSByaWdodG1vc3Qgc2VsYnJpLiBJdCdzIGFsc28gc2FpZCB0aGF0IHRoZSBsZWZ0 IHNlbGJyaSBtb2RpZmllcyB0aGUgcmlnaHQgc2VsYnJpLgoK4oCcUmVhbGx5P+KAnSwgeW91IGFz aywgc2NlcHRpY2FsbHksIOKAnEl0IGRvZXNuJ3QgbWF0dGVyIGhvdyBzaWxseSB0aGUgY29ubmVj dGlvbiB0byB0aGUgbGVmdCB3b3JkIGluIGEgdGFucnUgaXMsIGl0J3Mgc3RpbGwgdHJ1ZT8gU28g SSBjb3VsZCBjYWxsIGFsbCBzZWxsZXJzIGZvciAnJ3pkYW5pIHZlY251JycgYW5kIHRoZW4gbWFr ZSB1cCBzb21lIHNpbGx5IGV4Y3VzZSB3aHkgSSB0aGluayBpdCdzIHpkYW5pLWxpa2U/4oCdCgpX ZWxsIHllcywgYnV0IHRoZW4geW91J2QgYmUgYSBkaWNrLiBPciBhdCBsZWFzdCB5b3UnZCBiZSBp bnRlbnRpb25hbGx5IG1pc2xlYWRpbmcuIEluIGdlbmVyYWwsIHlvdSBzaG91bGQgdXNlIGEgdGFu cnUgd2hlbiBpdCdzIG9idmlvdXMgaG93IHRoZSBsZWZ0IHdvcmQgcmVsYXRlcyB0byB0aGUgcmln aHQuCgoKCkF0dGVtcHQgdG8gdHJhbnNsYXRlIHRoZSBmb2xsb3dpbmc6ICcndGkgcGVseHUgemRh bmkgZG8nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnFRoYXQgaXMgYSB5ZWxsb3cgaG9tZSBm b3IgeW914oCdIEFnYWluLCB3ZSBkb24ndCBrbm93IGluIHdoaWNoIHdheSBpdCdzIHllbGxvdy4g UHJvYmFibHkgaXQncyBwYWludGVkIHllbGxvdywgYnV0IHdlIGRvbid0IGtub3cgZm9yIHN1cmUu fn4KCgoKJydtaSB2ZWNudSBkdW5kYScnCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCcSSBzZWxs LWxpa2UgZ2l2ZeKAnS4gV2hhdCBjYW4gdGhhdCBtZWFuPyBObyBpZGVhLiBJdCBjZXJ0YWlubHkg ZG9lc24ndCBtZWFuIHRoYXQgeW91IHNvbGQgc29tZXRoaW5nLCBzaW5jZSwgYnkgZGVmaW5pdGlv biBvZiAnJ2R1bmRhJycsIHRoZXJlIGNhbiBiZSBubyBwYXltZW50IGludm9sdmVkLiBJdCBoYXMg dG8gYmUgYSBnaXZlYXdheSwgYnV0IGJlIHNlbGwtbGlrZSBpbiBzb21lIGFzcGVjdC5+fgoKCgpB bmQgbm93IGZvciBzb21ldGhpbmcgY29tcGxldGVseSBkaWZmZXJlbnQuIFdoYXQgaWYgSSB3YW50 ZWQgdG8gc2F5IEkgc29sZCB0byBhIEdlcm1hbj8KCicnX19kb3Rjb19fJycgeDEgaXMgR2VybWFu L3JlZmxlY3RzIEdlcm1hbiBjdWx0dXJlIGluIGFzcGVjdCB4MgoKCgpJIGNhbid0IHNheSAnJ21p IHZlY251IHpvJ2UgZG90Y28nJyBiZWNhdXNlIHRoYXQgd291bGQgbGVhdmUgdHdvIHNlbGJyaSBp biBhIGJyaWRpLCB3aGljaCBpcyBub3QgcGVybWl0dGVkLiBJIGNvdWxkIHNheSAnJ21pIGRvdGNv IHZlY251JycgYnV0IHRoYXQgd291bGQgYmUgdW5uZWNlc3NhcnkgdmFndWUgLSBJIGNvdWxkIHNl bGwgaW4gYSBHZXJtYW4gd2F5LiBMaWtld2lzZSwgaWYgSSB3YW50IHRvIHNheSDigJxJIGFtIGZy aWVuZHMgd2l0aCBhbiBBbWVyaWNhbuKAnSwgd2hhdCBzaG91bGQgSSBzYXk/CgonJ19fcGVuZG9f XycnIDF4IGlzIGEgZnJpZW5kIG9mIHgyCgonJ19fbWVya29fXycnIHgxIGlzIEFtZXJpY2FuL3Jl ZmxlY3QgVVMgY3VsdHVyZSBpbiBhc3BlY3QgeDIKCgoKQWdhaW4sIHRoZSBvYnZpb3VzIHdvdWxk IGJlIHRvIHNheSAnJ21pIHBlbmRvIG1lcmtvJycsIGJ1dCB0aGF0IHdvdWxkIGZvcm0gYSB0YW5y dSwgbWVhbmluZyDigJxJIGFtIGZyaWVuZC1saWtlIEFtZXJpY2Fu4oCdLCB3aGljaCBpcyB3cm9u Zy4gV2hhdCB3ZSByZWFsbHkgd2FudCB0byBpcyB0byB0YWtlIHRoZSBzZWxicmkgJydtZXJrbycn IGFuZCB0cmFuc2Zvcm0gaXQgaW50byBhIHN1bXRpIHNvIGl0IGNhbiBiZSB1c2VkIGluIHRoZSBz ZWxicmkgJydwZW5kbycnLiBUaGlzIGlzIGRvbmUgYnkgdGhlIHR3byB3b3JkcyAnJ2xvJycgYW5k ICcna3UnJy4KCl9fJydsbycnX18g4oCTIGdlbmVyaWMgYmVnaW4gY29udmVydCBzZWxicmkgdG8g c3VtdGkgd29yZC4gRXh0cmFjdHMgeDEgb2Ygc2VsYnJpIHRvIHVzZSBhcyBzdW10aS4KCl9fJydr dScnX18g4oCTIGVuZCBjb252ZXJ0IHNlbGJyaSB0byBzdW10aSBwcm9jZXNzLgoKCgpZb3Ugc2lt cGx5IHBsYWNlIGEgc2VsYnJpIGJldHdlZW4gdGhlc2UgdHdvIHdvcmRzLCBhbmQgaXQgdGFrZXMg YW55dGhpbmcgdGhhdCBjYW4gZmlsbCB0aGUgeDEgb2YgdGhhdCBzZWxicmkgYW5kIHR1cm5zIGl0 IGludG8gYSBzdW10aS4KClNvIGZvciBpbnN0YW5jZSwgdGhlIHRoaW5ncyB0aGF0IGNhbiBmaWxs IHpkYW5p4oCYcyB4MSBhcmUgb25seSB0aGluZ3Mgd2hpY2ggYXJlIGhvbWVzIG9mIHNvbWVib2R5 LiBTbyAnJ2xvIHpkYW5pIGt1JycgbWVhbnMg4oCcYSBob21lIG9yIHNvbWUgaG9tZXMgZm9yIHNv bWVib2R5LuKAnSBTaW1pbGFybHksIGlmIEkgc2F5IHRoYXQgc29tZXRoaW5nIGlzIHBlbHh1LCBp dCBtZWFucyBpdCdzIHllbGxvdy4gU28gJydsbyBwZWx4dSBrdScnIHJlZmVycyB0byBzb21ldGhp bmcgeWVsbG93LgoKCgpOb3cgeW91IGhhdmUgdGhlIG5lY2Vzc2FyeSBncmFtbWFyIHRvIGJlIGFi bGUgdG8gc2F5IOKAnEkgYW0gZnJpZW5kcyB3aXRoIGFuIEFtZXJpY2FuLuKAnSBIb3c/CgoKCkFu c3dlcjogfn5ncmV5LGdyZXk6JydtaSBwZW5kbyBsbyBtZXJrbyBrdScnfn4KCgoKVGhlcmUgaXMg YSBnb29kIHJlYXNvbiB3aHkgdGhlICcna3UnJyBpcyBuZWNlc3NhcnkuIFRyeSB0byB0cmFuc2xh dGUg4oCcQSBHZXJtYW4gc2VsbHMgdGhpcyB0byBtZeKAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5 OicnbG8gZG90Y28ga3UgdmVjbnUgdGkgbWknJyBJZiB5b3UgbGVhdmUgb3V0IHRoZSBrdSwgeW91 IGRvIG5vdCBnZXQgYSBicmlkaSwgYnV0IHNpbXBseSB0aHJlZSBzdW10aS4gU2luY2UgbG/igKZr dSBjYW5ub3QgY29udmVydCBicmlkaSwgdGhlIHRpIGlzIGZvcmNlZCBvdXRzaWRlIHRoZSBzdW10 aSwgdGhlIGxvLWNvbnN0cnVjdCBpcyBmb3JjZWQgdG8gY2xvc2UgYW5kIGl0IHNpbXBseSBiZWNv bWVzIHRoZSB0aHJlZSBzdW10aSBvZiAnJ2xvIGRvdGNvIHZlY251IHtrdX0nJywgJyd0aScnIGFu ZCAnJ21pJycufn4KCgoKWW91IGFsd2F5cyBoYXZlIHRvIGJlIGNhcmVmdWwgd2l0aCBqdWZyYSBs aWtlICcnbG8gemRhbmkga3UgcGVseHUnJy4gSWYgdGhlICcna3UnJyBpcyBsZWZ0IG91dCB0aGUg Y29udmVyc2lvbiBwcm9jZXNzIGRvZXMgbm90IGVuZCwgYW5kIGl0IHNpbXBseSBiZWNvbWVzIG9u ZSBzdW10aSwgbWFkZSBmcm9tIHRoZSB0YW5ydSAnJ3pkYW5pIHBlbHh1JycgYW5kIHRoZW4gY29u dmVydGVkIHdpdGggJydsbycnLgoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIGxlc3NvbiBmb3Vy IChhdHRpdHVkaW5hbHMpCgpBbm90aGVyIGNvbmNlcHQgd2hpY2ggY2FuIGJlIHVuZmFtaWxpYXIg dG8gRW5nbGlzaCBzcGVha2VycyBpcyB0aGF0IG9mIGF0dGl0dWRpbmFscy4gQXR0aXR1ZGluYWxz IGFyZSB3b3JkcyB0aGF0IGV4cHJlc3MgZW1vdGlvbnMgZGlyZWN0bHkuIFRoZSBpZGVhIG9mIGF0 dGl0dWRpbmFscyBvcmlnaW5hdGVkIGluIHRoZSBmZW1pbmlzdCBjb25zdHJ1Y3RlZCBsYW5ndWFn ZSBMYWRhbiwgc3VwcG9zZWRseSB0byBlbmFibGUgdHJ1ZSBmZW1hbGUgZW1vdGlvbnMuIFRoZSBp ZGVhIHdhcyB0aGF0IGZlbWFsZSBlbW90aW9uYWwgZXhwcmVzc2lvbiB3YXMgaGluZGVyZWQgYnkg bWFsZSBkb21pbmF0ZWQgbGFuZ3VhZ2UsIGFuZCBpZiBvbmx5IHRoZXkgd2VyZSBhYmxlIHRvIGJl IGV4cHJlc3NlZCBtb3JlIGZyZWVseSwgdGhpcyB3b3VsZCBlbXBvd2VyIHdvbWVuIHRocm91Z2gg bGliZXJhdGlvbiBvZiB0aGUgbGFuZ3VhZ2UuCgpJbiBMb2piYW4sIHRoZXJlIGlzIG5vIHN1Y2gg YWdlbmRhLCBhbmQgYXR0aXR1ZGluYWxzIG1vc3QgcHJvYmFibHkgaGF2ZSBiZWVuIGRlc2lnbmVk IGludG8gdGhlIGxhbmd1YWdlIGJlY2F1c2UgdGhleSB0dXJuZWQgb3V0IHRvIGJlIGluY3JlZGli bHkgYXdlc29tZSBhbmQgdXNlZnVsLiBUaGV5IGFsbCBoYXZlIGEgc28tY2FsbGVkIGZyZWUgZ3Jh bW1hciwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IGNhbiBhcHBlYXIgYWxtb3N0IGFueXdoZXJlIHdp dGhpbiBicmlkaSB3aXRob3V0IGRpc3J1cHRpbmcgdGhlIGJyaWRpJ3MgZ3JhbW1hciBvciBhbnkg Z3JhbW1hdGljYWwgY29uc3RydWN0cy4KCkluIExvamJhbiBncmFtbWFyLCBhbiBhdHRpdHVkaW5h bCBhcHBsaWVzIHRvIHRoZSBwcmV2aW91cyB3b3JkLiBJZiB0aGF0IHByZXZpb3VzIHdvcmQgaXMg YSB3b3JkIHdoaWNoIGJlZ2lucyBhIGNvbnN0cnVjdCAobGlrZSAnJy5pJycgb3IgJydsbycnKSwg aXQgYXBwbGllcyB0byB0aGUgZW50aXJlIGNvbnN0cnVjdC4gTGlrZXdpc2UsIGlmIHRoZSBhdHRp dHVkaW5hbCBmb2xsb3dzIGEgd29yZCB3aGljaCBlbmRzIGEgY29uc3RydWN0IGxpa2UgJydrdScn LCBpdCBhcHBsaWVzIHRvIHRoZSBlbmRlZCBjb25zdHJ1Y3QuCgoKCkxldCdzIGhhdmUgdHdvIGF0 dGl0dWRpbmFscyB0byBtYWtlIHNvbWUgZXhhbXBsZXM6CgpfXycnLnVpJydfXzogYXR0aXR1ZGlu YWw6IHNpbXBsZSBwdXJlIGVtb3Rpb246IGhhcHBpbmVzcyAtIHVuaGFwcGluZXNzCgpfXycnemEn YScnX186IGF0dGl0dWRpbmFsOiBldmlkZW50aWFsOiBJIGRpcmVjdGx5IG9ic2VydmUKCgoKTm90 ZSB0aGF0IGluIHRoZSBkZWZpbml0aW9uIG9mICcnLnVpJycsIHRoZXJlIGFyZSBsaXN0ZWQgdHdv IGVtb3Rpb25zLCBoYXBwaW5lc3MgYW5kIHVuaGFwcGluZXNzLiBUaGlzIG1lYW5zIHRoYXQgJycu dWknJyBpcyBkZWZpbmVkIGFzIGhhcHBpbmVzcywgd2hpbGUgaXRzIOKAnG5lZ2F0aW9u4oCdLCBt ZWFucyB1bmhhcHBpbmVzcy4g4oCcTmVnYXRpb27igJ0gbWlnaHQgYmUgdGhlIHdyb25nIHdvcmQg aGVyZS4gVGVjaG5pY2FsbHksIHRoZSBvdGhlciBkZWZpbml0aW9uIG9mICcnLnVpJycgaXMgYW5v dGhlciBjb25zdHJ1Y3QsICcnLnVpIG5haScnLiBNb3N0IG9mIHRoZSB0aW1lLCB0aGUgc2Vjb25k IGRlZmluaXRpb24gb2YgYXR0aXR1ZGluYWxzIC0gdGhlIG9uZXMgc3VmZml4ZWQgd2l0aCAnJ25h aScnIC0gcmVhbGx5IGlzIHRoZSBuZWdhdGlvbiBvZiB0aGUgYmFyZSBhdHRpdHVkaW5hbC4gT3Ro ZXIgdGltZXMsIG5vdCBzbyBtdWNoLgoKX18nJ25haScnX18gbWlzYy4gbmVnYXRpb24gLSBhdHRh Y2hlZCB0byBhdHRpdHVkaW5hbHMsIGl0IGNoYW5nZXMgdGhlIG1lYW5pbmcgaW50byB0aGUgYXR0 aXR1ZGluYWwncyAibmVnYXRpb24iCgoKCkFuZCBzb21lIG1vcmUgc2VsYnJpLCBqdXN0IGZvciB0 aGUgaGVjayBvZiBpdDoKCl9fJydjaXRrYScnX18g4oCTIHgxIGVhdHMgeDIKCl9fJydwbGlzZScn X18g4oCTIHgxIGlzIGFuIGFwcGxlIG9mIHN0cmFpbi90eXBlIHgyCgoKClRoZSBzZW50ZW5jZSAn J2RvIGNpdGthIGxvIHBsaXNlIGt1IC51aScnLCBtZWFucyDigJxZb3UgZWF0IGFuIGFwcGxlLCB5 YXkh4oCdIChlc3BlY2lhbGx5IGV4cHJlc3NpbmcgdGhhdCBpdCBpcyB0aGUgX19hcHBsZV9fIHRo YXQgdGhlIHNwZWFrZXIgaXMgaGFwcHkgYWJvdXQsIG5vdCB0aGUgZWF0aW5nLCBvciB0aGUgZmFj dCB0aGF0IGl0IHdhcyB5b3UuKSBJbiB0aGUgc2VudGVuY2UgJydkbyB6YSdhIGNpdGthIGxvIHBs aXNlIGt1JycsIHRoZSBzcGVha2VyIGRpcmVjdGx5IG9ic2VydmVzIHRoYXQgaXQgaXMgaW5kZWVk IHRoZSBfX+KAnHlvdeKAnV9fLCB3aG8gZWF0cyBhbiBhcHBsZSBhcyBvcHBvc2VkIHRvIHNvbWVv bmUgZWxzZS4KCgoKSWYgYW4gYXR0aXR1ZGluYWwgaXMgcGxhY2VkIGF0IHRoZSBiZWdpbm5pbmcg b2YgdGhlIGJyaWRpLCBpdCBpcyB1bmRlcnN0b29kIHRvIGFwcGx5IHRvIGFuIGV4cGxpY2l0IG9y IGltcGxpY2l0ICcnLmknJywgdGh1cyBhcHBseWluZyB0byB0aGUgZW50aXJlIGJyaWRpOgoKJycu dWkgemEnYSBkbyBkdW5kYSBsbyBwbGlzZSBrdSBtaScnIOKAkyDigJxZYXksIEkgb2JzZXJ2ZSB0 aGF0IHlvdSBnaXZlIGFuL3NvbWUgYXBwbGUgdG8gbWUh4oCdCgoKCicnbWkgdmVjbnUgLnVpIG5h aSBsbyB6ZGFuaSBrdScnIOKAnEkgc2VsbCAod2hpY2ggc3Vja3MhKSBhIGhvbWXigJ0uCgoKClRy eSBpdCBvdXQgd2l0aCBhIGZldyBleGFtcGxlcy4gRmlyc3QsIHRob3VnaCwgaGVyZSBhcmUgc29t ZSBtb3JlIGF0dGl0dWRpbmFsczoKCl9fJycudSd1JydfXyBhdHRpdHVkaW5hbDogc2ltcGxlIHB1 cmUgZW1vdGlvbjogZ3VpbHQgLSByZW1vcnNlbGVzc25lc3MgLSBpbm5vY2VuY2UuCgpfXycnLm9p JydfXyBhdHRpdHVkaW5hbDogY29tcGxleCBwdXJlIGVtb3Rpb246IGNvbXBsYWludCAtIHBsZWFz dXJlLgoKX18nJy5pdScnX18gYXR0aXR1ZGluYWw6IG1pc2NlbGxhbmVvdXMgcHVyZSBlbW90aW9u OiBsb3ZlIC0gaGF0ZS4KCgoKTG9vayBhdCB0aGF0LCBhIHdvcmQgd2l0aCB0aHJlZSBlbW90aW9u cyBpbiB0aGUgZGVmaW5pdGlvbiEgVGhlIG1pZGRsZSBvbmUgaXMgYWNjZXNzZWQgYnkgc3VmZml4 aW5uZyB3aXRoICcnY3UnaScnLiBJdCdzIGNvbnNpZGVyZWQgdGhlIG1pZHBvaW50IG9mIHRoZSBl bW90aW9uLgoKX18nJ2N1J2knJ19fIGF0dGl0dWRpbmFsIG1pZHBvaW50IHNjYWxhcjogYXR0YWNo IHRvIGF0dGl0dWRpbmFsIHRvIGNoYW5nZSB0aGUgbWVhbmluZyB0byB0aGUgIm1pZHBvaW50IiBv ZiB0aGUgZW1vdGlvbi4KCgoKVHJ5IHNheWluZyDigJxJIGdpdmUgc29tZXRoaW5nIHRvIGEgR2Vy bWFuLCB3aG8gSSBsb3Zl4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBkdW5kYSBmaSBs byBkb3RjbyBrdSAuaXUnJyBvciAnJ3pvJ2UnJyBpbnN0ZWFkIG9mICcnZmknJ35+CgoKCk5vdyDi gJxBYWgsIEkgZWF0IGEgeWVsbG93IGFwcGxl4oCdCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnLm9p IG5haSBtaSBjaXRrYSBsbyBwZWx4dSBwbGlzZSBrdScnfn4KCgoKTGV0J3MgaGF2ZSBhbm90aGVy IGF0dGl0dWRpbmFsIG9mIGEgZGlmZmVyZW50IGtpbmQgdG8gaWxsdXN0cmF0ZSBzb21ldGhpbmcg cGVjdWxpYXI6CgonJy5laScnIEF0dGl0dWRpbmFsOiBjb21wbGV4IHByb3Bvc2l0aW9uYWwgZW1v dGlvbjogb2JsaWdhdGlvbiAtIGZyZWVkb20uCgoKClNvLCBxdWl0ZSBlYXN5OiDigJxJIGhhdmUg dG8gZ2l2ZSB0aGUgYXBwbGUgYXdheeKAnSBpcyAnJ21pIGR1bmRhIC5laSBsbyBwbGlzZSBrdScn LCByaWdodD8gSXQgaXMsIGFjdHVhbGx5ISBXaGVuIHlvdSB0aGluayBhYm91dCBpdCwgdGhhdCdz IHdlaXJkLiBXaHkgaXMgaXQgdGhhdCBhbGwgdGhlIG90aGVyIGF0dGl0dWRpbmFscyB3ZSBoYXZl IHNlZW4gc28gZmFyIGV4cHJlc3NlcyB0aGUgc3BlYWtlcidzIGZlZWxpbmcgYWJvdXQgdGhlIGJy aWRpLCBidXQgdGhpcyBvbmUgYWN0dWFsbHkgY2hhbmdlcyB3aGF0IHRoZSBicmlkaSBtZWFucz8g U3VyZWx5LCBieSBzYXlpbmcg4oCcSSBoYXZlIHRvIGdpdmUgdGhlIGFwcGxlIGF3YXnigJ0sIHdl IHNheSBub3RoaW5nIGFib3V0IHdoZXRoZXIgdGhlIGFwcGxlIGFjdHVhbGx5IGlzIGJlaW5nIGdp dmVuIGF3YXkuIElmIEkgaGFkIHVzZWQgJycudWknJywgaG93ZXZlciwgSSB3b3VsZCBhY3R1YWxs eSBoYXZlIHN0YXRlZCB0aGF0IEkgZ2F2ZSB0aGUgYXBwbGUgYXdheSwgYW5kIHRoYXQgSSB3YXMg aGFwcHkgYWJvdXQgaXQuIFdoYXQncyB0aGF0IGFsbCBhYm91dD8KCgoKVGhpcyBpc3N1ZSwgZXhh Y3RseSBob3cgYXR0aXR1ZGluYWxzIGNoYW5nZSB0aGUgY29uZGl0aW9ucyBvbiB3aGljaCBhIGJy aWRpIGlzIHRydWUsIGlzIGEgc3ViamVjdCBvZiBhIG1pbm9yIGRlYmF0ZS4gVGhlIG9mZmljaWFs LCDigJx0ZXh0Ym9va+KAnSBydWxlLCB3aGljaCBwcm9iYWJseSB3b24ndCBiZSBjaGFuZ2VkLCBp cyB0aGF0IHRoZXJlIGlzIGEgZGlzdGluY3Rpb24gYmV0d2VlbiDigJxwdXJlIGVtb3Rpb25z4oCd IGFuZCDigJxwcm9wb3NpdGlvbmFsIGVtb3Rpb25z4oCdLiBPbmx5IHByb3Bvc3Rpb25hbCBlbW90 aW9ucyBjYW4gY2hhbmdlIHRoZSB0cnV0aCBjb25kaXRpb25zLCB3aGlsZSBwdXJlIGVtb3Rpb25z IGNhbm5vdC4gSW4gb3JkZXIgdG8gZXhwcmVzcyBhIHByb3Bvc2l0aW9uYWwgZW1vdGlvbmFsIGF0 dGl0dWRpbmFsIHdpdGhvdXQgY2hhbmdpbmcgdGhlIHRydXRoIHZhbHVlIG9mIHRoZSBicmlkaSwg eW91IGNhbiBqdXN0IHNlcGFyYXRlIGl0IGZyb20gdGhlIGJyaWRpIHdpdGggJycuaScnLiBUaGVy ZSBpcyBhbHNvIGEgd29yZCBmb3IgZXhwbGljaXRseSBjb25zZXJ2aW5nIG9yIGNoYW5naW5nIHRo ZSB0cnV0aCBjb25kaXRpb25zIG9mIGEgYnJpZGk6CgoKCl9fJydkYSdpJydfXyBhdHRpdHVkaW5h bDogZGlzY3Vyc2l2ZTogc3VwcG9zaW5nIC0gaW4gZmFjdAoKU2F5aW5nICcnZGEnaScnIGluIGEg YnJpZGkgY2hhbmdlcyB0aGUgdHJ1dGggY29uZGl0aW9ucyB0byBoeXBvdGhldGljYWwsIHdoaWNo IGlzIHRoZSBkZWZhdWx0IHVzaW5nIHByb3Bvc2l0aW9uYWwgYXR0aXR1ZGluYWxzLiBTYXlpbmcg JydkYSdpIG5haScnIGNoYW5nZXMgdGhlIHRydXRoIGNvbmRpdGlvbiB0byB0aGUgbm9ybWFsLCB3 aGljaCBpcyBkZWZhdWx0IHVzaW5nIHB1cmUgYXR0aXR1ZGluYWxzLgoKCgpTbywgd2hhdCdzIHR3 byB3YXlzIG9mIHNheWluZyDigJxJIGdpdmUgdGhlIGFwcGxlIGF3YXnigJ0/IChhbmQgZmVlbCBv YmxpZ2F0aW9uIGFib3V0IGl0KQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgZHVuZGEgbG8g cGxpc2UgLmkgLmVpJycgIGFuZCAnJ21pIGR1bmRhIGRhJ2kgbmFpIC5laSBsbyBwbGlzZScnfn4K CgoKVGhlIGZlZWxpbmcgb2YgYW4gYXR0aXR1ZGluYWwgY2FuIGJlIHN1YnNjcmliZWQgdG8gc29t ZW9uZSBlbHNlIHVzaW5nICcnZGFpJycuIFVzdWFsbHkgaW4gb3JkaW5hcnkgc3BlZWNoLCB0aGUg YXR0aXR1ZGluYWwgaXMgc3Vic2NyaWJlZCB0byB0aGUgbGlzdGVuZXIsIGJ1dCBpdCBkb2Vzbid0 IGhhdmUgdG8gYmUgc28uIEFsc28sIGJlY2F1c2UgdGhlIHdvcmQgaXMgZ2xvc3NlZCDigJxlbXBh dGh54oCdIChmZWVsaW5nIG90aGVycyBlbW90aW9ucyksIHNvbWUgTG9qYmFuaXN0cyBtaXN0YWtl bmx5IHRoaW5rIHRoYXQgdGhlIHNwZWFrZXIgbXVzdCBzaGFyZSB0aGUgZW1vdGlvbiBiZWluZyBz dWJzY3JpYmVkIHRvIG90aGVycy4KCl9fJydkYWknJ19fIGF0dGl0dWRpbmFsIG1vZGlmeWVyOiBF bXBhdGh5IChzdWJzY3JpYmVzIGF0dGl0dWRpbmFsIHRvIHNvbWVvbmUgZWxzZSwgdW5zcGVjaWZp ZWQpCgpFeGFtcGxlOiAnJ3UnaSAub2kgZGFpIGNpdGthIHRpJycgLSDigJxIYSBoYSwgdGhpcyB3 YXMgZWF0ZW4hIFRoYXQgbXVzdCBoYXZlIGh1cnQh4oCdCgoKCldoYXQgb2Z0ZW4gdXNlZCBwaHJh c2UgY291bGQgJycub2kgdSdpIGRhaScnIG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk64oCc T3VjaCwgdmVyeSBmdW5ueS7igJ1+fgoKCgpBbmQgYW5vdGhlciBvbmUgdG8gdGVzdCB5b3VyIGtu b3dsZWRnZTogVHJ5IHRvIHRyYW5zbGF0ZSDigJxIZSB3YXMgc29ycnkgaGUgc29sZCBhIGhvbWXi gJ0gKHJlbWVtYmVyaW5nLCB0aGF0IHRlbnNlIGlzIGltcGxpZWQgYW5kIG5lZWQgbm90IGJlIHNw ZWNpZmllZC4gQWxzbywg4oCcaGXigJ0gY291bGQgYmUgb2J2aW91cyBmcm9tIGNvbnRleHQpCgoK CkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd1J3UgZGFpIHZlY251IGxvIHpkYW5pIGt1Jyd+fgoKCgpM YXN0bHksIHRoZSBpbnRlbnNpdHkgb2YgYW4gYXR0aXR1ZGluYWwgY2FuIGJlIHNwZWNpZmllZCB1 c2luZyBjZXJ0YWluIHdvcmRzLiBUaGVzZSBjYW4gYmUgdXNlZCBhZnRlciBhbiBhdHRpdHVkaW5h bCwgb3IgYW4gYXR0aXR1ZGluYWwgd2l0aCAnJ25haScnIG9yICcnY3UnaScnIHN1ZmZpeGVkLiBJ dCdzIGxlc3MgY2xlYXIgd2hhdCBoYXBwZW5zIHdoZW4geW91IGF0dGFjaCBpdCB0byBvdGhlciB3 b3JkcywgbGlrZSBhIHNlbGJyaSwgYnV0IGl0J3MgbW9zdGx5IHVuZGVyc3Rvb2QgYXMgaW50ZW5z aWZ5aW5nIG9yIHdlYWtlbmluZyB0aGUgc2VsYnJpIGluIHNvbWUgdW5zcGVjaWZpZWQgd2F5OgoK fHwgTW9kaWZ5aW5nIHdvcmQgIHwgSW50ZW5zaXR5ICAKCiBjYWl8ICAgRXh0cmVtZQoKIHNhaXwg ICBTdHJvbmcKCiAobm9uZSl8ICAgVW5zcGVjaWZpZWQgKG1lZGl1bSkKCiBydSdlICB8ICAgV2Vh a3x8CgoKCldoYXQgZW1vdGlvbiBpcyBleHByZXNzZWQgdXNpbmcgJycudSdpIG5haSBzYWknJyA/ CgpfXycnLnUnaScnX186IGF0dGl0dWRpbmFsOiBzaW1wbGUgcHVyZSBlbW90aW9uOiBhbXVzZW1l bnQgLSB3ZWFyaW5lc3MKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTpTdHJvbmcgd2VhcmluZXNzfn4K CgoKQW5kIGhvdyB3b3VsZCB5b3UgZXhwcmVzcyB0aGF0IHlvdSBhcmUgbWlsZGx5IHJlbW9yc2Vs ZXNzPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnLnUndSBjdSdpIHJ1J2UnJ35+CgoKCiEhTG9q YmFuIGxlc3NvbnMg4oCTIGxlc3NvbiBmaXZlIChyZW9yZGVyaW5nIHBsYWNlcyB3aXRoIFNFKQoK QmVmb3JlIHdlIHZlbnR1cmUgaW50byB0aGUgdGVycml0b3J5IG9mIG1vcmUgY29tcGxleCBjb25z dHJ1Y3RzLCB5b3Ugc2hvdWxkIGxlYXJuIGFub3RoZXIgbWVjaGFuaXNtIGZvciByZW9yZGVyaW5n IHRoZSBzdW10aSBvZiBhIHNlbGJyaS4gVGhpcywgYXMgd2Ugd2lsbCBzaG93LCBpcyB2ZXJ5IHVz ZWZ1bCBmb3IgbWFraW5nIGRlc2NyaXB0aW9uLWxpa2Ugc3VtdGkgKHRoZSBraW5kIG9mIHN1bXRp IHdpdGggJydsbycnKS4KCkNvbnNpZGVyIHRoZSBzZW50ZW5jZSDigJxJIGVhdCBhIGdpZnTigJ0s IHdoaWNoIG1pZ2h0IGJlIGFwcHJvcHJpYXRlIGlmIHRoYXQgZ2lmdCBpcyBhbiBhcHBsZS4gVG8g dHJhbnNsYXRlIHRoaXMsIGl0IHdvdWxkIHNlZW0gbmF0dXJhbCB0byBsb29rIHVwIGEgc2VsYnJp IG1lYW5pbmcg4oCcZ2lmdOKAnSBiZWZvcmUgY29udGludWluZy4gSG93ZXZlciwgaWYgb25lIGxv b2tzIGNhcmVmdWxseSBhdCB0aGUgZGVmaW5pdGlvbiBvZiAnJ2R1bmRhJycsIHgxIGdpdmVzIHgy IHRvIHgzLCBvbmUgcmVhbGl6ZXMgdGhhdCB0aGUgeDIgb2YgJydkdW5kYScnIGlzIHNvbWV0aGlu ZyBnaXZlbiDigJMgYSBnaWZ0LgoKU28sIHRvIGV4cHJlc3MgdGhhdCBzZW50ZW5jZSwgd2UgY2Fu J3Qgc2F5ICcnbWkgY2l0a2EgbG8gZHVuZGEga3UnJywgYmVjYXVzZSAnJ2xvIGR1bmRhIGt1Jycg d291bGQgYmUgdGhlIHgxIG9mICcnZHVuZGEnJywgd2hpY2ggaXMgYSBkb25vciBvZiBhIGdpZnQu IENhbm5pYmFsaXNtIGFzaWRlLCB3ZSBkb24ndCB3YW50IHRvIHNheSB0aGF0LiBXaGF0IHdlIHdh bnQgaXMgYSB3YXkgdG8gZXh0cmFjdCB0aGUgeDIgb2YgYSBzZWxicmkuCgpUaGlzIGlzIG9uZSBl eGFtcGxlIHdoZXJlIGl0IGlzIHVzZWZ1bCB0byB1c2UgdGhlIHdvcmQgJydzZScnLiBXaGF0ICcn c2UnJyBkb2VzIGlzIHRvIG1vZGlmeSBhIHNlbGJyaSBzdWNoIHRoYXQgdGhlIHgxIGFuZCB4MiBv ZiB0aGF0IHNlbGJyaSB0cmFkZSBwbGFjZXMuIFRoZSBjb25zdHJ1Y3Qgb2YgJydzZScnICsgc2Vs YnJpIGlzIG9uIGl0cyBvd24gY29uc2lkZXJlZCBvbmUgc2VsYnJpLiBMZXQncyB0cnkgd2l0aCBh biBvcmRpbmFyeSBzZW50ZW5jZToKCl9fJydmYW52YScnX18gPSDigJx4MSB0cmFuc2xhdGVzIHgy IHRvIGxhbmd1YWdlIHgzIGZyb20gbGFuZ3VhZ2UgeDQgd2l0aCByZXN1bHQgb2YgdHJhbnNsYXRp b24geDXigJ0KCicndGkgc2UgZmFudmEgbWknJyA9ICcnbWkgZmFudmEgdGknJwoKVGhpcyBpcyB0 cmFuc2xhdGVkIGJ5IG1lICg9IEkgdHJhbnNsYXRlIHRoaXMpLiBPZnRlbiwgYnV0IG5vdCBhbHdh eXMsIGJyaWRpIHdpdGggJydzZScnLWNvbnN0cnVjdHMgYXJlIHRyYW5zbGF0ZWQgdG8gc2VudGVu Y2VzIHdpdGggdGhlIHBhc3NpdmUgdm9pY2UsIHNpbmNlIHRoZSB4MSBpcyBvZnRlbiB0aGUgb2Jq ZWN0IHRha2luZyBhY3Rpb24uCgonJ3NlJycgaGFzIGl0cyBvd24gZmFtaWx5IG9mIHdvcmRzLiBB bGwgb2YgdGhlbSBzd2FwIGEgZGlmZmVyZW50IHBsYWNlIHdpdGggdGhlIHgxLgoKfHxzZQl8c3dh cCB4MSBhbmQgeDIKCnRlCXxzd2FwIHgxIGFuZCB4MwoKdmUJfHN3YXAgeDEgYW5kIHg0Cgp4ZQl8 c3dhcCB4MSBhbmQgeDV8fAoKTm90ZSB0aGF0IHMsIHQsIHYsIGFuZCB4IGFyZSBjb25zZWN1dGl2 ZSBjb25zb25hbnRzIGluIHRoZSBsb2piYW4gYWxwaGFiZXQuCgoKClNvOiBVc2luZyB0aGlzIGtu b3dsZWRnZSwgd2hhdCB3b3VsZCAnJ3RpIHhlIGZhbnZhIHRpJycgbWVhbj8KCgoKQW5zd2VyOiB+ fmdyZXksZ3JleTrigJxUaGlzIGlzIGEgdHJhbnNsYXRpb24gb2YgdGhpc+KAnSAob3IgJydmYW52 YSB0aSBmdSB0aScnKX5+CgoKCicnc2UnJyBhbmQgaXRzIGZhbWlseSBjYW4gb2YgY291cnNlIGJl IGNvbWJpbmVkIHdpdGggJydmYScnIGFuZCBpdHMgZmFtaWx5LiBUaGUgcmVzdWx0IGNhbiBiZSB2 ZXJ5IGNvbmZ1c2luZyBpbmRlZWQsIGlmIHlvdSB3aXNoIHRvIG1ha2UgaXQgc286CgpfXycna2xh bWEnJ19fID0g4oCceDEgdHJhdmVscy9nb2VzIHRvIHgyIGZyb20geDMgdmlhIHg0IHVzaW5nIHg1 IGFzIHRyYW5zcG9ydGF0aW9uIGRldmljZeKAnQoKJydmbyBsbyB6ZGFuaSBrdSB0ZSBrbGFtYSBm ZSBkbyB0aSBmYSBtaScnID0gJydtaSB0ZSBrbGFtYSBkbyB0aSBsbyB6ZGFuaSBrdScnIGFuZCBz aW5jZSAnJ3RlJycgZXhjaGFuZ2VzIHgxIGFuZCB4MzogPSAnJ3RpIGtsYW1hIGRvIG1pIGxvIHpk YW5pIGt1JycKCuKAnFRoaXMgdHJhdmVscyB0byB5b3UgZnJvbSBtZSB2aWEgYSBob21lLuKAnSBP ZiBjb3Vyc2UsIG5vIG9uZSB3b3VsZCBtYWtlIHN1Y2ggYSBzZW50ZW5jZSBleGNlcHQgdG8gY29u ZnVzZSBwZW9wbGUsIG9yIGNydWVsbHkgdG8gdGVzdCB0aGVpciB1bmRlcnN0YW5kaW5nIG9mIExv amJhbiBncmFtbWFyLgoKQW5kIHRodXMsIHdlIGhhdmUgY29tZSB0byB0aGUgcG9pbnQgd2hlcmUg d2UgY2FuIHNheSDigJxJIGVhdCBhIGdpZnQu4oCdLiBTaW1wbHkgZXhjaGFuZ2UgdGhlIHN1bXRp IHBsYWNlcyBvZiAnJ2R1bmRhJycgdG8gZ2V0IHRoZSBnaWZ0IHRvIGJlIHgxLCB0aGVuIGV4dHJh Y3QgdGhpcyBuZXcgeDEgd2l0aCAnJ2xvJycuLi4nJ2t1JycuIFNvLCBob3cgd291bGQgeW91IHNh eSBpdD8KCk9uZSAocG9zc2libGUpIGFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBjaXRrYSBsbyBz ZSBkdW5kYSBrdScnfn4KClRoaXMgc2hvd3Mgb25lIG9mIHRoZSBtYW55IHVzZXMgZm9yICcnc2Un JyBhbmQgaXRzIGZhbWlseS4KCgoKCgohIUxvamJhbiBsZXNzb25zIOKAkyBsZXNzb24gc2l4IChh YnN0cmFjdGlvbnMpCgpTbyBmYXIgd2UgaGF2ZSBvbmx5IGV4cHJlc3NlZCBzaW5nbGUgc2VudGVu Y2VzIG9uZSBhdCBhIHRpbWUuIFRvIGV4cHJlc3MgbW9yZSBjb21wbGV4IHRoaW5ncywgaG93ZXZl ciwgeW91IG9mdGVuIG5lZWQgc3Vib3JkaW5hdGUgc2VudGVuY2VzLiBMdWNraWx5LCB0aGVzZSBh cmUgbXVjaCBlYXNpZXIgaW4gTG9qYmFuIHRoYW4gd2hhdCBvbmUgd291bGQgZXhwZWN0LgoKV2Ug Y2FuIGJlZ2luIHdpdGggYW4gZXhhbXBsZSB0byBkZW1vbnN0cmF0ZSB0aGlzOiDigJxJIGFtIGhh cHB5IHRoYXQgeW91IGFyZSBteSBmcmllbmQu4oCdIEhlcmUsIHRoZSBtYWluIGJyaWRpIGlzIOKA nEkgYW0gaGFwcHkgdGhhdCBYLuKAnSwgYW5kIHRoZSBzdWItYnJpZGkgaXMg4oCcWW91IGFyZSBt eSBmcmllbmQu4oCdIExvb2tpbmcgYXQgdGhlIGRlZmluaXRpb24gZm9yIOKAnGhhcHB54oCdLCB3 aGljaCBpcyAnJ2dsZWtpJyc6CgpfXycnZ2xla2knJ19fIOKAnHgxIGlzIGhhcHB5IGFib3V0IHgy IChldmVudC9zdGF0ZSnigJ0KCk9uZSBzZWVzIHRoYXQgdGhlIHgyIG5lZWRzIHRvIGJlIGFuIGV2 ZW50IG9yIGEgc3RhdGUuIFRoaXMgaXMgbmF0dXJhbCwgYmVjYXVzZSBvbmUgY2Fubm90IGJlIGhh cHB5IGFib3V0IGFuIG9iamVjdCBpbiBpdHNlbGYsIG9ubHkgYWJvdXQgc29tZSBzdGF0ZSB0aGUg b2JqZWN0IGlzIGluLiBCdXQgYWxhcyEgT25seSBicmlkaSBjYW4gZXhwcmVzcyBhIHN0YXRlIG9y IGFuIGV2ZW50LCBhbmQgb25seSBzdW10aSBjYW4gZmlsbCB0aGUgeDIgb2YgJydnbGVraScnIQoK QXMgeW91IG1pZ2h0IGhhdmUgZ3Vlc3NlZCwgdGhlcmUgaXMgYSBzb2x1dGlvbi4gVGhlIHdvcmRz ICcnc3UndScnLi4uJydrZWknJyBpcyBhIGdlbmVyaWMg4oCcY29udmVydCBicmlkaSB0byBzZWxi cmnigJ0gZnVuY3Rpb24sIGFuZCB3b3JrcyBqdXN0IGxpa2UgJydsbycn4oCmJydrdScnLgoKX18n J3N1J3UnJ19fIHgxIGlzIGFuIGFic3RyYWN0aW9uIG9mIHticmlkaX0gb2YgdHlwZSB4MgoKX18n J2tlaScnX18gZW5kIGFic3RyYWN0aW9uCgoKCkV4YW1wbGU6CgpfXycnbWVsYmknJ19fIHgxIGlz IGJlYXV0aWZ1bCB0byB4Mi4KCl9fJydkYW5zdScnX18geDEgZGFuY2VzIHRvIGFjY29tcGFuaW1l bnQvbXVzaWMvcmh5dGhtIHgyLgoKJydtZWxiaSBzdSd1IGRhbnN1IGtlaScnIC0g4oCcQmVhdXRp ZnVsIGRhbmNpbmfigJ0v4oCcQmVhdXRpZnVsIGRhbmNl4oCdCgoKCkl0J3MgdXN1YWxseSBoYXJk IHRvIGZpbmQgZ29vZCB1c2VzIG9mIGEgYnJpZGkgYXMgYSBzZWxicmkuIEhvd2V2ZXIsIHNpbmNl ICcnc3UndSBCUklESSBrZWknJyBpcyBhIHNlbGJyaSwgb25lIGNhbiBjb252ZXJ0IGl0IHRvIGEg c3VtdGkgdXNpbmcgJydsbycnLi4uJydrdScnLgoKTm93IHdlIGhhdmUgdGhlIGVxdWlwbWVudCB0 byBleHByZXNzIOKAnEkgYW0gaGFwcHkgdGhhdCB5b3UgYXJlIG15IGZyaWVuZOKAnS4gVHJ5IGl0 IG91dCEKCl9fJydwZW5kbycnX18g4oCceDEgaXMgYSBmcmllbmQgb2YgeDLigJ0KCgoKQW5zd2Vy OiB+fmdyZXksZ3JleTonJ21pIGdsZWtpIGxvIHN1J3UgZG8gcGVuZG8gbWkga2VpIGt1Jyd+fgoK CgpIb3dldmVyLCAnJ3N1J3UnJ+KApicna2VpJycgZG9lcyBub3Qgc2VlIG11Y2ggdXNlLiBQZW9w bGUgcHJlZmVyIHRvIHVzZSB0aGUgbW9yZSBzcGVjaWZpYyB3b3JkcyAnJ251JyfigKYnJ2tlaScn IGFuZCAnJ2R1J3UnJ+KApicna2VpJycuIFRoZXkgd29yayB0aGUgc2FtZSB3YXksIGJ1dCBtZWFu IHNvbWV0aGluZyBkaWZmZXJlbnQuICcnbnXigKZrZWknJyB0cmVhdHMgdGhlIGJyaWRpIGluIGJl dHdlZW4gYXMgYW4gZXZlbnQgb3Igc3RhdGUsIGFuZCAnJ2R1J3XigKZrZWknJyB0cmVhdHMgaXQg YXMgYW4gYWJzdHJhY3QgYnJpZGksIGZvciBleHByZXNzaW5nIHRoaW5ncyBsaWtlIGlkZWFzLCB0 aG91Z2h0cyBvciB0cnV0aHMuIEFsbCB0aGVzZSB3b3JkcyAoZXhjZXB0ICcna2VpJycpIGFyZSBj YWxsZWQgYWJzdHJhY3RvcnMuIFRoZXJlIGFyZSBtYW55IG9mIHRoZW0sIGFuZCBvbmx5IGZldyBh cmUgdXNlZCBtdWNoLiAnJ3N1J3XigKZrZWknJyBpcyBhIGdlbmVyYWwgYWJzdHJhY3RvciwgYW5k IHdpbGwgd29yayBpbiBhbGwgY2FzZXMuCgoKClVzZSAnJ251JycgdG8gc2F5IOKAnEknbSBoYXBw eSBhYm91dCB0YWxraW5nIHRvIHlvdS7igJ0KCl9fJyd0YXZsYScnX18geDEgdGFsa3MgdG8geDIg YWJvdXQgc3ViamVjdCB4MyBpbiBsYW5ndWFnZSB4NC4KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTon J21pIGdsZWtpIGxvIG51IHRhdmxhIGRvIGtlaSBrdScnIChub3RpY2UgYm90aCB0aGUgRW5nbGlz aCBhbmQgdGhlIExvamJhbiBpcyB2YWd1ZSBhcyB0byB3aG8gaXMgZG9pbmcgdGhlIHRhbGtpbmcp Ln5+CgoKCk90aGVyIGltcG9ydGFudCBhYnN0cmFjdG9ycyBpbmNsdWRlOiAnJ2thLi4ua2VpJycg KHByb3BlcnR5L2FzcGVjdCBhYnN0cmFjdGlvbiksICcnc2knby4uLmtlaScnIChjb25jZXB0L2lk ZWEgYWJzdHJhY3Rpb24pLCAnJ25pLi4ua2VpJycgKHF1YW50aXR5IGFic3RyYWN0aW9uKSBhbW9u ZyBvdGhlcnMuIFRoZSBtZWFuaW5ncyBvZiB0aGVzZSBpcyBhIGNvbXBsaWNhdGVkIG1hdHRlciwg YW5kIHdpbGwgYmUgZGlzY3Vzc2VkIG11Y2ggbGF0ZXIsIGluIGxlc3NvbiB0d2VudHktbmluZS4g Rm9yIG5vdywgeW91J2xsIGhhdmUgdG8gZG8gd2l0aG91dCB0aGVtLgoKCgpJdCBpcyBpbXBvcnRh bnQgdG8gbm90aWNlIHRoYXQgc29tZSBhYnN0cmFjdG9ycyBoYXZlIHNldmVyYWwgc3VtdGkgcGxh Y2VzLiBBcyBhbiBleGFtcGxlLCAnJ2R1J3UnJyBjYW4gYmUgbWVudGlvbmVkLiAnJ2R1J3UnJyBp cyBkZWZpbmVkOgoKJydkdSd1JycgPSDigJxhYnN0cmFjdG9yLiB4MSBpcyB0aGUgcHJlZGljYXRl L2JyaWRpIG9mIHticmlkaX0gZXhwcmVzc2VkIGluIHNlbnRlbmNlIHgy4oCdLgoKVGhlIG90aGVy IHN1bXRpIHBsYWNlcyBiZXNpZGVzIHgxIGlzIHJhcmVseSB1c2VkLCBidXQgJydsbyBzZSBkdSd1 IHticmlkaX0ga2VpIGt1JycgaXMgc29tZXRpbWVzIHVzZWQgYXMgYSBzdW10aSBmb3IgaW5kaXJl Y3QgcXVvdGF0aW9uOiDigJxJIHNhaWQgdGhhdCBJIHdhcyBnaXZlbiBhIGRvZ+KAnSBjYW4gYmUg d3JpdHRlbiAnJ21pIGN1c2t1IGxvIHNlIGR1J3UgbWkgdGUgZHVuZGEgbG8gZ2Vya3Uga3Uga2Vp IGt1JycsIGlmIHlvdSB3aWxsIHBhcmRvbiB0aGUgd2VpcmQgZXhhbXBsZS4KCl9fJydjdXNrdScn X18geDEgZXhwcmVzc2VzIHgyIHRvIHgzIHRocm91Z2ggbWVkaXVtIHg0CgpfXycnZ2Vya3UnJ19f IHgxIGlzIGEgZG9nIG9mIHJhY2UgeDIKCiEhTG9qYmFuIGxlc3NvbnMg4oCTIGxlc3NvbiBzZXZl biAoTk9JKQoKV2hpbGUgd2UncmUgYXQgaXQsIHRoZXJlJ3MgYW5vdGhlciB0eXBlIG9mIHN1Ym9y ZGluYXRlIGJyaWRpLiBUaGVzZSBhcmUgY2FsbGVkIHJlbGF0aXZlIGNsYXVzZXMuIFRoZXkgYXJl IHNlbnRlbmNlcyB3aGljaCBhZGQgc29tZSBkZXNjcmlwdGlvbiB0byBhIHN1bXRpLiBJbmRlZWQs IHRoZSDigJx3aGljaOKAnSBpbiB0aGUgcHJldmlvdXMgc2VudGVuY2UgbWFya2VkIHRoZSBiZWdp bm5pbmcgb2YgYSByZWxhdGl2ZSBjbGF1c2UgaW4gRW5nbGlzaCBkZXNjcmliaW5nIHJlbGF0aXZl IGNsYXVzZXMuIEluIExvamJhbiwgdGhleSBjb21lIGluIHR3byBmbGF2b3JzLCBhbmQgaXQgbWln aHQgYmUgd29ydGggZGlzdGluZ3Vpc2hpbmcgdGhlIHR3byBraW5kcyBiZWZvcmUgbGVhcm5pbmcg aG93IHRvIGV4cHJlc3MgdGhlbS4KClRoZSB0d28ga2luZHMgYXJlIGNhbGxlZCByZXN0cmljdGl2 ZSBhbmQgbm9uLXJlc3RyaWN0aXZlIChvciBpbmNpZGVudGlhbCkgcmVsYXRpdmUgY2xhdXNlcy4g QW4gZXhhbXBsZSB3b3VsZCBiZSBnb29kIGhlcmU6CgrigJxNeSBicm90aGVyLCB3aG8gaXMgdHdv IG1ldGVycyB0YWxsLCBpcyBhIHBvbGl0aWNpYW4u4oCdIFRoaXMgY2FuIGJlIHVuZGVyc3Rvb2Qg aW4gdHdvIHdheXMuIEkgY291bGQgaGF2ZSBzZXZlcmFsIGJyb3RoZXJzLCBpbiB3aGljaCBjYXNl IHNheWluZyBoZSBpcyB0d28gbWV0ZXJzIHRhbGwgd2lsbCBsZXQgeW91IGtub3cgd2hpY2ggYnJv dGhlciBJIGFtIHRhbGtpbmcgYWJvdXQuIE9yIEkgbWlnaHQgaGF2ZSBvbmx5IG9uZSBicm90aGVy LCBpbiB3aGljaCBjYXNlIEkgYW0gc2ltcGx5IGdpdmluZyB5b3UgYWRkaXRpb25hbCBpbmZvcm1h dGlvbi4KCgoKSW4gRW5nbGlzaCBhcyB3ZWxsIGFzIExvamJhbiB3ZSBkaXN0aW5ndWlzaCBiZXR3 ZWVuIHRoZXNlIHR3byBraW5kcyDigJMgdGhlIGZpcnN0IGludGVycHJldGF0aW9uIGlzIHJlc3Ry aWN0aXZlIChzaW5jZSBpdCBoZWxwcyByZXN0cmljdCB0aGUgcG9zc2libGUgYnJvdGhlcnMgSSBt aWdodCBiZSB0YWxraW5nIGFib3V0KSwgdGhlIHNlY29uZCBub24tcmVzdHJpY3RpdmUuIFdoZW4g c3BlYWtpbmcgRW5nbGlzaCwgY29udGV4dCBhbmQgdG9uZSBvZiB2b2ljZSAob3IgaW4gd3JpdHRl biBFbmdsaXNoLCBwdW5jdHVhdGlvbikgaGVscHMgdXMgZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGVz ZSB0d28sIGJ1dCBub3Qgc28gaW4gTG9qYmFuLiBMb2piYW4gdXNlcyB0aGUgY29uc3RydWN0cyAn J3BvaeKApmt1J28nJyBhbmQgJydub2nigKZrdSdvJycgZm9yIHJlc3RyaWN0aXZlIGFuZCBub24t cmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlcywgcmVzcGVjdGl2ZWx5LgoKTGV0J3MgaGF2ZSBh IExvamJhbmljIGV4YW1wbGUsIHdoaWNoIGNhbiBhbHNvIGV4cGxhaW4gb3VyIHN0cmFuZ2UgZ2lm dC1lYXRpbmcgYmVoYXZpb3VyIGluIHRoZSBleGFtcGxlIGluIGxlc3NvbiBmaXZlOgoKX18nJ25v aScnX18gYmVnaW4gbm9uLXJlc3RyaWN0aXZlIHJlbGF0aXZlIGNsYXVzZSAoY2FuIG9ubHkgYXR0 YWNoIHRvIHN1bXRpKQoKX18nJ3BvaScnX18gYmVnaW4gcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xh dXNlIChjYW4gb25seSBhdHRhY2ggdG8gc3VtdGkpCgpfXycna3UnbycnX18gZW5kIHJlbGF0aXZl IGNsYXVzZQoKCgonJ21pIGNpdGthIGxvIHNlIGR1bmRhIGt1IHBvaSBwbGlzZSBrdSdvJycgPSDi gJxJIGVhdCBhIGdpZnQgc3VjaCB0aGF0IChzb21ldGhpbmcgaXMpIGFuIGFwcGxl4oCdLiAKCkhl cmUgdGhlICcncG9p4oCma3UnbycnIGlzIHBsYWNlZCBqdXN0IGFmdGVyICcnbG8gc2UgZHVuZGEg a3UnJywgc28gaXQgYXBwbGllcyB0byB0aGUgZ2lmdC4gVG8gYmUgc3RyaWN0LCB0aGUgcmVsYXRp dmUgY2xhdXNlIGRvZXMgbm90IHNwZWNpZnkgd2hhdCBpdCBpcywgd2hpY2ggaXMgYW4gYXBwbGUs IGJ1dCBzaW5jZSB0aGUgcmVsYXRpdmUgY2xhdXNlIGFwcGxpZXMgdG8gdGhlIGdpZnQsIHdlIGNh biBzYWZlbHkgYXNzdW1lIHRoYXQgaXQgbWVhbnMgdGhhdCB0aGUgZ2lmdCBpcyBhbiBhcHBsZS4g QWZ0ZXIgYWxsLCBpbiB0aGUgY29udGV4dCBvZiBsZXNzb24gZml2ZSwgdGhpcyBzZWVtcyByZWFz b25hYmxlLiBJZiB3ZSB3YW50IHRvIGJlIGFic29sdXRlbHkgc3VyZSB0aGF0IGl0IGluZGVlZCB3 YXMgdGhlIGdpZnQgdGhhdCB3YXMgYW4gYXBwbGUsIHdlIHVzZSB0aGUgd29yZCAnJ2tlJ2EnJywg d2hpY2ggaXMgYSAnJ3N1bWthJ2knJyAoYSBMb2piYW4gcHJvbm91biwgbW9yZSBvbiB0aGVtIGxh dGVyKSByZXByZXNlbnRpbmcgdGhlIHN1bXRpIHdoaWNoIHRoZSByZWxhdGl2ZSBjbGF1c2UgaXMg YXR0YWNoZWQgdG8uCgpfXycna2UnYScnX18gc3Vta2EnaTsgcmVmZXJzIHRvIHRoZSBzdW10aSwg dG8gd2hpY2ggdGhlIHJlbGF0aXZlIGNsYXVzZSBpdCBhdHRhY2hlZC4KCgoKJycudWkgbWkgY2l0 a2EgbG8gc2UgZHVuZGEga3UgcG9pIGtlJ2EgcGxpc2Uga3UnbycnID0g4oCcWWF5LCBJIGVhdCBh IGdpZnQgd2hpY2ggaXMgYW4gYXBwbGXigJ0uCgpUbyB1bmRlcmxpbmUgdGhlIGRpZmZlcmVuY2Ug YmV0d2VlbiByZXN0cmljdGl2ZSBhbmQgbm9uLXJlc3RyaWN0aXZlIHJlbGF0aXZlIGNsYXVzZXMs IGhlcmUncyBhbm90aGVyIGV4YW1wbGU6CgoKCl9fJydsb2pibycnX18g4oCceDEgcmVmbGVjdHMg TG9qYmFuaWMgY3VsdHVyZS9jb21tdW5pdHkgaXMgYXNwZWN0IHgyOyB4MSBpcyBMb2piYW5pYy7i gJ0KCgoKJydtaSBub2kgbG9qYm8ga3UnbyBmYW52YSBmbyBsbyBsb2pibyBrdScnID0g4oCcSSwg d2hvIGFtIGEgTG9qYmFuaWMsIHRyYW5zbGF0ZSBmcm9tIHNvbWUgTG9qYmFuaWMgbGFuZ3VhZ2Uu 4oCdIEhlcmUsIHRoZXJlIGlzIG5vdCBtdWx0aXBsZSB0aGluZ3Mgd2hpY2ggJydtaScnIGNvdWxk IHJlZmVyIHRvLCBhbmQgdGhlIGZhY3QgdGhhdCBJIGFtIGxvamJhbmljIGlzIG1lcmVseSBhZGRp dGlvbmFsIGluZm9ybWF0aW9uIG5vdCBuZWVkZWQgdG8gaWRlbnRpZnkgbWUuIFRoZXJlZm9yZSAn J25vaeKApmt1J28nJyBpcyBhcHByb3ByaWF0ZS4KClNlZSBpZiB5b3UgY2FuIHRyYW5zbGF0ZSB0 aGlzOiDigJxJIGZsaXJ0IHdpdGggYSBtYW4gd2hvIGlzIGJlYXV0aWZ1bC9oYW5kc29tZeKAnS4K Cl9fJyduYW5tdScnX18g4oCceDEgaXMgYSBtYW7igJ0KCl9fJydtZWxiaScnX18g4oCceDEgaXMg YmVhdXRpZnVsIHRvIHgyIGluIGFzcGVjdCAoa2EpIHgzIGJ5IHN0YW5kYXJkIHg04oCdCgpfXycn Y2luamlrY2EnJ19fIOKAnHgxIGZsaXJ0cy9jb3VydHMgeDIsIGV4aGliaXRpbmcgc2V4dWFsaXR5 IHgzIGJ5IHN0YW5kYXJkIHg04oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBjaW5qaWtj YSBsbyBuYW5tdSBrdSBwb2kge2tlJ2F9IG1lbGJpIGt1J28nJ35+CgoKCk9uIGEgbW9yZSB0ZWNo bmljYWwgc2lkZSBub3RlLCBpdCBtaWdodCBiZSB1c2VmdWwgdG8ga25vdyB0aGF0ICcnbG8ge3Nl bGJyaX0ga3UnJyBpcyBvZnRlbiBzZWVuIGRlZmluZWQgYXMgJyd6bydlIG5vaSBrZSdhIHtzZWxi cml9IGt1J28nJy4KCgoKQmVzaWRlcywgaXQgaXMgYWxzbyBwb3NzaWJsZSB0byBjb25uZWN0IHR3 byBvciBtb3JlIHJlbGF0aXZlIGNsYXVzZXMgdG8gdGhlIHNhbWUgc3VtdGksIGJ5IHVzaW5nIHRo ZSByZWxhdGl2ZSBjbGF1c2Ugam9pbmVyIHt6aSdlfS4gSXQncyBzeW50YXggaXMgInN1bXRpICsg cmVsYXRpdmUgY2xhdXNlICsgemknZSArIHJlbGF0aXZlIGNsYXVzZSAoKyB6aSdlICsgcmVsYXRp dmUgY2xhdXNlICguLi4pKSIuIEhlcmUgaXMgYW4gZXhhbXBsZToKCgoKX18nJ3Blbm1pJydfXyDi gJx4MSBtZWV0cy9lbmNvdW50ZXJzIHgyIGF0L2luIGxvY2F0aW9uIHgz4oCdCgpfXycnZGFzbmkn J19fIOKAnHgxIHdlYXJzL2lzIHJvYmVkL2dhcmJlZCBpbiB4MiBhcyBhIGdhcm1lbnQgb2YgdHlw ZSB4M+KAnQoKCgonJ21pIHRhdmxhIGxvIG5hbm11IGt1IHBvaSBkbyBwZW5taSBrZSdhIGt1J28g emknZSBub2kgZGFzbmkgbG8geHVucmUga3Uga3UnbycnCgo9IOKAnEkgdGFsa2VkIHRvIHRoZSBt YW4gdGhhdCB5b3UgbWV0IGFuZCB3aGljaCAoaW5jaWRlbnRhbGx5KSB3YXMgZHJlc3NlZCBpbiBy ZWQu4oCdCgooTGl0ZXJhbGx5OiDigJwuLi4gYW5kIHdoaWNoIHdlYXJzIHNvbWV0aGluZyByZWTi gJ0uKQoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIExlc3NvbiBlaWdodCAodGVybWluYXRvciBl bGlzaW9uKQoKJycuYXUgZGEnaSBtaSBkamljYSBsbyBudSBsZSBtZXJrbyBwb2kgdHVuYmEgbWkg X192YXUga3UnbyBrdV9fIGppbXBlIGxvIGR1J3UgbWkgbmEgbmVsY2kgbG8gbnUgdm8nYSBkYXJ4 aSBtaSBfX3ZhdSBrZWkga3UgdmF1IGtlaSBrdSB2YXUga2VpIGt1IHZhdV9fJycKCiAtICDigJxJ IHdpc2ggdGhlIEFtZXJpY2FuLCB3aG8gaXMgbXkgc2libGluZywgd291bGQgdW5kZXJzdGFuZCB0 aGF0IEkgZG9uJ3QgbGlrZSB0aGF0IGhlIGhpdHMgbWUu4oCdCgpSZWdhcmRsZXNzIG9mIHdoZXRo ZXIgdGhlIGFib3ZlIHNlbnRlbmNlIGlzIGJlaW5nIHVuZGVyc3Rvb2QsIChpdCBzaG91bGRuJ3Qs IGFzIGl0IGNvbnRhaW5zIHdvcmRzIHdlIGhhdmUgbm90IGNvdmVyZWQgaW4gdGhlc2UgbGVzc29u cyB5ZXQpIG9uZSB0aGluZyBzdGFuZHMgb3V0OiBBcyBtb3JlIGNvbXBsZXggTG9qYmFuIHN0cnVj dHVyZXMgYXJlIGxlYXJuZWQsIG1vcmUgYW5kIG1vcmUgb2YgdGhlIHNlbnRlbmNlcyBnZXQgZmls bGVkIHdpdGggJydrdScnLCAnJ2tlaScnLCAnJ2t1J28nJyBhbmQgb3RoZXIgb2YgdGhvc2Ugd29y ZHMgd2hpY2ggYnkgdGhlbXNlbHZlcyBjYXJyeSBubyBtZWFuaW5nLgoKCgpUaGUgZnVuY3Rpb24g b2YgYWxsIHRoZXNlIHdvcmRzIGlzIHRvIHNpZ25hbCB0aGUgZW5kIG9mIGEgY2VydGFpbiBncmFt bWF0aWNhbCBjb25zdHJ1Y3QsIGxpa2UgZm9yIGluc3RhbmNlIOKAnGNvbnZlcnQgc2VsYnJpIHRv IHN1bXRp4oCdIGluIHRoZSBjYXNlIG9mICcna3UnJy4gVGhlIEVuZ2xpc2ggd29yZCBmb3IgdGhp cyBraW5kIG9mIHdvcmQgaXMg4oCcdGVybWluYXRvcuKAnSwgdGhlIExvamJhbiB3b3JkIGlzICcn ZmEnb3JtYSdvJycuIFRoZXkgYXJlIHdyaXR0ZW4gaW4gYm9sZCBpbiB0aGUgZXhhbXBsZSBhYm92 ZS4KCk5vdGU6IFRoZSAnJ3ZhdScnIGluIHRoZSBhYm92ZSBleGFtcGxlIGFyZSB0aGUgZmEnb3Jt YSdvIGZvciDigJxlbmQgYnJpZGnigJ0uIFRoZXJlIGlzIGEgZ29vZCByZWFzb24geW91IGhhdmUg bm90IHlldCBzZWVuIGl0LCBzdGF5IHR1bmVkLgoKX18nJ3ZhdScnX18gZmEnb3JtYSdvOiBUZXJt aW5hdGVzIGJyaWRpLgoKCgpJbiBtb3N0IHNwb2tlbiBhbmQgd3JpdHRlbiBMb2piYW4sIG1vc3Qg ZmEnb3JtYSdvIGFyZSBza2lwcGVkIChlbGlkZWQpLiBUaGlzIGdyZWF0bHkgc2F2ZXMgc3lsbGFi bGVzIGluIHNwZWVjaCBhbmQgc3BhY2UgaW4gd3JpdGluZywgaG93ZXZlciwgb25lIG11c3QgYWx3 YXlzIGJlIGNhcmVmdWwgd2hlbiBlbGlkaW5nIGZhJ29ybWEnby4gSW4gdGhlIHNpbXBsZSBleGFt cGxlICcnbG8gbWVya28ga3Uga2xhbWEnJywgcmVtb3ZpbmcgdGhlIGZhJ29ybWEnbyAnJ2t1Jycg d291bGQgeWllbGQgJydsbyBtZXJrbyBrbGFtYScnLCB3aGljaCBpcyBhIHNpbmdsZSBzdW10aSBt YWRlIGZyb20gdGhlIHRhbnJ1ICcnbWVya28ga2xhbWEnJy4gVGh1cywgaXQgbWVhbnMg4oCcYW4g QW1lcmljYW4gdHJhdmVsZXLigJ0gaW5zdGVhZCBvZiDigJxhbiBBbWVyaWNhbiB0cmF2ZWxz4oCd LiBmYSdvcm1hJ28gZWxpc2lvbiBjYW4gbGVhZCB0byB2ZXJ5IHdyb25nIHJlc3VsdHMgaWYgZG9u ZSBpbmNvcnJlY3RseSwgd2hpY2ggaXMgd2h5IHlvdSBoYXZlbid0IGxlYXJuZWQgYWJvdXQgaXQg dW50aWwgbm93LgoKCgpUaGUgcnVsZSBmb3Igd2hlbiBmYSdvcm1hJ28gY2FuIGJlIGVsaWRlZCBp cyB2ZXJ5IHNpbXBsZSwgYXQgbGVhc3QgaW4gdGhlb3J5OiDigJxZb3UgY2FuIGVsaWRlIGEgZmEn b3JtYSdvLCBfX2lmIGFuZCBvbmx5IGlmX18gZG9pbmcgc28gZG9lcyBub3QgY2hhbmdlIHRoZSBn cmFtbWF0aWNhbCBjb25zdHJ1Y3RzIGluIHRoZSBzZW50ZW5jZS7igJ0KCk1vc3QgZmEnb3JtYSdv IGNhbiBiZSBzYWZlbHkgZWxpZGVkIGF0IHRoZSBlbmQgb2YgdGhlIGJyaWRpLiBFeGNlcHRpb25z IGFyZSB0aGUgb2J2aW91cyBvbmVzIGxpa2Ug4oCcZW5kIHF1b3Rl4oCdLWZhJ29ybWEnbyBhbmQg 4oCcZW5kIGJyaWRpIGdyb3VwaW5n4oCdLWZhJ29ybWEnby4gVGhpcyBpcyB3aHkgJyd2YXUnJyBp cyBhbG1vc3QgbmV2ZXIgdXNlZCDigJMgc2ltcGx5IGJlZ2lubmluZyBhIG5ldyBicmlkaSB3aXRo ICcnLmknJyB3aWxsIGFsbW9zdCBhbHdheXMgdGVybWluYXRlIHRoZSBwcmVjZWRpbmcgYnJpZGkg YW55d2F5LiBJdCBoYXMgb25lIGZyZXF1ZW50IHVzZSwgaG93ZXZlci4gU2luY2UgYXR0aXR1ZGlu YWxzIGFsd2F5cyBhcHBseSB0byB0aGUgcHJlY2VkaW5nIHdvcmQsIGFwcGx5aW5nIGl0IHRvIGEg ZmEnb3JtYSdvIGFwcGxpZXMgaXQgdG8gdGhlIGVudGlyZSBjb25zdHJ1Y3Qgd2hpY2ggaXMgdGVy bWluYXRlZC4gVXNpbmcgJyd2YXUnJywgb25lIGNhbiB0aGVuIHVzZSBhdHRpdHVkaW5hbHMgYWZ0 ZXJ0aG91Z2h0IGFuZCBhcHBseSB0aGVtIHRvIHRoZSBlbnRpcmUgYnJpZGk6CgonJ3phJ2EgZG8g ZHVuZGEgbG8gemRhbmkge2t1fSBsbyBwcmVudSB7a3V9Li4uIHZhdSBpJ2UnJyAtIOKAnEkgc2Vl IHRoYXQgeW91IGdpdmUgYSBob21lIHRvIGEgcGVyc29uLi4uIEkgYXBwcm92ZSHigJ0KCl9fJydw cmVudScnX18geDEgaXMgYSBwZXJzb247IHgxIGhhcyBhIHBlcnNvbmFsaXR5LgoKCgpLbm93aW5n IHRoZSBiYXNpYyBydWxlcyBmb3IgZmEnb3JtYSdvIGVsaXNpb24sIHdlIGNhbiB0aHVzIHJldHVy biB0byB0aGUgb3JpZ2luYWwgc2VudGVuY2UgYW5kIGJlZ2luIHJlbW92aW5nIGZhJ29ybWEnbzoK CgoKJycuYXUgZGEnaSBtaSBkamljYSBsbyBudSBsZSBtZXJrbyBwb2kgdHVuYmEgbWkgX192YXUg a3UnbyBrdV9fIGppbXBlIGxvIGR1J3UgbWkgbmEgbmVsY2kgbG8gbnUgdm8nYSBkYXJ4aSBtaSBf X3ZhdSBrZWkga3UgdmF1IGtlaSBrdSB2YXUga2VpIGt1IHZhdV9fJycKCgoKV2UgY2FuIHNlZSB0 aGF0IHRoZSBmaXJzdCAnJ3ZhdScnIGlzIGdyYW1tYXRpY2FsbHkgdW5uZWNlc3NhcnksIGJlY2F1 c2UgdGhlIG5leHQgbm9uLWZhJ29ybWEnby13b3JkIGlzICcnamltcGUnJywgd2hpY2ggaXMgYSBz ZWxicmkuIFNpbmNlIHRoZXJlIGNhbiBvbmx5IGJlIG9uZSBzZWxicmkgcGVyIGJyaWRpLCAnJ3Zh dScnIGlzIG5vdCBuZWVkZWQuIFNpbmNlICcnamltcGUnJyBhcyBhIHNlbGJyaSBjYW5ub3QgYmUg aW4gdGhlIHJlbGF0aXZlIGNsYXVzZSBlaXRoZXIgKG9ubHkgb25lIGJyaWRpIGluIGEgY2xhdXNl LCBvbmx5IG9uZSBzZWxicmkgaW4gZWFjaCBicmlkaSksIHdlIGNhbiBlbGlkZSAnJ2t1J28nJy4g TGlrZXdpc2UsICcnamltcGUnJyBjYW5ub3QgYmUgYSBzZWNvbmQgc2VsYnJpIGluc2lkZSB0aGUg Y29uc3RydWN0ICcnbGUgbWVya28gcG9pey4uLn0nJywgc28gdGhlICcna3UnJyBpcyBub3QgbmVl ZGVkIGVpdGhlci4gRnVydGhlcm1vcmUsIGFsbCB0aGUgZmEnb3JtYSdvIGF0IHRoZSB2ZXJ5IGVu ZCBvZiB0aGUgc2VudGVuY2UgY2FuIGJlIGVsaWRlZCB0b28sIHNpbmNlIGJlZ2lubmluZyBhIG5l dyBicmlkaSB3aWxsIHRlcm1pbmF0ZSBhbGwgb2YgdGhlc2UgY29uc3RydWN0cyBhbnl3YXkuCgpX ZSB0aGVuIGVuZCB1cCB3aXRoOgoKJycuYXUgZGEnaSBtaSBkamljYSBsbyBudSBsZSBtZXJrbyBw b2kgdHVuYmEgbWkgamltcGUgbG8gZHUndSBtaSBuYSBuZWxjaSBsbyBudSB2bydhIGRhcnhpIG1p Jycg4oCTIHdpdGggbm8gZmEnb3JtYSdvIGF0IGFsbCEKCgoKV2hlbiBlbGlkaW5nIGZhJ29ybWEn bywgaXQgaXMgYSBnb29kIGlkZWEgdG8gYmUgYWNxdWFpbnRlZCB3aXRoICcnY3UnJy4gJydjdScn IGlzIG9uZSBvZiB0aG9zZSB3b3JkcyB3aGljaCBjYW4gbWFrZSB5b3VyIChMb2piYW5pYykgbGlm ZSBhIGxvdCBlYXNpZXIuIFdoYXQgaXQgZG9lcyBpcyB0byBzZXBhcmF0ZSBhbnkgcHJldmlvdXMg c3VtdGkgZnJvbSB0aGUgc2VsYnJpLiBPbmUgY291bGQgc2F5IHRoYXQgaXQgZGVmaW5lcyB0aGUg bmV4dCB3b3JkIHRvIGJlIGEgc2VsYnJpLCBhbmQgdGVybWluYXRlcyBleGFjdGx5IGFzIG11Y2gg YXMgaXQgbmVlZHMgdG8gaW4gb3JkZXIgdG8gZG8gdGhhdC4KCl9fJydjdScnX18gZWxpZGFibGUg bWFya2VyOiBzZXBhcmF0ZXMgc2VsYnJpIGZyb20gcHJlY2VkaW5nIHN1bXRpLCBhbGxvd3MgcHJl Y2VkaW5nIGZhJ29ybWEnbyBlbGlzaW9uLgoKCgpfXycncHJhbWknJ19fID0g4oCceDEgbG92ZXMg eDLigJ0KCgoKJydsbyBzdSd1IGRvIGN1c2t1IGxvIHNlIGR1J3UgZG8gcHJhbWkgbWkgX192YXUg a2VpIGt1IHZhdSBrZWkga3VfXyBzZSBkamljYSBtaScnID0KCicnbG8gc3UndSBkbyBjdXNrdSBs byBzZSBkdSd1IGRvIHByYW1pIG1pIF9fY3VfXyBzZSBkamljYSBtaScnCgrigJxUaGF0IHlvdSBz YXkgdGhhdCB5b3UgbG92ZSBtZSBpcyBkZXNpcmVkIGJ5IGJl4oCdIG9yIOKAnEkgd2lzaCB5b3Ug c2FpZCB5b3UgbG92ZWQgbWXigJ0KCm5vdGU6ICcnY3UnJyBpcyBub3QgYSBmYSdvcm1hJ28sIGJl Y2F1c2UgaXQgaXMgbm90IHRpZWQgdG8gb25lIHNwZWNpZmljIGNvbnN0cnVjdC4gQnV0IGl0IGNh biBiZSB1c2VkIHRvIGVsaWRlIG90aGVyIGZhJ29ybWEnby4KCgoKT25lIG9mIHRoZSBncmVhdGVz dCBzdHJlbmd0aHMgb2YgJydjdScnIGlzIHRoYXQgaXQgcXVpY2tseSBiZWNvbWVzIGVhc3kgdG8g aW50dWl0aXZlbHkgdW5kZXJzdGFuZC4gQnkgaXRzZWxmIGl0IG1lYW5zIG5vdGhpbmcsIGJ1dCBp dCByZXZlYWxzIHRoZSBzdHJ1Y3R1cmUgb2YgTG9qYmFuIGV4cHJlc3Npb25zIGJ5IGlkZW50aWZ5 aW5nIHRoZSBjb3JlIHNlbGJyaS4gSW4gdGhlIG9yaWdpbmFsIGV4YW1wbGUgd2l0aCB0aGUgdmlv bGVudCBBbWVyaWNhbiBicm90aGVyLCB1c2luZyAnJ2N1JycgYmVmb3JlICcnamltcGUnJyBkb2Vz IG5vdCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHNlbnRlbmNlIGluIGFueSB3YXksIGJ1dCBt aWdodCBtYWtlIGl0IGVhc2llciB0byByZWFkLgoKCgpJbiB0aGUgZm9sbG93aW5nIGNvdXBsZSBv ZiBsZXNzb25zLCAnJ2N1Jycgd2lsbCBiZSB1c2VkIHdoZW4gbmVjZXNzYXJ5LCBhbmQgYWxsIGZh J29ybWEnbyBlbGlkZWQgaWYgcG9zc2libGUuIFRoZSBlbGlkZWQgZmEnb3JtYSdvIHdpbGwgYmUg ZW5jYXNlZCBpbiBjdXJseSBicmFja2V0cywgYXMgc2hvd24gYmVsb3cuIFRyeSB0byB0cmFuc2xh dGUgaXQhCgpfXycndmFqbmknJ19fIOKAnHgxIGlzIGltcG9ydGFudCB0byB4MiBmb3IgcmVhc29u IHgz4oCdCgpfXycnamltcGUnJ19fIOKAnHgxIHVuZGVyc3RhbmRzIHRoYXQgeDIgKGR1J3UtYWJz dHJhY3Rpb24pIGlzIHRydWUgYWJvdXQgeDPigJ0KCl9fJydhJ28nJ19fIC0gQXR0aXR1ZGluYWw6 IFNpbXBsZSBwcm9wb3NpdGlvbmFsIGVtb3Rpb246IEhvcGUgLSBkZXNwYWlyCgoKCicnYSdvIGRv IG5vaSBrZSdhIGxvamJvIC5pJ2Uge2t1J299IHtrdX0gY3UgamltcGUgbG8gZHUndSBsbyBmYSdv cm1hJ28ge2t1fSBjdSB2YWpuaSB7dmF1fSB7a2VpfSB7a3V9IHt2YXV9JycKCldoYXQgZG8gSSBz dGF0ZT8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxJIGhvcGUgdGhhdCB5b3UsIGEgcHJvdWQg TG9qYmFuaXN0LCB1bmRlcnN0YW5kcyB0aGF0IGZhJ29ybWEnbyBhcmUgaW1wb3J0YW504oCdfn4K CgoKRnVuIHNpZGUgbm90ZTogTW9zdCBwZW9wbGUgd2VsbC12ZXJzZWQgaW4gZmEnb3JtYSdvLWVs aXNpb24gZG8gaXQgc28gaW5zdGluY3RpdmVseSB0aGF0IHRoZXkgb2Z0ZW4gbXVzdCBiZSByZW1p bmRlZCBob3cgaW1wb3J0YW50IHVuZGVyc3RhbmRpbmcgZmEnb3JtYSdvIGFyZSB0byB0aGUgdW5k ZXJzdGFuZGluZyBvZiBMb2piYW4uIFRoZXJlZm9yZSwgZWFjaCBUdWVzZGF5IGhhdmUgYmVlbiBk ZXNpZ25hdGVkIOKAnFRlcm1pbmF0b3IgRGF54oCdIG9yICcnZmEnb3JtYSdvIGRqZWRpJycgb24g dGhlIExvamJhbiBJUkMgY2hhdHJvb20uIER1cmluZyBUZXJtaW5hdG9yIERheSwgbWFueSBwZW9w bGUgdHJ5IChhbmQgb2Z0ZW4gZmFpbCkgdG8gcmVtZW1iZXIgd3JpdGluZyBvdXQgYWxsIGZhJ29y bWEnbyB3aXRoIHNvbWUgdmVyeSB2ZXJib3NlIGNvbnZlcnNhdGlvbnMgYXMgYSByZXN1bHQuCgoK CgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiBuaW5lIChzdW10Y2l0YSkKClNvIGZhciB3ZSBo YXZlIGJlZW4gZG9pbmcgcHJldHR5IHdlbGwgd2l0aCB0aGUgc2VsYnJpIHdlIGhhdmUgaGFkIGF0 IGhhbmQuIEhvd2V2ZXIsIHRoZXJlIGlzIGEgZmluaXRlIGFtb3VudCBvZiBkZWZpbmVkIHNlbGJy aSBvdXQgdGhlcmUsIGFuZCBpbiBtYW55IGNhc2VzIHRoZSBzdW10aSBwbGFjZXMgYXJlIG5vdCB1 c2VmdWwgZm9yIHdoYXQgd2UgaGFkIGluIG1pbmQuIFdoYXQgaWYsIHNheSwgaSB3YW50IHRvIHNh eSB0aGF0IEkgYW0gdHJhbnNsYXRpbmcgdXNpbmcgYSBjb21wdXRlcj8gVGhlcmUgaXMgbm8gcGxh Y2UgaW4gdGhlIHN0cnVjdHVyZSBvZiAnJ2ZhbnZhJycgdG8gc3BlY2lmeSB3aGF0IHRvb2wgSSB0 cmFuc2xhdGUgd2l0aCwgc2luY2UsIG1vc3Qgb2YgdGhlIHRpbWUsIHRoYXQgaXMgbm90IG5lY2Vz c2FyeS4gTm90IHRvIHdvcnJ5LCB0aGlzIGxlc3NvbiBpcyBvbiBob3cgdG8gYWRkIGFkZGl0aW9u YWwgc3VtdGkgcGxhY2VzIHRvIHRoZSBzZWxicmkuCgoKClRoZSBtb3N0IGJhc2ljIHdheSB0byBh ZGQgc3VtdGkgcGxhY2VzIGFyZSB3aXRoICcnZmknbyBTRUxCUkkgZmUndScnICh5ZXMsIGFub3Ro ZXIgZXhhbXBsZSBvZiBhIGZhJ29ybWEnbywgJydmZSd1JycuIEl0J3MgYWxtb3N0IG5ldmVyIG5l Y2Vzc2FyeSwgc28gdGhpcyBtaWdodCBiZSB0aGUgbGFzdCB0aW1lIHlvdSBldmVyIHNlZSBpdC4p CgpJbiBiZXR3ZWVuIHRoZXNlIHR3byB3b3JkcyBnb2VzIGEgc2VsYnJpLCBhbmQgbGlrZSAnJ2xv IFNFTEJSSSBrdScnLCAnJ2ZpJ28gU0VMQlJJIGZlJ3UnJyBleHRyYWN0cyB0aGUgeDEgb2YgdGhl IHNlbGJyaSBwdXQgaW50byBpdC4gSG93ZXZlciwgd2l0aCAnJ2ZpJ28gU0VMQlJJIGZlJ3UnJywg dGhlIHNlbGJyaSBwbGFjZSBpcyBjb252ZXJ0ZWQsIG5vdCB0byBhIHN1bXRpLCBidXQgdG8gYSAn J3N1bXRjaXRhJycsIG1lYW5pbmcg4oCcc3VtdGktbGFiZWzigJ0sIHdpdGggdGhlIHBsYWNlIHN0 cnVjdHVyZSBvZiB0aGUgeDEgb2YgdGhlIHNlbGJyaSBpdCBjb252ZXJ0ZWQuIFRoaXMgJydzdW10 Y2l0YScnIHRoZW4gYWJzb3JicyB0aGUgbmV4dCBzdW10aS4gT25lIGNvdWxkIHNheSB0aGF0IHVz aW5nIGEgJydzdW10Y2l0YScnLCB5b3UgaW1wb3J0IGEgc3VtdGkgcGxhY2UgZnJvbSBhbm90aGVy IHNlbGJyaSwgYW5kIGFkZCBpdCB0byB0aGUgYnJpZGkgYmVpbmcgc2FpZC4KCk5vdGU6IFNvbWV0 aW1lcywgZXNwZWNpYWxseSBpbiBvbGRlciB0ZXh0cywgdGhlIHRlcm0g4oCcdGFn4oCdIG9yIOKA nG1vZGFs4oCdIGlzIHVzZWQgZm9yICcnc3VtdGNpdGEnJy4gSWdub3JlIHRob3NlIHB1bnkgRW5n bGlzaCBleHByZXNzaW9ucy4gV2UgdGVhY2ggcHJvcGVyIExvamJhbiBoZXJlLgoKCgpXaGlsZSBp dCBpcyBoYXJkIHRvIGdyYXNwIHRoZSBwcm9jZXNzIGZyb20gcmVhZGluZyBhYm91dCBpdCwgYW4g ZXhhbXBsZSBjYW4gcGVyaGFwcyBzaG93IGl0cyBhY3R1YWwgc2ltcGxpY2l0eToKCl9fJydza2Ft aScnX18g4oCceDEgaXMgYSBjb21wdXRlciBmb3IgcHVycG9zZSB4MuKAnQoKX18nJ3BpbG5vJydf XyDigJx4MSB1c2VzIHgyIGFzIGEgdG9vbCBmb3IgZG9pbmcgeDPigJ0KCgoKJydtaSBmYW52YSB0 aSBmaSdvIHNlIHBpbG5vIHtmZSd1fSBsbyBza2FtaSB7a3V9e3ZhdX0nJyAtIOKAnEkgdHJhbnNs YXRlIHRoaXMgd2l0aCBhIGNvbXB1dGVy4oCdIFRoZSB4MiBvZiAnJ3BpbG5vJycsIHdoaWNoIGlz IHRoZSB4MSBvZiAnJ3NlIHBpbG5vJycgaXMgYSBwbGFjZSBzdHJ1Y3R1cmUgZm9yIGEgdG9vbCBi ZWluZyB1c2VkIGJ5IHNvbWVvbmUuIFRoaXMgcGxhY2Ugc3RydWN0dXJlIGlzIGNhcHR1cmVkIGJ5 ICcnZmknbyBTRUxCUkkgZmUndScnLCBhZGRlZCB0byB0aGUgbWFpbiBzZWxicmksIGFuZCB0aGVu IGZpbGxlZCBieSAnJ2xvIHNrYW1pJycuIFRoZSBpZGVhIG9mICcnc3VtdGNpdGEnJyBpcyBzb21l dGltZXMgZXhwcmVzc2VkIGluIEVuZ2xpc2ggdXNpbmcgdGhlIGZvbGxvd2luZyB0cmFuc2xhdGlv bjoKCuKAnEkgdHJhbnNsYXRlIHRoaXMgd2l0aC10b29sOiBBIGNvbXB1dGVy4oCdCgoKCkEgJydz dW10Y2l0YScnIGNhbiBvbmx5IGFic29yYiBvbmUgc3VtdGksIHdoaWNoIGlzIGFsd2F5cyB0aGUg Zm9sbG93aW5nIG9uZS4gQWx0ZXJuYXRpdmVseSwgb25lIGNhbiB1c2UgdGhlICcnc3VtdGNpdGEn JyBjb25zdHJ1Y3QgYnkgaXRzZWxmIHdpdGhvdXQgc3VtdGkuIEluIHRoaXMgY2FzZSB5b3UgbmVl ZCB0byBwdXQgaXQgZWl0aGVyIGJlZm9yZSB0aGUgc2VsYnJpIG9yIHRlcm1pbmF0ZSBpdCB3aXRo ICcna3UnJy4gSW4gc3VjaCBjYXNlIG9uZSBjYW4gdGhpbmsgYXMgaWYgdGhlIHN1bXRjaXRhIGhh cyB0aGUgd29yZCAnJ3pvJ2UnJyBhcyB0aGUgc3VtdGkuCgoKCl9fJyd6dWt0ZScnX18g4oCceDEg aXMgYSB2b2xpdGlvbmFsIGVudGl0eSBjYXJyeWluZyBvdXQgYWN0aW9uIHgyIGZvciBwdXJwb3Nl IHgz4oCdCgpfXycnemFyY2knJ19fIOKAnHgxIGlzIGEgbWFya2V0L3N0b3JlL2V4Y2hhbmdlL3No b3Aocykgc2VsbGluZy90cmFkaW5nIChmb3IpIHgyLCBvcGVyYXRlZCBieS93aXRoIHBhcnRpY2lw YW50cyB4M+KAnQoKCgonJ2ZpJ28genVrdGUge2ZlJ3V9IGt1IGxvIHByZW51IHtrdX0gY3Uga2xh bWEgbG8gemFyY2kge2t1fXt2YXV9JycgLSDigJxCeSB0aGVpciBvd24gdm9saXRpb24sIGEgcGVy c29uIGlzIGdvaW5nIHRvIHRoZSBzdG9yZeKAnQoKCgpOb3RlIHRoYXQgdGhlcmUgaXMgJydrdScn IGluICcnZmknbyB6dWt0ZSB7ZmUndX0ga3UnJy4gV2l0aG91dCBpdCB0aGUgc3VtdGNpdGEgd291 bGQgaGF2ZSBhYnNvcmJlZCAnJ2xvIHByZW51IHtrdX0nJyBhbmQgd2UgZG9uJ3Qgd2FudCB0aGF0 LgoKCgpXZSBjYW4gc2F5IHRoZSBzYW1lIGluIG90aGVyIHdvcmRzOgoKCgonJ2ZpJ28genVrdGUg e2ZlJ3V9IHpvJ2UgbG8gcHJlbnUge2t1fSBjdSBrbGFtYSBsbyB6YXJjaSB7a3V9e3ZhdX0nJyAK CicnbG8gcHJlbnUge2t1fSBjdSBmaSdvIHp1a3RlIHtmZSd1fSBrbGFtYSBsbyB6YXJjaSB7a3V9 e3ZhdX0nJyAKCgoKcmV0YWluaW5nIHRoZSBtZWFuaW5nLgoKCgpXaGF0IGRvZXMgJydtaSBqaW1w ZSBmaSBsbyBza2FtaSBmaSdvIHNlIHRhdmxhIHtmZSd1fSBtaScnIHN0YXRlPwoKCgpBbnN3ZXI6 IH5+Z3JleSxncmV5OuKAnEkgdW5kZXJzdGFuZCBzb21ldGhpbmcgYWJvdXQgY29tcHV0ZXJzLCBz cG9rZW4gdG8gbWXigJ1+fgoKCgpQdXR0aW5nIHRoZSAnJ3N1bXRjaXRhJycgcmlnaHQgaW4gZnJv bnQgb2YgdGhlIHNlbGJyaSBhbHNvIG1ha2VzIGl0IHNlbGYtdGVybWluYXRlLCBzaW5jZSBzdW10 Y2l0YSBvbmx5IGNhbiBhYnNvcmIgc3VtdGksIGFuZCBub3Qgc2VsYnJpLiBUaGlzIGZhY3Qgd2ls bCBiZSBvZiBpbXBvcnRhbmNlIGluIG5leHQgbGVzc29uLCBhcyB5b3Ugd2lsbCBzZWUuCgoKCkFj dHVhbGx5LCAnJ2ZpJ28nJyBpcyBub3QgdXNlZCB2ZXJ5IG9mdGVuIGRlc3BpdGUgaXRzIGZsZXhp YmlsaXR5LiBXaGF0IElTIHVzZWQgdmVyeSBvZnRlbiwgdGhvdWdoLCBhcmUgQkFJLiBCQUkgaXMg YSBjbGFzcyBvZiBMb2piYW4gd29yZHMsIHdoaWNoIGluIHRoZW1zZWx2ZXMgYWN0IGFzICcnc3Vt dGNpdGEnJy4gQW4gZXhhbXBsZSBvZiB0aGlzIGlzICcnenUnZScnLCB0aGUgQkFJIGZvciAnJ3p1 a3RlJycuIEdyYW1hdGljYWxseSwgJyd6dSdlJycgaXMgdGhlIHNhbWUgYXMgJydmaSdvIHp1a3Rl IGZlJ3UnJy4gVGh1cywgdGhlIGFib3ZlIGV4YW1wbGUgY291bGQgYmUgcmVkdWNlZCB0bzoKCicn enUnZSBrdSBsbyBwcmVudSB7a3V9IGN1IGtsYW1hIGxvIHphcmNpIHtrdX17dmF1fScnLiBUaGVy ZSBleGlzdCBzb21ldGhpbmcgbGlrZSA2MCBCQUksIGFuZCBhIGxvdCBvZiB0aGVzZSBhcmUgdmVy eSB1c2VmdWwgaW5kZWVkLiBGdXJ0ZXJtb3JlLCBCQUkgY2FuIGFsc28gYmUgY29udmVydGVkIHdp dGggJydzZScnIGFuZCBmcmllbmRzLCBtZWFuaW5nIHRoYXQgJydzZSB6dSdlJycgaXMgZXF1YWwg dG8gJydmaSdvIHNlIHp1a3RlIGZlJ3UnJywgd2hpY2ggcmVzdWx0cyBpbiBhIGdyZWF0IGRlYWwg bW9yZSBCQUkuCgohIUxvamJhbiBMZXNzb25zIC0gTGVzc29uIHRlbiAoUFUsIEZBaEEsIFpJLCBW QSwgWkVoQSwgVkVoQSkKCkhvdyB1bmZhbWlsaWFyIHRvIHRoZSBFbmdsaXNoLXNwZWFrZXIgYSBs YW5ndWFnZSBMb2piYW4gaXMgd2hlbiBvbmUgY2FuIHJlYWQgdGhyb3VnaCBuaW5lIGxlc3NvbnMg b2YgTG9qYmFuIGdyYW1tYXIgd2l0aG91dCBtZWV0aW5nIGEgdGVuc2Ugb25jZS4gVGhpcyBpcyBi ZWNhdXNlLCB1bmxpa2UgbWFueSBuYXR1cmFsIGxhbmd1YWdlcyAobW9zdCBJbmRvLUV1cm9wZWFu IG9uZXMsIGZvciBpbnN0YW5jZSksIGFsbCB0ZW5zZXMgaW4gTG9qYmFuIGFyZSBvcHRpb25hbC4g U2F5aW5nICcnbWkgY2l0a2EgbG8gY2lybGEge2t1fScnIGNhbiBtZWFuIOKAnEkgZWF0IGNoZWVz ZeKAnSBvciDigJxJIGF0ZSB0aGUgY2hlZXNl4oCdIG9yIOKAnEkgYWx3YXlzIGVhdCBjaGVlc2Xi gJ0gb3Ig4oCcSW4gYSBtb21lbnQsIGkgd2lsbCBoYXZlIGp1c3QgZmluaXNoZWQgZWF0aW5nIGNo ZWVzZeKAnS4gQ29udGV4dCByZXNvbHZlcyB3aGF0IGlzIGNvcnJlY3QsIGFuZCBpbiBtb3N0IGNv bnZlcnNhdGlvbiwgdGVuc2VzIGFyZSBub3QgbmVlZGVkIGF0IGFsbC4gSG93ZXZlciwgd2hlbiBp dCdzIG5lZWRlZCBpdCdzIG5lZWRlZCwgYW5kIGl0IG11c3QgYmUgdGF1Z2h0LiBGdXJ0aGVybW9y ZSwgTG9qYmFuIHRlbnNlcyBhcmUgdW51c3VhbCBiZWNhdXNlIHRoZXkgdHJlYXQgdGltZSBhbmQg c3BhY2UgZnVuZGFtZW50YWxseSB0aGUgc2FtZSAtIHNheWluZyB0aGF0IEkgd29ya2VkIGEgbG9u ZyB0aW1lIGFnbyBpcyBub3QgZ3JhbW1hdGljYWxseSBkaWZmZXJlbnQgdGhhbiBzYXlpbmcgSSB3 b3JrIGZhciBhd2F5IHRvIHRoZSBub3J0aC4KCkxpa2UgbWFueSBvdGhlciBsYW5ndWFnZXMsIHRo ZSBMb2piYW4gdGVuc2Ugc3lzdGVtIGlzIHBlcmhhcHMgdGhlIG1vc3QgZGlmZmljdWx0IHBhcnQg b2YgdGhlIGxhbmd1YWdlLiBVbmxpa2UgbWFueSBvdGhlciBsYW5ndWFnZXMgdGhvdWdoLCBpdCdz IHBlcmZlY3RseSByZWd1bGFyIGFuZCBtYWtlcyBzZW5zZS4gU28gZmVhciBub3QsIGZvciBpdCB3 aWxsIG5vdCBpbnZvbHZlIHN3ZWF0aW5nIHRvIGxlYXJuIGhvdyB0byBtb2RpZnkgdGhlIHNlbGJy aSBvciBhbnl0aGluZyBzaWxseSBsaWtlIHRoYXQuCgoKCk5vLCBpbiB0aGUgTG9qYmFuIHRlbnNl IHN5c3RlbSwgYWxsIHRlbnNlcyBhcmUgc3VtdGNpdGEsIHdoaWNoIHdlIGhhdmUgY29udmVuaWVu dGx5IGp1c3QgbWFkZSBvdXJzZWx2ZXMgZmFtaWxpYXIgd2l0aC4gT2theSBva2F5LCB0ZWNobmlj YWxseSwgdGVuc2VzIGFyZSBzbGlnaHRseSBkaWZmZXJlbnQgZnJvbSBvdGhlciBzdW10Y2l0YSwg YnV0IHRoaXMgZGlmZmVyZW5jZSBpcyBhbG1vc3QgaW5zaWduaWZpY2FudCwgYW5kIHdvbid0IGJl IGV4cGxhaW5lZCB1bnRpbCBsYXRlci4gSW4gbW9zdCBhc3BlY3RzIHRoZXkgYXJlIGxpa2UgYWxs IG90aGVyIHN1bXRjaXRhOyB0aGV5IGFyZSB0ZXJtaW5hdGVkIGJ5ICcna3UnJywgbWFraW5nIGl0 IGV4cGxpY2l0IHRoYXQgUFUgaXMgdGVybWluYXRlZCBieSAnJ2t1JycuCgpUaGVyZSBhcmUgbWFu eSBkaWZmZXJlbnQga2luZHMgb2YgdGVuc2Utc3VtdGNpdGEsIHNvIGxldCdzIHN0YXJ0IGF0IHRo ZSBvbmVzIG1vc3QgZmFtaWxpYXIgdG8gRW5nbGlzaC1zcGVha2Vycy4KCl9fJydwdScnX18gLSBz dW10Y2l0YTogYmVmb3JlIHtzdW10aX0KCl9fJydjYScnX18gLSBzdW10Y2l0YTogYXQgdGhlIHNh bWUgdGltZSBhcyB7c3VtdGl9CgpfXycnYmEnJ19fIC0gc3VtdGNpdGE6IGFmdGVyIHtzdW10aX0K CgoKVGhlc2UgYXJlIGxpa2UgdGhlIEVuZ2xpc2ggY29uY2VwdHMg4oCcYmVmb3Jl4oCdLCDigJxu b3figJ0gYW5kIOKAnGFmdGVy4oCdLiBJbiBhY3R1YWxpdHkgdGhvdWdoLCBvbmUgY291bGQgYXJn dWUgdGhhdCB0d28gcG9pbnQtbGlrZSBldmVudHMgY2FuIG5ldmVyIG9jY3VyIGV4YWN0bHkgc2lt dWx0YW5lb3VzbHksIHJlbmRlcmluZyAnJ2NhJycgdXNlbGVzcy4gQnV0ICcnY2EnJyBleHRlbmRz IHNsaWdodGx5IGludG8gdGhlIHBhc3QgYW5kIHRoZSBmdXR1cmUsIG1lYW5pbmcganVzdCDigJxh Ym91dCBub3figJ0uIFRoaXMgaXMgYmVjYXVzZSBodW1hbiBiZWluZ3MgZG9uJ3QgcGVyY2VpdmUg dGltZSBpbiBhIHBlcmZlY3RseSBsb2dpY2FsIHdheSwgYW5kIHRoZSBMb2piYW4gdGVuc2Ugc3lz dGVtIHJlZmxlY3RzIHRoYXQuCgoKClNpZGUgbm90ZTogSXQgd2FzIGFjdHVhbGx5IHN1Z2dlc3Rl ZCBtYWtpbmcgdGhlIExvamJhbiB0ZW5zZSBzeXN0ZW0gcmVsYXRpdmlzdGljLiBUaGF0IGlkZWEs IGhvd2V2ZXIsIHdhcyBkcm9wcGVkLCBiZWNhdXNlIGl0IGlzIGNvdW50ZXItaW50dWl0aXZlLCBh bmQgd291bGQgbWVhbiB0aGF0IHRvIGxlYXJuIExvamJhbiwgb25lIHdvdWxkIGhhdmUgdG8gbGVh cm4gdGhlIHRoZW9yeSBvZiByZWxhdGl2aXR5IGZpcnN0LiAgCgoKClNvLCBob3cgd291bGQgeW91 IHNheSDigJxJIGV4cHJlc3MgdGhpcyBhZnRlciBJIGNhbWUgaGVyZT/igJ0gKHBvaW50aW5nIHRv IGEgcGFwZXIpCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSBjdXNrdSB0aSBiYSBsbyBudSBt aSBrbGFtYSB0aSB7dmF1fSB7a2VpfSB7a3V9IHt2YXV9Jyd+fgoKCgpVc3VhbGx5IHdoZW4gc3Bl YWtpbmcsIHdlIGRvIG5vdCBuZWVkIHRvIHNwZWNpZnkgd2hpY2ggZXZlbnQgaW4gdGhlIHBhc3Qg dGhpcyBhY3Rpb24gaXMgcmVsYXRpdmUgdG8uIEluOiDigJxJIGdhdmUgYSBjb21wdXRlciBhd2F5 4oCdLCB3ZSBjYW4gYXNzdW1lIHRoYXQgdGhlIGFjdGlvbiBoYXBwZW5lZCByZWxhdGl2ZSB0byDi gJxub3figJ0sIGFuZCB0aHVzIHdlIGNhbiBlbGlkZSB0aGUgc3VtdGkgb2YgdGhlIHN1bXRjaXRh LCBiZWNhdXNlIGl0J3Mgb2J2aW91czoKCicncHUga3UgbWkgZHVuZGEgbG8gc2thbWkge2t1fSB7 dmF1fScnIG9yCgonJ21pIGR1bmRhIGxvIHNrYW1pIHtrdX0gcHUge2t1fSB7dmF1fScnIG9yLCBt b3JlIGNvbW1vbmx5CgonJ21pIHB1IHtrdX0gZHVuZGEgbG8gc2thbWkge2t1fSB7dmF1fScnLiBU aGUgc3VtdGkgd2hpY2ggZmlsbHMgdGhlIHN1bXRjaXRhIGlzIGFuIGltcGxpZWQgJyd6bydlJycs IHdoaWNoIGlzIGFsbW9zdCBhbHdheXMgdW5kZXJzdG9vZCBhcyByZWxhdGl2ZSB0byB0aGUgc3Bl YWtlcidzIHRpbWUgYW5kIHBsYWNlICh0aGlzIGlzIGVzcGVjaWFsbHkgaW1wb3J0YW50IHdoZW4g c3BlYWtpbmcgYWJvdXQgbGVmdCBhbmQgcmlnaHQpLiBJZiBzcGVha2luZyBhYm91dCBzb21lIGV2 ZW50cyB0aGF0IGhhcHBlbmVkIHNvbWUgb3RoZXIgdGltZSB0aGFuIHRoZSBwcmVzZW50LCBpdCBp cyBzb21ldGltZXMgYXNzdW1lZCB0aGF0IGFsbCB0ZW5zZXMgYXJlIHJlbGF0aXZlIHRvIHRoYXQg ZXZlbnQgd2hpY2ggaXMgYmVpbmcgc3Bva2VuIGFib3V0LiBJbiBvcmRlciB0byBjbGFyaWZ5IHRo YXQgYWxsIHRlbnNlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIHNwZWFrZXIncyBjdXJyZW50IHBvc2l0 aW9uLCB0aGUgd29yZCAnJ25hdScnIGNhbiBiZSB1c2VkIGF0IGFueSB0aW1lLiBBbm90aGVyIHdv cmQsICcna2knJyBtYXJrcyBhIHRlbnNlIHdoaWNoIGlzIHRoZW4gY29uc2lkZXJlZCB0aGUgbmV3 IHN0YW5kYXJkLiBUaGF0IHdpbGwgYmUgdGF1Z2h0IHdheSBsYXRlci4KCl9fJyduYXUnJ19fIHVw ZGF0ZXMgdGVtcG9yYWwgYW5kIHNwYWNpYWwgZnJhbWUgb2YgcmVmZXJlbmNlIHRvIHRoZSBzcGVh a2VyJ3MgY3VycmVudCBoZXJlIGFuZCBub3cuCgoKCl9fJydndWdkZScnX18gPSDigJx4MSBpcyB0 aGUgY291bnRyeSBvZiBwZW9wbGUgeDIgd2l0aCBsYW5kL3RlcnJpdG9yeSB4M+KAnQoKCgpBbHNv IG5vdGUgdGhhdCAnJ21pIHB1IHtrdX0ga2xhbWEgbG8gbWVya28gZ3VnZGUge2t1fSB7dmF1fScn LCDigJxJIHdlbnQgdG8gQW1lcmljYeKAnSwgZG9lcyBub3QgaW1wbHkgdGhhdCBJJ20gbm90IHN0 aWxsIHRyYXZlbGluZyB0byBVU0EsIG9ubHkgdGhhdCBpdCB3YXMgYWxzbyB0cnVlIHNvbWUgdGlt ZSBpbiB0aGUgcGFzdCwgZm9yIGluc3RhbmNlIGZpdmUgbWludXRlcyBhZ28uCgoKCkFzIG1lbnRp b25lZCwgc3BhY2lhbCBhbmQgdGVtcG9yYWwgdGltZSB0ZW5zZXMgYXJlIHZlcnkgbXVjaCBhbGlr ZS4gQ29udHJhc3QgdGhlIHByZXZpb3VzIHRocmVlIHRpbWUgdGVuc2VzIHdpdGggdGhlc2UgZm91 ciBzcGFjaWFsIHRlbnNlczoKCl9fJyd6dSdhJydfXyBzdW10Y2l0YTogbGVmdCBvZiB7c3VtdGl9 CgpfXycnY2EndScnX18gc3VtdGNpdGE6IGluIGZyb250IG9mIHtzdW10aX0KCl9fJydyaSd1Jydf XyBzdW10Y2l0YTogcmlnaHQgb2Yge3N1bXRpfQoKX18nJ2J1J3UnJ19fIHN1bXRjaXRhOiBhdCB0 aGUgc2FtZSBwbGFjZSBhcyB7c3VtdGl9IChzcGFjaWFsIGVxdWl2YWxlbnQgb2YgJydjYScnKQoK CgpfXycnbydvJydfXzogYXR0aXR1ZGluYWw6IGNvbXBsZXggcHVyZSBlbW90aW9uOiBwYXRpZW5j ZSAtIHRvbGVyYW5jZSAtIGFuZ2VyCgoKCldoYXQgd291bGQgJycubydvbmFpIHJpJ3Uge2t1fSBu dSBsbyBwcmVudSB7a3V9IGN1IGRhcnhpIGxvIGdlcmt1IHB1IHtrdX0ge2t1fSB7dmF1fSB7a2Vp fSB7dmF1fScnIG1lYW4/IChub3RpY2UgdGhlIGZpcnN0IGVsaWRlZCBrdSEpCgpfXycnZGFyeGkn J19fIHgxIGJlYXRzL2hpdHMgeDIgd2l0aCBpbnN0cnVtZW50IHgzIGF0IGxvY3VzIHg0CgoKCkFu c3dlcjogfn5ncmV5LGdyZXk64oCce2FuZ2VyIX0gVG8gdGhlIHJpZ2h0IChvZiBzb21ldGhpbmcs IHByb2JhYmx5IG1lKSBhbmQgaW4gdGhlIHBhc3QgKG9mIHNvbWUgZXZlbnQpLCBzb21ldGhpbmcg aXMgYW4gZXZlbnQgb2YgYSBwZXJzb24gYmVhdGluZyBhIGRvZy7igJ0gb3Ig4oCcQSBtYW4gaGl0 IGEgZG9nIHRvIG15IHJpZ2h0IeKAnX5+CgoKCklmIHRoZXJlIGFyZSBzZXZlcmFsIHRlbnNlIHN1 bXRjaXRhIGluIG9uZSBicmlkaSwgdGhlIHJ1bGUgaXMgdGhhdCB5b3UgcmVhZCB0aGVtIGZyb20g bGVmdCB0byByaWdodCwgdGhpbmtpbmcgaXQgYXMgYSBzbyBjYWxsZWQg4oCcaW1hZ2luYXJ5IGpv dXJuZXnigJ0sIFdoZXJlIHlvdSBiZWdpbiBhdCBhbiBpbXBsaWVkIHBvaW50IGluIHRpbWUgYW5k IHNwYWNlIChkZWZhdWx0OiB0aGUgc3BlYWtlcidzIG5vdyBhbmQgaGVyZSksIGFuZCB0aGVuIGZv bGxvdyB0aGUgc3VtdGNpdGEgb25lIGF0IGEgdGltZSBmcm9tIGxlZnQgdG8gcmlnaHQuCgpFeGFt cGxlCgonJ21pIHB1IHtrdX0gYmEge2t1fSBqaW1wZSBmaSBsbyBsb2pibyBmYSdvcm1hJ28ge2t1 fSB7dmF1fScnID0g4oCcQXQgc29tZSB0aW1lIGluIHRoZSBwYXN0LCBJIHdpbGwgYmUgYWJvdXQg dG8ga25vdyBhYm91dCBmYSdvcm1hJ29zLuKAnQoKJydtaSBiYSB7a3V9IHB1IHtrdX0gamltcGUg ZmkgbG8gbG9qYm8gZmEnb3JtYSdvIHtrdX0ge3ZhdX0nJyDigJxBdCBzb21lIHBvaW50IGluIHRo ZSBmdXR1cmUsIEkgd2lsbCBoYXZlIHVuZGVyc3Rvb2QgYWJvdXQgZmEnb3JtYSdvcy7igJ0KClNp bmNlIHdlIGRvIG5vdCBzcGVjaWZ5IHRoZSBhbW91bnQgb2YgdGltZSB3ZSBtb3ZlIGJhY2sgb3Ig Zm9ydGgsIHRoZSB1bmRlcnN0YW5kaW5nIGNvdWxkIGluIGJvdGggY2FzZXMgaGFwcGVuIGluIHRo ZSBmdXR1cmUgb3IgdGhlIHBhc3Qgb2YgdGhlIHBvaW50IG9mIHJlZmVyZW5jZS4KCgoKQWxzbywg aWYgc3BhY2lhbCBhbmQgdGVtcG9yYWwgdGVuc2VzIGFyZSBtaXhlZCwgdGhlIHJ1bGUgaXMgdG8g YWx3YXlzIHB1dCB0ZW1wb3JhbCBiZWZvcmUgc3BhY2lhbC4gSWYgdGhpcyBydWxlIGlzIHZpb2xh dGVkLCBpdCBjYW4gc29tZXRpbWVzIHJlc3VsdCBpbiBzeW50YWN0aWNhbCBhbWJpZ3VpdHksIHdo aWNoIExvamJhbiBkb2VzIG5vdCB0b2xlcmF0ZS4KCgoKU3VwcG9zZSB3ZSB3YW50IHRvIHNwZWNp ZnkgdGhhdCB0aGUgYSBtYW4gaGl0IGEgZG9nIGp1c3QgYSBtaW51dGUgYWdvLiBUaGUgd29yZHMg Jyd6aScnLCAnJ3phJycgYW5kICcnenUnJyBzcGVjaWZpZXMgYSBzaG9ydCwgdW5zcGVjaWZpZWQg KHByZXN1bWFibHkgbWVkaXVtKSBhbmQgbG9uZyBkaXN0YW5jZSBpbiB0aW1lLiBOb3RpY2UgdGhl IHZvd2VsIG9yZGVyICcnaScnLCAnJ2EnJyBhbmQgJyd1JycuIFRoaXMgb3JkZXIgYXBwZWFycyBh Z2FpbiBhbmQgYWdhaW4gaW4gTG9qYmFuLCBhbmQgbWlnaHQgYmUgd29ydGggdG8gbWVtb3JpemUu IOKAnFNob3J04oCdIGFuZCDigJxsb25n4oCdIGluIGFyZSBhbHdheXMgY29udGV4dCBkZXBlbmRl bnQsIHJlbGF0aXZlIGFuZCBzdWJqZWN0aXZlLiBUd28gaHVuZHJlZCB5ZWFycyBpcyBhIHNob3J0 IHRpbWUgZm9yIGEgc3BlY2llcyB0byBldm9sdmUsIGJ1dCBhIGxvbmcgdGltZSB0byB3YWl0IGZv ciB0aGUgYnVzLgoKX18nJ3ppJydfXyBzdW10Y2l0YTogT2N1cnJpbmcgdGhlIHNtYWxsIGRpc3Rh bmNlIG9mIHtzdW10aX0gaW4gdGltZSBmcm9tIHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJyd6YScn X18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSB1bnNwZWNpZmllZChtZWRpdW0pIGRpc3RhbmNlIG9m IHtzdW10aX0gaW4gdGltZSBmcm9tIHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJyd6dScnX18gc3Vt dGNpdGE6IE9jdXJyaW5nIHRoZSBmYXIgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiB0aW1lIGZyb20g dGhlIHBvaW50IG9mIHJlZmVyZW5jZSAKCgoKU2ltaWxhcmx5LCBzcGFjaWFsIGRpc3RhbmNlIGlz IG1hcmtlZCBieSAnJ3ZpJycsICcndmEnJyBhbmQgJyd2dScnIGZvciBzaG9ydCwgdW5zcGVjaWZp ZWQgKG1lZGl1bSkgYW5kIGxvbmcgZGlzdGFuY2UgaW4gc3BhY2UuCgpfXycndmknJ19fIHN1bXRj aXRhOiBPY3VycmluZyB0aGUgc21hbGwgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiBzcGFjZSBmcm9t IHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJyd2YScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSB1 bnNwZWNpZmllZChtZWRpdW0pIGRpc3RhbmNlIG9mIHtzdW10aX0gaW4gc3BhY2UgZnJvbSBwb2lu dCBvZiByZWZlcmVuY2UgCgpfXycndnUnJ19fIHN1bXRjaXRhOiBPY3VycmluZyB0aGUgZmFyIGRp c3RhbmNlIG9mIHtzdW10aX0gaW4gc3BhY2UgZnJvbSB0aGUgcG9pbnQgb2YgcmVmZXJlbmNlIAoK X18nJ2d1bmthJydfXyDigJx4MSB3b3JrcyBhdCB4MiB3aXRoIG9iamVjdGl2ZSB4M+KAnQoKCgpU cmFuc2xhdGU6ICcnYmEge2t1fSB6YSBrdSBtaSB2dSB7a3V9IGd1bmthIHt2YXV9JycKCgoKQW5z d2VyOiB+fmdyZXksZ3JleTrigJxTb21lIHRpbWUgaW4gdGhlIGZ1dHVyZSwgSSB3aWxsIHdvcmsg YSBwbGFjZSBsb25nIGF3YXnigJ1+fgoKTm90ZTogUGVvcGxlIHJhcmVseSB1c2UgJyd6aScnLCAn J3phJycgb3IgJyd6dScnIHdpdGhvdXQgYSAnJ3B1Jycgb3IgJydiYScnIGluIGZyb250IG9mIGl0 LiBUaGlzIGlzIGJlY2F1c2UgbW9zdCBwZW9wbGUgYWx3YXlzIG5lZWQgdG8gc3BlY2lmeSBwYXN0 IG9yIGZ1dHVyZSBpbiB0aGVpciBuYXRpdmUgbGFuZ3VhZ2UuIFdoZW4geW91IHRoaW5rIGFib3V0 IGl0IExvamJhbmljYWxseSwgbW9zdCBvZiB0aGUgdGltZSB0aGUgdGltZS1kaXJlY3Rpb24gaXMg b2J2aW91cywgYW5kIHRoZSAnJ3B1Jycgb3IgJydiYScnIHN1cGVyZmx1b3VzIQoKCgpUaGUgb3Jk ZXIgaW4gd2hpY2ggZGlyZWN0aW9uLXN1bXRjaXRhIGFuZCBkaXN0YW5jZS1zdW10Y2l0YSBhcmUg c2FpZCBtYWtlcyBhIGRpZmZlcmVuY2UuIFJlbWVtYmVyIHRoYXQgdGhlIG1lYW5pbmdzIG9mIHNl dmVyYWwgdGVuc2Ugd29yZHMgcGxhY2VkIHRvZ2V0aGVyIGFyZSBwaWN0dXJlZCBieSBhbiBpbWFn aW5hcnkgam91cm5leSByZWFkaW5nIGZyb20gbGVmdCB0byByaWdodC4gVGh1cyAnJ3B1IHp1Jycg aXMg4oCcYSBsb25nIHRpbWUgYWdv4oCdIHdoaWxlICcnenUgcHUnJyBpcyDigJxpbiB0aGUgcGFz dCBvZiBzb21lIHBvaW50IGluIHRpbWUgd2hpY2ggaXMgYSBsb25nIHRpbWUgdG93YXJkIHRoZSBm dXR1cmUgb3IgdGhlIHBhc3Qgb2Ygbm934oCdLiBJbiB0aGUgZmlyc3QgZXhhbXBsZSwgJydwdScn IHNob3dzIHRoYXQgd2UgYmVnaW4gaW4gdGhlIHBhc3QsICcnenUnJyB0aGVuIHRoYXQgaXQgaXMg YSBsb25nIHRpbWUgYmFja3dhcmRzLiBJbiB0aGUgc2Vjb25kIGV4YW1wbGUsICcnenUnJyBzaG93 cyB0aGF0IHdlIGJlZ2luIGF0IHNvbWUgcG9pbnQgZmFyIGF3YXkgaW4gdGltZSBmcm9tIG5vdywg JydwdScnIHRoZW4sIHRoYXQgd2UgbW92ZSBiYWNrd2FyZHMgZnJvbSB0aGF0IHBvaW50LiBUaHVz ICcncHUgenUnJyBpcyBhbHdheXMgaW4gdGhlIHBhc3QuICcnenUgcHUnJyBjb3VsZCBiZSBpbiB0 aGUgZnV0dXJlLiBUaGUgZmFjdCB0aGF0IHRoZXNlIHRpbWUgdGVuc2VzIGNvbWJpbmUgaW4gdGhp cyB3YXkgaXMgb25lIG9mIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRlbnNlIHN1bXRjaXRhIGFu ZCBvdGhlciBzdW10Y2l0YS4gVGhlIG1lYW5pbmdzIG9mIG90aGVyIHN1bXRjaXRhIGFyZSBub3Qg YWx0ZXJlZCBieSB0aGUgcHJlc2VuY2Ugb2YgYWRkaXRpb25hbCBzdW10Y2l0YSBpbiBhIGJyaWRp LgoKCgpBcyBicmllZmx5IGltcGxpZWQgZWFybGllciwgYWxsIHRoZXNlIGNvbnN0cnVjdHMgYmFz aWNhbGx5IHRyZWF0IGJyaWRpIGFzIGlmIHRoZXkgd2VyZSBwb2ludC1saWtlIGluIHRpbWUgYW5k IHNwYWNlLiBJbiBhY3R1YWxpdHksIG1vc3QgZXZlbnRzIHBsYXkgb3V0IG92ZXIgYSBzcGFuIG9m IHRpbWUgYW5kIHNwYWNlLiBJbiB0aGUgZm9sbG93aW5nIGZldyBwYXJhZ3JhcGhzLCB3ZSB3aWxs IGxlYXJuIGhvdyB0byBzcGVjaWZ5IGludGVydmFscyBvZiB0aW1lIGFuZCBzcGFjZS4KCgoKX18n J3plJ2knJ19fIHN1bXRjaXRhOiBzcGFubmluZyBvdmVyIHRoZSBzaG9ydCB0aW1lIG9mIHtzdW10 aX0KCl9fJyd6ZSdhJydfXyBzdW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0aGUgdW5zcGVjaWZpZWQg KG1lZGl1bSkgdGltZSBvZiB7c3VtdGl9CgpfXycnemUndScnX18gc3VtdGNpdGE6IHNwYW5uaW5n IG92ZXIgdGhlIGxvbmcgdGltZSBvZiB7c3VtdGl9CgoKCl9fJyd2ZSdpJydfXyBzdW10Y2l0YTog c3Bhbm5pbmcgb3ZlciB0aGUgc2hvcnQgc3BhY2Ugb2Yge3N1bXRpfQoKX18nJ3ZlJ2EnJ19fIHN1 bXRjaXRhOiBzcGFubmluZyBvdmVyIHRoZSB1bnNwZWNpZmllZCAobWVkaXVtKSBzcGFjZSBvZiB7 c3VtdGl9CgpfXycndmUndScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgc3Bh Y2Ugb2Yge3N1bXRpfQoKCgpTaXggd29yZHMgYXQgYSB0aW1lLCBJIGtub3csIGJ1dCByZW1lbWJl cmluZyB0aGUgdm93ZWwgc2VxdWVuY2UgYW5kIHRoZSBzaW1pbGFyaXR5IG9mIHRoZSBpbml0aWFs IGxldHRlciB6IGZvciB0ZW1wb3JhbCB0ZW5zZXMgYW5kIHYgZm9yIHNwYWNpYWwgdGVuc2VzIG1p Z2h0IGhlbHAgdGhlIG1lbW9yaXppbmcuCgpfXycnLm9pJydfXyAtIGF0dGl0dWRpbmFsOiBwYWlu IC0gcGxlYXN1cmUKCgoKVHJhbnNsYXRlOiAnJy5vaSBkYWkgZG8gdmUndSB7a3V9IGtsYW1hIGxv IGRvdGNvIGd1Z2RlIHtrdX0gemUndSB7a3V9IHt2YXV9JycKCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTrigJxPdWNoLCB5b3Ugc3BlbmQgYSBsb25nIHRpbWUgdHJhdmVsaW5nIGEgbG9uZyBzcGFjZSB0 byBHZXJtYW554oCdIH5+CgoKClRob3VnaCBtb3N0IHBlb3BsZSBhcmUgbm90IGZhbWlsaWFyIHdp dGggc3BhY2lhbCB0ZW5zZXMsIHRoZXNlIG5ldyB3b3JkcyBjYW4gb3BlbiB1cCBmb3Igc29tZSBw cmV0dHkgc3dlZXQgdXNlcy4gT25lIGNvdWxkLCBmb3IgaW5zdGFuY2UsIHRyYW5zbGF0ZSDigJxU aGF0J3MgYSBiaWcgZG9n4oCdIGFzICcndGkgdmUndSB7a3V9IGdlcmt1IHt2YXV9JycuIFNheWlu Zzog4oCcVGhpcyB0aGluZyBkb2dzIGZvciBhIGxvbmcgc3BhY2XigJ0gbWFrZXMgeW91IHNvdW5k IHJldGFyZGVkIGluIEVuZ2xpc2gsIGJ1dCB3ZWxsLXNwb2tlbiBpbiBMb2piYW4hCgoKCicnemUn dScnIGFuZCBpdHMgYnJvdGhlcnMgYWxzbyBjb21iaW5lIHdpdGggb3RoZXIgdGVuc2VzIHRvIGZv cm0gY29tcG91bmQgdGVuc2VzLiBUaGUgcnVsZSBmb3IgJyd6ZSd1JycgYW5kIHRoZSBvdGhlcnMg YXJlIHRoYXQgYW55IHRlbnNlcyBwcmVjZWRpbmcgaXQgbWFya3MgYW4gZW5kcG9pbnQgb2YgdGhl IHByb2Nlc3MgKHJlbGF0aXZlIHRvIHRoZSBwb2ludCBvZiByZWZlcmVuY2UpIGFuZCBhbnkgdGVu c2VzIGNvbWluZyBhZnRlciBpdCBtYXJrcyB0aGUgb3RoZXIgZW5kcG9pbnQgcmVsYXRpdmUgdG8g dGhlIGZpcnN0LiBUaGlzIHNob3VsZCBiZSBkZW1vbnN0cmF0ZWQgd2l0aCBhIGNvdXBsZSBvZiBl eGFtcGxlczoKCicnLm8nb2N1J2kgZG8gY2l0a2EgcHUge2t1fSB6ZSd1IHtrdX0gYmEge2t1fSB6 dSB7a3V9IHt2YXV9JycgLSDigJx7dG9sZXJhbmNlfSB5b3UgZWF0IGJlZ2lubmluZyBpbiB0aGUg cGFzdCBhbmQgZm9yIGEgbG9uZyB0aW1lIGVuZGluZyBhdCBzb21lIHBvaW50IGZhciBpbnRvIHRo ZSBmdXR1cmUgb2Ygd2hlbiB5b3Ugc3RhcnRlZOKAnSBvciDigJxIbXBmLCB5b3UgYXRlIGZvciBh IGxvbmcgdGltZeKAnS4gT25lIGNhbiBhbHNvIGNvbnRyYXN0ICcnZG8gY2Ege2t1fSB6ZSdpIHtr dX0gcHUge2t1fSBrbGFtYSB7dmF1fScnIHdpdGggJydkbyBwdSB7a3V9IHplJ2kge2t1fSBjYSB7 a3V9IGtsYW1hIHt2YXV9JycuIFRoZSBmaXJzdCBldmVudCBvZiB0cmF2ZWxpbmcgaGFzIG9uZSBl bmRwb2ludCBpbiB0aGUgcHJlc2VudCBhbmQgZXh0ZW5kcyBhIGxpdHRsZSB0b3dhcmRzIHRoZSBw YXN0LCB3aGlsZSB0aGUgc2Vjb25kIGV2ZW50IGhhcyBvbmUgZW5kcG9pbnQgaW4gdGhlIHBhc3Qg YW5kIGV4dGVuZHMgb25seSB0byB0aGUgcHJlc2VudCAodGhhdCBpcywgc2xpZ2h0eSBpbnRvIHRo ZSBwYXN0IG9yIGZ1dHVyZSkgb2YgdGhhdCBlbmRwb2ludC4KCl9fJydqbWl2ZScnX18g4oCceDEg aXMgYWxpdmUgYnkgc3RhbmRhcmQgeDLigJ0KCgoKV2hhdCBkb2VzICcnLnVpIG1pIHB1IHtrdX0g emkge2t1fSB6ZSd1IHtrdX0gam1pdmUge3ZhdX0nJyBleHByZXNzPwoKCgpBbnN3ZXI6IH5+Z3Jl eSxncmV5OuKAnHtoYXBwaW5lc3MhfSBJIGxpdmUgZnJvbSBhIGxpdHRsZSBpbnRvIHRoZSBwYXN0 IGFuZCBhIGxvbmcgd2F5IHRvd2FyZHMgdGhlIGZ1dHVyZSBvciBwYXN0IChvYnZpb3VzbHkgdGhl IGZ1dHVyZSwgaW4gdGhpcyBjYXNlKSBvZiB0aGF0IGV2ZW504oCdIG9yIOKAnEkgYW0geW91bmcs IGFuZCBoYXZlIG1vc3Qgb2YgbXkgbGlmZSBhaGVhZCBvZiBtZSA6KeKAnX5+CgoKCkp1c3QgdG8g dW5kZXJsaW5lIHRoZSBzaW1pbGFyaXR5IHdpdGggc3BhY2lhbCB0ZW5zZXMsIGxldCdzIGhhdmUg YW5vdGhlciBleGFtcGxlLCB0aGlzIHRpbWUgd2l0aCBzcGFjaWFsIHRlbnNlczoKCl9fJycudSdl JydfXyBhdHRpdHVkaW5hbDogd29uZGVyIC0gY29tbW9ucGxhY2UKCgoKJycudSdlIHphJ2Ege2t1 fSBidSd1IHtrdX0gdmUndSB7a3V9IGNhJ3Uge2t1fSB6ZGFuaSB7dmF1fScnIC0gV2hhdCBkb2Vz IGl0IG1lYW4/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6IOKAnHt3b25kZXJ9IHtJIG9ic2VydmUh fSBFeHRlbmRpbmcgYSBsb25nIHNwYWNlIGZyb20gaGVyZSB0byBteSBmcm9udCBpcyBhIGhvbWUu 4oCdIG9yIOKAnFdvdywgdGhpcyBob21lIGV4dGVuZGluZyBhaGVhZCBpcyBodWdlIeKAnX5+CgoK CkJlZm9yZSB3ZSBjb250aW51ZSB3aXRoIHRoaXMgc3ludGF4LWhlYXZ5IHRlbnNlIHN5c3RlbSwg aSByZWNvbW1lbmQgc3BlbmRpbmcgYXQgbGVhc3QgdGVuIG1pbnV0ZXMgZG9pbmcgc29tZXRoaW5n IHdoaWNoIGRvZXNuJ3Qgb2NjdXB5IHlvdXIgYnJhaW4gaW4gb3JkZXIgdG8gbGV0IHRoZSBpbmZv cm1hdGlvbiBzaW5rIGluLiBTaW5nIGEgc29uZyBvciBlYXQgYSBjb29raWUgdmVyeSBzbG93bHkg LSB3aGF0ZXZlciwgYXMgbG9uZyBhcyB5b3UgbGV0IHlvdXIgbWluZCByZXN0LgoKCgohIUxvamJh biBMZXNzb25zIC0gTGVzc29uIGVsZXZlbiAoWkFoTykKClRob3VnaCB3ZSB3b24ndCBnbyB0aHJv dWdoIGFsbCBMb2piYW4gdGVuc2UgY29uc3RydWN0cyBmb3Igbm93LCB0aGVyZSBpcyBvbmUgb3Ro ZXIga2luZCBvZiB0ZW5zZSB0aGF0IEkgdGhpbmsgc2hvdWxkIGJlIHRhdWdodCBub3cuIFRoZXNl IGFyZSBjYWxsZWQg4oCcZXZlbnQgY29udG91cnPigJ0sIGFuZCByZXByZXNlbnQgYSB2ZXJ5IGRp ZmZlcmVudCB3YXkgb2Ygdmlld2luZyB0ZW5zZXMgdGhhdCB3ZSBoYXZlIHNlZW4gc28gZmFyLiBT byBsZXQncyBnZXQgdG8gaXQ6CgoKClVzaW5nIHRoZSB0ZW5zZXMgd2UgaGF2ZSBsZWFybmVkIHNv IGZhciwgd2UgY2FuIGltYWdpbmUgYW4gaW5kZWZpbml0ZSB0aW1lIGxpbmUsIGFuZCB3ZSB0aGVu IHBsYWNlIGV2ZW50cyBvbiB0aGF0IGxpbmUgcmVsYXRpdmUgdG8gdGhlIOKAnG5vd+KAnS4gV2l0 aCBldmVudCBjb250b3VycywgaG93ZXZlciwgd2UgdmlldyBlYWNoIGV2ZW50IGFzIGEgcHJvY2Vz cywgd2hpY2ggaGFzIGNlcnRhaW4gc3RhZ2VzOiBBIHRpbWUgYmVmb3JlIGl0IHVuZm9sZHMsIGEg dGltZSB3aGVuIGl0IGJlZ2lucywgYSB0aW1lIHdoZW4gaXQgaXMgaW4gcHJvY2VzcywgYSB0aW1l IHdoZW4gaXQgZW5kcywgYW5kIGEgdGltZSBhZnRlciBpdCBoYXMgZW5kZWQuIEV2ZW50IGNvbnRv dXJzIHRoZW4gdGVsbHMgdXMgd2hpY2ggcGFydCBvZiB0aGUgZXZlbnQncyBwcm9jZXNzIHdhcyBo YXBwZW5pbmcgZHVyaW5nIHRoZSB0aW1lIHNwZWNpZmllZCBieSB0aGUgb3RoZXIgdGVuc2VzLiBX ZSBuZWVkIGEgY291cGxlIG9mIHRlbnNlcyBmaXJzdDoKCgoKX18nJ3B1J28nJ19fIC0gc3VtdGNp dGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGhhcyBub3QgeWV0IGhhcHBlbmVkIGR1cmluZyB7c3Vt dGl9CgpfXycnY2EnbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW4g cHJvY2VzcyBkdXJpbmcge3N1bXRpfQoKX18nJ2JhJ28nJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNv bnRvdXI6IFRoZSBwcm9jZXNzIG9mIGJyaWRpIGhhcyBlbmRlZCBkdXJpbmcge3N1bXRpfQoKCgpU aGlzIG5lZWRzIHRvIGJlIGRlbW9uc3RyYXRlZCBieSBzb21lIGV4YW1wbGVzLiBXaGF0J3MgJycu dWkgbWkgcHUnbyB7a3V9IHNlIHpkYW5pIHt2YXV9JycgbWVhbj8KCgoKQW5zd2VyOiDigJxZYXks IEknbGwgYmVnaW4gdG8gaGF2ZSBhIGhvbWXigJ0uCgoKCkJ1dCBoZXksIHlvdSBhc2ssIHdoeSBu b3QganVzdCBzYXkgJycudWkgbWkgYmEge2t1fSBzZSB6ZGFuaSB7dmF1fScnIGFuZCBldmVuIHNh dmUgYSBzeWxsYWJsZT8gQmVjYXVzZSwgcmVtZW1iZXIsIHNheWluZyB0aGF0IHlvdSB3aWxsIGhh dmUgYSBob21lIGluIHRoZSBmdXR1cmUgc2F5cyBub3RoaW5nIGFib3V0IHdoZXRoZXIgeW91IGhh dmUgYSBob21lIG5vdy4gVXNpbmcgJydwdSdvJycsIHRob3VnaCwgeW91IHNheSB0aGF0IHlvdSBh cmUgbm93IGluIHRoZSBwYXN0IG9mIHRoZSBwcm9jZXNzIG9mIHlvdSBoYXZpbmcgYSBob21lLCB3 aGljaCBtZWFucyB0aGF0IHlvdSBkb24ndCBoYXZlIG9uZSBub3cuCgpOb3RlLCBieSB0aGUgd2F5 LCB0aGF0ICcnbWkgYmEge2t1fSBzZSB6ZGFuaSB7dmF1fScnIGlzIHNpbWlsYXIgdG8gJydtaSBw dSdvIHtrdX0gc2UgemRhbmkge3ZhdX0nJywgYW5kIGxpa2V3aXNlIHdpdGggJydiYSdvJycgYW5k ICcncHUnJy4gV2h5IGRvIHRoZXkgc2VlbSByZXZlcnNlZD8gQmVjYXVzZSBldmVudCBjb250b3Vy cyB2aWV3IHRoZSBwcmVzZW50IGFzIHNlZW4gZnJvbSB0aGUgdmlld3BvaW50IG9mIHRoZSBwcm9j ZXNzLCB3aGVyZWFzIHRoZSBvdGhlciB0ZW5zZXMgdmlldyBldmVudHMgc2VlbiBmcm9tIHRoZSBw cmVzZW50LgoKCgpPZnRlbiwgZXZlbnQgY29udG91cnMgYXJlIG1vcmUgcHJlY2lzZSB0aGF0IG90 aGVyIGtpbmQgb2YgdGVuc2VzLiBFdmVuIG1vcmUgY2xhcml0eSBpcyBhY2hpZXZlZCBieSBjb21i aW5pbmcgc2V2ZXJhbCB0ZW5zZXM6ICcnLmEnbyBtaSBiYXtrdX0gemkge2t1fSBiYSdvIHtrdX0g Z3Vua2Ege3ZhdX0nJyAtIOKAnEkgaG9wZSBJJ3ZlIHNvb24gZmluaXNoZWQgd29ya2luZy7igJ0K CgoKSW4gTG9qYmFuLCB3ZSBhbHNvIG9wZXJhdGUgd2l0aCBhbiBldmVudCdzIOKAnG5hdHVyYWwg YmVnaW5uaW5n4oCdIGFuZCBpdHMg4oCcbmF0dXJhbCBlbmTigJ0uIFRoZSB0ZXJtIOKAnG5hdHVy YWzigJ0gaXMgaGlnaGx5IHN1YmplY3RpdmUgaW4gdGhpcyBzZW5zZSwgYW5kIHRoZSBuYXR1cmFs IGVuZCByZWZlcnMgdG8gdGhlIHBvaW50IGluIHRoZSBwcm9jZXNzIHdoZXJlIGl0IHNob3VsZCBl bmQuIFlvdSBjYW4gc2F5IGFib3V0IGEgbGF0ZSB0cmFpbiwgZm9yIGluc3RhbmNlLCB0aGF0IGl0 cyBwcm9jZXNzIG9mIHJlYWNoaW5nIHlvdSBpcyBub3cgZXh0ZW5kaW5nIGJleW9uZCBpdHMgbmF0 dXJhbCBlbmQuIEFuIHVuZGVyY29va2VkLCBidXQgc2VydmVkIG1lYWwsIHNpbWlsYXJseSwgaXMg YmVpbmcgZWF0ZW4gYmVmb3JlIHRoYXQgcHJvY2VzcycgbmF0dXJhbCBiZWdpbm5pbmcuIFRoZSBl dmVudCBjb250b3VycyB1c2VkIGluIHRoZXNlIGV4YW1wbGVzIGFyZSBhcyBmb2xsb3dzOgoKCgpf XycnemEnbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW4gcHJvY2Vz cyBiZXlvbmQgaXRzIG5hdHVyYWwgZW5kIGR1cmluZyB7c3VtdGl9CgpfXycneGEnbycnX18gLSBz dW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW1tYXR1cmVseSBpbiBwcm9jZXNzIGR1 cmluZyB7c3VtdGl9CgoKCl9fJydjaWRqYScnX186IOKAnHgxIGlzIGZvb2QsIHdoaWNoIGlzIGVk aWJsZSBmb3IgeDLigJ0KCgoKVHJhbnNsYXRlOiAnJy5vaSBkbyBjaXRrYSB6YSdvIGxvIG51IGRv IGJhJ28ge2t1fSB1J2UgY2l0a2Egem8nZSBub2kgY2lkamEgZG8ge3ZhdX0ge2t1J299IHt2YXV9 IHtrZWl9IHtrdX0nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnE95LCB5b3Uga2VlcCBlYXRp bmcgd2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCwgaW5jcmVkaWJseSwgZWF0aW5nIHNvbWV0aGluZyBl ZGlibGUh4oCdfn4KCgoKe2ltZyBmaWxlSWQ9IjIiIHRodW1iPSJ5IiByZWw9ImJveFtnXSJ9CgpJ bWFnZSBhYm92ZTogWkFoTyB0ZW5zZXMgKGV2ZW50IGNvbnRvdXJzKS4gQWxsIHRlbnNlcyBhYm92 ZSB0aGUgbGluZSBvZiB0aGUgZXZlbnQgc2lnbmlmeSBzdGFnZXMgY292ZXJpbmcgYW4gYW1vdW50 IG9mIHRpbWUuIEFsbCB0ZW5zZXMgYmVsb3cgdGhlIGV2ZW50IGxpbmUgc2lnbmlmeSBzdGFnZXMg d2hpY2ggYXJlIHBvaW50LWxpa2UuCgoKCkFsbCBvZiB0aGVzZSB0ZW5zZXMgaGF2ZSBiZWVuIGRl c2NyaWJpbmcgc3RhZ2VzIG9mIGEgcHJvY2VzcyB3aGljaCB0YWtlcyBzb21lIHRpbWUgKGFzIHNo b3duIG9uIHRoZSBncmFwaCBhYm92ZTsgdGhvc2UgdGVuc2VzIGFib3ZlIHRoZSBldmVudCBsaWtl KS4gQnV0IG1hbnkgb2YgdGhlIGV2ZW50IGNvbnRvdXJzIGRlc2NyaWJlcyBwb2ludCBsaWtlIHN0 YWdlcyBpbiB0aGUgcHJvY2VzcywgbGlrZSBpdHMgYmVnaW5uaW5nLiBBcyBpcyB0cnVlIG9mICcn Y2EnJyBhbmQgJydidSd1JycsIHRoZXkgYWN0dWFsbHkgZXh0ZW5kIHNsaWdodGx5IGludG8gdGhl IHBhc3QgYW5kIGZ1dHVyZSBvZiB0aGF0IHBvaW50LCBhbmQgbmVlZCBub3QgdG8gYmUgcHJlY2lz ZS4KCgoKVGhlIHR3byBtb3N0IGltcG9ydGFudCBwb2ludC1saWtlIGV2ZW50IGNvbnRvdXJzIGFy ZToKCl9fJydjbydhJydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBhdCBp dHMgYmVnaW5uaW5nIGR1cmluZyB7c3VtdGl9CgpfXycnY28ndScnX18gLSBzdW10Y2l0YTogZXZl bnQgY29udG91cjogQnJpZGkgaXMgYXQgaXRzIGVuZGluZyBkdXJpbmcge3N1bXRpfQoKCgpGdXJ0 aGVybW9yZSwgdGhlcmUgaXMgYSBwb2ludCB3aGVyZSB0aGUgcHJvY2VzcyBpcyBuYXR1cmFsbHkg Y29tcGxldGUsIGJ1dCBub3QgbmVjZXNzYXJpbHkgaGFzIGVuZGVkIHlldDoKCl9fJydtbyd1Jydf XyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBhdCBpdHMgbmF0dXJhbCBlbmRp bmcgZHVyaW5nIHtzdW10aX0KCk1vc3Qgb2YgdGhlIHRpbWUsIHRob3VnaCwgcHJvY2Vzc2VzIGFj dHVhbGx5IGVuZCBhdCB0aGVpciBuYXR1cmFsIGVuZGluZzsgdGhpcyBpcyB3aGF0IG1ha2VzIGl0 IG5hdHVyYWwuIFRyYWlucyBhcmUgbm90IHVzdWFsbHkgbGF0ZSwgYW5kIHBlb3BsZSB1c3VhbGx5 IHJldHJhaW4gdGhlbXNlbHZlcyB0byBlYXQgb25seSBlZGlibGUgZm9vZC4KCgoKU2luY2UgYSBw cm9jZXNzIGNhbiBiZSBpbnRlcnJ1cHRlZCBhbmQgcmVzdW1lZCwgdGhlc2UgcG9pbnRzIGhhdmUg ZWFybmVkIHRoZWlyIG93biBldmVudCBjb250b3VyIGFsc286CgpfXycnZGUnYScnX18gLSBzdW10 Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgcGF1c2luZyBkdXJpbmcge3N1bXRpfQoKX18n J2RpJ2EnJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIHJlc3VtaW5nIGR1 cmluZyB7c3VtdGl9CgoKCkluIGZhY3QsIHNpbmNlICcnanVuZGknJyBtZWFucyDigJx4MSBwYXlz IGF0dGVudGlvbiB0byB4MuKAnSwgJydkZSdhIGp1bmRpJycgYW5kICcnZGknYSBqdW5kaScnIGFy ZSBjb21tb24gTG9qYmFuIHdheXMgb2Ygc2F5aW5nIOKAnEJSQuKAnSBhbmQg4oCcYmFja+KAnS4g T25lIGNvdWxkIG9mIGNvdXJzZSBhbHNvIHNheSB0aGUgZXZlbnQgY29udG91cnMgYnkgdGhlbXNl bHZlcyBhbmQgaG9wZSB0aGUgcG9pbnQgZ2V0cyBhY3Jvc3MuCgoKCkZpbmFsbHksIG9uZSBjYW4g dHJlYXQgYW4gZW50aXJlIGV2ZW50LCBmcm9tIHRoZSBiZWdpbm5pbmcgdG8gdGhlIGVuZCBhcyBv bmUgc2luZ2xlIHBvaW50IHVzaW5nICcnY28naScnOgoKX18nJ3Blbm1pJydfXyDigJx4MSBtZWV0 cyB4MiBhdCBsb2NhdGlvbiB4M+KAnQoKJydtaSBwdSB7a3V9IHppIHtrdX0gY28naSB7a3V9IHBl bm1pIGxvIGRvdGNvIHByZW51IHtrdX0ge3ZhdX0nJyAtIOKAnEEgbGl0dGxlIHdoaWxlIGFnbywg SSB3YXMgYXQgdGhlIHBvaW50IGluIHRpbWUgd2hlcmUgaSBtZXQgYSBHZXJtYW4gcGVyc29u4oCd CgoKCgoKISFMb2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VsdmUgKG9yZGVycyBhbmQgcXVlc3Rp b25zKQoKUGhldywgdGhvc2UgdHdvIGxvbmcgbGVzc29ucyB3aXRoIHN5bnRheCBoZWF2eSBMb2pi YW4gZ2l2ZXMgdGhlIGJyYWluIHNvbWV0aGluZyB0byBwb25kZXIgYWJvdXQuIEVzcGVjaWFsbHkg YmVjYXVzZSBpdCdzIHNvIGRpZmZlcmVudCBmcm9tIEVuZ2xpc2guIFNvIGxldCdzIHR1cm4gdG8g c29tZXRoaW5nIGEgbGl0dGxlIGxpZ2h0ZXI6IE9yZGVycyBhbmQgcXVlc3Rpb25zLgoKCgpXaGF0 IHRoZS4uLiBfX3NpdCB1cCBhbmQgZm9jdXMhX18KCgoKU2luY2UgdGhlIHdheSB0byBleHByZXNz IG9yZGVycyBpbiBFbmdsaXNoIGlzIHRvIGxlYXZlIG91dCB0aGUgc3ViamVjdCBvZiB0aGUgY2xh dXNlLCB3aHkgZGlkIHlvdSBhc3N1bWUgdGhhdCBpdCB3YXMgeW91IEkgd2FzIHNwZWFraW5nIHRv LCBhbmQgbm90IG9yZGVyaW5nIG15c2VsZiwgb3IgZXhwcmVzc2luZyB0aGUgb2JsaWdhdGlvbiBz b21lb25lIGVsc2UgaGFzPyBCZWNhdXNlIHRoZSBFbmdsaXNoIGxhbmd1YWdlIHVuZGVyc3RhbmRz IHRoYXQgb3JkZXJzLCBieSB0aGVpciB2ZXJ5IG5hdHVyZSwgYXJlIGFsd2F5cyBkaXJlY3RlZCB0 b3dhcmRzIHRoZSBsaXN0ZW5lciAtIHRoZSDigJx5b3XigJ0sIGFuZCBzbyB0aGUgc3ViamVjdCBp cyBub3QgbmVjZXNzYXJ5LgoKSW4gTG9qYmFuLCBlbGlkaW5nIHRoZSBzdWJqZWN0IHlpZWxkcyAn J3pvJ2UnJywgc28gdGhhdCBwb3NzaWJpbGl0eSBpcyBzYWRseSBub3Qgb3BlbiB0byB1cy4gSW5z dGVhZCwgd2UgdXNlIHRoZSB3b3JkICcna28nJywgd2hpY2ggaXMgdGhlIGltcGVyYXRpdmUgZm9y bSBvZiAnJ2RvJycuIEdyYW1tYXRpY2FsbHkgYW5kIGJyaWRpLXdpc2UsIGl0J3MgZXF1aXZhbGVu dCB0byAnJ2RvJycsIGJ1dCBpdCBhZGRzIGEgbGF5ZXIgb2Ygc2VtYW50aWNzLCBzaW5jZSBpdCB0 dXJucyBldmVyeSBzdGF0ZW1lbnQgd2l0aCAnJ2tvJycgaW4gaXQgaW50byBhbiBvcmRlci4g4oCc RG8gc3VjaCB0aGF0IHRoaXMgc2VudGVuY2UgaXMgdHJ1ZSBmb3IgeW91PScna28nJyHigJ0gRm9y IHRoZSBzYW1lIHJlYXNvbiB3ZSBkb24ndCBuZWVkIHRoZSBzdWJqZWN0IGluIEVuZ2xpc2ggc2Vu dGVuY2VzLCB3ZSBkb24ndCBuZWVkIG9yZGVyLXdvcmRzIGRlcml2ZWQgZnJvbSBhbnkgb3RoZXIg c3VtdGkgdGhhbiAnJ2RvJycuCgoKCkhvdyBjb3VsZCB5b3Ugb3JkZXIgb25lIHRvIGdvIGZhciBh d2F5IGZvciBhIGxvbmcgdGltZSAodXNpbmcgJydrbGFtYScnIGFzIHRoZSBvbmx5IHNlbGJyaT8p CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6a28gdmUndSB6ZSd1IGtsYW1hfn4KCignJy5pIHphJ2Eg ZGFpIGEnbyBtaSBjYSBjbyd1IGNpc2thIGxvIGZhJ29ybWEnbyAuaSBrbyBqaW1wZSB2YXUgLnVp JycpIC0gbG9vayB1cCBjaXNrYSBhbmQgd29yayBpdCBvdXQuCgoKClF1ZXN0aW9ucyBpbiBMb2pi YW4gYXJlIHZlcnkgZWFzeSB0byBsZWFybiwgYW5kIHRoZXkgY29tZSBpbiB0d28ga2luZHM6IEZp bGwgaW4gdGhlIGJsYW5rLCBhbmQgdHJ1ZS9mYWxzZSBxdWVzdGlvbnMuIExldCdzIGJlZ2luIHdp dGggdGhlIHRydWUtZmFsc2UgcXVlc3Rpb24ga2luZCAtIHRoYXQncyBwcmV0dHkgb3ZlcmNvbWVh YmxlLCBzaW5jZSBpdCBvbmx5IGludm9sdmVzIG9uZSB3b3JkLCAnJ3h1JycuCgonJ3h1Jycgd29y a3MgbGlrZSBhbiBhdHRpdHVkaW5hbCBpbiB0aGUgc2Vuc2UgdGhhdCBpdCBjYW4gZ28gYW55d2hl cmUsIGFuZCBpdCBhcHBsaWVzIHRvIHRoZSBwcmVjZWRpbmcgd29yZCAob3IgY29uc3RydWN0KS4g SXQgdGhlbiB0cmFuc2Zvcm1zIHRoZSBzZW50ZW5jZSBpbnRvIGEgcXVlc3Rpb24sIGFza2luZyB3 aGV0aGVyIGl0IGlzIHRydWUgb3Igbm90LiBJbiBvcmRlciB0byBhZmZpcm0sIHlvdSBzaW1wbHkg cmVwZWF0IHRoZSBicmlkaToKCicneHUgdmUndSB6ZGFuaSBkbycnICcnLmkgdmUndSB6ZGFuaSBt aScnLCBvciB5b3UganVzdCByZXBlYXQgdGhlIHRoZSBzZWxicmksIHdoaWNoIGlzIHRoZSBicmlk aSB3aXRoIGFsbCB0aGUgc3VtdGkgYW5kIHRlbnNlcyBlbGlkZWQ6ICcnemRhbmknJy4KClRoZXJl IGlzIGFuIGV2ZW4gZWFzaWVyIHdheSB0byBhZmZpcm0gdXNpbmcgYnJpa2EnaSwgYnV0IHRob3Nl IGFyZSBhIHRhbGUgZm9yIGFub3RoZXIgdGltZS4gVG8gYW5zd2VyIOKAnG5v4oCdIG9yIOKAnGZh bHNl4oCdLCB5b3Ugc2ltcGx5IGFuc3dlciB3aXRoIHRoZSBicmlkaSBuZWdhdGVkLiBUaGF0IHRv bywgd2lsbCBiZSBsZWZ0IGZvciBsYXRlciwgYnV0IHdlIHdpbGwgcmV0dXJuIHRvIHF1ZXN0aW9u IGFuc3dlcmluZyBieSB0aGVuLgoKCgpUaGUgb3RoZXIga2luZCBpcyBmaWxsIGluIHRoZSBibGFu ay4gSGVyZSwgeW91IGFzayBmb3IgdGhlIHF1ZXN0aW9uIHdvcmQgdG8gYmUgcmVwbGFjZWQgZm9y IGEgY29uc3RydWN0LCB3aGljaCBtYWtlcyB0aGUgYnJpZGkgY29ycmVjdC4gVGhlcmUgYXJlIHNl dmVyYWwgb2YgdGhlc2Ugd29yZHMsIGRlcGVuZGluZyBvbiB3aGF0IHlvdSBhcmUgYXNraW5nIGFi b3V0OgoKX18nJ21hJydfXyAtIHN1bXRpIHF1ZXN0aW9uCgpfXycnbW8nJ19fIC0gc2VsYnJpIHF1 ZXN0aW9uCgpfXycneG8nJ19fIC0gbnVtYmVyIHF1ZXN0aW9uCgpfXycnY3UnZScnX18gLSB0ZW5z ZSBxdWVzdGlvbgoKCgpBcyB3ZWxsIGFzIG1hbnkgb3RoZXJzLiBUbyBhc2sgYWJvdXQgYSBzdW10 aSwgeW91IHRoZW4ganVzdCBwbGFjZSB0aGUgcXVlc3Rpb24gd29yZCB3aGVyZSB5b3Ugd2FudCB5 b3VyIGFuc3dlcjogJydkbyBkdW5kYSBtYSBtaScnIC0gYXNrcyBmb3IgdGhlIHgyIHRvIGJlIGZp bGxlZCB3aXRoIGEgY29ycmVjdCBzdW10aS4g4oCcWW91IGdpdmUgd2hhdCB0byBtZT/igJ0uIFRo ZSBjb21iaW5hdGlvbiBvZiAnJ3N1bXRjaXRhJycgKyAnJ21hJycgaXMgdmVyeSB1c2VmdWwgaW5k ZWVkOgoKX18nJ211J2knJ19fIC0gc3VtdGNpdGE6IG1vdGl2YXRlZCBieSB0aGUgYWJzdHJhY3Rp b24gb2Yge3N1bXRpfQoKCgonJy5vaSBkbyBkYXJ4aSBtaSBtdSdpIG1hJycgLSDigJxPeSwgd2h5 IGRvIHlvdSBoaXQgbWU/IeKAnQoKCgpMZXQncyB0cnkgYW5vdGhlciBvbmUuIFRoaXMgdGltZSwg eW91IHRyYW5zbGF0ZToKCicnLnVpIGRhaSBkbyBjYSB6ZSd1IHB1IG1vJycKCgoKQW5zd2VyOiB+ fmdyZXksZ3JleTrigJxZb3UncmUgaGFwcHksIHdoYXQgaGF2ZSB5b3UgYmVlbiBkb2luZyBhbGwg dGhpcyBsb25nIHRpbWUgdW50aWwgbm93P+KAnSBUZWNobmljYWxseSwgaXQgY291bGQgYWxzbyBt ZWFuIOKAnHdoYXQgaGF2ZSB5b3UgYmVlbj/igJ0sIGJ1dCBhbnN3ZXJpbmcgd2l0aCAnJy51YSBu YWkgbGknYSByZW1uYScnIChVaCwgaHVtYW4sIG9idmlvdXNseSkgaXMganVzdCBiZWluZyBpbmNy ZWRpYmx5IGFubm95aW5nIG9uIHB1cnBvc2Uufn4KCgoKU2luY2UgdG9uZSBvZiB2b2ljZSBvciBz ZW50ZW5jZSBzdHJ1Y3R1cmUgZG9lcyBub3QgcmV2ZWFsIHdoZXRoZXIgYSBzZW50ZW5jZSBpcyBh IHF1ZXN0aW9uIG9yIG5vdCwgb25lIGJldHRlciBub3QgbWlzcyB0aGUgcXVlc3Rpb24gd29yZC4g VGhlcmVmb3JlLCBzaW5jZSBwZW9wbGUgdGVuZCB0byBmb2N1cyBtb3JlIG9uIHdvcmRzIGluIHRo ZSBiZWdpbm5pbmcgb3IgYXQgdGhlIGVuZCBvZiBzZW50ZW5jZXMsIGl0J3MgdXN1YWxseSB3b3J0 aCB0aGUgd2hpbGUgdG8gcmUtb3JkZXIgdGhlIHNlbnRlbmNlIHNvIHRoYXQgdGhlIHF1ZXN0aW9u IHdvcmRzIGFyZSBhdCB0aG9zZSBwbGFjZXMuIElmIHRoYXQgaXMgbm90IGZlYXNhYmxlLCAnJ3Bh dScnIGlzIGFuIGF0dGl0dWRpbmFsIG1hcmtpbmcgdGhhdCB0aGUgc2VudGVuY2UgaXMgYSBxdWVz dGlvbi4gQ29udHJhcnksICcncGF1IG5haScnIGV4cGxpY2l0bHkgbWFya3MgYW55IHF1ZXN0aW9u IGFzIGJlaW5nIHJoZXRvcmljYWwuCgoKCldoaWxlIHdlIGFyZSBvbiB0aGUgdG9waWMgb2YgcXVl c3Rpb25zLCBpdCdzIGFsc28gYXBwcm9wcmlhdGUgdG8gbWVudGlvbiB0aGUgd29yZCAnJ2thdScn LCB3aGljaCBpcyBhIG1hcmtlciBmb3Ig4oCcaW5kaXJlY3QgcXVlc3Rpb27igJ0uIFdoYXQncyBh biBpbmRpcmVjdCBxdWVzdGlvbiwgdGhlbj8gV2VsbCwgdGFrZSBhIGxvb2sgYXQgdGhlIHNlbnRl bmNlOiAnJ21pIGRqdW5vIGxvIGR1J3UgbWEga2F1IHpkYW5pIGRvJycgLSDigJxJIGtub3cgd2hh dCBpcyB5b3VyIGhvbWUu4oCdCgpfXycnZGp1bm8nJ19fIOKAnHgxIGtub3dzIGZhY3QocykgeDIg YXJlIHRydWUgYWJvdXQgeDMgYnkgZXBpc3RlbW9sb2d5IHg04oCdCgpPbmUgY2FuIHRoaW5rIGl0 IGFzIHRoZSBhbnN3ZXIgdG8gdGhlIHF1ZXN0aW9uICcnbWEgemRhbmkgZG8nJy4gTW9yZSByYXJl bHksIG9uZSBjYW4gbWFyayBhIG5vbi1xdWVzdGlvbiB3b3JkIHdpdGggJydrYXUnJywgaW4gd2hp Y2ggY2FzZSBvbmUgc3RpbGwgY2FuIGltYWdpbmUgaXQgYXMgdGhlIGFuc3dlciB0byBhIHF1ZXN0 aW9uOiAnJ21pIGppbXBlIGxvIGR1J3UgZHVuZGEgdGkga2F1IGRvJycgLSDigJxJIGtub3cgd2hh dCB5b3UgaGF2ZSBiZWVuIGdpdmVuLCBpdCBpcyB0aGlzLuKAnQoKCgoKCiEhTG9qYmFuIExlc3Nv bnMgLSBMZXNzb24gdGhpcnRlZW4gKG1vcnBob2xvZ3kgYW5kIHdvcmQgY2xhc3NlcykKCkJhY2sg dG8gbW9yZSBoZWF2eSAoYW5kIGludGVyZXN0aW5nKSBzdHVmZi4KCklmIHlvdSBoYXZlbid0IGFs cmVhZHksIEkgc3Ryb25nbHkgc3VnZ2VzdCB5b3UgZmluZCB0aGUgTG9qYmFuaWMgcmVjb3JkaW5n IGNhbGxlZCAiU3RvcnkgVGltZSB3aXRoIFVuY2xlIFJvYmluIiwgb3IgbGlzdGVuIHRvIHNvbWVv bmUgc3BlYWsgTG9qYmFuIG9uIE11bWJsZSwgYW5kIHRoZW4gcHJhY3RpY2UgeW91ciBwcm9udW5j aWF0aW9uLiBIYXZpbmcgYW4gaW50ZXJuYWwgY29udmVyc2F0aW9uIGluIHlvdXIgaGVhZCBpbiBM b2piYW4gaXMgb25seSBnb29kIGlmIGl0IGlzbid0IHdpdGggYWxsIHRoZSB3cm9uZyBzb3VuZHMs IGFuZCBsZWFybmluZyBwcm9udW5jaWF0aW9uIGZyb20gd3JpdHRlbiB0ZXh0IGlzIGhhcmQuIFRo ZXJlZm9yZSwgdGhpcyBsZXNzb24gd2lsbCBub3QgYmUgb24gdGhlIExvamJhbiBzb3VuZHMsIGhv d2V2ZXIgaW1wb3J0YW50IHRoZXkgbWlnaHQgYmUsIGJ1dCBhIHNob3J0IGludHJvZHVjdGlvbiB0 byB0aGUgTG9qYmFuIG1vcnBob2xvZ3kuCgoKCldoYXQgaXMgbW9ycGhvbG9neT8gVGhlIHdvcmQg aXMgZGVyaXZlZCBmcm9tIEdyZWVrIG1lYW5pbmcg4oCcdGhlIHN0dWR5IG9mIHNoYXBlc+KAnSwg YW5kIGluIHRoaXMgY29udGV4dCwgd2UgdGFsayBhYm91dCBob3cgd2UgbWFrZSB3b3JkcyBmcm9t IGxldHRlcnMgYW5kIHNvdW5kcywgYXMgY29udHJhc3RlZCB3aXRoIHN5bnRheCAtIGhvdyB3ZSBt YWtlIHNlbnRlbmNlcyB3aXRoIHdvcmRzLiBMb2piYW4gb3BlcmF0ZXMgd2l0aCBkaWZmZXJlbnQg bW9ycGhvbG9naWNhbCB3b3JkIGNsYXNzZXMsIHdoaWNoIGFyZSBhbGwgZGVmaW5lZCBieSB0aGVp ciBtb3JwaG9sb2d5LiBUbyBtYWtlIGl0IGFsbCBuaWNlIGFuZCBzeXN0ZW1hdGljIHRob3VnaCwg d29yZHMgd2l0aCBjZXJ0YWluIGZ1bmN0aW9ucyB0ZW5kIHRvIGJlIGdyb3VwZWQgYnkgbW9ycGhv bG9naWNhbCBjbGFzc2VzLCBidXQgZXhjZXB0aW9ucyBtYXkgb2NjdXIuCgp8fCAgIENsYXNzfE1l YW5pbmd8RGVmaW5lZCBCeXxUeXBpY2FsIEZ1bmN0aW9uCgogICBXb3Jkczp8ICAgfCAgIHwgICAK CiAgIEJyaXZsYXwgICBicmlkaS13b3JkfCAgIEFtb25nIGZpcnN0IDUgbGV0dGVycyAoZXhjbHVk aW5nIOKAnCDigJgg4oCcKSBpcyBhIGNvbnNvbmFudCBjbHVzdGVyLiBFbmRzIGluIHZvd2VsLiAg IHwgICBBY3RzIGFzIGEgc2VsYnJpIGJ5IGRlZmF1bHQuIEFsd2F5cyBoYXMgYSBwbGFjZSBzdHJ1 Y3R1cmUuCgogICAtLUdpc211fCAgIFJvb3Qtd29yZHwgNSBsZXR0ZXJzIG9mIHRoZSBmb3JtIENW Q0NWIG9yIENDVkNWICAgfCAgIE9uZSB0byBmaXZlIHN1bXRpIHBsYWNlcy4gQ292ZXJzIGJhc2lj IGNvbmNlcHRzLgoKICAgLS1MdWp2b3wgIENvbXBvdW5kIHdvcmQuIERlcml2ZWQgZnJvbSBmcm9t IOKAnGx1anZsYeKAnSwgbWVhbmluZyDigJxjb21wbGV4IHdvcmTigJ0gfCAgIE1pbi4gNiBsZXR0 ZXJzLiBNYWRlIGJ5IHN0cmluZ2luZyByYWZzaSB0b2dldGhlciB3aXRoIGJpbmRpbmcgbGV0dGVy cyBpZiBuZWNlc3NhcnkufCAgIENvdmVycyBtb3JlIGNvbXBsZXggY29uY2VwdHMgdGhhbiBnaXNt dS4KCiAgIC0tRnUnaXZsYXwgIENvcHktd29yZCB8IEFzIGJyaXZsYSwgYnV0IGRvIG5vdCBtZWV0 IGRlZmluaW5nIGNyaXRlcmlhIG9mIGdpc211IG9yIGx1anZvLCBleDogJydhbmdlbGknJyAgfCAg IENvdmVycyB1bmlxdWUgY29uY2VwdHMgbGlrZSBuYW1lcyBvZiBwbGFjZXMgb3Igb3JnYW5pc21z LgoKICAgQ21ldmxhfCAgTmFtZS13b3JkIHwgICBCZWdpbm5pbmcgYW5kIGVuZGluZyB3aXRoIHBh dXNlIChmdWxsIHN0b3ApLiBMYXN0IHNvdW5kL2xldHRlciBpcyBhIGNvbnNvbmFudC58ICAgQWx3 YXlzIGFjdHMgYXMgYSBuYW1lIG9yIGFzIHRoZSBjb250ZW50IG9mIGEgcXVvdGUuCgogICBDbWF2 b3wgICBHcmFtbWFyLXdvcmQuIEZyb20g4oCcY21hdmxh4oCdLCBtZWFuaW5nIOKAnHNtYWxsIHdv cmTigJ18IE9uZSBjb25zb25hbnQgb3IgemVybywgYWx3YXlzIGF0IHRoZSBiZWdpbm5pbmcuIEVu ZHMgaW4gYSB2b3dlbC4gIHwgICBHcmFtbWF0aWNhbCBmdW5jdGlvbnMuIFZhcmllcwoKICAgV29y ZC1mcmFnbWVudHM6fCAgIHwgICB8CgogICBSYWZzaXwgICBBZmZpeHwgIENDViwgQ1ZDLCBDVidW LCAtQ1ZDQ1YsIC1DQ1ZDViwgQ1ZDQ3ktIG9yIENDVkN5LSAgfCBOb3QgYWN0dWFsIHdvcmRzLCBi dXQgY2FuIGJlIHN0cmluZ2VkIHRvZ2V0aGVyIHRvIGZvcm0gbHVqdm8gfHwKCgoKCgpfXycnY21l dmxhJydfXyBhcmUgdmVyeSBlYXN5IHRvIGlkZW50aWZ5IGJlY2F1c2UgdGhleSBiZWdpbiBhbmQg ZW5kIHdpdGggYSBwYXVzZSwgc2lnbmFsZWQgYnkgYSBmdWxsIHN0b3AgaW4gd3JpdGluZywgYW5k IHRoZSBsYXN0IGxldHRlciBpcyBhIGNvbnNvbmFudC4gQ21ldmxhIGhhdmUgdHdvIGZ1bmN0aW9u czogVGhleSBjYW4gZWl0aGVyIGFjdCBhcyBhIHByb3BlciBuYW1lLCBpZiBwcmVmaXhlZCBieSB0 aGUgYXJ0aWNsZSAnJ2xhJycgKGV4cGxhaW5lZCBpbiBuZXh0IGxlc3NvbiksIG9yIHRoZXkgY2Fu IGFjdCBhcyB0aGUgY29udGVudCBvZiBhIHF1b3RlLiBBcyBwcmV2aW91c2x5IHN0YXRlZCwgb25l IGNhbiBtYXJrIHN0cmVzcyBpbiB0aGUgbmFtZXMgYnkgY2FwaXRhbGl6aW5nIHRoZSBsZXR0ZXJz IHdoaWNoIGFyZSBzdHJlc3NlZC4gRXhhbXBsZXMgb2YgY21ldmxhIGFyZTogJycuaW9oQU4uJycg KEpvaGFuLCBoIGlzIGNhcGl0YWwgYXBvc3Ryb3BoZSwgeW91IHJlbWVtYmVyKSwgJycubWF0Licn IChNYXR0KSBhbmQgJycubHVpdGNpTUlOLicnIChMdWktQ2hpIE1pbikuIE5hbWVzIHdoaWNoIGRv IG5vdCBlbmQgaW4gY29uc29uYW50cyBoYXZlIHRvIGhhdmUgb25lIGFkZGVkOiAnJy5pdnluLicn IChFdmUpLCBvciAocHJvYmFibHkgYmV0dGVyIGluIHRoaXMgY2FzZSkgcmVtb3ZlZDogJycuaXYu JycKCgoKX18nJ2JyaXZsYScnX18gYXJlIGNhbGxlZCDigJxicmlkaS13b3Jkc+KAnSBiZWNhdXNl IHRoZXkgYnkgZGVmYXVsdCBhcmUgc2VsYnJpLCBhbmQgdGhlcmVmb3JlIGFsbW9zdCBhbGwgTG9q YmFuIHdvcmRzIHdpdGggYSBwbGFjZSBzdHJ1Y3R1cmUgYXJlIGJyaXZsYS4gVGhpcyBoYXMgYWxz byBnaXZlbiB0aGVtIHRoZSBFbmdsaXNoIG5pY2tuYW1lIOKAnGNvbnRlbnQtd29yZHPigJ0uIEl0 J3MgbmVhcmx5IGltcG9zc2libGUgdG8gc2F5IGFueXRoaW5nIHVzZWZ1bCB3aXRob3V0IGJyaXZs YSwgYW5kIGFsbW9zdCBhbGwgd29yZHMgZm9yIGNvbmNlcHRzIG91dHNpZGUgbG9qYmFuIGdyYW1t YXIgKGFuZCBldmVuIG1vc3Qgb2YgdGhlIHdvcmRzIGZvciB0aGluZ3MgaW4gdGhlIGxhbmd1YWdl KSBhcmUgY2FwdHVyZWQgYnkgYnJpdmxhLiBBcyBzaG93biBpbiB0aGUgdGFibGUsIGJyaXZsYSBo YXMgdGhyZWUgc3ViY2F0ZWdvcmllczoKCl9fJydnaXNtdScnX18gYXJlIHRoZSByb290IHdvcmRz IG9mIHRoZSBsYW5ndWFnZS4gT25seSBhYm91dCAxNDUwIGV4aXN0cywgYW5kIHZlcnkgZmV3IG5l dyBvbmVzIGFyZSBhZGRlZC4gVGhleSBjb3ZlciB0aGUgbW9zdCBiYXNpYyBjb25jZXB0cyBsaWtl IOKAnGNpcmNsZeKAnSwg4oCcZnJpZW5k4oCdLCDigJx0cmVl4oCdIGFuZCDigJxkcmVhbeKAnS4g RXhhbXBsZXMgaW5jbHVkZSAnJ3pkYW5pJycsICcncGVseHUnJyBhbmQgJydkdW5kYScnCgpfXycn bHVqdm8nJ19fIGFyZSBtYWRlIGJ5IGNvbWJpbmluZyByYWZzaSAoc2VlIHVuZGVyIHJhZnNpKSwg cmVzcHJlc2VudGluZyBnaXNtdS4gQnkgY29tYmluaW5nIHJhZnNpLCBvbmUgbmFycm93cyBkb3du IHRoZSBtZWFuaW5nIG9mIHRoZSB3b3JkLiBsdWp2byBhcmUgbWFkZSBieSBhbiBlbGFib3JhdGUg YWxnb3JpdGhtLCBzbyBtYWtpbmcgdmFsaWQgbHVqdm8gb24gdGhlIGZseSBpcyBuZWFyIGltcG9z c2libGUsIHdpdGggZmV3IGV4Y2VwdGlvbnMgbGlrZSAnJ3NlbHBhJ2knJywgZnJvbSAnJ3NlIHBy YW1pJycsIHdoaWNoIGNhbiBvbmx5IGhhdmUgb25lIGRlZmluaXRpb24uIEluc3RlYWQsIGx1anZv IGFyZSBtYWRlIG9uY2UsIGl0cyBwbGFjZSBzdHJ1Y3R1cmUgZGVmaW5lZCwgYW5kIHRoZW4gdGhh dCBkZWZpbml0aW9uIGlzIG1hZGUgb2ZmaWNpYWwgYnkgdGhlIGRpY3Rpb25hcnkuIEV4YW1wbGVz IGluY2x1ZGUgYnJpdmxhIChicmlkaS13b3JkKSwgJydjaW5qaWtjYScnIChzZXh1YWwtc29jaWFs aXppbmcgPSBmbGlydGluZykgYW5kICcnY2FrY2lua2knJyAoc2hlbGwtaW5zZWN0ID0gYmVldGxl KS4KCl9fJydmdSdpdmxhJydfXyBhcmUgbWFkZSBieSBtYWtpbmcgdXAgd29yZHMgd2hpY2ggZml0 IHRoZSBkZWZpbml0aW9uIGZvciBicml2bGEsIGJ1dCBub3QgZm9yIGx1anZvIG9yIGdpc211LiBU aGV5IHRlbmQgdG8gY292ZXIgY29uY2VwdHMgd2hpY2ggaXQncyBoYXJkIHRvIGNvdmVyIGJ5IGx1 anZvLCBmb3IgaW5zdGFuY2UgbmFtZXMgb2Ygc3BlY2llcywgbmF0aW9ucyBvciB2ZXJ5IGN1bHR1 cmFsIHNwZWNpZmljIGNvbmNlcHRzLiBFeGFtcGxlcyBpbmNsdWRlICcnZ3VnZHJnb2d1cmlvJycg KEtvcmVhKSAnJ2NpZGpycGl0c2EnJyAocGl6emEpIG9yICcnYW5nZWxpJycgKGFuZ2VsKS4KCgoK X18nJ2NtYXZvJydfXyBhcmUgc21hbGwgd29yZHMgd2l0aCBvbmUgb3IgemVybyBjb25zb25hbnRz LiBUaGV5IHRlbmQgdG8gbm90IHNpZ25pZnkgYW55dGhpbmcgaW4gdGhlIGV4dGVyaW9yIHdvcmxk LCBidXQgdG8gaGF2ZSBvbmx5IGdyYW1tYXRpY2FsIGZ1bmN0aW9uLiBFeGNlcHRpb25zIG9jY3Vy LCBhbmQgaXQncyBkZWJhdGFibGUgaG93IG11Y2ggYXR0aXR1ZGluYWxzIGV4aXN0cyBmb3IgdGhl aXIgZ3JhbW1hdGljYWwgZnVuY3Rpb24uIEFub3RoZXIgd2VpcmQgZXhhbXBsZSBhcmUgdGhlIHdv cmRzIG9mIHRoZSBjbGFzcyBHT2hBLCB3aGljaCBhY3QgYXMgYnJpdmxhLiBJdCBpcyB2YWxpZCB0 byB0eXBlIHNldmVyYWwgY21hdm8gaW4gYSByb3cgYXMgb25lIHdvcmQsIGJ1dCBpbiB0aGVzZSBs ZXNzb25zLCB0aGF0IHdvbid0IGJlIGRvbmUuIEJ5IGdyb3VwaW5nIGNlcnRhaW4gY21hdm8gaW4g ZnVuY3Rpb25hbCB1bml0cywgdGhvdWdoLCBpdCBpcyBzb21ldGltZXMgZWFzaWVyIHRvIHJlYWQu IFRodXMsICcnLnVpcHV6dXZ1a3VtaSBjaXRrYScnIGlzIHZhbGlkLCBhbmQgaXMgcGFyc2VkIGFu ZCB1bmRlcnN0b29kIGFzICcnLnVpIHB1IHp1IHZ1IGt1IG1pIGNpdGthJycuIExpa2Ugb3RoZXIg TG9qYmFuIHdvcmRzLCBvbmUgc2hvdWxkIChidXQgbmVlZCBub3QgYWx3YXlzKSBwbGFjZSBhIGZ1 bGwgc3RvcCBiZWZvcmUgYW55IHdvcmRzIGJlZ2lubmluZyB3aXRoIGEgdm93ZWwuCgpjbWF2byBv ZiB0aGUgZm9ybSB4VlYsIENWJ1ZWIG9yIFYnVlYgYXJlIGV4cGVyaW1lbnRhbCwgYW5kIGFyZSB3 b3JkcyB3aGljaCBhcmUgbm90IGluIHRoZSBmb3JtYWwgZ3JhbW1hciwgYnV0IHdoaWNoIGhhdmUg YmVlbiBhZGRlZCBieSBMb2piYW4gdXNlcnMgdG8gcmVzcG9uZCB0byBhIGNlcnRhaW4gbmVlZC4K CgoKX18nJ3JhZnNpJydfXyBhcmUgbm90IExvamJhbiB3b3JkcywgYW5kIGNhbiBuZXZlciBhcHBl YXIgYWxvbmUuIEhvd2V2ZXIsIHNldmVyYWwgKG1vcmUgdGhhbiBvbmUpIHJhZnNpIGNvbWJpbmUg dG8gZm9ybSBsdWp2by4gVGhlc2UgbXVzdCBzdGlsbCBsaXZlIHVwIHRvIHRoZSBicml2bGEtZGVm aW5pdGlvbiwgZm9yIGluc3RhbmNlICcnbG9qYmFuJycgaXMgaW52YWxpZCBiZWNhdXNlIGl0IGVu ZHMgaW4gYSBjb25zb25hbnQgKHdoaWNoIG1ha2VzIGl0IGEgY21ldmxhKSwgYW5kICcnY2knZWtl aScnIGlzIGludmFsaWQgYmVjYXVzZSBpdCBkb2VzIG5vdCBjb250YWluIGEgY29uc29uYW50IGNs dXN0ZXIsIGFuZCBpcyB0aHVzIHJlYWQgYXMgdHdvIGNtYXZvIHdyaXR0ZW4gYXMgb25lIHdvcmQu IE9mdGVuLCBhIDMtNCBsZXR0ZXIgc3RyaW5nIGlzIGJvdGggYSBjbWF2byBhbmQgYSByYWZzaSwg bGlrZSAnJ3p1J2UnJywgd2hpY2ggaXMgYm90aCB0aGUgQkFJIGFuZCB0aGUgcmFmc2kgZm9yICcn enVrdGUnJy4gTm90ZSB0aGF0IHRoZXJlIGlzIG5vd2hlcmUgdGhhdCBib3RoIGEgY21hdm8gYW5k IGEgcmFmc2kgd291bGQgYmUgZ3JhbW1hdGljYWwsIHNvIHRoZXNlIGFyZSBub3QgY29uc2lkZXJl ZCBob21vcGhvbmVzLiBBbGwgZ2lzbXUgY2FuIGRvdWJsZSBhcyByYWZzaSwgaWYgdGhleSBhcmUg cHJlZml4ZWQgd2l0aCBhbm90aGVyIHJhZnNpLiBUaGUgZmlyc3QgZm91ciBsZXR0ZXIgb2YgYSBn aXNtdSBzdWZmaXhlZCB3aXRoIGFuICJ5IiBjYW4gYWxzbyBhY3QgYXMgYSByYWZzaSwgaWYgdGhl eSBhcmUgc3VmZml4ZWQgd2l0aCBhbm90aGVyIHJhZnNpLiBUaGUgdm93ZWwgInkiIGNhbiBvbmx5 IGFwcGVhciBpbiBsdWp2byBvciBjbWV2bGEuIFZhbGlkIHJhZnNpIGxldHRlciBjb21iaW5hdGlv bnMgYXJlOiBDVlYsIENWJ1YsIENDViwgQ1ZDQ3ktIENDVkN5LSwgLUNWQ0NWIGFuZCAtQ0NWQ1Yu CgoKClVzaW5nIHdoYXQgeW91IGtub3cgbm93LCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8gYW5zd2Vy IHRoZSB0ZXN0IGkgdGh1cyBwcmVzZW50OgoKQ2F0ZWdvcml6ZSBlYWNoIG9mIHRoZSBmb2xsb3dp bmcgd29yZHMgYXMgY21ldmxhIChDKSwgZ2lzbXUgKGcpLCBsdWp2byAobCksICcnZnUnaXZsYScn IChmKSBvciBjbWF2byAoYyk6CgpBICkgamFpICAgICAgICBHICkgbXVtYmwKCkIgKSAuaXJjaSAg ICAgICAgSCApIC5pJ2kKCkMgKSBib3N0dSAgICAgICAgSSApIGN1CgpEICkgeGVsbWFuICAgICAg ICBKICkgcGxhanZhCgpFICkgcG8nZSAgICAgICAgSyApIGRhbnNla2UKCkYgKSBkamlza3UgICAg ICAgIEwgKSAuZXJ0c2EKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTphLWMsIGItZiwgYy1nLCBkLUMs IGUtYywgZi1sLCBnLUMsIGgtYywgaS1jLCBqLWwsIGstZiwgbC1mLiBJIGxlZnQgb3V0IHRoZSBm dWxsIHN0b3BzIGJlZm9yZSBhbmQgYWZ0ZXIgbmFtZXMgc28gaXQgd291bGRuJ3QgYmUgdG9vIGVh c3kuCgpOb3RlOiBzb21lIG9mIHRoZXNlIHdvcmRzLCBsaWtlICcnYm9zdHUnJyBkbyBub3QgZXhp c3QgaW4gdGhlIGRpY3Rpb25hcnksIGJ1dCB0aGlzIGlzIGlycmVsZXZhbnQuIFRoZSBtb3JwaG9s b2d5IHN0aWxsIG1ha2VzIGl0IGEgZ2lzbXUsIHNvIGl0J3MganVzdCBhbiB1bmRlZmluZWQgZ2lz bXUuIFNpbWlsYXJseSB3aXRoICcnLmVydHNhJyd+fgoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBM ZXNzb24gZm91cnRlZW4gKHRoZSBMb2piYW4gc3VtdGkgMTogTEUgYW5kIExBKQoKSWYgeW91IGhh dmUgcmVhZCBhbmQgdW5kZXJzdG9vZCB0aGUgY29udGVudCBvZiBhbGwgdGhlIGxlc3NvbnMgdW50 aWwgbm93LCB5b3UgaGF2ZSBhbWFzc2VkIGEgbGFyZ2UgZW5vdWdoIGtub3dsZWRnZSBvZiBMb2pi YW4gc28gdGhhdCBpdCBkb2Vzbid0IG1hdHRlciBpbiB3aGljaCBvcmRlciB5b3UgbGVhcm4gdGhl IHJlc3QuIEFzIGEgcmVzdWx0LCB0aGUgb3JkZXIgb2YgdGhlIG5leHQgbGVzc29ucyB3aWxsIGJl IGEgbWl4dHVyZSBvZiBzb3J0ZWQgYnkgaW5jcmVhc2luZyBkaWZmaWN1bHR5IGFuZCBzb3J0ZWQg YnkgaW1wb3J0YW5jZSBpbiBvcmRpbmFyeSBMb2piYW4gY29udmVyc2F0aW9uLgoKCgpPbmUgb2Yg dGhlIGJpZ2dlc3QgY29uc3RyYWlucyBvbiB5b3VyIHNwZWFrIG5vdyBpcyB5b3VyIGxpbWl0ZWQg a25vd2xlZGdlIG9uIGhvdyB0byBtYWtlIHN1bXRpLiBTbyBmYXIsIHlvdSBvbmx5IGtub3cgJyd0 aScnIGFuZCAnJ2xvIFNFTEJSSScnLCB3aGljaCBkb2Vzbid0IHRha2UgeW91IGZhciBjb25zaWRl cmluZyBob3cgaW1wb3J0YW50IHN1bXRpIGFyZSBpbiBMb2piYW4uIFRoaXMgbGVzc29uIGFzIHdl bGwgYXMgdGhlIGZvbGxvd2luZyB0d28gd2lsbCBiZSBhYm91dCB0aGUgTG9qYmFuIHN1bXRpLiBG b3Igbm93LCB3ZSBmb2N1cyBvbiB0aGUgZGVzY3JpcHRpdmUtbGlrZSBzdW10aSwgdGhlIG9uZXMg bWFkZSB3aXRoIGFydGljbGVzIGxpa2UgJydsbycnCgpBcnRpY2xlcyBhcmUgaW4gbG9qYmFuIGNh bGxlZCAnJ2dhZHJpJycsIGFuZCBhbGwgdGhlIG9uZXMgZGlzY3Vzc2VkIGluIHRoaXMgbGVzc29u IGFyZSB0ZXJtaW5hdGVkIGJ5ICcna3UnJywgZXhjZXB0IHRoZSBjb21iaW5hdGlvbnMgJydsYSBD TUVWTEEnJywgJydsYWkgQ01FVkxBJycgYW5kICcnbGEnaSBDTUVWTEEnJy4gV2Ugd2lsbCBiZWdp biBieSBkZXNjcmliaW5nIHRocmVlIHNpbXBsZSBraW5kcyBvZiBkZXNjcmlwdGl2ZSBzdW10aSwg YW5kIHRoZW4gaW1tZWRpYXRlbHkgZmluZCB0aGF0IHRoZXkgYXJlIG5vdCBzbyBzaW1wbGUgYWZ0 ZXIgYWxsOgoKX18nJ2xvJydfXyAtIGdhZHJpOiBHZW5lcmljIHZlcmlkaWNhbCDigJxjb252ZXJ0 IHNlbGJyaSB0byBzdW10aeKAnS4gUmVzdWx0IGlzIHZhZ3VlIHdpdGggcmVnYXJkIHRvIGluZGl2 aWR1YWxpdHkvbWFzcy1uZXNzLgoKX18nJ2xlJydfXyAtIGdhZHJpOiBHZW5lcmljIGRlc2NyaXB0 aXZlIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBSZXN1bHQgaXMgdmFndWUgd2l0aCBy ZWdhcmQgdG8gaW5kaXZpZHVhbGl0eS9tYXNzLW5lc3MuCgpfXycnbGEnJ19fIC0gZ2Fkcmk6IE5h bWluZyBhcnRpY2xlOiBDb252ZW50aW9uYWwsIOKAnGNvbnZlcnQgc2VsYnJpIG9yIGNtZXZsYSB0 byBzdW10aeKAnS4gVHJlYXQgcmVzdWx0IGFzIGluZGl2aWR1YWwocykuCgoKCllvdSBhcmUgYWxy ZWFkeSBmYW1pbGlhciB3aXRoICcnbG8nJyBhbmQgd2hhdCBpdCBkb2VzLiBCdXQgd2hhdCBkb2Vz IGl0IG1lYW4sIOKAnHZlcmlkaWNhbOKAnSBhbmQg4oCcdmFndWUgd2l0aCByZWdhcmQgdG8gaW5k aXZpZHVhbGl0eS9tYXNzLW5lc3PigJ0/IFRoZSBsYXR0ZXIgYWJvdXQgaW5kaXZpZHVhbHMgYW5k IG1hc3NlcywgSSdsbCBjb21lIGJhY2sgdG8gbGF0ZXIuIEZvciBub3csIOKAnHZlcmlkaWNhbOKA nSBpbiB0aGlzIGNvbnRleHQgbWVhbnMgdGhhdCBpbiBvcmRlciBmb3IgYSB0aGluZyB0byBxdWFs aWZ5IGJlZ2luIGxhYmVsbGVkIGFzICcnbG8ga2xhbWEnJywgaXQgaGFzIHRvIGFjdHVhbGx5ICcn a2xhbWEnJy4gVGh1cywgdmVyaWRpY2FsIGdhZHJpIG1ha2VzIGEgY2xhaW0gd2hpY2ggbWF5IGJl IHRydWUgb3IgZmFsc2UgLSB0aGF0IHRoZSBvYmplY3QocykgaW4gcXVlc3Rpb24gYXJlIGFjdHVh bGx5IHRoZSB4MSBvZiB0aGUgc2VsYnJpIGFmdGVyICcnbG8nJy4gCgoKClRoaXMgbWF5IGJlIGNv bnRyYXN0ZWQgd2l0aCAnJ2xlJycsIHdoaWNoIGlzIGRlc2NyaXB0aXZlLCBhbmQgdGh1cyBub3Qg dmVyaWRpY2FsLiBTYXlpbmcgJydsZSBnZXJrdScnIHNheXMgdGhhdCB5b3UgaGF2ZSBvbmUgb3Ig bW9yZSBzcGVjaWZpYyBvYmplY3RzIGluIG1pbmQsIGFuZCB5b3UgdXNlIHRoZSBzZWxicmkgJydn ZXJrdScnIHRvIGRlc2NyaWJlIGl0LCBzbyB0aGF0IHRoZSBsaXN0ZW5lciBtYXkgaWRlbnRpZnkg dGhvc2Ugc3BlY2lmaWMgb2JqZWN0cy4gVGhpcyBtZWFucyB0aGF0ICcnbGUnJyBoYXZlcyB0d28g aW1wb3J0YW50IGRpZmZlcmVuY2VzIGZyb20gJydsbycnOiBGaXJzdGx5LCBpdCBjYW5ub3QgcmVm ZXIgdG8gb2JqZWN0cyBpbiBnZW5lcmFsLCBidXQgYWx3YXlzIHJlZmVycyB0byBzcGVjaWZpYyBv YmplY3RzLiBTZWNvbmRseSwgd2hpbGUgJydsbyBnZXJrdScnIGRlZmluaXRlbHkgaXMgb25lIG9y IG1vcmUgZG9ncywgJydsZSBnZXJrdScnLCBiZWNhdXNlIGl0J3Mgbm90IHZlcmlkaWNhbCwgY2Fu IGJlIGFueXRoaW5nLCBhcyBsb25nIGFzIHRoZSBzcGVha2VyIHRoaW5rcyB0aGUgZGVzY3JpcHRp b24gd2lsbCBoZWxwIGlkZW50aWZ5aW5nIHRoZSBjb3JyZWN0IG9iamVjdHMuIFBlcmhhcHMgdGhl IHNwZWFrZXIgaXMgcmVmZXJyaW5nIHRvIGEgaHllbmEsIGJ1dCBhcmUgbm90IGZhbWlsaWFyIHdp dGggdGhlbSBhbmQgdGhpbmsg4oCcZG9n4oCdIGlzIGEgZ29vZCBlbm91Z2ggYXBwcm94aW1hdGlv biB0byBiZSB1bmRlcnN0b29kLiBUaGlzIG5vbi12ZXJpZGljYWxpdHkgaXMgcGVyaGFwcyBvdmVy LWVtcGhhc2lzZWQgaW4gbW9zdCBtYW55IHRleHRzOyBUaGUgYmVzdCB3YXkgdG8gZGVzY3JpYmUg YSBkb2cgaXMgdXN1YWxseSB0byBkZXNjcmliZSBpdCBhcyBiZWluZyBhIGRvZywgYW5kIHVubGVz cyB0aGVyZSBpcyBhIGdvb2QgcmVhc29uIG5vdCB0bywgJydsZSBnZXJrdScnIGlzIHVzdWFsbHkg cHJlc3VtZWQgdG8gcmVmZXIgdG8gc29tZXRoaW5nIHdoaWNoIGlzIGFsc28gJydsbyBnZXJrdScn LgoKSW4gdHJhbnNsYXRpb24sICcnbG8gZ2Vya3UnJyBpcyB1c3VhbGx5IOKAnGEgZG9n4oCdIG9y IOKAnHNvbWUgZG9nc+KAnSwgd2hpbGUgJydsZSBnZXJrdScnIGlzIOKAnHRoZSBkb2figJ0gb3Ig 4oCcdGhlIGRvZ3PigJ0uIEV2ZW4gYmV0dGVyIGZvciAnJ2xlIGdlcmt1Jycgd291bGQgYmUg4oCc dGhlIOKAnGRvZyhzKeKAnSDigJ0KCgoKTGFzdCBvZiB0aGUgdGhyZWUgYmFzaWMgJydnYWRyaScn LCB0aGVyZSBpcyAnJ2xhJycsIHRoZSBuYW1pbmcgJydnYWRyaScnLCB3aGljaCBJIGhhdmUgdW5j b252ZW50aW9uYWxseSBjYWxsZWQg4oCcY29udmVudGlvbmFs4oCdLiBXaGF0IEkgbWVhbiBieSB0 aGlzIGlzIHRoYXQgaXQncyBuZWl0aGVyIGRlc2NyaXB0aXZlIG5vciB2ZXJpZGljYWwsIHNpbmNl IGl0IHJlZmVycyB0byBhIHByb3BlciBuYW1lLiBJZiBJIGluIEVuZ2xpc2ggcmVmZXIgdG8gYSBw ZXJzb24gY2FsbGVkIElubm9jZW50IGJ5IGhlciBuYW1lLCBJIG5laXRoZXIgZGVzY3JpYmUgaGVy IGFzIGJlaW5nIGlubm9jZW50LCBub3IgZG8gSSBzdGF0ZSB0aGF0IHNoZSBpcy4gSSBvbmx5IHN0 YXRlIHRoYXQgYnkgY29udmVudGlvbiwgdGhhdCBvYmplY3QgaXMgcmVmZXJyZWQgdG8gYnkgdGhh dCBzZWxicmkgb3IgY21ldmxhLiBOb3RlIHRoYXQgJydsYScnIGFuZCB0aGUgZ2FkcmkgZGVyaXZl ZCBmcm9tIGl0IGNhbiBjb252ZXJ0IGNtZXZsYSB0byBzdW10aSB1bmxpa2UgYW55IG90aGVyICcn Z2FkcmknJy4gQWxzbzogQmUgY2F1dGlvdXM6IE90aGVyIHRleHRzIGRvIG5vdCBtZW50aW9uIHRo YXQgbmFtZXMgY2FuIGJlIGZvcm1lZCBmcm9tIG9yZGluYXJ5IHNlbGJyaSB1c2luZyB0aGUgZ2Fk cmkgJydsYScnLiBCdXQgdGhvc2UgaGVyZXRpY3MgbXVzdCBidXJuOyBzZWxicmkgbmFtZXMgYXJl IGFzIGdvb2QgYXMgdGhleSBnZXQsIGFuZCBtYW55IGEgcHJvdWQgTG9qYmFuaXN0IGhhdmUgdGhl bS4KCicnbGEnJywgYXMgd2VsbCBhcyAnJ2xhaScnIGFuZCAnJ2xhJ2knJyBhcmUgYSBiaXQgZWNj ZW50cmljLCBzaW5jZSB0aGV5IF9fYWx3YXlzX18gbWFya3MgdGhlIGJlZ2lubmluZyBvZiBhIG5h bWUuIFVubGlrZSB0aGUgb3RoZXIgZ2FkcmksIGFueXRoaW5nIHRoYXQgY2FuIGJlIGdyYW1tYXRp Y2FsbHkgcGxhY2VkIGFmdGVyICcnbGEnJyBhbmQgaXRzIHNpc3RlcnMgYXJlIGNvbnNpZGVyZWQg cGFydCBvZiB0aGUgbmFtZS4gRm9yIGV4YW1wbGUsICcnbGUgbWkgZ2Vya3UnJyBpcyAibXkgZG9n IiwgYnV0ICcnbGEgbWkgZ2Vya3UnJyBpcyBzb21lb25lIGNhbGxlZCAiTXkgRG9nIi4KCgoKVGhl c2UgdGhyZWUgYmFzaWMgJydnYWRyaScnIGNhbiBiZSBleHBhbmRlZCB3aXRoIHRocmVlIG1vcmUs IHdoaWNoIGNvcnJlc3BvbmRzIHRvIHRoZSBwcmV2aW91czoKCgoKX18nJ2xvaScnX18gLSBnYWRy aTogdmVyaWRpY2FsIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQg YXMgbWFzcyhlcykuCgpfXycnbGVpJydfXyAtIGdhZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0 IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQgcmVzdWx0IGFzIGEgbWFzcyhlcykuCgpfXycnbGFp JydfXyAtIGdhZHJpOiBOYW1pbmcgYXJ0aWNsZTogQ29udmVudGlvbmFsLCDigJxjb252ZXJ0IHNl bGJyaSBvciBjbWV2bGEgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBtYXNzKGVzKS4KCgoK VGhlc2UgYXJlIHRoZSBzYW1lIGluIGFsbCBhc3BlY3RzIGV4Y2VwdCBmb3Igb25lOiBUaGV5IHRy ZWF0IHRoZSBzdW10aSBleHBsaWNpdGx5IGFzIG1hc3Nlcy4gVGhpcyBpcyB3aGVyZSB0aGUgZGlz dGluY3Rpb24gYmV0d2VlbiBpbmRpdmlkdWFscyBhbmQgbWFzc2VzIGJlY29tZXMgaW1wb3J0YW50 LiBJZiB0aGVyZSBpcyBvbmx5IG9uZSBvYmplY3QgaW4gcXVlc3Rpb24sIGFuIGluZGl2aWR1YWwg YW5kIGEgbWFzcyBjb25zaXN0aW5nIG9mIG9uZSBvYmplY3QgYXJlIGVxdWl2YWxlbnQuIFRoZSBk aWZmZXJlbmNlIGJldHdlZW4gdGhlc2UgdHdvIGNvbmNlcHRzIGxpZSBpbiB3aGljaCBzZWxicmkg Y2FuIGJlIGFzY3JpYmVkIHRvIGEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgdmVyc3VzIGEgbWFzcy4g QSBncm91cCBvZiBpbmRpdmlkdWFscyBjYW4gYmUgc2FpZCB0byBmaXQgYSBjZXJ0YWluIHNlbGJy aSBpZiwgYW5kIG9ubHkgaWYsIGFsbCBtZW1iZXJzIG9mIHRoZSBncm91cCBlYWNoIGZpdCB0aGUg c2VsYnJpLiBJdCBpcyBjb3JyZWN0IHRvIGRlc2NyaWJlIGEgcGFjayBvZiAnJ2xvIGdlcmt1Jycs IGNvbnNpZGVyZWQgaW5kaXZpZHVhbGx5LCBhcyBiZWluZyBibGFjaywgaWYgZm9yIGVhY2ggb2Yg dGhlIGRvZ3MgaXQncyB0cnVlIHRoYXQgdGhleSBhcmUgYmxhY2suIEEgbWFzcywgb24gdGhlIG90 aGVyIGhhbmQsIGZpdHMgb25seSB0aG9zZSBzZWxicmkgd2hpY2ggaXRzIGNvbXBvbmVudHMgZml0 IGFzIGEgd2hvbGUsIGFzIGEgdGVhbSwgc28gdG8gc3BlYWsuIEhvd2V2ZXIsIGFsbCB0aGUgbWVt YmVycyBvZiBhIG1hc3MgJydsb2kgZ2Vya3UnJyBtdXN0IGJlIGRvZ3MgaW4gb3JkZXIgZm9yICcn bG9pJycgdG8gYmUgYXBwbGljYWJsZS4gVGhlIG5vdGlvbiBvZiAibWFzc2VzIiBhcmUgc29waGlz dGljYXRlZCwgYW5kIHJlcXVpcmVzIHNvbWUgZXhhbXBsZXMgdG8gZGVtb25zdHJhdGUgd2hpY2gg cHJvcGVydGllcyBpdCBjYW4gaGF2ZToKCl9fJydzcnVyaScnX186IOKAnHgxIGZsYW5rcy9lbmNp cmNsZXMvZW5jbG9zZXMgeDIgaW4gbGluZS9wbGFuZS9kaXJlY3Rpb25zIHgz4oCdCgonJ2xlaSBw cmVudSBjdSBzcnVyaSBsbyB6ZGFuaScnIC0g4oCcVGhlIHBlb3BsZSBzdXJyb3VuZGVkIHRoZSBo b21lLuKAnSBpcyBwbGF1c2libGUsIGV2ZW4gdGhvdWdoLCB5byBtb21hIGpva2VzIG5vdCBjb25z aWRlcmVkLCBpdCdzIGNvbXBsZXRlbHkgaW1wbGF1c2libGUgdGhhdCBpdCBjb3VsZCBiZSB0cnVl IGZvciBhbnkgb25lIG9mIHRoZSBtZW1iZXJzIGFsb25lLiBBbiBFbmdsaXNoIGFuYWxvZ3kgY291 bGQgYmU6IOKAnEh1bWFucyBkZWZlYXRlZCBzbWFsbHBveCBpbiB0aGUgMjB0aCBjZW50dXJ54oCd LiBTdXJlbHkgbm8gaHVtYW4gZGlkIHNvLCBidXQgdGhlIG1hc3Mgb2YgaHVtYW5zIGRpZCwgYW5k IHRoYXQgbWFrZXMgdGhlIHNlbnRlbmNlIHRydWUgaW4gRW5nbGlzaCwgYXMgd2VsbCBhcyBpbiBM b2piYW4gaWYg4oCcaHVtYW5z4oCdIGFyZSBhIG1hc3MuIEp1c3QgbGlrZSB0aGUgTG9qYmFuIG1h c3MsIHRoZSBFbmdsaXNoIG1hc3Mg4oCcaHVtYW5z4oCdIGNhbiBvbmx5IHJlZmVyIHRvIGluZGl2 aWR1YWxzIGVhY2ggb2Ygd2hpY2ggYXJlIGh1bWFuLiBBbm90aGVyIGV4YW1wbGU6CgpfXycnbWl2 eXNsZScnX186ICJ4MSBpcyBhIGJpb2xvZ2ljYWwgY2VsbCBvZiBvcmdhbmlzbSB4MiIKCl9fJydy ZW1uYScnX186ICJ4MSBpcyBhIGh1bWFuIgoKJydsb2kgbWl2eXNsZSBjdSByZW1uYScnIC0gIlNv bWUgbWFzc2VzIG9mIGNlbGxzIGFyZSBodW1hbiIuIEFnYWluLCBub25lIG9mIHRoZSBjZWxscyBh cmUgaHVtYW4uIEluZGVlZCwgdGhlIGNlbGxzIGhhdmUgdmVyeSBmZXcgaHVtYW4gdHJhaXRzLCBi dXQgdGhlIGNlbGxzIGNvbnNpZGVyZWQgYXMgYSB3aG9sZSBtYWtlcyB1cCBhIGh1bWFuLgoKCgpB IG1hc3MgbWFkZSB3aXRoICcnbGVpJycsIHN1Y2ggYXMgJydsZWkgZ2Vya3UnJywgcmVmZXJzIHRv IGEgbWFzcyBmb3JtZWQgYnkgYSBncm91cCBvZiBzcGVjaWZpYyBpbmRpdmlkdWFscywgZWFjaCBv ZiB3aGljaCB0aGUgc3BlYWtlciByZWZlcnMgdG8gYXMgJydsZSBnZXJrdScnLgoKTWFzcyBuYW1l cyBhcyBkZXNjcmliZXMgYnkgJydsYWknJyBhcmUgb25seSBhcHByb3ByaWF0ZSBpZiB0aGUgZ3Jv dXAgYXMgYSB3aG9sZSBpcyBuYW1lZCBzdWNoLCBhbmQgbm90IGp1c3QgaWYgYW55IG9mIHRoZSBt ZW1iZXJzIGFyZS4gSXQgY2FuLCBob3dldmVyIGJlIHVzZWQgaWYgdGhlIGJyaWRpIGlzIHRydWUg Zm9yIG9ubHkgYSBmcmFjdGlvbiBvZiB0aGF0IGdyb3VwLgoKCgpJdCBpcyBpbXBvcnRhbnQgdG8g cmVtZW1iZXIgdGhhdCAnJ2xvJycgYW5kICcnbGUnJyBjYW4gYmUgdXNlZCB0byBkZXNjcmliZSBi b3RoIGluZGl2aWR1YWxzIGFuZCBtYXNzZXMuIExldCdzIHNheSBhIHBhY2sgb2YgZG9ncywgY29u c2lkZXJlZCBhcyBhIG1hc3MgbmVlZHMgZGVzY3JpcHRpb24uIEkgbWlnaHQgZGVzY3JpYmUgaXQg YXMgZWl0aGVyICcnbG9pIGdlcmt1Jycgb3IgJydsbyBnZXJrdScnLiBJZiBJIHVzZSAnJ2xvJycs IHRoaXMgYWxsb3dzIG1lIHRvIGNvcnJlY3RseSBzdGF0ZSBzb21ldGhpbmcgd2hpY2ggbG9va3Mg bGlrZSBhIGNvbnRyYWRpY3Rpb24sIGJ1dCByZWFsbHkgaXNuJ3Q6ICcnbG8gZ2Vya3UgbmEgZ2Vy a3UnJyAtICJTb21lIGRvZ3MgYXJlIG5vdCBkb2dzIi4gU2luY2UgaXQncyBiZWluZyBjb25zaWRl cmVkIGEgbWFzcyBvZiBkb2dzLCB0aGUgbWFueSBkb2dzIGNvbnNpZGVyZXMgYXMgYSB3aG9sZSBp cyBub3QgYSBkb2csIGJ1dCByYXRoZXIgYSBwYWNrIG9mIGRvZ3MuCgpZb3UgbWlnaHQgaGF2ZSBu b3RpY2VkIHRoYXQgdGhlcmUgaXMgbm8gd29yZCB3aGljaCB1bmFtYmlndW91c2x5IGNvbnZlcnRz IHNlbGJyaSB0byBpbmRpdmlkdWFsKHMpLiBJbiBvcmRlciB0byBiZSBleHBsaWNpdCBhYm91dCBp bmRpdmlkdWFsbmVzcywgb25lIG5lZWRzICcnbG8nJywgJydsZScnIG9yICcnbGEnJyB3aXRoIGFu IG91dGVyIHF1YW50aWZpZXIuIFRoZSBzdWJqZWN0IG9mIHF1YW50aWZpZXJzIHdpbGwgYmUgY29u c2lkZXJlZCBsYXRlciwgaW4gbGVzc29uIHR3ZW50eS10d28uIFdoYXQgaXMgdGhlIHJlYXNvbiB0 aGF0ICcnbG8nJyBhbmQgJydsZScnIHZhZ3VlLCBhbmQgbm90IGV4cGxpY2l0bHkgaW5kaXZpZHVh bD8gSXQgaXMgYmVjYXVzZSB0aGVpciB2YWd1ZW5lc3MgZW5hYmxlcyB0aGVtIHRvIGJlIHVzZWQg aW4gYW55IGNvbnRleHQsIHdpdGhvdXQgdGhlIHNwZWFrZXIgaGF2aW5nIHRvIHRoaW5rIGFib3V0 IHdoZXRoZXIgaXMgYmVoYXZlcyBhcyBhIG1hc3Mgb3IgYSBncm91cCBvZiBpbmRpdmlkdWFscy4K CgoKVGhpcmQgaW4gdGhpcyBzZXJpZXMsIHRoZXJlIGFyZSB0aHJlZSBzZXQtZm9ybWluZyAnJ2dh ZHJpJyc6CgoKCl9fJydsbydpJydfXyAtIGdhZHJpOiB2ZXJpZGljYWwg4oCcY29udmVydCBzZWxi cmkgdG8gc3VtdGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4KCl9fJydsZSdpJydfXyAtIGdh ZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gVHJlYXQgcmVz dWx0IGFzIGEgc2V0LgoKX18nJ2xhJ2knJ19fIC0gZ2Fkcmk6IE5hbWluZyBhcnRpY2xlOiBDb252 ZW50aW9uYWwsIOKAnGNvbnZlcnQgc2VsYnJpIG9yIGNtZXZsYSB0byBzdW10aeKAnS4gVHJlYXQg cmVzdWx0IGFzIGEgc2V0LgoKCgpVbmxpa2UgZ3JvdXBzIG9mIGluZGl2aWR1YWxzIG9yLCBzb21l dGltZXMsIG1hc3Nlcywgc2V0cyBkb2VzIG5vdCB0YWtlIGFueSBvZiB0aGUgcHJvcGVydGllcyBm cm9tIHRoZSBvYmplY3RzIGZyb20gd2hpY2ggdGhlIHNldCBpcyBmb3JtZWQuIEEgc2V0IGlzIGEg cHVyZWx5IG1hdGhlbWF0aWNhbCBvciBsb2dpY2FsIGNvbnN0cnVjdCwgYW5kIGhhcyBwcm9wZXJ0 aWVzIGxpa2UgY2FyZGluYWxpdHksIG1lbWJlcnNoaXAgYW5kIHNldCBpbmNsdXNpb24uIEFnYWlu LCBub3RlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBzZXQgb2YgdGhpbmdzLCBhbmQgdGhlIHRo aW5ncyBvZiB3aGljaCB0aGUgc2V0IGlzIGZvcm1lZDoKCl9fJyd0aXJ4dScnX18g4oCceDEgaXMg YSB0aWdlci9sZW9wYXJkL2phZ3VhciBvZiBzcGVjaWVzL2JyZWVkIHgyIHdpdGggY29hdCBtYXJr aW5ncyB4M+KAnQoKJydsbydpIHRpcnh1IGN1IGNtYWx1Jycgc2F5cyBub3RoaW5nIGFib3V0IHdo ZXRoZXIgYmlnIGNhdHMgYXJlIHNtYWxsICh3aGljaCBpcywgYnkgdGhlIHdheSwgb2J2aW91c2x5 IGZhbHNlKSwgYnV0IGluc3RlYWQgc2F5IHRoYXQgdGhlIHNldCBvZiBiaWcgY2F0cyBpcyBzbWFs bDsgdGhhdCBpcyAtIHRoZXJlIGFyZSBmZXcgb2YgdGhlbS4KCgoKTGFzdGx5LCB0aGVyZSBhcmUg dGhlIChvbmx5IHR3bykgZ2VuZXJhbGl6aW5nICcnZ2FkcmknJzoKCl9fJydsbydlJydfXyAtIGdh ZHJpOiB2ZXJpZGljYWwg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGnigJ0uIFN1bXRpIHJlZmVy cyB0byB0aGUgYXJjaGV0eXBlIG9mICcnbG8ge3NlbGJyaX0nJy4KCl9fJydsZSdlJydfXyAtIGdh ZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4gU3VtdGkgcmVm ZXJzIHRvIHRoZSBkZXNjcmliZWQvcGVyY2VpdmVkIGFyY2hldHlwZSBvZiAnJ2xlIHtzZWxicml9 JycuCgpPZiB3aGljaCB0aGVyZSBpcyBubyAnJ2xhJyctZXF1aXZhbGVudC4KCgoKU28sIHdoYXQg aXMgYWN0dWFsbHkgbWVhbnQgYnkgdGhlIGFyY2hldHlwZT8gRm9yICcnbG8nZSB0aXJ4dScnLCBp dCBpcyBhbiBpZGVhbCwgaW1hZ2luZWQgYmlnIGNhdCwgd2hpY2ggaGFzIGFsbCB0aGUgcHJvcGVy dGllcyB3aGljaCBiZXN0IGV4ZW1wbGlmaWVzIGJpZyBjYXRzLiBJdCB3b3VsZCBiZSB3cm9uZyB0 byBzYXkgdGhhdCB0aGlzIGluY2x1ZGVzIGhhdmluZyBhIHN0cmlwZWQgZnVyLCBzaW5jZSBhIGJp ZyBzeXN0ZW1hdGljIHN1Ymdyb3VwIG9mIHRoZSBtZW1iZXJzIG9mIHRoZSBzZXQgb2YgYmlnIGNh dHMgZG8gbm90IGhhdmUgc3RyaXBlZCBmdXIsIHN1Y2ggYXMgdGhlIGxlb3BhcmRzIGFuZCB0aGUg amFndWFycy4gTGlrZXdpc2UsIHRoZSB0eXBpY2FsIGh1bWFuIGRvZXMgbm90IGxpdmUgaW4gQXNp YSBldmVuIHRob3VnaCBhIGxvdCBvZiBodW1hbnMgZG8uIEhvd2V2ZXIsIGlmIHN1ZmZpY2llbnRs eSBtYW55IGh1bWFucyBoYXZlIGEgdHJhaXQsIGZvciBpbnN0YW5jZSBiZWluZyBhYmxlIHRvIHNw ZWFrLCB3ZSBjYW4gc2F5OgoKX18nJ2tha25lJydfXzog4oCceDEgaXMgY2FwYWJsZSBvZiBkb2lu Zy9iZWluZyB4MiB1bmRlciBjaXJjdW1zdGFuY2UgeDPigJ0KCicnbG8nZSByZW1uYSBjdSBrYWtu ZSBsbyBudSB0YXZsYScnIC0g4oCcVGhlIHR5cGljYWwgaHVtYW4gYmVpbmcgY2FuIHNwZWFr4oCd LgoKCgonJ2xlJ2UnJyB0aGVuLCBpcyB0aGUgaWRlYWwgb2JqZWN0IGFzIHBlcmNlaXZlZCBvciBk ZXNjcmliZWQgYnkgdGhlIHNwZWFrZXIuIFRoaXMgbmVlZCBub3QgYmUgZmFjdHVhbGx5IGNvcnJl Y3QsIGFuZCBpcyBvZnRlbiB0cmFuc2xhdGVkIGFzIHRoZSDigJxzdGVyZW90eXBl4oCdLCBldmVu IHRob3VnaCB0aGUgRW5nbGlzaCBwaHJhc2UgaGF2ZSBzb21lIHVucGxlYXNhbnQgbmVnYXRpdmUg Y29ubm90YXRpb25zLCB3aGljaCB0aGUgTG9qYmFuIGRvZXMgbm90LiBJbiBmYWN0LCBldmVyeW9u ZSBoYXMgYSBzdGVyZW90eXBpY2FsIGFyY2hldHlwaWNoYWwgaW1hZ2Ugb2YgYW55IGNhdGVnb3J5 LiBJbiBvdGhlciB3b3JkcywgJydsbydlIHJlbW5hJycgaXMgdGhlIGFyY2hldHlwZSB3aGljaCBi ZXN0IGV4ZW1wbGlmaWVzIGFsbCAnJ2xvIHJlbW5hJycsIHdoaWxlIHRoZSBhcmNoZXR5cGUgJyds ZSdlIHJlbW5hJycgYmVzdCBleGVtcGxpZmllcyBhbGwgJydsZSByZW1uYScnLgoKCgpUaGUgZWxl dmVuIGdhZHJpIGNhbiBiZSBzZWVuIGluIHRoZSBkaWFncmFtIGJlbG93LgoKfHwgfEdlbmVyaWN8 TWFzc2VzfFNldHN8R2VuZXJhbGl6aW5nCgp2ZXJpZGljYWx8bG98bG9pfGxvJ2l8bG8nZQoKRGVz Y3JpcHRpdmV8bGV8bGVpfGxlJ2l8bGUnZQoKTmFtZXxsYXxsYWl8bGEnaXxkb2VzIG5vdCBleGlz dHx8CgoKCk5vdGU6IEVhcmxpZXIsIHRoZXJlIHdhcyBhIHdvcmQgJyd4bydlJycgZm9yIHRoZSBn ZW5lcmljIGdhZHJpLiBIb3dldmVyLCB0aGUgcnVsZXMgYW5kIGRlZmluaXRpb25zIGZvciBnYWRy aSB3ZXJlIGNoYW5nZWQgaW4gbGF0ZSAyMDA0LCBhbmQgdGhlIGN1cnJlbnQgc2V0IG9mIHJ1bGVz IG9uIHRoaXMgdG9waWMsIG5pY2tlZCDigJx4b3Jsb+KAnSBoYXMgcmVwbGFjZWQgdGhlIG9sZCB3 YXkuIE5vdywgJydsbycnIGlzIGdlbmVyaWMsIGFuZCAnJ3hvJ2UnJyBpcyB1c2VkIGFzIGFuIGVs bGlwdGljYWwgZGlnaXQgKGxlc3NvbiBuaW5ldGVlbikuCgoKCgoKISFMb2piYW4gTGVzc29ucyAt IExlc3NvbiBmaWZ0ZWVuICh0aGUgTG9qYmFuIHN1bXRpIDI6IEtPaEEzLCBLT2hBNSBhbmQgS09o QTYpCgpTZWUgd2hhdCBoYXBwZW5zIGlmIEkgdHJ5IHRvIHRyYW5zbGF0ZSB0aGUgc2VudGVuY2U6 IOKAnFN0ZXJlb3R5cGljYWwgcGVvcGxlIHdobyBjYW4gc3BlYWsgTG9qYmFuIHNwZWFrIHRvIGVh Y2ggb3RoZXIgYWJvdXQgdGhlIGxhbmd1YWdlcyB0aGV5IGNhbiBzcGVha+KAnToKCl9fJydiYW5n dScnX18g4oCceDEgaXMgYSBsYW5ndWFnZSB1c2VkIGJ5IHgyIHRvIGV4cHJlc3MgeDMgKGFic3Ry YWN0aW9uKeKAnQoKJydsZSdlIHByZW51IHBvaSBrZSdhIGtha25lIGxvIG51IHRhdmxhIGZvIGxh IC5sb2piYW4uIGN1IHRhdmxhIGxlJ2UgcHJlbnUgcG9pIGtlJ2Ega2FrbmUgbG8gbnUgdGF2bGEg Zm8gbGEgLmxvamJhbi4gbG8gYmFuZ3UgcG9pIGxvIHByZW51IHBvaSBrZSdhIHRhdmxhIGZvIGxh IC5sb2piYW4uIGN1IHNlIGJhbmd1IGtlJ2EnJwoKCgpXaGF0IHdlIHNlZSBpcyB0aGF0IHRoZSBM b2piYW4gdmVyc2lvbiBpcyBtdWNoIGxvbmdlciB0aGFuIHRoZSBFbmdsaXNoLiBUaGlzIGlzIHBy aW1hcmlseSBiZWNhdXNlIHRoZSBmaXJzdCwgcmlkaWN1bG91c2x5IGxvbmcgc3VtdGkgaXMgYmVp bmcgcmVwZWF0ZWQgdHdvIG1vcmUgdGltZXMgaW4gdGhlIExvamJhbiB0ZXh0LCB3aGlsZSB0aGUg RW5nbGlzaCBjYW4gcmVmZXIgdG8gaXQgYnkg4oCcZWFjaCBvdGhlcuKAnSBhbmQg4oCcdGhleeKA nSAtIG11Y2ggbW9yZSBlZmZpY2llbnRseS4gV291bGRuJ3QgaXQgYmUgY2xldmVyIGlmIExvamJh biBzb21laG93IGhhZCBtZWNoYW5pc21zIGZvciBkb2luZyB0aGUgc2FtZT8KCgoKSXQgdHVybnMg b3V0IGl0IGRvZXMsIHdoYXQgYSBzdXJwcmlzZSEgTG9qYmFuIGhhcyBhIHJhbmdlIG9mIHdvcmRz IGNhbGxlZCAnJ3N1bWthJ2knJyBtZWFuaW5nIOKAnHN1bXRpLXJlcHJlc2VudGF0aXZlc+KAnS4g SW4gRW5nbGlzaCwgd2UgcmVmZXIgdG8gdGhlbSBhcyBwcm8tc3VtdGksIGJlY2F1c2UgdGhleSBh cmUgZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMgdGhlIEVuZ2xpc2ggcHJvbm91bnMsIGJ1dCB3aXRo IHN1bXRpIGluc3RlYWQgb2Ygbm91bnMuIEluIGZhY3QsIHlvdSBhbHJlYWR5IGtub3cgJyd0aScn LCAnJ2RvJycgYW5kICcnbWknJywgYnV0IHRoZXJlIGFyZSBtYW55IG1vcmUsIHNvIGxldCdzIGdl dCBsZWFybmluZy4gRmlyc3QsIHdlIHdhbnQgdG8gcHV0IGl0IGludG8gc3lzdGVtLiBXZSBjYW4g YmVnaW4gd2l0aCB0aGUgb25lcyBtb3N0IGZhbWlsaWFyIHRvIEVuZ2xpc2gsIGFuZCB3aGF0IHlv dSd2ZSBhbHJlYWR5IGxlYXJuZWQ6CgoKCl9fJyd0aScnX18gLSBzdW1rYSdpOiDigJxpbW1lZGlh dGUg4oCYaXQnOiByZXByZXNlbnRzIGEgc3VtdGkgcGh5c2ljYWxseSBuZWFyIHRoZSBzcGVha2Vy 4oCdCgpfXycndGEnJ19fIC0gc3Vta2EnaTog4oCcbmVhcmJ5IOKAmGl0JzogcmVwcmVzZW50cyBh IHN1bXRpIHNvbWUgcGh5c2ljYWwgZGlzdGFuY2UgZnJvbSB0aGUgc3BlYWtlciBPUiBjbG9zZSB0 byB0aGUgbGlzdGVuZXLigJ0KCl9fJyd0dScnX18gLSBzdW1rYSdpOiDigJxkaXN0YW50IOKAmGl0 JzogcmVwcmVzZW50cyBhIHN1bXRpIHBoeXNpY2FsbHkgZmFyIGZyb20gdGhlIHNwZWFrZXIgYW5k IHRoZSBsaXN0ZW5lci7igJ0KCgoKWW91IGNhbiBhZ2FpbiByZWNvZ25pemUgdGhlIOKAnGksIGEs IHXigJ0tc2VxdWVuY2Ugd2hpY2ggcG9wcyB1cCBvdmVyIGFuZCBvdmVyLiBTb21lIHRoaW5ncyBt aWdodCB0YWtlIHNvbWUgY2xlYXJpbmcgdXAsIHRob3VnaC4gRmlyc3RseSwgdGhlc2Ugc3VtdGkg Y2FuIHJlcHJlc2VudCBhbnl0aGluZyB3aGljaCBjYW4gYmUgc2FpZCB0byBvY2N1cHkgYSBwaHlz aWNhbCBzcGFjZS4gT2JqZWN0cywgY2VydGFpbmx5LiBJZGVhcywgY2VydGFpbmx5IG5vdC4gRXZl bnRzIGFyZSBhY2NlcHRlZCwgYnV0IG9ubHkgdG8gdGhlIGV4dGVudCB0aGV5IGFyZSByZXN0cmlj dGVkIHRvIGEgc3BlY2lmaWMgcGxhY2UgLSB0aGUgSmFzbWluIFJldm9sdXRpb24gY2Fubm90IGJl IHBvaW50ZWQgYXQsIGJ1dCBzb21lIGJhci1maWdodCBvciBhIGtpc3MgbWlnaHQuIFNlY29uZGx5 LCBub3RlIHRoYXQgdGhlIGRpc3RhbmNlIGlzIHJlbGF0aXZlIHRvIGRpZmZlcmVudCB0aGluZ3Mg Zm9yIHRoZSBkaWZmZXJlbnQgd29yZHM6ICcndHUnJyBvbmx5IGFwcGxpZXMgaWYgaXQncyBkaXN0 YW50IGZyb20gYm90aCB0aGUgc3BlYWtlciBhbmQgdGhlIGxpc3RlbmVyLiBJbiBjYXNlcyB3aGVy ZSB0aGUgc3BlYWtlciBhbmQgbGlzdGVuZXIgaXMgZmFyIGFwYXJ0IGFuZCB0aGUgbGlzdGVuZXIg Y2Fubm90IHNlZSB0aGUgc3BlYWtlciB0YWxraW5nLCAnJ3RhJycgcmVmZXJzIHRvIHNvbWV0aGlu ZyBjbG9zZSB0byB0aGUgbGlzdGVuZXIuIFRoaXJkbHksIGl0J3MgYWxsIHJlbGF0aXZlIGFuZCBj b250ZXh0IGRlcGVuZGVudC4gVGhlc2UgdGhyZWUgd29yZHMgYXJlIGFsbCBwcm9ibGVtYXRpYyBp biB3cml0dGVuIHRleHQsIGZvciBpbnN0YW5jZSwgYmVjYXVzZSB0aGUgcG9zaXRpb24gb2YgdGhl IHNwZWFrZXIgYW5kIGxpc3RlbmVyIGlzIHVua25vd24gdG8gZWFjaCBvdGhlciwgYW5kIGNoYW5n ZXMgYXMgdGltZSBnb2VzIGJ5LiBGdXJ0aGVybW9yZSwgdGhlIGF1dGhvciBvZiBhIGJvb2sgY2Fu bm90IHBvaW50IHRvIGFuIG9iamVjdCBhbmQgZXhwcmVzcyB0aGUgcG9pbnRpbmcgaW4gdGhlIGJv b2suCgoKClRoZW4gdGhlcmUgaXMgYSBzZXJpZXMgY2FsbGVkIEtPaEEzLCB0byB3aGljaCAnJ21p JycgYW5kICcnZG8nJyAoYW5kICcna28nJywgYnV0IEkgd29uJ3Qgd3JpdGUgdGhhdCBoZXJlKSBi ZWxvbmdzOgoKX18nJ21pJydfXyAtIHN1bWthJ2k6IFRoZSBzcGVha2VyKHMpLgoKX18nJ21pJ28n J19fIC0gc3Vta2EnaTogVGhlIG1hc3Mgb2YgdGhlIHNwZWFrZXIocykgYW5kIHRoZSBsaXN0ZW5l cihzKSAuCgpfXycnbWknYScnX18gLSBzdW1rYSdpOiBUaGUgbWFzcyBvZiB0aGUgc3BlYWtlcihz KSBhbmQgb3RoZXJzLgoKX18nJ21hJ2EnJ19fIC0gc3Vta2EnaTogVGhlIG1hc3Mgb2YgdGhlIHNw ZWFrZXIocyksIHRoZSBsaXN0ZW5lcihzKSBhbmQgb3RoZXJzLgoKX18nJ2RvJydfXyAtIHN1bWth J2k6IFRoZSBsaXN0ZW5lcihzKS4KCl9fJydkbydvJydfXyAtIHN1bWthJ2k6IFRoZSBtYXNzIG9m IHRoZSBsaXN0ZW5lcihzKSBhbmQgb3RoZXJzLgoKCgpUaGVzZSBzaXggc3Vta2EnaSBhcmUgbW9y ZSBlYXNpbHkgZ3Jhc3BlZCBpbiB0aGUgYmVsb3cgVmVubiBkaWFncmFtOgoKCgp7aW1nIGZpbGVJ ZD0iMyIgdGh1bWI9InkiIHJlbD0iYm94W2ddIn0KClZlbm4gZGlhZ3JhbSBvZiBLT2hBMyAoJydr bycnIGV4Y2x1ZGVkKS4gJydsZSBkcmF0YScnIGlzIG5vdCBhIEtPaEEzLCBidXQgbWVhbnMg4oCc dGhlIG90aGVyKHMp4oCdCgoKCkl0IGlzIHBvc3NpYmxlIGZvciBzZXZlcmFsIHBlb3BsZSB0byBi ZSDigJx0aGUgc3BlYWtlcnPigJ0sIGlmIG9uZSBzdGF0ZW1lbnQgaXMgbWFkZSBvbiB0aGUgYmVo YWxmIG9mIGFsbCBvZiB0aGVtLiBUaGVyZWZvcmUsIHdoaWxlIOKAnHdl4oCdIGNhbiBiZSB0cmFu c2xhdGVkIGFzIGVpdGhlciAnJ21pJycsICcnbWknbycnLCAnJ21pJ2EnJyBvciAnJ21hJ2EnJywg d2hhdCBvbmUgcXVpdGUgb2Z0ZW4gbWVhbnMgaXMgcmVhbGx5IGp1c3QgJydtaScnLiBBbGwgb2Yg dGhlc2Ugc2l4LCBpZiB0aGV5IHJlZmVyIHRvIG1vcmUgdGhhbiBvbmUgaW5kaXZpZHVhbCwgcmVw cmVzZW50IG1hc3Nlcy4gV2l0aGluIGJyaWRpLWxvZ2ljLCB0aGUgYnJpZGkgJydtaSBnbGVraScn IHNhaWQgYnkgc3BlYWtlciBBIGlzIGV4YWN0bHkgZXF1aXZhbGVudCB0byAnJ2RvIGdsZWtpJycg c2FpZCBieSBzcGVha2VyIEIgdG8gc3BlYWtlciBBLCBhbmQgYXJlIGNvbnNpZGVyZWQgdGhlIHNh bWUgYnJpZGkuIFdlIHdpbGwgY29tZSBiYWNrIHRvIHRoaXMgbGF0ZXIsIGluIHRoZSAnJ2JyaWth J2knJyAocHJvLWJyaWRpKSBsZXNzb24uCgoKCkFsbCBvZiB0aGVzZSAnJ3N1bWthJ2knJyBhcmUg dmVyeSBjb250ZW50LXNwZWNpZmljLCBhbmQgY2Fubm90IGJlIHVzZWQsIGZvciBpbnN0YW5jZSwg dG8gaGVscCB1cyB3aXRoIHRoZSBzZW50ZW5jZSB3aGljaCB0aGlzIGxlc3NvbiBiZWdhbiB3aXRo LiBUaGUgZm9sbG93aW5nIHNlcmllcyBjYW4gaW4gcHJpbmNpcGxlIGJlIHVzZWQgdG8gcmVmZXIg dG8gYW55IHN1bXRpOgoKX18nJ3JpJydfXyAtIHN1bWthJ2k6IOKAnExhc3Qgc3VtdGkgbWVudGlv bmVk4oCdCgpfXycncmEnJ19fIC0gc3Vta2EnaTog4oCcQSByZWNlbnQsIGJ1dCBub3QgdGhlIGxh c3Qgc3VtdGkgbWVudGlvbmVk4oCdCgpfXycncnUnJ19fIC0gc3Vta2EnaTog4oCcQSBzdW10aSBt ZW50aW9uZWQgbG9uZyBhZ2/igJ0KCgoKVGhlc2Ugc3VtdGkgd2lsbCByZWZlciB0byBhbnkgdGVy bWluYXRlZCBzdW10aSBleGNlcHQgbW9zdCBvdGhlciAnJ3N1bWthJ2knJy4gVGhlIHJlYXNvbiB0 aGF0IG1vc3Qgb3RoZXIgJydzdW1rYSdpJycgY2Fubm90IGJlIHJlZmVycmVkIHRvIGJ5IHRoZXNl IHN1bXRpLCBpcyB0aGF0IHRoZXkgYXJlIHNvIGVhc3kgdG8ganVzdCByZXBlYXQgYnkgdGhlbXNl bHZlcy4gVGhlIGV4Y2VwdGlvbiB0byB0aGUgcnVsZSBhcmUgJyd0aScnLCAnJ3RhJycgYW5kICcn dHUnJywgYmVjYXVzZSB5b3UgY291bGQgaGF2ZSBjaGFuZ2VkIHdoYXQgeW91IHBvaW50IGF0LCBh bmQgdGh1cyBjYW5ub3QganVzdCByZXBlYXQgdGhlIHdvcmQuIFRoZXkgd2lsbCBvbmx5IHJlZmVy IHRvIHRlcm1pbmF0ZWQgc3VtdGksIGFuZCB0aHVzIGNhbm5vdCwgZm9yIGluc3RhbmNlLCBiZSB1 c2VkIHRvIHJlZmVyIHRvIGFuIGFic3RyYWN0aW9uIGlmIHRoZSB3b3JkIGluIGlzIHRoYXQgYWJz dHJhY3Rpb246ICcnbGUgcGVuZG8gbm9pIGtlJ2EgcGVuZG8gbWkgY3UgZGppY2EgbG8gbnUgcmkg c2UgemRhbmknJyAtIGhlcmUgJydyaScnIGNhbm5vdCByZWZlciB0byB0aGUgYWJzdHJhdGlvbiwg c2luY2UgaXQgaXMgbm90IHRlcm1pbmF0ZWQsIG5vciB0byAnJ21pJycgb3IgJydrZSdhJycsIHNp bmNlIHRoZXkgYXJlIHN1bWthJ2ksIHNvIGl0IHJlZmVycyB0byAnJ2xlIHBlbmRvJycuCgonJ3Jh JycgYW5kICcncnUnJyBhcmUgY29udGV4dC1kZXBlbmRlbnQgaW4gd2hhdCB0aGV5IHJlZmVyIHRv LCBidXQgdGhleSBmb2xsb3cgdGhlIHJ1bGVzIG1lbnRpb25lZCBhYm92ZSwgYW5kICcncnUnJyBh bHdheXMgcmVmZXIgdG8gYSBtb3JlIGRpc3RhbnQgc3VtdGkgdGhhbiAnJ3JhJycsIHdoaWNoIGlz IGFsd2F5cyBtb3JlIGRpc3RhbnQgdGhhbiAnJ3JpJycuCgoKCicncmknJyBhbmQgaXQncyBicm90 aGVycyBhcmUgcHJldHR5IHdlbGwgc3VpdGVkIGZvciBkZWFsaW5nIHdpdGggdGhlIG9yaWdpbmFs IHNlbnRlbmNlLiBUcnkgc2F5aW5nIGl0IHVzaW5nIHR3byBpbnN0YW5jZXMgb2YgJydzdW1rYSdp JychCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydsZSdlIHByZW51IHBvaSBrZSdhIGtha25lIGxv IG51IHRhdmxhIGZvIGxhIC5sb2piYW4uIGN1IHRhdmxhIHJ1IGxvIGJhbmd1IHBvaSBydSBjdSBz ZSBiYW5ndSBrZSdhJycuICcncmknJyBpcyBub3QgY29ycmVjdCwgYmVjYXVzZSBpdCByZWZlcnMg dG8gJydsYSAubG9qYmFuLicnLiAnJ3JhJycgY291bGQgYmUgdXNlZCwgYnV0IGNvdWxkIGJlIG1p c3Rha2VubHkgYmUgdGhvdWdodCB0byByZWZlciB0byAnJ2xvIG51IHRhdmxhIGZvIGxhIC5sb2pi YW4uJycsIGJ1dCAnJ3J1JycgaXMgYXNzdW1lZCB0byByZWZlciB0byB0aGUgbW9zdCBkaXN0YW50 IHN1bXRpIC0gdGhlIG1vc3Qgb3V0ZXIgb25lLn5+CgoKCkxhc3RseSwgdGhlcmUgYSBzdW10Y2l0 YSB3aGljaCByZXByZXNlbnQgdXR0ZXJhbmNlczogU28gY2FsbGVkIHV0dGVyYW5jZSB2YXJpYWJs ZXMuIFRoZXkgbmVlZCBub3QgYmUgcmVzdHJpY3RlZCB0byBvbmUgc2VudGVuY2UgKGp1ZnJhKSwg YnV0IGNhbiBiZSBzZXZlcmFsIHNlbnRlbmNlcywgaWYgdGhlIGNvbnRleHQgYWxsb3dzIGl0OgoK X18nJ2RhJ3UnJ19fIFV0dGVyYW5jZSB2YXJpYWJsZTogUmVtb3RlIHBhc3Qgc2VudGVuY2UKCl9f JydkZSd1JydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IFJlY2VudCBzZW50ZW5jZQoKX18nJ2RpJ3Un J19fIFV0dGVyYW5jZSB2YXJpYWJsZTogUHJldmlvdXMgc2VudGVuY2UKCl9fJydkZWknJ19fIFV0 dGVyYW5jZSB2YXJpYWJsZTogVGhpcyBzZW50ZW5jZQoKX18nJ2RpJ2UnJ19fIFV0dGVyYW5jZSB2 YXJpYWJsZTogTmV4dCBzZW50ZW5jZQoKX18nJ2RlJ2UnJ19fIFV0dGVyYW5jZSB2YXJpYWJsZTog TmVhciBmdXR1cmUgc2VudGVuY2UKCl9fJydkYSdlJydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IFJl bW90ZSBmdXR1cmUgc2VudGVuY2UKCl9fJydkbydpJydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IEVs bGlwdGljYWwgdXR0ZXJhbmNlIHZhcmlhYmxlOiDigJxTb21lIHNlbnRlbmNl4oCdCgpUaGVzZSBy ZXByZXNlbnRzIHNlbnRlbmNlcyBhcyBzdW10aSwgYW5kIHJlZmVyIG9ubHkgdG8gdGhlIHNwb2tl biB3b3JkcyBvciB0aGUgbGV0dGVycywgbm90IHRvIHRoZSBtZWFuaW5nIGJlaGluZCB0aGVtLgoK CgpUaGVyZSBhcmUgbW9yZSBMb2piYW4gJydzdW1rYSdpJycsIGJ1dCBmb3Igbm93IHlvdSBwcm9i YWJseSBuZWVkIGEgYnJlYWsgZnJvbSB0aGVtLiBUaGUgbmV4dCBsZXNzb24gd2lsbCBiZSBvbiBk ZXJpdmVkIHN1bXRpLCBzdW10aSBtYWRlIGZyb20gb3RoZXIgc3VtdGkuCgoKCgoKISFMb2piYW4g TGVzc29ucyAtIExlc3NvbiBzaXh0ZWVuICh0aGUgTG9qYmFuIHN1bXRpIDM6IGRlcml2ZWQgc3Vt dGkpCgpZb3UgY2FuIHByb2JhYmx5IHNlZSB0aGF0IHRoZSBzdW10aSAnJ2xlIGJhbmd1IHBvaSBt aSBzZSBiYW5ndSBrZSdhJycgaXMgYSBsZXNzIHRoYW4gZWxlZ2FudCBleHByZXNzaW9uIGZvciDi gJxteSBsYW5ndWFnZeKAnS4gVGhpcyBpcyBiZWNhdXNlIGl0J3MgcmVhbGx5IGEgd29yayBhcm91 bmQuIEEgbGFuZ3VhZ2Ugd2hpY2ggSSBzcGVhayBjYW4gYmUgc2FpZCB0byBmaWxsIGludG8gdGhl IHgxIG9mIHRoZSBicmlkaSAnJ2Jhbmd1IG1pJycuIFdlIGNhbid0IGNvbnZlcnQgdGhhdCB0byBh IHN1bXRpIHVzaW5nIGEgZ2Fkcmk6ICcnbGUgYmFuZ3Uge2t1fSBtaScnIGlzIHR3byBzdW10aSwg YmVjYXVzZSAnJ2Jhbmd1IG1pJycgaXMgYSBicmlkaSwgbm90IGEgc2VsYnJpLiBOZWl0aGVyIGNh biB3ZSBjb252ZXJ0IGl0IHVzaW5nICcnbGUgc3UndScnLCBiZWNhdXNlIHRoZSBzdSd1IGdpdmVz IHRoZSBicmlkaSBhIG5ldyB4MSwgdGhlIGFic3RyYWN0aW9uLCBhbmQgdGhlICcnbGUnJyB0aGVu IGV4dHJhY3RzIHRoYXQuIFRoYXQgbWFrZXMgYW4gYWJzdHJhY3Rpb24gc3VtdGkgbWVhbmluZyBz b21ldGhpbmcgbGlrZSDigJx0aGF0IHNvbWV0aGluZyBpcyBteSBsYW5ndWFnZeKAnS4KCkVudGVy ICcnYmUnJy4gJydiZScnIGlzIGEgd29yZCB3aGljaCBiaW5kcyBjb25zdHJ1Y3RzIChzdW10aSwg c3VtdGNpdGEgYW5kIG90aGVycykgdG8gYSBzZWxicmkuIFVzaW5nIGl0IGluIG9yZGluYXJ5IHNl bGJyaSBoYXMgbm8gZWZmZWN0OiBpbiAnJ21pIG5lbGNpIGJlIGRvJycsIHRoZSAnJ2JlJycgZG9l cyBub3RoaW5nLiBIb3dldmVyLCB3aGVuIGEgc3VtdGkgaXMgYm91bmQgdG8gYSBzZWxicmkgdGhp cyB3YXksIHlvdSBjYW4gdXNlIGEgZ2Fkcmkgb24gdGhlIHNlbGJyaSB3aXRob3V0IHRoZSBzdW10 aSBzcGxpdHRpbmcgb2ZmOiAnJ2xlIGJhbmd1IGJlIG1pJycgaXMgYSBjb3JyZWN0IHNvbHV0aW9u IHRvIHRoZSBwcm9ibGVtIGFib3ZlLiBMaWtld2lzZSwgeW91IGNhbiBhdHRhY2ggYSBzdW10Y2l0 YTogJydsZSBudSBkYXJ4aSBrZWkgYmUgZ2F1IGRvJyc6IOKAnFRoZSBldmVudCBvZiBoaXR0aW5n LCB3aGljaCBpcyBjYXVzZWQgYnkgeW914oCdLiBOb3RlIHRoYXQgdGhlIHByZXNlbmNlIG9yIGFi c2VuY2Ugb2YgJydrZWknJyBtYWtlcyBpdCBwYXJzZSBkaWZmZXJlbnRseTogV2l0aCB0aGUgZmEn b3JtYSdvIHByZXNlbnQsICcnYmUnJyBhdHRhY2hlcyB0byAnJ251JycsIHdpdGhvdXQgdGhlIGZh J29ybWEnbywgaXQgYXR0YWNoZXMgdG8gJydkYXJ4aScnLiBTbyBpdCBkZWNpZGVzIHdoYXQgaXMg YmVpbmcgZW1waGFzaXNlZDogSXMgdGhlIGhpdHRpbmcsIG9yIHRoZSBldmVudCBvZiBoaXR0aW5n IGNhdXNlZCBieSB5b3U/IEluIHRoaXMgc3BlY2lmaWMgY2FzZSwgdGhvdWdoLCB0aGF0J3MganVz dCBhYm91dCB0aGUgc2FtZSB0aGluZy4KCgoKV2hhdCBpZiBJIHdhbnQgdG8gYXR0YWNoIHNldmVy YWwgc3VtdGkgdG8gYSBzZWxicmkgaW5zaWRlIGEgZ2Fkcmk/IOKAnFRoZSBnaXZlciBvZiB0aGUg YXBwbGUgdG8geW914oCdIGlzICcnbGUgZHVuZGEgYmUgbG8gcGxpc2UgYmUgZG8nJywgcmlnaHQ/ IE5vcGUuIFRoZSBzZWNvbmQgJydiZScnIGF0dGFjaGVzIHRvIHRoZSBhcHBsZSwgbWVhbmluZyAn J2xlIHBsaXNlIGJlIGRvJycgLSDigJxUaGUgYXBwbGUgb2YgdGhlIHN0cmFpbiBvZiB5b3XigJ0s IHdoaWNoIG1ha2VzIG5vIHNlbnNlLiBJbiBvcmRlciB0byBzdHJpbmcgc2V2ZXJhbCBzdW10aSB0 byBhIHNlbGJyaSwgdGhlIGFsbCB0aGUgb25lcyBmb2xsb3dpbmcgdGhlIGZpcnN0IG11c3QgYmUg Ym91bmQgd2l0aCAnJ2JlaScnLiBUaGUg4oCcYmluZGluZ+KAnSBjYW4gYmUgdGVybWluYXRlZCB3 aXRoICcnYmUnbycnIC0gb25lIGluc3RhbmNlIG9mICcnYmUnbycnIGZvciBlYWNoIHNlbGJyaSB3 aGljaCBoYXMgc3VtdGkgYm91bmQgYnkgJydiZScnLgoKVG8gbGlzdCB0aGVtOgoKX18nJ2JlJydf XyBiaW5kcyBzdW10aSBvciBzdW10Y2l0YSB0byBzZWxicmkKCl9fJydiZWknJ19fIGJpbmRzIGEg c2Vjb25kLCB0aGlyZCwgZm91cnRoIChlY3QpIHN1bXRpIG9yIHN1bXRjaXRhIHRvIGEgc2VsYnJp CgpfXycnYmUnbycnX18gZW5kcyBiaW5kaW5nIHRvIHNlbGJyaQoKCgpUaGVyZSBpcyBhbHNvIHdh eXMgdG8gbG9vc2VseSBhc3NvY2lhdGUgYSBzdW10aSB3aXRoIGFub3RoZXIuICcncGUnJyBhbmQg JyduZScnIGZvciByZXN0cmljdGl2ZSBhbmQgbm9uLXJlc3RyaWN0aXZlIGFzc29jaWF0aW9uLiBB Y3R1YWxseSwgJydsZSBiYW5ndSBwZSBtaScnIGlzIGEgYmV0dGVyIHRyYW5zbGF0aW9uIG9mIOKA nG15IGxhbmd1YWdl4oCdLCBzaW5jZSB0aGlzIHBocmFzZSwgbGlrZSB0aGUgRW5nbGlzaCwgaXMg dmFndWUgYXMgdG8gaG93IHRoZSB0d28gYXJlIGFzc29jaWF0ZWQgd2l0aCBlYWNoIG90aGVyLgoK JydwZScnIGFuZCAnJ25lJycgYXJlIHVzZWQgYXMgbG9vc2UgYXNzb2NpYXRpb24gb25seSwgbGlr ZSBzYXlpbmcg4oCcbXkgY2hhaXLigJ0gYWJvdXQgYSBjaGFpciB3aGljaCB5b3Ugc2l0IG9uLiBJ dCdzIG5vdCByZWFsbHkgeW91cnMsIGJ1dCBoYXMgc29tZXRoaW5nIGRvIHRvIHdpdGggeW91LiBB IG1vcmUgaW50aW1hdGUgY29ubmVjdGlvbiBjYW4gYmUgZXN0YWJsaXNoZWQgd2l0aCAnJ3BvJycs IHdoaWNoIG1ha2VzIHRoZSBhc3NvY2lhdGlvbiB1bmlxdWUgYW5kIGJpbmRpbmcgdG8gYSBwZXJz b24sIGFzIGluIOKAnG15IGNhcuKAnSBmb3IgYSBjYXIgdGhhdCB5b3UgYWN0dWFsbHkgb3duLiBU aGUgbGFzdCBraW5kIG9mIGFzc29jaWF0b3IgaXMgJydwbydlJycsIHdoaWNoIG1ha2VzIGEgc28t Y2FsbGVkICJpbmFsaWVuYWJsZSIgYm9uZCBiZXR3ZWVuIHN1bXRpLCBtZWFuaW5nIHRoYXQgdGhl IGJvbmQgaXMgaW5uYXRlIGJldHdlZW4gdGhlIHR3byBzdW10aS4gU29tZSBleGFtcGxlcyBjb3Vs ZCBiZSAibXkgbW90aGVyIiwgIm15IGFybSIgb3IgIm15IGhvbWUgY291bnRyeSI7IG5vbmUgb2Yg dGhlc2UgInBvc3Nlc2lvbnMiIGNhbiBiZSBsb3N0IChldmVuIGlmIHlvdSBzYXcgb2ZmIHlvdXIg YXJtLCBpdCdzIHN0aWxsIF9feW91cl9fIGFybSksIGFuZCBhcmUgdGhlcmVmb3JlIGluYWxpZW5h YmxlLiBBbG1vc3QgYWxsIG9mIHRoZSB0aW1lcyBhICcncG8nZScnIGlzIGFwcHJvcHJpYXRlLCB0 aG91Z2gsIHRoZSB4MiBvZiB0aGUgc2VsYnJpIGNvbnRhaW5zIHRoZSBvbmUgdG8gd2hpY2ggdGhl IHgxIGlzIGNvbm5lY3RlZCwgc28gJydiZScnIGlzIGJldHRlci4KCl9fJyduZScnX18gbm9uLXJl c3RyaWN0aXZlIHJlbGF0aXZlIHBocmFzZS4gIndoaWNoIGlzIGFzc29jaWF0ZWQgd2l0aC4uLiIK Cl9fJydwZScnX18gcmVzdHJpY3RpdmUgcmVsYXRpdmUgcGhyYXNlLiAid2hpY2ggaXMgYXNzb2Np YXRlZCB3aXRoLi4uIgoKX18nJ3BvJydfXyBwb3NzZXNpdmUgcmVsYXRpdmUgcGhyYXNlLiAid2hp Y2ggaXMgc3BlY2lmaWMgdG8uLi4iCgpfXycncG8nZScnX18gaW5hbGllbmFibGUgcmVsYXRpdmUg cGhyYXNlLiAid2hpY2ggYmVsb25ncyB0by4uLiIKCgoKQSB2ZXJ5IHVzZWZ1bCBjb25zdHJ1Y3Qg dG8ga25vdyBpcyAnJ3tnYWRyaX0ge3N1bXRpfSB7c2VsYnJpfScnLiB0aGlzIGlzIGVxdWl2YWxl bnQgdG8gJyd7Z2Fkcml9IHtzZWxicml9IHBlICB7c3VtdGl9JycuIEZvciBpbnN0YW5jZSAnJ2xl IG1pIGdlcmt1JycgaXMgZXF1aXZhbGVudCB0byAnJ2xlIGdlcmt1IHBlIG1pJycuIE9uZSBjb3Vs ZCBoYXZlIGRlc2NyaXB0aW9uIHN1bXRpIGluc2lkZSBkZXNjcmlwdGlvbiBzdW10aSwgc2F5aW5n ICcnbGUgbGUgc2UgY2luamlrY2EgYmUgbWkga3UgZ2Vya3UnJywgPSAnJ2xlIGdlcmt1IHBlIGxl IHNlIGNpbmppa2NhIGJlIG1pJycgPeKAnHRoZSBkb2cgb2YgdGhlIG1hbiBJJ20gZmxpcnRpbmcg d2l0aOKAnSwgYnV0IHRoYXQncyBub3QgdmVyeSBlYXN5IHRvIHJlYWQgKG9yIHRvIHVuZGVyc3Rh bmQgd2hlbiBzcG9rZW4pLCBhbmQgaXMgb2Z0ZW4gYmVpbmcgYXZvaWRlZC4KCgoKT25lIG5lZWQg YWxzbyB0byBsZWFybiAnJ3R1J2EnJywgc2luY2UgaXQgd2lsbCBtYWtlIGEgbG90IG9mIHNlbnRl bmNlcyBtdWNoIGVhc2llci4gSXQgdGFrZXMgYSBzdW10aSBhbmQgY29udmVydHMgaXQgdG8gYW5v dGhlciBzdW10aSAtIGFuIGVsbGlwdGljYWwgYWJzdHJhY3Rpb24gd2hpY2ggaGFzIHNvbWV0aGlu ZyB0byBkbyB3aXRoIHRoZSBmaXJzdCBzdW10aS4gRm9yIGV4YW1wbGUsIEkgY291bGQgc2F5ICcn bWkgZGppY2EgbG8gbnUgbWkgY2l0a2EgbG8gcGxpc2UnJywgb3IgSSBjb3VsZCBsZXQgaXQgYmUg dXAgdG8gY29udGV4dCB3aGF0IGFic3RyYWN0aW9uIGFib3V0IHRoZSBhcHBsZSBJIGRlc2lyZSBh bmQganVzdCBzYXkgJydtaSBkamljYSB0dSdhIGxvIHBsaXNlJycuIE9uZSBhbHdheXMgaGFzIHRv IGd1ZXNzIHdoYXQgYWJzdHJhY3Rpb24gdGhlIHNwZWFrZXIgbWVhbnMgYnkgJyd0dSdhIFNVTVRJ JycsIHNvIGl0IHNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiBjb250ZXh0IG1ha2VzIGl0IGVhc3kg dG8gZ3Vlc3MuIEFub3RoZXIgZXhhbXBsZToKCl9fJydnYXNudScnX18g4oCceDEgZG9lcy9icmlu Z3MgYWJvdXQgeDIgKHZvbGl0aW9uIG5vdCBpbXBsaWVkKeKAnQoKJyd6YSdhIGRvIGdhc251IHR1 J2EgbG8gc2thbWknJyAtIOKAnEkgc2VlIHRoYXQgeW91IG1ha2UgdGhlIGNvbXB1dGVyIGRvIHNv bWV0aGluZ+KAnS4gT2ZmaWNpYWxseSwgJyd0dSdhIFNVTVRJJycgaXMgZXF1aXZhbGVudCB0byAn J2xlIHN1J3UgU1VNVEkgY28nZScnLiBWYWd1ZSwgYnV0IHVzZWZ1bC4gVGhlcmUgYXJlIHNpdHVh dGlvbnMgd2hlcmUgeW91IGNhbm5vdCB1c2UgJyd0dSdhJycsIGV2ZW4gdGhvdWdoIGl0IHdvdWxk IHNlZW0gc3VpdGFibGUuIFRoZXNlIHNpdHVhdGlvbnMgYXJlIHdoZW4gSSBkb24ndCB3YW50IHRo ZSByZXN1bHRpbmcgc3VtdGkgdG8gYmUgYW4gYWJzdHJhY3Rpb24sIGJ1dCBhIGNvbmNyZXRlIHN1 bXRpLiBJbiB0aGlzIGNhc2UsIG9uZSBjYW4gdXNlICcnem8nZSBwZScnLgoKX18nJ3R1J2EnJ19f IGNvbnZlcnQgc3VtdGkgdG8gdmFndWUgYWJzdHJhY3Rpb24gaW52b2x2aW5nIHRoZSBzdW10aS4g RXF1aXZhbGVudCB0byAnJ2xlIHN1J3UgU1VNVEkgY28nZSBrZWkga3UnJwoKCgpGaW5hbGx5LCBv bmUga2luZCBvZiBzdW10aSBjYW4gYmUgdHVybmVkIGludG8gYW5vdGhlciBieSB0aGUgd29yZHMg b2YgdGhlIGNsYXNzIExBaEUuCgpfXycnbHUnYScnX18gLSBDb252ZXJ0IGluZGl2aWR1YWwocykv bWFzcy9zZXF1ZW5jZS9zZXQgdG8gaW5kaXZpZHVhbHMuCgpfXycnbHUnaScnX18gLSBDb252ZXJ0 IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8gYSBzZXQuCgpfXycnbHUnbycnX18g LSBDb252ZXJ0IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8gbWFzcy4KCl9fJyd2 dSdpJydfXyAtIENvbnZlcnQgaW5kaXZpZHVhbChzKS9tYXNzL3NlcXVlbmNlL3NldCB0byBzZXF1 ZW5jZTsgdGhlIG9yZGVyIGlzIG5vdCBzdGF0ZWQuCgpUaGUgdXNlIG9mIHRoZXNlIHdvcmRzIGlz IHN0cmFpZ2h0LWZvcndhcmRseTogUGxhY2luZyB0aGVtIGJlZm9yZSBhIHN1bXRpIG9mIGEgY2Vy dGFpbiB0eXBlIG1ha2VzIGEgbmV3IHN1bXRpIG9mIGEgbmV3IHR5cGUuIE5vdGljZSwgdGhvdWdo LCB0aGF0IGFzIGEgZm91cnRoIGtpbmQgb2Ygc3VtdGksIGEgc2VxdWVuY2UgaGFzIGJlZW4gaW50 cm9kdWNlZC4gVGhpcyBpcyBub3QgdXNlZCB2ZXJ5IG9mdGVuIChpdCBkb2Vzbid0IGhhdmUgaXRz IG93biBnYWRyaSwgZm9yIGluc3RhbmNlKSwgYnV0IGp1c3QgaW5jbHVkZWQgaGVyZSBmb3IgY29t cGxldGlvbi4KClRoZSBsYXN0IHR3byBtZW1iZXJzIG9mIExBaEUgZG8gbm90IGNvbnZlcnQgYmV0 d2VlbiB0eXBlcyBvZiBzdW10aSwgYnV0IGFsbG93cyB5b3UgdG8gc3BlYWsgb2YgYSBhIHN1bXRp IGJ5IG9ubHkgbWVudGlvbmluZyBzb21ldGhpbmcgd2hpY2ggcmVmZXJlbmNlcyB0byBpdDoKCklm IG9uZSBzdW10aSBBIHJlZmVycyB0byBhIHN1bXRpIEIsIGZvciBpbnN0YW5jZSBiZWNhdXNlIHN1 bXRpIEEgaXMgYSB0aXRsZSBvZiBhIGJvb2ssIG9yIGEgbmFtZSwgb3IgYSBzZW50ZW5jZSAod2hp Y2ggYWx3YXlzIHJlZmVyIHRvIHNvbWV0aGluZywgYXQgbGVhc3QgYSBicmlkaSksIOKAmCdsYSdl IFNVTVRJIEEnJyByZWZlcnMgdG8gc3VtdGkgQi4gRm9yIGluc3RhbmNlLCDigJgnbWkgbmVsY2kg bGEnZSBkaSd1JycgZm9yIOKAnEkgbGlrZSB3aGF0IHlvdSBqdXN0IHNhaWTigJ0gKG5vdCAnJ21p IG5lbGNpIGRpJ3UnJyB3aGljaCBqdXN0IG1lYW5zICJJIGxpa2UgeW91ciBwcmV2aW91cyBzZW50 ZW5jZSIpIG9yIOKAmCdsYSdlIGxlIGNtYWx1IG5vbHRydScnIGZvciB0aGUgYm9vayDigJxUaGUg TGl0dGxlIFByaW5jZeKAnSwgYW5kIG5vdCBzb21lIGxpdHRsZSBwcmluY2UgaGltc2VsZi4gVGhl IGNtYXZvIOKAmCdsdSdlJycgZG9lcyB0aGUgZXhhY3QgcmV2ZXJzZSDigJMg4oCYJ2x1J2UgU1VN VEknJyByZWZlcnMgdG8gYW4gb2JqZWN0IHdoaWNoIHJlZmVycyB0byB0aGUgc3VtdGkuIAoKX18n J2xhJ2UnJ19fIC0g4oCcdGhlIHRoaW5nIHJlZmVycmVkIHRvIGJ54oCdIC0gZXh0cmFjdHMgYSBz dW10aSBBIGZyb20gYSBzdW10aSBCIHdoaWNoIHJlZmVycyB0byBBLiAKCl9fJydsdSdlJydfXyAt IOKAnHRoZSB0aGluZyByZWZlcnJpbmcgdG/igJ0gLSBleHRyYWN0cyBhIHN1bXRpIEIgZnJvbSBh IHN1bXRpIEEsIHdoZW4gQiByZWZlcnMgdG8gQS4KCgoKCgohISFFbmQgb2YgcGFydCBvbmUKCkR1 ZSB0byB0aGUgaW1wcmFjdGljYWxseSBsYXJnZSBzaXplIG9mIHRoZXNlIGxlc3NvbnMsIHRoZSBz ZWNvbmQgYW5kIHRoaXJkIGluc3RhbGxtZW50IGNhbiBiZSBmb3VuZCBvbiBwYWdlcyBkZWRpY2F0 ZWQgdG8gKCh3YXZlbGVzc29uc2NvbnRpbnVlZHAyfHRoZSBmb3JtZXIpKSBhbmQgKCh3YXZlbGVz c29uc2NvbnRpbnVlZHAzfHRoZSBsYXR0ZXIpKS4gTm8gd29ycmllcywgdGhvdWdoLCBjbGlja2lu ZyBvbiAidGhlIGZvcm1lciIgb3IgInRoZSBsYXR0ZXIiIHdpbGwgdGFrZSB5b3UgdGhlcmUgcGFp bmxlc3NseS4KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpXaWtpbmV1cm90aWMgbWFpbGluZyBsaXN0Cldpa2luZXVyb3RpY0Bsb2piYW4ub3JnCmh0dHA6 Ly9tYWlsLmxvamJhbi5vcmcvbWFpbG1hbi9saXN0aW5mby93aWtpbmV1cm90aWMK