Received: from localhost ([::1]:47271 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1UAkeL-0001MN-S9; Wed, 27 Feb 2013 09:18:38 -0800 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:47383 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1UAke9-0001MG-81 for wikichanges@lojban.org; Wed, 27 Feb 2013 09:18:31 -0800 Received: by digitalkingdom.org (sSMTP sendmail emulation); Wed, 27 Feb 2013 09:18:24 -0800 From: "Apache" Date: Wed, 27 Feb 2013 09:18:24 -0800 To: wikichanges@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 wavelessonscontinuedp3 was changed by gleki at 17:18 UTC You can view the page by following this link: http://www.lojban.org/tiki/wavelessonscontinuedp3 [...] 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: [Wikichanges] Wiki page wavelessonscontinuedp3 changed by gleki X-BeenThere: wikichanges@lojban.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: wikichanges-bounces@lojban.org Content-Length: 61383 VGhlIHBhZ2Ugd2F2ZWxlc3NvbnNjb250aW51ZWRwMyB3YXMgY2hhbmdlZCBieSBnbGVraSBhdCAx NzoxOCBVVEMKCllvdSBjYW4gdmlldyB0aGUgcGFnZSBieSBmb2xsb3dpbmcgdGhpcyBsaW5rOgog Cmh0dHA6Ly93d3cubG9qYmFuLm9yZy90aWtpL3dhdmVsZXNzb25zY29udGludWVkcDMKCllvdSBj YW4gdmlldyBhIGRpZmYgYmFjayB0byB0aGUgcHJldmlvdXMgdmVyc2lvbiBieSBmb2xsb3dpbmcg dGhpcyBsaW5rOiAKaHR0cDovL3d3dy5sb2piYW4ub3JnL3Rpa2kvdGlraS1wYWdlaGlzdG9yeS5w aHA/cGFnZT13YXZlbGVzc29uc2NvbnRpbnVlZHAzJmNvbXBhcmU9MSZvbGR2ZXI9MyZuZXd2ZXI9 NAoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqClRoZSBjaGFuZ2VzIGluIHRoaXMgdmVyc2lvbiBmb2xsb3cgYmVsb3csIGZvbGxvd2Vk IGFmdGVyIGJ5IHRoZSBjdXJyZW50IGZ1bGwgcGFnZSB0ZXh0LgoqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKCistKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCkBAIC1MaW5lczog MjAtMzIgY2hhbmdlZCB0byArTGluZXM6IDIwLTMyIEBACistKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rClNvIGhvdyBsb25nIGRvZXMgYSBw cmVuZXggbGFzdD8gSXQgbGFzdHMgdW50aWwgdGhlIGZvbGxvd2luZyBicmlkaSBpcyB0ZXJtaW5h dGVkLiBJZiB0aGF0IGlzIG5vdCBkZXNpcmVkLCB0aGVyZSBhcmUgdHdvIHdheXMgdG8gbWFrZSBp dCBhcHBseSB0byBzZXZlcmFsIGJyaWRpOiBPbmUgaXMgdG8gcHV0IHNvbWUga2luZCBvZiBjb25u ZWN0aXZlIGFmdGVyIHRoZSAnJy5pJycgc2VwYXJhdGluZyB0aGUgYnJpZGksIGFuZCBhbm90aGVy IG1ldGhvZCBpcyB0byBzaW1wbHkgaW5jbHVkZSBhbGwgb2YgdGhlIHRleHQgaW4gJyd0dSdlJycg Li4uICcndHUndScnLWJyYWNrZXRzLiBUaGVzZSBicmFja2V0cyB3b3JrIHByZXR0eSBtdWNoIGJ5 IGdsdWluZyBhbGwgdGhlIGJyaWRpIHRvZ2V0aGVyIGFuZCBtYWtlcyBhbGwgc29ydHMgb2YgY29u c3RydWN0IGFwcGx5IHRvIHNldmVyYWwgYnJpZGkuCk5vdyB0aGF0IHdlIGNvdmVyZWQgJyd6byd1 JycsIHRoZSBmaXJzdCAibG9naWNhbCIgd29yZHMgd2UgY2FuIHVzZSBpdCB3aXRoIGFyZSB0aGVz ZToKLSBfXycnZGEnJ19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIHByby1zdW10 aSAxPGJyIC8+X18nJ2RlJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVudGlhbCBwcm8t c3VtdGkgMjxiciAvPl9fJydkaScnX18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwg cHJvLXN1bXRpIDMKKyBfXycnZGEnJ19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFs IHN1bWthJ2kgMTxiciAvPl9fJydkZScnX18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRp YWwgc3Vta2EnaSAyPGJyIC8+X18nJ2RpJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVu dGlhbCBzdW1rYSdpIDMKVGhlc2Ugd29yZHMgYXJlIGFsbCB0aGUgc2FtZSwgbGlrZSB0aGUgbWF0 aGVtYXRpY2FsIHZhcmlhYmxlcyB4LCB5IGFuZCB6LiBPbmNlIHlvdSBoYXZlIGRlZmluZWQgdGhl bSwgaG93ZXZlciwgdGhleSBrZWVwIHJlZmVyaW5nIHRvIHRoZSBzYW1lIHRoaW5nLiBUaGVzZSB3 b3JkcyBhcmUgZGVmaW5lZCBpbiB0aGUgcHJlbmV4IG9mIGJyaWRpLCBtZWFuaW5nIHRoYXQgd2hl biB0aGUgcHJlbmV4IHN0b3AgYXBwbHlpbmcsIHRoZSBkZWZpbml0aW9uIG9mIHRoZXNlIHRocmVl IHdvcmRzIGFyZSBjYW5jZWxsZWQuCi0gVGhlIHdvcmRzICcnZGEnJywgJydkZScnIGFuZCAnJ2Rp JycgY2FuIHJlZmVyIHRvIGxpdGVyYWxseSBhbnkgc3VtdGksIHdoaWNoIG1ha2VzIHRoZW0ga2lu ZCBvZiB1c2VsZXNzIHVubGVzcyByZXN0cmljdGVkIGluIHNvbWUgd2F5LiBUaGUgZmlyc3QgYW5k IGZvcmVtb3N0IHdheSB0byByZXN0cmljdCB0aGVtIGlzIHRvIHF1YW50aWZ5IHRoZW06IFRoZXkg YXJlIG5vdCBjYWxsZWQgJnF1b3Q7bG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwgcHJv LXN1bXRpJnF1b3Q7IGZvciBub3RoaW5nLiBUaGV5IGFyZSBwcm8tc3VtdGksIHRoZXkgYXJlIG1v c3QgdXNlZnVsIHdoZW4gcXVhbnRpZmllZCwgYW5kIHRoZXkgYXJlIGV4aXN0ZW50aWFsLiBXaGF0 IGRvZXMgaXQgbWVhbiwgYmVpbmcgJnF1b3Q7ZXhpc3RlbnRpYWwmcXVvdDs/IEl0IG1lYW5zIHRo YXQgaWYgdGhleSBhcmUgdXNlZCwgdGhhdCBpbXBsaWVzIHRoYXQgdGhleSBhY3R1YWxseSByZWZl ciB0byBzb21ldGhpbmcgd2hpY2ggZXhpc3RzLiBBbiBleGFtcGxlOgorIFRoZSB3b3JkcyAnJ2Rh JycsICcnZGUnJyBhbmQgJydkaScnIGNhbiByZWZlciB0byBsaXRlcmFsbHkgYW55IHN1bXRpLCB3 aGljaCBtYWtlcyB0aGVtIGtpbmQgb2YgdXNlbGVzcyB1bmxlc3MgcmVzdHJpY3RlZCBpbiBzb21l IHdheS4gVGhlIGZpcnN0IGFuZCBmb3JlbW9zdCB3YXkgdG8gcmVzdHJpY3QgdGhlbSBpcyB0byBx dWFudGlmeSB0aGVtOiBUaGV5IGFyZSBub3QgY2FsbGVkICZxdW90O2xvZ2ljYWxseSBxdWFudGlm aWVkIGV4aXN0ZW50aWFsIHN1bWthJ2kmcXVvdDsgZm9yIG5vdGhpbmcuIFRoZXkgYXJlIHN1bWth J2ksIHRoZXkgYXJlIG1vc3QgdXNlZnVsIHdoZW4gcXVhbnRpZmllZCwgYW5kIHRoZXkgYXJlIGV4 aXN0ZW50aWFsLiBXaGF0IGRvZXMgaXQgbWVhbiwgYmVpbmcgJnF1b3Q7ZXhpc3RlbnRpYWwmcXVv dDs/IEl0IG1lYW5zIHRoYXQgaWYgdGhleSBhcmUgdXNlZCwgdGhhdCBpbXBsaWVzIHRoYXQgdGhl eSBhY3R1YWxseSByZWZlciB0byBzb21ldGhpbmcgd2hpY2ggZXhpc3RzLiBBbiBleGFtcGxlOgpU aGUgc3RhdGVtZW50ICcncGEgZGEgem8ndSBkYSBnZXJrdScnIGhhcyAnJ3BhIGRhJycgaW4gdGhl IHByZW5leCwgd2hpY2ggbWVhbnMgIkNvbmNlcm5pbmcgb25lIGV4aXN0aW5nIHRoaW5nOiIsIGFu ZCB0aGVuICcnZGEnJywgbm93IGRlZmluZWQsIGlzIHVzZWQgaW4gdGhlIGJyaWRpICcnZGEgZ2Vy a3UnJy4gVHJhbnNsYXRlZCB0byBFbmdsaXNoLCB0aGlzIG1lYW5zOiAiVGhlcmUgZXhpc3RzIG9u ZSB0aGluZyB3aGljaCBpcyBhIGRvZyIuIFRoaXMgaXMgb2J2aW91c2x5IGZhbHNlLCB0aGVyZSBh cmUgYXJvdW5kIDQwMCwwMDAsMDAwIG9mIHRoZW0gaW4gdGhlIHdvcmxkLiBJZiAnJ2RhJycgYW5k IGl0cyBzaXN0ZXJzIGFyZSBub3QgcXVhbnRpZmllZCwgdGhlIG51bWJlciAnJ3N1J28nJyBpcyB0 aGUgZGVmYXVsdC4gVGh1cyAnJ2RhIHpvJ3UgZGEgZ2Vya3UnJyBtZWFucyAiVGhlcmUgZXhpc3Qg YXQgbGVhc3Qgb25lIHRoaW5nIHdoaWNoIGlzIGEgZG9nIiwgd2hpY2ggaXMgdHJ1ZS4gTm90aWNl IGhlcmUsIHRoYXQgYW55IHF1YW50aWZpY2F0aW9uIG11c3QgYmUgbW9yZSBvciBsZXNzIGV4YWN0 IGluIG9yZGVyIHRvIGJlIHRydWU6IE9mIGNvdXJzZSBvbmUgZG9nIGV4aXN0cywgYnV0IGluIExv amJhbiwgJydwYSBkYSB6byd1IGRhIGdlcmt1JycgbWVhbnMgbm90IG9ubHkgdGhhdCBkb2VzIG9u ZSBkb2cgZXhpc3RzLCBidXQgYWxzbyB0aGF0IG5vIG1vcmUgdGhhbiBvbmUgZG9lcy4gCi0gVGhl cmUgYXJlIGEgZmV3IHNwZWNpZmljIHJ1bGVzIHRvIHRoZXNlIGV4aXN0ZW50aWFsIHByby1zdW10 aToKKyBUaGVyZSBhcmUgYSBmZXcgc3BlY2lmaWMgcnVsZXMgdG8gdGhlc2UgZXhpc3RlbnRpYWwg c3Vta2EnaToKLSBJZiB0aGUgcXVhbnRpZmllciAnJ3JvJycgaXMgdXNlZCBiZWZvcmUgJydkYScn LCBpdCBpbnN0ZWFkIHJlZmVycyB0byAiYWxsIHdoaWNoIGV4aXN0cyIuCi0gLSBJbXBvcnRhbnRs eSwgdGhlIHVzYWdlIG9mIGFuIGV4aXN0ZW50aWFsIHByby1zdW10aSBvbmx5IGFzc2VydHMgdGhh dCBzdWNoIGEgdGhpbmcgZXhpc3RzIF9faW4gdGhlIGRvbWFpbiBvZiB0cnV0aCB3aGVyZSBpdCdz IHVzZWRfXy4gVGh1cywgaW4gdGhlIHNlbnRlbmNlICcnc28nZSB2ZXJiYSBjdSBrcmljaSBsbyBk dSd1IHN1J28gZGEgY3JpZGEnJywgZG9lcyBub3Qgc3RhdGUgJydkYSBjcmlkYScnLCBzaW5jZSBp dHMgJnF1b3Q7ZG9tYWluIG9mIHRydXRoJnF1b3Q7IGlzIG9ubHkgaW5zaWRlIHRoZSBkdSd1LWFi c3RyYWN0aW9uLiBHZW5lcmFsbHkgc3BlYWtpbmcsIGFic3RyYWN0aW9ucyBjb250YWluIHRoZWly IG93biBkb21haW4gb2YgdHJ1dGgsIHNvIHVzaW5nICcnZGEnJyBhbmQgZnJpZW5kcyBpbnNpZGUg YW4gYWJzdHJhY3Rpb24gaXMgdXN1YWxseSBzYWZlLgorIC0gSW1wb3J0YW50bHksIHRoZSB1c2Fn ZSBvZiBhbiBleGlzdGVudGlhbCBzdW1rYSdpIG9ubHkgYXNzZXJ0cyB0aGF0IHN1Y2ggYSB0aGlu ZyBleGlzdHMgX19pbiB0aGUgZG9tYWluIG9mIHRydXRoIHdoZXJlIGl0J3MgdXNlZF9fLiBUaHVz LCBpbiB0aGUgc2VudGVuY2UgJydzbydlIHZlcmJhIGN1IGtyaWNpIGxvIGR1J3Ugc3UnbyBkYSBj cmlkYScnLCBkb2VzIG5vdCBzdGF0ZSAnJ2RhIGNyaWRhJycsIHNpbmNlIGl0cyAmcXVvdDtkb21h aW4gb2YgdHJ1dGgmcXVvdDsgaXMgb25seSBpbnNpZGUgdGhlIGR1J3UtYWJzdHJhY3Rpb24uIEdl bmVyYWxseSBzcGVha2luZywgYWJzdHJhY3Rpb25zIGNvbnRhaW4gdGhlaXIgb3duIGRvbWFpbiBv ZiB0cnV0aCwgc28gdXNpbmcgJydkYScnIGFuZCBmcmllbmRzIGluc2lkZSBhbiBhYnN0cmFjdGlv biBpcyB1c3VhbGx5IHNhZmUuCi0gSWYgdGhlIHNhbWUgdmFyaWFibGUgaXMgcXVhbnRpZmllZCBz ZXZlcmFsIHRpbWVzLCB0aGUgZmlyc3QgcXVhbnRpZmljYXRpb24gaXMgdGhlIG9uZSB3aGljaCBz dGlja3M6IEFueSBsYXRlciBxdWFudGlmaWVkIGluc3RhbmNlIG9mIHRoYXQgdmFyaWFibGUgY2Fu IHJlZmVyIG9ubHkgdG8gdGhpbmdzIHdoaWNoIGFyZSBhbHNvIGJlaW5nIHJlZmVycmVkIHRvIGJ5 IHRoZSBmaXJzdCBpbnN0YW5jZSBvZiB0aGF0IHZhcmlhYmxlLCBhbmQgYW55IGxhdGVyIG5vbi1x dWFudGlmaWVkIGluc3RhbmNlIG9mIHRoYXQgdmFyaWFibGUgd2lsbCBnYWluIHRoZSBmaXJzdCBx dWFudGlmaWVyLiBUbyB1c2UgYW4gZXhhbXBsZTogJydjaSBkYSB6byd1IHJlIGRhIGJhcmRhIC5p amUgZGEgcGVseHUnJyBtZWFucyAiVGhlcmUgZXhpc3RzIHRocmVlIHRoaW5ncyBzdWNoIHRoYXQg dHdvIG9mIHRoZW0gYXJlIGJpZyBhbmQgYWxsIHRocmVlIGFyZSB5ZWxsb3ciLiAnJ3JlIGRhJycs IGJlaW5nIGFmdGVyICcnY2kgZGEnJywgY2FuIG9ubHkgcmVmZXIgdG8gdHdvIG9mIHRoZSBhbHJl YWR5IHN0YXRlZCB0aHJlZSB0aGluZ3MuIFdoZW4gJydkYScnIGFwcGVhcnMgd2l0aG91dCBhIHF1 YW50aWZpZXIsICcnY2knJyBpcyBhc3N1bWVkLgotIElmIHRoZXJlIGFyZSBzZXZlcmFsIHRlcm1z IGluIHRoZSBwcmVuZXgsIHRoZSB0ZXJtcyBhcmUgYWx3YXlzIHJlYWQgbGVmdCB0byByaWdodC4g U29tZXRpbWVzLCB0aGlzIG1hdHRlcnM6ICcncm8gZGEgZGUgem8ndSBkYSBwcmFtaSBkZScnIG1l YW5zICJDb25jZXJuaW5nIGFsbCB0aGUgdGhpbmdzIFggdGhhdCBleGlzdHMsIGNvbmNlcm5pbmcg YXQgbGVhc3Qgb25lIHRoaW5nIFk6IFggbG92ZXMgWSIuIFRoaXMgaXMgdGhlIHNhbWUgYXMgIkFs bCB0aGluZ3MgbG92ZSBhdCBsZWFzdCBvbmUgdGhpbmcuIiwgd2hlcmUgdGhlICJ0aGluZyhzKSIg Y2FuIGJlIGFueXRoaW5nLCBpbmNsdWRpbmcgdGhlIHRoaW5nIGl0c2VsZi4gTm90ZSBoZXJlIHRo YXQgJydkZScnIGNhbiByZWZlciB0byBkaWZmZXJlbnQgdGhpbmdzIGZvciBlYWNoICcnZGEnJyAt IHRoZSB0aGluZyB3aGljaCBpcyByZWZlcnJlZCB0byBieSAnJ2RlJycgaXMgZGVwZW5kZW50IG9u IHRoZSAnJ2RhJycsIHNpbmNlIGl0IGNhbWUgYmVmb3JlIGl0IGluIHRoZSBwcmVuZXgsIHRoZXJl Zm9yZSBlYWNoIHRoaW5nIG1pZ2h0IGxvdmUgc29tZXRoaW5nIGRpZmZlcmVudC4gSWYgd2Ugc3dp dGNoZWQgdGhlIHBsYWNlcyBvZiAnJ2RhJycgYW5kICcnZGUnJyBpbiB0aGUgcHJlbmV4LCBhIGRp ZmZlcmVudCByZXN1bHQgd291bGQgYXJpc2U6ICcnZGUgcm8gZGEgem8ndSBkYSBwcmFtaSBkZScn ID0gIkNvbmNlcm5pbmcgYXQgbGVhc3Qgb25lIHRoaW5nIFksIGNvbmNlcm5pbmcgYWxsIFggd2hp Y2ggZXhpc3RzOiBYIGxvdmVzIFkiLCBtZWFuaW5nICJUaGVyZSBleGlzdHMgYXQgbGVhc3Qgb25l IHRoaW5nIHdoaWNoIGV2ZXJ5dGhpbmcgbG92ZXMiLgoKKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKQEAgLUxpbmVzOiAzNy00NiBjaGFu Z2VkIHRvICtMaW5lczogMzctNDYgQEAKKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKSW50ZXJlc3RpbmdseSwgd2hlbiB1c2luZyBhIHJl bGF0aXZlIGNsYXVzZSwgdGhlIHZhcmlhYmxlIGlzIGJlaW5nIHJlc3RyaWN0ZWQgcmVnYXJkbGVz cyBvZiB3aGV0aGVyIHlvdSB1c2UgJydwb2knJyBvciAnJ25vaScnLiBUaGlzIGlzIGJlY2F1c2Ug JydyZSBkYSBub2kgZ2Vya3UnJyBzdGlsbCBvbmx5IGNhbiByZWZlciB0byB0d28gdGhpbmdzIHdo aWNoIGFyZSBodW1hbnMuIFRoZXJlZm9yZSwgJydub2knJyBtYWtlcyBsaXR0bGUgc2Vuc2Ugd2l0 aCAnJ2RhJycvJydkZScnLycnZGknJy4gQW55IGNsYXVzZSBpcyBhbHdheXMgcmVzdHJpY3RpdmUs IHVubGVzcyBpdCdzIHJlYWxseSBzdHVwaWQgYW5kIG9idmlvdXMgbGlrZSAnJ2RlIG5vaSBnZXJr dSBjdSBnZXJrdScnLgpJbiBmYWN0LCB5b3UgZG9uJ3QgcmVhbGx5IG5lZWQgdGhlIHByZW5leCB0 byBkZWZpbmUgdGhlIHZhcmlhYmxlcy4gWW91IGNhbiB1c2UgdGhlbSBkaXJlY3RseSBhcyBzdW10 aSBpbiB0aGUgYnJpZGksIGFuZCBxdWFudGlmeSB0aGVtIHRoZXJlLiBZb3Ugb25seSBuZWVkIHRv IHF1YW50aWZ5IHRoZW0gdGhlIGZpcnN0IHRpbWUgdGhleSBhcHBlYXIsIHRob3VnaC4gVGh1cywg dGhlIHNlbnRlbmNlIGFib3V0IGh1bWFucyBoYXZpbmcgYXJtcyBjb3VsZCBiZSB0dXJuZWQgaW50 byAnJ2JpcmthIHJvIGRpIHBvaSByZW1uYScnLiBUaGUgb3JkZXIgb2YgdGhlIHZhcmlhYmxlcyBz dGlsbCBtYXR0ZXJzIHRob3VnaCwgYW5kIHNvIHRoZSBwcmVuZXggY2FuIGJlIHVzZWQgdG8gYXZv aWQgaGF2aW5nIHRvIG1lc3MgdXAgeW91ciBicmlkaSB0byBwbGFjZSB0aGUgdmFyaWFibGVzIGlu IHRoZSBjb3JyZWN0IG9yZGVyLiBXaGVuIGhhdmluZyBtb3JlIHZhcmlhYmxlcywgYSBwcmVuZXgg aXMgdXN1YWxseSBhIGdvb2QgaWRlYS4KLSBUaGUgc2Vjb25kIGtpbmQgb2YgbG9naWNhbCB3b3Jk cyBhcmUgYmFzaWNhbGx5IHRoZSBzYW1lIGFzIHRoZSB0aHJlZSB3ZSBoYXZlIGFscmVhZHkgYmVl biB0aG91Z2gsIGJ1dCB0aGVzZSBhcmUgcHJvLWJyaWRpIGluc3RlYWQgb2YgcHJvLXN1bXRpOjxi ciAvPl9fJydidSdhJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVudGlhbCBwcm8tYnJp ZGkgMTxiciAvPl9fJydidSdlJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVudGlhbCBw cm8tYnJpZGkgMjxiciAvPl9fJydidSdpJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVu dGlhbCBwcm8tYnJpZGkgMworIFRoZSBzZWNvbmQga2luZCBvZiBsb2dpY2FsIHdvcmRzIGFyZSBi YXNpY2FsbHkgdGhlIHNhbWUgYXMgdGhlIHRocmVlIHdlIGhhdmUgYWxyZWFkeSBiZWVuIHRob3Vn aCwgYnV0IHRoZXNlIGFyZSBicmlrYSdpIGluc3RlYWQgb2Ygc3Vta2EnaTo8YnIgLz5fXycnYnUn YScnX18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwgYnJpa2EnaSAxPGJyIC8+X18n J2J1J2UnJ19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIGJyaWthJ2kgMjxiciAv Pl9fJydidSdpJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVudGlhbCBicmlrYSdpIDMK VGhlc2Ugd29yayBwcmV0dHkgbXVjaCB0aGUgc2FtZSB3YXkgYXMgdGhlIG90aGVyIHRocmVlLCBi dXQgdGhlcmUgYXJlIGEgZmV3IHBvaW50cyB3aGljaCBhcmUgaW1wb3J0YW50IHRvIG1lbnRpb246 Ci0gU2luY2Ugb25seSB0ZXJtcyBjYW4gZ28gaW4gdGhlIHByZW5leCwgdGhlc2UgcHJvLWJyaWRp IG5lZWQgdG8gaGF2ZSBhIHF1YW50aWZpZXIgaW4gb3JkZXIgdG8gbWFrZSB0aGVtIGludG8gc3Vt dGkuIFdoZW4gcXVhbnRpZmllZCBpbiB0aGUgcHJlbmV4LCBob3dldmVyLCB0aGUgcXVhbnRpZmll ciB3b3JrcyB2ZXJ5IGRpZmZlcmVudCBmcm9tIHF1YW50aWZpZXJzIHdpdGggbm9ybWFsIHNlbGJy aTogSW5zdGVhZCBvZiBxdWFudGlmeWluZyB0aGUgYW1vdW50IG9mIHRoaW5ncyB3aGljaCBmaXRz IHRoZSB4MSBvZiB0aGUgc2VsYnJpIHZhcmlhYmxlLCBpdCBkaXJlY3RseSBxdWFudGlmaWVzIHRo ZSBhbW91bnQgb2Ygc2VsYnJpIHdoaWNoIGFwcGxpZXMuIEFnYWluLCB0aGUgZGVmYXVsdCBxdWFu dGlmaWVyIGlzICcnc28ndScnLiBUaHVzLCBpbnN0ZWFkIG9mICcncmUgYnUnYSB6byd1JycgbWVh bmluZyAmcXVvdDtDb25jZXJuaW5nIHR3byB0aGluZ3Mgd2hpY2ggaXMgaW4gcmVsYXRpb25zaGlw IFg6JnF1b3Q7LCBpdCBtZWFucyAmcXVvdDtDb25jZXJuaW5nIHR3byByZWxhdGlvbnNoaXBzIFg6 JnF1b3Q7CisgU2luY2Ugb25seSB0ZXJtcyBjYW4gZ28gaW4gdGhlIHByZW5leCwgdGhlc2UgYnJp a2EnaSBuZWVkIHRvIGhhdmUgYSBxdWFudGlmaWVyIGluIG9yZGVyIHRvIG1ha2UgdGhlbSBpbnRv IHN1bXRpLiBXaGVuIHF1YW50aWZpZWQgaW4gdGhlIHByZW5leCwgaG93ZXZlciwgdGhlIHF1YW50 aWZpZXIgd29ya3MgdmVyeSBkaWZmZXJlbnQgZnJvbSBxdWFudGlmaWVycyB3aXRoIG5vcm1hbCBz ZWxicmk6IEluc3RlYWQgb2YgcXVhbnRpZnlpbmcgdGhlIGFtb3VudCBvZiB0aGluZ3Mgd2hpY2gg Zml0cyB0aGUgeDEgb2YgdGhlIHNlbGJyaSB2YXJpYWJsZSwgaXQgZGlyZWN0bHkgcXVhbnRpZmll cyB0aGUgYW1vdW50IG9mIHNlbGJyaSB3aGljaCBhcHBsaWVzLiBBZ2FpbiwgdGhlIGRlZmF1bHQg cXVhbnRpZmllciBpcyAnJ3NvJ3UnJy4gVGh1cywgaW5zdGVhZCBvZiAnJ3JlIGJ1J2Egem8ndScn IG1lYW5pbmcgJnF1b3Q7Q29uY2VybmluZyB0d28gdGhpbmdzIHdoaWNoIGlzIGluIHJlbGF0aW9u c2hpcCBYOiZxdW90OywgaXQgbWVhbnMgJnF1b3Q7Q29uY2VybmluZyB0d28gcmVsYXRpb25zaGlw cyBYOiZxdW90OwpJdCdzIHByb2JhYmx5IGdvb2QgdG8gc2VlIGFuIGV4YW1wbGUgb2YgJydidSdh JycgcHV0IHRvIHByYWN0aWNlOgonJ3JvIGRhIGJ1J2EgbGEgLmJhYi4nJyA9ICJDb25zaWRlcmlu ZyBhbGwgWCB3aGljaCBleGlzdHM6IFggaXMgaW4gYXQgbGVhc3Qgb25lIHJlbGF0aW9uc2hpcCB3 aXRoIEJvYiIgPSAiRXZlcnl0aGluZyBpcyByZWxhdGVkIHRvIEJvYiBpbiBhdCBsZWFzdCBvbmUg d2F5LiIuIE5vdGljZSBhZ2FpbiB0aGUgb3JkZXIgbWF0dGVyczogJydidSdhIHJvIGRhIHpvJ3Ug ZGEgYnUnYSBCb2InJyBtZWFuczogIlRoZXJlIGlzIGF0IGxlYXN0IG9uZSByZWxhdGlvbnNoaXAg c3VjaCB0aGF0IGV2ZXJ5dGhpbmcgdGhhdCBleGlzdHMgaXMgaW4gdGhhdCByZWxhdGlvbnNoaXAg d2l0aCBCb2IiLiBUaGUgZmlyc3Qgc3RhdGVtZW50IGlzIHRydWUgLSBmb3IgYW55IG9uZSB0aGlu Zywgb25lIGNhbiBpbmRlZWQgbWFrZSB1cCBzb21lIHNlbGJyaSB3aGljaCByZWxhdGVzIGFueSBn dXkgY2FsbGVkIEJvYiBhbmQgaXQuIEJ1dCBJJ20gbm90IHN1cmUgdGhlIGxhdHRlciBpcyB0cnVl IC0gdGhhdCBvbmUgY2FuIG1ha2UgYSBzZWxicmkgd2hpY2ggY2FuIHJlbGF0ZSBhbnl0aGluZywg bm8gbWF0dGVyIHdoYXQgaXQgaXMsIGFuZCBCb2IuCgoKCgoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpUaGUgbmV3IHBhZ2UgY29udGVu dCBmb2xsb3dzIGJlbG93LgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKgoKIUxvamJhbiBXYXZlIExlc3NvbnMgQ29udGludWVkIChwYXJ0 IHRocmVlKToKCiEhIU1hZGUgYnkgbGEga2xha3Ugd2l0aCBoZWxwIGZyb20gdmFyaW91cyBsb2pi YW5pc3RzLiBCYXNlZCBvbiB0aGUgd29yayBvZiBsYSAua3JpYmFjci4gU3ByaW5nIDIwMTMuCgoK CldlbGNvbWUgdG8gdGhlIHRoaXJkIHBhcnQgb2YgVGhlIFdhdmVsZXNzb25zY29udGludWVkLiBJ ZiB5b3Ugd2FudCB0byBnbyBiYWNrIHRvICgod2F2ZWxlc3NvbnNjb250aW51ZWR8dGhlIGZpcnN0 IHBhcnQpKSBvciAoKHdhdmVsZXNzb25zY29udGludWVkcDJ8dGhlIHNlY29uZCBwYXJ0KSksIGp1 c3QgY2xpY2sgb24gdGhlIHdvcmRzIHJlcHJlc2VudGluZyB0aGVtIGluIHRoaXMgc2VudGVuY2Uu IFRoaXMgdGhpcmQgcGFydCBpcyBhYm91dCBhZHZhbmNlZCBMb2piYW4uIFRoZSBMb2piYW4gaW4g dGhpcyBwYXJ0IGlzIHJhcmVseSByZWxldmFudCB3aGVuIHNwZWFraW5nIExvamJhbiBpbiBub3Jt YWwgY29udGV4dHMsIGJ1dCBpdCBwb3BzIHVwIHF1aXRlIG9mdGVuIHdoZW4gc3BlYWtpbmcgYWJv dXQgbGFuZ3VhZ2UgYW5kIGxvZ2ljLiAKClRoZXNlIGNvcm5lcnMgb2YgTG9qYmFuIGlzIGZvciB0 aGUgbW9zdCBwYXJ0IGV4cGVyaW1lbnRhbCwgbmV3IG9yIGNvbXBsZXgsIHNvIHlvdSBzaG91bGQg ZXhwZWN0IGEgbG90IG9mIGNoYW5naW5nIGRlZmluaXRpb25zLCBvdXRkYXRlZCBkZWZpbml0aW9u cywgZGlzYWdyZWVtZW50cyBhbmQgbWlzdW5kZXJzdGFuZGluZ3Mgb24gdGhlIHBhcnQgb2YgdGhl IGF1dGhvciBvZiB0aGlzIHRleHQuIFNvcnJ5IGFib3V0IHRoYXQuCgoKCiEhTG9qYmFuIExlc3Nv bnMgLSBMZXNzb24gdHdlbnR5LXNldmVuIChsb2piYW4gbG9naWM6IGRhLCBidSdhLCB6byd1IGFu ZCB0ZXJtcykKClRoZSBzdGF0ZWQgdG9waWMgb2YgdGhpcyBsZXNzb24gbmVlZHMgc29tZSBqdXN0 aWZpY2F0aW9uOiBUaGlzIGxlc3NvbiBpcyBub3QgcmVhbGx5IGFib3V0IGhvdyBkbyB0byBsb2dp YyBpbiBMb2piYW4sIHNpbmNlIGZpcnN0bHksIGxvZ2ljIGlzIHByZXN1bWFibHkgdGhlIHNhbWUg aW4gYWxsIGxhbmd1YWdlcywgYW5kIHNlY29uZGx5LCBhY3R1YWxseSB0ZWFjaGluZyBsb2dpYyB3 b3VsZCBiZSB0b3RhbGx5IGltcHJhY3RpY2FsIGluIG9uZSBzaW5nbGUgbGVzc29uLiBSYXRoZXIs IHRoaXMgbGVzc29uIGlzIGV4cGxhaW5zIHNvbWUgY29uc3RydWN0cyB3aGljaCByZXNlbWJsZXMg dGhvc2Ugd2hpY2ggbG9naWNpYW5zIHVzZS4gSXQgdHVybnMgb3V0IHRoZXkgaGF2ZSBhIHJlbWFy a2FibGUgd2lkZSByYW5nZSBvZiB1c2VzIGluIExvamJhbi4KCkdldHRpbmcgaW52b2x2ZWQgaW4g dGhlIG1vcmUgb2JzY3VyZSBkZXRhaWxzIG9mIHRoZXNlIGxvZ2ljYWwgY29uc3RydWN0cyBjYW4g YmUgbWluZC13YXJwaW5nbHkgZGlmZmljdWx0LCBhbmQgdGhlcmUgd2lsbCBhbHdheXMgYmUgc29t ZSBkaXNhZ3JlZW1lbnQgaW4gdGhlIGNvcm5lcnMgb2YgdGhpcyBwYXJ0IG9mIHRoZSBsYW5ndWFn ZS4KCkxlYXJuaW5nIHRoZXNlIGxvZ2ljYWwgY29uc3RydWN0cyByZXF1aXJlcyBvbmUgdG8gbGVh cm4gYSBiaXQgYWJvdXQgY29uc3RydWN0cyB3aGljaCBhcmUgbm90IGxvZ2ljYWwgaW4gbmF0dXJl LiBMZXQncyBiZWdpbiB3aXRoICcnem8ndScnCgpfXycnem8ndScnX18gU2VwYXJhdGVzIHByZW5l eCBmcm9tIGJyaWRpCgpCZWZvcmUgYW55ICcnem8ndScnIGlzIHRoZSBwcmVuZXgsIGFmdGVyICcn em8ndScnIGlzIHRoZSBicmlkaS4gSW5mb3JtYWxseSwgYSBwcmVuZXggaXMgYSBwbGFjZSBpbiBm cm9udCBvZiB0aGUgYnJpZGksIHdoZXJlIHlvdSBwdXQgYSBidW5jaCBvZiB0ZXJtcy4gQSB0ZXJt IGlzIGFuIEVuZ2xpc2ggd29yZCBnaXZlbiB0byBzb21lIGtpbmRzIG9mIExvamJhbiBjb25zdHJ1 Y3RzOiBTdW10aSwgc3VtdGNpdGEgd2l0aCBvciB3aXRob3V0IHN1bXRpIGF0dGFjaGVkLCAnJ25h IGt1JycgYW5kIGFuIGFib21pbmF0aW9uIGNhbGxlZCBfX3Rlcm1zZXRzX18sIHdoaWNoIEkgcmVm dXNlIHRvIGluY2x1ZGUgaW4gdGhlc2UgbGVzc29ucy4gVGhlIHByZW5leCBpcyBub3QgcGFydCBv ZiB0aGUgYnJpZGksIGJ1dCBhbnkgdGVybXMgcHV0IGluc2lkZSBpdCBnaXZlcyB1cyBpbmZvcm1h dGlvbiBhYm91dCB0aGUgYnJpZGkuIE9uZSBjYW4sIGZvciBleGFtcGxlLCB1c2UgaXQgdG8gc3Rh dGUgYSB0b3BpYyBhcyBzaG93biB0aHVzOgoKJydsbyBwYW1wZSdvIGplIG5haSBzcGVuaSB6byd1 IG1pIG5hIHphbnJ1JycgLSAiQ29uY2VybmluZyBsb3ZlcnMgd2hvIGFyZSBub3Qgc3BvdXNlczog SSBkbyBub3QgYXBwcm92ZSIuIFRoZSBiZW5lZml0cyBvZiBraW5kIG9mIHNlbnRlbmNlIHN0cnVj dHVyaW5nIGlzIHF1ZXN0aW9uYWJsZSwgYnV0IGl0J3MgYWx3YXlzIGdvb2QgdG8gaGF2ZSBzb21l IHZhcmlhdGlvbiB0byBwbGF5IHdpdGguIEZ1cnRoZXJtb3JlLCBjb25zdHJ1Y3Rpbmcgc2VudGVu Y2VzIHRoaXMgd2F5IHJlc2VtYmxlcyBNYW5kYXJpbiAoYW5kIG90aGVyIGxhbmd1YWdlcykgY2xv c2VseSwgbWVhbmluZyBpdCBtaWdodCBzZWVtIG1vcmUgaW50dWl0aXZlIGZvciBzcGVha2VycyBv ZiB0aGF0IGxhbmd1YWdlLgoKX18nJ3BhbXBlJ28nJ19fIHgxIGlzIGEgbG92ZXIgb2YgeDIKCl9f Jyd6YW5ydScnX18geDEgYXBwcm92ZXMgb2YgeDIgKHBsYW4sIGV2ZW50IG9yIGFjdGlvbikKCk9m IGNvdXJzZSwgdGhlIHJlbGF0aW9uIGJldHdlZW4gdGhlIHRlcm1zIGluIHRoZSBwcmVuZXggYW5k IHRoZSBicmlkaSBpcyB2YWd1ZS4gT25lIGNhbiBpbWFnaW5lIGFueSBzdW10aSBpbiB0aGUgcHJl bmV4IGJlYXJpbmcgdGhlIHNhbWUgcmVsZXZhbmNlIHRvIHRoZSBicmlkaSBhcyBpZiB0aGV5IHdl cmUgcHV0IGluIHRoZSBicmlkaSBhZnRlciBhICcnZG8nZScnIHN1bXRjaXRhLCBhbmQgYW55IHN1 bXRjaXRhIGluIHRoZSBwcmVuZXggZG9pbmcgcHJldHR5IG11Y2ggdGhlIHNhbWUgYXMgaWYgdGhl eSB3ZXJlIGluIHRoZSBicmlkaS4gSXQgaXMgcXVpdGUgcG9zc2libGUgdG8gcHV0IHRlcm1zIGlu IHByZW5leGVzIHdpdGhvdXQgYW55IGNsZWFyIGhpbnRzIGFzIHRvIGhvdyB0aGUgdGVybSBtYXkg cmVsYXRlIHRvIHRoZSBicmlkaToKCicnbGUgdmkgZ2Vya3Ugem8ndSBtaSB0bydlIG5lbGNpIGxv IGNpZGpycGl0c2EnJyAtICJDb25jZXJuaW5nIHRoaXMgZG9nIGhlcmU6IEkgZGlzbGlrZSBwaXp6 YS4iIEl0IGxlYXZlcyB5b3UgZ3Vlc3NpbmcgYWJvdXQgdGhlIHJlYXNvbiBmb3IgbWVudGlvbmlu ZyB0aGUgZG9nLgoKX18nJ2NpZGpycGl0c2EnJ19fIHgxIGlzIHBpenphIHdpdGggdG9wcGluZy9p bmdyZWRpZW50cyB4MgoKSWYgdGhlIHByZW5leCBjb250YWlucyAnJ25hIGt1JycsIGl0J3MgcHJl dHR5IHN0cmFpZ2h0IGZvcndhcmQ6IFRoZSBlbnRpcmUgYnJpZGkgaXMgbmVnYXRlZCwganVzdCBh cyBpZiB0aGUgYnJpZGkgaXRzZWxmIGJlZ2FuIHdpdGggJyduYSBrdScnLgoKU28gaG93IGxvbmcg ZG9lcyBhIHByZW5leCBsYXN0PyBJdCBsYXN0cyB1bnRpbCB0aGUgZm9sbG93aW5nIGJyaWRpIGlz IHRlcm1pbmF0ZWQuIElmIHRoYXQgaXMgbm90IGRlc2lyZWQsIHRoZXJlIGFyZSB0d28gd2F5cyB0 byBtYWtlIGl0IGFwcGx5IHRvIHNldmVyYWwgYnJpZGk6IE9uZSBpcyB0byBwdXQgc29tZSBraW5k IG9mIGNvbm5lY3RpdmUgYWZ0ZXIgdGhlICcnLmknJyBzZXBhcmF0aW5nIHRoZSBicmlkaSwgYW5k IGFub3RoZXIgbWV0aG9kIGlzIHRvIHNpbXBseSBpbmNsdWRlIGFsbCBvZiB0aGUgdGV4dCBpbiAn J3R1J2UnJyAuLi4gJyd0dSd1JyctYnJhY2tldHMuIFRoZXNlIGJyYWNrZXRzIHdvcmsgcHJldHR5 IG11Y2ggYnkgZ2x1aW5nIGFsbCB0aGUgYnJpZGkgdG9nZXRoZXIgYW5kIG1ha2VzIGFsbCBzb3J0 cyBvZiBjb25zdHJ1Y3QgYXBwbHkgdG8gc2V2ZXJhbCBicmlkaS4KCk5vdyB0aGF0IHdlIGNvdmVy ZWQgJyd6byd1JycsIHRoZSBmaXJzdCAibG9naWNhbCIgd29yZHMgd2UgY2FuIHVzZSBpdCB3aXRo IGFyZSB0aGVzZToKCl9fJydkYScnX18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwg c3Vta2EnaSAxCgpfXycnZGUnJ19fIGxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIHN1 bWthJ2kgMgoKX18nJ2RpJydfXyBsb2dpY2FsbHkgcXVhbnRpZmllZCBleGlzdGVudGlhbCBzdW1r YSdpIDMKClRoZXNlIHdvcmRzIGFyZSBhbGwgdGhlIHNhbWUsIGxpa2UgdGhlIG1hdGhlbWF0aWNh bCB2YXJpYWJsZXMgeCwgeSBhbmQgei4gT25jZSB5b3UgaGF2ZSBkZWZpbmVkIHRoZW0sIGhvd2V2 ZXIsIHRoZXkga2VlcCByZWZlcmluZyB0byB0aGUgc2FtZSB0aGluZy4gVGhlc2Ugd29yZHMgYXJl IGRlZmluZWQgaW4gdGhlIHByZW5leCBvZiBicmlkaSwgbWVhbmluZyB0aGF0IHdoZW4gdGhlIHBy ZW5leCBzdG9wIGFwcGx5aW5nLCB0aGUgZGVmaW5pdGlvbiBvZiB0aGVzZSB0aHJlZSB3b3JkcyBh cmUgY2FuY2VsbGVkLgoKVGhlIHdvcmRzICcnZGEnJywgJydkZScnIGFuZCAnJ2RpJycgY2FuIHJl ZmVyIHRvIGxpdGVyYWxseSBhbnkgc3VtdGksIHdoaWNoIG1ha2VzIHRoZW0ga2luZCBvZiB1c2Vs ZXNzIHVubGVzcyByZXN0cmljdGVkIGluIHNvbWUgd2F5LiBUaGUgZmlyc3QgYW5kIGZvcmVtb3N0 IHdheSB0byByZXN0cmljdCB0aGVtIGlzIHRvIHF1YW50aWZ5IHRoZW06IFRoZXkgYXJlIG5vdCBj YWxsZWQgImxvZ2ljYWxseSBxdWFudGlmaWVkIGV4aXN0ZW50aWFsIHN1bWthJ2kiIGZvciBub3Ro aW5nLiBUaGV5IGFyZSBzdW1rYSdpLCB0aGV5IGFyZSBtb3N0IHVzZWZ1bCB3aGVuIHF1YW50aWZp ZWQsIGFuZCB0aGV5IGFyZSBleGlzdGVudGlhbC4gV2hhdCBkb2VzIGl0IG1lYW4sIGJlaW5nICJl eGlzdGVudGlhbCI/IEl0IG1lYW5zIHRoYXQgaWYgdGhleSBhcmUgdXNlZCwgdGhhdCBpbXBsaWVz IHRoYXQgdGhleSBhY3R1YWxseSByZWZlciB0byBzb21ldGhpbmcgd2hpY2ggZXhpc3RzLiBBbiBl eGFtcGxlOgoKVGhlIHN0YXRlbWVudCAnJ3BhIGRhIHpvJ3UgZGEgZ2Vya3UnJyBoYXMgJydwYSBk YScnIGluIHRoZSBwcmVuZXgsIHdoaWNoIG1lYW5zICJDb25jZXJuaW5nIG9uZSBleGlzdGluZyB0 aGluZzoiLCBhbmQgdGhlbiAnJ2RhJycsIG5vdyBkZWZpbmVkLCBpcyB1c2VkIGluIHRoZSBicmlk aSAnJ2RhIGdlcmt1JycuIFRyYW5zbGF0ZWQgdG8gRW5nbGlzaCwgdGhpcyBtZWFuczogIlRoZXJl IGV4aXN0cyBvbmUgdGhpbmcgd2hpY2ggaXMgYSBkb2ciLiBUaGlzIGlzIG9idmlvdXNseSBmYWxz ZSwgdGhlcmUgYXJlIGFyb3VuZCA0MDAsMDAwLDAwMCBvZiB0aGVtIGluIHRoZSB3b3JsZC4gSWYg JydkYScnIGFuZCBpdHMgc2lzdGVycyBhcmUgbm90IHF1YW50aWZpZWQsIHRoZSBudW1iZXIgJydz dSdvJycgaXMgdGhlIGRlZmF1bHQuIFRodXMgJydkYSB6byd1IGRhIGdlcmt1JycgbWVhbnMgIlRo ZXJlIGV4aXN0IGF0IGxlYXN0IG9uZSB0aGluZyB3aGljaCBpcyBhIGRvZyIsIHdoaWNoIGlzIHRy dWUuIE5vdGljZSBoZXJlLCB0aGF0IGFueSBxdWFudGlmaWNhdGlvbiBtdXN0IGJlIG1vcmUgb3Ig bGVzcyBleGFjdCBpbiBvcmRlciB0byBiZSB0cnVlOiBPZiBjb3Vyc2Ugb25lIGRvZyBleGlzdHMs IGJ1dCBpbiBMb2piYW4sICcncGEgZGEgem8ndSBkYSBnZXJrdScnIG1lYW5zIG5vdCBvbmx5IHRo YXQgZG9lcyBvbmUgZG9nIGV4aXN0cywgYnV0IGFsc28gdGhhdCBubyBtb3JlIHRoYW4gb25lIGRv ZXMuIAoKVGhlcmUgYXJlIGEgZmV3IHNwZWNpZmljIHJ1bGVzIHRvIHRoZXNlIGV4aXN0ZW50aWFs IHN1bWthJ2k6CgotIElmIHRoZSBxdWFudGlmaWVyICcncm8nJyBpcyB1c2VkIGJlZm9yZSAnJ2Rh JycsIGl0IGluc3RlYWQgcmVmZXJzIHRvICJhbGwgd2hpY2ggZXhpc3RzIi4KCi0gSW1wb3J0YW50 bHksIHRoZSB1c2FnZSBvZiBhbiBleGlzdGVudGlhbCBzdW1rYSdpIG9ubHkgYXNzZXJ0cyB0aGF0 IHN1Y2ggYSB0aGluZyBleGlzdHMgX19pbiB0aGUgZG9tYWluIG9mIHRydXRoIHdoZXJlIGl0J3Mg dXNlZF9fLiBUaHVzLCBpbiB0aGUgc2VudGVuY2UgJydzbydlIHZlcmJhIGN1IGtyaWNpIGxvIGR1 J3Ugc3UnbyBkYSBjcmlkYScnLCBkb2VzIG5vdCBzdGF0ZSAnJ2RhIGNyaWRhJycsIHNpbmNlIGl0 cyAiZG9tYWluIG9mIHRydXRoIiBpcyBvbmx5IGluc2lkZSB0aGUgZHUndS1hYnN0cmFjdGlvbi4g R2VuZXJhbGx5IHNwZWFraW5nLCBhYnN0cmFjdGlvbnMgY29udGFpbiB0aGVpciBvd24gZG9tYWlu IG9mIHRydXRoLCBzbyB1c2luZyAnJ2RhJycgYW5kIGZyaWVuZHMgaW5zaWRlIGFuIGFic3RyYWN0 aW9uIGlzIHVzdWFsbHkgc2FmZS4KCi0gSWYgdGhlIHNhbWUgdmFyaWFibGUgaXMgcXVhbnRpZmll ZCBzZXZlcmFsIHRpbWVzLCB0aGUgZmlyc3QgcXVhbnRpZmljYXRpb24gaXMgdGhlIG9uZSB3aGlj aCBzdGlja3M6IEFueSBsYXRlciBxdWFudGlmaWVkIGluc3RhbmNlIG9mIHRoYXQgdmFyaWFibGUg Y2FuIHJlZmVyIG9ubHkgdG8gdGhpbmdzIHdoaWNoIGFyZSBhbHNvIGJlaW5nIHJlZmVycmVkIHRv IGJ5IHRoZSBmaXJzdCBpbnN0YW5jZSBvZiB0aGF0IHZhcmlhYmxlLCBhbmQgYW55IGxhdGVyIG5v bi1xdWFudGlmaWVkIGluc3RhbmNlIG9mIHRoYXQgdmFyaWFibGUgd2lsbCBnYWluIHRoZSBmaXJz dCBxdWFudGlmaWVyLiBUbyB1c2UgYW4gZXhhbXBsZTogJydjaSBkYSB6byd1IHJlIGRhIGJhcmRh IC5pamUgZGEgcGVseHUnJyBtZWFucyAiVGhlcmUgZXhpc3RzIHRocmVlIHRoaW5ncyBzdWNoIHRo YXQgdHdvIG9mIHRoZW0gYXJlIGJpZyBhbmQgYWxsIHRocmVlIGFyZSB5ZWxsb3ciLiAnJ3JlIGRh JycsIGJlaW5nIGFmdGVyICcnY2kgZGEnJywgY2FuIG9ubHkgcmVmZXIgdG8gdHdvIG9mIHRoZSBh bHJlYWR5IHN0YXRlZCB0aHJlZSB0aGluZ3MuIFdoZW4gJydkYScnIGFwcGVhcnMgd2l0aG91dCBh IHF1YW50aWZpZXIsICcnY2knJyBpcyBhc3N1bWVkLgoKLSBJZiB0aGVyZSBhcmUgc2V2ZXJhbCB0 ZXJtcyBpbiB0aGUgcHJlbmV4LCB0aGUgdGVybXMgYXJlIGFsd2F5cyByZWFkIGxlZnQgdG8gcmln aHQuIFNvbWV0aW1lcywgdGhpcyBtYXR0ZXJzOiAnJ3JvIGRhIGRlIHpvJ3UgZGEgcHJhbWkgZGUn JyBtZWFucyAiQ29uY2VybmluZyBhbGwgdGhlIHRoaW5ncyBYIHRoYXQgZXhpc3RzLCBjb25jZXJu aW5nIGF0IGxlYXN0IG9uZSB0aGluZyBZOiBYIGxvdmVzIFkiLiBUaGlzIGlzIHRoZSBzYW1lIGFz ICJBbGwgdGhpbmdzIGxvdmUgYXQgbGVhc3Qgb25lIHRoaW5nLiIsIHdoZXJlIHRoZSAidGhpbmco cykiIGNhbiBiZSBhbnl0aGluZywgaW5jbHVkaW5nIHRoZSB0aGluZyBpdHNlbGYuIE5vdGUgaGVy ZSB0aGF0ICcnZGUnJyBjYW4gcmVmZXIgdG8gZGlmZmVyZW50IHRoaW5ncyBmb3IgZWFjaCAnJ2Rh JycgLSB0aGUgdGhpbmcgd2hpY2ggaXMgcmVmZXJyZWQgdG8gYnkgJydkZScnIGlzIGRlcGVuZGVu dCBvbiB0aGUgJydkYScnLCBzaW5jZSBpdCBjYW1lIGJlZm9yZSBpdCBpbiB0aGUgcHJlbmV4LCB0 aGVyZWZvcmUgZWFjaCB0aGluZyBtaWdodCBsb3ZlIHNvbWV0aGluZyBkaWZmZXJlbnQuIElmIHdl IHN3aXRjaGVkIHRoZSBwbGFjZXMgb2YgJydkYScnIGFuZCAnJ2RlJycgaW4gdGhlIHByZW5leCwg YSBkaWZmZXJlbnQgcmVzdWx0IHdvdWxkIGFyaXNlOiAnJ2RlIHJvIGRhIHpvJ3UgZGEgcHJhbWkg ZGUnJyA9ICJDb25jZXJuaW5nIGF0IGxlYXN0IG9uZSB0aGluZyBZLCBjb25jZXJuaW5nIGFsbCBY IHdoaWNoIGV4aXN0czogWCBsb3ZlcyBZIiwgbWVhbmluZyAiVGhlcmUgZXhpc3RzIGF0IGxlYXN0 IG9uZSB0aGluZyB3aGljaCBldmVyeXRoaW5nIGxvdmVzIi4KCk9mIGNvdXJzZSwgYm90aCBjbGFp bXMgYXJlIGNvbXBsZXRlbHkgZmFsc2UuIFRoZXJlIGFyZSBtYW55IHRoaW5ncyB3aGljaCBsb3Zl cyBub3RoaW5nIC0gcm9ja3MsIG9yIGFic3RyYWN0IGNvbmNlcHRzLCBmb3IgZXhhbXBsZS4gTGlr ZXdpc2UsIGl0J3MgaW1wb3NzaWJsZSB0byBjb25jaWV2ZSBvZiBzb21ldGhpbmcgd2hpY2ggZXZl cnl0aGluZyBsb3Zlcywgc2luY2UgImV2ZXJ5dGhpbmciIGFsc28gZW5jb21wYXNzZXMgbm9uLXNl bnRpZW50IHRoaW5ncy4gV2UgbmVlZCBiZXR0ZXIgd2F5cyB0byByZXN0cmljdCB3aGF0IHRoZXNl IHZhcmlhYmxlcyBjYW4gcG9pbnQgdG8uIE9uZSBnb29kIHdheSBvZiBkb2luZyBpdCBpcyB0byBt YWtlIHRoZW0gdGhlIHN1YmplY3Qgb2YgYSByZWxhdGl2ZSBjbGF1c2U6CgonJ3JvIGRpIHBvaSBy ZW1uYSB6byd1IGJpcmthIGRpJycgPSAiQ29uY2VybmluZyBhbGwgWCB0aGF0IGV4aXN0cywgd2hp Y2ggaXMgaHVtYW46IFggaGFzIG9uZSBvciBtb3JlIGFybXMuIiBvciAiQWxsIGh1bWFucyBoYXZl IGFybXMiLCB3aGljaCBpcyB0cnVlLCBhdCBsZWFzdCB3aGVuIHNwZWFraW5nIGluIGEgcG90ZW50 aWFsLCB0aW1lbGVzcyBzZW5zZS4KCl9fJydiaXJrYScnX18geDEgaXMgYW4gYXJtIG9mIHgyCgpX aGVuIHJlc3RyaWN0aW5nIGNsYWltcyB1c2luZyB0aGlzIGtpbmQgb2YgbG9naWNhbCAiZXhpc3Rl bnRpYWwiIHZhcmlhYmxlLCBpdCdzIHZlcnkgaW1wb3J0YW50IHRvIHJlbWVtYmVyIHRoYXQgdW5s ZXNzIHRoZXJlIGlzIGFuIGV4cGxpY2l0ICcnbm8nJyBhcyBhIHF1YW50aWZpZXIsIHRoZXNlIGtp bmQgb2Ygc3RhdGVtZW50cyBhbHdheXMgaW1wbHkgdGhhdCB0aGVyZSBfX2FjdHVhbGx5IGV4aXN0 c19fIHNvbWV0aGluZyB3aGljaCBjYW4gYmUgcmVmZXJyZWQgdG8gYnkgJydkYScnLiBUaGVyZWZv cmUsIGFueSBraW5kIG9mIG5vbi1uZWdhdGVkIHN0YXRlbWVudCB3aGVyZSAnJ2RhJycgcG9pbnRz IHRvIHNvbWV0aGluZyB3aGljaCBkb2VzIG5vdCBleGlzdCBpcyBmYWxzZSwgYXMgaW4gdGhpcyBl eGFtcGxlOiAnJ3JvIGRhIHBvaSBwYXZ5c2VsamlybmEgem8ndSBkYSBzZSBqaXJuYScnIC0gIkFs bCB1bmljb3JucyBoYXZlIGhvcm5zIi4gVGhpcyBpcyB3cm9uZyBiZWNhdXNlLCBzaW5jZSAnJ2Rh JycgaXMgZXhpc3RlbnNpYWwsIGl0IGFsc28gbWVhbnMgdGhhdCB0aGVyZSBtdXN0IGV4aXN0IGF0 IGxlYXN0IG9uZSB1bmljb3JuLgoKSW50ZXJlc3RpbmdseSwgd2hlbiB1c2luZyBhIHJlbGF0aXZl IGNsYXVzZSwgdGhlIHZhcmlhYmxlIGlzIGJlaW5nIHJlc3RyaWN0ZWQgcmVnYXJkbGVzcyBvZiB3 aGV0aGVyIHlvdSB1c2UgJydwb2knJyBvciAnJ25vaScnLiBUaGlzIGlzIGJlY2F1c2UgJydyZSBk YSBub2kgZ2Vya3UnJyBzdGlsbCBvbmx5IGNhbiByZWZlciB0byB0d28gdGhpbmdzIHdoaWNoIGFy ZSBodW1hbnMuIFRoZXJlZm9yZSwgJydub2knJyBtYWtlcyBsaXR0bGUgc2Vuc2Ugd2l0aCAnJ2Rh JycvJydkZScnLycnZGknJy4gQW55IGNsYXVzZSBpcyBhbHdheXMgcmVzdHJpY3RpdmUsIHVubGVz cyBpdCdzIHJlYWxseSBzdHVwaWQgYW5kIG9idmlvdXMgbGlrZSAnJ2RlIG5vaSBnZXJrdSBjdSBn ZXJrdScnLgoKSW4gZmFjdCwgeW91IGRvbid0IHJlYWxseSBuZWVkIHRoZSBwcmVuZXggdG8gZGVm aW5lIHRoZSB2YXJpYWJsZXMuIFlvdSBjYW4gdXNlIHRoZW0gZGlyZWN0bHkgYXMgc3VtdGkgaW4g dGhlIGJyaWRpLCBhbmQgcXVhbnRpZnkgdGhlbSB0aGVyZS4gWW91IG9ubHkgbmVlZCB0byBxdWFu dGlmeSB0aGVtIHRoZSBmaXJzdCB0aW1lIHRoZXkgYXBwZWFyLCB0aG91Z2guIFRodXMsIHRoZSBz ZW50ZW5jZSBhYm91dCBodW1hbnMgaGF2aW5nIGFybXMgY291bGQgYmUgdHVybmVkIGludG8gJydi aXJrYSBybyBkaSBwb2kgcmVtbmEnJy4gVGhlIG9yZGVyIG9mIHRoZSB2YXJpYWJsZXMgc3RpbGwg bWF0dGVycyB0aG91Z2gsIGFuZCBzbyB0aGUgcHJlbmV4IGNhbiBiZSB1c2VkIHRvIGF2b2lkIGhh dmluZyB0byBtZXNzIHVwIHlvdXIgYnJpZGkgdG8gcGxhY2UgdGhlIHZhcmlhYmxlcyBpbiB0aGUg Y29ycmVjdCBvcmRlci4gV2hlbiBoYXZpbmcgbW9yZSB2YXJpYWJsZXMsIGEgcHJlbmV4IGlzIHVz dWFsbHkgYSBnb29kIGlkZWEuCgpUaGUgc2Vjb25kIGtpbmQgb2YgbG9naWNhbCB3b3JkcyBhcmUg YmFzaWNhbGx5IHRoZSBzYW1lIGFzIHRoZSB0aHJlZSB3ZSBoYXZlIGFscmVhZHkgYmVlbiB0aG91 Z2gsIGJ1dCB0aGVzZSBhcmUgYnJpa2EnaSBpbnN0ZWFkIG9mIHN1bWthJ2k6CgpfXycnYnUnYScn X18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwgYnJpa2EnaSAxCgpfXycnYnUnZScn X18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwgYnJpa2EnaSAyCgpfXycnYnUnaScn X18gbG9naWNhbGx5IHF1YW50aWZpZWQgZXhpc3RlbnRpYWwgYnJpa2EnaSAzCgpUaGVzZSB3b3Jr IHByZXR0eSBtdWNoIHRoZSBzYW1lIHdheSBhcyB0aGUgb3RoZXIgdGhyZWUsIGJ1dCB0aGVyZSBh cmUgYSBmZXcgcG9pbnRzIHdoaWNoIGFyZSBpbXBvcnRhbnQgdG8gbWVudGlvbjoKClNpbmNlIG9u bHkgdGVybXMgY2FuIGdvIGluIHRoZSBwcmVuZXgsIHRoZXNlIGJyaWthJ2kgbmVlZCB0byBoYXZl IGEgcXVhbnRpZmllciBpbiBvcmRlciB0byBtYWtlIHRoZW0gaW50byBzdW10aS4gV2hlbiBxdWFu dGlmaWVkIGluIHRoZSBwcmVuZXgsIGhvd2V2ZXIsIHRoZSBxdWFudGlmaWVyIHdvcmtzIHZlcnkg ZGlmZmVyZW50IGZyb20gcXVhbnRpZmllcnMgd2l0aCBub3JtYWwgc2VsYnJpOiBJbnN0ZWFkIG9m IHF1YW50aWZ5aW5nIHRoZSBhbW91bnQgb2YgdGhpbmdzIHdoaWNoIGZpdHMgdGhlIHgxIG9mIHRo ZSBzZWxicmkgdmFyaWFibGUsIGl0IGRpcmVjdGx5IHF1YW50aWZpZXMgdGhlIGFtb3VudCBvZiBz ZWxicmkgd2hpY2ggYXBwbGllcy4gQWdhaW4sIHRoZSBkZWZhdWx0IHF1YW50aWZpZXIgaXMgJydz byd1JycuIFRodXMsIGluc3RlYWQgb2YgJydyZSBidSdhIHpvJ3UnJyBtZWFuaW5nICJDb25jZXJu aW5nIHR3byB0aGluZ3Mgd2hpY2ggaXMgaW4gcmVsYXRpb25zaGlwIFg6IiwgaXQgbWVhbnMgIkNv bmNlcm5pbmcgdHdvIHJlbGF0aW9uc2hpcHMgWDoiCgpJdCdzIHByb2JhYmx5IGdvb2QgdG8gc2Vl IGFuIGV4YW1wbGUgb2YgJydidSdhJycgcHV0IHRvIHByYWN0aWNlOgoKJydybyBkYSBidSdhIGxh IC5iYWIuJycgPSAiQ29uc2lkZXJpbmcgYWxsIFggd2hpY2ggZXhpc3RzOiBYIGlzIGluIGF0IGxl YXN0IG9uZSByZWxhdGlvbnNoaXAgd2l0aCBCb2IiID0gIkV2ZXJ5dGhpbmcgaXMgcmVsYXRlZCB0 byBCb2IgaW4gYXQgbGVhc3Qgb25lIHdheS4iLiBOb3RpY2UgYWdhaW4gdGhlIG9yZGVyIG1hdHRl cnM6ICcnYnUnYSBybyBkYSB6byd1IGRhIGJ1J2EgQm9iJycgbWVhbnM6ICJUaGVyZSBpcyBhdCBs ZWFzdCBvbmUgcmVsYXRpb25zaGlwIHN1Y2ggdGhhdCBldmVyeXRoaW5nIHRoYXQgZXhpc3RzIGlz IGluIHRoYXQgcmVsYXRpb25zaGlwIHdpdGggQm9iIi4gVGhlIGZpcnN0IHN0YXRlbWVudCBpcyB0 cnVlIC0gZm9yIGFueSBvbmUgdGhpbmcsIG9uZSBjYW4gaW5kZWVkIG1ha2UgdXAgc29tZSBzZWxi cmkgd2hpY2ggcmVsYXRlcyBhbnkgZ3V5IGNhbGxlZCBCb2IgYW5kIGl0LiBCdXQgSSdtIG5vdCBz dXJlIHRoZSBsYXR0ZXIgaXMgdHJ1ZSAtIHRoYXQgb25lIGNhbiBtYWtlIGEgc2VsYnJpIHdoaWNo IGNhbiByZWxhdGUgYW55dGhpbmcsIG5vIG1hdHRlciB3aGF0IGl0IGlzLCBhbmQgQm9iLgoKTGV0 J3MgaGF2ZSBhbiBleGFtcGxlIHdoaWNoIHF1YW50aWZpZXMgc2VsYnJpOgoKJydjaSdpIGJ1J2Ug em8ndSBtaSBidSdlIGRvJycgLSAiQ29uY2VybmluZyBhbiBpbmZpbml0ZSBhbW91bnQgb2YgcmVs YXRpb25zaGlwczogSSBhbSBpbiBhbGwgdGhvc2UgcmVsYXRpb25zaGlwIHdpdGggeW91LiIgb3Ig IlRoZXJlIGV4aXN0cyBhbiBpbmZpbml0ZSBhbW91bnQgb2YgcmVsYXRpb25zaGlwcyBiZXR3ZWVu IHVzIgoKWW91IGNhbid0IHF1YW50aWZ5IHRoZSBzZWxicmkgdmFyaWFibGVzIGluIHRoZSBicmlk aSBpdHNlbGYsIHRob3VnaC4gVGhlbiBpdCB3aWxsIGFjdCBhcyBhIHN1bXRpOiAnJ21pIGNpJ2kg YnUnYSBkbycnIGlzIG5vdCBhIGJyaWRpLiBUaGVyZSBhcmUgc29tZSBzaXR1YXRpb24gd2hlcmUg dGhpcyB3aWxsIGJlY29tZSBwcm9ibGVtYXRpYyAtIGxlc3NvbiB0d2VudHktbmluZSB3aWxsIHRl YWNoIGhvdyB0byBvdmVyY29tZSB0aG9zZSBwcm9ibGVtcy4KCgoKISFMb2piYW4gTGVzc29ucyAt IExlc3NvbiB0d2VudHktZWlnaHQgKHNlbWFudGljcyBvZiBzaW1wbGUgYWJzdHJhY3Rpb25zKQoK SSBmZWVsIGl0IGlzIG5lY2Vzc2FyeSB0byByZXBlYXQgcGFydCBvZiB0aGUgZGlzY2xhaW1lciBm cm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBwYXJ0IG9mIHRoZSBXYXZlbGVzc29uc2NvbnRpbnVl ZDogV2hhdCB5b3UgZmluZCBpbiB0aGlzIGxlc3NvbiBhbmQgdGhlIGZvbGxvd2luZyBpcyBub3Qg Z29sZGVuIEJQRkstZGVmaW5pdGlvbnMsIGJ1dCBvbmUgaW50ZXJwcmV0YXRpb24uIEkgaGF2ZSBw aWVjZWQgdGhlIGxlc3NvbnMgdG9nZXRoZXIgZnJvbSB0aGUgYmVzdCBhbmQgbW9zdCBjb25zaXN0 ZW50IHRoZW9yaWVzIG9uIExvamJhbiwgYnV0IG1pbmQgdGhhdCB3aGF0IGlzIHRhdWdodCBpbiBo ZXJlIG1pZ2h0IG5vdCBiZSB3aGF0IGFsbCBsb2piYW5pc3RzIGFncmVlIG9uLgoKV2hpbGUgeW91 IGhhdmUgYmVlbiB0YXVnaHQgYWJvdXQgYWJzdHJhY3Rpb25zIHR3ZW50eS10d28gbGVzc29ucyBh Z28sIHRoZXJlIGFyZSBzdGlsbCBtYW55IHR5cGVzIG9mIGFic3RyYWN0aW9uIHdpdGggd2hpY2gg eW91IGFyZSB1bmZhbWlsaWFyLCBhbmQgc29tZSBvZiB0aGUgb25lcyB5b3UgYXJlIGZhbWlsaWFy IHdpdGggaGF2ZSBub3QgYmVlbiBwcm9wZXJseSBkZWZpbmVkLgoKVGhlIGZpcnN0IGFuZCBtb3N0 IGJhc2ljIGFic3RyYWN0b3IgaXMgJydzdeKAmXUnJywgd2hpY2ggeW91IGFscmVhZHkga25vdy4K CllvdSBtaWdodCByZW1lbWJlciBmcm9tIGxlc3NvbiBzaXggdGhhdCAnJ3N1J3UnJyBoYWQgYSBw bGFjZSBzdHJ1Y3R1cmUgd2l0aCB0d28gc3VtdGkgcGxhY2VzLiBUaGUgc2Vjb25kIHN1bXRpIHBs YWNlIG9mICcnc3UndScnIG1ha2VzIHRoZSB3b3JkIHZlcnNhdGlsZSwgYXMgdGhlIHgyIGNhbiBi ZSB1c2VkIHRvIHNwZWNpZnkgaG93IHRoZSBhYnN0cmFjdGlvbiBzaG91bGQgYmUgY29uc2lkZXJl ZC4KClRoZSBFbmdsaXNoIHBocmFzZSDigJx0aGF0IEkgbG92ZSB5b3XigJ0gaXMgZGVmaW5pdGVs eSBhIHN1bXRpLCBzaW5jZSBpdOKAmXMgbWVhbnQgdG8gZnVuY3Rpb24gYXMgYSBzdWJqZWN0IG9y IG9iamVjdCBpbiBhIHNlbnRlbmNlLiBJdOKAmXMgYWxzbyBjbGVhcmx5IG1hZGUgZnJvbSBhbiBh YnN0cmFjdGlvbi4gSXQgY2FuIHRoZXJlZm9yZSBiZSB0cmFuc2xhdGVkICcnbG8gc3XigJl1IG1p IGRvIHByYW1pJycuIFdpdGhvdXQgdGhlIGNvbnRleHQgb2YgdGhlIEVuZ2xpc2ggc2VudGVuY2Us IHRob3VnaCwgaXTigJlzIGhhcmQgdG8gZ3Vlc3Mgd2hhdCBraW5kIG9mIGFic3RyYWN0aW9uIHdh cyBtZWFudC4g4oCcSSB3aWxsIGRpZSBoYXBweSBieSB0aGUgdGltZSB0aGF0IEkgbG92ZSB5b3Uu 4oCdIHRyZWF0cyB0aGUgYWJzdHJhY3Rpb24gYXMgYW4gZXZlbnQgaGFwcGVuaW5nIGluIHRpbWUu IOKAnFRoZSB0cnV0aCBpcyB0aGF0IEkgbG92ZSB5b3Uu4oCdIHRyZWF0cyB0aGUgYWJzdHJhY3Rp b24gbGlrZSBhIGJyaWRpLCB3aGljaCBjYW4gYmUgY29uc2lkZXJlZCB0cnVlIG9yIGZhbHNlLiAi WW91IGRvbid0IGtub3cgaG93IG11Y2ggSSBsb3ZlIHlvdSIgdHJlYXRzIHRoZSAoYWxtb3N0IHNh bWUpIGFic3RyYWN0aW9uIGFzIGFuIGFtb3VudC4gVXNpbmcgdGhlIHNlY29uZCBzdW10aSBwbGFj ZSBvZiAnJ3N14oCZdScnLCB0aGVzZSBjYW4gYmUgZXhwbGljaXRseSBkaXN0aW5ndWlzaGVkIGJl dHdlZW46CgonJ2xvIHN14oCZdSBtaSBkbyBwcmFtaSBrZWkgYmUgbG8gZmFzbnUnJyBpcyBhbiBl dmVudC4KCicnbG8gc3XigJl1IG1pIGRvIHByYW1pIGtlaSBiZSBsbyBicmlkaScnIGlzIGEgYnJp ZGkuCgonJ2xvIHN14oCZdSBtaSBkbyBwcmFtaSBrZWkgYmUgbG8ga2xhbmknJyBpcyBhbiBhbW91 bnQuCgpVc2luZyAnJ3N14oCZdScnIHRoaXMgd2F5LCB0aGUgc2VtYW50aWMsIHRob3VnaCBub3Qg Z3JhbW1hdGljYWwsIHJhbmdlIG9mIGFsbCBhYnN0cmFjdG9ycyBjYW4gYmUgY292ZXJlZC4gTW9y ZSB1c3VhbGx5LCB0aG91Z2gsIG90aGVyIGFic3RyYWN0b3JzIGFyZSB1c2VkLiAnJ251JycsIHdo aWNoIHlvdSBhbHNvIGtub3csIHRyZWF0cyB0aGUgYWJzdHJhY3Rpb24gYXMgYW4gZXZlbnQuCgpf XycnbnUnJ19fIHgxIGlzIGFuIGV2ZW50IG9mIEJSSURJCgpUaGVyZSBhcmUgbWFueSB3YXlzIHRv IHZpZXcgYW4gZXZlbnQsIGFuZCBzbyB0aGVyZSBhcmUgZm91ciBvdGhlciBhYnN0cmFjdG9ycyB3 aG9zZSBzZW1hbnRpY3MgYXJlIGFsbCBjb3ZlcmVkIGJ5ICcnbnUnJywgYnV0IG1vcmUgc3BlY2lm aWMuCgpfXycnbXXigJllJydfXyB4MSBpcyBhIHBvaW50LWxpa2UgZXZlbnQgb2YgQlJJREkgaGFw cGVuaW5nCgpfXycnemHigJlpJydfXyB4MSBpcyBhIHN0YXRlIG9mIEJSSURJIGJlaW5nIHRydWUK Cl9fJydwdeKAmXUnJ19fIHgxIGlzIGEgcHJvY2VzcyBvZiBCUklESSB1bmZvbGRpbmcgdGhyb3Vn aCBzdGFnZXMgeDIKCl9fJyd6deKAmW8nJ19fIHgxIGlzIGFuIGFjdGl2aXR5IG9mIEJSSURJIGNv bnNpc3Rpbmcgb2YgdGhlIHJlcGVhdGVkIGV2ZW50IG9mIHgyCgpUaGUgdW5kZXJzdGFuZGluZyBv ZiB0aGVzZSBhYnN0cmFjdG9ycyBpcyB0aWVkIHRvIHRoZSB1bmRlcnN0YW5kaW5nIG9mIGV2ZW50 IGNvbnRvdXJzLiAnJ2114oCZZScnIGlzIGFraW4gdG8gdGhlIGV2ZW50IGNvbnRvdXIgJydjb+KA mWknJyBpbiB0aGUgc2Vuc2UgdGhhdCBib3RoIHRyZWF0IHRoZSBicmlkaSBhcyBwb2ludC1saWtl IGluIHRpbWUgYW5kIHNwYWNlOgoKJydsZSBtdeKAmWUgbWkga2Fucm8gYmlueG8gY3Ugc2UgZGpp Y2EgbWknJyDigJMg4oCdTWUgYmVjb21pbmcgaGVhbHRoeSBpcyBkZXNpcmVkIGJ5IG1l4oCdIGhh cyB0aGUgc2VtYW50aWMgbWVhbmluZyB0aGF0IHRoZSBwcm9jZXNzIG9mIGJlY29taW5nIGhlYWx0 aHkgaXMgbm90IGJlaW5nIGNvbnNpZGVyZWQuIElmIGl0IGNvbnNpc3RzIG9mIGNoZW1vdGhlcmFw eSwgaXQgaXMgcGxhdXNpYmxlIHRoYXQgdGhpcyBwcm9jZXNzIGlzIG5vdCBkZXNpcmVkIGF0IGFs bC4g4oCcQmVjb21pbmcgaGVhbHRoeeKAnSwgaW4gYSBwb2ludC1saWtlIHNlbnNlIGlzIGRlc2ly ZWQsIGhvd2V2ZXIuCgonJ3ph4oCZaScnIGlzIGxpa2UgdGhlIGV2ZW50IGNvbnRvdXIgJydjYeKA mW8nJyBpbiB0aGUgc2Vuc2UgdGhhdCAnJ2xlIHph4oCZaSBCUklESScnIGJlZ2lucyB0byBhcHBs eSB3aGVuIHRoZSBicmlkaSBiZWdpbnMgYW5kIHNoYXJwbHkgZW5kcyB3aGVuIHRoZSBicmlkaSBj ZWFzZXMgdG8gYmUgdHJ1ZSwgbXVjaCBsaWtlICcnY2HigJlvJycuIAoKJyd6YeKAmW8gemHigJlp IG1pIGthbnJvIGJpbnhvJycgbWVhbnMgdGhhdCB0aGUgc3RhdGUgb2YgbWUgYmVjb21pbmcgaGVh bHRoeSB0b29rIHRvbyBsb25nIHRpbWU7IHRoYXQgdGhlIHRpbWUgYmV0d2VlbiBteSBoZWFsdGgg YmVnaW5uaW5nIHRvIGltcHJvdmUgYW5kIGJlIGFjdHVhbGx5IGJlaW5nIGhlYWx0aHkgd2FzIGxv bmctd2luZGVkLgoKVGhlIGFjdHVhbCB0cmVhdG1lbnQgaXMgcGVyaGFwcyBiZXR0ZXIgY2F1Z2h0 IGJ5ICcncHXigJl1JycsIHdoaWNoLCBsaWtlIGV2ZW50IGNvbnRvdXJzIGluIGdlbmVyYWwsIHB1 dHMgZW1waGFzaXMgb24gdGhlIGVudGlyZSBldmVudCBhcyB1bmZvbGRpbmcgdGhyb3VnaCB0aW1l LiAnJy5paSBiYSB6aSBjb+KAmWEgcHXigJl1IG1pIGthbnJvIGJpbnhvIHZhdSAub2knJyBleHBy ZXNzZXMgZmVhciB0aGF0IHRoZSBwYWluZnVsIHByb2Nlc3Mgb2YgYmVjb21pbmcgaGVhbHRoeSBp cyBhYm91dCB0byBiZWdpbi4gVGhlIHgyIGlzIGZpbGxlZCBieSBhIHNlcXVlbmNlIG9mIHN0YWdl cywgd2hpY2ggY2FuIGJlIG1hZGUgYnkgaW50ZXJzcGFjaW5nIHRoZSBzdGFnZXMgd2l0aCB0aGUg bm9uLWxvZ2ljYWwgY29ubmVjdGl2ZSAnJ2Nl4oCZbycnOiAnJ3pl4oCZdSBwdeKAmXUgbWkga2Fu cm8gYmlueG8ga2VpIGxlIG51IG1pIGZhY2tpIGNl4oCZbyBsZSBudSBtaSBqYWkgdG9sc3RpIGNl 4oCZbyBtaSByZW52aScnIG1lYW5zIOKAnHNvbWV0aGluZyBpcyBhIGxvbmcgcHJvY2VzcyBvZiBt ZSBiZWNvbWluZyBoZWFsdGh5IGNvbnNpc3Rpbmcgb2YgdGhlIHN0YWdlcyBBICkgSSBmaW5kIG91 dCBCICkgc29tZXRoaW5nIGFib3V0IG1lIGJlZ2lucyBDICkgSSBlbmR1cmUu4oCdCgpGaW5hbGx5 LCB0aGUgc2VtYW50aWNzIG9mICcnenXigJlvJycgdHJlYXRzIHRoZSBhYnN0cmFjdGlvbiBhcyBj b25zaXN0aW5nIG9mIGEgbnVtYmVyIG9mIHJlcGVhdGVkIGFjdGlvbnM6ICcnbG8gemEnYSB6byd1 IGRhcnhpIGxvIHRhbnhlIGN1IHJpbmthIGxvIGNhIG11J2UgcG9ycGknJyDigJMgIlRoZSBvYnNl cnZlZCBhY3Rpdml0eSBvZiBiZWF0aW5nIHRoZSBib3ggY2F1c2VkIGl0cyBjdXJyZW50IGJyb2tl bm5lc3MiIGlzIG1vcmUgYWNjdXJhdGUgdGhhbiB0aGUgc2ltaWxpYXIgc2VudGVuY2UgdXNpbmcg JydudScnLCBiZWNhdXNlICcnenUnbycnIG1ha2VzIGl0IGV4cGxpY2l0IHRoYXQgaXQgd2FzIHRo ZSByZXBlYXRpbmcgb2YgdGhlIGFjdGlvbiBvZiBiZWF0aW5nLCBub3QgdGhlIGJlYXRpbmcgaW4g aXRzZWxmIHdoaWNoIGJyb2tlIHRoZSBib3guCgpUaGUgeDIgb2YgJyd6dSdvJycgaXMgZWl0aGVy IG9uZSBldmVudCBvciBhIHNlcXVlbmNlIHdoaWNoIGlzIHJlcGVhdGVkLiBUbyBiZSB1bm5lY2Vz c2FyaWx5IGV4cGxpY2l0LCB3ZSBjb3VsZCBoYXZlIHN0YXRlZCB0aGF0IHRoZSBjYXVzZSBvZiB0 aGUgY3VycmVudCBicm9rZW5uZXNzIHdhcyAnJ2xvIHpvJ3UgZGFyeGkgbG8gdGFueGUga2VpIGxv bnUgbGFmdGkgbG8gZ3JhbmEga2VpIGt1IGNlJ28gbG9udSBtdXZnYXUgbG8gZ3JhbmEgbG8gdGFu eGUga2VpIGt1IGNlJ28gLi4uJycgYW5kIHNvIG9uLgoKTm90ZSB0aGUgZGlmZmVyZW5jZSBiZXR3 ZWVuICcnbXXigJllIGJhanJhJycsICcnemHigJlpIGJhanJhJycsICcncHXigJl1IGJhanJhJycs ICcnenXigJlvIGJhanJhJycgYW5kICcnbnUgYmFqcmEnJy4gVGhlIHBvaW50LWxpa2UgZXZlbnQg b2YgcnVubmluZyBwdXRzIGVtcGhhc2lzIG9uIHRoZSBldmVudCBoYXBwZW5pbmcsIGJ1dCBub3Ro aW5nIGVsc2UuIFRoZSBzdGF0ZSBvZiBydW5uaW5nIGJlZ2lucyB3aGVuIHRoZSBydW5uZXIgYmVn aW5zIGFuZCBzdG9wcyB3aGVuIHRoZSBydW5uZXIgc3RvcHMuIFRoZSBwcm9jZXNzIG9mIHJ1bm5p bmcgY29uc2lzdHMgb2YgYSB3YXJtLXVwLCBrZWVwaW5nIGEgc3RlYWR5IHNwZWVkLCBhbmQgdGhl IGZpbmFsIHNwcmludC4gVGhlIGFjdGl2aXR5IG9mIHJ1bm5pbmcgY29uc2lzdHMgdGhlIGN5Y2xl cyBvZiBsaWZ0aW5nIG9uZSBmb290LCBtb3ZpbmcgaXQgZm9yd2FyZCwgZHJvcHBpbmcgaXQgZG93 biwgcmVwZWF0IHdpdGggdGhlIG90aGVyIGZvb3QuIEFsbCBvZiB0aGVzZSBhc3BlY3RzIGFyZSBz aW11bHRhbmVvdXNseSBjb3ZlcmVkIGJ5IHRoZSBldmVudCBvZiBydW5uaW5nLCAnJ251IGJhanJh JycuIAoKU29tZSBhYnN0cmFjdGlvbnMgYXJlIGV2ZW4gbW9yZSBhYnN0cmFjdCB0aGFuIG1lcmUg ZXZlbnRzLCB3aGljaCBhZnRlciBhbGwgYXJlIGJvdW5kIGluIHNwYWNlIGFuZCB0aW1lLiBPbmUg ZXhhbXBsZSBvZiBzdWNoIGlzICcnbGknaScnLCB0aGUgImV4cGVyaWVuY2UgYWJzdHJhY3Rpb24i OgoKX18nJ2xpJ2knJ19fIEV4cGVyaWVuY2UgYWJzdHJhY3RvcjogeDEgaXMgeDIncyBpbnRlcm5h bCBleHBlcmllbmNlIG9mIEJSSURJCgpVbmxpa2UgZXZlbnQgYWJzdHJhY3Rpb25zLCB0aGlzIGlz IGV4cGxpY2l0bHkgbWVudGFsIC0gYSAnJ2xpJ2knJy1hYnN0cmFjdGlvbiBjYW5ub3QgYmUgc2Fp ZCB0byBleGlzdCBvdXRzaWRlIHRoZSBtaW5kIG9mIGEgcGVyc29uLiAnJ2xpJ2knJyBpcyBkZXJp dmVkIGZyb20gJydsaWZyaScnLCBhbmQgaXMgYWx3YXlzIGEgJydzZSBsaWZyaScnIC0gYW4gZXhw ZXJpZW5jZS4KClRob3VnaCBpdCdzIHNvbWV3aGF0IHJlbGF0ZWQgdG8gJyduaScnLCB0aGlzIG1p Z2h0IGJlIGEgZ29vZCB0aW1lIHRvIGludHJvZHVjZSAnJ2plaScnIC0gdGhlIHRydXRoLWFic3Ry YWN0aW9uLiBUaGlzIGlzIG9uZSBvZiB0aGUgbGVhc3QgdXNlZCBhYnN0cmFjdGlvbnMgb2YgdGhl bSBhbGwsIGFuZCBJIG9ubHkgaW5jbHVkZSBpdCBoZXJlIGZvciBjb21wbGV0ZW5lc3MuCgpfXycn amVpJydfXzogVHJ1dGggYWJzdHJhY3Rpb246IHgxIGlzIHRoZSB0cnV0aC12YWx1ZSBvZiBCUklE SSB1bmRlciBlcGlzdGVtb2xvZ3kgeDIKCkEgJydqZWknJy1hYnN0cmFjdGlvbiBpcyBzb21ldGhp bmcgYmV0d2VlbiB0cnVlIGFuZCBmYWxzZSwgYW5kIGNhbiBiZSByZXByZXNlbnRlZCBieSBhIG51 bWJlciBiZXR3ZWVuIDAgKGZhbHNlKSBhbmQgMSAodHJ1ZSkuIFVzaW5nICcnamVpJyctYWJzdHJh Y3Rpb25zIGluIG1hdGhlbWF0aWNzIGlzIGluYWR2aWNhYmxlLCBzaW5jZSBpdCBoYXNuJ3QgZ290 IGFueSBwcm9wZXJ0aWVzIG5vcm1hbGx5IGFzc29jaWF0ZWQgd2l0aCBudW1iZXJzIC0gb25lIG1p Z2h0IGFzIHdlbGwgcmVwcmVzZW50IHRoZSB0cnV0aCB2YWx1ZSBvbiBhIHNwZWN0cnVtIG9mIGNv bG9yIGZyb20gcmVkIHRvIGJsdWUuCgonJ2plaScnIGlzIHJhcmVseSB1c2VkLCBub3QgYmVjYXVz ZSB0cnV0aCBhYnN0cmFjdGlvbnMgYXJlIGluZnJlcXVlbnRseSBuZWVkZWQsIGJ1dCBiZWNhdXNl IG1vc3QgbG9qYmFuaXN0cyB1c2Ugb3RoZXIgbWVjaGFuaXNtcyB0byBvYnRhaW4gdGhlbSwgZm9y IGluc3RhbmNlICcna2F1JycsIGFzIGV4cGxhaW5lZCBsYXRlciBpbiB0aGlzIGxlc3Nvbi4KCicn bWkgZGknaSBwZW5zaSBsbyBqZWkgbWkgbWVya28nJyAtICJJIG9mdGVuIHRoaW5rIGFib3V0IHdo ZXRoZXIgSSBhbSBBbWVyaWNhbiBvciBub3QiIChjb250cmFzdCB3aXRoICcnbWkgZGknaSBwZW5z aSBsbyBuaSBtaSBtZXJrbycnIC0gIkkgb2Z0ZW4gdGhpbmsgYWJvdXQgaG93IEFtZXJpY2FuIEkg YW0iKQoKVGhlIGZvbGxvd2luZyBhYnN0cmFjdGlvbiBpcyBvbmUgb2YgdGhlIG1vc3Qgd2lkZWx5 IHVzZWQgYWJzdHJhY3Rpb24gZHVlIHRvIGl0cyBmcmVxdWVudCB1c2VmdWxuZXNzOgoKX18nJ2R1 J3UnJ19fOiBCcmlkaSBhYnN0cmFjdGlvbjogeDEgaXMgdGhlIGJyaWRpIG9mIEJSSURJLCBhcyBy ZXByZXNlbnRlZCBieSB0ZXh0IHgyCgogQWNjb3JkaW5nIHRvIHRoZSBzdGFuZGFyZCwgYWJzdHJh Y3Rpb25zIGxpa2UgdHJ1dGhzLCBsaWVzLCB0aGluZ3MgYmVpbmcgZGlzY292ZXJlZCBvciBiZWxp ZXZlZCBhcmUgYWxsIHB1cmUgYnJpZGk6CgonJy51aSBzYWkgcHUgemkgZmFja2kgbGUgZHXigJl1 IHppIGNpdGthIGxvIGNpZGpycGl0c2EnJyDigJMg4oCcWWVzISBJIGp1c3QgZm91bmQgb3V0IHRo YXQgcGl6emEgd2lsbCBiZSBlYXRlbiBzb29uIeKAnS4KCiBXaGF0IGlzIGJlaW5nIGRpc2NvdmVy ZWQgaXMgdGhlIHRydXRoIG9mIGFuIGFic3RyYWN0IGJyaWRpLCBzbyAnJ2R1J3UnJyBpcyBhcHBy b3ByaWF0ZS4KCkZvciBicmlkaSB0byBleGlzdCAob3IgYXQgbGVhc3QgdG8gaGF2ZSBhbnkgcmVs ZXZhbmNlKSwgdGhleSBtdXN0IGJlIHJlcHJlc2VudGVkIGJ5IHNvbWUgdGV4dCwgd2hldGhlciB0 aGlzIGlzIHNwZWVjaCwgdGhvdWdodCBvciB3cml0aW5nLiBUaGUgdGVybSDigJx0ZXh04oCdIGlz IG1pc2xlYWRpbmcgaWYgaXQgaXMgZXhwcmVzc2VkIG9ubHkgaW4gdGhlIG1pbmQgb2Ygc29tZW9u ZSwgYnV0IHRoZSB0ZXJtIG5vbmV0aGVsZXNzIGFwcGxpZXMuCgpPbmUgdXNlIG9mIHRoZSB4MiBv ZiAnJ2R1J3UnJyBpcyB0byBleHByZXNzIGluZGlyZWN0IHF1b3RhdGlvbjoKCicnLnVlIGRvIHB1 IGN1c2t1IGt1J2kgbG8gc2UgZHUndSBkbyBuZWxjaSBsbyBja2FmaScnIC0gIk9oISBCdXQgeW91 IHNhaWQgdGhhdCB5b3UgbGlrZWQgY29mZmVlIi4gSGVyZSwgdGhlIGV4cHJlc3NlZCBzZW50ZW5j ZSBpcyB0aGUgdGV4dCwgd2hlcmVpbiB0aGUgYnJpZGkgaXMgY29udGFpbmVkLgoKCgohIUxvamJh biBMZXNzb25zIC0gTGVzc29uIHR3ZW50eS1uaW5lIChzZW1hbnRpY3Mgb2YgY29tcGxleCBhYnN0 cmFjdGlvbnMpCgpBbGwgdGhlIHR5cGVzIG9mIGFic3RyYWN0aW9uIHdlIGhhdmUgc2VlbiB0aHVz ZmFyLCBldmVudHMgYW5kIGJyaWRpLCBoYXZlIGFsbCB0aGVpciBzdW10aSBwbGFjZXMgZmlsbGVk IC0gaWYgbm90IGV4cGxpY2l0bHksIHRoZW4gYnkgJyd6bydlJycuIEFzIHdlIHNoYWxsIHNlZSwg aXQncyBhIGRpZmZlcmVudCBzdG9yeSB3aGVuIGl0IGNvbWVzIHRvIHRoZSBmb2xsb3dpbmcgYWJz dHJhY3Rpb25zLiBMZXQncyBiZWdpbiB3aXRoIHRoZSBzaW1wbGVzdDoKCgoKX18nJ25pJydfXzog QW1vdW50IGFic3RyYWN0aW9uOiB4MSBpcyB0aGUgYW1vdW50IG9mIEJSSURJIG9uIHRoZSBzY2Fs ZSB4MiAKCgoKQW5kIGxldCdzIHNlZSBpdCBwdXQgdG8gdXNlOgoKJydtaSB6bWFkdSBkbyBsbyBu aSB4ZWtyaScnIC0gIkknbSBibGFja2VyIHRoYW4geW91LiIKCkEgJyduaScnLWFic3RyYWN0aW9u IGlzIHVzdWFsbHkgc29tZSBudW1iZXIsIGV4YWN0IG9yIGluZXhhY3QuIEFzIHRoZSBmb2xsb3dp bmcgZXhhbXBsZSBhYm92ZSBzaG93cywgd2hhdCBpcyBxdWFudGlmaWVkIG1heSBub3QgYWx3YXlz IGJlIHByYWN0aWNhbGx5IG1lYXN1cmFibGUuIEluIHByaW5jaXBsZSwgaG93ZXZlciwgYmxhY2tu ZXNzIGNvdWxkIGJlIG1lYXN1cmVkIHdpdGggc29tZSBvcHRpY2FsIGRldmljZS4gVGhlcmUgaXMg c29tZSBkaXNhZ3JlZW1lbnQgYWJvdXQgd2hldGhlciBpdCdzIGNvcnJlY3QgdG8gdXNlICcnbmkn JyB0byBxdWFudGlmeSBzb21ldGhpbmcgd2hpY2ggaXMgdW5tZWFzdXJhYmxlLCBsaWtlCgonJ2xl IG5pIG1pIHBlbmRvIGRvJycgLSAiSG93IG11Y2ggd2UgYXJlIGZyaWVuZHMiCgoKCkl0J3Mgd3Jv bmcgdG8gdXNlICcnbmknJyBhcyBhIHdheSB0byBlbnVtZXJhdGUgaG93IG1hbnkgb2JqZWN0cyBm aXQgYSBwcmVkaWNhdGUgLSBpdCdzIGFsd2F5cyBhYm91dCB0byB3aGljaCBleHRlbmQgY2VydGFp biBzdW10aSBmaXQgYSBwcmVkaWNhdGUuIFRodXM6ICcnZG8gbWxlY2EgbWkgbG8gbmkgc2UgcGFu emknJyBtZWFucyAiWW91IGFyZSBsZXNzIG9mIGEgcGFyZW50IHRoYW4gSSBhbSIsIGFuZCBub3Qg IllvdSBoYXZlIGZld2VyIGNoaWxkcmVuIHRoYW4gbWUiLgoKCgpUaGUgYWJzdHJhY3RvciAnJ25p JycgaXMgYSBncmVhdCB3YXkgdG8gZ2V0IHN0YXJ0ZWQgb24gdGhlIGNvbXBsaWNhdGVkIHdvcmQg JydjZSd1JycuCgpfXycnY2UndScnX18gUHNldWRvLXF1YW50aWZpZXIgYmluZGluZyBhIHZhcmlh YmxlIHdpdGhpbiBhbiBhYnN0cmFjdGlvbiB0aGF0IHJlcHJlc2VudHMgYW4gb3BlbiBwbGFjZS4K CkkgYXNzdW1lIHRoZSBkZWZpbml0aW9uIGlzbid0IHZlcnkgaGVscGZ1bCwgc28gaGVyZSdzIGEg ZmV3IGV4YW1wbGVzIHRvIHNlZSBpdCBpbiB1c2U6CgogJydkbyBtbGVjYSBtaSBsbyBuaSBjZSd1 IHBhbnppIHpvJ2UnJyA9ICJZb3UgYXJlIGxlc3MgdGhhbiBtZSBpbiBxdWFudGl0eTogQmVpbmcg YSBjaGlsZCBvZiBzb21lb25lIiA9ICJZb3UgYXJlIGxlc3Mgb2YgYSBjaGlsZCB0aGFuIEkgYW0i IAoKICcnZG8gbWxlY2EgbWkgbG8gbmkgem8nZSBwYW56aSBjZSd1JycgLSAiWW91IGFyZSBsZXNz IHRoYW4gbWUgaW4gcXVhbnRpdHk6IFNvbWV0aGluZyBiZWluZyBvbmUncyBjaGlsZCIgPSAiWW91 IGFyZSBsZXNzIG9mIGEgcGFyZW50IHRoYW4gSSBhbSIKCkluIG90aGVyIHdvcmRzLCBmaWxsaW5n ICcnY2UndScnIGluIGEgc3VtdGkgcGxhY2UgaW5zaWRlIGFuIGFic3RyYWN0aW9uIGFsbG93cyB0 aGUgc3VtdGkgcGxhY2UgdG8gcmVtYWluICJvcGVuIiAtIG5vdCBmaWxsZWQgYnkgYW55dGhpbmcs IG5vdCBldmVuIGEgJyd6bydlJycuIFRoaXMgb3BlbiBwbGFjZSBpcyByZW1uaXNjaWVudCBvZiB0 aGUgIngiZXMgaW4gdGhlIG5vcm1hbCBFbmdsaXNoIGRlZmluaXRpb25zIG9mIGxvamJhbmljIHNl bGJyaSAtIHNvbWV0aGluZyBfX3RvIGJlIGZpbGxlZF9fIGJ5IGEgc3VtdGkuIAoKRm9yIHRoZSBy ZWNvcmQsIHRoZSBqdWZyYSAnJ2NlJ3UgcGFuemkgem8nZScnIGluIHRoZSBmaXJzdCBleGFtcGxl IGFjdHVhbGx5IHJlZmVycyB0byB0d28gZGlzdGluY3QgYnJpZGk6ICcnbWkgcGFuemkgem8nZScn IGFuZCAnJ2RvIHBhbnppIHpvJ2UnJy4gU2luY2UgdGhlc2UgdHdvIGJyaWRpIGFyZSBjb25zaWRl cmVkIGRpZmZlcmVudCwgdGhlICcnem8nZScnIG5lZWQgbm90IHJlZmVyIHRvIHRoZSBzYW1lIG9i amVjdC4KClRodXMsIGFueSBhYnN0cmFjdGlvbiB3aXRoIGEgJydjZSd1JycgaW5zaWRlIGl0IGlz IGEgcHJlZGljYXRlLCB3aGVyZSB0aGUgJydjZSd1JyctcGxhY2VzIGFyZSBmaWxsYWJsZS4gU2lu Y2UgdGhlIGFic3RyYWN0b3JzICcna2EnJyBhbmQgJydzaSdvJycsIGlzIGFib3V0ICJmaXR0aW5n IGEgcHJlZGljYXRlIiwgYW5kIHNpbmNlIGEgJydjZSd1JycgaXMgbmVlZGVkIHRvIHRyYW5zZm9y bSBhbiBhYnN0cmFjdGlvbiBpbnRvIGEgcHJlZGljYXRlLCBhbGwgJydrYScnIGFuZCAnJ3NpJ28n Jy1hYnN0cmFjdGlvbnMgYWx3YXlzIGNvbnRhaW4gYXQgbGVhc3Qgb25lICcnY2UndScnLiBBICcn bmknJy1hYnN0cmFjdGlvbiBjYW4gY29udGFpbiBhICcnY2UndScnLCBidXQgbWF5IGFsc28gcXVh bnRpZnkgYW4gYWJzdHJhY3Rpb24gd2l0aCBhbGwgdGhlIHN1bXRpIHBsYWNlcyBmaWxsZWQsIGFz IGluICcnbGkgZHUnZSBuaSBkbyBuZWxjaSBsbyB2YW5qdScnLiAKCkluIHRoZSBhYnN0cmFjdGlv bnMgd2hlcmUgYSAnJ2NlJ3UnJyBpcyBwcmVzZW50LCBjYW4gdGhlIHBvc2l0aW9uIG9mIHRoZSAn J2NlJ3UnJyBiZSBlbGlkZWQsIGJ1dCBpcyB0aGVuIG1vc3Qgb2Z0ZW4gYXNzdW1lZCB0byBiZSB0 aGUgZmlyc3QgdW5maWxsZWQgc3VtdGkgcGxhY2UuIEluIHNvbWUgY29udGV4dHMsIGhvd2V2ZXIs IHRoZSAnJ2NlJ3UnJyBjYW4gYmUgYXNzdW1lZCB0byBiZSBzb21ld2hlcmUgZWxzZSwgYXMgZXhl bXBsaWZpZWQgd2l0aCAnJ21pIHptYWR1IGRvIGxvIG5pIGxvIGJydW5hIGN1IGpib2NyZScnLCB3 aGVyZSB0aGUgZWxpZGVkICcnY2UndScnIGlzIHByb2JhYmx5IGhpZGluZyBpbiAnJ2xvIGJydW5h IGJlIGNlJ3UnJy4KCgoKRXhhY3RseSBob3cgdGhlICcnY2UndScnJ2QgcGxhY2VzIGluc2lkZSBh biBhYnN0cmFjdGlvbiByZWxhdGVzIHdpdGggdGhlIG1haW4gYnJpZGkgaXMgc3BlY2lmaWVkIGJ5 IHRoZSBzZWxicmkgb2YgdGhlIG1haW4gYnJpZGkuIEZvciAnJ3ptYWR1JycgYW5kICcnbWxlY2En JywgdGhlICcnY2UndScnJ2QgcGxhY2VzIGFyZSB3aGF0J3MgcXVhbnRpZmllZCBieSB0aGUgc2Vs YnJpIG9mIHRoZSBtYWluIGJyaWRpLiBUaGUgcmVsYXRpb24gaXMgYWxtb3N0IGFsd2F5cyBvYnZp b3VzLCBidXQgYXMgd2Ugc2hhbGwgc2VlIGxhdGVyLCB0aGVyZSBpcyBvbmUga2luZCBvZiBhYnN0 cmFjdGlvbiwgd2hvc2UgJydjZSd1JycgZG8gbm90IHJlbGF0ZSB0byB0aGUgbWFpbiBicmlkaSBp biBhbnkgc3RyYWlnaHRmb3J3YXJkIHdheS4KCgoKQmVmb3JlIHRoYXQsIHRob3VnaCwgeW91IG5l ZWQgdG8gbGVhcm4gYWJvdXQgJydrYScnIC0gcHJvYmFibHkgdGhlIGFic3RyYWN0aW9uIHdob3Nl IHVuZGVyc3RhbmRpbmcgaGFzIGNoYW5nZWQgdGhlIG1vc3QgdGhlIHJlY2VudCB5ZWFycy4gWWV0 IGFnYWluIEkgcmVtaW5kIHlvdSB0aGF0IHRoaXMgdW5kZXJzdGFuZGluZyBpcyBub3Qgb2ZmaWNp YWwgTG9qYmFuLCBidXQgcmF0aGVyIGEgd2lkZXNwcmVhZCBjdXJyZW50IHVuZGVyc3RhbmRpbmcu IExldCdzIHNlZSB0aGUgb2ZmaWNpYWwgZ2xvc3M6CgpfXycna2EnJ19fIFByb3BlcnR5L3F1YWxp dHkgYWJzdHJhY3RvciAoLW5lc3MpOyB4MSBpcyBxdWFsaXR5L3Byb3BlcnR5IGV4aGliaXRlZCBi eSBCUklESS4KClVuZGVyIHRoZSB1bmRlcnN0YW5kaW5nIHdoaWNoIEkgd2lsbCB0ZWFjaCwgdGhp cyBnbG9zcyBpcyBtaWxkbHkgbWlzbGVhZGluZy4gSW5zdGVhZCwgJydrYScnIHNob3VsZCBwcm9i YWJseSBiZSBnbG9zc2VkIHN1Y2g6CgpfXycna2EnJ19fIFByZWRpY2F0ZSBhYnN0cmFjdG9yOiB4 MSBpcyB0aGUgcHJlZGljYXRlIG9mIEJSSURJIFtuZWVkcyBhdCBsZWFzdCBvbmUgb3BlbiB2YXJp YWJsZV0KCk11Y2ggbGlrZSBhICcnbmknJy1hYnN0cmFjdGlvbiwgYSAnJ2thJyctYWJzdHJhY3Rp b24gaXMgYSBwcmVkaWNhdGUgYW5kIHRoZXJlZm9yZSBuZWVkcyBhdCBsZWFzdCBvbmUgJydjZSd1 JycsIG9mdGVuIGVsaWRlZC4gVGhlIGRpZmZlcmVuY2UgaXMgcHVyZWx5IHNlbWFudGljOiAnJ25p JycgZm9jdXNlcyBvbiBob3cgbXVjaCBhIGNlcnRhaW4gc3VtdGkgZml0cyBhIHByZWRpY2F0ZSwg d2hlcmVhcyBhICcna2EnJy1hYnN0cmFjdGlvbiBpcyB0aGUgcHJlZGljYXRlIGl0c2VsZi4gTGlr ZSB3aXRoICcnbmknJywgaG93IHRoZSAnJ2NlJ3UnJ3Mgb2YgJydrYScnIHJlbGF0ZXMgdG8gdGhl IG1haW4gYnJpZGkgaXMgZGVmaW5lZCBieSB0aGUgc2VsYnJpIG9mIHRoZSBtYWluIGJyaWRpLiAK ClVuZGVyIHRoaXMgaW50ZXJwcmV0YXRpb24sICcna2EnJy1hYnN0cmFjdGlvbnMgZmlsbHMgbW9z dCBvZiB0aGUgc3VtdGkgcGxhY2VzIHdoaWNoIHNvbWV0aGluZyBpcyBkb2luZyBvciBiZWluZy4g RXhhbXBsZXMgYXJlIGFsd2F5cyBnb29kOgoKJydtaSBrYWtuZSBsbyBrYSAnJyBbY2UndV0gJydi YWpyYSBmaSBsbyBtaSBiaXJrYScnIC0gIkkgY2FuIHJ1biBvbiBteSBhcm1zIgoKT2YgY291cnNl LCBzZXZlcmFsICcnY2UndScnIGNhbiBiZSB1c2VkIHdpdGhpbiBhICcna2EnJy1hYnN0cmFjdGlv bi4gV2hhdCBkb2VzIHRoZSBmb2xsb3dpbmcgc2VudGVuY2UgbWVhbj8KCicnbWkgbG8gcGFtcGUn byBjdSBzaW14dSBsbyBrYSBjZSd1IGNlJ3UgZ2xldHUnJyAKCkFuc3dlcjogfn5ncmV5LGdyZXk6 JydNZSBhbmQgbXkgbG92ZXIgaGF2ZSBzZXggd2l0aCBlYWNoIG90aGVyIG11dHVhbGx5In5+CgoK ClRoZSBsYXN0IG9mIHRoZSBhYnN0cmFjdG9ycyB3ZSB0cmVhdCBoZXJlIGlzICcnc2knbycnLiBM aWtlICcna2EnJywgaXRzIGRlZmluaXRpb24gYXMgaXQgd2lsbCBiZSB0YXVnaHQgaGVyZSBpcyBk aWZmZXJlbnQgZnJvbSB0aGUgb2ZmaWNpYWwgZGVmaW5pdGlvbi4gRXR5bW9sb2dpY2FsbHksICcn c2knbycnIGRlcml2ZXMgZnJvbSAnJ3NpZGJvJycsICJpZGVhIiwgYW5kIHRoZSBvZmZpY2lhbCBn bG9zcyBvZiAnJ3NpJ28nJyByZWZsZWN0cyB0aGlzOgoKX18nJ3NpJ28nJ19fOiBJZGVhL2NvbmNl cHQgYWJzdHJhY3RvcjsgeDEgaXMgeDIncyBjb25jZXB0IG9mIEJSSURJLgoKVW5kZXIgdGhlIGN1 cnJlbnQgdXNhZ2Ugd2hpY2ggSSB3aWxsIHVzZSBhcyBzdGFuZGFyZCwgYSAnJ3NpJ28nJy1hYnN0 cmFjdGlvbiBpcyBsaWtlIGEgJydrYScnLWFic3RyYWN0aW9uLCBidXQgd2l0aCB0d28gaW1wb3J0 YW50IGRpZmZlcmVuY2VzLiAKCkZpcnN0bHksIGEgJydzaSdvJyctYWJzdHJhY3Rpb24gaGFzIGFs bCBpdHMgc3VtdGkgcGxhY2VzIGZpbGxlZCB3aXRoICcnY2UndScnIGJ5IGRlZmF1bHQsIHRoZXJl YnkgYmVpbmcgcmVsYXRlZCBsZXNzIHRvIGEgc3BlY2lmaWMgc2l0dWF0aW9uLCBhbmQgbW9yZSB0 byBhIGdlbmVyYWwgc2l0dWF0aW9uLiAKClNlY29uZGx5LCB0aGVyZSBpcyBub3QgbmVjZXNzYXJp bHkgYW55IHJlbGF0aW9uIGJldHdlZW4gdGhlICcnY2UndScnIGluc2lkZSB0aGUgJydzaSdvJyct YWJzdHJhY3Rpb24gYW5kIHRoZSBzdW10aSBvZiB0aGUgbWFpbiBicmlkaSwgYW5kIHRoZXJlZm9y ZSB0aGUgbWFpbiBzZWxicmkgZG9lcyBub3QgZGVmaW5lIHRoaXMgcmVsYXRpb24uCgpJbiBvcmRl ciB0byBleHBsYWluIG1vcmUgaW50dWl0aXZlbHkgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiAnJ2th JycgYW5kICcnc2knbycnLCBjb25zaWRlciB0aGUgZm9sbG93aW5nICB0d28gYnJpZGk6CgonJ21p IG5lbGNpIGxvIGthIGNlJ3UgY3Jpbm8nJywgd2hlcmUgdGhlICcnY2UndScnIHJlZmVycyB0byBh IHN1bXRpIGluIHRoZSBvdXRlciBicmlkaSwgbmFtZWx5ICcnbWknJywgdGh1cyBtZWFuaW5nOiAi SSBsaWtlIGJlaW5nIGdyZWVuIiwgdmVyc3VzCgonJ21pIG5lbGNpIGxvIHNpJ28gY2UndSBjcmlu bycnLCB3aGVyZSB0aGUgJydjZSd1JycgcmVtYWlucyBjb21wbGV0ZWx5IGFic3RyYWN0LCBtYWtp bmcgdGhlIGJyaWRpIG1lYW46ICJJIGxpa2UgZ3JlZW5uZXNzIgoKCgpCZWZvcmUgd2UgdmVudHVy ZSBvbiB0b3dhcmRzIHRoZSBuZXh0IGxlc3NvbiwgdGhlcmUncyBvbmUgd29yZCB3aGljaCBJIHRo aW5rIGRlc2VydmVzIGEgbW9yZSB0aG9yb3VnaCBleHBsYW5hdGlvbjogJydrYXUnJy4KCicna2F1 Jycgd2FzIGV4cGxhaW5lZCBpbiBsZXNzb24gdHdlbHZlLCBidXQgdGhlIHJlYWwgaW1wbGljYXRp b25zIG9mIGl0IHdhcyBub3QuIElmIHlvdSBoYXZlIGZvcmdvdHRlbiB3aGF0IGl0IG1lYW5zLCBJ IGFkdmljZSB5b3UgdG8gZ28gYmFjayBhbmQgc2VlLiBVbmZvcnR1bmF0ZWx5LCBJIGNhbid0IHBy ZXNlbnQgYSB0aGVvcnkgb24gd2hhdCAnJ2thdScnIGRvZXMgd2hlbiBpdCdzIHByZXNlbnQgaW4g dGhlIG1haW4gYnJpZGksIG9ubHkgb24gd2hhdCBpdCBkb2VzIGluc2lkZSBhbiBhYnN0cmFjdGlv bi4KCkEgYnJpZGkgd2l0aCBhYnN0cmFjdGlvbiBjb250YWluaW5nIGEgJydrYXUnJyBtYWtlcyB0 d28gY2xhaW1zOiBUaGUgYnJpZGkgaXRzZWxmIG1ha2VzIG9uZSBjbGFpbSBhcyB1c3VhbCwgYW5k IGltcGxpY2l0IGluIHRoZSBhYnN0cmFjdGlvbiBpcyBmdXJ0aGVybW9yZSB0aGUgY2xhaW0gdGhh dCB0aGUgd29yZCAnJ2thdScnIGlzIGF0dGFjaGVkIHRvIGhhcyBhIHJlYWwsIG5vbnplcm8gbWVh bmluZy4KClRoaXMgc2hvdWxkIGJlIGRlbW9uc3RyYXRlZDogVGhlIGJyaWRpICcnbWkgcHUgdmlz a2EgbG8gbnUgbWEga2F1IGNsaXZhIGxlIHNhbGNpJycgKEkgc2F3IHdobyBsZWZ0IHRoZSBwYXJ0 eSkgbWFrZXMgdHdvIGNsYWltcy4gRmlyc3QsIGl0IG1ha2VzIGFuIGltcGxpY2l0IGNsYWltIHRo YXQgdGhlICcnbWEnJyByZWZlcnMgdG8gc29tZXRoaW5nIHJlYWwuIFRoYXQgaXMsIHRoZSBicmlk aSBhY3R1YWxseSBjbGFpbXMgdGhhdCAnJ2RhIGNsaXZhIGxlIHNhbGNpJycgKFggbGVmdCB0aGUg cGFydHkpLiBTZWNvbmRseSwgdGhlIG1haW4gYnJpZGkgbWFrZXMgdGhlIGNsYWltIHRoYXQgd2hh dCB0aGUgJydtYScnIHJlZmVycyB0byBpcyB3aGF0IHdhcyBiZWluZyBzZWVuLCBvciBpbiBsb2pi YW4gJydtaSBwdSB2aXNrYSBsbyBudSBkYSBjbGl2YSBsZSBzYWxjaScnLiAoSSBzYXcgdGhhdCBY IGxlZnQgdGhlIHBhcnR5KQoKVGhpcyBwcmluY2lwbGUgaXMgbm90IHJlc3RyaWN0ZWQgdG8gdGhl IGFic3RyYWN0b3IgJydudScnLCBvciB0byB0aGUgcXVlc3Rpb24gd29yZCAnJ21hJycuIFRoZSBz YW1lIHByaW5jaXBsZSBjYW4gYmUgZXh0ZW5kZWQgdG8gYW55IG90aGVyIGFic3RyYWN0b3IgYW5k IGFueSBvdGhlciBxdWVzdGlvbiB3b3JkLCBhcyBpbiB0aGUgZm9sbG93aW5nIGJyaWRpOgoKJyds YSAuYmFiLiBuYSdlIGJpcnRpIGxvIGR1J3UgeHUga2F1IGxhIC5taWFzLiBwYW1wZSdvJycgKEJv YiBpc24ndCBzdXJlIHdoZXRoZXIgb3Igbm90IE1pYSBoYXMgYSBib3lmcmllbmQpIHN0YXRlcyBm aXJzdGx5IHRoYXQgJyd4dScnIGFwcGxpZXMsIHdoaWNoIG1lYW5zIHRoYXQgYSB0cnV0aCB2YWx1 ZSBjb3JyZWN0bHkgY2FuIGJlIGFzc2lnbmVkIHRvIHRoZSBicmlkaSwgYW5kIHNlY29uZGx5IHRo YXQgd2hhdCBCb2IgaXNuJ3Qgc3VyZSBhYm91dCBpcyB0aGUgY29ycmVjdCB0cnV0aCB2YWx1ZSBm b3IgdGhlIGJyaWRpLgoKJydrYXUnJyBjYW4gYWxzbyBiZSBhcHBsaWVkIHRvIGEgbm9uLXF1ZXN0 aW9uIHdvcmQuIFRoaXMgZG9lc24ndCByZWFsbHkgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIHRoZSB3 b3JkLiBUaGUgc2FtZSBwcm9jZWR1cmUgc3RpbGwgYXBwbGllczoKCicnZG8gY2EnbyBkanVubyBs byBkdSd1IGxhIGtyZXN0Y2VuIGthdSBjdSBjaW5iYSBsYSBhbicnID0gIllvdSBhbHJlYWR5IGtu b3cgdGhhdCBpdCB3YXMgS3Jpc3RpYW4sIHdobyBraXNzZWQgQW5uZS4iIHN0YXRlcyBmaXJzdGx5 IHRoYXQgJydsYSBrcmVzdGNlbiBjdSBjaW5iYSBsYSBhbicnIGFuZCB0aGVuIHRoYXQgJydkbyBj YSdvIGRqdW5vIGxvZHUndSBsYSBrcmVzdGNlbiBjdSBjaW5iYSBsYSBhbicnLgoKCgohIUxvamJh biBMZXNzb25zIC0gTGVzc29uIHRoaXJ0eSAodGhlIG5vdC1zby1jdXRlIGFzc29ydGVkIHdvcmRz KQoKWWVzLCB0aGlzIGxlc3NvbiBpcyB5ZXQgYW5vdGhlciB3aGljaCBmb2N1c2VzIG9uIGFzc29y dGVkIHdvcmRzLiBUaGlzIHRpbWUsIGhvd2V2ZXIsIHRoZSBjb250ZW50IG9mIHRoZSBsZXNzb24g aXMgbm90IGNob3NlbiBieSBjb21tb24gdXNhZ2U6IFVubGlrZSB3b3JkcyBsaWtlICcnamFpJycg YW5kICcnc2knJywgdGhlIGZvbGxvd2luZyB3b3JkcyBzZWUgbGl0dGxlIHVzYWdlIGluIG9yZGlu YXJ5IGNvbnZlcnNhdGlvbi4gU29tZSBvZiB0aGVtIGFyZSwgaG93ZXZlciwgaW1wb3J0YW50IHRv IHVuZGVyc3RhbmRpbmcgdGhlIGZvbGxvd2luZyBsZXNzb25zLCBhbmQgc28gdGhlc2Ugd29yZHMg bXVzdCBiZSBhd2t3YXJkbHkgcGxhY2VkIGJlZm9yZSB0aGVpciB1c2FnZSBpbiB0aGVzZSBsZXNz b25zLgoKCgpMZXQgdXMgYmVnaW4gd2l0aCAnJ3hpJyc7IGl0J3MgZWFzeS4KCl9fJyd4aScnX186 IFN1YnNjcmlwdC4gQ29udmVydHMgYW55IGZvbGxvd2luZyBudW1iZXIgc3RyaW5nIHRvIGEgc3Vi c2NyaXB0LCB3aGljaCBoYXMgdGhlIGdyYW1tYXIgb2YgYW4gYXR0aXR1ZGluYWwgKGllLiBwbGFj YWJsZSBwcmFjdGljYWxseSBhbnl3aGVyZSkuCgpUaGVyZSBhcmUgZmV3IG9mZmljaWFsbHkgZW5j b3VyYWdlZCB1c2VzIG9mICcneGknJywgYnV0IHByZWNpc2VseSBiZWNhdXNlIHRoZSBjb25zdHJ1 Y3QgJyd4aScnK251bWJlciBoYXMgdGhlIGZyZWUgZ3JhbW1hciBvZiBhbiBhdHRpdHVkaW5hbCwg dGhlIHBvc3NpYmxlIHVzZXMgb2YgJyd4aScnIGFyZSBhbG1vc3QgZW5kbGVzcy4gSW4gZ2VuZXJh bCwgaXQncyB1c2VkIHRvIGVudW1lcmF0ZSBhbnkgX193b3JkX18sIF9fdmFyaWFibGVfXyBvciBf X2dyYW1tYXRpY2FsIGNvbnN0cnVjdF9fLCBhcyBvcHBvc2VkIHRvIHdoYXQgaXQgcmVmZXJzIHRv LiBMZXQncyBzZWUgc29tZSBleGFtcGxlcy4KCmxhIHRzYW5pIGN1IGN1c2t1IHpvIGNvaSAgLmkg YmEgYm8gbGEgLnRyaWxpeW4uIGN1c2t1IGx1IC51aSBjb2kgbGEgdHNhbmkgY29pIGxhIGtsYWt1 IGxpJ3UgIC5pIGJhIGJvIGxhIGtsYWt1IGN1IHNwdWRhIGZpIGx1IGNvaSB0eS4geGkgcGEgLmUg dHkuIHhpIHJlIGRvJ3Ugem8nbyBsaSd1IC0gIlRzYW5pIHNhaWQgImhpIiwgdGhlbiBUcmlsaXlu IHNhaWQgIkhleSBUc2FuaSwgaGV5IEtsYWt1IDopIiwgdGhlbiBLbGFrdSBhbnN3ZXJlZCAiSGVs bG8gVDEgYW5kIFQyIDpQIiIKCkJlY2F1c2UgaXQncyB0aGUgc3RhbmRhcmQgdGhhdCAnJ3R5Licg cmVmZXJzIHRvIHRoZSBsYXN0IHN1bXRpIHdoaWNoIGJlZ2FuIHdpdGggVCwgJyd0eScnIGJ5IGl0 c2VsZiBhcyBzYWlkIGJ5IEtsYWt1IHdvdWxkIGhhdmUgcmVmZXJyZWQgdG8gVHNhbmkuIFR3byBf X2RpZmZlcmVudF9fICcndHkuJycgY2FuIGJlIG1hZGUgYnkgc3Vic2NyaXB0aW5nIHdpdGggJyd4 aScnLgoKSWYgdGhlIHJhcmUgc2l0dWF0aW9uIGFyaXNlcyB0aGF0IHdlIG5lZWQgbW9yZSB2YXJp YWJsZXMgb2YgdGhlIHR5cGUgJydkYScnIG9yICcnYnUnYScnIHRoYXQgdGhlcmUgYXJlIGluIHRo ZSBsYW5ndWFnZSwgYW4gaW5maW5pdGUgbnVtYmVyIGNhbiBiZSBtYWRlIGJ5IHNpbXBseSBzdWJz Y3JpcHRpbmcgYW55IGV4aXN0aW5nIHdpdGggYSBudW1iZXIuIE5vdGUgdGhhdCBhIG5vbi1zdWJz Y3JpcHRlZCB2YXJpYWJsZSBpcyBub3QgZGVmaW5lZCBhZiBiZWluZyBlcWl1dmFsZW50IHRvIGFu eSBzdWJzY3JpcHRlZCBvbmUuIFRoYXQgaXM6ICcndHknJyBpcyBub3QgYWx3YXlzIGVxdWFsIHRv ICcndHkgeGkgcGEnJyBvciAnJ3R5IHhpIG5vJycgb3IgYW55dGhpbmcgb2YgdGhlIHNvcnQuIEkg ZXhwZWN0IHRoaXMgdG8gYmUgcmFyZWx5IHVzZWQsIGJlY2F1c2UgYW55IHNlbnRlbmNlIHdpdGgg bW9yZSB0aGFuIDMgJydkYScnLWxpa2Ugd29yZHMgb3IgbW9yZSB0aGFuIDEwICcna28nYScnLWxp a2Ugd29yZHMgd291bGQgYmUgaGFyZCB0byBrZWVwIHRyYWNrIG9mLgoKCgpTZWNvbmQsIHdlIGhh dmUgJydraScnLCBvZiB3aGljaCBJIGFtIG5vdCBhd2FyZSBvZiBhIHNpbmdlIHVzYWdlIGluIG15 IHRpbWUgb24gSVJDOyBwcm9iYWJseSBub3QgYmVjYXVzZSB0aGUgd29yZCdzIHVzZWxlc3MsIGJ1 dCBiZWNhdXNlIGZldyBMb2piYW5pYyB0ZXh0cyBhcmUgb2YgdGhlIGtpbmQgd2hlcmUgeW91IG5l ZWQgaXQuCgpfXycna2knJ19fICJTdGlja3kgdGVuc2UiLiBTZXQvdXNlIHRlbnNlIGRlZmF1bHQ7 IGVzdGFibGlzaGVzIG5ldyBvcGVuIHNjb3BlIHNwYWNlL3RpbWUvbW9kYWwgcmVmZXJlbmNlIGJh c2UuCgpBbnkgcm93IG9mIHRlbnNlIHdvcmRzIGNhbiBiZSBzdWZmaXhlZCB3aXRoICcna2knJyB0 byBtYWtlIHRoZSB0ZW5zZShzKSBhcHBseSB0byBhbGwgZm9sbG93aW5nIGJyaWRpLiBXaGVuLCBm b3IgaW5zdGFuY2UsIHRlbGxpbmcgYSBzdG9yeSwgdGhpcyBjYW4gYmUgdXNlZCB0byBtYWtlIGV4 cGxpY2l0IHRoYXQgdGhlIGRlZmF1bHQgdGltZSAtIHRoZSB0aW1lIGFzIG1lYW50IHdpdGhvdXQg YW55IHRlbnNlIHdvcmRzIC0gaXMgdGhlIHRpbWUgdGhlIHN0b3J5IGlzIHBsYWNlZCBpbi4gVXN1 YWxseSwgdGhpcyB3aWxsIG5vdCBiZSBuZWNlc3Nhcnk7IGJlZ2lubmluZyBhIGZhaXJ5dGFsZSB3 aXRoICcncHUgenUgdnUga3UnJywgb25lIGNhbiBhc3N1bWUgdGhhdCB0aGUgZW50aXJlIHRhbGUg aXMgaGFwcGVuaW5nIGEgbG9uZyB0aW1lIGFnbyBhbmQgZmFyIGF3YXkuIExldCdzIGhhdmUgYW4g ZXhhbXBsZToKCicncHUgenUgdnUga2kga3UgemFzdGkgZmEgbG8gcHVrY2xpdGUgamUgY21hbHUg bml4bGkgZ29pIGtv4oCZYSAgLmkgcm8gZGEgcG9pICcnWycncHUgenUgdnUnJ10nJyB2aXNrYSBr b+KAmWEgY3UgbmVsY2kga2/igJlhJycgLSAiT25jZSB1cG9uIGEgdGltZSB0aGVyZSB3YXMgYSBz d2VldCwgbGl0dGxlIGdpcmwuIEV2ZXJ5b25lIHdobyBzYXcgaGVyIGxpa2VkIGhlciIuIFRoZSAn J2tpJycgYWxsb3dzIHVzIHRvIGVsaWRlIHRoZSB0aHJlZSB0ZW5zZXMgaW4gdGhlIHNlY29uZCBi cmlkaSwgYW5kIGluIGFsbCB0aGUgYnJpZGkgdG8gZm9sbG93LgoKU28sIGlmIGEgYnVuY2ggb2Yg dGVuc2VzIGhhdmUgYmVlbiBtYWtlIHN0aWNreSB3aXRoICcna2knJywgaG93IGRvIHdlIHVuc3Rp Y2sgdGhlbT8gU2ltcGxlIHVzZSAnJ2tpJycgYnUgaXRzZWxmLCBhbmQgYWxsIHN0aWNreSB0ZW5z ZXMgYXJlIG1hZGUgdW5zdGlja3kuCgpMYXN0bHksIHNldmVyYWwgc2V0cyBvZiB0ZW5zZXMgY2Fu IGJlIG1hZGUgc3RpY2t5IGJ5IHN1YnNjcmlwdGluZyAnJ2tpJycuIElmIHRoZXJlIGFyZSBzZXZl cmFsIG9mIHN1Y2ggc2V0cyBpbiB1c2FnZSBhdCBhbnkgZ2l2ZW4gdGltZSwgb25lIGNhbiB1c2Ug dGhlIHN1YnNjcmlwdGVkICcna2knJ3MgdG8gbWFrZSB0aGUgY29ycmVzcG9uZGluZyBzZXQgb2Yg dGVuc2VzIGFwcGx5LiBVbnN1YnNjcmlwdGVkICcna2knJyBhbG9uZSBzdGlsbCBtYWtlcyBhbGwg dGVuc2Ugc3RpY2tpbmVzcyBkaXNhcHBlYXIsIHNvIHlvdSBoYXZlIHRvIGJlIGNhcmVmdWwgbm90 IHRvIHVzZSAnJ2tpJycgdW5zdWJzY3JpcHRlZCBpZiB5b3UgcGxhbiBvbiB1c2luZyBzZXZlcmFs IHNldHMgb2YgdGVuc2VzLgoKCgpDaGFuZ2luZyBzdWJqZWN0LiBUaGVyZSdzIGEgc2V0IG9mIHN1 bXRjaXRhIHdoaWNoIGFyZSBvZnRlbiB1c2VkLCBidXQgd2hpY2ggSSBkYXJlIG5vdCB0cnkgdG8g ZGVmaW5lIGlmIG5vdCB1bmRlciB0aGUgZGlzY2xhaW1lciBvZiBwYXJ0IHRocmVlLiBMZXQncyBz ZWUgb2ZmaWNpYWwgZGVmaW5pdGlvbnMgZm9yIHR3byBvZiB0aGVtIGZpcnN0LgoKX18nJ2NhJ2En J19fOiBtb2RhbCBhc3BlY3Q6IGFjdHVhbGl0eS9vbmdvaW5nIGV2ZW50LiBCcmlkaSBoYXMvaXMv d2lsbCBoYXBwZW4gZHVyaW5nIHVuZGVyIHRoZSBjaXJjdW1zdGFuY2VzIG9mIHtzdW10aX0KCl9f JydrYSdlJydfXzogbW9kYWwgYXNwZWN0OiBpbm5hdGUgY2FwYWJpbGl0eTsgcG9zc2libHkgdW5y ZWFsaXplZC4gQnJpZGkgaXMgcG9zc2libGUgdW5kZXIgdGhlIGNpcmN1bXN0YW5jZXMgb2Yge3N1 bXRpfQoKTGV0J3MgZmlyc3QgY29udHJhc3QgJydjYSdhJycgd2l0aCAnJ2thJ2UnJy4gJydrYSdl JycgbWVhbnMgdGhhdCB0aGUgYnJpZGkgaXMgInBvc3NpYmxlIGlmIHRoZSBldmVudCBvZiBTVU1U SSBoYXMvaXMvd2lsbCBvY2N1ciIuICcnY2EnYScnIGJ5IGNvbnRyYXN0LCBtZWFucyB0aGF0IHRo ZSBicmlkaSAiaGFzLCBpcywgb3Igd2lsbCBoYXBwZW4gaWYgdGhlIGV2ZW50IG9mIFNVTVRJIGhh cy9pcy93aWxsIG9jY3VyIi4gCgpMaWtlIGFsbCBzdW10Y2l0YSwgdGhlaXIgY29ycmVzcG9uZGlu ZyBzdW10aSBjYW4gYmUgZWxpZGVkIGlmIHRoZSBzdW10Y2l0YSBpcyBwbGFjZWQgYmVmb3JlIHRo ZSBzZWxicmk6CgonJ2xlIHZpIHNvdmRhIGthJ2UgZnVsdGEgLmkgamEnbyBibyByaSBmdXNyYScn IC0gIlRoaXMgZWdnIGZsb2F0cy4gVGhlcmVmb3JlLCBpdCdzIHJvdHRlbiIuCgpCeSB1c2luZyAn J2thJ2UnJywgdGhpcyBzZW50ZW5jZSBkb2VzIG5vdCBzdGF0ZSB0aGF0IHRoZSBlZ2cgaGFzIGZs b2F0ZWQsIG9yIGV2ZXIgd2lsbCBmbG9hdCwgYnV0IHJhdGhlciB0aGF0IGl0IGNvdWxkIGZsb2F0 LgoKCgpfXycncHUnaScnX186IG1vZGFsIGFzcGVjdDogY2FuIGFuZCBoYXM7IGRlbW9uc3RyYXRl ZCBwb3RlbnRpYWwuIEJyaWRpIGNvdWxkIG9yIGNvdWxkIG5vdCBoYXBwZW4sIGJ1dCBpbiBmYWN0 IGl0IGlzL2RpZC93aWxsIGhhcHBlbiB1bmRlciB0aGUgY2lyY3Vtc3RhbmNlIG9mIHtzdW10aX0K Cl9fJydudSdvJydfXzogbW9kYWwgYXNwZWN0OiBjYW4gYnV0IGhhcyBub3Q7IHVucmVhbGl6ZWQg cG90ZW50aWFsLiBCcmlkaSBpcyBwb3NzaWJsZSwgYnV0IGlzL3dpbGwvaGF2ZSBub3QgaGFwcGVu ZWQgdW5kZXIge3N1bXRpfQoKCgpVbmRlcnN0YW5kaW5nICcna2EnZScnIGFuZCAnJ2NhJ2EnJywg JydudSdvJycgc2ltcGx5IG1lYW5zICcna2EnZSBqZSBuYSBrdSBjYSdhJycsIGFuZCAnJ3B1J2kn JyBtZWFucyAnJ2NhJ2EgamUga2EnZSBuYSBrdScnLiAKCkhpc3RvcmljYWxseSwgdGhlc2UgZm91 ciB3b3JkcyB3YXMgdGVuc2Ugc3VtdGNpdGEgLSB0aGVyZWZvcmUgdGhlICJtb2RhbCBhc3BlY3Qi IGluIHRoZWlyIGRlZmluaXRpb25zLiBBbGwgdGVuc2Ugc3VtdGNpdGEgd2FzIHRoZW4gbm90IGNv bnNpZGVyZWQgc3VtdGNpdGEgYXQgYWxsLCBidXQgcmF0aGVyICJzZWxicmkgdGNpdGEiLiBBIG1v ZGVybiB1bmRlcnN0YW5kaW5nIG9mIExvamJhbiBpcyBnYWluaW5nIHBvcHVsYXJpdHksIHdoZXJl aW4gdGhlIHRlbnNlIHN1bXRjaXRhIGFyZSBjb25zaWRlcmVkIHN1bXRjaXRhLCBhbG1vc3QgZXhh Y3RseSBsaWtlIHRoZSBCQUksIGFuZCBpbiB3aGVyZSBzZWxicmkgdGNpdGEgYXJlIG5vdCB1c2Vk LiAKCkJlY2F1c2Ugb2YgdGhlc2UgZm91ciB3b3JkcycgaGlzdG9yeSBhcyBzZWxicmkgdGNpdGEs IHRoZXkgY2FuIGJlIGZyZWVseSBlbGlkZWQgLSBpbmRlZWQsIHNpbmNlIG9uZSBvZiB0aGUgZm91 ciB3b3JkcyBhbHdheXMgYXBwbGllcywgb25lIGlzIGFsd2F5cyBhc3N1bWVkIHRvIGJlIGVsaWRl ZC4gVGhpcyBpcyBtb3N0IG9mdGVuICcnY2EnYScnLiBJbmRlZWQsIGl0J3Mgc28gb2Z0ZW4gJydj YSdhJycgdGhhdCBvbmUgY291bGQgd29uZGVyIHdoeSAnJ2NhJ2EnJyBpcyBub3QgdGhlIGRlZmF1 bHQuCgpPbmUgcmVhc29uIGlzIHRoYXQgc29tZSBzZWxicmkgaGFzIHR3byB1c2VmdWwgZGVmaW5p dGlvbnMsIG9uZSB3aGljaCBpbXBsaWVzICcna2EnZSBTRUxCUkknJyBhbmQgb25lIHdoaWNoIGlt cGxpZXMgJydjYSdhIFNFTEJSSScnLiBGb3IgYW4gZXhhbXBsZSwgc2VlICcnZmFzbnUnJywgd2hp Y2ggY2FuIG1lYW4gIngxIGlzIGhhcHBlbmluZyIgb3IgIngxIGlzIGFuIGV2ZW50Iiwgd2hlcmUg dGhlIGZpcnN0IGltcGxpZXMgJydjYSdhIGZhc251JycgYW5kIHRoZSBzZWNvbmQgJydrYSdlIGZh c251JycKCkFub3RoZXIgdXNlIG9mICJpbXBsaWVkICcna2EnZScnIiBpcyBhcyBhIHdheSB0byBl c2NhcGUgYW4gYW5ub3lpbmcgcGhpbG9zb3BoaWNhbCBwcm9ibGVtIGluIHRoZSBsYW5ndWFnZS4g QSBzZWxicmkgb25seSBhcHBsaWVzIGlmIGFsbCBpdHMgcGxhY2VzIGFwcGx5IHRvby4gRm9yIHNv bWUgc2VsYnJpLCBsaWtlICcna2FicmknJywgdGhhdCdzIGEgcHJvYmxlbS4KCl9fJydrYWJyaScn X18geDEgaXMgYSBjdXAgY29udGFpbmluZyBjb250ZW50cyB4MiBhbmQgb2YgbWF0ZXJpYWwgeDMK ClRoZSBkZWZpbml0aW9uIHN1Z2dlc3RzIHRoYXQgaWYgdGhlIGNvbnRlbnQgb2YgdGhlIGN1cCBp cyByZW1vdmVkLCB0aGUgeDIgbm8gbG9uZ2VyIGFwcGxpZXMgYW5kIGl0IHN0b3BzIGJlaW5nICcn bG8ga2FicmknJy4gSW1wbGllZCAnJ2thJ2UnJywgb3IgbW9yZSBmaXR0aW5nbHksICcnbnUnbycn LCBsZXQgdXMgZXNjYXBlIHRoYXQgcHJvYmxlbS4KCgoKCgohISFFbmQgb2YgbGVzc29ucwoKU29y cnksIGJ1dCBhcyBvZiBub3csIHRoZXJlIGFyZSBubyBtb3JlIGxlc3NvbnMgaW4gdGhpcyBzZXJp ZXMuIFBlcmhhcHMgbW9yZSB3aWxsIGJlIGFkZGVkIGxhdGVyLiBNZWFud2hpbGUsIGZlZWwgZnJl ZSB0byB2aXNpdCAoKHdhdmVsZXNzb25zY29udGludWVkfHRoZSBmaXJzdCBwYXJ0IG9mIFdhdmVs ZXNzb25zY29udGludWVkKSkgb3IgKCh3YXZlbGVzc29uc2NvbnRpbnVlZHxUaGUgc2Vjb25kIHBh cnQgb2YgV2F2ZWxlc3NvbnNjb250aW51ZWQpKS4KCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpXaWtpY2hhbmdlcyBtYWlsaW5nIGxpc3QKV2lraWNoYW5n ZXNAbG9qYmFuLm9yZwpodHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lr aWNoYW5nZXMK