Received: from localhost ([::1]:33379 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1UcEap-0000QR-SL; Tue, 14 May 2013 05:44:35 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:47239 helo=digitalkingdom.org) by stodi.digitalkingdom.org with smtp (Exim 4.76) (envelope-from ) id 1UcEaa-0000QL-Qu for wikichanges@lojban.org; Tue, 14 May 2013 05:44:29 -0700 Received: by digitalkingdom.org (sSMTP sendmail emulation); Tue, 14 May 2013 05:44:20 -0700 From: "Apache" Date: Tue, 14 May 2013 05:44:20 -0700 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 leçons wave en français was changed by daeldir at 14:44 CEST Comment: Précisions sur le R français+rédaction You can view the page by following this link: http://lojban.org/tiki/le%C3%A7ons%20wave%20en%20fran%C3%A7ais [...] Content analysis details: (2.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: lojban.org] 0.0 RCVD_IN_DNSWL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to DNSWL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [173.13.139.235 listed in list.dnswl.org] 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] =?utf-8?q?Wiki_page_le=C3=A7ons_wave_en_fran=C3=A7a?= =?utf-8?q?is_changed_by_daeldir?= 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 VGhlIHBhZ2UgbGXDp29ucyB3YXZlIGVuIGZyYW7Dp2FpcyB3YXMgY2hhbmdlZCBieSBkYWVsZGly IGF0IDE0OjQ0IENFU1QKQ29tbWVudDogUHLDqWNpc2lvbnMgc3VyIGxlIFIgZnJhbsOnYWlzK3LD qWRhY3Rpb24KCllvdSBjYW4gdmlldyB0aGUgcGFnZSBieSBmb2xsb3dpbmcgdGhpcyBsaW5rOgog Cmh0dHA6Ly9sb2piYW4ub3JnL3Rpa2kvbGUlQzMlQTdvbnMlMjB3YXZlJTIwZW4lMjBmcmFuJUMz JUE3YWlzCgpZb3UgY2FuIHZpZXcgYSBkaWZmIGJhY2sgdG8gdGhlIHByZXZpb3VzIHZlcnNpb24g YnkgZm9sbG93aW5nIHRoaXMgbGluazogCmh0dHA6Ly9sb2piYW4ub3JnL3Rpa2kvdGlraS1wYWdl aGlzdG9yeS5waHA/cGFnZT1sZSVDMyVBN29ucyUyMHdhdmUlMjBlbiUyMGZyYW4lQzMlQTdhaXMm Y29tcGFyZT0xJm9sZHZlcj0yNCZuZXd2ZXI9MjUKCgoqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpUaGUgY2hhbmdlcyBpbiB0aGlzIHZl cnNpb24gZm9sbG93IGJlbG93LCBmb2xsb3dlZCBhZnRlciBieSB0aGUgY3VycmVudCBmdWxsIHBh Z2UgdGV4dC4KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioKCgorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLSstKwpAQCAtTGluZXM6IDk0LTk4IGNoYW5nZWQgdG8gK0xpbmVzOiA5NC05 OCBAQAorLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst Ky0rLSstKwpWb3VzIG4nYXZleiBwYXMgw6AgYXZvaXIgdW5lIHByb25vbmNpYXRpb24gcHLDqWNp c2UgZHUgbG9qYmFuLCBjYXIgY2hhcXVlIHBob27DqG1lIGVzdCBkaXN0cmlidcOpIGRlIG1hbmnD qHJlIMOgIGNlIHF1J2lsIHNvaXQgZGlmZmljaWxlIGRlIGNvbmZvbmRyZSBkZXV4IHNvbnMuIENl Y2kgc2lnbmlmaWUgcXVlLCBwb3VyIHVuZSBsZXR0cmUsIHBsdXTDtHQgcXUndW5lIHByb25vbmNp YXRpb24gwqvCoGNvcnJlY3RlwqDCuywgaWwgeSBhIHVuZSBnYW1tZSBkZSBzb25zIGFjY2VwdMOp cyDigJMgbGUgcHJpbmNpcGUgZ8OpbsOpcmFsIMOpdGFudCBxdSd1biBzb24gZXN0IGJvbiB0YW50 IHF1J2lsIG5lIHJlc3NlbWJsZSBwYXMgdHJvcCDDoCB1bmUgYXV0cmUgbGV0dHJlLiBQYXIgZXhl bXBsZSwgbGUgwqvCoHLCoMK7IGxvamJhbiBwZXV0IMOqdHJlIHByb25vbmPDqSBjb21tZSBlbiBh bmdsYWlzLCBpdGFsaWVuLCBmcmFuw6dhaXPigKYgCgotIEJpZW4gcXVlIGxlIHIgZnJhbmFpcyBz b2l0IGNvbnNpZHIgY29tbWUgdW4gJydyJycsIGNlbHVpLWNpIGVzdCBhdXNzaSBwcm9jaGUgZHUg Jyd4JycgbG9qYmFuLiBTaSB2b3VzIGRzaXJleiBjb21wcmVuZHJlIGxhIGRpZmZyZW5jZSBlbnRy ZSBjZXMgZGV1eCBzb25zLCBvYnNlcnZleiBsYSBkaWZmcmVuY2UgZW50cmUgbGUgc29uICcnZCcn IGV0IGxlIHNvbiAnJ3QnJzogbCd1biBlc3Qgdm9jYWxpcywgbCdhdXRyZSBub24uIExhIG1tZSBk aXN0aW5jdGlvbiBzJ29wcmUgZW50cmUgbGUgJydyJycgZXQgbGUgJyd4JycuIFF1b2kgcXUnaWwg ZW4gc29pdCwgaWwgZXN0IGNvbnNlaWxsIGQnb3B0ZXIgcG91ciB1biByIG1vaW5zIGFtYmlndS4g Q29uY2VybmFudCBsZSByIHJvdWwsIGRldXggcHJvbm9uY2lhdGlvbnMgc29udCBwb3NzaWJsZTog bGUgciBlc3BhZ25vbCwgc2l0dSAgbCdhdmFudCBkdSBwYWxhaXMsIGV0IGxlIHIgZ3V0dXJhbCwg ZG9udCB1biBwYXJmYWlzIGV4ZW1wbGUgc2UgdHJvdXZlIGVuIEVkaXQgUGlhZi4gTGUgbG9qYmFu IGVzdCBiZWF1Y291cCBtb2lucyBzdHJpY3QgcXVlIGwnZXNwYWdub2wgcXVhbmQgIGxhIHByb25v bmNpYXRpb24gZGUgY2V0dGUgbGV0dHJlLCBldCB2b3VzIHBvdXZleiBkb25jIGNob2lzaXIgY2Vs bGUgcXVpIHZvdXMgcG9zZSBsZSBtb2lucyBkZSBzb3VjaXMuCisgQ2VwZW5kYW50LCBiaWVuIHF1 ZSBsZSBbaHR0cHM6Ly9mci53aWtpcGVkaWEub3JnL3dpa2kvQ29uc29ubmVfZnJpY2F0aXZlX3V2 dWxhaXJlX3ZvaXMlQzMlQTllfHIgZnJhbmFpc10gc29pdCBjb25zaWRyIGNvbW1lIHVuICcncicn LCBjZWx1aS1jaSBlc3QgYXVzc2kgcHJvY2hlIGR1IFtodHRwczovL2ZyLndpa2lwZWRpYS5vcmcv d2lraS9Db25zb25uZV9mcmljYXRpdmVfdXZ1bGFpcmVfc291cmRlfCcneCcnXSBsb2piYW4uIFBv dXIgY29tcHJlbmRyZSBsYSBkaWZmcmVuY2UgZW50cmUgY2VzIGRldXggc29ucywgb2JzZXJ2ZXog bGEgZGlmZnJlbmNlIGVudHJlIGxlIHNvbiAnJ2QnJyBldCBsZSBzb24gJyd0Jyc6IGwndW4gZXN0 IHZvY2FsaXMsIGwnYXV0cmUgbm9uLiBMYSBtbWUgZGlzdGluY3Rpb24gcydvcHJlIGVudHJlIGxl ICcncicnIGZyYW5haXMgZXQgbGUgJyd4JycuIEplIHZvdXMgY29uc2VpbGxlIGRvbmMgZCdvcHRl ciBwb3VyIHVuIHIgbW9pbnMgYW1iaWd1LiBDb25jZXJuYW50IGxlIHIgcm91bCwgZGV1eCBwcm9u b25jaWF0aW9ucyBzb250IHBvc3NpYmxlOiBsZSBbaHR0cHM6Ly9mci53aWtpcGVkaWEub3JnL3dp a2kvQ29uc29ubmVfcm91bCVDMyVBOWVfYWx2JUMzJUE5b2xhaXJlX3ZvaXMlQzMlQTllfHJdIGVz cGFnbm9sLCBzaXR1ICBsJ2F2YW50IGR1IHBhbGFpcywgZXQgdW4gW2h0dHBzOi8vZnIud2lraXBl ZGlhLm9yZy93aWtpL0NvbnNvbm5lX3JvdWwlQzMlQTllX3V2dWxhaXJlX3ZvaXMlQzMlQTllfHJd IHBsdXMgcHJvY2hlIGRlIGxhIGdvcmdlLCBjb21tZSBjZWx1aSBkJ0VkaXQgUGlhZi4gQ2hvaXNp c3NleiBsYSBwcm9ub25jaWF0aW9uIHF1aSB2b3VzIHBvc2UgbGUgbW9pbnMgZGUgcHJvYmxtZSwg dGFudCBxdSdlbGxlIG5lIHNlIGNvbmZvbmQgcGFzIGF2ZWMgdW5lIGF1dHJlIGxldHRyZSBkdSBs b2piYW4uCgpGYWl0ZXMgYXVzc2kgYXR0ZW50aW9uIMOgIGJpZW4gYXBwdXllciBsZXMgdm95ZWxs ZXMg4oCTIG1pcyDDoCBwYXJ0IGxlIMKrwqAnJ3knJ8KgwrsgcXVpICcnZG9pdCcnIMOqdHJlIGNv dXJ0LiBMYSByYWlzb24gZW4gZXN0IHF1ZSBsZXMgdm95ZWxsZXMgwqvCoG5vbi1sb2piYW7CoMK7 IHBldXZlbnQgw6p0cmUgdXRpbGlzw6llcyBwb3VyIHPDqXBhcmVyIGxlcyBjb25zb25uZXMgcGFy IGxlcyBwZXJzb25uZXMgcXVpIG4nYXJyaXZlbnQgcGFzIMOgIGxlcyBwcm9ub25jZXIuIFBhciBl eGVtcGxlLCBzaSB2b3VzIGF2ZXogdW4gcHJvYmzDqG1lIGF2ZWMgbGUgwqvCoCcnemQnJ8Kgwrsg ZGUgwqvCoCcnemRhbmknJ8KgwrsgKG1haXNvbiksIHZvdXMgcG91dmV6IGRpcmUgwqvCoHrJqmRh bmnCoMK7LCBhdmVjIHVuIMKrwqDJqsKgwrsgdHLDqHMgY291cnQsIG1haXMgbGUgwqvCoGnCoMK7 IGZpbmFsIGxvbmcuIAoKCgoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioKVGhlIG5ldyBwYWdlIGNvbnRlbnQgZm9sbG93cyBiZWxvdy4K KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioKCntCT1godGl0bGU9IlRyYXZhaWwgZW4gY291cnMiKX0KCkNldHRlIHBhZ2UgZXN0IHVuZSB0 cmFkdWN0aW9uIGVuIGNvdXJzIGRlICgod2F2ZWxlc3NvbnNjb250aW51ZWQpKSBlbiBmcmFuw6dh aXMuIExhIG1hamV1cmUgcGFydGllIGRlIGxhIHBhZ2UgZXN0IGVuY29yZSBlbiBhbmdsYWlzLiBB dSBmdXIgZXQgw6AgbWVzdXJlIGRlIGxhIHRyYWR1Y3Rpb24sIGNldHRlIG5vdGUgc2VyYSBtaXNl IMOgIGpvdXIgcG91ciBpbmRpcXVlciBsJ8OpdGF0IGQnYXZhbmNlbWVudCBkZXMgbGXDp29ucy4g CgoKCsOJdGF0IGFjdHVlbMKgOiBMZcOnb24gesOpcm8gdHJhZHVpdGUgbGl0dMOpcmFsZW1lbnQu IE7DqWNlc3NpdGUgdW5lIGFkYXB0YXRpb24gYXUgZnJhbsOnYWlzLCBwdWlzIHVuZSB2YWxpZGF0 aW9uIHBhciBkZXMgbG9qYmFuaXN0ZXMgY29uZmlybcOpcy4uCgp7Qk9YfSAKCgoKIUxlcyBsZcOn b25zIFdhdmUgY29udGludcOpZXPCoDoKCiEhIVLDqWRpZ8OpZXMgcGFyIGxhIGtsYWt1LCBhdmVj IGwnYWlkZSBkZSBsb2piYW5pc3RlcyB2YXJpw6lzLiBCYXPDqWUgc3VyIGxlIHRyYXZhaWwgZGUg bGEgLmtyaWJhY3IuIFByaW50ZW1wcyAyMDEzLgoKVHJhZHVpdGVzIGRlIGwnYW5nbGFpcyB2ZXJz IGxlIGZyYW7Dp2FpcyBwYXIgRGFlbGRpci4KCgoKISFMZcOnb25zIGRlIGxvamJhbiDigJMgbGXD p29uIHrDqXJvOiBhdmFudCBwcm9wb3MKCkNlcyBsZcOnb25zIHNvbnQgdW5lIHRlbnRhdGl2ZSBk ZSBkw6l2ZWxvcHBlciBsZXMgwqvCoExlw6dvbnMgZGUgR29vZ2xlIFdhdmXCoMK7LCB1biBleGNl bGxlbnQgZGlkYWN0aWNpZWwgY29uc2FjcsOpIGF1IGxvamJhbiwgw6ljcml0IHBhciBrcmliYWNy LCB4YWxibywgZXQgZCdhdXRyZXMsIHF1aSwgaMOpbGFzLCBuZSBjb3V2cmFpdCBxdWUgbGVzIHF1 YXRyZXMgcHJlbWllcnMgY2hhcGl0cmVzIGR1IHByw6lzZW50IGRpZGFjdGljaWVsLiBJbCB0cmFp dGUgZGVzIHLDqGdsZXMgbGVzIHBsdXMgcsOpY2VudGVzIGR1IGxvamJhbiwgcXVpIG5lIHNvbnQg cGFzIGNvdXZlcnRlcyBwYXIgZGUgcGx1cyBhbmNpZW5zIGNvdXJzIHRlbHMgcXVlIMKrwqBXaGF0 IGlzIExvamJhbj/CoMK7LCBldCDCq8KgTG9qYmFuIGZvciBCZWdpbm5lcnPCoMK7LgoKCgpTaSBs ZSBsb2piYW4gZXN0IHRvdGFsZW1lbnQgbm91dmVhdSBwb3VyIHZvdXMsIGplIHZvdXMgcmVjb21t YW5kZSBkJ8OpY291dGVyIHRvdXQgbGVzIGVucmVnaXN0cmVtZW50IGRlIGxvamJhbiBwYXJsw6kg cXVlIHZvdXMgcG91cnJleiB0cm91dmVyLCB0YW50IGF2YW50IHF1ZSBwZW5kYW50IGxhIGxlY3R1 cmUgZGUgY2UgZGlkYWN0aWNpZWwsIGFmaW4gZGUgdm91cyBmYW1pbGlhcmlzZXIgYXZlYyBsZXMg c29ucyBldCBsZXMgbW90cyBkdSBsYW5nYWdlLiBEZSBwbHVzLCBlc3NheWV6IGRlIHByb25vbmNl ciBjZSBxdWUgdm91cyBsaXNleiBhdmVjIGwnYWNjZW50IGxvamJhbiBzaSB2b3VzIGxlIHBvdXZl ei4gQ2VjaSB2b3VzIGFpZGVyYSDDoCBwcm9ub25jZXIgbGUgbG9qYmFuLiAKCgoKRW4gc3VpdmFu dCBjZSBkaWRhY3RpY2llbCwgaWwgZXN0IGNvbnNlaWxsw6kgZGUgcHJlbmRyZSBkZXMgcGF1c2Vz IGVudHJlIGxlcyBsZcOnb25zIGFmaW4gZGUgZGlnw6lyZXIgY2UgcXVlIHZvdXMgYXZleiBhcHBy aXMuIEonYWkgZXNzYXnDqSBkZSBjb25zdHJ1aXJlIGNlcyBsZcOnb25zIGR1IHNpbXBsZSBhdSBj b21wbGV4ZSwgZXQgZCdleGNsdXJlIHRvdXQgbW90IG91IGNvbmNlcHQgcXVpIG4nYSBwYXMgw6l0 w6kgZXhwbGlxdcOpIGRhbnMgbGVzIGxlw6dvbiBwcsOpY8OpZGVudGUuIFVuZSBmb2lzIGV4cGxp cXXDqXMsIGlscyBzb250IHV0aWxpc8OpcyBsaWJyZW1lbnQgdG91dCBhdSBsb25nIGR1IHJlc3Rl IGR1IGRpZGFjdGljaWVsLiBKJ2V4aG9ydGUgbGUgbGVjdGV1ciDDoCBuZSBwYXMgZmFpcmUgbCdp bXBhc3NlIHN1ciB1biBjb250ZW51IGluY29tcHJpc8KgOiBzaSB2b3VzIGF2ZXogdW5lIHF1ZXN0 aW9uIG91IMOqdGVzIGluY2VydGFpbiBkJ3VuZSBjaG9zZSwgbidheWV6IHBhcyBkZSBjb21wbGV4 ZSDDoCBkZW1hbmRlciDDoCBsYSBjb21tdW5hdXTDqSBsb2piYW4sIHF1aSBwZXV0IMOqdHJlIHRy b3V2w6llIHN1ciAjbG9qYmFuIHN1ciBsZSByw6lzZWF1IElSQyBGcmVlbm9kZSAoZW4gYW5nbGFp cyksIG91IHN1ciBsYSBbaHR0cDovL21haWwubG9qYmFuLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xv amJhbi1mcnxtYWlsaW5nLWxpc3QgZnJhbmNvcGhvbmVdLiBFbGxlIHNlcmEgaGV1cmV1c2UgZCdh aWRlci4KCgoKRGFucyBjZSBkaWRhY3RpY2llbCwgbGUgdGV4dGUgZW4gbG9qYmFuIGVzdCDDqWNy aXQgZW4gJydpdGFsaXF1ZXMnJy4gTGVzIG1vdHMgZW1wcnVudMOpcyBkdSBsb2piYW4gYXUgZnJh bsOnYWlzIG5lIHNvbnQgdG91dGVmb2lzIHBhcyBzb3VtaXMgw6AgY2V0dGUgZW1waGFzZS4gTGVz IHLDqXBvbnNlcyBkZXMgZXhlcmNpY2VzIHNvbnQgYWZmaWNow6llcyBjb21tZSB1bmUgYmFycmUg Z3Jpc2UuIFPDqWxlY3Rpb25uZXogY2V0dGUgYmFycmUgcG91ciB2b2lyIGxlIHRleHRlLgoKCgpF bmZpbiwgaidhaSBhdXRhbnQgcXVlIHBvc3NpYmxlIGVzc2F5w6kgZCd1dGlsaXNlciBsZXMgbW90 cyBkdSBsb2piYW4gcG91ciBkw6lzaWduZXIgbGVzIGNvbnN0cnVjdGlvbnMgZ3JhbW1hdGljYWxl c8Kg4oCTwqAnJ3N1bWthJ2knJyBhdSBsaWV1IGRlIHByby1zdW10aSwgJydzdW10Y2l0YScnIGF1 IGxpZXUgZGUgbW9kYWwsIGV0ICcnanVmcmEnJyBhdSBsaWV1IGQnw6lub25jw6nCoOKAkyBwYXJj ZSBxdWUgaidhaSBsJ2ltcHJlc3Npb24gcXVlIGxlcyBtb3RzIGZyYW7Dp2FpcyBzb250IHNvdXZl bnQgc29pdCBhcmJpdHJhaXJlcyDigJPCoGp1c3RlIGRlcyBtb3RzIGVuIHBsdXMgw6AgYXBwcmVu ZHJlwqDigJMsIHNvaXQgdHJvbXBldXJzIOKAk8KgZG9uYyBwaXJlIHF1J2ludXRpbGVzLiBEYW5z IGxlcyBkZXV4IGNhcywgcHVpc3F1ZSBjZXMgbW90cyBzb250IGRlIHRvdXRlIGZhw6dvbiBzcMOp Y2lmaXF1ZXMgw6AgbCdhcHByZW50aXNzYWdlIGR1IGxvamJhbiwgaWwgbidvbnQgcGFzIGRlIHJh aXNvbiBkJ2V4aXN0ZXIgY29tbWUgZGVzIG1vdHMgZnJhbsOnYWlzIGRpc3RpbmN0LgoKCgohISFQ csOpZmFjZS4gU29ucwoKTGEgcHJlbWnDqHJlIGNob3NlIMOgIGZhaXJlIHF1YW5kIHZvdXMgYXBw cmVuZXogdW5lIGxhbmd1ZSDDqXRyYW5nw6hyZSBlc3QgZGUgdm91cyBmYW1pbGlhcmlzZXIgYXZl YyBsZXMgc29ucyBkdSBsYW5nYWdlIGV0IGxldXIgw6ljcml0dXJlLiBJbCBlbiB2YSBkZSBtw6pt ZSBwb3VyIGxlIGxvamJhbi4gSGV1cmV1c2VtZW50LCBsZXMgc29ucyBkdSBsb2piYW4gKF9fcGhv bsOobWVzX18pIHNvbnQgcGx1dMO0dCBzaW1wbGVzLgoKCgohISEhVm95ZWxsZXMKCklsIHkgYSBz aXggdm95ZWxsZXMgZW4gbG9qYmFuLgoKCgp8fCcnYScnIHxjb21tZSBkYW5zIMKrwqBwX19hX19w X19hX1/CoMK7CgonJ2UnJyB8Y29tbWUgZGFucyDCqyBiX19lX19yZ19fw6hfX3JlIMK7CgonJ2kn JyB8Y29tbWUgZGFucyDCq8KgbWFjaF9faV9fbmXCoMK7CgonJ28nJyB8Y29tbWUgZGFucyDCqyBf X29fX23DqWdhIMK7LCDCq8KgX19hdV9fdF9fb19fbW9iaWxlwqDCuwoKJyd1JycgfGNvbW1lIGRh bnMgwqvCoF9fb3VfX8KgwrssIMKrwqBsX19vdV9fcMKgwrsKCicneScnIHxjb21tZSBkYW5zIMKr IG1hdF9fZV9fbG90IMK7fHwKCgoKTGEgc2l4acOobWUgdm95ZWxsZSwgJyd5JycsIGVzdCBhcHBl bMOpZSB1biBfX3NjaHdhX18gZW4gbGluZ3Vpc3RpcXVlLiBDJ2VzdCB1biDCq8KgZcKgwrsgdHLD qHMgbMOpZ2VyLCBub24gYWNjZW50dcOpLCBqdXN0ZSBtaWxpZXUgZW50cmUgbGUgwqvCoGXCoMK7 IG1hcnNlaWxsYWlzICjCq8KgbWF0X19ldV9fbG90wqDCuykgZXQgbGUgwqvCoGXCoMK7IG11ZXQg cGFyaXNpZW4gKMKrIG1hdCdsb3QgwrspLgoKCgpEZXV4IHZveWVsbGVzIGVuc2VtYmxlIHNvbnQg cHJvbm9uY8OpZXMgY29tbWUgdW4gc29uIChfX2RpcGh0b25ndWVfXykuIFBhciBleGVtcGxlwqA6 CgoKCnx8JydhaScnIHxjb21tZSBkYW5zIMKrwqBjYW5fX2FpX19sbGXCoMK7CgonJ2F1JycgfGNv bW1lIGRhbnMgwqvCoGNfX2FvdV9fdGNob3VjwqDCuwoKJydlaScnIHxjb21tZSBkYW5zIMKrwqBh Yl9fZWlfX2xsZcKgwrsKCicnb2knJyB8Y29tbWUgZGFucyDCq8KgZ19fb3lfX8KgwrsKCicnaWEn JyB8Y29tbWUgZGFucyDCq8KgcF9faWFfX25vwqDCuwoKJydpZScnIHxjb21tZSBkYW5zIMKrwqBo X19pZV9fcsKgwrsKCicnaXUnJyB8Y29tbWUgZGFucyDCq8KgY2FfX2lsbG91X1/CoMK7CgonJ3Vh JycgfGNvbW1lIGRhbnMgwqvCoHFfX3VvaV9fwqDCuwoKJyd1ZScnIHxjb21tZSBkYW5zIMKrwqBi cl9fb3VlX190dGXCoMK7CgonJ3VvJycgfGNvbW1lIGRhbnMgwqvCoGRyX19vdW9fX3TCoMK7Cgon J3VpJycgfGNvbW1lIGRhbnMgwqvCoF9fb3VpX1/CoMK7IHx8CgoKCkxlcyB2b3llbGxlcyBkb3Vi bMOpZXMgc29udCByYXJlcy4gTGVzIHNldWxzIGV4ZW1wbGVzIHNvbnQgJydpaScnLCBwcm9ub25j w6kgY29tbWUgZGFucyDCq8KgZmFfX2lsbGlfX8KgwrssIGV0ICcndXUnJywgcHJvbm9uY8OpIGNv bW1lIGRhbnMgwqvCoF9fT3VfX2hfX291X1/CoCHCoMK7IChxdWFuZCBvbiBhcHBlbGxlIHF1ZWxx dSd1biwgbWFpcyBwYXMgY29tbWUgZGFucyDCq8KgSG91aG91wqDCu8KgOiBkYW5zIGxlIHByZW1p ZXIgZXhlbXBsZSwgbGUgJydoJycgZXN0IG11ZXQsIGRhbnMgbGUgZGV1eGnDqG1lLCBsZSAnJ2gn JyBlc3QgYXNwaXLDqSDigJMgY2UgcXVpIHNlIHRyYW5zY3JpcmFpdCBlbiBsb2piYW4gJyd1J3Un JykKCgoKISEhIUNvbnNvbm5lcwoKTGEgcGx1cGFydCBkZXMgY29uc29ubmVzIHNvbnQgbGVzIG3D qm1lcyBxdSdlbiBmcmFuw6dhaXMsIMOgIHF1ZWxxdWUgZXhjZXB0aW9ucyBwcsOqdMKgOgoKCgp8 fCcnZycnIHxzZSBwcm9ub25jZSB0b3Vqb3VycyBjb21tZSBkYW5zIMKrwqBfX2dfX8OidGVhdcKg wrssIGphbWFpcyBjb21tZSBkYW5zIMKrwqBfX2dfX2Vub3V4wqDCuwoKJydjJycgfHNlIHByb25v bmNlICcnY2gnJywgY29tbWUgZGFucyDCq8KgX19jaF9fYXRlYXXCoMK7CgonJ3gnJyB8c2UgcHJv bm9uY2UgY29tbWUgZGFucyBsJ2FsbGVtYW5kIMKrwqBCYV9fY2hfX8KgwrssIGwnZXNwYWdub2wg wqvCoF9fSl9fb3NlwqDCuyBvdSBsJ2FyYWJlIMKrwqBfX0toX19hbGVkwqDCuwoKJydyJycgfGFj Y2VwdGUgYmVhdWNvdXAgZGUgcHJvbm9uY2lhdGlvbnMgKMOgIGxhIGZyYW7Dp2Fpc2UsIMOgIGwn YW5nbGFpc2XigKYpIG1haXMgbGEgcHJvbm9uY2lhdGlvbiBpdGFsaWVubmUgKCcncicnIHJvdWzD qSkgZXN0IHByw6lmw6lyw6llfHwKCgoKTGUgbG9qYmFuIG4ndXRpbGlzZSBwYXMgbGVzIGNhcmFj dMOocmVzIMKrwqBIwqDCuywgwqvCoFHCoMK7IG91IMKrwqBXwqDCuywgZXQgaWwgbid5IGEgcGFz IGRlIGNhcmFjdMOocmVzIGFjY2VudHXDqXMgZW4gbG9qYmFuLgoKCgohISEhQ2FyYWN0w6hyZXMg c3DDqWNpYXV4CgoKCkxlIGxvamJhbiBuZSByZXF1acOocmUgYXVjdW5lIHBvbmN0dWF0aW9uLCBt YWlzIGNlcnRhaW4gY2FyYWN0w6hyZXMsIGhhYml0dWVsbGVtZW50IHV0aWxpc8OpcyBjb21tZSBw b25jdHVhdGlvbiBkYW5zIGQnYXV0cmUgbGFuZ3VlcywgYWZmZWN0ZW50IGxhIG1hbmnDqHJlIGRv bnQgbGUgbG9qYmFuIGVzdCBwcm9ub25jw6kuCgoKCkxlIHNldWwgZGUgY2VzIGNhcmFjdMOocmVz IHF1aSBzb2l0IG9ibGlnYXRvaXJlIGVuIGxvamJhbiBlc3QgbCdhcG9zdHJvcGhlLiBFbiBmYWl0 LCBsJ2Fwb3N0cm9waGUgZXN0IGNvbnNpZMOpcsOpZSBjb21tZSB1bmUgbGV0dHJlIGR1IGxvamJh bi4gVW5lIGFwb3N0cm9waGUgc8OpcGFyZSBkZXV4IHZveWVsbGVzLCBlbXDDqmNoYW50IGNlbGxl cy1jaSBkJ8OqdHJlIHByb25vbmPDqWVzIGVuc2VtYmxlIGNvbW1lIHVuZSBfX2RpcGh0b25ndWVf Xy4gRWxsZSBlc3QgZWxsZSBtw6ptZSBwcm9ub25jw6llIGNvbW1lIHVuIMKrwqBowqDCuy4gUGFy IGV4ZW1wbGUsIMKrwqAnJ3VpJyfCoMK7IGVzdCBub3JtYWxlbWVudCBwcm9ub25jw6kgY29tbWUg wqvCoF9fb3VpX1/CoMK7LCBtYWlzIMKrwqAnJ3UnaScnwqDCuyBlc3QgcHJvbm9uY8OpIGNvbW1l IMKrwqBfX291aGlfX8KgwrsuCgoKClVuIHBvaW50IGVzdCB1bmUgY291cnRlIHBhdXNlIMOpdml0 YW50IMOgIGRldXggbW90cyBkZSBzZSBjb25mb25kcmUgbCd1biBkYW5zIGwnYXV0cmUuIExlcyBy w6hnbGVzIGR1IGxvamJhbiByZW5kZW50IGZhY2lsZSBsYSBmdXNpb24gZGUgZGV1eCBtb3RzIHF1 YW5kIGxlIHNlY29uZCBjb21tZW5jZSBwYXIgdW5lIHZveWVsbGUsIGV0IGRvbmMsIHBhciBjb252 ZW50aW9uLCBjaGFxdWUgbW90IGNvbW1lbsOnYW50IHBhciB1bmUgdm95ZWxsZSBlc3QgcHLDqWPD qWTDqSBwYXIgdW4gcG9pbnQuCgoKCkxlcyB2aXJndWxlcyBzb250IHJhcmUgZW4gbG9qYmFuLCBt YWlzIHBldXZlbnQgw6p0cmUgdXRpbGlzw6llcyBwb3VyIGVtcMOqY2hlciBkZXV4IHZveWVsbGVz IGRlIHNlIGZvbmRyZSBsJ3VuZSBkYW5zIGwnYXV0cmUgcXVhbmQgdm91cyBuZSB2b3VsZXogcGFz IHV0aWxpc2VyIGQnYXBvc3Ryb3BoZSwgY2UgcXVpIGFqb3V0ZXJhaXMgdW4gwqvCoGjCoMK7IGVu dHJlIGVsbGVzLiBBdWN1biBtb3QgbG9qYmFuIG4nYSBkZSB2aXJndWxlLCBtYWlzIGVsbGUgZXN0 IHBhcmZvaXMgdXRpbGlzw6llIGRhbnMgbCfDqWNyaXR1cmUgZGVzIG5vbXMgZCdhdXRyZXMgbGFu Z3Vlcy4gUGFyIGV4ZW1wbGUsIMKrwqAnJ3BpLEVSLicnwqDCuyAoUGllcnJlKSwgYXUgbGlldSBk ZSDCq8KgJydwaWVyLicnwqDCuyAoUC15ZXJyKSwgwqvCoCcncGkuRVIuJyfCoMK7IChQaTsgRWhy KSwgb3UgwqvCoCcncGknRVInJ8KgwrsgKFBpaGVycikuCgoKCkxlcyBsZXR0cmVzIGNhcGl0YWxl cyBuZSBzb250IG5vcm1hbGVtZW50IHBhcyB1dGlsaXPDqWVzIGVuIGxvamJhbi4gTm91cyBsZXMg dXRpbGlzb25zIGRhbnMgZGVzIG1vdHMgbm9uIGxvamJhbiAoY29tbWUgwqvCoFBpZXJyZcKgwrsp LCBxdWFuZCBsJ2FjY2VudCB0b25pcXVlIGQndW4gbW90IGVzdCBkaWZmw6lyZW50IGRlIGNlbHVp IGRlIGxhIG5vcm1lIGxvamJhbi4gTGEgbm9ybWUgY29uc2lzdGUgw6AgbWV0dHJlIHVuIGFjY2Vu dCB0b25pcXVlIHN1ciBsJ2F2YW50IGRlcm5pw6hyZSBzeWxsYWJlLiBQYXIgZXhlbXBsZSwgJydr dWptaWtjZScnIChpbmZpcm1pw6hyZSksIGVzdCDCq8Kga3VqX19NSUtfX2NlwqDCuywgZXQgbm9u IHBhcyDCq8KgX19LVUpfX21pa2NlwqDCuy4gTGUgbm9tIMKrwqBKdWxpZXR0ZcKgwrsgcyfDqWNy aXJhaXQgwqvCoCcnanVMSUVULicnwqDCuyBzaSBwcm9ub25jw6kgY29tbWUgZW4gZnJhbsOnYWlz LCBtYWlzIMKrwqAnJ0RKVWxpLGV0LicnwqDCuyBzaSBwcm9ub25jw6kgY29tbWUgZW4gYW5nbGFp cy4KCiEhISFBbHBoYWJldAoKCgpEYW5zIGxhIHBsdXBhcnQgZGVzIG1hbnVlbHMsIGxvcnMgZGUg bCdhcHByZW50aXNzYWdlIGQndW5lIGxhbmd1ZSwgdm91cyBhcHByZW5leiBsJ2FscGhhYmV0IGR1 IGxhbmdhZ2UsIGV0IHNhIHByb25vbmNpYXRpb24uIExlcyBsZXR0cmVzICgnJ2xlcmZ1JycpIMOp dGFudCBwbHVzIGltcG9ydGFudGVzIGVuIGxvamJhbiBxdSfDoCBsJ2FjY291dHVtw6llLCBhdXRh bnQgYXBwcmVuZHJlIGxldXIgbm9tcyByYXBpZGVtZW50LgoKCgpMZXMgY29uc29ubmVzIHNvbnQg c2ltcGxlc8KgOiBsZSBub20gZCd1bmUgY29uc29ubmUgZXN0IGNldHRlIGxldHRyZSwgc3Vpdmll IGRlIMKrwqB5wqDCuy4gQWluc2ksIGxlcyBjb25zb25uZXMgZHUgbG9qYmFuLCDCq8KgYsKgwrss IMKrwqBjwqDCuywgwqvCoGTCoMK7LCDCq8KgZsKgwrssIMKrwqBnwqDCu+KApiBzb250IGFwcGVs w6llcyDCq8KgJydieS4nJ8KgwrssIMKrwqAnJ2N5LicnwqDCuywgwqvCoCcnZHkuJyfCoMK7LCDC q8KgJydmeS4nJ8KgwrssIMKrwqAnJ2d5LicnwqDCu+KApiBlbiBsb2piYW4gKGVuIHV0aWxpc2Fu dCB1biBwb2ludCwgY29tbWUgZMOpY3JpdCBkYW5zIGxhIHBhcnRpZSBwcsOpY8OpZGVudGUpLgoK CgpMZXMgdm95ZWxsZXMgX19zZXJhaWVudF9fIGFwcGVsw6llcyDCq8KgJycuYXknJ8KgwrssIMKr wqAnJy5leScnwqDCuywgwqvCoCcnLml5JyfCoMK74oCmLCBzaSBjJ8OpdGFpdCBtb2lucyBkaWZm aWNpbGUgw6AgcHJvbm9uY2VyLiBBdSBsaWV1IGRlIMOnYSwgZWxsZXMgc29udCBub21tw6llIGVu IHN1aXZhbnQgbGUgc29uIGRlIGxhIHZveWVsbGUgcGFyIGxlIG1vdCAnJ2J1JycsIHF1aSBzaWdu aWZpZSBzaW1wbGVtZW50IMKrwqBsZXR0cmXCoMK7LiBBaW5zaSwgbGVzIHZveWVsbGVzIGR1IGxv amJhbiBzb250wqA6ICDCq8KgJycuYWJ1JyfCoMK7LCDCq8KgJycuZWJ1JyfCoMK7LCDCq8KgJycu aWJ1JyfCoMK7LCDCqyAnJy5vYnUnJyDCuywgwqvCoCcnLnVidScnwqDCuywgwqvCoCcnLnlidScn wqDCuy4KCgoKTCdhcG9zdHJvcGhlIGVzdCBjb25zaWTDqXLDqWUgY29tbWUgdW5lIHZyYWkgbGV0 dHJlIGVuIGxvamJhbiwgZXQgZXN0IG5vbW3DqWUgwqvCoCcnLnkneS4nJ8KgwrsgKMKrwqBldWhl dcKgwrvigKYgVW4gcGV1IGNvbW1lIHVuZSBwZXRpdGUgdG91eCkuCgoKCkxlIGxvamJhbiBhIHVu IG1veWVuIGRlIHNlIHLDqWbDqXJlciDDoCBsYSBwbHVwYXJ0IGRlcyBsZXR0cmVzIGF1eHF1ZWxs ZXMgdm91cyBwb3V2ZXogcGVuc2VyLiBTaSB2b3VzIGTDqXNpcmV6IGTDqHMgbWFpbnRlbmFudCDD qXBlbGVyIHZvdHJlIG5vbSBlbiBsb2piYW4sIGV0IHF1ZSBjZWx1aSBjaSBwb3Nzw6hkZSB1biDC q8KgSMKgwrssIMKrwqBRwqDCuyBvdSDCq8KgV8KgwrssIHZvdXMgcG91dmV6IHV0aWxpc2VyIMKr ICcnLnkneS5idScnIMK7LCDCqyAnJ2t5LmJ1JycgwrsgZXQgwqsgJyd2eS5idScnIMK7LiBBaW5z aSwgwqvCoFNjaHdhcnplbmVnZ2VywqDCuyBlc3Qgw6lwZWzDqSBlbiBsb2piYW7CoDoKCicnc3ku IGN5LiAueSd5YnUgdnlidS4gLmFidSByeS4genkuIC5lYnUgbnkuIC5lYnUgZ3kuIGd5LiAuZWJ1 IHJ5LicnCgoKCkV0IMOpcGVsZXIgX1/Dp2FfXyBlc3QgdW5lIHTDomNoZSBkaWduZSBkdSBUZXJt aW5hdG9ywqAhCgoKCk1haW50ZW5hbnQsIMOpcGVsZXogdm90cmUgbm9tIGVuIGxvamJhbiAobGUg Y2FzIMOpY2jDqWFudCwgZGUgbGEgbWFuacOocmUgbGEgcGx1cyBwcm9jaGUgcXVlIHZvdXMgcG91 dmV6IGF2ZWMgbGVzIDI2IGxldHRyZXMgcXVlIG5vdXMgdmVub25zIGQnYXBwcmVuZHJlLCBldCBs J2Fwb3N0cm9waGUpLgoKISEhISBQcm9ub25jaWF0aW9uIMKrwqBjb3JyZWN0ZcKgwrsKCgoKJydD ZXR0ZSBwYWdlIGVzdCDDoCBsYSBmb2lzIHVuZSB0cmFkdWN0aW9uIGRlIGxhIHZlcnNpb24gYW5n bGFpc2UsIGV0IHVuZSBhZGFwdGF0aW9uIGF1eCBwcm9ibMOobWVzIHJlbmNvbnRyw6lzIHBhciBs ZXMgZnJhbmNvcGhvbmVzIHBsdXRvdCBxdWUgcGFyIGxlcyBhbmdsb3Bob25lcy4gUGFyIG1hbnF1 ZSBkJ2V4cMOpcmllbmNlIGRhbnMgbCdlbnNlaWduZW1lbnQgZHUgbG9qYmFuIMOgIGRlcyBmcmFu Y29waG9uZXMsIGNldHRlIHBhcnRpZSBwZXV0IGRvbmMgbWFucXVlciBkZSBjb25zZWlscyBvdSBy ZXN0ZXIgaW5hZGFwdMOpZSwgdm9pcmUgY29uZnVzZS4gTidow6lzaXRleiBwYXMgw6AgZGVtYW5k ZXIgc3VyIGxhIFtodHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vbG9qYmFu LWZyfG1haWxpbmctbGlzdF0gZnJhbmNvcGhvbmUgc2kgdm91cyBhdmV6IHVuIHByb2Jsw6htZSDi gJMgY2VjaSBwb3VycmFpdCBub3VzIGFpZGVyIMOgIGFtw6lsaW9yZXIgY2V0dGUgcGFnZcKgIScn CgoKClZvdXMgbidhdmV6IHBhcyDDoCBhdm9pciB1bmUgcHJvbm9uY2lhdGlvbiBwcsOpY2lzZSBk dSBsb2piYW4sIGNhciBjaGFxdWUgcGhvbsOobWUgZXN0IGRpc3RyaWJ1w6kgZGUgbWFuacOocmUg w6AgY2UgcXUnaWwgc29pdCBkaWZmaWNpbGUgZGUgY29uZm9uZHJlIGRldXggc29ucy4gQ2VjaSBz aWduaWZpZSBxdWUsIHBvdXIgdW5lIGxldHRyZSwgcGx1dMO0dCBxdSd1bmUgcHJvbm9uY2lhdGlv biDCq8KgY29ycmVjdGXCoMK7LCBpbCB5IGEgdW5lIGdhbW1lIGRlIHNvbnMgYWNjZXB0w6lzIOKA kyBsZSBwcmluY2lwZSBnw6luw6lyYWwgw6l0YW50IHF1J3VuIHNvbiBlc3QgYm9uIHRhbnQgcXUn aWwgbmUgcmVzc2VtYmxlIHBhcyB0cm9wIMOgIHVuZSBhdXRyZSBsZXR0cmUuIFBhciBleGVtcGxl LCBsZSDCq8KgcsKgwrsgbG9qYmFuIHBldXQgw6p0cmUgcHJvbm9uY8OpIGNvbW1lIGVuIGFuZ2xh aXMsIGl0YWxpZW4sIGZyYW7Dp2Fpc+KApiAKCgoKQ2VwZW5kYW50LCBiaWVuIHF1ZSBsZSBbaHR0 cHM6Ly9mci53aWtpcGVkaWEub3JnL3dpa2kvQ29uc29ubmVfZnJpY2F0aXZlX3V2dWxhaXJlX3Zv aXMlQzMlQTllfMKrwqBywqDCuyBmcmFuw6dhaXNdIHNvaXQgY29uc2lkw6lyw6kgY29tbWUgdW4g wqvCoCcncicnwqDCuywgY2VsdWktY2kgZXN0IGF1c3NpIHByb2NoZSBkdSBbaHR0cHM6Ly9mci53 aWtpcGVkaWEub3JnL3dpa2kvQ29uc29ubmVfZnJpY2F0aXZlX3V2dWxhaXJlX3NvdXJkZXzCq8Kg Jyd4JyfCoMK7XSBsb2piYW4uIFBvdXIgY29tcHJlbmRyZSBsYSBkaWZmw6lyZW5jZSBlbnRyZSBj ZXMgZGV1eCBzb25zLCBvYnNlcnZleiBsYSBkaWZmw6lyZW5jZSBlbnRyZSBsZSBzb24gwqvCoCcn ZCcnwqDCuyBldCBsZSBzb24gwqvCoCcndCcnwqDCu8KgOiBsJ3VuIGVzdCB2b2NhbGlzw6ksIGwn YXV0cmUgbm9uLiBMYSBtw6ptZSBkaXN0aW5jdGlvbiBzJ29ww6hyZSBlbnRyZSBsZSDCq8KgJydy JyfCoMK7IGZyYW7Dp2FpcyBldCBsZSDCq8KgJyd4JyfCoMK7LiBKZSB2b3VzIGNvbnNlaWxsZSBk b25jIGQnb3B0ZXIgcG91ciB1biDCq8KgcsKgwrsgbW9pbnMgYW1iaWd1LiBDb25jZXJuYW50IGxl IMKrwqBywqDCuyByb3Vsw6ksIGRldXggcHJvbm9uY2lhdGlvbnMgc29udCBwb3NzaWJsZcKgOiBs ZSBbaHR0cHM6Ly9mci53aWtpcGVkaWEub3JnL3dpa2kvQ29uc29ubmVfcm91bCVDMyVBOWVfYWx2 JUMzJUE5b2xhaXJlX3ZvaXMlQzMlQTllfMKrwqBywqDCu10gZXNwYWdub2wsIHNpdHXDqSDDoCBs J2F2YW50IGR1IHBhbGFpcywgZXQgdW4gW2h0dHBzOi8vZnIud2lraXBlZGlhLm9yZy93aWtpL0Nv bnNvbm5lX3JvdWwlQzMlQTllX3V2dWxhaXJlX3ZvaXMlQzMlQTllfMKrwqBywqDCu10gcGx1cyBw cm9jaGUgZGUgbGEgZ29yZ2UsIGNvbW1lIGNlbHVpIGQnRWRpdCBQaWFmLiBDaG9pc2lzc2V6IGxh IHByb25vbmNpYXRpb24gcXVpIHZvdXMgcG9zZSBsZSBtb2lucyBkZSBwcm9ibMOobWUsIHRhbnQg cXUnZWxsZSBuZSBzZSBjb25mb25kIHBhcyBhdmVjIHVuZSBhdXRyZSBsZXR0cmUgZHUgbG9qYmFu LgoKCgpGYWl0ZXMgYXVzc2kgYXR0ZW50aW9uIMOgIGJpZW4gYXBwdXllciBsZXMgdm95ZWxsZXMg 4oCTIG1pcyDDoCBwYXJ0IGxlIMKrwqAnJ3knJ8KgwrsgcXVpICcnZG9pdCcnIMOqdHJlIGNvdXJ0 LiBMYSByYWlzb24gZW4gZXN0IHF1ZSBsZXMgdm95ZWxsZXMgwqvCoG5vbi1sb2piYW7CoMK7IHBl dXZlbnQgw6p0cmUgdXRpbGlzw6llcyBwb3VyIHPDqXBhcmVyIGxlcyBjb25zb25uZXMgcGFyIGxl cyBwZXJzb25uZXMgcXVpIG4nYXJyaXZlbnQgcGFzIMOgIGxlcyBwcm9ub25jZXIuIFBhciBleGVt cGxlLCBzaSB2b3VzIGF2ZXogdW4gcHJvYmzDqG1lIGF2ZWMgbGUgwqvCoCcnemQnJ8KgwrsgZGUg wqvCoCcnemRhbmknJ8KgwrsgKG1haXNvbiksIHZvdXMgcG91dmV6IGRpcmUgwqvCoHrJqmRhbmnC oMK7LCBhdmVjIHVuIMKrwqDJqsKgwrsgdHLDqHMgY291cnQsIG1haXMgbGUgwqvCoGnCoMK7IGZp bmFsIGxvbmcuIAoKISEhIU5vbXMgbG9qYmFuIChjbWV2bGEpCgoKCkRhbnMgbGVzIGZpbG1zIG/D uSBsZXMgcHJvdGFnb25pc3RlcyBuJ29udCBwYXMgZGUgbGFuZ3VlIGNvbW11bmUsIGlscyBjb21t ZW5jZW50IHNvdXZlbnQgcGFyIGRpcmUgZGVzIGNob3NlcyB0ZWxsZXMgcXVlIMKrwqBNb2kgVGFy emFuwqDCuywgY2UgcXVpIGVzdCB1bmUgbWFuacOocmUgY29tbWUgdW5lIGF1dHJlIGRlIGTDqWJ1 dGVyIGVuIGxvamJhbi4gRXQgZG9uY8KgOgoKCgpfXycnbWknZSAucm9iaW4uJydfXwoKwqvCoEpl LXN1aXMtbm9tbcOpIFJvYmluwqDCuwoKwqvCoEplIHN1aXMgUm9iaW7CoMK7CgoKCicnbWknZScn IGVzdCBhcHBhcmVudMOpIMOgICcnbWknJywgcXVpIHNpZ25pZmllIMKrwqBtb2nCoMK7LCDCq8Kg amXCoMK74oCmIEMnZXN0IHVuIGJvbiBleGVtcGxlIGRlIGwnYXBvc3Ryb3BlIHPDqXBhcmFudCBk ZXV4IHZveWVsbGVzLCBwcm9ub25jw6kgwqvCoG1pIGhlaMKgwrsuIAoKCgpDZSBSb2JpbiBlc3Qg Y2hhbmNldXjCoDogc29uIG5vbSBzZSB0cmFuc2NyaXQgZGlyZWN0ZW1lbnQgZW4gbG9qYmFuLCBz YW5zIGNoYW5nZW1lbnQuIElsIHkgYSB0b3V0ZWZvaXMgZGVzIHLDqGdsZXMgcG91ciBsZXMgbm9t cyBsb2piYW4sIGNlIHF1aSBzaWduaWZpZSBxdWUgY2VydGFpbnMgbm9tcyBkb2l2ZW50IMOqdHJl cyDCq8KgbG9qYmFuaXPDqXPCoMK7LiBDZWxhIHBldXQgc2VtYmxlciDDqXRyYW5nZS4gQXByw6hz IHRvdXQsIHVuIG5vbSBlc3QgdW4gbm9t4oCmIEVuIGZhaXQsIHRvdXQgbGVzIGxhbmdhZ2VzIGZv bnQgY2UgZ2VucmUgZCdhZGFwYXRpb24gw6AgdW4gY2VydGFpbiBuaXZlYXUuIFBhciBleGVtcGxl LCBsZXMgYW5nbGFpcyB0ZW5kZW50IMOgIHByb25vbmNlciDCq8KgSm9zZcKgwrsgY29tbWUgwqvC oEhvemF5wqDCuywgZXQgwqvCoE1hcmdhcmV0wqDCuyBkZXZpZW50IMKrwqBNYWdlbGl0YcKgwrsg ZW4gY2hpbm9pcy4KCgoKQ2VydGFpbnMgc29ucyBuJ2V4aXN0ZW50IHBhcyBkYW5zIGNlcnRhaW5z IGxhbmdhZ2VzLiBBaW5zaSwgbGEgcHJlbWnDqHJlIGNob3NlIMOgIGZhaXJlIGVzdCBkZSByw6nD qWNyaXJlIHZvdHJlIG5vbSBkZSBtYW5pw6hyZSDDoCBjZSBxdSdpbCBuZSBjb250aWVubmUgcXVl IGRlcyBzb25zIGxvamJhbiwgZXQgc29pdCDDqWNyaXQgY29tbWUgdW4gbW90IGxvamJhbi4KCgoK X19Ob3RlwqA6X18gTGEgcXVlc3Rpb24gaWNpIGVzdMKgOiBxdWVsbGUgdmVyc2lvbiBkZXMgc29u cyBhbGxleiB2b3VzIHV0aWxpc2VywqA/IEVuIGFuZ2xhaXMsIHBhciBleGVtcGxlLCBsZXMgdm95 ZWxsZXMgYW5nbGFpc2VzIGV0IGFtw6lyaWNhaW5lcyBzb250IGFzc2V6IGRpZmbDqXJlbnRlcy4g TGUgwqvCoFJvYmluwqDCuyBhbmdsYWlzIHBldXQgw6p0cmUgcmFpc29ubmFibGVtZW50IGFwcHJv eGltw6kgcGFyIMKrwqAnJy5yb2Jpbi4nJ8KgwrssIG1haXMgbGEgdmVyc2lvbiBhbcOpcmljYWlu ZSBlc3QgcGx1cyBwcm9jaGUgZGUgwqvCoCcnLnJhYnluLicnwqDCuyBvdSDCq8KgJycucmFiLG4u JyfCoMK7LiBFdCDDoCBsJ2ludMOpcmlldXIgbcOqbWUgZGUgbCdhbmdsZXRlcnJlIG91IGRlcyDD qXRhdHMgdW5pcyBkJ2Ftw6lyaXF1ZSwgaWwgcGV1dCB5IGF2b2lyIG5vbWJyZSB2YXJpYXRpb25z LiBBdXNzaSBkZXZyaWV6IHZvdXMgcHJlbmRyZSBsZXMgdHJhbnNsaXRlcmF0aW9ucyBjaS1kZXNz dXMgYXZlYyBkZXMgcGluY2V0dGVzLgoKCgpQcmVub25zIGxlIG5vbSDCq8KgU3VzYW7CoMK7LCBl biBhbmdsYWlzLiBMZXMgZGV1eCDCq8Kgc8Kgwrsgc29udCBwcm9ub25jw6lzIGRpZmbDqXJlbW1l bnQg4oCTwqBsZSBzZWNvbmQgw6l0YW50IGVuIGZhaXQgdW4gwqvCoHrCoMK7wqDigJMgZXQgbGUg wqvCoGHCoMK7IG4nZXN0IHBhcyB2cmFpbWVudCB1biDCq8KgYcKgwrssIG1haXMgbGUgwqvCoHNj aHdhwqDCuyBkb250IG5vdXMgYXZvbnMgcGFybMOpIHBsdXMgaGF1dC4gQWluc2ksIMKrwqBTdXNh bsKgwrsgZGV2aWVudCwgZW4gbG9qYmFuLCDCq8KgJycuc3V6eW4uJyfCoMK7LgoKCgpWb3VzIGF2 ZXogcGV1dC3DqnRyZSBub3TDqSBsZXMgZGV1eCBwb2ludHMgcXVpIGFwcGFyYWlzc2VudCBkYW5z IGNoYXF1ZSBub20gbG9qYmFu4oCmIENldXgtY2kgc29udCBuw6ljZXNzYWlyZXMgY2FyIHNhbnMg cGF1c2UsIGlsIHBldXQgw6p0cmUgZGlmZmljaWxlIGRlIHNhdm9pciBxdWFuZCBsZSBtb3QgcHLD qWPDqWRlbnQgZmluaXQsIGV0IHF1YW5kIGxlIG1vdCBzdWl2YW50IGTDqWJ1dGUuCgoKClZvdXMg ZGV2cmlleiBhdXNzaSBwbGFjZXIgdW4gcG9pbnQgZW50cmUgbGUgbm9tIGV0IGxlIHByw6lub20g ZCd1bmUgcGVyc29ubmUgKGJpZW4gcXVlIGNlIG5lIHNvaXQgcGFzIG9ibGlnYXRvaXJlKS4gQWlu c2ksIMKrwqBKaW0gSm9uZXPCoMK7IGRldmllbnQgwqvCoCcnLmRqaW0uZGpvbnouJyfCoMK7LgoK CgpVbmUgcsOoZ2xlIGltcG9ydGFudGUgZGFucyBsYSBsb2piYW5pc2F0aW9uIGRlcyBub21zIGVz dCBxdWUgbGEgZGVybmnDqHJlIGxldHRyZSBkJ3VuICcnY21ldmxhJycgKG5vbSBsb2piYW4pIGRv aXQgdG91am91cnMgw6p0cmUgdW5lIGNvbnNvbm5lLiBFbmNvcmUsIGNlY2kgYSBwb3VyIGJ1dCBk J8Opdml0ZXIgbGEgY29uZnVzaW9uIHF1YW50IMOgIHNhdm9pciBvw7kgZXN0IGxhIGZpbiBkJ3Vu IG1vdCwgZXQgc2kgdW4gbW90IGVzdCBvdSBuJ2VzdCBwYXMgdW4gbm9tICh0b3V0IGxlcyBhdXRy ZXMgbW90IGxvamJhbiBmaW5pc3NhbnQgcGFyIHVuZSB2b3llbGxlKS4gRGFucyBsZSBjYXMgb8O5 IHVuIG1vdCBmaW5pdCBwYXIgdW5lIHZveWVsbGUsIMKrwqAnJ3MnJ8KgwrsgZXN0IHNvdXZlbnQg YWpvdXTDqSDDoCBsYSBmaW4uIEFpbnNpLCDCq8KgTWFyecKgwrsgZGV2aWVudCBlbiBsb2piYW4g wqvCoCcnLm1lcmlzLicnwqDCuywgwqvCoEpvZcKgwrsgZGV2aWVudCDCq8KgJycuZGpvcy4nJ8Kg wrssIGV0IGFpbnNpIGRlIHN1aXRlLiBVbmUgYWx0ZXJuYXRpdmUgY29uc2lzdGUgw6Agc3VwcHJp bWVyIGxhIGRlcm5pw6hyZSB2b3llbGxlLCDCq8KgTWFyecKgwrsgZGV2ZW5hbnQgwqvCoCcnLm1l ci4nJ8Kgwrsgb3UgwqvCoCcnLm1laXIuJyfCoMK7LgoKCgpVbmUgZGVybmnDqHJlIGNob3NlwqA6 IGNvbW1lIG5vdXMgbCdhdm9ucyB2dSwgbCdhY2NlbnQgdG9uaXF1ZSBkZXMgbW90cyBsb2piYW4g ZXN0IHNpdHXDqSBzdXIgbCdhdmFudCBkZXJuacOocmUgc3lsbGFiZS4gU2kgbCdhY2NlbnQgdG9u aXF1ZSBkJ3VuIG5vbSBlc3Qgc2l0dcOpIGFpbGxldXJzLCBkZXMgbGV0dHJlcyBtYWp1c2N1bGVz IHNvbnQgdXRpbGlzw6llcy4gQ2VjaSBzaWduaWZpZSBxdWUgbGUgbm9tIMKrwqBSb2JlcnTCoMK7 IHNlcmEgw6ljcml0IGRpZmbDqXJlbW1lbnQgc3VpdmFudCBxdSdpbCBzb2l0IGFuZ2xhaXMgb3Ug ZnJhbsOnYWlzwqA6IMKrwqAnJy5yb2J5dC4nJ8KgwrsgZW4gYW5nbGFpcywgwqsgJycucmFiLHJ0 LicnIMK7IGVuIGFtw6lyaWNhaW4gZXQgIMKrICcnLnJvQkVSLicnIMK7IGVuIGZyYW7Dp2Fpcy4K CgoKQWZpbiBkZSB2b3VzIGRvbm5leiB1bmUgaWTDqWUgZGUgY29tbWVudCB0b3V0IGNlY2kgZm9u Y3Rpb25uZSwgdm9pY2kgdW5lIGxpc3RlIGRlIG5vbXMgZGUgcXVlbHF1ZSBwZXJzb25uYWdlcyBj w6lsw6hicmVzIGRhbnMgbGV1ciBwcm9wcmUgbGFuZ3VlIGV0IGVuIGxvamJhbi4KCgoKfHxfX0Zy YW7Dp2Fpc19fCgpOYXBvbGVvbiBCb25hcGFydGUgfCcnLm5hcG9sZSxPTi5ib25hUEFSVC4nJwoK SnVsaWV0dGUgQmlub2NoZSB8JycuanVMSUVULmJpbk9DLicnIHx8Cgp8fF9fQW5nbGFpc19fCgpN YXJnYXJldCBUaGF0Y2hlciB8JycubWFncnl0LnRhdGN5ci4nJwoKTWljayBKYWdnZXIgfCcnLm1p ay5kamFneXMuJycgfHwKCnx8X19DaGlub2lzX18KCkxhb3ppIHwnJy5sYXVkei4nJwoKTWFvIFpl ZG9uZyB8JycubWF1ZHp5RFlOLicnIChMZSDCq8KgbmfCoMK7IGZpbmFsIGVzdCBjb252ZW50aW9u ZWxsZW1lbnQgdHJhbmZvcm3DqSBlbiDCq8KgJyduJyfCoMK7IGVuIGxvamJhbi4pIHx8Cgp8fF9f VHVyY19fCgpNdXN0YWZhIEtlbWFsIHwnJy5NVVN0YWZhcy5rZU1BTC4nJwoKRXJraW4gS29yYXkg fCcnLmVya2luLmtvcmFpcy4nJyB8fAoKfHxfX0FsbGVtYW5kX18KCkZyaWVkcmljaCBOaWV0enNj aGUgfCcnLmZyaWRyaXgubml0Y3lzLicnCgpDbGFyYSBTY2h1bWFubiB8Jycua2xhcmFzLmN1bWFu LicnIHx8Cgp8fF9fRXNwYWdub2xfXwoKSXNhYmVsIEFsbGVuZGUgfCcnLml6YUJFTC5haWVuZGVz LicnCgpDaGUgR3VldmFyYSB8JycudGNlZ2V2YXJhcy4nJyB8fAoKCgpfX0V4ZXJjaWNlwqA6X18K Ck/DuSBzb250IGNlcyBsaWV1eMKgPwoKIy5udSxJT1JLLgoKIy5yb21hcy4KCiMueGF2YW5hcy4K CiMua2FyZGlmLgoKIy5iZWlkamluLgoKIy5BTmthcmFzLgoKIy5BTGJla2Vya2lzLgoKIy52YW5r dXZlci4KCiMua2VpcHRhdW4uCgojLnRhaWJlaXMuCgojLmJvbi4KCiMuZGVsaXMuCgojLm5pcy4K CiMuYXRpbmFzLgoKIy5saWR6LgoKIy54ZWxzaW5raXMuCgoKClLDqXBvbnNlczoKCn5+Z3JheSxn cmF5On5+Cgojfn5ncmF5LGdyYXk6TmV3IFlvcms6IMOJdGF0cy1VbmlzIGQnQW3DqXJpcXVlfn4K CiN+fmdyYXksZ3JheTpSb21lOiBJdGFsaWV+fgoKI35+Z3JheSxncmF5OkhhdmFuYTogQ3ViYX5+ Cgojfn5ncmF5LGdyYXk6Q2FyZGlmZjogUGF5cyBkZSBHYWxsZXMgKExlIGdhbGxvaXMgcG91ciDC q8KgQ2FyZGlmZsKgwrsgZXN0IMKrwqBDYWVyZHlkZMKgwrssIHNlIHF1aSBzZSBsb2piYW5pc2Vy YWl0IGNvbW1lIMKrwqAnJy5rYWlyZHlkLicnwqDCuy4pfn4KCiN+fmdyYXksZ3JheTpCZWlqaW5n OiBDaGluZX5+Cgojfn5ncmF5LGdyYXk6QW5rYXJhOiBUdXJraWV+fgoKI35+Z3JheSxncmF5OkFs YmVxdWVycXVlOiBOb3V2ZWF1LU1leGlxdWUsIMOJdGF0cy1VbmlzIGQnQW3DqXJpcXVlfn4KCiN+ fmdyYXksZ3JheTpWYW5jb3V2ZXI6IENhbmFkYX5+Cgojfn5ncmF5LGdyYXk6Q2FwZSBUb3duOiBB ZnJpcXVlIGR1IHN1ZH5+Cgojfn5ncmF5LGdyYXk6VGFpcGVpOiBUYWl3YW4gKE5vdGXCoDogb24g dXRpbGlzZSDCq8KgJydiJyfCoMK7LCBldCBub24gwqvCoCcncCcnwqDCuy4gQmllbiBxdSdlbiBm YWl0LCBsZSBiIGVuIFBpbnlpbiBzb2l0IHByb25vbmPDqSBw4oCmIE1haXMgbm91cyBuZSBzb21t ZXMgcGFzIGRhbnMgdW4gY291cnMgZGUgbWFuZGFyaW7CoCEpfn4KCiN+fmdyYXksZ3JheTpCb25u OiBBbGxlbWFnbmV+fgoKI35+Z3JheSxncmF5OkRlbGhpOiBJbmRlIChMJ2hpbmRpIHBvdXIgwqvC oERlbGhpwqDCuyBlc3QgwqvCoERpbGzDrsKgwrssIGNlIHF1aSBkb25uZXJhaXQgwqvCoCcnLmRp bGl5cy4nJ8Kgwrsgb3UgwqvCoCcnLmRpbGknaXMuJyfCoMK7Lil+fgoKI35+Z3JheSxncmF5Ok5p Y2U6IEZyYW5jZX5+Cgojfn5ncmF5LGdyYXk6QXRoZW5zOiBHcsOoY2UgKMKrwqBBdGhpbmHCoMK7 IGVuIGdyZWNxdWUpfn4KCiN+fmdyYXksZ3JheTpMZWVkczogQW5nbGV0ZXJyZX5+Cgojfn5ncmF5 LGdyYXk6SGVsc2lua2k6IEZpbmxhbmRlfn4KCgoKX19FeGVyY2lzZcKgOl9fCgpMb2piYW5pc2V6 IGxlcyBub21zIHN1aXZhbnTCoDoKCiNKb2huCgojTWVsaXNzYQoKI0FtYW5kYQoKI01hdHRoZXcK CiNNYXRoaWV1CgojTWljaGFlbAoKI0RhdmlkIEJvd2llCgojSmFuZSBBdXN0ZW4KCiNXaWxsaWFt IFNoYWtlc3BlYXJlCgojU2lnb3VybmV5IFdlYXZlcgoKI1JpY2hhcmQgTml4b24KCiNJc3RhbmJ1 bAoKI01hZHJpZAoKI1Rva3lvCgojU2FuIFNhbHZhZG9yCgoKClLDqXBvbnNlc8KgOgoKfn5ncmF5 LGdyYXk6SWwgeSBhIHNvdXZlbnQgZCdhdXRyZXMgw6lwZWxsYXRpb25zIHBvdXIgbGVzIG5vbXMs IHNvaXQgcGFyY2UgcXVlIGxlcyBnZW5zIHByb25vbmNlbnQgbCdvcmlnaW5hbCBkaWZmw6lyZW1t ZW50LCBzb2l0IHBhcmNlIHF1ZSBsZSBzb24gZXhhY3QgbidleGlzdGUgcGFzIGVuIGxvamJhbiwg ZXQgcXVlIGwnb24gZG9pdCBjaG9pc2lyIGVudHJlIGRldXggbGV0dHJlcy4gQ2Ugbidlc3QgcGFz IGltcG9ydGFudCwgZHUgbW9tZW50IHF1ZSB0b3V0IGxlIG1vbmRlIHNhaXQgZGUgcXVpIG91IHF1 b2kgdm91cyBwYXJsZXoufn4KCiN+fmdyYXksZ3JheTouZGpvbi4gKG91IC5kamFuLiBhdmVjIGNl cnRhaW5zIGFjY2VudHMpfn4KCiN+fmdyYXksZ3JheToubWVsaXNhcy4gKC5tZWxpc3lzLiBlbiBh bmdsYWlzKX5+Cgojfn5ncmF5LGdyYXk6LmFtYW5kYXMuIChFbiBhbmdsYWlzLCBzdWl2YW50IGxl cyBhY2NlbnRzLCBsZSDCq8KgJydhJyfCoMK7IGZpbmFsIHBldXQgw6p0cmUgdW4gwqvCoCcneScn wqDCuywgZGUgbcOqbWUgcG91ciBsZSDCq8KgJydhJyfCoMK7IGluaXRpYWwsIGV0IGxlIMKrwqAn J2EnJ8KgwrsgZHUgbWlsaWV1IHBldXQgw6p0cmUgdW4gwqvCoCcnZScnwqDCuy4pfn4KCiN+fmdy YXksZ3JheToubWF0aXVzLn5+Cgojfn5ncmF5LGdyYXk6Lm1hVElZUy5+fgoKI35+Z3JheSxncmF5 Oi5taWthZWwuICgubWFpa3lsLiBvdSAubWFpayxsLiBlbiBhbmdsYWlzLil+fgoKI35+Z3JheSxn cmF5Oi5kZWl2eWQuYmF1LGlzLiBvdSAuYm8saXMuIChwYXMgLmJ1LGlzLiDigJQgcXVpIHNlIHLD qWbDqHJlIGF1IFtodHRwczovL2ZyLndpa2lwZWRpYS5vcmcvd2lraS9Db3V0ZWF1X0Jvd2llfGNv dXRlYXVdKX5+Cgojfn5ncmF5LGdyYXk6LmRqZWluLm9zdGluLn5+Cgojfn5ncmF5LGdyYXk6LnVp bGlhbS5jZWtzcGlyLn5+Cgojfn5ncmF5LGdyYXk6LnNpZ29ybmlzLnVpdnlyLiBvdSAuc3lnb3Ju aXMudWl2eXIufn4KCiN+fmdyYXksZ3JheToucml0Y3lyZC5uaWtzeW4ufn4KCiN+fmdyYXksZ3Jh eTouaXN0YW5CVUwuIGF2ZWMgdW4gYWNjZW50IHRvbmlxdWUgYW5nbGFpcywgLklTdGFuYnVsLiBh dmVjIHVuIGFjY2VudCB0b25pcXVlIEFtw6lyaWNhaW4sIC5pc3RhbmJ1bC4gYXZlYyBsJ2FjY2Vu dCB0b25pcXVlIFR1cmMuIExlcyBsb2piYW5pc3RlcyBwcsOpZsOocmVudCBlbiBnw6luw6lyYWwg YmFzZXIgbGVzIGNtZXZsYSBzdXIgbGEgcHJvbm9uY2lhdGlvbiBsb2NhbGUsIG1haXMgY2Ugbidl c3QgcGFzIHVuZSByw6hnbGUgYWJzb2x1ZS5+fgoKI35+Z3JheSxncmF5Oi5tYURSSUQufn4KCiN+ fmdyYXksZ3JheToudG9raW9zLn5+Cgojfn5ncmF5LGdyYXk6LnNhbi5zYWx2YURPUi4gKGF2ZWMg bCdhY2NlbnQgdG9uaXF1ZSBlc3BhZ25vbCl+fgoKISEhIU1vdHMgbG9qYmFuIGNvbW1lIG5vbXMK CgoKw4AgcHLDqXNlbnQsIHZvdXMgZGV2cmlleiDDqnRyZSBjYXBhYmxlIGRlIGxvamJhbmlzZXIg dm90cmUgcHJvcHJlIG5vbS4gVG91dGVmb2lzLCBzaSB2b3VzIHByw6lmw6lyZXosIHZvdXMgcG91 dmV6IHRyYWR1aXJlIHZvdHJlIG5vbSBlbiBsb2piYW4gKHNpIHZvdXMgc2F2ZXogY2UgcXUnaWwg c2lnbmlmaWUsIGJpZW4gc8O7ciksIG91IGFkb3B0ZXIgdW5lIHRvdXRlIG5vdXZlbGxlIGlkZW50 aXTDqSBsb2piYW5lLiBMZXMgaW5kaWVucyBkJ2Ftw6lyaXF1ZSBvbnQgdGVuZGFuY2Ugw6AgdHJh ZHVpcmUgbGV1ciBub20gZW4gYW5nbGFpcywgcGFydGllbGxlbWVudCBwYXJjZSBxdWUgbGV1ciBu b20gc2lnbmlmaWUgcXVlbHF1ZSBjaG9zZSwgZXQgcGFydGllbGxlbWVudCBwYXJjZSBxdSdpbCBu ZSBzJ2F0dGVuZGVudCBwYXMgw6AgY2UgcXVlIGxlIMKrwqB3YXNpY2h1wqDCuyBzb2l0IGNhcGFi bGUgZGUgcHJvbm9uY2VyIGRlcyBtb3RzIGVuIExha290YSwgQ2hlcm9rZWUgb3UgYXV0cmXCoCEK CgoKTGVzIG1vdHMgbG9qYmFuIChtaXMgw6AgcGFydCBsZXMgY21ldmxhKSBzZSB0ZXJtaW5lbnQg cGFyIHVuZSB2b3llbGxlLiBWb3VzIHBvdXZleiB1dGlsaXNlciBkZXMgbW90cyBsb2piYW4gY29t bWUgbm9tLiBNYWlzIHNpIHZvdXMgcHLDqWbDqXJleiBxdWUgdm90cmUgbm9tIHNvaXQgdW4gY21l dmxhIGV0IHF1J2lsIHNlIHRlcm1pbmUgcGFyIHVuZSB2b3llbGxlLCB2b3VzIHBvdXZleiBzb2l0 IGFqb3V0ZXIgdW5lIGNvbnNvbm5lIMOgIGxhIGZpbiBkZSBjZWx1aS1jaSwgc29pdCB0cm9ucXVl ciBsYSBkZXJuacOocmUgdm95ZWxsZS4KCgoKVm9pY2kgcXVlbHF1ZXMgZXhlbXBsZXMgKG5vbSBv cmlnaW5hbCwgc2lnbmlmaWNhdGlvbiwgbm9tIGV0IG5vbSBjb21tZSBjbWV2bGEpwqA6CgoqRmlz aCAoQW5nbGFpcyA9IHBvaXNzb24pIOKAkyBmaW5wZSDigJMgJycuZmlucC4nJwoKKkJqw7ZybiAo U2NhbmRpbmF2ZSA9IG91cnMpIOKAkyBjcmliZSDigJMgJycuY3JpYi4nJwoKKlZlcmRpIChJdGFs aWVuID0gdmVydCkg4oCTIGNyaW5vIOKAkyAnJy5jcmluLicnCgoqTWVpIExpIChDaGlub2lzID0g YmVhdSkg4oCTIG1lbGJpIOKAkyAnJy5tZWxiLicnCgoqQXloYW4gKFR1cmMgPSBTZWlnbmV1ciBM dW5lKSDigJMgbHVucmEgbm9ibGkgKD0gbHVybm9ibGkpIOKAkyAnJy5sdXJub2JsaXMuJycKCiEh TG9qYmFuIExlc3NvbnMg4oCTIGxlc3NvbiBvbmUgKGJyaWRpLCBqdWZyYSwgc3VtdGkgYW5kIHNl bGJyaSkKCkEgJydicmlkaScnIGlzIHRoZSBtb3N0IGNlbnRyYWwgdW5pdCBvZiBMb2piYW4gdXR0 ZXJhbmNlcy4gVGhlIGNvbmNlcHQgaXMgdmVyeSBjbG9zZSB0byB3aGF0IHdlIGNhbGwgYSBwcm9w b3NpdGlvbiBpbiBFbmdsaXNoLiBBIGJyaWRpIGlzIGEgY2xhaW0gdGhhdCBzb21lIG9iamVjdHMg c3RhbmQgaW4gYSByZWxhdGlvbiB0byBlYWNoIG90aGVyLCBvciB0aGF0IGFuIG9iamVjdCBoYXMg c29tZSBwcm9wZXJ0eS4gVGhpcyBzdGFuZHMgaW4gY29udHJhc3QgdG8gJydqdWZyYScnLCB3aGlj aCBhcmUgbWVyZWx5IExvamJhbiB1dHRlcmFuY2VzLCB3aGljaCBjYW4gYmUgYnJpZGkgb3IgYW55 dGhpbmcgZWxzZSBiZWluZyBzYWlkLiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgYnJpZGkgYW5k IGEganVmcmEgaXMgdGhhdCBhIGp1ZnJhIGRvZXMgbm90IG5lY2Vzc2FyaWx5IHN0YXRlIGFueXRo aW5nLCB3aGlsZSBhIGJyaWRpIGRvZXMuIFRodXMsIGEgYnJpZGkgbWlnaHQgYmUgdHJ1ZSBvciBm YWxzZSwgd2hpbGUgbm90IGFsbCBqdWZyYSBjYW4gYmUgc2FpZCB0byBiZSBzdWNoLgoKVG8gaGF2 ZSBzb21lIGV4YW1wbGVzIChpbiBFbmdsaXNoLCB0byBiZWdpbiB3aXRoKSwg4oCcTW96YXJ0IHdh cyB0aGUgZ3JlYXRlc3QgbXVzaWNpYW4gb2YgYWxsIHRpbWXigJ0gaXMgYSBicmlkaSwgYmVjYXVz ZSBpdCBtYWtlcyBhIGNsYWltIHdpdGggYSB0cnV0aCB2YWx1ZSwgYW5kIGl0IGludm9sdmVzIGFu IG9iamVjdCwgTW96YXJ0LCBhbmQgYSBwcm9wZXJ0eSwgYmVpbmcgdGhlIGdyZWF0ZXN0IG11c2lj aWFuIG9mIGFsbCB0aW1lLiBPbiB0aGUgY29udHJhcnksIOKAnE93ISBNeSB0b2Uh4oCdIGlzIG5v dCBhIGJyaWRpLCBzaW5jZSBpdCBkb2VzIG5vdCBpbnZvbHZlIGEgcmVsYXRpb24sIGFuZCB0aHVz IGRvZXMgbm90IHN0YXRlIGFueXRoaW5nLiBCb3RoLCB0aG91Z2gsIGFyZSBqdWZyYS4KClRyeSB0 byBpZGVudGlmeSB0aGUgYnJpZGkgYW1vbmcgdGhlc2UgRW5nbGlzaCBqdWZyYToKCgoKIyDigJxJ IGhhdGUgaXQgd2hlbiB5b3UgZG8gdGhhdC7igJ0KCiMg4oCcUnVucy7igJ0KCiMg4oCcV29haCwg dGhhdCBsb29rcyBkZWxpY2lvdXMh4oCdCgojIOKAnEdlZXosIG5vdCBhZ2Fpbi7igJ0KCiMg4oCc Tm8sIEkgb3duIHRocmVlIGNhcnPigJ0KCiMg4oCcTmluZXRlZW4gbWludXRlcyBwYXN0IGVpZ2h0 LuKAnQoKIyDigJxUaGlzIFNhdHVyZGF5LCB5ZXMu4oCdCgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6 MSwgMyBhbmQgNSBhcmUgYnJpZGkuIDIgY29udGFpbnMgbm8gb2JqZWN0cyBhbmQgdGhlIHJlc3Qg Y29udGFpbiBubyByZWxhdGlvbiBvciBjbGFpbSBvZiBhIHByb3BlcnR5Ln5+CgoKClB1dCBpbiBM b2piYW4gdGVybXMsIGEgYnJpZGkgY29uc2lzdHMgb2Ygb25lICcnc2VsYnJpJycsIGFuZCBvbmUg b3IgbW9yZSAnJ3N1bXRpJycuIFRoZSBzZWxicmkgaXMgdGhlIHJlbGF0aW9uIG9yIGNsYWltIGFi b3V0IHRoZSBvYmplY3QsIGFuZCB0aGUgc3VtdGkgYXJlIHRoZSBvYmplY3RzIHdoaWNoIGFyZSBp biBhIHJlbGF0aW9uLiBOb3RlIHRoYXQg4oCcb2JqZWN04oCdIGlzIG5vdCBhIHBlcmZlY3QgdHJh bnNsYXRpb24gb2Yg4oCcc3VtdGnigJ0sIHNpbmNlIOKAnHN1bXRp4oCdIGNhbiByZWZlciB0byBu b3QganVzdCBwaHlzaWNhbCBvYmplY3RzLCBidXQgY2FuIGFsc28gcHVyZWx5IGFic3RyYWN0IHRo aW5ncyBsaWtlIOKAnFRoZSBpZGVhIG9mIHdhcmZhcmXigJ0uIEEgYmV0dGVyIHRyYW5zbGF0aW9u IHdvdWxkIGJlIHNvbWV0aGluZyBsaWtlIOKAnHN1YmplY3QsIGRpcmVjdCBvciBpbmRpcmVjdCBv YmplY3TigJ0gZm9yIHN1bXRpLCBhbmQg4oCcdmVyYuKAnSBmb3Igc2VsYnJpLCB0aG91Z2gsIGFz IHdlIHdpbGwgc2VlLCB0aGlzIGlzIG5vdCBvcHRpbWFsIGVpdGhlci4KCldlIGNhbiBub3cgd3Jp dGUgdGhlIGZpcnN0IGltcG9ydGFudCBsZXNzb24gZG93bjoKCmJyaWRpID0gc2VsYnJpICsgb25l IG9yIG1vcmUgc3VtdGkKClB1dCBhbm90aGVyIHdheSwgYSBicmlkaSBzdGF0ZXMgdGhhdCBzb21l IHN1bXRpIGRvL2FyZSBzb21ldGhpbmcgZXhwbGFpbmVkIGJ5IGEgc2VsYnJpLgoKCgpJZGVudGlm eSB0aGUgc3VtdGkgYW5kIHNlbGJyaSBlcXVpdmFsZW50cyBpbiB0aGVzZSBFbmdsaXNoIGp1ZnJh OgoK4oCcSSB3aWxsIHBpY2sgdXAgbXkgZGF1Z2h0ZXJzIHdpdGggbXkgY2Fy4oCdCgoKCkFuc3dl cjogfn5ncmV5LGdyZXk6c2VsYnJpOiDigJxwaWNrIHVwICh3aXRoKeKAnS4gc3VtdGk6IOKAnEni gJ0sIOKAnG15IGRhdWdodGVyc+KAnSwg4oCcbXkgY2Fy4oCdfn4KCgoK4oCcSGUgYm91Z2h0IDUg bmV3IHNoaXJ0cyBmcm9tIE1hcmsgZm9yIGp1c3QgdHdvIGh1bmRyZWQgZXVybyHigJ0KCgoKQW5z d2VyOiB+fmdyZXksZ3JleTpzZWxicmk6IOKAnGJvdWdodCAoZnJvbSkgKGZvcinigJ0gc3VtdGk6 IOKAnEhl4oCdLCDigJw1IG5ldyBzaGlydHPigJ0sIOKAnE1hcmvigJ0gYW5kIOKAnHR3byBodW5k cmVkIGV1cm9z4oCdfn4KCgoKU2luY2UgdGhlc2UgY29uY2VwdHMgYXJlIHNvIGZ1bmRhbWVudGFs IHRvIExvamJhbiwgbGV0J3MgaGF2ZSBhIHRoaXJkIGV4YW1wbGU6IOKAnFNvIGZhciwgdGhlIEVQ QSBoYXMgZG9uZSBub3RoaW5nIGFib3V0IHRoZSBhbW91bnQgb2Ygc3VscGh1ciBkaW94aWRlLuKA nQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OnNlbGJyaTog4oCcaGFzIGRvbmUgKGFib3V0KeKAnSBz dW10aTog4oCcVGhlIEVQQeKAnSwg4oCcbm90aGluZ+KAnSBhbmQg4oCcdGhlIGFtb3VudCBvZiBz dWxwaHVyIGRpb3hpZGXigJ1+fgoKCgpOb3cgdHJ5IGJlZ2luIG1ha2luZyBMb2piYW4gYnJpZGku IEZvciB0aGlzIHlvdSB3aWxsIG5lZWQgdG8gdXNlIHNvbWUgd29yZHMsIHdoaWNoIGNhbiBhY3Qg YXMgc2VsYnJpOgoKJydfX2R1bmRhX18nJyB4MSBnaXZlcyB4MiB0byB4MyAod2l0aG91dCBwYXlt ZW50KQoKJydfX3BlbHh1X18nJyB4MSBpcyB5ZWxsb3cKCicnX196ZGFuaV9fJycgeDEgaXMgYSBo b21lIG9mIHgyCgoKCk5vdGljZSB0aGF0IHRoZXNlIHdvcmRzIG1lYW5pbmcg4oCcZ2l2ZeKAnSwg 4oCceWVsbG934oCdIGFuZCDigJxob21l4oCdIHdvdWxkIGJlIGNvbnNpZGVyZWQgYSB2ZXJiLCBh biBhZGplY3RpdmUgYW5kIGEgbm91biBpbiBFbmdsaXNoLiBJbiBMb2piYW4sIHRoZXJlIGFyZSBu byBzdWNoIGNhdGVnb3JpZXMgYW5kIG5vIHN1Y2ggZGlzdGluY3Rpb24uICcnZHVuZGEnJyBjYW4g YmUgdHJhbnNsYXRlZCDigJxnaXZlc+KAnSAodmVyYiksIOKAnGlzIGEgZ2l2ZXLigJ0gKG5vdW4p LCDigJxpcyBnaXZpbmfigJ0gKGFkamVjdGl2ZSkgYXMgd2VsbCBhcyB0byBhbiBhZHZlcmIgZm9y bS4gVGhleSBhbGwgYWN0IGFzIHNlbGJyaSwgYW5kIGFyZSB1c2VkIGluIHRoZSBzYW1lIHdheS4K CgoKQXMgd2VsbCBhcyBhIGZldyB3b3Jkcywgd2hpY2ggY2FuIGFjdCBhcyBzdW10aToKCicnX19t aV9fJycg4oCcSeKAnSBvciDigJx3ZeKAnSDigJMgdGhlIG9uZSBvciB0aG9zZSB3aG8gYXJlIHNw ZWFraW5nLgoKJydfX3RpX18nJyDigJx0aGlz4oCdIOKAkyBhIGNsb3NlIHRoaW5nIG9yIGV2ZW50 IG5lYXJieSB3aGljaCBjYW4gYmUgcG9pbnRlZCB0byBieSB0aGUgc3BlYWtlci4KCicnX19kb19f Jycg4oCceW914oCdIOKAkyB0aGUgb25lIG9yIHRob3NlIHdobyBhcmUgYmVpbmcgc3Bva2VuIHRv LgoKCgpTZWUgdGhlIHN0cmFuZ2UgdHJhbnNsYXRpb25zIG9mIHRoZSBzZWxicmkgYWJvdmUgLSBl c3BlY2lhbGx5IHRoZSB4MSwgeDIgYW5kIHgzPyBUaG9zZSBhcmUgY2FsbGVkIHN1bXRpIHBsYWNl cy4gVGhleSBhcmUgcGxhY2VzIHdoZXJlIHN1bXRpIGNhbiBnbyB0byBmaWxsIGEgYnJpZGkuIEZp bGxpbmcgYSBzdW10aSBpbiBhIHBsYWNlIHN0YXRlcyB0aGF0IHRoZSBzdW10aSBmaXRzIGluIHRo YXQgcGxhY2UuIFRoZSBzZWNvbmQgcGxhY2Ugb2YgJydkdW5kYScnLCBmb3IgZXhhbXBsZSwgeDIs IGlzIHRoZSB0aGluZyBiZWluZyBnaXZlbi4gVGhlIHRoaXJkIGlzIHRoZSBvYmplY3Qgd2hpY2gg cmVjZWl2ZXMgdGhlIHRoaW5nLiBOb3RpY2UgYWxzbyB0aGF0IHRoZSB0cmFuc2xhdGlvbiBvZiAn J2R1bmRhJycgaGFzIHRoZSB3b3JkIOKAnHRv4oCdIGluIGl0LiBUaGlzIGlzIGJlY2F1c2UsIHdo aWxlIHRoaXMgd29yZCBpcyBuZWVkZWQgaW4gRW5nbGlzaCB0byBzaWduaWZ5IHRoZSByZWNlaXZl ciwgdGhlIHJlY2VpdmVyIGlzIGluIHRoZSB0aGlyZCBzdW10aSBwbGFjZSBvZiAnJ2R1bmRhJycu IFNvIHdoZW4geW91IGZpbGwgdGhlIHRoaXJkIHN1bXRpIHBsYWNlIG9mICcnZHVuZGEnJywgdGhl IHN1bXRpIHlvdSBmaWxsIGluIGlzIGFsd2F5cyB0aGUgcmVjZWl2ZXIsIGFuZCB5b3UgZG9uJ3Qg bmVlZCBhbiBlcXVpdmFsZW50IHRvIHRoZSB3b3JkIOKAnHRv4oCdIQoKCgpUbyBzYXkgYSBicmlk aSwgeW91IHNpbXBseSBzYXkgdGhlIHgxIHN1bXRpIGZpcnN0LCB0aGVuIHRoZSBzZWxicmksIHRo ZW4gYW55IG90aGVyIHN1bXRpLgoKVXN1YWwgYnJpZGk6IHt4MSBzdW10aX0gX197c2VsYnJpfV9f IHt4MiBzdW10aX0ge3gzIHN1bXRpfSB7eDQgc3VtdGl9IHt4NSBzdW10aX0ge2FuZCBzbyBvbn0K ClRoZSBvcmRlciBjYW4gYmUgcGxheWVkIGFyb3VuZCB3aXRoLCBidXQgZm9yIG5vdywgd2Ugc3Rp Y2sgd2l0aCB0aGUgdXN1YWwgZm9ybS4gVG8gc2F5IOKAnEkgZ2l2ZSB0aGlzIHRvIHlvdeKAnSB5 b3UganVzdCBzYXkgJydtaSBkdW5kYSB0aSBkbycnLCB3aXRoIHRoZSB0aHJlZSBzdW10aSBhdCB0 aGUgcmlnaHQgcGxhY2VzLgoKCgpTbywgaG93IHdvdWxkIHlvdSBzYXkg4oCcVGhpcyBpcyBhIGhv bWUgb2YgbWXigJ0/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6Jyd0aSB6ZGFuaSBtaScnfn4KCgoK VHJ5IGEgZmV3IG1vcmUgaW4gb3JkZXIgdG8gZ2V0IHRoZSBpZGVhIG9mIGEgcGxhY2Ugc3RydWN0 dXJlIHNpbmsgaW4uCgoKCuKAnFlvdSBnaXZlIHRoaXMgdG8gbWXigJ0/CgoKCkFuc3dlcjogfn5n cmV5LGdyZXk6JydkbyBkdW5kYSB0aSBtaScnfn4KCgoKQW5kIHRyYW5zbGF0ZSAnJ3RpIHBlbHh1 JycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxUaGlzIGlzIHllbGxvdy7igJ1+fgoKCgpRdWl0 ZSBlYXN5IG9uY2UgeW91IGdldCB0aGUgaGFuZyBvZiBpdCwgcmlnaHQ/CgoKCk11bHRpcGxlIGJy aWRpIGFmdGVyIGVhY2ggb3RoZXIgYXJlIHNlcGFyYXRlZCBieSAnJy5pJycgVGhpcyBpcyB0aGUg TG9qYmFuIGVxdWl2YWxlbnQgb2YgZnVsbCBzdG9wLCBidXQgaXQgdXN1YWxseSBnb2VzIGJlZm9y ZSBicmlkaSBpbnN0ZWFkIG9mIGFmdGVyIHRoZW0uIEl0J3Mgb2Z0ZW4gbGVmdCBvdXQgYmVmb3Jl IHRoZSBmaXJzdCBicmlkaSwgdGhvdWdoLCBhcyBpbiBhbGwgdGhlc2UgZXhhbXBsZXM6CgonJ19f LmlfXycnIFNlbnRlbmNlIHNlcGFyYXRvci4gU2VwYXJhdGVzIGFueSB0d28ganVmcmEgKGFuZCB0 aGVyZWZvcmUgYWxzbyBicmlkaSkuCgoKCicndGkgemRhbmkgbWkgIC5pIHRpIHBlbHh1Jycg4oCd VGhpcyBpcyBhIGhvbWUgdG8gbWUuIFRoaXMgaXMgeWVsbG93LuKAnQoKCgpCZWZvcmUgeW91IG1v dmUgb24gdG8gdGhlIG5leHQgbGVzc29uLCBJIHJlY29tbWVuZCB0aGF0IHlvdSB0YWtlIGEgYnJl YWsgZm9yIGF0IGxlYXN0IHNldmVuIG1pbnV0ZXMgdG8gbGV0IHRoZSBpbmZvcm1hdGlvbiBzaW5r IGluLgoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIGxlc3NvbiB0d28gKEZBIGFuZCB6bydlKQoK TW9zdCBzZWxicmkgaGF2ZSBmcm9tIG9uZSB0byBmaXZlIHN1bXRpIHBsYWNlcywgYnV0IHNvbWUg aGF2ZSBtb3JlLiBIZXJlIGlzIGEgc2VsYnJpIHdpdGggZm91ciBzdW10aSBwbGFjZXM6CgonJ19f dmVjbnVfXycnIHgxIHNlbGxzIHgyIHRvIHgzIGZvciBwcmljZSB4NAoKCgpJZiBJIHdhbnQgdG8g c2F5IOKAnEkgc2VsbCB0aGlz4oCdLCBpdCB3b3VsZCBiZSB0b28gbXVjaCB0byBoYXZlIHRvIGZp bGwgdGhlIHN1bXRpIHBsYWNlcyB4MyBhbmQgeDQsIHdoaWNoIHNwZWNpZnkgd2hvIEkgc2VsbCB0 aGUgdGhpbmcgdG8sIGFuZCBmb3Igd2hhdCBwcmljZS4gTHVja2lseSwgSSBkb24ndCBuZWVkIHRv LiBzdW10aSBwbGFjZXMgY2FuIGJlIGZpbGxlZCB3aXRoICcnem8nZScnLiAnJ3pvJ2UnJyBpbmRp Y2F0ZXMgdG8gdXMgdGhhdCB0aGUgdmFsdWUgb2YgdGhlIHN1bXRpIHBsYWNlIGlzIHVuc3BlY2lm aWVkIGJlY2F1c2UgaXQncyB1bmltcG9ydGFudCBvciBjYW4gYmUgZGV0ZXJtaW5lZCBmcm9tIGNv bnRleHQuCgonJ19fem8nZV9fJycg4oCcc29tZXRoaW5n4oCdIEZpbGxzIGEgc3VtdGkgcGxhY2Ug d2l0aCBzb21ldGhpbmcsIGJ1dCBkb2VzIG5vdCBzdGF0ZSB3aGF0LgoKCgpTbyB0byBzYXkg4oCc SSBzZWxsIHRvIHlvdeKAnSwgSSBjb3VsZCBzYXkgJydtaSB2ZWNudSB6bydlIGRvIHpvJ2UnJyDi gJMgSSBzZWxsIHNvbWV0aGluZyB0byB5b3UgZm9yIHNvbWUgcHJpY2UuCgpIb3cgd291bGQgeW91 IHNheTog4oCcVGhhdCdzIGEgaG9tZSAoZm9yIHNvbWVib2R5KeKAnT8KCgoKQW5zd2VyOiB+fmdy ZXksZ3JleTogJyd0aSB6ZGFuaSB6bydlJyd+fgoKCgpIb3cgYWJvdXQg4oCcKHNvbWVvbmUpIGdp dmVzIHRoaXMgdG8gKHNvbWVvbmUp4oCdPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5Oicnem8nZSBk dW5kYSB0aSB6bydlJyd+fgoKCgpTdGlsbCwgZmlsbGluZyBvdXQgdGhyZWUgem8nZSBqdXN0IHRv IHNheSB0aGF0IGEgdGhpbmcgaXMgYmVpbmcgc29sZCB0YWtlcyB0aW1lLiBUaGVyZWZvcmUgeW91 IGRvbid0IG5lZWQgdG8gd3JpdGUgYWxsIHRoZSAnJ3pvJ2UnJyBpbiBhIGJyaWRpLiBUaGUgcnVs ZSBzaW1wbHkgaXMgdGhhdCBpZiB5b3UgbGVhdmUgb3V0IGFueSBzdW10aSwgdGhleSB3aWxsIGJl IGNvbnNpZGVyZWQgYXMgaWYgdGhleSBjb250YWluZWQgJyd6bydlJycuIElmIHRoZSBicmlkaSBi ZWdpbnMgd2l0aCBhIHNlbGJyaSwgdGhlIHgxIGlzIHByZXN1bWVkIHRvIGJlIG9taXR0ZWQgYW5k IGl0IGJlY29tZXMgJyd6bydlJycuCgpUcnkgaXQgb3V0LiBXaGF0J3MgTG9qYmFuIGZvciDigJxJ IHNlbGzigJ0/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6JydtaSB2ZWNudScnfn4KCgoKQW5kIHdo YXQgZG9lcyAnJ3pkYW5pIG1pJycgbWVhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxTb21l dGhpbmcgaXMgYSBob21lIG9mIG1l4oCdIG9yIGp1c3Qg4oCcSSBoYXZlIGEgaG9tZS7igJ1+fgoK CgpBcyBtZW50aW9uZWQgZWFybGllciwgdGhlIGZvcm0gZG9lc24ndCBoYXZlIHRvIGJlIHt4MSBz dW10aX0ge3NlbGJyaX0ge3gyIHN1bXRpfSB7eDMgc3VtdGl9IChlY3QuKSBJbiBmYWN0LCB5b3Ug Y2FuIHBsYWNlIHRoZSBzZWxicmkgYW55d2hlcmUgeW91IHdhbnQsIGp1c3Qgbm90IGF0IHRoZSBi ZWdpbm5pbmcgb2YgdGhlIGJyaWRpLiBJZiB5b3UgZG8gdGhhdCwgdGhlIHgxIGlzIGNvbnNpZGVy ZWQgbGVmdCBvdXQgYW5kIGZpbGxlZCB3aXRoICcnem8nZScnIGluc3RlYWQuIFNvIHRoZSBmb2xs b3dpbmcgdGhyZWUganVmcmEgYXJlIGFsbCB0aGUgZXhhY3RseSBzYW1lIGJyaWRpOgoKJydtaSBk dW5kYSB0aSBkbycnCgonJ21pIHRpIGR1bmRhIGRvJycKCicnbWkgdGkgZG8gZHVuZGEnJwoKCgpT b21ldGltZXMgdGhpcyBpcyB1c2VkIGZvciBwb2V0aWMgZWZmZWN0LiDigJxZb3Ugc2VsbCB5b3Vy c2VsZuKAnSBjb3VsZCBiZSAnJ2RvIGRvIHZlY251JycsIHdoaWNoIHNvdW5kcyBiZXR0ZXIgdGhh biAnJ2RvIHZlY251IGRvJycuIE9yIGl0IGNhbiBiZSB1c2VkIGZvciBjbGFyaXR5IGlmIHRoZSBz ZWxicmkgaXMgdmVyeSBsb25nIGFuZCB0aGVyZWZvcmUgYmV0dGVyIGJlIGxlZnQgYXQgdGhlIGVu ZCBvZiB0aGUgYnJpZGkuCgoKClRoZXJlIGFyZSBhbHNvIHNldmVyYWwgd2F5cyB0byBwbGF5IGFy b3VuZCB3aXRoIHRoZSBvcmRlciBvZiB0aGUgc3VtdGkgaW5zaWRlIHRoZSBicmlkaS4gVGhlIGVh c2llc3Qgb25lIGlzIGJ5IHVzaW5nIHRoZSB3b3JkcyAnJ2ZhJycsICcnZmUnJywgJydmaScnLCAn J2ZvJycgYW5kICcnZnUnJy4gTm90aWNlIHRoYXQgdGhlIHZvd2VscyBhcmUgdGhlIGZpdmUgdm93 ZWxzIGluIHRoZSBMb2piYW4gYWxwaGFiZXQgaW4gb3JkZXIuIFVzaW5nIG9uZSBvZiB0aGVzZSB3 b3JkcyBtYXJrcyB0aGF0IHRoZSBuZXh0IHN1bXRpIHdpbGwgZmlsbCB0aGUgeDEsIHgyLCB4Mywg eDQgYW5kIHg1IHJlc3BlY3RpdmVseS4gVGhlIG5leHQgc3VtdGkgYWZ0ZXIgdGhhdCB3aWxsIGJl IHByZXN1bWVkIHRvIGZpbGwgYSBzbG90IG9uZSBncmVhdGVyIHRoYW4gdGhlIHByZXZpb3VzLiBU byB1c2UgYW4gZXhhbXBsZToKCicnZHVuZGEgZmEgZG8gZmUgdGkgZG8nJyDigJMg4oCcR2l2aW5n IGJ5IHlvdSBvZiB0aGlzIHRoaW5nIHRvIHlvdeKAnS4gJydmYScnIG1hcmtzIHRoZSB4MSwgdGhl IGdpdmVyLCB3aGljaCBpcyB5b3UuICcnZmUnJyBtYXJrcyB0aGUgdGhpbmcgYmVpbmcgZ2l2ZW4s IHRoZSB4Mi4gU3VtdGkgY291bnRpbmcgdGhlbiBjb250aW51ZXMgZnJvbSAnJ2ZlJycsIG1lYW5p bmcgdGhhdCB0aGUgbGFzdCBzdW10aSBmaWxscyB4MywgdGhlIG9iamVjdCByZWNlaXZpbmcuCgoK CkF0dGVtcHQgdG8gdHJhbnNsYXRlIHRoZSBmb2xsb3dpbmcgdGhyZWUgc2VudGVuY2VzOgoKCgon J21pIHZlY251IGZvIHRpIGZlIGRvJycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJ1JIHNlbGws IGZvciB0aGUgcHJpY2Ugb2YgdGhpcywgeW914oCdLiBvciDigJxJIHNlbGwgeW91IGZvciB0aGUg cHJpY2Ugb2YgdGhpc+KAnSAocHJvYmFibHkgcG9pbnRpbmcgdG8gYSBidW5jaCBvZiBtb25leSl+ fgoKCgonJ3pkYW5pIGZlIHRpJycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxUaGlzIGhhcyBh IGhvbWXigJ0uIEhlcmUsIHRoZSBmZSBpcyByZWR1bmRhbnQufn4KCgoKJyd2ZWNudSB6bydlIG1p IHRpIGZhIGRvJycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxZb3Ugc2VsbCBzb21ldGhpbmcg dG8gbWUgZm9yIHRoaXMgcHJpY2XigJ1+fgoKCgoKCiEhTG9qYmFuIExlc3NvbnMg4oCTIGxlc3Nv biB0aHJlZSAodGFucnUgYW5kIGxvKQoKSW4gdGhpcyBsZXNzb24sIHlvdSB3aWxsIGJlY29tZSBm YW1pbGlhciB3aXRoIHRoZSBjb25jZXB0IG9mIGEgJyd0YW5ydScnLiBBIHRhbnJ1IGlzIGZvcm1l ZCB3aGVuIGEgc2VsYnJpIGlzIHB1dCBpbiBmcm9udCBvZiBhbm90aGVyIHNlbGJyaSwgbW9kaWZ5 aW5nIGl0cyBtZWFuaW5nLiBBIHRhbnJ1IGlzIGl0c2VsZiBhIHNlbGJyaSwgYW5kIGNhbiBjb21i aW5lIHdpdGggb3RoZXIgc2VsYnJpIG9yIHRhbnJ1IHRvIGZvcm0gbW9yZSBjb21wbGV4IHRhbnJ1 LiBUaHVzICcnemRhbmkgdmVjbnUnJyBpcyBhIHRhbnJ1LCBhcyB3ZWxsIGFzICAnJ3BlbHh1IHpk YW5pIHZlY251JycsIHdoaWNoIGlzIG1hZGUgZnJvbSB0aGUgdGFucnUgJydwZWx4dSB6ZGFuaScn IGFuZCB0aGUgc2luZ2xlIGJyaXZsYSB3b3JkICcndmVjbnUnJy4gVG8gdW5kZXJzdGFuZCB0aGUg Y29uY2VwdCBvZiB0YW5ydSwgY29uc2lkZXIgdGhlIEVuZ2xpc2ggbm91biBjb21iaW5hdGlvbiDi gJxsZW1vbiB0cmVl4oCdLiBJZiB5b3UgZGlkbid0IGtub3cgd2hhdCBhIGxlbW9uIHRyZWUgd2Fz LCBidXQgaGFkIGhlYXJkIGFib3V0IGJvdGggbGVtb25zIGFuZCB0cmVlcywgeW91IHdvdWxkIG5v dCBiZSBhYmxlIHRvIGRlZHVjZSB3aGF0IGEgbGVtb24gdHJlZSB3YXMuIFBlcmhhcHMgYSBsZW1v bi1jb2xvcmVkIHRyZWUsIG9yIGEgdHJlZSBzaGFwZWQgbGlrZSBhIGxlbW9uLCBvciBhIHRyZWUg d2hvc2UgYmFyayB0YXN0ZXMgbGlrZSBsZW1vbi4gVGhlIG9ubHkgdGhpbmdzIHlvdSBjb3VsZCBr bm93IGZvciBzdXJlIHdvdWxkIGJlIHRoYXQgaXQgd291bGQgYmUgYSB0cmVlLCBhbmQgaXQgd291 bGQgYmUgbGVtb24tbGlrZSBpbiBzb21lIHdheS4KCkEgdGFucnUgaXMgY2xvc2VseSBhbmFsb2dv dXMgdG8gdGhpcy4gSXQgY2Fubm90IGJlIHNhaWQgZXhhY3RseSB3aGF0IGEgJyd6ZGFuaSB2ZWNu dScnIGlzLCBidXQgaXQgY2FuIGJlIHNhaWQgdGhhdCBpdCBpcyBkZWZpbml0ZWx5IGEgdmVjbnUs IGFuZCB0aGF0IGl0J3MgemRhbmktbGlrZSBpbiBzb21lIHdheS4gQW5kIGl0IGNvdWxkIGJlIHpk YW5pLWxpa2UgaW4gYW55IHdheS4gSW4gdGhlb3J5LCBubyBtYXR0ZXIgaG93IHNpbGx5IG9yIGFi c3VyZCB0aGUgY29ubmVjdGlvbiB0byB6ZGFuaSB3YXMsIGl0IGNvdWxkIHN0aWxsIHRydWx5IGJl IGEgJyd6ZGFuaSB2ZWNudScnLiBIb3dldmVyLCBpdCBtdXN0IGFjdHVhbGx5IGJlIGEgdmVjbnUg aW4gdGhlIG9yZGluYXJ5IHNlbnNlIGluIG9yZGVyIGZvciB0aGUgdGFucnUgdG8gYXBwbHkuIFlv dSBjb3VsZCBnbG9zcyAnJ3pkYW5pIHZlY251JycgYXMg4oCcaG9tZSBzZWxsZXLigJ0sIG9yIGV2 ZW4gYmV0dGVyIGJ1dCB3b3JzZSBzb3VuZGluZyDigJxhIGhvbWUtdHlwZS1vZiBzZWxsZXLigJ0u IFRoZSBwbGFjZSBzdHJ1Y3R1cmUgb2YgYSB0YW5ydSBpcyBhbHdheXMgdGhhdCBvZiB0aGUgcmln aHRtb3N0IHNlbGJyaS4gSXQncyBhbHNvIHNhaWQgdGhhdCB0aGUgbGVmdCBzZWxicmkgbW9kaWZp ZXMgdGhlIHJpZ2h0IHNlbGJyaS4KCuKAnFJlYWxseT/igJ0sIHlvdSBhc2ssIHNjZXB0aWNhbGx5 LCDigJxJdCBkb2Vzbid0IG1hdHRlciBob3cgc2lsbHkgdGhlIGNvbm5lY3Rpb24gdG8gdGhlIGxl ZnQgd29yZCBpbiBhIHRhbnJ1IGlzLCBpdCdzIHN0aWxsIHRydWU/IFNvIEkgY291bGQgY2FsbCBh bGwgc2VsbGVycyBmb3IgJyd6ZGFuaSB2ZWNudScnIGFuZCB0aGVuIG1ha2UgdXAgc29tZSBzaWxs eSBleGN1c2Ugd2h5IEkgdGhpbmsgaXQncyB6ZGFuaS1saWtlP+KAnQoKV2VsbCB5ZXMsIGJ1dCB0 aGVuIHlvdSdkIGJlIGEgZGljay4gT3IgYXQgbGVhc3QgeW91J2QgYmUgaW50ZW50aW9uYWxseSBt aXNsZWFkaW5nLiBJbiBnZW5lcmFsLCB5b3Ugc2hvdWxkIHVzZSBhIHRhbnJ1IHdoZW4gaXQncyBv YnZpb3VzIGhvdyB0aGUgbGVmdCB3b3JkIHJlbGF0ZXMgdG8gdGhlIHJpZ2h0LgoKCgpBdHRlbXB0 IHRvIHRyYW5zbGF0ZSB0aGUgZm9sbG93aW5nOiAnJ3RpIHBlbHh1IHpkYW5pIGRvJycKCgoKQW5z d2VyOiB+fmdyZXksZ3JleTrigJxUaGF0IGlzIGEgeWVsbG93IGhvbWUgZm9yIHlvdeKAnSBBZ2Fp biwgd2UgZG9uJ3Qga25vdyBpbiB3aGljaCB3YXkgaXQncyB5ZWxsb3cuIFByb2JhYmx5IGl0J3Mg cGFpbnRlZCB5ZWxsb3csIGJ1dCB3ZSBkb24ndCBrbm93IGZvciBzdXJlLn5+CgoKCicnbWkgdmVj bnUgZHVuZGEnJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnEkgc2VsbC1saWtlIGdpdmXigJ0u IFdoYXQgY2FuIHRoYXQgbWVhbj8gTm8gaWRlYS4gSXQgY2VydGFpbmx5IGRvZXNuJ3QgbWVhbiB0 aGF0IHlvdSBzb2xkIHNvbWV0aGluZywgc2luY2UsIGJ5IGRlZmluaXRpb24gb2YgJydkdW5kYScn LCB0aGVyZSBjYW4gYmUgbm8gcGF5bWVudCBpbnZvbHZlZC4gSXQgaGFzIHRvIGJlIGEgZ2l2ZWF3 YXksIGJ1dCBiZSBzZWxsLWxpa2UgaW4gc29tZSBhc3BlY3Qufn4KCgoKQW5kIG5vdyBmb3Igc29t ZXRoaW5nIGNvbXBsZXRlbHkgZGlmZmVyZW50LiBXaGF0IGlmIEkgd2FudGVkIHRvIHNheSBJIHNv bGQgdG8gYSBHZXJtYW4/CgonJ19fZG90Y29fXycnIHgxIGlzIEdlcm1hbi9yZWZsZWN0cyBHZXJt YW4gY3VsdHVyZSBpbiBhc3BlY3QgeDIKCgoKSSBjYW4ndCBzYXkgJydtaSB2ZWNudSB6bydlIGRv dGNvJycgYmVjYXVzZSB0aGF0IHdvdWxkIGxlYXZlIHR3byBzZWxicmkgaW4gYSBicmlkaSwgd2hp Y2ggaXMgbm90IHBlcm1pdHRlZC4gSSBjb3VsZCBzYXkgJydtaSBkb3RjbyB2ZWNudScnIGJ1dCB0 aGF0IHdvdWxkIGJlIHVubmVjZXNzYXJ5IHZhZ3VlIC0gSSBjb3VsZCBzZWxsIGluIGEgR2VybWFu IHdheS4gTGlrZXdpc2UsIGlmIEkgd2FudCB0byBzYXkg4oCcSSBhbSBmcmllbmRzIHdpdGggYW4g QW1lcmljYW7igJ0sIHdoYXQgc2hvdWxkIEkgc2F5PwoKJydfX3BlbmRvX18nJyAxeCBpcyBhIGZy aWVuZCBvZiB4MgoKJydfX21lcmtvX18nJyB4MSBpcyBBbWVyaWNhbi9yZWZsZWN0IFVTIGN1bHR1 cmUgaW4gYXNwZWN0IHgyCgoKCkFnYWluLCB0aGUgb2J2aW91cyB3b3VsZCBiZSB0byBzYXkgJydt aSBwZW5kbyBtZXJrbycnLCBidXQgdGhhdCB3b3VsZCBmb3JtIGEgdGFucnUsIG1lYW5pbmcg4oCc SSBhbSBmcmllbmQtbGlrZSBBbWVyaWNhbuKAnSwgd2hpY2ggaXMgd3JvbmcuIFdoYXQgd2UgcmVh bGx5IHdhbnQgdG8gaXMgdG8gdGFrZSB0aGUgc2VsYnJpICcnbWVya28nJyBhbmQgdHJhbnNmb3Jt IGl0IGludG8gYSBzdW10aSBzbyBpdCBjYW4gYmUgdXNlZCBpbiB0aGUgc2VsYnJpICcncGVuZG8n Jy4gVGhpcyBpcyBkb25lIGJ5IHRoZSB0d28gd29yZHMgJydsbycnIGFuZCAnJ2t1JycuCgpfXycn bG8nJ19fIOKAkyBnZW5lcmljIGJlZ2luIGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRpIHdvcmQuIEV4 dHJhY3RzIHgxIG9mIHNlbGJyaSB0byB1c2UgYXMgc3VtdGkuCgpfXycna3UnJ19fIOKAkyBlbmQg Y29udmVydCBzZWxicmkgdG8gc3VtdGkgcHJvY2Vzcy4KCgoKWW91IHNpbXBseSBwbGFjZSBhIHNl bGJyaSBiZXR3ZWVuIHRoZXNlIHR3byB3b3JkcywgYW5kIGl0IHRha2VzIGFueXRoaW5nIHRoYXQg Y2FuIGZpbGwgdGhlIHgxIG9mIHRoYXQgc2VsYnJpIGFuZCB0dXJucyBpdCBpbnRvIGEgc3VtdGku CgpTbyBmb3IgaW5zdGFuY2UsIHRoZSB0aGluZ3MgdGhhdCBjYW4gZmlsbCB6ZGFuaeKAmHMgeDEg YXJlIG9ubHkgdGhpbmdzIHdoaWNoIGFyZSBob21lcyBvZiBzb21lYm9keS4gU28gJydsbyB6ZGFu aSBrdScnIG1lYW5zIOKAnGEgaG9tZSBvciBzb21lIGhvbWVzIGZvciBzb21lYm9keS7igJ0gU2lt aWxhcmx5LCBpZiBJIHNheSB0aGF0IHNvbWV0aGluZyBpcyBwZWx4dSwgaXQgbWVhbnMgaXQncyB5 ZWxsb3cuIFNvICcnbG8gcGVseHUga3UnJyByZWZlcnMgdG8gc29tZXRoaW5nIHllbGxvdy4KCgoK Tm93IHlvdSBoYXZlIHRoZSBuZWNlc3NhcnkgZ3JhbW1hciB0byBiZSBhYmxlIHRvIHNheSDigJxJ IGFtIGZyaWVuZHMgd2l0aCBhbiBBbWVyaWNhbi7igJ0gSG93PwoKCgpBbnN3ZXI6IH5+Z3JleSxn cmV5OicnbWkgcGVuZG8gbG8gbWVya28ga3UnJ35+CgoKClRoZXJlIGlzIGEgZ29vZCByZWFzb24g d2h5IHRoZSAnJ2t1JycgaXMgbmVjZXNzYXJ5LiBUcnkgdG8gdHJhbnNsYXRlIOKAnEEgR2VybWFu IHNlbGxzIHRoaXMgdG8gbWXigJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ2xvIGRvdGNvIGt1 IHZlY251IHRpIG1pJycgSWYgeW91IGxlYXZlIG91dCB0aGUga3UsIHlvdSBkbyBub3QgZ2V0IGEg YnJpZGksIGJ1dCBzaW1wbHkgdGhyZWUgc3VtdGkuIFNpbmNlIGxv4oCma3UgY2Fubm90IGNvbnZl cnQgYnJpZGksIHRoZSB0aSBpcyBmb3JjZWQgb3V0c2lkZSB0aGUgc3VtdGksIHRoZSBsby1jb25z dHJ1Y3QgaXMgZm9yY2VkIHRvIGNsb3NlIGFuZCBpdCBzaW1wbHkgYmVjb21lcyB0aGUgdGhyZWUg c3VtdGkgb2YgJydsbyBkb3RjbyB2ZWNudSB7a3V9JycsICcndGknJyBhbmQgJydtaScnLn5+CgoK CllvdSBhbHdheXMgaGF2ZSB0byBiZSBjYXJlZnVsIHdpdGgganVmcmEgbGlrZSAnJ2xvIHpkYW5p IGt1IHBlbHh1JycuIElmIHRoZSAnJ2t1JycgaXMgbGVmdCBvdXQgdGhlIGNvbnZlcnNpb24gcHJv Y2VzcyBkb2VzIG5vdCBlbmQsIGFuZCBpdCBzaW1wbHkgYmVjb21lcyBvbmUgc3VtdGksIG1hZGUg ZnJvbSB0aGUgdGFucnUgJyd6ZGFuaSBwZWx4dScnIGFuZCB0aGVuIGNvbnZlcnRlZCB3aXRoICcn bG8nJy4KCgoKCgohIUxvamJhbiBMZXNzb25zIOKAkyBsZXNzb24gZm91ciAoYXR0aXR1ZGluYWxz KQoKQW5vdGhlciBjb25jZXB0IHdoaWNoIGNhbiBiZSB1bmZhbWlsaWFyIHRvIEVuZ2xpc2ggc3Bl YWtlcnMgaXMgdGhhdCBvZiBhdHRpdHVkaW5hbHMuIEF0dGl0dWRpbmFscyBhcmUgd29yZHMgdGhh dCBleHByZXNzIGVtb3Rpb25zIGRpcmVjdGx5LiBUaGUgaWRlYSBvZiBhdHRpdHVkaW5hbHMgb3Jp Z2luYXRlZCBpbiB0aGUgZmVtaW5pc3QgY29uc3RydWN0ZWQgbGFuZ3VhZ2UgTGFkYW4sIHN1cHBv c2VkbHkgdG8gZW5hYmxlIHRydWUgZmVtYWxlIGVtb3Rpb25zLiBUaGUgaWRlYSB3YXMgdGhhdCBm ZW1hbGUgZW1vdGlvbmFsIGV4cHJlc3Npb24gd2FzIGhpbmRlcmVkIGJ5IG1hbGUgZG9taW5hdGVk IGxhbmd1YWdlLCBhbmQgaWYgb25seSB0aGV5IHdlcmUgYWJsZSB0byBiZSBleHByZXNzZWQgbW9y ZSBmcmVlbHksIHRoaXMgd291bGQgZW1wb3dlciB3b21lbiB0aHJvdWdoIGxpYmVyYXRpb24gb2Yg dGhlIGxhbmd1YWdlLgoKSW4gTG9qYmFuLCB0aGVyZSBpcyBubyBzdWNoIGFnZW5kYSwgYW5kIGF0 dGl0dWRpbmFscyBtb3N0IHByb2JhYmx5IGhhdmUgYmVlbiBkZXNpZ25lZCBpbnRvIHRoZSBsYW5n dWFnZSBiZWNhdXNlIHRoZXkgdHVybmVkIG91dCB0byBiZSBpbmNyZWRpYmx5IGF3ZXNvbWUgYW5k IHVzZWZ1bC4gVGhleSBhbGwgaGF2ZSBhIHNvLWNhbGxlZCBmcmVlIGdyYW1tYXIsIHdoaWNoIG1l YW5zIHRoYXQgdGhleSBjYW4gYXBwZWFyIGFsbW9zdCBhbnl3aGVyZSB3aXRoaW4gYnJpZGkgd2l0 aG91dCBkaXNydXB0aW5nIHRoZSBicmlkaSdzIGdyYW1tYXIgb3IgYW55IGdyYW1tYXRpY2FsIGNv bnN0cnVjdHMuCgpJbiBMb2piYW4gZ3JhbW1hciwgYW4gYXR0aXR1ZGluYWwgYXBwbGllcyB0byB0 aGUgcHJldmlvdXMgd29yZC4gSWYgdGhhdCBwcmV2aW91cyB3b3JkIGlzIGEgd29yZCB3aGljaCBi ZWdpbnMgYSBjb25zdHJ1Y3QgKGxpa2UgJycuaScnIG9yICcnbG8nJyksIGl0IGFwcGxpZXMgdG8g dGhlIGVudGlyZSBjb25zdHJ1Y3QuIExpa2V3aXNlLCBpZiB0aGUgYXR0aXR1ZGluYWwgZm9sbG93 cyBhIHdvcmQgd2hpY2ggZW5kcyBhIGNvbnN0cnVjdCBsaWtlICcna3UnJywgaXQgYXBwbGllcyB0 byB0aGUgZW5kZWQgY29uc3RydWN0LgoKCgpMZXQncyBoYXZlIHR3byBhdHRpdHVkaW5hbHMgdG8g bWFrZSBzb21lIGV4YW1wbGVzOgoKX18nJy51aScnX186IGF0dGl0dWRpbmFsOiBzaW1wbGUgcHVy ZSBlbW90aW9uOiBoYXBwaW5lc3MgLSB1bmhhcHBpbmVzcwoKX18nJ3phJ2EnJ19fOiBhdHRpdHVk aW5hbDogZXZpZGVudGlhbDogSSBkaXJlY3RseSBvYnNlcnZlCgoKCk5vdGUgdGhhdCBpbiB0aGUg ZGVmaW5pdGlvbiBvZiAnJy51aScnLCB0aGVyZSBhcmUgbGlzdGVkIHR3byBlbW90aW9ucywgaGFw cGluZXNzIGFuZCB1bmhhcHBpbmVzcy4gVGhpcyBtZWFucyB0aGF0ICcnLnVpJycgaXMgZGVmaW5l ZCBhcyBoYXBwaW5lc3MsIHdoaWxlIGl0cyDigJxuZWdhdGlvbuKAnSwgbWVhbnMgdW5oYXBwaW5l c3MuIOKAnE5lZ2F0aW9u4oCdIG1pZ2h0IGJlIHRoZSB3cm9uZyB3b3JkIGhlcmUuIFRlY2huaWNh bGx5LCB0aGUgb3RoZXIgZGVmaW5pdGlvbiBvZiAnJy51aScnIGlzIGFub3RoZXIgY29uc3RydWN0 LCAnJy51aSBuYWknJy4gTW9zdCBvZiB0aGUgdGltZSwgdGhlIHNlY29uZCBkZWZpbml0aW9uIG9m IGF0dGl0dWRpbmFscyAtIHRoZSBvbmVzIHN1ZmZpeGVkIHdpdGggJyduYWknJyAtIHJlYWxseSBp cyB0aGUgbmVnYXRpb24gb2YgdGhlIGJhcmUgYXR0aXR1ZGluYWwuIE90aGVyIHRpbWVzLCBub3Qg c28gbXVjaC4KCl9fJyduYWknJ19fIG1pc2MuIG5lZ2F0aW9uIC0gYXR0YWNoZWQgdG8gYXR0aXR1 ZGluYWxzLCBpdCBjaGFuZ2VzIHRoZSBtZWFuaW5nIGludG8gdGhlIGF0dGl0dWRpbmFsJ3MgIm5l Z2F0aW9uIgoKCgpBbmQgc29tZSBtb3JlIHNlbGJyaSwganVzdCBmb3IgdGhlIGhlY2sgb2YgaXQ6 CgpfXycnY2l0a2EnJ19fIOKAkyB4MSBlYXRzIHgyCgpfXycncGxpc2UnJ19fIOKAkyB4MSBpcyBh biBhcHBsZSBvZiBzdHJhaW4vdHlwZSB4MgoKCgpUaGUgc2VudGVuY2UgJydkbyBjaXRrYSBsbyBw bGlzZSBrdSAudWknJywgbWVhbnMg4oCcWW91IGVhdCBhbiBhcHBsZSwgeWF5IeKAnSAoZXNwZWNp YWxseSBleHByZXNzaW5nIHRoYXQgaXQgaXMgdGhlIF9fYXBwbGVfXyB0aGF0IHRoZSBzcGVha2Vy IGlzIGhhcHB5IGFib3V0LCBub3QgdGhlIGVhdGluZywgb3IgdGhlIGZhY3QgdGhhdCBpdCB3YXMg eW91LikgSW4gdGhlIHNlbnRlbmNlICcnZG8gemEnYSBjaXRrYSBsbyBwbGlzZSBrdScnLCB0aGUg c3BlYWtlciBkaXJlY3RseSBvYnNlcnZlcyB0aGF0IGl0IGlzIGluZGVlZCB0aGUgX1/igJx5b3Xi gJ1fXywgd2hvIGVhdHMgYW4gYXBwbGUgYXMgb3Bwb3NlZCB0byBzb21lb25lIGVsc2UuCgoKCklm IGFuIGF0dGl0dWRpbmFsIGlzIHBsYWNlZCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBicmlkaSwg aXQgaXMgdW5kZXJzdG9vZCB0byBhcHBseSB0byBhbiBleHBsaWNpdCBvciBpbXBsaWNpdCAnJy5p JycsIHRodXMgYXBwbHlpbmcgdG8gdGhlIGVudGlyZSBicmlkaToKCicnLnVpIHphJ2EgZG8gZHVu ZGEgbG8gcGxpc2Uga3UgbWknJyDigJMg4oCcWWF5LCBJIG9ic2VydmUgdGhhdCB5b3UgZ2l2ZSBh bi9zb21lIGFwcGxlIHRvIG1lIeKAnQoKCgonJ21pIHZlY251IC51aSBuYWkgbG8gemRhbmkga3Un JyDigJxJIHNlbGwgKHdoaWNoIHN1Y2tzISkgYSBob21l4oCdLgoKCgpUcnkgaXQgb3V0IHdpdGgg YSBmZXcgZXhhbXBsZXMuIEZpcnN0LCB0aG91Z2gsIGhlcmUgYXJlIHNvbWUgbW9yZSBhdHRpdHVk aW5hbHM6CgpfXycnLnUndScnX18gYXR0aXR1ZGluYWw6IHNpbXBsZSBwdXJlIGVtb3Rpb246IGd1 aWx0IC0gcmVtb3JzZWxlc3NuZXNzIC0gaW5ub2NlbmNlLgoKX18nJy5vaScnX18gYXR0aXR1ZGlu YWw6IGNvbXBsZXggcHVyZSBlbW90aW9uOiBjb21wbGFpbnQgLSBwbGVhc3VyZS4KCl9fJycuaXUn J19fIGF0dGl0dWRpbmFsOiBtaXNjZWxsYW5lb3VzIHB1cmUgZW1vdGlvbjogbG92ZSAtIGhhdGUu CgoKCkxvb2sgYXQgdGhhdCwgdHdvIHdvcmRzIHdpdGggdGhyZWUgZW1vdGlvbnMgaW4gdGhlIGRl ZmluaXRpb24hIFRoZSBtaWRkbGUgb25lIGlzIGFjY2Vzc2VkIGJ5IHN1ZmZpeGlubmcgd2l0aCAn J2N1J2knJy4gSXQncyBjb25zaWRlcmVkIHRoZSBtaWRwb2ludCBvZiB0aGUgZW1vdGlvbi4KCl9f JydjdSdpJydfXyBhdHRpdHVkaW5hbCBtaWRwb2ludCBzY2FsYXI6IGF0dGFjaCB0byBhdHRpdHVk aW5hbCB0byBjaGFuZ2UgdGhlIG1lYW5pbmcgdG8gdGhlICJtaWRwb2ludCIgb2YgdGhlIGVtb3Rp b24uCgoKClRyeSBzYXlpbmcg4oCcSSBnaXZlIHNvbWV0aGluZyB0byBhIEdlcm1hbiwgd2hvIEkg bG92ZeKAnQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgZHVuZGEgZmkgbG8gZG90Y28ga3Ug Lml1Jycgb3IgJyd6bydlJycgaW5zdGVhZCBvZiAnJ2ZpJyd+fgoKCgpOb3cg4oCcQWFoLCBJIGVh dCBhIHllbGxvdyBhcHBsZeKAnQoKQW5zd2VyOiB+fmdyZXksZ3JleTonJy5vaSBuYWkgbWkgY2l0 a2EgbG8gcGVseHUgcGxpc2Uga3UnJ35+CgoKCkxldCdzIGhhdmUgYW5vdGhlciBhdHRpdHVkaW5h bCBvZiBhIGRpZmZlcmVudCBraW5kIHRvIGlsbHVzdHJhdGUgc29tZXRoaW5nIHBlY3VsaWFyOgoK JycuZWknJyBBdHRpdHVkaW5hbDogY29tcGxleCBwcm9wb3NpdGlvbmFsIGVtb3Rpb246IG9ibGln YXRpb24gLSBmcmVlZG9tLgoKCgpTbywgcXVpdGUgZWFzeTog4oCcSSBoYXZlIHRvIGdpdmUgdGhl IGFwcGxlIGF3YXnigJ0gaXMgJydtaSBkdW5kYSAuZWkgbG8gcGxpc2Uga3UnJywgcmlnaHQ/IEl0 IGlzLCBhY3R1YWxseSEgV2hlbiB5b3UgdGhpbmsgYWJvdXQgaXQsIHRoYXQncyB3ZWlyZC4gV2h5 IGlzIGl0IHRoYXQgYWxsIHRoZSBvdGhlciBhdHRpdHVkaW5hbHMgd2UgaGF2ZSBzZWVuIHNvIGZh ciBleHByZXNzZXMgdGhlIHNwZWFrZXIncyBmZWVsaW5nIGFib3V0IHRoZSBicmlkaSwgYnV0IHRo aXMgb25lIGFjdHVhbGx5IGNoYW5nZXMgd2hhdCB0aGUgYnJpZGkgbWVhbnM/IFN1cmVseSwgYnkg c2F5aW5nIOKAnEkgaGF2ZSB0byBnaXZlIHRoZSBhcHBsZSBhd2F54oCdLCB3ZSBzYXkgbm90aGlu ZyBhYm91dCB3aGV0aGVyIHRoZSBhcHBsZSBhY3R1YWxseSBpcyBiZWluZyBnaXZlbiBhd2F5LiBJ ZiBJIGhhZCB1c2VkICcnLnVpJycsIGhvd2V2ZXIsIEkgd291bGQgYWN0dWFsbHkgaGF2ZSBzdGF0 ZWQgdGhhdCBJIGdhdmUgdGhlIGFwcGxlIGF3YXksIGFuZCB0aGF0IEkgd2FzIGhhcHB5IGFib3V0 IGl0LiBXaGF0J3MgdGhhdCBhbGwgYWJvdXQ/CgoKClRoaXMgaXNzdWUsIGV4YWN0bHkgaG93IGF0 dGl0dWRpbmFscyBjaGFuZ2UgdGhlIGNvbmRpdGlvbnMgb24gd2hpY2ggYSBicmlkaSBpcyB0cnVl LCBpcyBhIHN1YmplY3Qgb2YgYSBtaW5vciBkZWJhdGUuIFRoZSBvZmZpY2lhbCwg4oCcdGV4dGJv b2vigJ0gcnVsZSwgd2hpY2ggcHJvYmFibHkgd29uJ3QgYmUgY2hhbmdlZCwgaXMgdGhhdCB0aGVy ZSBpcyBhIGRpc3RpbmN0aW9uIGJldHdlZW4g4oCccHVyZSBlbW90aW9uc+KAnSBhbmQg4oCccHJv cG9zaXRpb25hbCBlbW90aW9uc+KAnS4gT25seSBwcm9wb3N0aW9uYWwgZW1vdGlvbnMgY2FuIGNo YW5nZSB0aGUgdHJ1dGggY29uZGl0aW9ucywgd2hpbGUgcHVyZSBlbW90aW9ucyBjYW5ub3QuIElu IG9yZGVyIHRvIGV4cHJlc3MgYSBwcm9wb3NpdGlvbmFsIGVtb3Rpb25hbCBhdHRpdHVkaW5hbCB3 aXRob3V0IGNoYW5naW5nIHRoZSB0cnV0aCB2YWx1ZSBvZiB0aGUgYnJpZGksIHlvdSBjYW4ganVz dCBzZXBhcmF0ZSBpdCBmcm9tIHRoZSBicmlkaSB3aXRoICcnLmknJy4gVGhlcmUgaXMgYWxzbyBh IHdvcmQgZm9yIGV4cGxpY2l0bHkgY29uc2VydmluZyBvciBjaGFuZ2luZyB0aGUgdHJ1dGggY29u ZGl0aW9ucyBvZiBhIGJyaWRpOgoKCgpfXycnZGEnaScnX18gYXR0aXR1ZGluYWw6IGRpc2N1cnNp dmU6IHN1cHBvc2luZyAtIGluIGZhY3QKClNheWluZyAnJ2RhJ2knJyBpbiBhIGJyaWRpIGNoYW5n ZXMgdGhlIHRydXRoIGNvbmRpdGlvbnMgdG8gaHlwb3RoZXRpY2FsLCB3aGljaCBpcyB0aGUgZGVm YXVsdCB1c2luZyBwcm9wb3NpdGlvbmFsIGF0dGl0dWRpbmFscy4gU2F5aW5nICcnZGEnaSBuYWkn JyBjaGFuZ2VzIHRoZSB0cnV0aCBjb25kaXRpb24gdG8gdGhlIG5vcm1hbCwgd2hpY2ggaXMgZGVm YXVsdCB1c2luZyBwdXJlIGF0dGl0dWRpbmFscy4KCgoKU28sIHdoYXQncyB0d28gd2F5cyBvZiBz YXlpbmcg4oCcSSBnaXZlIHRoZSBhcHBsZSBhd2F54oCdPyAoYW5kIGZlZWwgb2JsaWdhdGlvbiBh Ym91dCBpdCkKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIGR1bmRhIGxvIHBsaXNlIC5pIC5l aScnICBhbmQgJydtaSBkdW5kYSBkYSdpIG5haSAuZWkgbG8gcGxpc2UnJ35+CgoKClRoZSBmZWVs aW5nIG9mIGFuIGF0dGl0dWRpbmFsIGNhbiBiZSBzdWJzY3JpYmVkIHRvIHNvbWVvbmUgZWxzZSB1 c2luZyAnJ2RhaScnLiBVc3VhbGx5IGluIG9yZGluYXJ5IHNwZWVjaCwgdGhlIGF0dGl0dWRpbmFs IGlzIHN1YnNjcmliZWQgdG8gdGhlIGxpc3RlbmVyLCBidXQgaXQgZG9lc24ndCBoYXZlIHRvIGJl IHNvLiBBbHNvLCBiZWNhdXNlIHRoZSB3b3JkIGlzIGdsb3NzZWQg4oCcZW1wYXRoeeKAnSAoZmVl bGluZyBvdGhlcnMgZW1vdGlvbnMpLCBzb21lIExvamJhbmlzdHMgbWlzdGFrZW5seSB0aGluayB0 aGF0IHRoZSBzcGVha2VyIG11c3Qgc2hhcmUgdGhlIGVtb3Rpb24gYmVpbmcgc3Vic2NyaWJlZCB0 byBvdGhlcnMuCgpfXycnZGFpJydfXyBhdHRpdHVkaW5hbCBtb2RpZnllcjogRW1wYXRoeSAoc3Vi c2NyaWJlcyBhdHRpdHVkaW5hbCB0byBzb21lb25lIGVsc2UsIHVuc3BlY2lmaWVkKQoKRXhhbXBs ZTogJyd1J2kgLm9pIGRhaSBjaXRrYSB0aScnIC0g4oCcSGEgaGEsIHRoaXMgd2FzIGVhdGVuISBU aGF0IG11c3QgaGF2ZSBodXJ0IeKAnQoKCgpXaGF0IG9mdGVuIHVzZWQgcGhyYXNlIGNvdWxkICcn Lm9pIHUnaSBkYWknJyBtZWFuPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnE91Y2gsIHZlcnkg ZnVubnku4oCdfn4KCgoKQW5kIGFub3RoZXIgb25lIHRvIHRlc3QgeW91ciBrbm93bGVkZ2U6IFRy eSB0byB0cmFuc2xhdGUg4oCcSGUgd2FzIHNvcnJ5IGhlIHNvbGQgYSBob21l4oCdIChyZW1lbWJl cmluZywgdGhhdCB0ZW5zZSBpcyBpbXBsaWVkIGFuZCBuZWVkIG5vdCBiZSBzcGVjaWZpZWQuIEFs c28sIOKAnGhl4oCdIGNvdWxkIGJlIG9idmlvdXMgZnJvbSBjb250ZXh0KQoKCgpBbnN3ZXI6IH5+ Z3JleSxncmV5OicndSd1IGRhaSB2ZWNudSBsbyB6ZGFuaSBrdScnfn4KCgoKTGFzdGx5LCB0aGUg aW50ZW5zaXR5IG9mIGFuIGF0dGl0dWRpbmFsIGNhbiBiZSBzcGVjaWZpZWQgdXNpbmcgY2VydGFp biB3b3Jkcy4gVGhlc2UgY2FuIGJlIHVzZWQgYWZ0ZXIgYW4gYXR0aXR1ZGluYWwsIG9yIGFuIGF0 dGl0dWRpbmFsIHdpdGggJyduYWknJyBvciAnJ2N1J2knJyBzdWZmaXhlZC4gSXQncyBsZXNzIGNs ZWFyIHdoYXQgaGFwcGVucyB3aGVuIHlvdSBhdHRhY2ggaXQgdG8gb3RoZXIgd29yZHMsIGxpa2Ug YSBzZWxicmksIG11c3QgaXQncyBtb3N0bHkgdW5kZXJzdG9vZCBhcyBpbnRlbnNpZnlpbmcgb3Ig d2Vha2VuaW5nIHRoZSBzZWxicmkgaW4gc29tZSB1bnNwZWNpZmllZCB3YXk6Cgp8fCBNb2RpZnlp bmcgd29yZCAgfCBJbnRlbnNpdHkgIAoKIGNhaXwgICBFeHRyZW1lCgogc2FpfCAgIFN0cm9uZwoK IChub25lKXwgICBVbnNwZWNpZmllZCAobWVkaXVtKQoKIHJ1J2UgIHwgICBXZWFrfHwKCgoKV2hh dCBlbW90aW9uIGlzIGV4cHJlc3NlZCB1c2luZyAnJy51J2kgbmFpIHNhaScnID8KCl9fJycudSdp JydfXzogYXR0aXR1ZGluYWw6IHNpbXBsZSBwdXJlIGVtb3Rpb246IGFtdXNlbWVudCAtIHdlYXJp bmVzcwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OlN0cm9uZyB3ZWFyaW5lc3N+fgoKCgpBbmQgaG93 IHdvdWxkIHlvdSBleHByZXNzIHRoYXQgeW91IGFyZSBtaWxkbHkgcmVtb3JzZWxlc3M/CgoKCkFu c3dlcjogfn5ncmV5LGdyZXk6JycudSd1IGN1J2kgcnUnZScnfn4KCgoKISFMb2piYW4gbGVzc29u cyDigJMgbGVzc29uIGZpdmUgKFNFKQoKQmVmb3JlIHdlIHZlbnR1cmUgaW50byB0aGUgdGVycml0 b3J5IG9mIG1vcmUgY29tcGxleCBjb25zdHJ1Y3RzLCB5b3Ugc2hvdWxkIGxlYXJuIGFub3RoZXIg bWVjaGFuaXNtIGZvciByZW9yZGVyaW5nIHRoZSBzdW10aSBvZiBhIHNlbGJyaS4gVGhpcywgYXMg d2Ugd2lsbCBzaG93LCBpcyB2ZXJ5IHVzZWZ1bCBmb3IgbWFraW5nIGRlc2NyaXB0aW9uLWxpa2Ug c3VtdGkgKHRoZSBraW5kIG9mIHN1bXRpIHdpdGggJydsbycnKS4KCkNvbnNpZGVyIHRoZSBzZW50 ZW5jZSDigJxJIGVhdCBhIGdpZnTigJ0sIHdoaWNoIG1pZ2h0IGJlIGFwcHJvcHJpYXRlIGlmIHRo YXQgZ2lmdCBpcyBhbiBhcHBsZS4gVG8gdHJhbnNsYXRlIHRoaXMsIGl0IHdvdWxkIHNlZW0gbmF0 dXJhbCB0byBsb29rIHVwIGEgc2VsYnJpIG1lYW5pbmcg4oCcZ2lmdOKAnSBiZWZvcmUgY29udGlu dWluZy4gSG93ZXZlciwgaWYgb25lIGxvb2tzIGNhcmVmdWxseSBhdCB0aGUgZGVmaW5pdGlvbiBv ZiAnJ2R1bmRhJycsIHgxIGdpdmVzIHgyIHRvIHgzLCBvbmUgcmVhbGl6ZXMgdGhhdCB0aGUgeDIg b2YgJydkdW5kYScnIGlzIHNvbWV0aGluZyBnaXZlbiDigJMgYSBnaWZ0LgoKU28sIHRvIGV4cHJl c3MgdGhhdCBzZW50ZW5jZSwgd2UgY2FuJ3Qgc2F5ICcnbWkgY2l0a2EgbG8gZHVuZGEga3UnJywg YmVjYXVzZSAnJ2xvIGR1bmRhIGt1Jycgd291bGQgYmUgdGhlIHgxIG9mICcnZHVuZGEnJywgd2hp Y2ggaXMgYSBkb25vciBvZiBhIGdpZnQuIENhbm5pYmFsaXNtIGFzaWRlLCB3ZSBkb24ndCB3YW50 IHRvIHNheSB0aGF0LiBXaGF0IHdlIHdhbnQgaXMgYSB3YXkgdG8gZXh0cmFjdCB0aGUgeDIgb2Yg YSBzZWxicmkuCgpUaGlzIGlzIG9uZSBleGFtcGxlIHdoZXJlIGl0IGlzIHVzZWZ1bCB0byB1c2Ug dGhlIHdvcmQgJydzZScnLiBXaGF0ICcnc2UnJyBkb2VzIGlzIHRvIG1vZGlmeSBhIHNlbGJyaSBz dWNoIHRoYXQgdGhlIHgxIGFuZCB4MiBvZiB0aGF0IHNlbGJyaSB0cmFkZSBwbGFjZXMuIFRoZSBj b25zdHJ1Y3Qgb2YgJydzZScnICsgc2VsYnJpIGlzIG9uIGl0cyBvd24gY29uc2lkZXJlZCBvbmUg c2VsYnJpLiBMZXQncyB0cnkgd2l0aCBhbiBvcmRpbmFyeSBzZW50ZW5jZToKCl9fJydmYW52YScn X18gPSDigJx4MSB0cmFuc2xhdGVzIHgyIHRvIGxhbmd1YWdlIHgzIGZyb20gbGFuZ3VhZ2UgeDQg d2l0aCByZXN1bHQgb2YgdHJhbnNsYXRpb24geDXigJ0KCicndGkgc2UgZmFudmEgbWknJyA9ICcn bWkgZmFudmEgdGknJwoKVGhpcyBpcyB0cmFuc2xhdGVkIGJ5IG1lICg9IEkgdHJhbnNsYXRlIHRo aXMpLiBPZnRlbiwgYnV0IG5vdCBhbHdheXMsIGJyaWRpIHdpdGggJydzZScnLWNvbnN0cnVjdHMg YXJlIHRyYW5zbGF0ZWQgdG8gc2VudGVuY2VzIHdpdGggdGhlIHBhc3NpdmUgdm9pY2UsIHNpbmNl IHRoZSB4MSBpcyBvZnRlbiB0aGUgb2JqZWN0IHRha2luZyBhY3Rpb24uCgonJ3NlJycgaGFzIGl0 cyBvd24gZmFtaWx5IG9mIHdvcmRzLiBBbGwgb2YgdGhlbSBzd2FwIGEgZGlmZmVyZW50IHBsYWNl IHdpdGggdGhlIHgxLgoKfHxzZQl8c3dhcCB4MSBhbmQgeDIKCnRlCXxzd2FwIHgxIGFuZCB4MwoK dmUJfHN3YXAgeDEgYW5kIHg0Cgp4ZQl8c3dhcCB4MSBhbmQgeDV8fAoKTm90ZSB0aGF0IHMsIHQs IHYsIGFuZCB4IGFyZSBjb25zZWN1dGl2ZSBjb25zb25hbnRzIGluIHRoZSBsb2piYW4gYWxwaGFi ZXQuCgoKClNvOiBVc2luZyB0aGlzIGtub3dsZWRnZSwgd2hhdCB3b3VsZCAnJ3RpIHhlIGZhbnZh IHRpJycgbWVhbj8KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxUaGlzIGlzIGEgdHJhbnNsYXRp b24gb2YgdGhpc+KAnSAob3IgJydmYW52YSB0aSBmdSB0aScnKX5+CgoKCicnc2UnJyBhbmQgaXRz IGZhbWlseSBjYW4gb2YgY291cnNlIGJlIGNvbWJpbmVkIHdpdGggJydmYScnIGFuZCBpdHMgZmFt aWx5LiBUaGUgcmVzdWx0IGNhbiBiZSB2ZXJ5IGNvbmZ1c2luZyBpbmRlZWQsIGlmIHlvdSB3aXNo IHRvIG1ha2UgaXQgc286CgpfXycna2xhbWEnJ19fID0g4oCceDEgdHJhdmVscy9nb2VzIHRvIHgy IGZyb20geDMgdmlhIHg0IHVzaW5nIHg1IGFzIHRyYW5zcG9ydGF0aW9uIGRldmljZeKAnQoKJydm dSBsbyB6ZGFuaSBrdSB0ZSBrbGFtYSBmZSBkbyB0aSBmYSBtaScnID0gJydtaSB0ZSBrbGFtYSBk byB0aSBsbyB6ZGFuaSBrdScnIGFuZCBzaW5jZSAnJ3RlJycgZXhjaGFuZ2VzIHgxIGFuZCB4Mzog PSAnJ3RpIGtsYW1hIGRvIG1pIGxvIHpkYW5pIGt1JycKCuKAnFRoaXMgdHJhdmVscyB0byB5b3Ug ZnJvbSBtZSB2aWEgYSBob21lLuKAnSBPZiBjb3Vyc2UsIG5vIG9uZSB3b3VsZCBtYWtlIHN1Y2gg YSBzZW50ZW5jZSBleGNlcHQgdG8gY29uZnVzZSBwZW9wbGUsIG9yIGNydWVsbHkgdG8gdGVzdCB0 aGVpciB1bmRlcnN0YW5kaW5nIG9mIExvamJhbiBncmFtbWFyLgoKQW5kIHRodXMsIHdlIGhhdmUg Y29tZSB0byB0aGUgcG9pbnQgd2hlcmUgd2UgY2FuIHNheSDigJxJIGVhdCBhIGdpZnQu4oCdLiBT aW1wbHkgZXhjaGFuZ2UgdGhlIHN1bXRpIHBsYWNlcyBvZiAnJ2R1bmRhJycgdG8gZ2V0IHRoZSBn aWZ0IHRvIGJlIHgxLCB0aGVuIGV4dHJhY3QgdGhpcyBuZXcgeDEgd2l0aCAnJ2xvJycuLi4nJ2t1 JycuIFNvLCBob3cgd291bGQgeW91IHNheSBpdD8KCk9uZSAocG9zc2libGUpIGFuc3dlcjogfn5n cmV5LGdyZXk6JydtaSBjaXRrYSBsbyBzZSBkdW5kYSBrdScnfn4KClRoaXMgc2hvd3Mgb25lIG9m IHRoZSBtYW55IHVzZXMgZm9yICcnc2UnJyBhbmQgaXRzIGZhbWlseS4KCgoKCgohIUxvamJhbiBs ZXNzb25zIOKAkyBsZXNzb24gc2l4IChhYnN0cmFjdGlvbnMpCgpTbyBmYXIgd2UgaGF2ZSBvbmx5 IGV4cHJlc3NlZCBzaW5nbGUgc2VudGVuY2VzIG9uZSBhdCBhIHRpbWUuIFRvIGV4cHJlc3MgbW9y ZSBjb21wbGV4IHRoaW5ncywgaG93ZXZlciwgeW91IG9mdGVuIG5lZWQgc3Vib3JkaW5hdGUgc2Vu dGVuY2VzLiBMdWNraWx5LCB0aGVzZSBhcmUgbXVjaCBlYXNpZXIgaW4gTG9qYmFuIHRoYW4gd2hh dCBvbmUgd291bGQgZXhwZWN0LgoKV2UgY2FuIGJlZ2luIHdpdGggYW4gZXhhbXBsZSB0byBkZW1v bnN0cmF0ZSB0aGlzOiDigJxJIGFtIGhhcHB5IHRoYXQgeW91IGFyZSBteSBmcmllbmQu4oCdIEhl cmUsIHRoZSBtYWluIGJyaWRpIGlzIOKAnEkgYW0gaGFwcHkgdGhhdCBYLuKAnSwgYW5kIHRoZSBz dWItYnJpZGkgaXMg4oCcWW91IGFyZSBteSBmcmllbmQu4oCdIExvb2tpbmcgYXQgdGhlIGRlZmlu aXRpb24gZm9yIOKAnGhhcHB54oCdLCB3aGljaCBpcyAnJ2dsZWtpJyc6CgpfXycnZ2xla2knJ19f IOKAnHgxIGlzIGhhcHB5IGFib3V0IHgyIChldmVudC9zdGF0ZSnigJ0KCk9uZSBzZWVzIHRoYXQg dGhlIHgyIG5lZWRzIHRvIGJlIGFuIGV2ZW50IG9yIGEgc3RhdGUuIFRoaXMgaXMgbmF0dXJhbCwg YmVjYXVzZSBvbmUgY2Fubm90IGJlIGhhcHB5IGFib3V0IGFuIG9iamVjdCBpbiBpdHNlbGYsIG9u bHkgYWJvdXQgc29tZSBzdGF0ZSB0aGUgb2JqZWN0IGlzIGluLiBCdXQgYWxhcyEgT25seSBicmlk aSBjYW4gZXhwcmVzcyBhIHN0YXRlIG9yIGFuIGV2ZW50LCBhbmQgb25seSBzdW10aSBjYW4gZmls bCB0aGUgeDIgb2YgJydnbGVraScnIQoKQXMgeW91IG1pZ2h0IGhhdmUgZ3Vlc3NlZCwgdGhlcmUg aXMgYSBzb2x1dGlvbi4gVGhlIHdvcmRzICcnc3UndScnLi4uJydrZWknJyBpcyBhIGdlbmVyaWMg 4oCcY29udmVydCBicmlkaSB0byBzZWxicmnigJ0gZnVuY3Rpb24sIGFuZCB3b3JrcyBqdXN0IGxp a2UgJydsbycn4oCmJydrdScnLgoKX18nJ3N1J3UnJ19fIHgxIGlzIGFuIGFic3RyYWN0aW9uIG9m IHticmlkaX0gb2YgdHlwZSB4MgoKX18nJ2tlaScnX18gZW5kIGFic3RyYWN0aW9uCgoKCkV4YW1w bGU6CgpfXycnbWVsYmknJ19fIHgxIGlzIGJlYXV0aWZ1bCB0byB4Mi4KCl9fJydkYW5zdScnX18g eDEgZGFuY2VzIHRvIGFjY29tcGFuaW1lbnQvbXVzaWMvcmh5dGhtIHgyLgoKJydtZWxiaSBzdSd1 IGRhbnN1IGtlaScnIC0g4oCcQmVhdXRpZmlsIGRhbmNpbmfigJ0v4oCcQmVhdXRpZmlsIGRhbmNl 4oCdCgoKCkl0J3MgdXN1YWxseSBoYXJkIHRvIGZpbmQgZ29vZCB1c2VzIG9mIGEgYnJpZGkgYXMg YSBzZWxicmkuIEhvd2V2ZXIsIHNpbmNlICcnc3UndSBCUklESSBrZWknJyBpcyBhIHNlbGJyaSwg b25lIGNhbiBjb252ZXJ0IGl0IHRvIGEgc3VtdGkgdXNpbmcgJydsbycnLi4uJydrdScnLgoKTm93 IHdlIGhhdmUgdGhlIGVxdWlwbWVudCB0byBleHByZXNzIOKAnEkgYW0gaGFwcHkgdGhhdCB5b3Ug YXJlIG15IGZyaWVuZOKAnS4gVHJ5IGl0IG91dCEKCl9fJydwZW5kbycnX18g4oCceDEgaXMgYSBm cmllbmQgb2YgeDLigJ0KCgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIGdsZWtpIGxvIHN1J3Ug ZG8gcGVuZG8gbWkga2VpIGt1Jyd+fgoKCgpIb3dldmVyLCAnJ3N1J3UnJ+KApicna2VpJycgZG9l cyBub3Qgc2VlIG11Y2ggdXNlLiBQZW9wbGUgcHJlZmVyIHRvIHVzZSB0aGUgbW9yZSBzcGVjaWZp YyB3b3JkcyAnJ251JyfigKYnJ2tlaScnIGFuZCAnJ2R1J3UnJ+KApicna2VpJycuIFRoZXkgd29y ayB0aGUgc2FtZSB3YXksIGJ1dCBtZWFuIHNvbWV0aGluZyBkaWZmZXJlbnQuICcnbnXigKZrZWkn JyB0cmVhdHMgdGhlIGJyaWRpIGluIGJldHdlZW4gYXMgYW4gZXZlbnQgb3Igc3RhdGUsIGFuZCAn J2R1J3XigKZrZWknJyB0cmVhdHMgaXQgYXMgYW4gYWJzdHJhY3QgYnJpZGksIGZvciBleHByZXNz aW5nIHRoaW5ncyBsaWtlIGlkZWFzLCB0aG91Z2h0cyBvciB0cnV0aHMuIEFsbCB0aGVzZSB3b3Jk cyAoZXhjZXB0ICcna2VpJycpIGFyZSBjYWxsZWQgYWJzdHJhY3RvcnMuIFRoZXJlIGFyZSBtYW55 IG9mIHRoZW0sIGFuZCBvbmx5IGZldyBhcmUgdXNlZCBtdWNoLiAnJ3N1J3XigKZrZWknJyBpcyBh IGdlbmVyYWwgYWJzdHJhY3RvciwgYW5kIHdpbGwgd29yayBpbiBhbGwgY2FzZXMuCgoKClVzZSAn J251JycgdG8gc2F5IOKAnEknbSBoYXBweSBhYm91dCB0YWxraW5nIHRvIHlvdS7igJ0KCl9fJyd0 YXZsYScnX18geDEgdGFsa3MgdG8geDIgYWJvdXQgc3ViamVjdCB4MyBpbiBsYW5ndWFnZSB4NC4K CgoKQW5zd2VyOiB+fmdyZXksZ3JleTonJ21pIGdsZWtpIGxvIG51IHRhdmxhIGRvIGtlaSBrdScn IChub3RpY2UgYm90aCB0aGUgRW5nbGlzaCBhbmQgdGhlIExvamJhbiBpcyB2YWd1ZSBhcyB0byB3 aG8gaXMgZG9pbmcgdGhlIHRhbGtpbmcpLn5+CgoKCk90aGVyIGltcG9ydGFudCBhYnN0cmFjdG9y cyBpbmNsdWRlOiAnJ2thLi4ua2VpJycgKHByb3BlcnR5L2FzcGVjdCBhYnN0cmFjdGlvbiksICcn c2knby4uLmtlaScnIChjb25jZXB0L2lkZWEgYWJzdHJhY3Rpb24pLCAnJ25pLi4ua2VpJycgKHF1 YW50aXR5IGFic3RyYWN0aW9uKSBhbW9uZyBvdGhlcnMuIFRoZSBtZWFuaW5ncyBvZiB0aGVzZSBp cyBhIGNvbXBsaWNhdGVkIG1hdHRlciwgYW5kIHdpbGwgYmUgZGlzY3Vzc2VkIG11Y2ggbGF0ZXIs IGluIGxlc3NvbiB0d2VudHktbmluZS4gRm9yIG5vdywgeW91J2xsIGhhdmUgdG8gZG8gd2l0aG91 dCB0aGVtLgoKCgpJdCBpcyBpbXBvcnRhbnQgdG8gbm90aWNlIHRoYXQgc29tZSBhYnN0cmFjdG9y cyBoYXZlIHNldmVyYWwgc3VtdGkgcGxhY2VzLiBBcyBhbiBleGFtcGxlLCAnJ2R1J3UnJyBjYW4g YmUgbWVudGlvbmVkLiAnJ2R1J3UnJyBpcyBkZWZpbmVkOgoKJydkdSd1JycgPSDigJxhYnN0cmFj dG9yLiB4MSBpcyB0aGUgcHJlZGljYXRlL2JyaWRpIG9mIHticmlkaX0gZXhwcmVzc2VkIGluIHNl bnRlbmNlIHgy4oCdLgoKVGhlIG90aGVyIHN1bXRpIHBsYWNlcyBiZXNpZGVzIHgxIGlzIHJhcmVs eSB1c2VkLCBidXQgJydsbyBzZSBkdSd1IHticmlkaX0ga2VpIGt1JycgaXMgc29tZXRpbWVzIHVz ZWQgYXMgYSBzdW10aSBmb3IgaW5kaXJlY3QgcXVvdGF0aW9uOiDigJxJIHNhaWQgdGhhdCBJIHdh cyBnaXZlbiBhIGRvZ+KAnSBjYW4gYmUgd3JpdHRlbiAnJ21pIGN1c2t1IGxvIHNlIGR1J3UgbWkg dGUgZHVuZGEgbG8gZ2Vya3Uga3Uga2VpIGt1JycsIGlmIHlvdSB3aWxsIHBhcmRvbiB0aGUgd2Vp cmQgZXhhbXBsZS4KCl9fJydjdXNrdScnX18geDEgZXhwcmVzc2VzIHgyIHRvIHgzIHRocm91Z2gg bWVkaXVtIHg0CgpfXycnZ2Vya3UnJ19fIHgxIGlzIGEgZG9nIG9mIHJhY2UgeDIKCiEhTG9qYmFu IGxlc3NvbnMg4oCTIGxlc3NvbiBzZXZlbiAoTk9JKQoKV2hpbGUgd2UncmUgYXQgaXQsIHRoZXJl J3MgYW5vdGhlciB0eXBlIG9mIHN1Ym9yZGluYXRlIGJyaWRpLiBUaGVzZSBhcmUgY2FsbGVkIHJl bGF0aXZlIGNsYXVzZXMuIFRoZXkgYXJlIHNlbnRlbmNlcyB3aGljaCBhZGQgc29tZSBkZXNjcmlw dGlvbiB0byBhIHN1bXRpLiBJbmRlZWQsIHRoZSDigJx3aGljaOKAnSBpbiB0aGUgcHJldmlvdXMg c2VudGVuY2UgbWFya2VkIHRoZSBiZWdpbm5pbmcgb2YgYSByZWxhdGl2ZSBjbGF1c2UgaW4gRW5n bGlzaCBkZXNjcmliaW5nIHJlbGF0aXZlIGNsYXVzZXMuIEluIExvamJhbiwgdGhleSBjb21lIGlu IHR3byBmbGF2b3JzLCBhbmQgaXQgbWlnaHQgYmUgd29ydGggZGlzdGluZ3Vpc2hpbmcgdGhlIHR3 byBraW5kcyBiZWZvcmUgbGVhcm5pbmcgaG93IHRvIGV4cHJlc3MgdGhlbS4KClRoZSB0d28ga2lu ZHMgYXJlIGNhbGxlZCByZXN0cmljdGl2ZSBhbmQgbm9uLXJlc3RyaWN0aXZlIChvciBpbmNpZGVu dGlhbCkgcmVsYXRpdmUgY2xhdXNlcy4gQW4gZXhhbXBsZSB3b3VsZCBiZSBnb29kIGhlcmU6Cgri gJxNeSBicm90aGVyLCB3aG8gaXMgdHdvIG1ldGVycyB0YWxsLCBpcyBhIHBvbGl0aWNpYW4u4oCd IFRoaXMgY2FuIGJlIHVuZGVyc3Rvb2QgaW4gdHdvIHdheXMuIEkgY291bGQgaGF2ZSBzZXZlcmFs IGJyb3RoZXJzLCBpbiB3aGljaCBjYXNlIHNheWluZyBoZSBpcyB0d28gbWV0ZXJzIHRhbGwgd2ls bCBsZXQgeW91IGtub3cgd2hpY2ggYnJvdGhlciBJIGFtIHRhbGtpbmcgYWJvdXQuIE9yIEkgbWln aHQgaGF2ZSBvbmx5IG9uZSBicm90aGVyLCBpbiB3aGljaCBjYXNlIEkgYW0gc2ltcGx5IGdpdmlu ZyB5b3UgYWRkaXRpb25hbCBpbmZvcm1hdGlvbi4KCgoKSW4gRW5nbGlzaCBhcyB3ZWxsIGFzIExv amJhbiB3ZSBkaXN0aW5ndWlzaCBiZXR3ZWVuIHRoZXNlIHR3byBraW5kcyDigJMgdGhlIGZpcnN0 IGludGVycHJldGF0aW9uIGlzIHJlc3RyaWN0aXZlIChzaW5jZSBpdCBoZWxwcyByZXN0cmljdCB0 aGUgcG9zc2libGUgYnJvdGhlcnMgSSBtaWdodCBiZSB0YWxraW5nIGFib3V0KSwgdGhlIHNlY29u ZCBub24tcmVzdHJpY3RpdmUuIFdoZW4gc3BlYWtpbmcgRW5nbGlzaCwgY29udGV4dCBhbmQgdG9u ZSBvZiB2b2ljZSAob3IgaW4gd3JpdHRlbiBFbmdsaXNoLCBwdW5jdHVhdGlvbikgaGVscHMgdXMg ZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGVzZSB0d28sIGJ1dCBub3Qgc28gaW4gTG9qYmFuLiBMb2pi YW4gdXNlcyB0aGUgY29uc3RydWN0cyAnJ3BvaeKApmt1J28nJyBhbmQgJydub2nigKZrdSdvJycg Zm9yIHJlc3RyaWN0aXZlIGFuZCBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlcywgcmVz cGVjdGl2ZWx5LgoKTGV0J3MgaGF2ZSBhIExvamJhbmljIGV4YW1wbGUsIHdoaWNoIGNhbiBhbHNv IGV4cGxhaW4gb3VyIHN0cmFuZ2UgZ2lmdC1lYXRpbmcgYmVoYXZpb3VyIGluIHRoZSBleGFtcGxl IGluIGxlc3NvbiBmaXZlOgoKX18nJ25vaScnX18gYmVnaW4gbm9uLXJlc3RyaWN0aXZlIHJlbGF0 aXZlIGNsYXVzZSAoY2FuIG9ubHkgYXR0YWNoIHRvIHN1bXRpKQoKX18nJ3BvaScnX18gYmVnaW4g cmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlIChjYW4gb25seSBhdHRhY2ggdG8gc3VtdGkpCgpf Xycna3UnbycnX18gZW5kIHJlbGF0aXZlIGNsYXVzZQoKCgonJ21pIGNpdGthIGxvIHNlIGR1bmRh IGt1IHBvaSBwbGlzZSBrdSdvJycgPSDigJxJIGVhdCBhIGdpZnQgc3VjaCB0aGF0IChzb21ldGhp bmcgaXMpIGFuIGFwcGxl4oCdLiAKCkhlcmUgdGhlICcncG9p4oCma3UnbycnIGlzIHBsYWNlZCBq dXN0IGFmdGVyICcnbG8gc2UgZHVuZGEga3UnJywgc28gaXQgYXBwbGllcyB0byB0aGUgZ2lmdC4g VG8gYmUgc3RyaWN0LCB0aGUgcmVsYXRpdmUgY2xhdXNlIGRvZXMgbm90IHNwZWNpZnkgd2hhdCBp dCBpcywgd2hpY2ggaXMgYW4gYXBwbGUsIGJ1dCBzaW5jZSB0aGUgcmVsYXRpdmUgY2xhdXNlIGFw cGxpZXMgdG8gdGhlIGdpZnQsIHdlIGNhbiBzYWZlbHkgYXNzdW1lIHRoYXQgaXQgbWVhbnMgdGhh dCB0aGUgZ2lmdCBpcyBhbiBhcHBsZS4gQWZ0ZXIgYWxsLCBpbiB0aGUgY29udGV4dCBvZiBsZXNz b24gZml2ZSwgdGhpcyBzZWVtcyByZWFzb25hYmxlLiBJZiB3ZSB3YW50IHRvIGJlIGFic29sdXRl bHkgc3VyZSB0aGF0IGl0IGluZGVlZCB3YXMgdGhlIGdpZnQgdGhhdCB3YXMgYW4gYXBwbGUsIHdl IHVzZSB0aGUgd29yZCAnJ2tlJ2EnJywgd2hpY2ggaXMgYSAnJ3N1bWthJ2knJyAoYSBMb2piYW4g cHJvbm91biwgbW9yZSBvbiB0aGVtIGxhdGVyKSByZXByZXNlbnRpbmcgdGhlIHN1bXRpIHdoaWNo IHRoZSByZWxhdGl2ZSBjbGF1c2UgaXMgYXR0YWNoZWQgdG8uCgpfXycna2UnYScnX18gc3Vta2En aTsgcmVmZXJzIHRvIHRoZSBzdW10aSwgdG8gd2hpY2ggdGhlIHJlbGF0aXZlIGNsYXVzZSBpdCBh dHRhY2hlZC4KCgoKJycudWkgbWkgY2l0a2EgbG8gc2UgZHVuZGEga3UgcG9pIGtlJ2EgcGxpc2Ug a3UnbycnID0g4oCcWWF5LCBJIGVhdCBhIGdpZnQgd2hpY2ggaXMgYW4gYXBwbGXigJ0uCgpUbyB1 bmRlcmxpbmUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiByZXN0cmljdGl2ZSBhbmQgbm9uLXJlc3Ry aWN0aXZlIHJlbGF0aXZlIGNsYXVzZXMsIGhlcmUncyBhbm90aGVyIGV4YW1wbGU6CgoKCl9fJyds b2pibycnX18g4oCceDEgcmVmbGVjdHMgTG9qYmFuaWMgY3VsdHVyZS9jb21tdW5pdHkgaXMgYXNw ZWN0IHgyOyB4MSBpcyBMb2piYW5pYy7igJ0KCgoKJydtaSBub2kgbG9qYm8ga3UnbyBmYW52YSBm byBsbyBsb2pibyBrdScnID0g4oCcSSwgd2hvIGFtIGEgTG9qYmFuaWMsIHRyYW5zbGF0ZSBmcm9t IHNvbWUgTG9qYmFuaWMgbGFuZ3VhZ2Uu4oCdIEhlcmUsIHRoZXJlIGlzIG5vdCBtdWx0aXBsZSB0 aGluZ3Mgd2hpY2ggJydtaScnIGNvdWxkIHJlZmVyIHRvLCBhbmQgdGhlIGZhY3QgdGhhdCBJIGFt IGxvamJhbmljIGlzIG1lcmVseSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIG5vdCBuZWVkZWQgdG8g aWRlbnRpZnkgbWUuIFRoZXJlZm9yZSAnJ25vaeKApmt1J28nJyBpcyBhcHByb3ByaWF0ZS4KClNl ZSBpZiB5b3UgY2FuIHRyYW5zbGF0ZSB0aGlzOiDigJxJIGZsaXJ0IHdpdGggYSBtYW4gd2hvIGlz IGJlYXV0aWZ1bC9oYW5kc29tZeKAnS4KCl9fJyduYW5tdScnX18g4oCceDEgaXMgYSBtYW7igJ0K Cl9fJydtZWxiaScnX18g4oCceDEgaXMgYmVhdXRpZnVsIHRvIHgyIGluIGFzcGVjdCAoa2EpIHgz IGJ5IHN0YW5kYXJkIHg04oCdCgpfXycnY2luamlrY2EnJ19fIOKAnHgxIGZsaXJ0cy9jb3VydHMg eDIsIGV4aGliaXRpbmcgc2V4dWFsaXR5IHgzIGJ5IHN0YW5kYXJkIHg04oCdCgoKCkFuc3dlcjog fn5ncmV5LGdyZXk6JydtaSBjaW5qaWtjYSBsbyBuYW5tdSBrdSBwb2kge2tlJ2F9IG1lbGJpIGt1 J28nJ35+CgoKCk9uIGEgbW9yZSB0ZWNobmljYWwgc2lkZSBub3RlLCBpdCBtaWdodCBiZSB1c2Vm dWwgdG8ga25vdyB0aGF0ICcnbG8ge3NlbGJyaX0ga3UnJyBpcyBvZnRlbiBzZWVuIGRlZmluZWQg YXMgJyd6bydlIG5vaSBrZSdhIHtzZWxicml9IGt1J28nJy4KCgoKCgohIUxvamJhbiBMZXNzb25z IOKAkyBMZXNzb24gZWlnaHQgKHRlcm1pbmF0b3IgZWxpc2lvbikKCicnLmF1IGRhJ2kgbWkgZGpp Y2EgbG8gbnUgbGUgbWVya28gcG9pIHR1bmJhIG1pIF9fdmF1IGt1J28ga3VfXyBqaW1wZSBsbyBk dSd1IG1pIG5hIG5lbGNpIGxvIG51IHZvJ2EgZGFyeGkgbWkgX192YXUga2VpIGt1IHZhdSBrZWkg a3UgdmF1IGtlaSBrdSB2YXVfXycnCgogLSAg4oCcSSB3aXNoIHRoZSBBbWVyaWNhbiwgd2hvIGlz IG15IHNpYmxpbmcsIHdvdWxkIHVuZGVyc3RhbmQgdGhhdCBJIGRvbid0IGxpa2UgdGhhdCBoZSBo aXRzIG1lLuKAnQoKUmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBhYm92ZSBzZW50ZW5jZSBpcyBi ZWluZyB1bmRlcnN0b29kLCAoaXQgc2hvdWxkbid0LCBhcyBpdCBjb250YWlucyB3b3JkcyB3ZSBo YXZlIG5vdCBjb3ZlcmVkIGluIHRoZXNlIGxlc3NvbnMgeWV0KSBvbmUgdGhpbmcgc3RhbmRzIG91 dDogQXMgbW9yZSBjb21wbGV4IExvamJhbiBzdHJ1Y3R1cmVzIGFyZSBsZWFybmVkLCBtb3JlIGFu ZCBtb3JlIG9mIHRoZSBzZW50ZW5jZXMgZ2V0IGZpbGxlZCB3aXRoICcna3UnJywgJydrZWknJywg JydrdSdvJycgYW5kIG90aGVyIG9mIHRob3NlIHdvcmRzIHdoaWNoIGJ5IHRoZW1zZWx2ZXMgY2Fy cnkgbm8gbWVhbmluZy4KCgoKVGhlIGZ1bmN0aW9uIG9mIGFsbCB0aGVzZSB3b3JkcyBpcyB0byBz aWduYWwgdGhlIGVuZCBvZiBhIGNlcnRhaW4gZ3JhbW1hdGljYWwgY29uc3RydWN0LCBsaWtlIGZv ciBpbnN0YW5jZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnSBpbiB0aGUgY2FzZSBvZiAn J2t1JycuIFRoZSBFbmdsaXNoIHdvcmQgZm9yIHRoaXMga2luZCBvZiB3b3JkIGlzIOKAnHRlcm1p bmF0b3LigJ0sIHRoZSBMb2piYW4gd29yZCBpcyAnJ2ZhJ29ybWEnbycnLiBUaGV5IGFyZSB3cml0 dGVuIGluIGJvbGQgaW4gdGhlIGV4YW1wbGUgYWJvdmUuCgpOb3RlOiBUaGUgJyd2YXUnJyBpbiB0 aGUgYWJvdmUgZXhhbXBsZSBhcmUgdGhlIGZhJ29ybWEnbyBmb3Ig4oCcZW5kIGJyaWRp4oCdLiBU aGVyZSBpcyBhIGdvb2QgcmVhc29uIHlvdSBoYXZlIG5vdCB5ZXQgc2VlbiBpdCwgc3RheSB0dW5l ZC4KCl9fJyd2YXUnJ19fIGZhJ29ybWEnbzogVGVybWluYXRlcyBicmlkaS4KCgoKSW4gbW9zdCBz cG9rZW4gYW5kIHdyaXR0ZW4gTG9qYmFuLCBtb3N0IGZhJ29ybWEnbyBhcmUgc2tpcHBlZCAoZWxp ZGVkKS4gVGhpcyBncmVhdGx5IHNhdmVzIHN5bGxhYmxlcyBpbiBzcGVlY2ggYW5kIHNwYWNlIGlu IHdyaXRpbmcsIGhvd2V2ZXIsIG9uZSBtdXN0IGFsd2F5cyBiZSBjYXJlZnVsIHdoZW4gZWxpZGlu ZyBmYSdvcm1hJ28uIEluIHRoZSBzaW1wbGUgZXhhbXBsZSAnJ2xvIG1lcmtvIGt1IGtsYW1hJycs IHJlbW92aW5nIHRoZSBmYSdvcm1hJ28gJydrdScnIHdvdWxkIHlpZWxkICcnbG8gbWVya28ga2xh bWEnJywgd2hpY2ggaXMgYSBzaW5nbGUgc3VtdGkgbWFkZSBmcm9tIHRoZSB0YW5ydSAnJ21lcmtv IGtsYW1hJycuIFRodXMsIGl0IG1lYW5zIOKAnGFuIEFtZXJpY2FuIHRyYXZlbGVy4oCdIGluc3Rl YWQgb2Yg4oCcYW4gQW1lcmljYW4gdHJhdmVsc+KAnS4gZmEnb3JtYSdvIGVsaXNpb24gY2FuIGxl YWQgdG8gdmVyeSB3cm9uZyByZXN1bHRzIGlmIGRvbmUgaW5jb3JyZWN0bHksIHdoaWNoIGlzIHdo eSB5b3UgaGF2ZW4ndCBsZWFybmVkIGFib3V0IGl0IHVudGlsIG5vdy4KCgoKVGhlIHJ1bGUgZm9y IHdoZW4gZmEnb3JtYSdvIGNhbiBiZSBlbGlkZWQgaXMgdmVyeSBzaW1wbGUsIGF0IGxlYXN0IGlu IHRoZW9yeTog4oCcWW91IGNhbiBlbGlkZSBhIGZhJ29ybWEnbywgX19pZiBhbmQgb25seSBpZl9f IGRvaW5nIHNvIGRvZXMgbm90IGNoYW5nZSB0aGUgZ3JhbW1hdGljYWwgY29uc3RydWN0cyBpbiB0 aGUgc2VudGVuY2Uu4oCdCgpNb3N0IGZhJ29ybWEnbyBjYW4gYmUgc2FmZWx5IGVsaWRlZCBhdCB0 aGUgZW5kIG9mIHRoZSBicmlkaS4gRXhjZXB0aW9ucyBhcmUgdGhlIG9idmlvdXMgb25lcyBsaWtl IOKAnGVuZCBxdW90ZeKAnS1mYSdvcm1hJ28gYW5kIOKAnGVuZCBicmlkaSBncm91cGluZ+KAnS1m YSdvcm1hJ28uIFRoaXMgaXMgd2h5ICcndmF1JycgaXMgYWxtb3N0IG5ldmVyIHVzZWQg4oCTIHNp bXBseSBiZWdpbm5pbmcgYSBuZXcgYnJpZGkgd2l0aCAnJy5pJycgd2lsbCBhbG1vc3QgYWx3YXlz IHRlcm1pbmF0ZSB0aGUgcHJlY2VkaW5nIGJyaWRpIGFueXdheS4gSXQgaGFzIG9uZSBmcmVxdWVu dCB1c2UsIGhvd2V2ZXIuIFNpbmNlIGF0dGl0dWRpbmFscyBhbHdheXMgYXBwbHkgdG8gdGhlIHBy ZWNlZGluZyB3b3JkLCBhcHBseWluZyBpdCB0byBhIGZhJ29ybWEnbyBhcHBsaWVzIGl0IHRvIHRo ZSBlbnRpcmUgY29uc3RydWN0IHdoaWNoIGlzIHRlcm1pbmF0ZWQuIFVzaW5nICcndmF1JycsIG9u ZSBjYW4gdGhlbiB1c2UgYXR0aXR1ZGluYWxzIGFmdGVydGhvdWdodCBhbmQgYXBwbHkgdGhlbSB0 byB0aGUgZW50aXJlIGJyaWRpOgoKJyd6YSdhIGRvIGR1bmRhIGxvIHpkYW5pIHtrdX0gbG8gcHJl bnUge2t1fS4uLiB2YXUgaSdlJycgLSDigJxJIHNlZSB0aGF0IHlvdSBnaXZlIGEgaG9tZSB0byBh IHBlcnNvbi4uLiBJIGFwcHJvdmUh4oCdCgpfXycncHJlbnUnJ19fIHgxIGlzIGEgcGVyc29uOyB4 MSBoYXMgYSBwZXJzb25hbGl0eS4KCgoKS25vd2luZyB0aGUgYmFzaWMgcnVsZXMgZm9yIGZhJ29y bWEnbyBlbGlzaW9uLCB3ZSBjYW4gdGh1cyByZXR1cm4gdG8gdGhlIG9yaWdpbmFsIHNlbnRlbmNl IGFuZCBiZWdpbiByZW1vdmluZyBmYSdvcm1hJ286CgoKCicnLmF1IGRhJ2kgbWkgZGppY2EgbG8g bnUgbGUgbWVya28gcG9pIHR1bmJhIG1pIF9fdmF1IGt1J28ga3VfXyBqaW1wZSBsbyBkdSd1IG1p IG5hIG5lbGNpIGxvIG51IHZvJ2EgZGFyeGkgbWkgX192YXUga2VpIGt1IHZhdSBrZWkga3UgdmF1 IGtlaSBrdSB2YXVfXycnCgoKCldlIGNhbiBzZWUgdGhhdCB0aGUgZmlyc3QgJyd2YXUnJyBpcyBn cmFtbWF0aWNhbGx5IHVubmVjZXNzYXJ5LCBiZWNhdXNlIHRoZSBuZXh0IG5vbi1mYSdvcm1hJ28t d29yZCBpcyAnJ2ppbXBlJycsIHdoaWNoIGlzIGEgc2VsYnJpLiBTaW5jZSB0aGVyZSBjYW4gb25s eSBiZSBvbmUgc2VsYnJpIHBlciBicmlkaSwgJyd2YXUnJyBpcyBub3QgbmVlZGVkLiBTaW5jZSAn J2ppbXBlJycgYXMgYSBzZWxicmkgY2Fubm90IGJlIGluIHRoZSByZWxhdGl2ZSBjbGF1c2UgZWl0 aGVyIChvbmx5IG9uZSBicmlkaSBpbiBhIGNsYXVzZSwgb25seSBvbmUgc2VsYnJpIGluIGVhY2gg YnJpZGkpLCB3ZSBjYW4gZWxpZGUgJydrdSdvJycuIExpa2V3aXNlLCAnJ2ppbXBlJycgY2Fubm90 IGJlIGEgc2Vjb25kIHNlbGJyaSBpbnNpZGUgdGhlIGNvbnN0cnVjdCAnJ2xlIG1lcmtvIHBvaXsu Li59JycsIHNvIHRoZSAnJ2t1JycgaXMgbm90IG5lZWRlZCBlaXRoZXIuIEZ1cnRoZXJtb3JlLCBh bGwgdGhlIGZhJ29ybWEnbyBhdCB0aGUgdmVyeSBlbmQgb2YgdGhlIHNlbnRlbmNlIGNhbiBiZSBl bGlkZWQgdG9vLCBzaW5jZSBiZWdpbm5pbmcgYSBuZXcgYnJpZGkgd2lsbCB0ZXJtaW5hdGUgYWxs IG9mIHRoZXNlIGNvbnN0cnVjdHMgYW55d2F5LgoKV2UgdGhlbiBlbmQgdXAgd2l0aDoKCicnLmF1 IGRhJ2kgbWkgZGppY2EgbG8gbnUgbGUgbWVya28gcG9pIHR1bmJhIG1pIGppbXBlIGxvIGR1J3Ug bWkgbmEgbmVsY2kgbG8gbnUgdm8nYSBkYXJ4aSBtaScnIOKAkyB3aXRoIG5vIGZhJ29ybWEnbyBh dCBhbGwhCgoKCldoZW4gZWxpZGluZyBmYSdvcm1hJ28sIGl0IGlzIGEgZ29vZCBpZGVhIHRvIGJl IGFjcXVhaW50ZWQgd2l0aCAnJ2N1JycuICcnY3UnJyBpcyBvbmUgb2YgdGhvc2Ugd29yZHMgd2hp Y2ggY2FuIG1ha2UgeW91ciAoTG9qYmFuaWMpIGxpZmUgYSBsb3QgZWFzaWVyLiBXaGF0IGl0IGRv ZXMgaXMgdG8gc2VwYXJhdGUgYW55IHByZXZpb3VzIHN1bXRpIGZyb20gdGhlIHNlbGJyaS4gT25l IGNvdWxkIHNheSB0aGF0IGl0IGRlZmluZXMgdGhlIG5leHQgd29yZCB0byBiZSBhIHNlbGJyaSwg YW5kIHRlcm1pbmF0ZXMgZXhhY3RseSBhcyBtdWNoIGFzIGl0IG5lZWRzIHRvIGluIG9yZGVyIHRv IGRvIHRoYXQuCgpfXycnY3UnJ19fIGVsaWRhYmxlIG1hcmtlcjogc2VwYXJhdGVzIHNlbGJyaSBm cm9tIHByZWNlZGluZyBzdW10aSwgYWxsb3dzIHByZWNlZGluZyBmYSdvcm1hJ28gZWxpc2lvbi4K CgoKX18nJ3ByYW1pJydfXyA9IOKAnHgxIGxvdmVzIHgy4oCdCgoKCicnbG8gc3UndSBkbyBjdXNr dSBsbyBzZSBkdSd1IGRvIHByYW1pIG1pIF9fdmF1IGtlaSBrdSB2YXUga2VpIGt1X18gc2UgZGpp Y2EgbWknJyA9CgonJ2xvIHN1J3UgZG8gY3Vza3UgbG8gc2UgZHUndSBkbyBwcmFtaSBtaSBfX2N1 X18gc2UgZGppY2EgbWknJwoK4oCcVGhhdCB5b3Ugc2F5IHRoYXQgeW91IGxvdmUgbWUgaXMgZGVz aXJlZCBieSBiZeKAnSBvciDigJxJIHdpc2ggeW91IHNhaWQgeW91IGxvdmVkIG1l4oCdCgpub3Rl OiAnJ2N1JycgaXMgbm90IGEgZmEnb3JtYSdvLCBiZWNhdXNlIGl0IGlzIG5vdCB0aWVkIHRvIG9u ZSBzcGVjaWZpYyBjb25zdHJ1Y3QuIEJ1dCBpdCBjYW4gYmUgdXNlZCB0byBlbGlkZSBvdGhlciBm YSdvcm1hJ28uCgoKCk9uZSBvZiB0aGUgZ3JlYXRlc3Qgc3RyZW5ndGhzIG9mICcnY3UnJyBpcyB0 aGF0IGl0IHF1aWNrbHkgYmVjb21lcyBlYXN5IHRvIGludHVpdGl2ZWx5IHVuZGVyc3RhbmQuIEJ5 IGl0c2VsZiBpdCBtZWFucyBub3RoaW5nLCBidXQgaXQgcmV2ZWFscyB0aGUgc3RydWN0dXJlIG9m IExvamJhbiBleHByZXNzaW9ucyBieSBpZGVudGlmeWluZyB0aGUgY29yZSBzZWxicmkuIEluIHRo ZSBvcmlnaW5hbCBleGFtcGxlIHdpdGggdGhlIHZpb2xlbnQgQW1lcmljYW4gYnJvdGhlciwgdXNp bmcgJydjdScnIGJlZm9yZSAnJ2ppbXBlJycgZG9lcyBub3QgY2hhbmdlIHRoZSBtZWFuaW5nIG9m IHRoZSBzZW50ZW5jZSBpbiBhbnkgd2F5LCBidXQgbWlnaHQgbWFrZSBpdCBlYXNpZXIgdG8gcmVh ZC4KCgoKSW4gdGhlIGZvbGxvd2luZyBjb3VwbGUgb2YgbGVzc29ucywgJydjdScnIHdpbGwgYmUg dXNlZCB3aGVuIG5lY2Vzc2FyeSwgYW5kIGFsbCBmYSdvcm1hJ28gZWxpZGVkIGlmIHBvc3NpYmxl LiBUaGUgZWxpZGVkIGZhJ29ybWEnbyB3aWxsIGJlIGVuY2FzZWQgaW4gY3VybHkgYnJhY2tldHMs IGFzIHNob3duIGJlbG93LiBUcnkgdG8gdHJhbnNsYXRlIGl0IQoKX18nJ3Zham5pJydfXyDigJx4 MSBpcyBpbXBvcnRhbnQgdG8geDIgZm9yIHJlYXNvbiB4M+KAnQoKX18nJ2ppbXBlJydfXyDigJx4 MSB1bmRlcnN0YW5kcyB0aGF0IHgyIChkdSd1LWFic3RyYWN0aW9uKSBpcyB0cnVlIGFib3V0IHgz 4oCdCgpfXycnYSdvJydfXyAtIEF0dGl0dWRpbmFsOiBTaW1wbGUgcHJvcG9zaXRpb25hbCBlbW90 aW9uOiBIb3BlIC0gZGVzcGFpcgoKCgonJ2EnbyBkbyBub2kga2UnYSBsb2pibyAuaSdlIHtrdSdv fSB7a3V9IGN1IGppbXBlIGxvIGR1J3UgbG8gZmEnb3JtYSdvIHtrdX0gY3UgdmFqbmkge3ZhdX0g e2tlaX0ge2t1fSB7dmF1fScnCgpXaGF0IGRvIEkgc3RhdGU/CgoKCkFuc3dlcjogfn5ncmV5LGdy ZXk64oCcSSBob3BlIHRoYXQgeW91LCBhIHByb3VkIExvamJhbmlzdCwgdW5kZXJzdGFuZHMgdGhh dCBmYSdvcm1hJ28gYXJlIGltcG9ydGFudOKAnX5+CgoKCkZ1biBzaWRlIG5vdGU6IE1vc3QgcGVv cGxlIHdlbGwtdmVyc2VkIGluIGZhJ29ybWEnby1lbGlzaW9uIGRvIGl0IHNvIGluc3RpbmN0aXZl bHkgdGhhdCB0aGV5IG9mdGVuIG11c3QgYmUgcmVtaW5kZWQgaG93IGltcG9ydGFudCB1bmRlcnN0 YW5kaW5nIGZhJ29ybWEnbyBhcmUgdG8gdGhlIHVuZGVyc3RhbmRpbmcgb2YgTG9qYmFuLiBUaGVy ZWZvcmUsIGVhY2ggVHVlc2RheSBoYXZlIGJlZW4gZGVzaWduYXRlZCDigJxUZXJtaW5hdG9yIERh eeKAnSBvciAnJ2ZhJ29ybWEnbyBkamVkaScnIG9uIHRoZSBMb2piYW4gSVJDIGNoYXRyb29tLiBE dXJpbmcgVGVybWluYXRvciBEYXksIG1hbnkgcGVvcGxlIHRyeSAoYW5kIG9mdGVuIGZhaWwpIHRv IHJlbWVtYmVyIHdyaXRpbmcgb3V0IGFsbCBmYSdvcm1hJ28gd2l0aCBzb21lIHZlcnkgdmVyYm9z ZSBjb252ZXJzYXRpb25zIGFzIGEgcmVzdWx0LgoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNz b24gbmluZSAoc3VtdGNpdGEpCgpTbyBmYXIgd2UgaGF2ZSBiZWVuIGRvaW5nIHByZXR0eSB3ZWxs IHdpdGggdGhlIHNlbGJyaSB3ZSBoYXZlIGhhZCBhdCBoYW5kLiBIb3dldmVyLCB0aGVyZSBpcyBh IGZpbml0ZSBhbW91bnQgb2YgZGVmaW5lZCBzZWxicmkgb3V0IHRoZXJlLCBhbmQgaW4gbWFueSBj YXNlcyB0aGUgc3VtdGkgcGxhY2VzIGFyZSBub3QgdXNlZnVsIGZvciB3aGF0IHdlIGhhZCBpbiBt aW5kLiBXaGF0IGlmLCBzYXksIGkgd2FudCB0byBzYXkgdGhhdCBJIGFtIHRyYW5zbGF0aW5nIHVz aW5nIGEgY29tcHV0ZXI/IFRoZXJlIGlzIG5vIHBsYWNlIGluIHRoZSBzdHJ1Y3R1cmUgb2YgJydm YW52YScnIHRvIHNwZWNpZnkgd2hhdCB0b29sIEkgdHJhbnNsYXRlIHdpdGgsIHNpbmNlLCBtb3N0 IG9mIHRoZSB0aW1lLCB0aGF0IGlzIG5vdCBuZWNlc3NhcnkuIE5vdCB0byB3b3JyeSwgdGhpcyBs ZXNzb24gaXMgb24gaG93IHRvIGFkZCBhZGRpdGlvbmFsIHN1bXRpIHBsYWNlcyB0byB0aGUgc2Vs YnJpLgoKCgpUaGUgbW9zdCBiYXNpYyB3YXkgdG8gYWRkIHN1bXRpIHBsYWNlcyBhcmUgd2l0aCAn J2ZpJ28gU0VMQlJJIGZlJ3UnJyAoeWVzLCBhbm90aGVyIGV4YW1wbGUgb2YgYSBmYSdvcm1hJ28s ICcnZmUndScnLiBJdCdzIGFsbW9zdCBuZXZlciBuZWNlc3NhcnksIHNvIHRoaXMgbWlnaHQgYmUg dGhlIGxhc3QgdGltZSB5b3UgZXZlciBzZWUgaXQuKQoKSW4gYmV0d2VlbiB0aGVzZSB0d28gd29y ZHMgZ29lcyBhIHNlbGJyaSwgYW5kIGxpa2UgJydsbyBTRUxCUkkga3UnJywgJydmaSdvIFNFTEJS SSBmZSd1JycgZXh0cmFjdHMgdGhlIHgxIG9mIHRoZSBzZWxicmkgcHV0IGludG8gaXQuIEhvd2V2 ZXIsIHdpdGggJydmaSdvIFNFTEJSSSBmZSd1JycsIHRoZSBzZWxicmkgcGxhY2UgaXMgY29udmVy dGVkLCBub3QgdG8gYSBzdW10aSwgYnV0IHRvIGEgJydzdW10Y2l0YScnLCBtZWFuaW5nIOKAnHN1 bXRpLWxhYmVs4oCdLCB3aXRoIHRoZSBwbGFjZSBzdHJ1Y3R1cmUgb2YgdGhlIHgxIG9mIHRoZSBz ZWxicmkgaXQgY29udmVydGVkLiBUaGlzICcnc3VtdGNpdGEnJyB0aGVuIGFic29yYnMgdGhlIG5l eHQgc3VtdGkuIE9uZSBjb3VsZCBzYXkgdGhhdCB1c2luZyBhICcnc3VtdGNpdGEnJywgeW91IGlt cG9ydCBhIHN1bXRpIHBsYWNlIGZyb20gYW5vdGhlciBzZWxicmksIGFuZCBhZGQgaXQgdG8gdGhl IGJyaWRpIGJlaW5nIHNhaWQuCgpOb3RlOiBTb21ldGltZXMsIGVzcGVjaWFsbHkgaW4gb2xkZXIg dGV4dHMsIHRoZSB0ZXJtIOKAnHRhZ+KAnSBvciDigJxtb2RhbOKAnSBpcyB1c2VkIGZvciAnJ3N1 bXRjaXRhJycuIElnbm9yZSB0aG9zZSBwdW55IEVuZ2xpc2ggZXhwcmVzc2lvbnMuIFdlIHRlYWNo IHByb3BlciBMb2piYW4gaGVyZS4KCgoKV2hpbGUgaXQgaXMgaGFyZCB0byBncmFzcCB0aGUgcHJv Y2VzcyBmcm9tIHJlYWRpbmcgYWJvdXQgaXQsIGFuIGV4YW1wbGUgY2FuIHBlcmhhcHMgc2hvdyBp dHMgYWN0dWFsIHNpbXBsaWNpdHk6CgpfXycnc2thbWknJ19fIOKAnHgxIGlzIGEgY29tcHV0ZXIg Zm9yIHB1cnBvc2UgeDLigJ0KCl9fJydwaWxubycnX18g4oCceDEgdXNlcyB4MiBhcyBhIHRvb2wg Zm9yIGRvaW5nIHgz4oCdCgoKCicnbWkgZmFudmEgdGkgZmknbyBzZSBwaWxubyB7ZmUndX0gbG8g c2thbWkge2t1fXt2YXV9JycgLSDigJxJIHRyYW5zbGF0ZSB0aGlzIHdpdGggYSBjb21wdXRlcuKA nSBUaGUgeDIgb2YgJydwaWxubycnLCB3aGljaCBpcyB0aGUgeDEgb2YgJydzZSBwaWxubycnIGlz IGEgcGxhY2Ugc3RydWN0dXJlIGZvciBhIHRvb2wgYmVpbmcgdXNlZCBieSBzb21lb25lLiBUaGlz IHBsYWNlIHN0cnVjdHVyZSBpcyBjYXB0dXJlZCBieSAnJ2ZpJ28gU0VMQlJJIGZlJ3UnJywgYWRk ZWQgdG8gdGhlIG1haW4gc2VsYnJpLCBhbmQgdGhlbiBmaWxsZWQgYnkgJydsbyBza2FtaScnLiBU aGUgaWRlYSBvZiAnJ3N1bXRjaXRhJycgaXMgc29tZXRpbWVzIGV4cHJlc3NlZCBpbiBFbmdsaXNo IHVzaW5nIHRoZSBmb2xsb3dpbmcgdHJhbnNsYXRpb246CgrigJxJIHRyYW5zbGF0ZSB0aGlzIHdp dGgtdG9vbDogQSBjb21wdXRlcuKAnQoKCgpBICcnc3VtdGNpdGEnJyBjYW4gb25seSBhYnNvcmIg b25lIHN1bXRpLCB3aGljaCBpcyBhbHdheXMgdGhlIGZvbGxvd2luZyBvbmUuIEFsdGVybmF0aXZl bHksIHRoZSAnJ3N1bXRjaXRhJycgY29uc3RydWN0IGNhbiBiZSB0ZXJtaW5hdGVkIHdpdGggJydr dScnLCBpbiB3aGljaCBjYXNlIGEgJyd6bydlJycgaXMgaW1wbGllZCB0byBmaWxsIHRoZSAnJ3N1 bXRjaXRhJycuIE9yLCBvbmUgY291bGQgaW1hZ2luZSBhbiBlbGlkZWQgc3VtdGkgYmVpbmcgdGVy bWluYXRlZCB3aXRoIHRoZSAnJ2t1JycuCgpfXycnenVrdGUnJ19fIOKAnHgxIGlzIGEgdm9saXRp b25hbCBlbnRpdHkgY2Fycnlpbmcgb3V0IGFjdGlvbiB4MiBmb3IgcHVycG9zZSB4M+KAnQoKCgon J2ZpJ28genVrdGUge2ZlJ3V9IGt1IGxvIHNrYW1pIHtrdX0gY3UgcGlsbm8gbG8gbG9qYm8ge2t1 fXt2YXV9JycgLSDigJxXaXRoIHZvbGl0aW9uLCBhIGNvbXB1dGVyIHVzZWQgc29tZXRoaW5nIExv amJhbmlj4oCdIChwZXJoYXBzIGltcGx5aW5nIHRoYXQgYSBMb2piYW5pYyBjb21wdXRlciB3ZW50 IHNlbnRpZW50PyBUb3VnaCBpdCBkb2VzIG5vdCBzcGVjaWZ5IHdobyBoYWQgdm9saXRpb24uIEl0 IGNvdWxkIGp1c3QgYmUgdGhlIHByb2dyYW1tZXIgd2hvIHByb2dyYW1tZWQgdGhlIGNvbXB1dGVy IC0gaG93IGJvcmluZy4pCgoKCldoYXQgZG9lcyAnJ21pIGppbXBlIGZpIGxhIGxvamJhbiB7a3V9 IGZpJ28gc2UgdGF2bGEge2ZlJ3V9IG1pJycgc3RhdGU/CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6 4oCcSSB1bmRlcnN0YW5kIHNvbWV0aGluZyBhYm91dCBMb2piYW4sIHNwb2tlbiB0byBtZeKAnX5+ CgoKClB1dHRpbmcgdGhlICcnc3VtdGNpdGEnJyByaWdodCBpbiBmcm9udCBvZiB0aGUgc2VsYnJp IGFsc28gbWFrZXMgaXQgc2VsZi10ZXJtaW5hdGUsIHNpbmNlIHN1bXRjaXRhIG9ubHkgY2FuIGFi c29yYiBzdW10aSwgYW5kIG5vdCBzZWxicmkuIFRoaXMgZmFjdCB3aWxsIGJlIG9mIGltcG9ydGFu Y2UgaW4gbmV4dCBsZXNzb24sIGFzIHlvdSB3aWxsIHNlZS4KCgoKU2FkbHksICcnZmknbycnIGlz IG5vdCB1c2VkIHZlcnkgb2Z0ZW4gZGVzcGl0ZSBpdHMgZmxleGliaWxpdHkuIFdoYXQgSVMgdXNl ZCB2ZXJ5IG9mdGVuLCB0aG91Z2gsIGFyZSBCQUkuIEJBSSBpcyBhIGNsYXNzIG9mIExvamJhbiB3 b3Jkcywgd2hpY2ggaW4gdGhlbXNlbHZlcyBhY3QgYXMgJydzdW10Y2l0YScnLiBBbiBleGFtcGxl IG9mIHRoaXMgaXMgJyd6dSdlJycsIHRoZSBCQUkgZm9yICcnenVrdGUnJy4gR3JhbWF0aWNhbGx5 LCAnJ3p1J2UnJyBpcyB0aGUgc2FtZSBhcyAnJ2ZpJ28genVrdGUgZmUndScnLiBUaHVzLCB0aGUg YWJvdmUgZXhhbXBsZSBjb3VsZCBiZSByZWR1Y2VkIHRvOgoKJyd6dSdlIGt1IGxvIHNrYW1pIHtr dX0gY3UgcGlsbm8gbG8gbG9qYm8ge2t1fSB7dmF1fScnLiBUaGVyZSBleGlzdCBzb21ldGhpbmcg bGlrZSA2MCBCQUksIGFuZCBhIGxvdCBvZiB0aGVzZSBhcmUgdmVyeSB1c2VmdWwgaW5kZWVkLiBG dXJ0ZXJtb3JlLCBCQUkgY2FuIGFsc28gYmUgY29udmVydGVkIHdpdGggJydzZScnIGFuZCBmcmll bmRzLCBtZWFuaW5nIHRoYXQgJydzZSB6dSdlJycgaXMgZXF1YWwgdG8gJydmaSdvIHNlIHp1a3Rl IGZlJ3UnJywgd2hpY2ggcmVzdWx0cyBpbiBhIGdyZWF0IGRlYWwgbW9yZSBCQUkuCgoKCiEhTG9q YmFuIExlc3NvbnMgLSBMZXNzb24gdGVuIChQVSwgRkFoQSwgWkksIFZBLCBaRWhBLCBWRWhBKQoK SG93IHVuZmFtaWxpYXIgdG8gdGhlIEVuZ2xpc2gtc3BlYWtlciBhIGxhbmd1YWdlIExvamJhbiBp cyB3aGVuIG9uZSBjYW4gcmVhZCB0aHJvdWdoIG5pbmUgbGVzc29ucyBvZiBMb2piYW4gZ3JhbW1h ciB3aXRob3V0IG1lZXRpbmcgYSB0ZW5zZSBvbmNlLiBUaGlzIGlzIGJlY2F1c2UsIHVubGlrZSBt YW55IG5hdHVyYWwgbGFuZ3VhZ2VzIChtb3N0IEluZG8tRXVyb3BlYW4gb25lcywgZm9yIGluc3Rh bmNlKSwgYWxsIHRlbnNlcyBpbiBMb2piYW4gYXJlIG9wdGlvbmFsLiBTYXlpbmcgJydtaSBjaXRr YSBsbyBjaXJsYSB7a3V9JycgY2FuIG1lYW4g4oCcSSBlYXQgY2hlZXNl4oCdIG9yIOKAnEkgYXRl IHRoZSBjaGVlc2XigJ0gb3Ig4oCcSSBhbHdheXMgZWF0IGNoZWVzZeKAnSBvciDigJxJbiBhIG1v bWVudCwgaSB3aWxsIGhhdmUganVzdCBmaW5pc2hlZCBlYXRpbmcgY2hlZXNl4oCdLiBDb250ZXh0 IHJlc29sdmVzIHdoYXQgaXMgY29ycmVjdCwgYW5kIGluIG1vc3QgY29udmVyc2F0aW9uLCB0ZW5z ZXMgYXJlIG5vdCBuZWVkZWQgYXQgYWxsLiBIb3dldmVyLCB3aGVuIGl0J3MgbmVlZGVkIGl0J3Mg bmVlZGVkLCBhbmQgaXQgbXVzdCBiZSB0YXVnaHQuIEZ1cnRoZXJtb3JlLCBMb2piYW4gdGVuc2Vz IGFyZSB1bnVzdWFsIGJlY2F1c2UgdGhleSB0cmVhdCB0aW1lIGFuZCBzcGFjZSBmdW5kYW1lbnRh bGx5IHRoZSBzYW1lIC0gc2F5aW5nIHRoYXQgSSB3b3JrZWQgYSBsb25nIHRpbWUgYWdvIGlzIG5v dCBncmFtbWF0aWNhbGx5IGRpZmZlcmVudCB0aGFuIHNheWluZyBJIHdvcmsgZmFyIGF3YXkgdG8g dGhlIG5vcnRoLgoKTGlrZSBtYW55IG90aGVyIGxhbmd1YWdlcywgdGhlIExvamJhbiB0ZW5zZSBz eXN0ZW0gaXMgcGVyaGFwcyB0aGUgbW9zdCBkaWZmaWN1bHQgcGFydCBvZiB0aGUgbGFuZ3VhZ2Uu IFVubGlrZSBtYW55IG90aGVyIGxhbmd1YWdlcyB0aG91Z2gsIGl0J3MgcGVyZmVjdGx5IHJlZ3Vs YXIgYW5kIG1ha2VzIHNlbnNlLiBTbyBmZWFyIG5vdCwgZm9yIGl0IHdpbGwgbm90IGludm9sdmUg c3dlYXRpbmcgdG8gbGVhcm4gaG93IHRvIG1vZGlmeSB0aGUgc2VsYnJpIG9yIGFueXRoaW5nIHNp bGx5IGxpa2UgdGhhdC4KCgoKTm8sIGluIHRoZSBMb2piYW4gdGVuc2Ugc3lzdGVtLCBhbGwgdGVu c2VzIGFyZSBzdW10Y2l0YSwgd2hpY2ggd2UgaGF2ZSBjb252ZW5pZW50bHkganVzdCBtYWRlIG91 cnNlbHZlcyBmYW1pbGlhciB3aXRoLiBPa2F5IG9rYXksIHRlY2huaWNhbGx5LCB0ZW5zZXMgYXJl IHNsaWdodGx5IGRpZmZlcmVudCBmcm9tIG90aGVyIHN1bXRjaXRhLCBidXQgdGhpcyBkaWZmZXJl bmNlIGlzIGFsbW9zdCBpbnNpZ25pZmljYW50LCBhbmQgd2lsbCBiZSB3b24ndCBiZSBleHBsYWlu ZWQgdW50aWwgbGF0ZXIuIEluIG1vc3QgYXNwZWN0cyB0aGV5IGFyZSBsaWtlIGFsbCBvdGhlciBz dW10Y2l0YTsgdGhleSBhcmUgdGVybWluYXRlZCBieSAnJ2t1JycsIG1ha2luZyBpdCBleHBsaWNp dCB0aGF0IFBVIGlzIHRlcm1pbmF0ZWQgYnkgJydrdScnLgoKVGhlcmUgYXJlIG1hbnkgZGlmZmVy ZW50IGtpbmRzIG9mIHRlbnNlLXN1bXRjaXRhLCBzbyBsZXQncyBzdGFydCBhdCB0aGUgb25lcyBt b3N0IGZhbWlsaWFyIHRvIEVuZ2xpc2gtc3BlYWtlcnMuCgpfXycncHUnJ19fIC0gc3VtdGNpdGE6 IGJlZm9yZSB7c3VtdGl9CgpfXycnY2EnJ19fIC0gc3VtdGNpdGE6IGF0IHRoZSBzYW1lIHRpbWUg YXMge3N1bXRpfQoKX18nJ2JhJydfXyAtIHN1bXRjaXRhOiBhZnRlciB7c3VtdGl9CgoKClRoZXNl IGFyZSBsaWtlIHRoZSBFbmdsaXNoIGNvbmNlcHRzIOKAnGJlZm9yZeKAnSwg4oCcbm934oCdIGFu ZCDigJxhZnRlcuKAnS4gSW4gYWN0dWFsaXR5IHRob3VnaCwgb25lIGNvdWxkIGFyZ3VlIHRoYXQg dHdvIHBvaW50LWxpa2UgZXZlbnRzIGNhbiBuZXZlciBvY2N1ciBleGFjdGx5IHNpbXVsdGFuZW91 c2x5LCByZW5kZXJpbmcgJydjYScnIHVzZWxlc3MuIEJ1dCAnJ2NhJycgZXh0ZW5kcyBzbGlnaHRs eSBpbnRvIHRoZSBwYXN0IGFuZCB0aGUgZnV0dXJlLCBtZWFuaW5nIGp1c3Qg4oCcYWJvdXQgbm93 4oCdLiBUaGlzIGlzIGJlY2F1c2UgaHVtYW4gYmVpbmdzIGRvbid0IHBlcmNlaXZlIHRpbWUgaW4g YSBwZXJmZWN0bHkgbG9naWNhbCB3YXksIGFuZCB0aGUgTG9qYmFuIHRlbnNlIHN5c3RlbSByZWZs ZWN0cyB0aGF0LgoKCgpTaWRlIG5vdGU6IEl0IHdhcyBhY3R1YWxseSBzdWdnZXN0ZWQgbWFraW5n IHRoZSBMb2piYW4gdGVuc2Ugc3lzdGVtIHJlbGF0aXZpc3RpYy4gVGhhdCBpZGVhLCBob3dldmVy LCB3YXMgZHJvcHBlZCwgYmVjYXVzZSBpdCBpcyBjb3VudGVyLWludHVpdGl2ZSwgYW5kIHdvdWxk IG1lYW4gdGhhdCB0byBsZWFybiBMb2piYW4sIG9uZSB3b3VsZCBoYXZlIHRvIGxlYXJuIHRoZSB0 aGVvcnkgb2YgcmVsYXRpdml0eSBmaXJzdC4gIAoKCgpTbywgaG93IHdvdWxkIHlvdSBzYXkg4oCc SSBleHByZXNzIHRoaXMgYWZ0ZXIgSSBjYW1lIGhlcmU/4oCdIChwb2ludGluZyB0byBhIHBhcGVy KQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbWkgY3Vza3UgdGkgYmEgbG8gbnUgbWkga2xhbWEg dGkge3ZhdX0ge2tlaSB7a3V9IHt2YXV9Jyd+fgoKCgpVc3VhbGx5IHdoZW4gc3BlYWtpbmcsIHdl IGRvIG5vdCBuZWVkIHRvIHNwZWNpZnkgd2hpY2ggZXZlbnQgdGhpcyBhY3Rpb24gaXMgaW4gdGhl IHBhc3QgcmVsYXRpdmUgdG8uIEluOiDigJxJIGdhdmUgYSBjb21wdXRlciBhd2F54oCdLCB3ZSBj YW4gYXNzdW1lIHRoYXQgdGhlIGFjdGlvbiBoYXBwZW5lZCByZWxhdGl2ZSB0byDigJxub3figJ0s IGFuZCB0aHVzIHdlIGNhbiBlbGlkZSB0aGUgc3VtdGkgb2YgdGhlIHN1bXRjaXRhLCBiZWNhdXNl IGl0J3Mgb2J2aW91czoKCicncHUga3UgbWkgZHVuZGEgbG8gc2thbWkge2t1fSB7dmF1fScnIG9y CgonJ21pIGR1bmRhIGxvIHNrYW1pIHtrdX0gcHUge2t1fSB7dmF1fScnIG9yLCBtb3JlIGNvbW1v bmx5CgonJ21pIHB1IHtrdX0gZHVuZGEgbG8gc2thbWkge2t1fSB7dmF1fScnLiBUaGUgc3VtdGkg d2hpY2ggZmlsbHMgdGhlIHN1bXRjaXRhIGlzIGFuIGltcGxpZWQgJyd6bydlJycsIHdoaWNoIGlz IGFsbW9zdCBhbHdheXMgdW5kZXJzdG9vZCBhcyByZWxhdGl2ZSB0byB0aGUgc3BlYWtlcidzIHRp bWUgYW5kIHBsYWNlICh0aGlzIGlzIGVzcGVjaWFsbHkgaW1wb3J0YW50IHdoZW4gc3BlYWtpbmcg YWJvdXQgbGVmdCBhbmQgcmlnaHQpLiBJZiBzcGVha2luZyBhYm91dCBzb21lIGV2ZW50cyB0aGF0 IGhhcHBlbmVkIHNvbWUgb3RoZXIgdGltZSB0aGFuIHRoZSBwcmVzZW50LCBpdCBpcyBzb21ldGlt ZXMgYXNzdW1lZCB0aGF0IGFsbCB0ZW5zZXMgYXJlIHJlbGF0aXZlIHRvIHRoYXQgZXZlbnQgd2hp Y2ggaXMgYmVpbmcgc3Bva2VuIGFib3V0LiBJbiBvcmRlciB0byBjbGFyaWZ5IHRoYXQgYWxsIHRl bnNlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIHNwZWFrZXIncyBjdXJyZW50IHBvc2l0aW9uLCB0aGUg d29yZCAnJ25hdScnIGNhbiBiZSB1c2VkIGF0IGFueSB0aW1lLiBBbm90aGVyIHdvcmQsICcna2kn JyBtYXJrcyBhIHRlbnNlIHdoaWNoIGlzIHRoZW4gY29uc2lkZXJlZCB0aGUgbmV3IHN0YW5kYXJk LiBUaGF0IHdpbGwgYmUgdGF1Z2h0IHdheSBsYXRlci4KCl9fJyduYXUnJ19fIHVwZGF0ZXMgdGVt cG9yYWwgYW5kIHNwYWNpYWwgZnJhbWUgb2YgcmVmZXJlbmNlIHRvIHRoZSBzcGVha2VyJ3MgY3Vy cmVudCBoZXJlIGFuZCBub3cuCgoKCl9fJydndWdkZScnX18gPSDigJx4MSBpcyB0aGUgY291bnRy eSBvZiBwZW9wbGUgeDIgd2l0aCBsYW5kL3RlcnJpdG9yeSB4M+KAnQoKCgpBbHNvIG5vdGUgdGhh dCAnJ21pIHB1IHtrdX0ga2xhbWEgbG8gbWVya28gZ3VnZGUge2t1fSB7dmF1fScnLCDigJxJIHdl bnQgdG8gQW1lcmljYeKAnSwgZG9lcyBub3QgaW1wbHkgdGhhdCBJJ20gbm90IHN0aWxsIHRyYXZl bGluZyB0byBVU0EsIG9ubHkgdGhhdCBpdCB3YXMgYWxzbyB0cnVlIHNvbWUgdGltZSBpbiB0aGUg cGFzdCwgZm9yIGluc3RhbmNlIGZpdmUgbWludXRlcyBhZ28uCgoKCkFzIG1lbnRpb25lZCwgc3Bh Y2lhbCBhbmQgdGVtcG9yYWwgdGltZSB0ZW5zZXMgYXJlIHZlcnkgbXVjaCBhbGlrZS4gQ29udHJh c3QgdGhlIHByZXZpb3VzIHRocmVlIHRpbWUgdGVuc2VzIHdpdGggdGhlc2UgZm91ciBzcGFjaWFs IHRlbnNlczoKCl9fJyd6dSdhJydfXyBzdW10Y2l0YTogbGVmdCBvZiB7c3VtdGl9CgpfXycnY2En dScnX18gc3VtdGNpdGE6IGluIGZyb250IG9mIHtzdW10aX0KCl9fJydyaSd1JydfXyBzdW10Y2l0 YTogcmlnaHQgb2Yge3N1bXRpfQoKX18nJ2J1J3UnJ19fIHN1bXRjaXRhOiBhdCB0aGUgc2FtZSBw bGFjZSBhcyB7c3VtdGl9IChzcGFjaWFsIGVxdWl2YWxlbnQgb2YgJydjYScnKQoKCgpfXycnbydv JydfXzogYXR0aXR1ZGluYWw6IGNvbXBsZXggcHVyZSBlbW90aW9uOiBwYXRpZW5jZSAtIHRvbGVy YW5jZSAtIGFuZ2VyCgoKCldoYXQgd291bGQgJycubydvbmFpIHJpJ3Uge2t1fSBudSBsbyBwcmVu dSB7a3V9IGN1IGRhcnhpIGxvIGdlcmt1IHB1IHtrdX0ge2t1fSB7dmF1fSB7a2VpfSB7dmF1fScn IG1lYW4/IChub3RpY2UgdGhlIGZpcnN0IGVsaWRlZCBrdSEpCgpfXycnZGFyeGknJ19fIHgxIGJl YXRzL2hpdHMgeDIgd2l0aCBpbnN0cnVtZW50IHgzIGF0IGxvY3VzIHg0CgoKCkFuc3dlcjogfn5n cmV5LGdyZXk64oCce2FuZ2VyIX0gVG8gdGhlIHJpZ2h0IChvZiBzb21ldGhpbmcsIHByb2JhYmx5 IG1lKSBhbmQgaW4gdGhlIHBhc3QgKG9mIHNvbWUgZXZlbnQpLCBzb21ldGhpbmcgaXMgYW4gZXZl bnQgb2YgYSBwZXJzb24gYmVhdGluZyBhIGRvZy7igJ0gb3Ig4oCcQSBtYW4gaGl0IGEgZG9nIHRv IG15IHJpZ2h0IeKAnX5+CgoKCklmIHRoZXJlIGFyZSBzZXZlcmFsIHRlbnNlIHN1bXRjaXRhIGlu IG9uZSBicmlkaSwgdGhlIHJ1bGUgaXMgdGhhdCB5b3UgcmVhZCB0aGVtIGZyb20gbGVmdCB0byBy aWdodCwgdGhpbmtpbmcgaXQgYXMgYSBzbyBjYWxsZWQg4oCcaW1hZ2luYXJ5IGpvdXJuZXnigJ0s IFdoZXJlIHlvdSBiZWdpbiBhdCBhbiBpbXBsaWVkIHBvaW50IGluIHRpbWUgYW5kIHNwYWNlIChk ZWZhdWx0OiB0aGUgc3BlYWtlcidzIG5vdyBhbmQgaGVyZSksIGFuZCB0aGVuIGZvbGxvdyB0aGUg c3VtdGNpdGEgb25lIGF0IGEgdGltZSBmcm9tIGxlZnQgdG8gcmlnaHQuCgpFeGFtcGxlCgonJ21p IHB1IHtrdX0gYmEge2t1fSBqaW1wZSBmaSBsbyBsb2pibyBmYSdvcm1hJ28ge2t1fSB7dmF1fScn ID0g4oCcQXQgc29tZSB0aW1lIGluIHRoZSBwYXN0LCBJIHdpbGwgYmUgYWJvdXQgdG8ga25vdyBh Ym91dCBmYSdvcm1hJ29zLuKAnQoKJydtaSBiYSB7a3V9IHB1IHtrdX0gamltcGUgZmkgbG8gbG9q Ym8gZmEnb3JtYSdvIHtrdX0ge3ZhdX0nJyDigJxBdCBzb21lIHBvaW50IGluIHRoZSBmdXR1cmUs IEkgd2lsbCBoYXZlIHVuZGVyc3Rvb2QgYWJvdXQgZmEnb3JtYSdvcy7igJ0KClNpbmNlIHdlIGRv IG5vdCBzcGVjaWZ5IHRoZSBhbW91bnQgb2YgdGltZSB3ZSBtb3ZlIGJhY2sgb3IgZm9ydGgsIHRo ZSB1bmRlcnN0YW5kaW5nIGNvdWxkIGluIGJvdGggY2FzZXMgaGFwcGVuIGluIHRoZSBmdXR1cmUg b3IgdGhlIHBhc3Qgb2YgdGhlIHBvaW50IG9mIHJlZmVyZW5jZS4KCgoKQWxzbywgaWYgc3BhY2lh bCBhbmQgdGVtcG9yYWwgdGVuc2VzIGFyZSBtaXhlZCwgdGhlIHJ1bGUgaXMgdG8gYWx3YXlzIHB1 dCB0ZW1wb3JhbCBiZWZvcmUgc3BhY2lhbC4gSWYgdGhpcyBydWxlIGlzIHZpb2xhdGVkLCBpdCBj YW4gc29tZXRpbWVzIHJlc3VsdCBpbiBzeW50YWN0aWNhbCBhbWJpZ3VpdHksIHdoaWNoIExvamJh biBkb2VzIG5vdCB0b2xlcmF0ZS4KCgoKU3VwcG9zZSB3ZSB3YW50IHRvIHNwZWNpZnkgdGhhdCB0 aGUgYSBtYW4gaGl0IGEgZG9nIGp1c3QgYSBtaW51dGUgYWdvLiBUaGUgd29yZHMgJyd6aScnLCAn J3phJycgYW5kICcnenUnJyBzcGVjaWZpZXMgYSBzaG9ydCwgdW5zcGVjaWZpZWQgKHByZXN1bWFi bHkgbWVkaXVtKSBhbmQgbG9uZyBkaXN0YW5jZSBpbiB0aW1lLiBOb3RpY2UgdGhlIHZvd2VsIG9y ZGVyICcnaScnLCAnJ2EnJyBhbmQgJyd1JycuIFRoaXMgb3JkZXIgYXBwZWFycyBhZ2FpbiBhbmQg YWdhaW4gaW4gTG9qYmFuLCBhbmQgbWlnaHQgYmUgd29ydGggdG8gbWVtb3JpemUuIOKAnFNob3J0 4oCdIGFuZCDigJxsb25n4oCdIGluIGFyZSBhbHdheXMgY29udGV4dCBkZXBlbmRlbnQsIHJlbGF0 aXZlIGFuZCBzdWJqZWN0aXZlLiBUd28gaHVuZHJlZCB5ZWFycyBpcyBhIHNob3J0IHRpbWUgZm9y IGEgc3BlY2llcyB0byBldm9sdmUsIGJ1dCBhIGxvbmcgdGltZSB0byB3YWl0IGZvciB0aGUgYnVz LgoKX18nJ3ppJydfXyBzdW10Y2l0YTogT2N1cnJpbmcgdGhlIHNtYWxsIGRpc3RhbmNlIG9mIHtz dW10aX0gaW4gdGltZSBmcm9tIHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJyd6YScnX18gc3VtdGNp dGE6IE9jdXJyaW5nIHRoZSB1bnNwZWNpZmllZChtZWRpdW0pIGRpc3RhbmNlIG9mIHtzdW10aX0g aW4gdGltZSBmcm9tIHBvaW50IG9mIHJlZmVyZW5jZSAKCl9fJyd6dScnX18gc3VtdGNpdGE6IE9j dXJyaW5nIHRoZSBmYXIgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiB0aW1lIGZyb20gdGhlIHBvaW50 IG9mIHJlZmVyZW5jZSAKCgoKU2ltaWxhcmx5LCBzcGFjaWFsIGRpc3RhbmNlIGlzIG1hcmtlZCBi eSAnJ3ZpJycsICcndmEnJyBhbmQgJyd2dScnIGZvciBzaG9ydCwgdW5zcGVjaWZpZWQgKG1lZGl1 bSkgYW5kIGxvbmcgZGlzdGFuY2UgaW4gc3BhY2UuCgpfXycndmknJ19fIHN1bXRjaXRhOiBPY3Vy cmluZyB0aGUgc21hbGwgZGlzdGFuY2Ugb2Yge3N1bXRpfSBpbiBzcGFjZSBmcm9tIHBvaW50IG9m IHJlZmVyZW5jZSAKCl9fJyd2YScnX18gc3VtdGNpdGE6IE9jdXJyaW5nIHRoZSB1bnNwZWNpZmll ZChtZWRpdW0pIGRpc3RhbmNlIG9mIHtzdW10aX0gaW4gc3BhY2UgZnJvbSBwb2ludCBvZiByZWZl cmVuY2UgCgpfXycndnUnJ19fIHN1bXRjaXRhOiBPY3VycmluZyB0aGUgZmFyIGRpc3RhbmNlIG9m IHtzdW10aX0gaW4gc3BhY2UgZnJvbSB0aGUgcG9pbnQgb2YgcmVmZXJlbmNlIAoKX18nJ2d1bmth JydfXyDigJx4MSB3b3JrcyBhdCB4MiB3aXRoIG9iamVjdGl2ZSB4M+KAnQoKCgpUcmFuc2xhdGU6 ICcnYmEge2t1fSB6YSBrdSBtaSB2dSB7a3V9IGd1bmthIHt2YXV9JycKCgoKQW5zd2VyOiB+fmdy ZXksZ3JleTrigJxTb21lIHRpbWUgaW4gdGhlIGZ1dHVyZSwgSSB3aWxsIHdvcmsgYSBwbGFjZSBs b25nIGF3YXnigJ1+fgoKTm90ZTogUGVvcGxlIHJhcmVseSB1c2UgJyd6aScnLCAnJ3phJycgb3Ig Jyd6dScnIHdpdGhvdXQgYSAnJ3B1Jycgb3IgJydiYScnIGluIGZyb250IG9mIGl0LiBUaGlzIGlz IGJlY2F1c2UgbW9zdCBwZW9wbGUgYWx3YXlzIG5lZWQgdG8gc3BlY2lmeSBwYXN0IG9yIGZ1dHVy ZSBpbiB0aGVpciBuYXRpdmUgbGFuZ3VhZ2UuIFdoZW4geW91IHRoaW5rIGFib3V0IGl0IExvamJh bmljYWxseSwgbW9zdCBvZiB0aGUgdGltZSB0aGUgdGltZS1kaXJlY3Rpb24gaXMgb2J2aW91cywg YW5kIHRoZSAnJ3B1Jycgb3IgJydiYScnIHN1cGVyZmx1b3VzIQoKCgpUaGUgb3JkZXIgaW4gd2hp Y2ggZGlyZWN0aW9uLXN1bXRjaXRhIGFuZCBkaXN0YW5jZS1zdW10Y2l0YSBhcmUgc2FpZCBtYWtl cyBhIGRpZmZlcmVuY2UuIFJlbWVtYmVyIHRoYXQgdGhlIG1lYW5pbmdzIG9mIHNldmVyYWwgdGVu c2Ugd29yZHMgcGxhY2VkIHRvZ2V0aGVyIGFyZSBwaWN0dXJlZCBieSBhbiBpbWFnaW5hcnkgam91 cm5leSByZWFkaW5nIGZyb20gbGVmdCB0byByaWdodC4gVGh1cyAnJ3B1IHp1JycgaXMg4oCcYSBs b25nIHRpbWUgYWdv4oCdIHdoaWxlICcnenUgcHUnJyBpcyDigJxpbiB0aGUgcGFzdCBvZiBzb21l IHBvaW50IGluIHRpbWUgd2hpY2ggaXMgYSBsb25nIHRpbWUgdG93YXJkIHRoZSBmdXR1cmUgb3Ig dGhlIHBhc3Qgb2Ygbm934oCdLiBJbiB0aGUgZmlyc3QgZXhhbXBsZSwgJydwdScnIHNob3dzIHRo YXQgd2UgYmVnaW4gaW4gdGhlIHBhc3QsICcnenUnJyB0aGVuIHRoYXQgaXQgaXMgYSBsb25nIHRp bWUgYmFja3dhcmRzLiBJbiB0aGUgc2Vjb25kIGV4YW1wbGUsICcnenUnJyBzaG93cyB0aGF0IHdl IGJlZ2luIGF0IHNvbWUgcG9pbnQgZmFyIGF3YXkgaW4gdGltZSBmcm9tIG5vdywgJydwdScnIHRo ZW4sIHRoYXQgd2UgbW92ZSBiYWNrd2FyZHMgZnJvbSB0aGF0IHBvaW50LiBUaHVzICcncHUgenUn JyBpcyBhbHdheXMgaW4gdGhlIHBhc3QuICcnenUgcHUnJyBjb3VsZCBiZSBpbiB0aGUgZnV0dXJl LiBUaGUgZmFjdCB0aGF0IHRoZXNlIHRpbWUgdGVuc2VzIGNvbWJpbmUgaW4gdGhpcyB3YXkgaXMg b25lIG9mIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRlbnNlIHN1bXRjaXRhIGFuZCBvdGhlciBz dW10Y2l0YS4gVGhlIG1lYW5pbmdzIG9mIG90aGVyIHN1bXRjaXRhIGFyZSBub3QgYWx0ZXJlZCBi eSB0aGUgcHJlc2VuY2Ugb2YgYWRkaXRpb25hbCBzdW10Y2l0YSBpbiBhIGJyaWRpLgoKCgpBcyBi cmllZmx5IGltcGxpZWQgZWFybGllciwgYWxsIHRoZXNlIGNvbnN0cnVjdHMgYmFzaWNhbGx5IHRy ZWF0IGJyaWRpIGFzIGlmIHRoZXkgd2VyZSBwb2ludC1saWtlIGluIHRpbWUgYW5kIHNwYWNlLiBJ biBhY3R1YWxpdHksIG1vc3QgZXZlbnRzIHBsYXkgb3V0IG92ZXIgYSBzcGFuIG9mIHRpbWUgYW5k IHNwYWNlLiBJbiB0aGUgZm9sbG93aW5nIGZldyBwYXJhZ3JhcGhzLCB3ZSB3aWxsIGxlYXJuIGhv dyB0byBzcGVjaWZ5IGludGVydmFscyBvZiB0aW1lIGFuZCBzcGFjZS4KCgoKX18nJ3plJ2knJ19f IHN1bXRjaXRhOiBzcGFubmluZyBvdmVyIHRoZSBzaG9ydCB0aW1lIG9mIHtzdW10aX0KCl9fJyd6 ZSdhJydfXyBzdW10Y2l0YTogc3Bhbm5pbmcgb3ZlciB0aGUgdW5zcGVjaWZpZWQgKG1lZGl1bSkg dGltZSBvZiB7c3VtdGl9CgpfXycnemUndScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhl IGxvbmcgdGltZSBvZiB7c3VtdGl9CgoKCl9fJyd2ZSdpJydfXyBzdW10Y2l0YTogc3Bhbm5pbmcg b3ZlciB0aGUgc2hvcnQgc3BhY2Ugb2Yge3N1bXRpfQoKX18nJ3ZlJ2EnJ19fIHN1bXRjaXRhOiBz cGFubmluZyBvdmVyIHRoZSB1bnNwZWNpZmllZCAobWVkaXVtKSBzcGFjZSBvZiB7c3VtdGl9Cgpf XycndmUndScnX18gc3VtdGNpdGE6IHNwYW5uaW5nIG92ZXIgdGhlIGxvbmcgc3BhY2Ugb2Yge3N1 bXRpfQoKCgpTaXggd29yZHMgYXQgYSB0aW1lLCBJIGtub3csIGJ1dCByZW1lbWJlcmluZyB0aGUg dm93ZWwgc2VxdWVuY2UgYW5kIHRoZSBzaW1pbGFyaXR5IG9mIHRoZSBpbml0aWFsIGxldHRlciB6 IGZvciB0ZW1wb3JhbCB0ZW5zZXMgYW5kIHYgZm9yIHNwYWNpYWwgdGVuc2VzIG1pZ2h0IGhlbHAg dGhlIG1lbW9yaXppbmcuCgpfXycnLm9pJydfXyAtIGF0dGl0dWRpbmFsOiBwYWluIC0gcGxlYXN1 cmUKCgoKVHJhbnNsYXRlOiAnJy5vaSBkYWkgZG8gdmUndSB7a3V9IGtsYW1hIGxvIGRvdGNvIGd1 Z2RlIHtrdX0gemUndSB7a3V9IHt2YXV9JycKCgoKQW5zd2VyOiB+fmdyZXksZ3JleTrigJxPdWNo LCB5b3Ugc3BlbmQgYSBsb25nIHRpbWUgdHJhdmVsaW5nIGEgbG9uZyBzcGFjZSB0byBHZXJtYW55 4oCdIH5+CgoKClRob3VnaCBtb3N0IHBlb3BsZSBhcmUgbm90IGZhbWlsaWFyIHdpdGggc3BhY2lh bCB0ZW5zZXMsIHRoZXNlIG5ldyB3b3JkcyBjYW4gb3BlbiB1cCBmb3Igc29tZSBwcmV0dHkgc3dl ZXQgdXNlcy4gT25lIGNvdWxkLCBmb3IgaW5zdGFuY2UsIHRyYW5zbGF0ZSDigJxUaGF0J3MgYSBi aWcgZG9n4oCdIGFzICcndGkgdmUndSB7a3V9IGdlcmt1IHt2YXV9JycuIFNheWluZzog4oCcVGhp cyB0aGluZyBkb2dzIGZvciBhIGxvbmcgc3BhY2XigJ0gbWFrZXMgeW91IHNvdW5kIHJldGFyZGVk IGluIEVuZ2xpc2gsIGJ1dCB3ZWxsLXNwb2tlbiBpbiBMb2piYW4hCgoKCicnemUndScnIGFuZCBp dHMgYnJvdGhlcnMgYWxzbyBjb21iaW5lIHdpdGggb3RoZXIgdGVuc2VzIHRvIGZvcm0gY29tcG91 bmQgdGVuc2VzLiBUaGUgcnVsZSBmb3IgJyd6ZSd1JycgYW5kIHRoZSBvdGhlcnMgYXJlIHRoYXQg YW55IHRlbnNlcyBwcmVjZWRpbmcgaXQgbWFya3MgYW4gZW5kcG9pbnQgb2YgdGhlIHByb2Nlc3Mg KHJlbGF0aXZlIHRvIHRoZSBwb2ludCBvZiByZWZlcmVuY2UpIGFuZCBhbnkgdGVuc2VzIGNvbWlu ZyBhZnRlciBpdCBtYXJrcyB0aGUgb3RoZXIgZW5kcG9pbnQgcmVsYXRpdmUgdG8gdGhlIGZpcnN0 LiBUaGlzIHNob3VsZCBiZSBkZW1vbnN0cmF0ZWQgd2l0aCBhIGNvdXBsZSBvZiBleGFtcGxlczoK CicnLm8nb2N1J2kgZG8gY2l0a2EgcHUge2t1fSB6ZSd1IHtrdX0gYmEge2t1fSB6dSB7a3V9IHt2 YXV9JycgLSDigJx7dG9sZXJhbmNlfSB5b3UgZWF0IGJlZ2lubmluZyBpbiB0aGUgcGFzdCBhbmQg Zm9yIGEgbG9uZyB0aW1lIGVuZGluZyBhdCBzb21lIHBvaW50IGZhciBpbnRvIHRoZSBmdXR1cmUg b2Ygd2hlbiB5b3Ugc3RhcnRlZOKAnSBvciDigJxIbXBmLCB5b3UgYXRlIGZvciBhIGxvbmcgdGlt ZeKAnS4gT25lIGNhbiBhbHNvIGNvbnRyYXN0ICcnZG8gY2Ege2t1fSB6ZSdpIHtrdX0gcHUge2t1 fSBrbGFtYSB7dmF1fScnIHdpdGggJydkbyBwdSB7a3V9IHplJ2kge2t1fSBjYSB7a3V9IGtsYW1h IHt2YXV9JycuIFRoZSBmaXJzdCBldmVudCBvZiB0cmF2ZWxpbmcgaGFzIG9uZSBlbmRwb2ludCBp biB0aGUgcHJlc2VudCBhbmQgZXh0ZW5kcyBhIGxpdHRsZSB0b3dhcmRzIHRoZSBwYXN0LCB3aGls ZSB0aGUgc2Vjb25kIGV2ZW50IGhhcyBvbmUgZW5kcG9pbnQgaW4gdGhlIHBhc3QgYW5kIGV4dGVu ZHMgb25seSB0byB0aGUgcHJlc2VudCAodGhhdCBpcywgc2xpZ2h0eSBpbnRvIHRoZSBwYXN0IG9y IGZ1dHVyZSkgb2YgdGhhdCBlbmRwb2ludC4KCl9fJydqbWl2ZScnX18g4oCceDEgaXMgYWxpdmUg Ynkgc3RhbmRhcmQgeDLigJ0KCgoKV2hhdCBkb2VzICcnLnVpIG1pIHB1IHtrdX0gemkge2t1fSB6 ZSd1IHtrdX0gam1pdmUge3ZhdX0nJyBleHByZXNzPwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKA nHtoYXBwaW5lc3MhfSBJIGxpdmUgZnJvbSBhIGxpdHRsZSBpbnRvIHRoZSBwYXN0IGFuZCBhIGxv bmcgd2F5IHRvd2FyZHMgdGhlIGZ1dHVyZSBvciBwYXN0IChvYnZpb3VzbHkgdGhlIGZ1dHVyZSwg aW4gdGhpcyBjYXNlKSBvZiB0aGF0IGV2ZW504oCdIG9yIOKAnEkgYW0geW91bmcsIGFuZCBoYXZl IG1vc3Qgb2YgbXkgbGlmZSBhaGVhZCBvZiBtZSA6KeKAnX5+CgoKCkp1c3QgdG8gdW5kZXJsaW5l IHRoZSBzaW1pbGFyaXR5IHdpdGggc3BhY2lhbCB0ZW5zZXMsIGxldCdzIGhhdmUgYW5vdGhlciBl eGFtcGxlLCB0aGlzIHRpbWUgd2l0aCBzcGFjaWFsIHRlbnNlczoKCl9fJycudSdlJydfXyBhdHRp dHVkaW5hbDogd29uZGVyIC0gY29tbW9ucGxhY2UKCgoKJycudSdlIHphJ2Ege2t1fSBidSd1IHtr dX0gdmUndSB7a3V9IGNhJ3Uge2t1fSB6ZGFuaSB7dmF1fScnIC0gV2hhdCBkb2VzIGl0IG1lYW4/ CgoKCkFuc3dlcjogfn5ncmV5LGdyZXk6IOKAnHt3b25kZXJ9IHtJIG9ic2VydmUhfSBFeHRlbmRp bmcgYSBsb25nIHNwYWNlIGZyb20gaGVyZSB0byBteSBmcm9udCBpcyBhIGhvbWUu4oCdIG9yIOKA nFdvdywgdGhpcyBob21lIGV4dGVuZGluZyBhaGVhZCBpcyBodWdlIeKAnX5+CgoKCkJlZm9yZSB3 ZSBjb250aW51ZSB3aXRoIHRoaXMgc3ludGF4LWhlYXZ5IHRlbnNlIHN5c3RlbSwgaSByZWNvbW1l bmQgc3BlbmRpbmcgYXQgbGVhc3QgdGVuIG1pbnV0ZXMgZG9pbmcgc29tZXRoaW5nIHdoaWNoIGRv ZXNuJ3Qgb2NjdXB5IHlvdXIgYnJhaW4gaW4gb3JkZXIgdG8gbGV0IHRoZSBpbmZvcm1hdGlvbiBz aW5rIGluLiBTaW5nIGEgc29uZyBvciBlYXQgYSBjb29raWUgdmVyeSBzbG93bHkgLSB3aGF0ZXZl ciwgYXMgbG9uZyBhcyB5b3UgbGV0IHlvdXIgbWluZCByZXN0LgoKCgohIUxvamJhbiBMZXNzb25z IC0gTGVzc29uIGVsZXZlbiAoWkFoTykKClRob3VnaCB3ZSB3b24ndCBnbyB0aHJvdWdoIGFsbCBM b2piYW4gdGVuc2UgY29uc3RydWN0cyBmb3Igbm93LCB0aGVyZSBpcyBvbmUgb3RoZXIga2luZCBv ZiB0ZW5zZSB0aGF0IEkgdGhpbmsgc2hvdWxkIGJlIHRhdWdodCBub3cuIFRoZXNlIGFyZSBjYWxs ZWQg4oCcZXZlbnQgY29udG91cnPigJ0sIGFuZCByZXByZXNlbnQgYSB2ZXJ5IGRpZmZlcmVudCB3 YXkgb2Ygdmlld2luZyB0ZW5zZXMgdGhhdCB3ZSBoYXZlIHNlZW4gc28gZmFyLiBTbyBsZXQncyBn ZXQgdG8gaXQ6CgoKClVzaW5nIHRoZSB0ZW5zZXMgd2UgaGF2ZSBsZWFybmVkIHNvIGZhciwgd2Ug Y2FuIGltYWdpbmUgYW4gaW5kZWZpbml0ZSB0aW1lIGxpbmUsIGFuZCB3ZSB0aGVuIHBsYWNlIGV2 ZW50cyBvbiB0aGF0IGxpbmUgcmVsYXRpdmUgdG8gdGhlIOKAnG5vd+KAnS4gV2l0aCBldmVudCBj b250b3VycywgaG93ZXZlciwgd2UgdmlldyBlYWNoIGV2ZW50IGFzIGEgcHJvY2Vzcywgd2hpY2gg aGFzIGNlcnRhaW4gc3RhZ2VzOiBBIHRpbWUgYmVmb3JlIGl0IHVuZm9sZHMsIGEgdGltZSB3aGVu IGl0IGJlZ2lucywgYSB0aW1lIHdoZW4gaXQgaXMgaW4gcHJvY2VzcywgYSB0aW1lIHdoZW4gaXQg ZW5kcywgYW5kIGEgdGltZSBhZnRlciBpdCBoYXMgZW5kZWQuIEV2ZW50IGNvbnRvdXJzIHRoZW4g dGVsbHMgdXMgd2hpY2ggcGFydCBvZiB0aGUgZXZlbnQncyBwcm9jZXNzIHdhcyBoYXBwZW5pbmcg ZHVyaW5nIHRoZSB0aW1lIHNwZWNpZmllZCBieSB0aGUgb3RoZXIgdGVuc2VzLiBXZSBuZWVkIGEg Y291cGxlIG9mIHRlbnNlcyBmaXJzdDoKCgoKX18nJ3B1J28nJ19fIC0gc3VtdGNpdGE6IGV2ZW50 IGNvbnRvdXI6IEJyaWRpIGhhcyBub3QgeWV0IGhhcHBlbmVkIGR1cmluZyB7c3VtdGl9CgpfXycn Y2EnbycnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW4gcHJvY2VzcyBk dXJpbmcge3N1bXRpfQoKX18nJ2JhJ28nJ19fIC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IFRo ZSBwcm9jZXNzIG9mIGJyaWRpIGhhcyBlbmRlZCBkdXJpbmcge3N1bXRpfQoKCgpUaGlzIG5lZWRz IHRvIGJlIGRlbW9uc3RyYXRlZCBieSBzb21lIGV4YW1wbGVzLiBXaGF0J3MgJycudWkgbWkgcHUn byB7a3V9IHNlIHpkYW5pIHt2YXV9JycgbWVhbj8KCgoKQW5zd2VyOiDigJxZYXksIEknbGwgYmVn aW4gdG8gaGF2ZSBhIGhvbWXigJ0uCgoKCkJ1dCBoZXksIHlvdSBhc2ssIHdoeSBub3QganVzdCBz YXkgJycudWkgbWkgYmEge2t1fSBzZSB6ZGFuaSB7dmF1fScnIGFuZCBldmVuIHNhdmUgYSBzeWxs YWJsZT8gQmVjYXVzZSwgcmVtZW1iZXIsIHNheWluZyB0aGF0IHlvdSB3aWxsIGhhdmUgYSBob21l IGluIHRoZSBmdXR1cmUgc2F5cyBub3RoaW5nIGFib3V0IHdoZXRoZXIgeW91IGhhdmUgYSBob21l IG5vdy4gVXNpbmcgJydwdSdvJycsIHRob3VnaCwgeW91IHNheSB0aGF0IHlvdSBhcmUgbm93IGlu IHRoZSBwYXN0IG9mIHRoZSBwcm9jZXNzIG9mIHlvdSBoYXZpbmcgYSBob21lLCB3aGljaCBtZWFu cyB0aGF0IHlvdSBkb24ndCBoYXZlIG9uZSBub3cuCgpOb3RlLCBieSB0aGUgd2F5LCB0aGF0ICcn bWkgYmEge2t1fSBzZSB6ZGFuaSB7dmF1fScnIGlzIHNpbWlsYXIgdG8gJydtaSBwdSdvIHtrdX0g c2UgemRhbmkge3ZhdX0nJywgYW5kIGxpa2V3aXNlIHdpdGggJydiYSdvJycgYW5kICcncHUnJy4g V2h5IGRvIHRoZXkgc2VlbSByZXZlcnNlZD8gQmVjYXVzZSBldmVudCBjb250b3VycyB2aWV3IHRo ZSBwcmVzZW50IGFzIHNlZW4gZnJvbSB0aGUgdmlld3BvaW50IG9mIHRoZSBwcm9jZXNzLCB3aGVy ZWFzIHRoZSBvdGhlciB0ZW5zZXMgdmlldyBldmVudHMgc2VlbiBmcm9tIHRoZSBwcmVzZW50LgoK CgpPZnRlbiwgZXZlbnQgY29udG91cnMgYXJlIG1vcmUgcHJlY2lzZSB0aGF0IG90aGVyIGtpbmQg b2YgdGVuc2VzLiBFdmVuIG1vcmUgY2xhcml0eSBpcyBhY2hpZXZlZCBieSBjb21iaW5pbmcgc2V2 ZXJhbCB0ZW5zZXM6ICcnLmEnbyBtaSBiYXtrdX0gemkge2t1fSBiYSdvIHtrdX0gZ3Vua2Ege3Zh dX0nJyAtIOKAnEkgaG9wZSBJJ3ZlIHNvb24gZmluaXNoZWQgd29ya2luZy7igJ0KCgoKSW4gTG9q YmFuLCB3ZSBhbHNvIG9wZXJhdGUgd2l0aCBhbiBldmVudCdzIOKAnG5hdHVyYWwgYmVnaW5uaW5n 4oCdIGFuZCBpdHMg4oCcbmF0dXJhbCBlbmTigJ0uIFRoZSB0ZXJtIOKAnG5hdHVyYWzigJ0gaXMg aGlnaGx5IHN1YmplY3RpdmUgaW4gdGhpcyBzZW5zZSwgYW5kIHRoZSBuYXR1cmFsIGVuZCByZWZl cnMgdG8gdGhlIHBvaW50IGluIHRoZSBwcm9jZXNzIHdoZXJlIGl0IHNob3VsZCBlbmQuIFlvdSBj YW4gc2F5IGFib3V0IGEgbGF0ZSB0cmFpbiwgZm9yIGluc3RhbmNlLCB0aGF0IGl0cyBwcm9jZXNz IG9mIHJlYWNoaW5nIHlvdSBpcyBub3cgZXh0ZW5kaW5nIGJleW9uZCBpdHMgbmF0dXJhbCBlbmQu IEFuIHVuZGVyY29va2VkLCBidXQgc2VydmVkIG1lYWwsIHNpbWlsYXJseSwgaXMgYmVpbmcgZWF0 ZW4gYmVmb3JlIHRoYXQgcHJvY2VzcycgbmF0dXJhbCBiZWdpbm5pbmcuIFRoZSBldmVudCBjb250 b3VycyB1c2VkIGluIHRoZXNlIGV4YW1wbGVzIGFyZSBhcyBmb2xsb3dzOgoKCgpfXycnemEnbycn X18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW4gcHJvY2VzcyBiZXlvbmQg aXRzIG5hdHVyYWwgZW5kIGR1cmluZyB7c3VtdGl9CgpfXycneGEnbycnX18gLSBzdW10Y2l0YTog ZXZlbnQgY29udG91cjogQnJpZGkgaXMgaW1tYXR1cmVseSBpbiBwcm9jZXNzIGR1cmluZyB7c3Vt dGl9CgoKCl9fJydjaWRqYScnX186IOKAnHgxIGlzIGZvb2QsIHdoaWNoIGlzIGVkaWJsZSBmb3Ig eDLigJ0KCgoKVHJhbnNsYXRlOiAnJy5vaSBkbyBjaXRrYSB6YSdvIGxvIG51IGRvIGJhJ28ge2t1 fSB1J2UgY2l0a2Egem8nZSBub2kgY2lkamEgZG8ge3ZhdX0ge2t1J299IHt2YXV9IHtrZWl9IHtr dX0nJwoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OuKAnE95LCB5b3Uga2VlcCBlYXRpbmcgd2hlbiB5 b3UgaGF2ZSBmaW5pc2hlZCwgaW5jcmVkaWJseSwgZWF0aW5nIHNvbWV0aGluZyBlZGlibGUh4oCd fn4KCgoKe2ltZyBmaWxlSWQ9IjIiIHRodW1iPSJ5IiByZWw9ImJveFtnXSJ9CgpJbWFnZSBhYm92 ZTogWkFoTyB0ZW5zZXMgKGV2ZW50IGNvbnRvdXJzKS4gQWxsIHRlbnNlcyBhYm92ZSB0aGUgbGlu ZSBvZiB0aGUgZXZlbnQgc2lnbmlmeSBzdGFnZXMgY292ZXJpbmcgYW4gYW1vdW50IG9mIHRpbWUu IEFsbCB0ZW5zZXMgYmVsb3cgdGhlIGV2ZW50IGxpbmUgc2lnbmlmeSBzdGFnZXMgd2hpY2ggYXJl IHBvaW50LWxpa2UuCgoKCkFsbCBvZiB0aGVzZSB0ZW5zZXMgaGF2ZSBiZWVuIGRlc2NyaWJpbmcg c3RhZ2VzIG9mIGEgcHJvY2VzcyB3aGljaCB0YWtlcyBzb21lIHRpbWUgKGFzIHNob3duIG9uIHRo ZSBncmFwaCBhYm92ZTsgdGhvc2UgdGVuc2VzIGFib3ZlIHRoZSBldmVudCBsaWtlKS4gQnV0IG1h bnkgb2YgdGhlIGV2ZW50IGNvbnRvdXJzIGRlc2NyaWJlcyBwb2ludCBsaWtlIHN0YWdlcyBpbiB0 aGUgcHJvY2VzcywgbGlrZSBpdHMgYmVnaW5uaW5nLiBBcyBpcyB0cnVlIG9mICcnY2EnJyBhbmQg JydidSd1JycsIHRoZXkgYWN0dWFsbHkgZXh0ZW5kIHNsaWdodGx5IGludG8gdGhlIHBhc3QgYW5k IGZ1dHVyZSBvZiB0aGF0IHBvaW50LCBhbmQgbmVlZCBub3QgdG8gYmUgcHJlY2lzZS4KCgoKVGhl IHR3byBtb3N0IGltcG9ydGFudCBwb2ludC1saWtlIGV2ZW50IGNvbnRvdXJzIGFyZToKCl9fJydj bydhJydfXyAtIHN1bXRjaXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBhdCBpdHMgYmVnaW5u aW5nIGR1cmluZyB7c3VtdGl9CgpfXycnY28ndScnX18gLSBzdW10Y2l0YTogZXZlbnQgY29udG91 cjogQnJpZGkgaXMgYXQgaXRzIGVuZGluZyBkdXJpbmcge3N1bXRpfQoKCgpGdXJ0aGVybW9yZSwg dGhlcmUgaXMgYSBwb2ludCB3aGVyZSB0aGUgcHJvY2VzcyBpcyBuYXR1cmFsbHkgY29tcGxldGUs IGJ1dCBub3QgbmVjZXNzYXJpbHkgaGFzIGVuZGVkIHlldDoKCl9fJydtbyd1JydfXyAtIHN1bXRj aXRhOiBldmVudCBjb250b3VyOiBCcmlkaSBpcyBhdCBpdHMgbmF0dXJhbCBlbmRpbmcgZHVyaW5n IHtzdW10aX0KCk1vc3Qgb2YgdGhlIHRpbWUsIHRob3VnaCwgcHJvY2Vzc2VzIGFjdHVhbGx5IGVu ZCBhdCB0aGVpciBuYXR1cmFsIGVuZGluZzsgdGhpcyBpcyB3aGF0IG1ha2VzIGl0IG5hdHVyYWwu IFRyYWlucyBhcmUgbm90IHVzdWFsbHkgbGF0ZSwgYW5kIHBlb3BsZSB1c3VhbGx5IHJldHJhaW4g dGhlbXNlbHZlcyB0byBlYXQgb25seSBlZGlibGUgZm9vZC4KCgoKU2luY2UgYSBwcm9jZXNzIGNh biBiZSBpbnRlcnJ1cHRlZCBhbmQgcmVzdW1lZCwgdGhlc2UgcG9pbnRzIGhhdmUgZWFybmVkIHRo ZWlyIG93biBldmVudCBjb250b3VyIGFsc286CgpfXycnZGUnYScnX18gLSBzdW10Y2l0YTogZXZl bnQgY29udG91cjogQnJpZGkgaXMgcGF1c2luZyBkdXJpbmcge3N1bXRpfQoKX18nJ2RpJ2EnJ19f IC0gc3VtdGNpdGE6IGV2ZW50IGNvbnRvdXI6IEJyaWRpIGlzIHJlc3VtaW5nIGR1cmluZyB7c3Vt dGl9CgoKCkluIGZhY3QsIHNpbmNlICcnanVuZGknJyBtZWFucyDigJx4MSBwYXlzIGF0dGVudGlv biB0byB4MuKAnSwgJydkZSdhIGp1bmRpJycgYW5kICcnZGknYSBqdW5kaScnIGFyZSBjb21tb24g TG9qYmFuIHdheXMgb2Ygc2F5aW5nIOKAnEJSQuKAnSBhbmQg4oCcYmFja+KAnS4gT25lIGNvdWxk IG9mIGNvdXJzZSBhbHNvIHNheSB0aGUgZXZlbnQgY29udG91cnMgYnkgdGhlbXNlbHZlcyBhbmQg aG9wZSB0aGUgcG9pbnQgZ2V0cyBhY3Jvc3MuCgoKCkZpbmFsbHksIG9uZSBjYW4gdHJlYXQgYW4g ZW50aXJlIGV2ZW50LCBmcm9tIHRoZSBiZWdpbm5pbmcgdG8gdGhlIGVuZCBhcyBvbmUgc2luZ2xl IHBvaW50IHVzaW5nICcnY28naScnOgoKX18nJ3Blbm1pJydfXyDigJx4MSBtZWV0cyB4MiBhdCBs b2NhdGlvbiB4M+KAnQoKJydtaSBwdSB7a3V9IHppIHtrdX0gY28naSB7a3V9IHBlbm1pIGxvIGRv dGNvIHByZW51IHtrdX0ge3ZhdX0nJyAtIOKAnEEgbGl0dGxlIHdoaWxlIGFnbywgSSB3YXMgYXQg dGhlIHBvaW50IGluIHRpbWUgd2hlcmUgaSBtZXQgYSBHZXJtYW4gcGVyc29u4oCdCgoKCgoKISFM b2piYW4gTGVzc29ucyAtIExlc3NvbiB0d2VsdmUgKG9yZGVycyBhbmQgcXVlc3Rpb25zKQoKUGhl dywgdGhvc2UgdHdvIGxvbmcgbGVzc29ucyB3aXRoIHN5bnRheCBoZWF2eSBMb2piYW4gZ2l2ZXMg dGhlIGJyYWluIHNvbWV0aGluZyB0byBwb25kZXIgYWJvdXQuIEVzcGVjaWFsbHkgYmVjYXVzZSBp dCdzIHNvIGRpZmZlcmVudCBmcm9tIEVuZ2xpc2guIFNvIGxldCdzIHR1cm4gdG8gc29tZXRoaW5n IGEgbGl0dGxlIGxpZ2h0ZXI6IE9yZGVycyBhbmQgcXVlc3Rpb25zLgoKCgpXaGF0IHRoZS4uLiBf X3NpdCB1cCBhbmQgZm9jdXMhX18KCgoKU2luY2UgdGhlIHdheSB0byBleHByZXNzIG9yZGVycyBp biBFbmdsaXNoIGlzIHRvIGxlYXZlIG91dCB0aGUgc3ViamVjdCBvZiB0aGUgY2xhdXNlLCB3aHkg ZGlkIHlvdSBhc3N1bWUgdGhhdCBpdCB3YXMgeW91IEkgd2FzIHNwZWFraW5nIHRvLCBhbmQgbm90 IG9yZGVyaW5nIG15c2VsZiwgb3IgZXhwcmVzc2luZyB0aGUgb2JsaWdhdGlvbiBzb21lb25lIGVs c2UgaGFzPyBCZWNhdXNlIHRoZSBFbmdsaXNoIGxhbmd1YWdlIHVuZGVyc3RhbmRzIHRoYXQgb3Jk ZXJzLCBieSB0aGVpciB2ZXJ5IG5hdHVyZSwgYXJlIGFsd2F5cyBkaXJlY3RlZCB0b3dhcmRzIHRo ZSBsaXN0ZW5lciAtIHRoZSDigJx5b3XigJ0sIGFuZCBzbyB0aGUgc3ViamVjdCBpcyBub3QgbmVj ZXNzYXJ5LgoKSW4gTG9qYmFuLCBlbGlkaW5nIHRoZSBzdWJqZWN0IHlpZWxkcyAnJ3pvJ2UnJywg c28gdGhhdCBwb3NzaWJpbGl0eSBpcyBzYWRseSBub3Qgb3BlbiB0byB1cy4gSW5zdGVhZCwgd2Ug dXNlIHRoZSB3b3JkICcna28nJywgd2hpY2ggaXMgdGhlIGltcGVyYXRpdmUgZm9ybSBvZiAnJ2Rv JycuIEdyYW1tYXRpY2FsbHkgYW5kIGJyaWRpLXdpc2UsIGl0J3MgZXF1aXZhbGVudCB0byAnJ2Rv JycsIGJ1dCBpdCBhZGRzIGEgbGF5ZXIgb2Ygc2VtYW50aWNzLCBzaW5jZSBpdCB0dXJucyBldmVy eSBzdGF0ZW1lbnQgd2l0aCAnJ2tvJycgaW4gaXQgaW50byBhbiBvcmRlci4g4oCcRG8gc3VjaCB0 aGF0IHRoaXMgc2VudGVuY2UgaXMgdHJ1ZSBmb3IgeW91PScna28nJyHigJ0gRm9yIHRoZSBzYW1l IHJlYXNvbiB3ZSBkb24ndCBuZWVkIHRoZSBzdWJqZWN0IGluIEVuZ2xpc2ggc2VudGVuY2VzLCB3 ZSBkb24ndCBuZWVkIG9yZGVyLXdvcmRzIGRlcml2ZWQgZnJvbSBhbnkgb3RoZXIgc3VtdGkgdGhh biAnJ2RvJycuCgoKCkhvdyBjb3VsZCB5b3Ugb3JkZXIgb25lIHRvIGdvIGZhciBhd2F5IGZvciBh IGxvbmcgdGltZSAodXNpbmcgJydrbGFtYScnIGFzIHRoZSBvbmx5IHNlbGJyaT8pCgoKCkFuc3dl cjogfn5ncmV5LGdyZXk6a28gdmUndSB6ZSd1IGtsYW1hfn4KCignJy5pIHphJ2EgZGFpIGEnbyBt aSBjYSBjbyd1IGNpc2thIGxvIGZhJ29ybWEnbyAuaSBrbyBqaW1wZSB2YXUgLnVpJycpIC0gbG9v ayB1cCBjaXNrYSBhbmQgd29yayBpdCBvdXQuCgoKClF1ZXN0aW9ucyBpbiBMb2piYW4gYXJlIHZl cnkgZWFzeSB0byBsZWFybiwgYW5kIHRoZXkgY29tZSBpbiB0d28ga2luZHM6IEZpbGwgaW4gdGhl IGJsYW5rLCBhbmQgdHJ1ZS9mYWxzZSBxdWVzdGlvbnMuIExldCdzIGJlZ2luIHdpdGggdGhlIHRy dWUtZmFsc2UgcXVlc3Rpb24ga2luZCAtIHRoYXQncyBwcmV0dHkgb3ZlcmNvbWVhYmxlLCBzaW5j ZSBpdCBvbmx5IGludm9sdmVzIG9uZSB3b3JkLCAnJ3h1JycuCgonJ3h1Jycgd29ya3MgbGlrZSBh biBhdHRpdHVkaW5hbCBpbiB0aGUgc2Vuc2UgdGhhdCBpdCBjYW4gZ28gYW55d2hlcmUsIGFuZCBp dCBhcHBsaWVzIHRvIHRoZSBwcmVjZWRpbmcgd29yZCAob3IgY29uc3RydWN0KS4gSXQgdGhlbiB0 cmFuc2Zvcm1zIHRoZSBzZW50ZW5jZSBpbnRvIGEgcXVlc3Rpb24sIGFza2luZyB3aGV0aGVyIGl0 IGlzIHRydWUgb3Igbm90LiBJbiBvcmRlciB0byBhZmZpcm0sIHlvdSBzaW1wbHkgcmVwZWF0IHRo ZSBicmlkaToKCicneHUgdmUndSB6ZGFuaSBkbycnICcnLmkgdmUndSB6ZGFuaSBtaScnLCBvciB5 b3UganVzdCByZXBlYXQgdGhlIHRoZSBzZWxicmksIHdoaWNoIGlzIHRoZSBicmlkaSB3aXRoIGFs bCB0aGUgc3VtdGkgYW5kIHRlbnNlcyBlbGlkZWQ6ICcnemRhbmknJy4KClRoZXJlIGlzIGFuIGV2 ZW4gZWFzaWVyIHdheSB0byBhZmZpcm0gdXNpbmcgYnJpa2EnaSwgYnV0IHRob3NlIGFyZSBhIHRh bGUgZm9yIGFub3RoZXIgdGltZS4gVG8gYW5zd2VyIOKAnG5v4oCdIG9yIOKAnGZhbHNl4oCdLCB5 b3Ugc2ltcGx5IGFuc3dlciB3aXRoIHRoZSBicmlkaSBuZWdhdGVkLiBUaGF0IHRvbywgd2lsbCBi ZSBsZWZ0IGZvciBsYXRlciwgYnV0IHdlIHdpbGwgcmV0dXJuIHRvIHF1ZXN0aW9uIGFuc3dlcmlu ZyBieSB0aGVuLgoKCgpUaGUgb3RoZXIga2luZCBpcyBmaWxsIGluIHRoZSBibGFuay4gSGVyZSwg eW91IGFzayBmb3IgdGhlIHF1ZXN0aW9uIHdvcmQgdG8gYmUgcmVwbGFjZWQgZm9yIGEgY29uc3Ry dWN0LCB3aGljaCBtYWtlcyB0aGUgYnJpZGkgY29ycmVjdC4gVGhlcmUgYXJlIHNldmVyYWwgb2Yg dGhlc2Ugd29yZHMsIGRlcGVuZGluZyBvbiB3aGF0IHlvdSBhcmUgYXNraW5nIGFib3V0OgoKX18n J21hJydfXyAtIHN1bXRpIHF1ZXN0aW9uCgpfXycnbW8nJ19fIC0gc2VsYnJpIHF1ZXN0aW9uCgpf XycneG8nJ19fIC0gbnVtYmVyIHF1ZXN0aW9uCgpfXycnY3UnZScnX18gLSB0ZW5zZSBxdWVzdGlv bgoKCgpBcyB3ZWxsIGFzIG1hbnkgb3RoZXJzLiBUbyBhc2sgYWJvdXQgYSBzdW10aSwgeW91IHRo ZW4ganVzdCBwbGFjZSB0aGUgcXVlc3Rpb24gd29yZCB3aGVyZSB5b3Ugd2FudCB5b3VyIGFuc3dl cjogJydkbyBkdW5kYSBtYSBtaScnIC0gYXNrcyBmb3IgdGhlIHgyIHRvIGJlIGZpbGxlZCB3aXRo IGEgY29ycmVjdCBzdW10aS4g4oCcWW91IGdpdmUgd2hhdCB0byBtZT/igJ0uIFRoZSBjb21iaW5h dGlvbiBvZiAnJ3N1bXRjaXRhJycgKyAnJ21hJycgaXMgdmVyeSB1c2VmdWwgaW5kZWVkOgoKX18n J211J2knJ19fIC0gc3VtdGNpdGE6IG1vdGl2YXRlZCBieSB0aGUgYWJzdHJhY3Rpb24gb2Yge3N1 bXRpfQoKCgonJy5vaSBkbyBkYXJ4aSBtaSBtdSdpIG1hJycgLSDigJxPeSwgd2h5IGRvIHlvdSBo aXQgbWU/IeKAnQoKCgpMZXQncyB0cnkgYW5vdGhlciBvbmUuIFRoaXMgdGltZSwgeW91IHRyYW5z bGF0ZToKCicnLnVpIGRhaSBkbyBjYSB6ZSd1IHB1IG1vJycKCgoKQW5zd2VyOiB+fmdyZXksZ3Jl eTrigJxZb3UncmUgaGFwcHksIHdoYXQgaGF2ZSB5b3UgYmVlbiBkb2luZyBhbGwgdGhpcyBsb25n IHRpbWUgdW50aWwgbm93P+KAnSBUZWNobmljYWxseSwgaXQgY291bGQgYWxzbyBtZWFuIOKAnHdo YXQgaGF2ZSB5b3UgYmVlbj/igJ0sIGJ1dCBhbnN3ZXJpbmcgd2l0aCAnJy51YSBuYWkgbGknYSBy ZW1uYScnIChVaCwgaHVtYW4sIG9idmlvdXNseSkgaXMganVzdCBiZWluZyBpbmNyZWRpYmx5IGFu bm95aW5nIG9uIHB1cnBvc2Uufn4KCgoKU2luY2UgdG9uZSBvZiB2b2ljZSBvciBzZW50ZW5jZSBz dHJ1Y3R1cmUgZG9lcyBub3QgcmV2ZWFsIHdoZXRoZXIgYSBzZW50ZW5jZSBpcyBhIHF1ZXN0aW9u IG9yIG5vdCwgb25lIGJldHRlciBub3QgbWlzcyB0aGUgcXVlc3Rpb24gd29yZC4gVGhlcmVmb3Jl LCBzaW5jZSBwZW9wbGUgdGVuZCB0byBmb2N1cyBtb3JlIG9uIHdvcmRzIGluIHRoZSBiZWdpbm5p bmcgb3IgYXQgdGhlIGVuZCBvZiBzZW50ZW5jZXMsIGl0J3MgdXN1YWxseSB3b3J0aCB0aGUgd2hp bGUgdG8gcmUtb3JkZXIgdGhlIHNlbnRlbmNlIHNvIHRoYXQgdGhlIHF1ZXN0aW9uIHdvcmRzIGFy ZSBhdCB0aG9zZSBwbGFjZXMuIElmIHRoYXQgaXMgbm90IGZlYXNhYmxlLCAnJ3BhdScnIGlzIGFu IGF0dGl0dWRpbmFsIG1hcmtpbmcgdGhhdCB0aGUgc2VudGVuY2UgaXMgYSBxdWVzdGlvbi4gQ29u dHJhcnksICcncGF1IG5haScnIGV4cGxpY2l0bHkgbWFya3MgYW55IHF1ZXN0aW9uIGFzIGJlaW5n IHJoZXRvcmljYWwuCgoKCldoaWxlIHdlIGFyZSBvbiB0aGUgdG9waWMgb2YgcXVlc3Rpb25zLCBp dCdzIGFsc28gYXBwcm9wcmlhdGUgdG8gbWVudGlvbiB0aGUgd29yZCAnJ2thdScnLCB3aGljaCBp cyBhIG1hcmtlciBmb3Ig4oCcaW5kaXJlY3QgcXVlc3Rpb27igJ0uIFdoYXQncyBhbiBpbmRpcmVj dCBxdWVzdGlvbiwgdGhlbj8gV2VsbCwgdGFrZSBhIGxvb2sgYXQgdGhlIHNlbnRlbmNlOiAnJ21p IGRqdW5vIGxvIGR1J3UgbWEga2F1IHpkYW5pIGRvJycgLSDigJxJIGtub3cgd2hhdCBpcyB5b3Vy IGhvbWUu4oCdCgpfXycnZGp1bm8nJ19fIOKAnHgxIGtub3dzIGZhY3QocykgeDIgYXJlIHRydWUg YWJvdXQgeDMgYnkgZXBpc3RlbW9sb2d5IHg04oCdCgpPbmUgY2FuIHRoaW5rIGl0IGFzIHRoZSBh bnN3ZXIgdG8gdGhlIHF1ZXN0aW9uICcnbWEgemRhbmkgZG8nJy4gTW9yZSByYXJlbHksIG9uZSBj YW4gbWFyayBhIG5vbi1xdWVzdGlvbiB3b3JkIHdpdGggJydrYXUnJywgaW4gd2hpY2ggY2FzZSBv bmUgc3RpbGwgY2FuIGltYWdpbmUgaXQgYXMgdGhlIGFuc3dlciB0byBhIHF1ZXN0aW9uOiAnJ21p IGppbXBlIGxvIGR1J3UgZHVuZGEgdGkga2F1IGRvJycgLSDigJxJIGtub3cgd2hhdCB5b3UgaGF2 ZSBiZWVuIGdpdmVuLCBpdCBpcyB0aGlzLuKAnQoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNz b24gdGhpcnRlZW4gKG1vcnBob2xvZ3kgYW5kIHdvcmQgY2xhc3NlcykKCkJhY2sgdG8gbW9yZSBo ZWF2eSAoYW5kIGludGVyZXN0aW5nKSBzdHVmZi4KCklmIHlvdSBoYXZlbid0IGFscmVhZHksIEkg c3Ryb25nbHkgc3VnZ2VzdCB5b3UgZmluZCB0aGUgTG9qYmFuaWMgcmVjb3JkaW5nIGNhbGxlZCAi U3RvcnkgVGltZSB3aXRoIFVuY2xlIFJvYmluIiwgb3IgbGlzdGVuIHRvIHNvbWVvbmUgc3BlYWsg TG9qYmFuIG9uIE11bWJsZSwgYW5kIHRoZW4gcHJhY3RpY2UgeW91ciBwcm9udW5jaWF0aW9uLiBI YXZpbmcgYW4gaW50ZXJuYWwgY29udmVyc2F0aW9uIGluIHlvdXIgaGVhZCBpbiBMb2piYW4gaXMg b25seSBnb29kIGlmIGl0IGlzbid0IHdpdGggYWxsIHRoZSB3cm9uZyBzb3VuZHMsIGFuZCBsZWFy bmluZyBwcm9udW5jaWF0aW9uIGZyb20gd3JpdHRlbiB0ZXh0IGlzIGhhcmQuIFRoZXJlZm9yZSwg dGhpcyBsZXNzb24gd2lsbCBub3QgYmUgb24gdGhlIExvamJhbiBzb3VuZHMsIGhvd2V2ZXIgaW1w b3J0YW50IHRoZXkgbWlnaHQgYmUsIGJ1dCBhIHNob3J0IGludHJvZHVjdGlvbiB0byB0aGUgTG9q YmFuIG1vcnBob2xvZ3kuCgoKCldoYXQgaXMgbW9ycGhvbG9neT8gVGhlIHdvcmQgaXMgZGVyaXZl ZCBmcm9tIEdyZWVrIG1lYW5pbmcg4oCcdGhlIHN0dWR5IG9mIHNoYXBlc+KAnSwgYW5kIGluIHRo aXMgY29udGV4dCwgd2UgdGFsayBhYm91dCBob3cgd2UgbWFrZSB3b3JkcyBmcm9tIGxldHRlcnMg YW5kIHNvdW5kcywgYXMgY29udHJhc3RlZCB3aXRoIHN5bnRheCAtIGhvdyB3ZSBtYWtlIHNlbnRl bmNlcyB3aXRoIHdvcmRzLiBMb2piYW4gb3BlcmF0ZXMgd2l0aCBkaWZmZXJlbnQgbW9ycGhvbG9n aWNhbCB3b3JkIGNsYXNzZXMsIHdoaWNoIGFyZSBhbGwgZGVmaW5lZCBieSB0aGVpciBtb3JwaG9s b2d5LiBUbyBtYWtlIGl0IGFsbCBuaWNlIGFuZCBzeXN0ZW1hdGljIHRob3VnaCwgd29yZHMgd2l0 aCBjZXJ0YWluIGZ1bmN0aW9ucyB0ZW5kIHRvIGJlIGdyb3VwZWQgYnkgbW9ycGhvbG9naWNhbCBj bGFzc2VzLCBidXQgZXhjZXB0aW9ucyBtYXkgb2NjdXIuCgp8fCAgIENsYXNzfE1lYW5pbmd8RGVm aW5lZCBCeXxUeXBpY2FsIEZ1bmN0aW9uCgogICBXb3Jkczp8ICAgfCAgIHwgICAKCiAgIEJyaXZs YXwgICBicmlkaS13b3JkfCAgIEFtb25nIGZpcnN0IDUgbGV0dGVycyAoZXhjbHVkaW5nIOKAnCDi gJgg4oCcKSBpcyBhIGNvbnNvbmFudCBjbHVzdGVyLiBFbmRzIGluIHZvd2VsLiAgIHwgICBBY3Rz IGFzIGEgc2VsYnJpIGJ5IGRlZmF1bHQuIEFsd2F5cyBoYXMgYSBwbGFjZSBzdHJ1Y3R1cmUuCgog ICAtLUdpc211fCAgIFJvb3Qtd29yZHwgNSBsZXR0ZXJzIG9mIHRoZSBmb3JtIENWQ0NWIG9yIEND VkNWICAgfCAgIE9uZSB0byBmaXZlIHN1bXRpIHBsYWNlcy4gQ292ZXJzIGJhc2ljIGNvbmNlcHRz LgoKICAgLS1MdWp2b3wgIENvbXBvdW5kIHdvcmQuIERlcml2ZWQgZnJvbSBmcm9tIOKAnGx1anZs YeKAnSwgbWVhbmluZyDigJxjb21wbGV4IHdvcmTigJ0gfCAgIE1pbi4gNiBsZXR0ZXJzLiBNYWRl IGJ5IHN0cmluZ2luZyByYWZzaSB0b2dldGhlciB3aXRoIGJpbmRpbmcgbGV0dGVycyBpZiBuZWNl c3NhcnkufCAgIENvdmVycyBtb3JlIGNvbXBsZXggY29uY2VwdHMgdGhhbiBnaXNtdS4KCiAgIC0t RnUnaXZsYXwgIENvcHktd29yZCB8IEFzIGJyaXZsYSwgYnV0IGRvIG5vdCBtZWV0IGRlZmluaW5n IGNyaXRlcmlhIG9mIGdpc211IG9yIGx1anZvLCBleDogJydhbmdlbGknJyAgfCAgIENvdmVycyB1 bmlxdWUgY29uY2VwdHMgbGlrZSBuYW1lcyBvZiBwbGFjZXMgb3Igb3JnYW5pc21zLgoKICAgQ21l dmxhfCAgTmFtZS13b3JkIHwgICBCZWdpbm5pbmcgYW5kIGVuZGluZyB3aXRoIHBhdXNlIChmdWxs IHN0b3ApLiBMYXN0IHNvdW5kL2xldHRlciBpcyBhIGNvbnNvbmFudC58ICAgQWx3YXlzIGFjdHMg YXMgYSBuYW1lIG9yIGFzIHRoZSBjb250ZW50IG9mIGEgcXVvdGUuCgogICBDbWF2b3wgICBHcmFt bWFyLXdvcmQuIEZyb20g4oCcY21hdmxh4oCdLCBtZWFuaW5nIOKAnHNtYWxsIHdvcmTigJ18IE9u ZSBjb25zb25hbnQgb3IgemVybywgYWx3YXlzIGF0IHRoZSBiZWdpbm5pbmcuIEVuZHMgaW4gYSB2 b3dlbC4gIHwgICBHcmFtbWF0aWNhbCBmdW5jdGlvbnMuIFZhcmllcwoKICAgV29yZC1mcmFnbWVu dHM6fCAgIHwgICB8CgogICBSYWZzaXwgICBBZmZpeHwgIENDViwgQ1ZDLCBDVidWLCAtQ1ZDQ1Ys IC1DQ1ZDViwgQ1ZDQ3ktIG9yIENDVkN5LSAgfCBOb3QgYWN0dWFsIHdvcmRzLCBidXQgY2FuIGJl IHN0cmluZ2VkIHRvZ2V0aGVyIHRvIGZvcm0gbHVqdm8gfHwKCgoKCgpfXycnY21ldmxhJydfXyBh cmUgdmVyeSBlYXN5IHRvIGlkZW50aWZ5IGJlY2F1c2UgdGhleSBiZWdpbiBhbmQgZW5kIHdpdGgg YSBwYXVzZSwgc2lnbmFsZWQgYnkgYSBmdWxsIHN0b3AgaW4gd3JpdGluZywgYW5kIHRoZSBsYXN0 IGxldHRlciBpcyBhIGNvbnNvbmFudC4gY21ldmxhIGNhbid0IGhhdmUgYW55IG90aGVyIGZ1bmN0 aW9uIGJlc2lkZXMgYWN0aW5nIGFzIGEgbmFtZS4gT24gdGhlIG90aGVyIGhhbmQsIG5hbWVzIHdo aWNoIGFyZSBub3Qgc2VsYnJpIGNhbm5vdCBhcHBlYXIgaW4gTG9qYmFuIHdpdGhvdXQgdGhlbSBi ZWluZyBjbWV2bGEsIG9yIGVuY2FzZWQgYnkgY2VydGFpbiBxdW90ZSB3b3Jkcy4gT25lIGNhbiBt YXJrIHN0cmVzcyBpbiB0aGUgbmFtZXMgYnkgY2FwaXRhbGl6aW5nIHRoZSBsZXR0ZXJzIHdoaWNo IGFyZSBzdHJlc3NlZC4gRXhhbXBsZXMgb2YgY21ldmxhIGFyZTogJycuaW9oQU4uJycgKEpvaGFu LCBoIGlzIGNhcGl0YWwgYXBvc3Ryb3BoZSksICcnLm1hdC4nJyAoTWF0dCkgYW5kICcnLmx1dGNp TUlOLicnIChMdWktQ2hpIE1pbikuIE5hbWVzIHdoaWNoIGRvIG5vdCBlbmQgaW4gY29uc29uYW50 cyBoYXZlIHRvIGhhdmUgb25lIGFkZGVkOiAnJy5pdnluLicnIChFdmUpLCBvciAocHJvYmFibHkg YmV0dGVyIGluIHRoaXMgY2FzZSkgcmVtb3ZlZDogJycuaXYuJycKCgoKX18nJ2JyaXZsYScnX18g YXJlIGNhbGxlZCDigJxicmlkaS13b3Jkc+KAnSBiZWNhdXNlIHRoZXkgYnkgZGVmYXVsdCBhcmUg c2VsYnJpLCBhbmQgdGhlcmVmb3JlIGFsbW9zdCBhbGwgTG9qYmFuIHdvcmRzIHdpdGggYSBwbGFj ZSBzdHJ1Y3R1cmUgYXJlIGJyaXZsYS4gVGhpcyBoYXMgYWxzbyBnaXZlbiB0aGVtIHRoZSBFbmds aXNoIG5pY2tuYW1lIOKAnGNvbnRlbnQtd29yZHPigJ0uIEl0J3MgbmVhcmx5IGltcG9zc2libGUg dG8gc2F5IGFueXRoaW5nIHVzZWZ1bCB3aXRob3V0IGJyaXZsYSwgYW5kIGFsbW9zdCBhbGwgd29y ZHMgZm9yIGNvbmNlcHRzIG91dHNpZGUgbG9qYmFuIGdyYW1tYXIgKGFuZCBldmVuIG1vc3Qgb2Yg dGhlIHdvcmRzIGZvciB0aGluZ3MgaW4gdGhlIGxhbmd1YWdlKSBhcmUgY2FwdHVyZWQgYnkgYnJp dmxhLiBBcyBzaG93biBpbiB0aGUgdGFibGUsIGJyaXZsYSBoYXMgdGhyZWUgc3ViY2F0ZWdvcmll czoKCl9fJydnaXNtdScnX18gYXJlIHRoZSByb290IHdvcmRzIG9mIHRoZSBsYW5ndWFnZS4gT25s eSBhYm91dCAxNDUwIGV4aXN0cywgYW5kIHZlcnkgZmV3IG5ldyBvbmVzIGFyZSBhZGRlZC4gVGhl eSBjb3ZlciB0aGUgbW9zdCBiYXNpYyBjb25jZXB0cyBsaWtlIOKAnGNpcmNsZeKAnSwg4oCcZnJp ZW5k4oCdLCDigJx0cmVl4oCdIGFuZCDigJxkcmVhbeKAnS4gRXhhbXBsZXMgaW5jbHVkZSAnJ3pk YW5pJycsICcncGVseHUnJyBhbmQgJydkdW5kYScnCgpfXycnbHVqdm8nJ19fIGFyZSBtYWRlIGJ5 IGNvbWJpbmluZyByYWZzaSAoc2VlIHVuZGVyIHJhZnNpKSwgcmVzcHJlc2VudGluZyBnaXNtdS4g QnkgY29tYmluaW5nIHJhZnNpLCBvbmUgbmFycm93cyBkb3duIHRoZSBtZWFuaW5nIG9mIHRoZSB3 b3JkLiBsdWp2byBhcmUgbWFkZSBieSBhbiBlbGFib3JhdGUgYWxnb3JpdGhtLCBzbyBtYWtpbmcg dmFsaWQgbHVqdm8gb24gdGhlIGZseSBpcyBuZWFyIGltcG9zc2libGUsIHdpdGggZmV3IGV4Y2Vw dGlvbnMgbGlrZSAnJ3NlbHBhJ2knJywgZnJvbSAnJ3NlIHByYW1pJycsIHdoaWNoIGNhbiBvbmx5 IGhhdmUgb25lIGRlZmluaXRpb24uIEluc3RlYWQsIGx1anZvIGFyZSBtYWRlIG9uY2UsIGl0cyBw bGFjZSBzdHJ1Y3R1cmUgZGVmaW5lZCwgYW5kIHRoZW4gdGhhdCBkZWZpbml0aW9uIGlzIG1hZGUg b2ZmaWNpYWwgYnkgdGhlIGRpY3Rpb25hcnkuIEV4YW1wbGVzIGluY2x1ZGUgYnJpdmxhIChicmlk aS13b3JkKSwgJydjaW5qaWtjYScnIChzZXh1YWwtc29jaWFsaXppbmcgPSBmbGlydGluZykgYW5k ICcnY2FrY2lua2knJyAoc2hlbGwtaW5zZWN0ID0gYmVldGxlKS4KCl9fJydmdSdpdmxhJydfXyBh cmUgbWFkZSBieSBtYWtpbmcgdXAgd29yZHMgd2hpY2ggZml0IHRoZSBkZWZpbml0aW9uIGZvciBi cml2bGEsIGJ1dCBub3QgZm9yIGx1anZvIG9yIGdpc211LiBUaGV5IHRlbmQgdG8gY292ZXIgY29u Y2VwdHMgd2hpY2ggaXQncyBoYXJkIHRvIGNvdmVyIGJ5IGx1anZvLCBmb3IgaW5zdGFuY2UgbmFt ZXMgb2Ygc3BlY2llcywgbmF0aW9ucyBvciB2ZXJ5IGN1bHR1cmFsIHNwZWNpZmljIGNvbmNlcHRz LiBFeGFtcGxlcyBpbmNsdWRlICcnZ3VnZHJnb2d1cmlvJycgKEtvcmVhKSAnJ2NpZGpycGl0c2En JyAocGl6emEpIG9yICcnYW5nZWxpJycgKGFuZ2VsKS4KCgoKX18nJ2NtYXZvJydfXyBhcmUgc21h bGwgd29yZHMgd2l0aCBvbmUgb3IgemVybyBjb25zb25hbnRzLiBUaGV5IHRlbmQgdG8gbm90IHNp Z25pZnkgYW55dGhpbmcgaW4gdGhlIGV4dGVyaW9yIHdvcmxkLCBidXQgdG8gaGF2ZSBvbmx5IGdy YW1tYXRpY2FsIGZ1bmN0aW9uLiBFeGNlcHRpb25zIG9jY3VyLCBhbmQgaXQncyBkZWJhdGFibGUg aG93IG11Y2ggYXR0aXR1ZGluYWxzIGV4aXN0cyBmb3IgdGhlaXIgZ3JhbW1hdGljYWwgZnVuY3Rp b24uIEFub3RoZXIgd2VpcmQgZXhhbXBsZSBhcmUgdGhlIHdvcmRzIG9mIHRoZSBjbGFzcyBHT2hB LCB3aGljaCBhY3QgYXMgYnJpdmxhLiBJdCBpcyB2YWxpZCB0byB0eXBlIHNldmVyYWwgY21hdm8g aW4gYSByb3cgYXMgb25lIHdvcmQsIGJ1dCBpbiB0aGVzZSBsZXNzb25zLCB0aGF0IHdvbid0IGJl IGRvbmUuIEJ5IGdyb3VwaW5nIGNlcnRhaW4gY21hdm8gaW4gZnVuY3Rpb25hbCB1bml0cywgdGhv dWdoLCBpdCBpcyBzb21ldGltZXMgZWFzaWVyIHRvIHJlYWQuIFRodXMsICcnLnVpcHV6dXZ1a3Vt aSBjaXRrYScnIGlzIHZhbGlkLCBhbmQgaXMgcGFyc2VkIGFuZCB1bmRlcnN0b29kIGFzICcnLnVp IHB1IHp1IHZ1IGt1IG1pIGNpdGthJycuIExpa2Ugb3RoZXIgTG9qYmFuIHdvcmRzLCBvbmUgc2hv dWxkIChidXQgbmVlZCBub3QgYWx3YXlzKSBwbGFjZSBhIGZ1bGwgc3RvcCBiZWZvcmUgYW55IHdv cmRzIGJlZ2lubmluZyB3aXRoIGEgdm93ZWwuCgpjbWF2byBvZiB0aGUgZm9ybSB4VlYsIENWJ1ZW IG9yIFYnVlYgYXJlIGV4cGVyaW1lbnRhbCwgYW5kIGFyZSB3b3JkcyB3aGljaCBhcmUgbm90IGlu IHRoZSBmb3JtYWwgZ3JhbW1hciwgYnV0IHdoaWNoIGhhdmUgYmVlbiBhZGRlZCBieSBMb2piYW4g dXNlcnMgdG8gcmVzcG9uZCB0byBhIGNlcnRhaW4gbmVlZC4KCgoKX18nJ3JhZnNpJydfXyBhcmUg bm90IExvamJhbiB3b3JkcywgYW5kIGNhbiBuZXZlciBhcHBlYXIgYWxvbmUuIEhvd2V2ZXIsIHNl dmVyYWwgKG1vcmUgdGhhbiBvbmUpIHJhZnNpIGNvbWJpbmUgdG8gZm9ybSBsdWp2by4gVGhlc2Ug bXVzdCBzdGlsbCBsaXZlIHVwIHRvIHRoZSBicml2bGEtZGVmaW5pdGlvbiwgZm9yIGluc3RhbmNl ICcnbG9qYmFuJycgaXMgaW52YWxpZCBiZWNhdXNlIGl0IGVuZHMgaW4gYSBjb25zb25hbnQgKHdo aWNoIG1ha2VzIGl0IGEgY21ldmxhKSwgYW5kICcnY2knZWtlaScnIGlzIGludmFsaWQgYmVjYXVz ZSBpdCBkb2VzIG5vdCBjb250YWluIGEgY29uc29uYW50IGNsdXN0ZXIsIGFuZCBpcyB0aHVzIHJl YWQgYXMgdHdvIGNtYXZvIHdyaXR0ZW4gYXMgb25lIHdvcmQuIE9mdGVuLCBhIDMtNCBsZXR0ZXIg c3RyaW5nIGlzIGJvdGggYSBjbWF2byBhbmQgYSByYWZzaSwgbGlrZSAnJ3p1J2UnJywgd2hpY2gg aXMgYm90aCB0aGUgQkFJIGFuZCB0aGUgcmFmc2kgZm9yICcnenVrdGUnJy4gTm90ZSB0aGF0IHRo ZXJlIGlzIG5vd2hlcmUgdGhhdCBib3RoIGEgY21hdm8gYW5kIGEgcmFmc2kgd291bGQgYmUgZ3Jh bW1hdGljYWwsIHNvIHRoZXNlIGFyZSBub3QgY29uc2lkZXJlZCBob21vcGhvbmVzLiBBbGwgZ2lz bXUgY2FuIGRvdWJsZSBhcyByYWZzaSwgaWYgdGhleSBhcmUgcHJlZml4ZWQgd2l0aCBhbm90aGVy IHJhZnNpLiBUaGUgZmlyc3QgZm91ciBsZXR0ZXIgb2YgYSBnaXNtdSBzdWZmaXhlZCB3aXRoIGFu ICJ5IiBjYW4gYWxzbyBhY3QgYXMgYSByYWZzaSwgaWYgdGhleSBhcmUgc3VmZml4ZWQgd2l0aCBh bm90aGVyIHJhZnNpLiBUaGUgdm93ZWwgInkiIGNhbiBvbmx5IGFwcGVhciBpbiBsdWp2byBvciBj bWV2bGEuIFZhbGlkIHJhZnNpIGxldHRlciBjb21iaW5hdGlvbnMgYXJlOiBDVlYsIENWJ1YsIEND ViwgQ1ZDQ3ktIENDVkN5LSwgLUNWQ0NWIGFuZCAtQ0NWQ1YuCgoKClVzaW5nIHdoYXQgeW91IGtu b3cgbm93LCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8gYW5zd2VyIHRoZSB0ZXN0IGkgdGh1cyBwcmVz ZW50OgoKQ2F0ZWdvcml6ZSBlYWNoIG9mIHRoZSBmb2xsb3dpbmcgd29yZHMgYXMgY21ldmxhIChD KSwgZ2lzbXUgKGcpLCBsdWp2byAobCksICcnZnUnaXZsYScnIChmKSBvciBjbWF2byAoYyk6CgpB ICkgamFpICAgICAgICBHICkgbXVtYmwKCkIgKSAuaXJjaSAgICAgICAgSCApIC5pJ2kKCkMgKSBi b3N0dSAgICAgICAgSSApIGN1CgpEICkgeGVsbWFuICAgICAgICBKICkgcGxhanZhCgpFICkgcG8n ZSAgICAgICAgSyApIGRhbnNla2UKCkYgKSBkamlza3UgICAgICAgIEwgKSAuZXJ0c2EKCgoKQW5z d2VyOiB+fmdyZXksZ3JleTphLWMsIGItZiwgYy1nLCBkLUMsIGUtYywgZi1sLCBnLUMsIGgtYywg aS1jLCBqLWwsIGstZiwgbC1mLiBJIGxlZnQgb3V0IHRoZSBmdWxsIHN0b3BzIGJlZm9yZSBhbmQg YWZ0ZXIgbmFtZXMgc28gaXQgd291bGRuJ3QgYmUgdG9vIGVhc3kuCgpOb3RlOiBzb21lIG9mIHRo ZXNlIHdvcmRzLCBsaWtlICcnYm9zdHUnJyBkbyBub3QgZXhpc3QgaW4gdGhlIGRpY3Rpb25hcnks IGJ1dCB0aGlzIGlzIGlycmVsZXZhbnQuIFRoZSBtb3JwaG9sb2d5IHN0aWxsIG1ha2VzIGl0IGEg Z2lzbXUsIHNvIGl0J3MganVzdCBhbiB1bmRlZmluZWQgZ2lzbXUuIFNpbWlsYXJseSB3aXRoICcn LmVydHNhJyd+fgoKCgoKCiEhTG9qYmFuIExlc3NvbnMgLSBMZXNzb24gZm91cnRlZW4gKHRoZSBM b2piYW4gc3VtdGkgMTogTEUgYW5kIExBKQoKSWYgeW91IGhhdmUgcmVhZCBhbmQgdW5kZXJzdG9v ZCB0aGUgY29udGVudCBvZiBhbGwgdGhlIGxlc3NvbnMgdW50aWwgbm93LCB5b3UgaGF2ZSBhbWFz c2VkIGEgbGFyZ2UgZW5vdWdoIGtub3dsZWRnZSBvZiBMb2piYW4gc28gdGhhdCBpdCBkb2Vzbid0 IG1hdHRlciBpbiB3aGljaCBvcmRlciB5b3UgbGVhcm4gdGhlIHJlc3QuIEFzIGEgcmVzdWx0LCB0 aGUgb3JkZXIgb2YgdGhlIG5leHQgbGVzc29ucyB3aWxsIGJlIGEgbWl4dHVyZSBvZiBzb3J0ZWQg YnkgaW5jcmVhc2luZyBkaWZmaWN1bHR5IGFuZCBzb3J0ZWQgYnkgaW1wb3J0YW5jZSBpbiBvcmRp bmFyeSBMb2piYW4gY29udmVyc2F0aW9uLgoKCgpPbmUgb2YgdGhlIGJpZ2dlc3QgY29uc3RyYWlu cyBvbiB5b3VyIHNwZWFrIG5vdyBpcyB5b3VyIGxpbWl0ZWQga25vd2xlZGdlIG9uIGhvdyB0byBt YWtlIHN1bXRpLiBTbyBmYXIsIHlvdSBvbmx5IGtub3cgJyd0aScnIGFuZCAnJ2xvIFNFTEJSSScn LCB3aGljaCBkb2Vzbid0IHRha2UgeW91IGZhciBjb25zaWRlcmluZyBob3cgaW1wb3J0YW50IHN1 bXRpIGFyZSBpbiBMb2piYW4uIFRoaXMgbGVzc29uIGFzIHdlbGwgYXMgdGhlIGZvbGxvd2luZyB0 d28gd2lsbCBiZSBhYm91dCB0aGUgTG9qYmFuIHN1bXRpLiBGb3Igbm93LCB3ZSBmb2N1cyBvbiB0 aGUgZGVzY3JpcHRpdmUtbGlrZSBzdW10aSwgdGhlIG9uZXMgbWFkZSB3aXRoIGFydGljbGVzIGxp a2UgJydsbycnCgpBcnRpY2xlcyBhcmUgaW4gbG9qYmFuIGNhbGxlZCAnJ2dhZHJpJycsIGFuZCBh bGwgdGhlIG9uZXMgZGlzY3Vzc2VkIGluIHRoaXMgbGVzc29uIGFyZSB0ZXJtaW5hdGVkIGJ5ICcn a3UnJywgZXhjZXB0IHRoZSBjb21iaW5hdGlvbnMgJydsYSBDTUVWTEEnJywgJydsYWkgQ01FVkxB JycgYW5kICcnbGEnaSBDTUVWTEEnJy4gV2Ugd2lsbCBiZWdpbiBieSBkZXNjcmliaW5nIHRocmVl IHNpbXBsZSBraW5kcyBvZiBkZXNjcmlwdGl2ZSBzdW10aSwgYW5kIHRoZW4gaW1tZWRpYXRlbHkg ZmluZCB0aGF0IHRoZXkgYXJlIG5vdCBzbyBzaW1wbGUgYWZ0ZXIgYWxsOgoKX18nJ2xvJydfXyAt IGdhZHJpOiBHZW5lcmljIHZlcmlkaWNhbCDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4g UmVzdWx0IGlzIHZhZ3VlIHdpdGggcmVnYXJkIHRvIGluZGl2aWR1YWxpdHkvbWFzcy1uZXNzLgoK X18nJ2xlJydfXyAtIGdhZHJpOiBHZW5lcmljIGRlc2NyaXB0aXZlIOKAnGNvbnZlcnQgc2VsYnJp IHRvIHN1bXRp4oCdLiBSZXN1bHQgaXMgdmFndWUgd2l0aCByZWdhcmQgdG8gaW5kaXZpZHVhbGl0 eS9tYXNzLW5lc3MuCgpfXycnbGEnJ19fIC0gZ2Fkcmk6IE5hbWluZyBhcnRpY2xlOiBDb252ZW50 aW9uYWwsIOKAnGNvbnZlcnQgc2VsYnJpIG9yIGNtZXZsYSB0byBzdW10aeKAnS4gVHJlYXQgcmVz dWx0IGFzIGluZGl2aWR1YWwocykuCgoKCllvdSBhcmUgYWxyZWFkeSBmYW1pbGlhciB3aXRoICcn bG8nJyBhbmQgd2hhdCBpdCBkb2VzLiBCdXQgd2hhdCBkb2VzIGl0IG1lYW4sIOKAnHZlcmlkaWNh bOKAnSBhbmQg4oCcdmFndWUgd2l0aCByZWdhcmQgdG8gaW5kaXZpZHVhbGl0eS9tYXNzLW5lc3Pi gJ0/IFRoZSBsYXR0ZXIgYWJvdXQgaW5kaXZpZHVhbHMgYW5kIG1hc3NlcywgSSdsbCBjb21lIGJh Y2sgdG8gbGF0ZXIuIEZvciBub3csIOKAnHZlcmlkaWNhbOKAnSBpbiB0aGlzIGNvbnRleHQgbWVh bnMgdGhhdCBpbiBvcmRlciBmb3IgYSB0aGluZyB0byBxdWFsaWZ5IGJlZ2luIGxhYmVsbGVkIGFz ICcnbG8ga2xhbWEnJywgaXQgaGFzIHRvIGFjdHVhbGx5ICcna2xhbWEnJy4gVGh1cywgdmVyaWRp Y2FsIGdhZHJpIG1ha2VzIGEgY2xhaW0gd2hpY2ggbWF5IGJlIHRydWUgb3IgZmFsc2UgLSB0aGF0 IHRoZSBvYmplY3QocykgaW4gcXVlc3Rpb24gYXJlIGFjdHVhbGx5IHRoZSB4MSBvZiB0aGUgc2Vs YnJpIGFmdGVyICcnbG8nJy4gCgoKClRoaXMgbWF5IGJlIGNvbnRyYXN0ZWQgd2l0aCAnJ2xlJycs IHdoaWNoIGlzIGRlc2NyaXB0aXZlLCBhbmQgdGh1cyBub3QgdmVyaWRpY2FsLiBTYXlpbmcgJyds ZSBnZXJrdScnIHNheXMgdGhhdCB5b3UgaGF2ZSBvbmUgb3IgbW9yZSBzcGVjaWZpYyBvYmplY3Rz IGluIG1pbmQsIGFuZCB5b3UgdXNlIHRoZSBzZWxicmkgJydnZXJrdScnIHRvIGRlc2NyaWJlIGl0 LCBzbyB0aGF0IHRoZSBsaXN0ZW5lciBtYXkgaWRlbnRpZnkgdGhvc2Ugc3BlY2lmaWMgb2JqZWN0 cy4gVGhpcyBtZWFucyB0aGF0ICcnbGUnJyBoYXZlcyB0d28gaW1wb3J0YW50IGRpZmZlcmVuY2Vz IGZyb20gJydsbycnOiBGaXJzdGx5LCBpdCBjYW5ub3QgcmVmZXIgdG8gb2JqZWN0cyBpbiBnZW5l cmFsLCBidXQgYWx3YXlzIHJlZmVycyB0byBzcGVjaWZpYyBvYmplY3RzLiBTZWNvbmRseSwgd2hp bGUgJydsbyBnZXJrdScnIGRlZmluaXRlbHkgaXMgb25lIG9yIG1vcmUgZG9ncywgJydsZSBnZXJr dScnLCBiZWNhdXNlIGl0J3Mgbm90IHZlcmlkaWNhbCwgY2FuIGJlIGFueXRoaW5nLCBhcyBsb25n IGFzIHRoZSBzcGVha2VyIHRoaW5rcyB0aGUgZGVzY3JpcHRpb24gd2lsbCBoZWxwIGlkZW50aWZ5 aW5nIHRoZSBjb3JyZWN0IG9iamVjdHMuIFBlcmhhcHMgdGhlIHNwZWFrZXIgaXMgcmVmZXJyaW5n IHRvIGEgaHllbmEsIGJ1dCBhcmUgbm90IGZhbWlsaWFyIHdpdGggdGhlbSBhbmQgdGhpbmsg4oCc ZG9n4oCdIGlzIGEgZ29vZCBlbm91Z2ggYXBwcm94aW1hdGlvbiB0byBiZSB1bmRlcnN0b29kLiBU aGlzIG5vbi12ZXJpZGljYWxpdHkgaXMgcGVyaGFwcyBvdmVyLWVtcGhhc2lzZWQgaW4gbW9zdCBt YW55IHRleHRzOyBUaGUgYmVzdCB3YXkgdG8gZGVzY3JpYmUgYSBkb2cgaXMgdXN1YWxseSB0byBk ZXNjcmliZSBpdCBhcyBiZWluZyBhIGRvZywgYW5kIHVubGVzcyB0aGVyZSBpcyBhIGdvb2QgcmVh c29uIG5vdCB0bywgJydsZSBnZXJrdScnIGlzIHVzdWFsbHkgcHJlc3VtZWQgdG8gcmVmZXIgdG8g c29tZXRoaW5nIHdoaWNoIGlzIGFsc28gJydsbyBnZXJrdScnLgoKSW4gdHJhbnNsYXRpb24sICcn bG8gZ2Vya3UnJyBpcyB1c3VhbGx5IOKAnGEgZG9n4oCdIG9yIOKAnHNvbWUgZG9nc+KAnSwgd2hp bGUgJydsZSBnZXJrdScnIGlzIOKAnHRoZSBkb2figJ0gb3Ig4oCcdGhlIGRvZ3PigJ0uIEV2ZW4g YmV0dGVyIGZvciAnJ2xlIGdlcmt1Jycgd291bGQgYmUg4oCcdGhlIOKAnGRvZyhzKeKAnSDigJ0K CgoKTGFzdCBvZiB0aGUgdGhyZWUgYmFzaWMgJydnYWRyaScnLCB0aGVyZSBpcyAnJ2xhJycsIHRo ZSBuYW1pbmcgJydnYWRyaScnLCB3aGljaCBJIGhhdmUgdW5jb252ZW50aW9uYWxseSBjYWxsZWQg 4oCcY29udmVudGlvbmFs4oCdLiBXaGF0IEkgbWVhbiBieSB0aGlzIGlzIHRoYXQgaXQncyBuZWl0 aGVyIGRlc2NyaXB0aXZlIG5vciB2ZXJpZGljYWwsIHNpbmNlIGl0IHJlZmVycyB0byBhIHByb3Bl ciBuYW1lLiBJZiBJIGluIEVuZ2xpc2ggcmVmZXIgdG8gYSBwZXJzb24gY2FsbGVkIElubm9jZW50 IGJ5IGhlciBuYW1lLCBJIG5laXRoZXIgZGVzY3JpYmUgaGVyIGFzIGJlaW5nIGlubm9jZW50LCBu b3IgZG8gSSBzdGF0ZSB0aGF0IHNoZSBpcy4gSSBvbmx5IHN0YXRlIHRoYXQgYnkgY29udmVudGlv biwgdGhhdCBvYmplY3QgaXMgcmVmZXJyZWQgdG8gYnkgdGhhdCBzZWxicmkgb3IgY21ldmxhLiBO b3RlIHRoYXQgJydsYScnIGFuZCB0aGUgZ2FkcmkgZGVyaXZlZCBmcm9tIGl0IGNhbiBjb252ZXJ0 IGNtZXZsYSB0byBzdW10aSB1bmxpa2UgYW55IG90aGVyICcnZ2FkcmknJy4gQWxzbzogQmUgY2F1 dGlvdXM6IE90aGVyIHRleHRzIGRvIG5vdCBtZW50aW9uIHRoYXQgbmFtZXMgY2FuIGJlIGZvcm1l ZCBmcm9tIG9yZGluYXJ5IHNlbGJyaSB1c2luZyB0aGUgZ2FkcmkgJydsYScnLiBCdXQgdGhvc2Ug aGVyZXRpY3MgbXVzdCBidXJuOyBzZWxicmkgbmFtZXMgYXJlIGFzIGdvb2QgYXMgdGhleSBnZXQs IGFuZCBtYW55IGEgcHJvdWQgTG9qYmFuaXN0IGhhdmUgdGhlbS4KCicnbGEnJywgYXMgd2VsbCBh cyAnJ2xhaScnIGFuZCAnJ2xhJ2knJyBhcmUgYSBiaXQgZWNjZW50cmljLCBzaW5jZSB0aGV5IF9f YWx3YXlzX18gbWFya3MgdGhlIGJlZ2lubmluZyBvZiBhIG5hbWUuIFVubGlrZSB0aGUgb3RoZXIg Z2FkcmksIGFueXRoaW5nIHRoYXQgY2FuIGJlIGdyYW1tYXRpY2FsbHkgcGxhY2VkIGFmdGVyICcn bGEnJyBhbmQgaXRzIHNpc3RlcnMgYXJlIGNvbnNpZGVyZWQgcGFydCBvZiB0aGUgbmFtZS4gRm9y IGV4YW1wbGUsICcnbGUgbWkgZ2Vya3UnJyBpcyAibXkgZG9nIiwgYnV0ICcnbGEgbWkgZ2Vya3Un JyBpcyBzb21lb25lIGNhbGxlZCAiTXkgRG9nIi4KCgoKVGhlc2UgdGhyZWUgYmFzaWMgJydnYWRy aScnIGNhbiBiZSBleHBhbmRlZCB3aXRoIHRocmVlIG1vcmUsIHdoaWNoIGNvcnJlc3BvbmRzIHRv IHRoZSBwcmV2aW91czoKCgoKX18nJ2xvaScnX18gLSBnYWRyaTogdmVyaWRpY2FsIOKAnGNvbnZl cnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgbWFzcyhlcykuCgpfXycnbGVp JydfXyAtIGdhZHJpOiBEZXNjcmlwdGl2ZSDigJxjb252ZXJ0IHNlbGJyaSB0byBzdW10aeKAnS4g VHJlYXQgcmVzdWx0IGFzIGEgbWFzcyhlcykuCgpfXycnbGFpJydfXyAtIGdhZHJpOiBOYW1pbmcg YXJ0aWNsZTogQ29udmVudGlvbmFsLCDigJxjb252ZXJ0IHNlbGJyaSBvciBjbWV2bGEgdG8gc3Vt dGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBtYXNzKGVzKS4KCgoKVGhlc2UgYXJlIHRoZSBzYW1lIGlu IGFsbCBhc3BlY3RzIGV4Y2VwdCBmb3Igb25lOiBUaGV5IHRyZWF0IHRoZSBzdW10aSBleHBsaWNp dGx5IGFzIG1hc3Nlcy4gSWYgdGhlcmUgaXMgb25seSBvbmUgb2JqZWN0IGluIHF1ZXN0aW9uLCBh biBpbmRpdmlkdWFsIGFuZCBhIG1hc3MgY29uc2lzdGluZyBvZiBvbmUgb2JqZWN0IGFyZSBlcXVp dmFsZW50LiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZXNlIHR3byBjb25jZXB0cyBsaWUgaW4g d2hpY2ggc2VsYnJpIGNhbiBiZSBhc2NyaWJlZCB0byBhIGdyb3VwIG9mIGluZGl2aWR1YWxzIHZl cnN1cyBhIG1hc3MuIEEgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgY2FuIGJlIHNhaWQgdG8gZml0IGEg Y2VydGFpbiBzZWxicmkgaWYsIGFuZCBvbmx5IGlmLCBhbGwgbWVtYmVycyBvZiB0aGUgZ3JvdXAg ZWFjaCBmaXQgdGhlIHNlbGJyaS4gSXQgaXMgY29ycmVjdCB0byBkZXNjcmliZSBhIHBhY2sgb2Yg JydsbyBnZXJrdScnLCBjb25zaWRlcmVkIGluZGl2aWR1YWxseSwgYXMgYmVpbmcgYmxhY2ssIGlm IGZvciBlYWNoIG9mIHRoZSBkb2dzIGl0J3MgdHJ1ZSB0aGF0IHRoZXkgYXJlIGJsYWNrLiBBIG1h c3MsIG9uIHRoZSBvdGhlciBoYW5kLCBmaXRzIG9ubHkgdGhvc2Ugc2VsYnJpIHdoaWNoIGl0cyBj b21wb25lbnRzIGZpdCBhcyBhIHdob2xlLCBhcyBhIHRlYW0sIHNvIHRvIHNwZWFrLiBIb3dldmVy LCBhbGwgdGhlIG1lbWJlcnMgb2YgYSBtYXNzICcnbG9pIGdlcmt1JycgbXVzdCBiZSBkb2dzIGlu IG9yZGVyIGZvciAnJ2xvaScnIHRvIGJlIGFwcGxpY2FibGUuIFRoZSBub3Rpb24gb2YgIm1hc3Nl cyIgYXJlIHNvcGhpc3RpY2F0ZWQsIGFuZCByZXF1aXJlcyBzb21lIGV4YW1wbGVzIHRvIGRlbW9u c3RyYXRlIHdoaWNoIHByb3BlcnRpZXMgaXQgY2FuIGhhdmU6CgpfXycnc3J1cmknJ19fOiDigJx4 MSBmbGFua3MvZW5jaXJjbGVzL2VuY2xvc2VzIHgyIGluIGxpbmUvcGxhbmUvZGlyZWN0aW9ucyB4 M+KAnQoKJydsZWkgcHJlbnUgY3Ugc3J1cmkgbG8gemRhbmknJyAtIOKAnFRoZSBwZW9wbGUgc3Vy cm91bmRlZCB0aGUgaG9tZS7igJ0gaXMgcGxhdXNpYmxlLCBldmVuIHRob3VnaCwgeW8gbW9tYSBq b2tlcyBub3QgY29uc2lkZXJlZCwgaXQncyBjb21wbGV0ZWx5IGltcGxhdXNpYmxlIHRoYXQgaXQg Y291bGQgYmUgdHJ1ZSBmb3IgYW55IG9uZSBvZiB0aGUgbWVtYmVycyBhbG9uZS4gQW4gRW5nbGlz aCBhbmFsb2d5IGNvdWxkIGJlOiDigJxIdW1hbnMgZGVmZWF0ZWQgc21hbGxwb3ggaW4gdGhlIDIw dGggY2VudHVyeeKAnS4gU3VyZWx5IG5vIGh1bWFuIGRpZCBzbywgYnV0IHRoZSBtYXNzIG9mIGh1 bWFucyBkaWQsIGFuZCB0aGF0IG1ha2VzIHRoZSBzZW50ZW5jZSB0cnVlIGluIEVuZ2xpc2gsIGFz IHdlbGwgYXMgaW4gTG9qYmFuIGlmIOKAnGh1bWFuc+KAnSBhcmUgYSBtYXNzLiBKdXN0IGxpa2Ug dGhlIExvamJhbiBtYXNzLCB0aGUgRW5nbGlzaCBtYXNzIOKAnGh1bWFuc+KAnSBjYW4gb25seSBy ZWZlciB0byBpbmRpdmlkdWFscyBlYWNoIG9mIHdoaWNoIGFyZSBodW1hbi4gQW5vdGhlciBleGFt cGxlOgoKX18nJ21pdnlzbGUnJ19fOiAieDEgaXMgYSBiaW9sb2dpY2FsIGNlbGwgb2Ygb3JnYW5p c20geDIiCgpfXycncmVtbmEnJ19fOiAieDEgaXMgYSBodW1hbiIKCicnbG9pIG1pdnlzbGUgY3Ug cmVtbmEnJyAtICJTb21lIG1hc3NlcyBvZiBjZWxscyBhcmUgaHVtYW4iLiBBZ2Fpbiwgbm9uZSBv ZiB0aGUgY2VsbHMgYXJlIGh1bWFuLiBJbmRlZWQsIHRoZSBjZWxscyBoYXZlIHZlcnkgZmV3IGh1 bWFuIHRyYWl0cywgYnV0IHRoZSBjZWxscyBjb25zaWRlcmVkIGFzIGEgd2hvbGUgbWFrZXMgdXAg YSBodW1hbi4KCgoKQSBtYXNzIG1hZGUgd2l0aCAnJ2xlaScnLCBzdWNoIGFzICcnbGVpIGdlcmt1 JycsIHJlZmVycyB0byBhIG1hc3MgZm9ybWVkIGJ5IGEgZ3JvdXAgb2Ygc3BlY2lmaWMgaW5kaXZp ZHVhbHMsIGVhY2ggb2Ygd2hpY2ggdGhlIHNwZWFrZXIgcmVmZXJzIHRvIGFzICcnbGUgZ2Vya3Un Jy4KCk1hc3MgbmFtZXMgYXMgZGVzY3JpYmVzIGJ5ICcnbGFpJycgYXJlIG9ubHkgYXBwcm9wcmlh dGUgaWYgdGhlIGdyb3VwIGFzIGEgd2hvbGUgaXMgbmFtZWQgc3VjaCwgYW5kIG5vdCBqdXN0IGlm IGFueSBvZiB0aGUgbWVtYmVycyBhcmUuIEl0IGNhbiwgaG93ZXZlciBiZSB1c2VkIGlmIHRoZSBi cmlkaSBpcyB0cnVlIGZvciBvbmx5IGEgZnJhY3Rpb24gb2YgdGhhdCBncm91cC4KCgoKSXQgaXMg aW1wb3J0YW50IHRvIHJlbWVtYmVyIHRoYXQgJydsbycnIGFuZCAnJ2xlJycgY2FuIGJlIHVzZWQg dG8gZGVzY3JpYmUgYm90aCBpbmRpdmlkdWFscyBhbmQgbWFzc2VzLiBMZXQncyBzYXkgYSBwYWNr IG9mIGRvZ3MsIGNvbnNpZGVyZWQgYXMgYSBtYXNzIG5lZWRzIGRlc2NyaXB0aW9uLiBJIG1pZ2h0 IGRlc2NyaWJlIGl0IGFzIGVpdGhlciAnJ2xvaSBnZXJrdScnIG9yICcnbG8gZ2Vya3UnJy4gSWYg SSB1c2UgJydsbycnLCB0aGlzIGFsbG93cyBtZSB0byBjb3JyZWN0bHkgc3RhdGUgc29tZXRoaW5n IHdoaWNoIGxvb2tzIGxpa2UgYSBjb250cmFkaWN0aW9uLCBidXQgcmVhbGx5IGlzbid0OiAnJ2xv IGdlcmt1IG5hIGdlcmt1JycgLSAiU29tZSBkb2dzIGFyZSBub3QgZG9ncyIuIFNpbmNlIGl0J3Mg YmVpbmcgY29uc2lkZXJlZCBhIG1hc3Mgb2YgZG9ncywgdGhlIG1hbnkgZG9ncyBjb25zaWRlcmVz IGFzIGEgd2hvbGUgaXMgbm90IGEgZG9nLCBidXQgcmF0aGVyIGEgcGFjayBvZiBkb2dzLgoKWW91 IG1pZ2h0IGhhdmUgbm90aWNlZCB0aGF0IHRoZXJlIGlzIG5vIHdvcmQgd2hpY2ggdW5hbWJpZ3Vv dXNseSBjb252ZXJ0cyBzZWxicmkgdG8gaW5kaXZpZHVhbChzKS4gSW4gb3JkZXIgdG8gYmUgZXhw bGljaXQgYWJvdXQgaW5kaXZpZHVhbG5lc3MsIG9uZSBuZWVkcyAnJ2xvJycsICcnbGUnJyBvciAn J2xhJycgd2l0aCBhbiBvdXRlciBxdWFudGlmaWVyLiBUaGUgc3ViamVjdCBvZiBxdWFudGlmaWVy cyB3aWxsIGJlIGNvbnNpZGVyZWQgbGF0ZXIsIGluIGxlc3NvbiB0d2VudHktdHdvLiBXaGF0IGlz IHRoZSByZWFzb24gdGhhdCAnJ2xvJycgYW5kICcnbGUnJyB2YWd1ZSwgYW5kIG5vdCBleHBsaWNp dGx5IGluZGl2aWR1YWw/IEl0IGlzIGJlY2F1c2UgdGhlaXIgdmFndWVuZXNzIGVuYWJsZXMgdGhl bSB0byBiZSB1c2VkIGluIGFueSBjb250ZXh0LCB3aXRob3V0IHRoZSBzcGVha2VyIGhhdmluZyB0 byB0aGluayBhYm91dCB3aGV0aGVyIGlzIGJlaGF2ZXMgYXMgYSBtYXNzIG9yIGEgZ3JvdXAgb2Yg aW5kaXZpZHVhbHMuCgoKClRoaXJkIGluIHRoaXMgc2VyaWVzLCB0aGVyZSBhcmUgdGhyZWUgc2V0 LWZvcm1pbmcgJydnYWRyaScnOgoKCgpfXycnbG8naScnX18gLSBnYWRyaTogdmVyaWRpY2FsIOKA nGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCdLiBUcmVhdCByZXN1bHQgYXMgYSBzZXQuCgpfXycn bGUnaScnX18gLSBnYWRyaTogRGVzY3JpcHRpdmUg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGni gJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4KCl9fJydsYSdpJydfXyAtIGdhZHJpOiBOYW1pbmcg YXJ0aWNsZTogQ29udmVudGlvbmFsLCDigJxjb252ZXJ0IHNlbGJyaSBvciBjbWV2bGEgdG8gc3Vt dGnigJ0uIFRyZWF0IHJlc3VsdCBhcyBhIHNldC4KCgoKVW5saWtlIGdyb3VwcyBvZiBpbmRpdmlk dWFscyBvciwgc29tZXRpbWVzLCBtYXNzZXMsIHNldHMgZG9lcyBub3QgdGFrZSBhbnkgb2YgdGhl IHByb3BlcnRpZXMgZnJvbSB0aGUgb2JqZWN0cyBmcm9tIHdoaWNoIHRoZSBzZXQgaXMgZm9ybWVk LiBBIHNldCBpcyBhIHB1cmVseSBtYXRoZW1hdGljYWwgb3IgbG9naWNhbCBjb25zdHJ1Y3QsIGFu ZCBoYXMgcHJvcGVydGllcyBsaWtlIGNhcmRpbmFsaXR5LCBtZW1iZXJzaGlwIGFuZCBzZXQgaW5j bHVzaW9uLiBBZ2Fpbiwgbm90ZSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgc2V0IG9mIHRoaW5n cywgYW5kIHRoZSB0aGluZ3Mgb2Ygd2hpY2ggdGhlIHNldCBpcyBmb3JtZWQ6CgpfXycndGlyeHUn J19fIOKAnHgxIGlzIGEgdGlnZXIvbGVvcGFyZC9qYWd1YXIgb2Ygc3BlY2llcy9icmVlZCB4MiB3 aXRoIGNvYXQgbWFya2luZ3MgeDPigJ0KCicnbG8naSB0aXJ4dSBjdSBjbWFsdScnIHNheXMgbm90 aGluZyBhYm91dCB3aGV0aGVyIGJpZyBjYXRzIGFyZSBzbWFsbCAod2hpY2ggaXMsIGJ5IHRoZSB3 YXksIG9idmlvdXNseSBmYWxzZSksIGJ1dCBpbnN0ZWFkIHNheSB0aGF0IHRoZSBzZXQgb2YgYmln IGNhdHMgaXMgc21hbGw7IHRoYXQgaXMgLSB0aGVyZSBhcmUgZmV3IG9mIHRoZW0uCgoKCkxhc3Rs eSwgdGhlcmUgYXJlIHRoZSAob25seSB0d28pIGdlbmVyYWxpemluZyAnJ2dhZHJpJyc6CgpfXycn bG8nZScnX18gLSBnYWRyaTogdmVyaWRpY2FsIOKAnGNvbnZlcnQgc2VsYnJpIHRvIHN1bXRp4oCd LiBTdW10aSByZWZlcnMgdG8gdGhlIGFyY2hldHlwZSBvZiAnJ2xvIHtzZWxicml9JycuCgpfXycn bGUnZScnX18gLSBnYWRyaTogRGVzY3JpcHRpdmUg4oCcY29udmVydCBzZWxicmkgdG8gc3VtdGni gJ0uIFN1bXRpIHJlZmVycyB0byB0aGUgZGVzY3JpYmVkL3BlcmNlaXZlZCBhcmNoZXR5cGUgb2Yg JydsZSB7c2VsYnJpfScnLgoKT2Ygd2hpY2ggdGhlcmUgaXMgbm8gJydsYScnLWVxdWl2YWxlbnQu CgoKClNvLCB3aGF0IGlzIGFjdHVhbGx5IG1lYW50IGJ5IHRoZSBhcmNoZXR5cGU/IEZvciAnJ2xv J2UgdGlyeHUnJywgaXQgaXMgYW4gaWRlYWwsIGltYWdpbmVkIGJpZyBjYXQsIHdoaWNoIGhhcyBh bGwgdGhlIHByb3BlcnRpZXMgd2hpY2ggYmVzdCBleGVtcGxpZmllcyBiaWcgY2F0cy4gSXQgd291 bGQgYmUgd3JvbmcgdG8gc2F5IHRoYXQgdGhpcyBpbmNsdWRlcyBoYXZpbmcgYSBzdHJpcGVkIGZ1 ciwgc2luY2UgYSBiaWcgc3lzdGVtYXRpYyBzdWJncm91cCBvZiB0aGUgbWVtYmVycyBvZiB0aGUg c2V0IG9mIGJpZyBjYXRzIGRvIG5vdCBoYXZlIHN0cmlwZWQgZnVyLCB0aGUgbGVvcGFyZHMgYW5k IHRoZSBqYWd1YXJzLiBMaWtld2lzZSwgdGhlIHR5cGljYWwgaHVtYW4gZG9lcyBub3QgbGl2ZSBp biBBc2lhIGV2ZW4gdGhvdWdoIGEgbG90IG9mIGh1bWFucyBkby4gSG93ZXZlciwgaWYgc3VmZmlj aWVudGx5IG1hbnkgaHVtYW5zIGhhdmUgYSB0cmFpdCwgZm9yIGluc3RhbmNlIGJlaW5nIGFibGUg dG8gc3BlYWssIHdlIGNhbiBzYXk6CgpfXycna2FrbmUnJ19fOiDigJx4MSBpcyBjYXBhYmxlIG9m IGRvaW5nL2JlaW5nIHgyIHVuZGVyIGNpcmN1bXN0YW5jZSB4M+KAnQoKJydsbydlIHJlbW5hIGN1 IGtha25lIGxvIG51IHRhdmxhJycgLSDigJxUaGUgdHlwaWNhbCBodW1hbiBiZWluZyBjYW4gc3Bl YWvigJ0uCgoKCicnbGUnZScnIHRoZW4sIGlzIHRoZSBpZGVhbCBvYmplY3QgYXMgcGVyY2VpdmVk IG9yIGRlc2NyaWJlZCBieSB0aGUgc3BlYWtlci4gVGhpcyBuZWVkIG5vdCBiZSBmYWN0dWFsbHkg Y29ycmVjdCwgYW5kIGlzIG9mdGVuIHRyYW5zbGF0ZWQgYXMgdGhlIOKAnHN0ZXJlb3R5cGXigJ0s IGV2ZW4gdGhvdWdoIHRoZSBFbmdsaXNoIHBocmFzZSBoYXZlIHNvbWUgdW5wbGVhc2FudCBuZWdh dGl2ZSBjb25ub3RhdGlvbnMsIHdoaWNoIHRoZSBMb2piYW4gZG9lcyBub3QuIEluIGZhY3QsIGV2 ZXJ5b25lIGhhcyBhIHN0ZXJlb3R5cGljYWwgYXJjaGV0eXBpY2hhbCBpbWFnZSBvZiBhbnkgY2F0 ZWdvcnkuIEluIG90aGVyIHdvcmRzLCAnJ2xvJ2UgcmVtbmEnJyBpcyB0aGUgYXJjaGV0eXBlIHdo aWNoIGJlc3QgZXhlbXBsaWZpZXMgYWxsICcnbG8gcmVtbmEnJywgd2hpbGUgdGhlIGFyY2hldHlw ZSAnJ2xlJ2UgcmVtbmEnJyBiZXN0IGV4ZW1wbGlmaWVzIGFsbCAnJ2xlIHJlbW5hJycuCgoKClRo ZSBlbGV2ZW4gZ2FkcmkgY2FuIGJlIHNlZW4gaW4gdGhlIGRpYWdyYW0gYmVsb3cuCgp8fCB8R2Vu ZXJpY3xNYXNzZXN8U2V0c3xHZW5lcmFsaXppbmcKCnZlcmlkaWNhbHxsb3xsb2l8bG8naXxsbydl CgpEZXNjcmlwdGl2ZXxsZXxsZWl8bGUnaXxsZSdlCgpOYW1lfGxhfGxhaXxsYSdpfGRvZXMgbm90 IGV4aXN0fHwKCgoKTm90ZTogRWFybGllciwgdGhlcmUgd2FzIGEgd29yZCAnJ3hvJ2UnJyBmb3Ig dGhlIGdlbmVyaWMgZ2FkcmkuIEhvd2V2ZXIsIHRoZSBydWxlcyBhbmQgZGVmaW5pdGlvbnMgZm9y IGdhZHJpIHdlcmUgY2hhbmdlZCBpbiBsYXRlIDIwMDQsIGFuZCB0aGUgY3VycmVudCBzZXQgb2Yg cnVsZXMgb24gdGhpcyB0b3BpYywgbmlja2VkIOKAnHhvcmxv4oCdIGhhcyByZXBsYWNlZCB0aGUg b2xkIHdheS4gTm93LCAnJ2xvJycgaXMgZ2VuZXJpYywgYW5kICcneG8nZScnIGlzIHVzZWQgYXMg YSBlbGxpcHRpY2FsIGRpZ2l0IChsZXNzb24gbmluZXRlZW4pLgoKCgoKCiEhTG9qYmFuIExlc3Nv bnMgLSBMZXNzb24gZmlmdGVlbiAodGhlIExvamJhbiBzdW10aSAyOiBLT2hBMywgS09oQTUgYW5k IEtPaEE2KQoKU2VlIHdoYXQgaGFwcGVucyBpZiBJIHRyeSB0byB0cmFuc2xhdGUgdGhlIHNlbnRl bmNlOiDigJxTdGVyZW90eXBpY2FsIHBlb3BsZSB3aG8gY2FuIHNwZWFrIExvamJhbiBzcGVhayB0 byBlYWNoIG90aGVyIGFib3V0IHRoZSBsYW5ndWFnZXMgdGhleSBjYW4gc3BlYWvigJ06CgpfXycn YmFuZ3UnJ19fIOKAnHgxIGlzIGEgbGFuZ3VhZ2UgdXNlZCBieSB4MiB0byBleHByZXNzIHgzIChh YnN0cmFjdGlvbinigJ0KCicnbGUnZSBwcmVudSBwb2kga2UnYSBrYWtuZSBsbyBudSB0YXZsYSBm byBsYSAubG9qYmFuLiBjdSB0YXZsYSBsZSdlIHByZW51IHBvaSBrZSdhIGtha25lIGxvIG51IHRh dmxhIGZvIGxhIC5sb2piYW4uIGxvIGJhbmd1IHBvaSBsbyBwcmVudSBwb2kga2UnYSB0YXZsYSBm byBsYSAubG9qYmFuLiBjdSBzZSBiYW5ndSBrZSdhJycKCgoKV2hhdCB3ZSBzZWUgaXMgdGhhdCB0 aGUgTG9qYmFuIHZlcnNpb24gaXMgbXVjaCBsb25nZXIgdGhhbiB0aGUgRW5nbGlzaC4gVGhpcyBp cyBwcmltYXJpbHkgYmVjYXVzZSB0aGUgZmlyc3QsIHJpZGljdWxvdXNseSBsb25nIHN1bXRpIGlz IGJlaW5nIHJlcGVhdGVkIHR3byBtb3JlIHRpbWVzIGluIHRoZSBMb2piYW4gdGV4dCwgd2hpbGUg dGhlIEVuZ2xpc2ggY2FuIHJlZmVyIHRvIGl0IGJ5IOKAnGVhY2ggb3RoZXLigJ0gYW5kIOKAnHRo ZXnigJ0gLSBtdWNoIG1vcmUgZWZmaWNpZW50bHkuIFdvdWxkbid0IGl0IGJlIGNsZXZlciBpZiBM b2piYW4gc29tZWhvdyBoYWQgbWVjaGFuaXNtcyBmb3IgZG9pbmcgdGhlIHNhbWU/CgoKCkl0IHR1 cm5zIG91dCBpdCBkb2VzLCB3aGF0IGEgc3VycHJpc2UhIExvamJhbiBoYXMgYSByYW5nZSBvZiB3 b3JkcyBjYWxsZWQgJydzdW1rYSdpJycgbWVhbmluZyDigJxzdW10aS1yZXByZXNlbnRhdGl2ZXPi gJ0uIEluIEVuZ2xpc2gsIHdlIHJlZmVyIHRvIHRoZW0gYXMgcHJvLXN1bXRpLCBiZWNhdXNlIHRo ZXkgYXJlIGVzc2VudGlhbGx5IHRoZSBzYW1lIGFzIHRoZSBFbmdsaXNoIHByb25vdW5zLCBidXQg d2l0aCBzdW10aSBpbnN0ZWFkIG9mIG5vdW5zLiBJbiBmYWN0LCB5b3UgYWxyZWFkeSBrbm93ICcn dGknJywgJydkbycnIGFuZCAnJ21pJycsIGJ1dCB0aGVyZSBhcmUgbWFueSBtb3JlLCBzbyBsZXQn cyBnZXQgbGVhcm5pbmcuIEZpcnN0LCB3ZSB3YW50IHRvIHB1dCBpdCBpbnRvIHN5c3RlbS4gV2Ug Y2FuIGJlZ2luIHdpdGggdGhlIG9uZXMgbW9zdCBmYW1pbGlhciB0byBFbmdsaXNoLCBhbmQgd2hh dCB5b3UndmUgYWxyZWFkeSBsZWFybmVkOgoKCgpfXycndGknJ19fIC0gc3Vta2EnaTog4oCcaW1t ZWRpYXRlIOKAmGl0JzogcmVwcmVzZW50cyBhIHN1bXRpIHBoeXNpY2FsbHkgbmVhciB0aGUgc3Bl YWtlcuKAnQoKX18nJ3RhJydfXyAtIHN1bWthJ2k6IOKAnG5lYXJieSDigJhpdCc6IHJlcHJlc2Vu dHMgYSBzdW10aSBzb21lIHBoeXNpY2FsIGRpc3RhbmNlIGZyb20gdGhlIHNwZWFrZXIgT1IgY2xv c2UgdG8gdGhlIGxpc3RlbmVy4oCdCgpfXycndHUnJ19fIC0gc3Vta2EnaTog4oCcZGlzdGFudCDi gJhpdCc6IHJlcHJlc2VudHMgYSBzdW10aSBwaHlzaWNhbGx5IGZhciBmcm9tIHRoZSBzcGVha2Vy IGFuZCB0aGUgbGlzdGVuZXIu4oCdCgoKCllvdSBjYW4gYWdhaW4gcmVjb2duaXplIHRoZSDigJxp LCBhLCB14oCdLXNlcXVlbmNlIHdoaWNoIHBvcHMgdXAgb3ZlciBhbmQgb3Zlci4gU29tZSB0aGlu Z3MgbWlnaHQgdGFrZSBzb21lIGNsZWFyaW5nIHVwLCB0aG91Z2guIEZpcnN0bHksIHRoZXNlIHN1 bXRpIGNhbiByZXByZXNlbnQgYW55dGhpbmcgd2hpY2ggY2FuIGJlIHNhaWQgdG8gb2NjdXB5IGEg cGh5c2ljYWwgc3BhY2UuIE9iamVjdHMsIGNlcnRhaW5seS4gSWRlYXMsIGNlcnRhaW5seSBub3Qu IEV2ZW50cyBhcmUgYWNjZXB0ZWQsIGJ1dCBvbmx5IHRvIHRoZSBleHRlbnQgdGhleSBhcmUgcmVz dHJpY3RlZCB0byBhIHNwZWNpZmljIHBsYWNlIC0gdGhlIEphc21pbiBSZXZvbHV0aW9uIGNhbm5v dCBiZSBwb2ludGVkIGF0LCBidXQgc29tZSBiYXItZmlnaHQgb3IgYSBraXNzIG1pZ2h0LiBTZWNv bmRseSwgbm90ZSB0aGF0IHRoZSBkaXN0YW5jZSBpcyByZWxhdGl2ZSB0byBkaWZmZXJlbnQgdGhp bmdzIGZvciB0aGUgZGlmZmVyZW50IHdvcmRzOiAnJ3R1Jycgb25seSBhcHBsaWVzIGlmIGl0J3Mg ZGlzdGFudCBmcm9tIGJvdGggdGhlIHNwZWFrZXIgYW5kIHRoZSBsaXN0ZW5lci4gSW4gY2FzZXMg d2hlcmUgdGhlIHNwZWFrZXIgYW5kIGxpc3RlbmVyIGlzIGZhciBhcGFydCBhbmQgdGhlIGxpc3Rl bmVyIGNhbm5vdCBzZWUgdGhlIHNwZWFrZXIgdGFsa2luZywgJyd0YScnIHJlZmVycyB0byBzb21l dGhpbmcgY2xvc2UgdG8gdGhlIGxpc3RlbmVyLiBUaGlyZGx5LCBpdCdzIGFsbCByZWxhdGl2ZSBh bmQgY29udGV4dCBkZXBlbmRlbnQuIFRoZXNlIHRocmVlIHdvcmRzIGFyZSBhbGwgcHJvYmxlbWF0 aWMgaW4gd3JpdHRlbiB0ZXh0LCBmb3IgaW5zdGFuY2UsIGJlY2F1c2UgdGhlIHBvc2l0aW9uIG9m IHRoZSBzcGVha2VyIGFuZCBsaXN0ZW5lciBpcyB1bmtub3duIHRvIGVhY2ggb3RoZXIsIGFuZCBj aGFuZ2VzIGFzIHRpbWUgZ29lcyBieS4gRnVydGhlcm1vcmUsIHRoZSBhdXRob3Igb2YgYSBib29r IGNhbm5vdCBwb2ludCB0byBhbiBvYmplY3QgYW5kIGV4cHJlc3MgdGhlIHBvaW50aW5nIGluIHRo ZSBib29rLgoKCgpUaGVuIHRoZXJlIGlzIGEgc2VyaWVzIGNhbGxlZCBLT2hBMywgdG8gd2hpY2gg JydtaScnIGFuZCAnJ2RvJycgKGFuZCAnJ2tvJycsIGJ1dCBJIHdvbid0IHdyaXRlIHRoYXQgaGVy ZSkgYmVsb25nczoKCl9fJydtaScnX18gLSBzdW1rYSdpOiBUaGUgc3BlYWtlcihzKS4KCl9fJydt aSdvJydfXyAtIHN1bWthJ2k6IFRoZSBtYXNzIG9mIHRoZSBzcGVha2VyKHMpIGFuZCB0aGUgbGlz dGVuZXIocykgLgoKX18nJ21pJ2EnJ19fIC0gc3Vta2EnaTogVGhlIG1hc3Mgb2YgdGhlIHNwZWFr ZXIocykgYW5kIG90aGVycy4KCl9fJydtYSdhJydfXyAtIHN1bWthJ2k6IFRoZSBtYXNzIG9mIHRo ZSBzcGVha2VyKHMpLCB0aGUgbGlzdGVuZXIocykgYW5kIG90aGVycy4KCl9fJydkbycnX18gLSBz dW1rYSdpOiBUaGUgbGlzdGVuZXIocykuCgpfXycnZG8nbycnX18gLSBzdW1rYSdpOiBUaGUgbWFz cyBvZiB0aGUgbGlzdGVuZXIocykgYW5kIG90aGVycy4KCgoKVGhlc2Ugc2l4IHN1bWthJ2kgYXJl IG1vcmUgZWFzaWx5IGdyYXNwZWQgaW4gdGhlIGJlbG93IFZlbm4gZGlhZ3JhbToKCgoKe2ltZyBm aWxlSWQ9IjMiIHRodW1iPSJ5IiByZWw9ImJveFtnXSJ9CgpWZW5uIGRpYWdyYW0gb2YgS09oQTMg KCcna28nJyBleGNsdWRlZCkuICcnbGUgZHJhdGEnJyBpcyBub3QgYSBLT2hBMywgYnV0IG1lYW5z IOKAnHRoZSBvdGhlcihzKeKAnQoKCgpJdCBpcyBwb3NzaWJsZSBmb3Igc2V2ZXJhbCBwZW9wbGUg dG8gYmUg4oCcdGhlIHNwZWFrZXJz4oCdLCBpZiBvbmUgc3RhdGVtZW50IGlzIG1hZGUgb24gdGhl IGJlaGFsZiBvZiBhbGwgb2YgdGhlbS4gVGhlcmVmb3JlLCB3aGlsZSDigJx3ZeKAnSBjYW4gYmUg dHJhbnNsYXRlZCBhcyBlaXRoZXIgJydtaScnLCAnJ21pJ28nJywgJydtaSdhJycgb3IgJydtYSdh JycsIHdoYXQgb25lIHF1aXRlIG9mdGVuIG1lYW5zIGlzIHJlYWxseSBqdXN0ICcnbWknJy4gQWxs IG9mIHRoZXNlIHNpeCwgaWYgdGhleSByZWZlciB0byBtb3JlIHRoYW4gb25lIGluZGl2aWR1YWws IHJlcHJlc2VudCBtYXNzZXMuIFdpdGhpbiBicmlkaS1sb2dpYywgdGhlIGJyaWRpICcnbWkgZ2xl a2knJyBzYWlkIGJ5IHNwZWFrZXIgQSBpcyBleGFjdGx5IGVxdWl2YWxlbnQgdG8gJydkbyBnbGVr aScnIHNhaWQgYnkgc3BlYWtlciBCIHRvIHNwZWFrZXIgQSwgYW5kIGFyZSBjb25zaWRlcmVkIHRo ZSBzYW1lIGJyaWRpLiBXZSB3aWxsIGNvbWUgYmFjayB0byB0aGlzIGxhdGVyLCBpbiB0aGUgJydi cmlrYSdpJycgKHByby1icmlkaSkgbGVzc29uLgoKCgpBbGwgb2YgdGhlc2UgJydzdW1rYSdpJycg YXJlIHZlcnkgY29udGVudC1zcGVjaWZpYywgYW5kIGNhbm5vdCBiZSB1c2VkLCBmb3IgaW5zdGFu Y2UsIHRvIGhlbHAgdXMgd2l0aCB0aGUgc2VudGVuY2Ugd2hpY2ggdGhpcyBsZXNzb24gYmVnYW4g d2l0aC4gVGhlIGZvbGxvd2luZyBzZXJpZXMgY2FuIGluIHByaW5jaXBsZSBiZSB1c2VkIHRvIHJl ZmVyIHRvIGFueSBzdW10aToKCl9fJydyaScnX18gLSBzdW1rYSdpOiDigJxMYXN0IHN1bXRpIG1l bnRpb25lZOKAnQoKX18nJ3JhJydfXyAtIHN1bWthJ2k6IOKAnEEgcmVjZW50LCBidXQgbm90IHRo ZSBsYXN0IHN1bXRpIG1lbnRpb25lZOKAnQoKX18nJ3J1JydfXyAtIHN1bWthJ2k6IOKAnEEgc3Vt dGkgbWVudGlvbmVkIGxvbmcgYWdv4oCdCgoKClRoZXNlIHN1bXRpIHdpbGwgcmVmZXIgdG8gYW55 IHRlcm1pbmF0ZWQgc3VtdGkgZXhjZXB0IG1vc3Qgb3RoZXIgJydzdW1rYSdpJycuIFRoZSByZWFz b24gdGhhdCBtb3N0IG90aGVyICcnc3Vta2EnaScnIGNhbm5vdCBiZSByZWZlcnJlZCB0byBieSB0 aGVzZSBzdW10aSwgaXMgdGhhdCB0aGV5IGFyZSBzbyBlYXN5IHRvIGp1c3QgcmVwZWF0IGJ5IHRo ZW1zZWx2ZXMuIFRoZSBleGNlcHRpb24gdG8gdGhlIHJ1bGUgYXJlICcndGknJywgJyd0YScnIGFu ZCAnJ3R1JycsIGJlY2F1c2UgeW91IGNvdWxkIGhhdmUgY2hhbmdlZCB3aGF0IHlvdSBwb2ludCBh dCwgYW5kIHRodXMgY2Fubm90IGp1c3QgcmVwZWF0IHRoZSB3b3JkLiBUaGV5IHdpbGwgb25seSBy ZWZlciB0byB0ZXJtaW5hdGVkIHN1bXRpLCBhbmQgdGh1cyBjYW5ub3QsIGZvciBpbnN0YW5jZSwg YmUgdXNlZCB0byByZWZlciB0byBhbiBhYnN0cmFjdGlvbiBpZiB0aGUgd29yZCBpbiBpcyB0aGF0 IGFic3RyYWN0aW9uOiAnJ2xlIHBlbmRvIG5vaSBrZSdhIHBlbmRvIG1pIGN1IGRqaWNhIGxvIG51 IHJpIHNlIHpkYW5pJycgLSBoZXJlICcncmknJyBjYW5ub3QgcmVmZXIgdG8gdGhlIGFic3RyYXRp b24sIHNpbmNlIGl0IGlzIG5vdCB0ZXJtaW5hdGVkLCBub3IgdG8gJydtaScnIG9yICcna2UnYScn LCBzaW5jZSB0aGV5IGFyZSBzdW1rYSdpLCBzbyBpdCByZWZlcnMgdG8gJydsZSBwZW5kbycnLgoK JydyYScnIGFuZCAnJ3J1JycgYXJlIGNvbnRleHQtZGVwZW5kZW50IGluIHdoYXQgdGhleSByZWZl ciB0bywgYnV0IHRoZXkgZm9sbG93IHRoZSBydWxlcyBtZW50aW9uZWQgYWJvdmUsIGFuZCAnJ3J1 JycgYWx3YXlzIHJlZmVyIHRvIGEgbW9yZSBkaXN0YW50IHN1bXRpIHRoYW4gJydyYScnLCB3aGlj aCBpcyBhbHdheXMgbW9yZSBkaXN0YW50IHRoYW4gJydyaScnLgoKCgonJ3JpJycgYW5kIGl0J3Mg YnJvdGhlcnMgYXJlIHByZXR0eSB3ZWxsIHN1aXRlZCBmb3IgZGVhbGluZyB3aXRoIHRoZSBvcmln aW5hbCBzZW50ZW5jZS4gVHJ5IHNheWluZyBpdCB1c2luZyB0d28gaW5zdGFuY2VzIG9mICcnc3Vt a2EnaScnIQoKCgpBbnN3ZXI6IH5+Z3JleSxncmV5OicnbGUnZSBwcmVudSBwb2kga2UnYSBrYWtu ZSBsbyBudSB0YXZsYSBmbyBsYSAubG9qYmFuLiBjdSB0YXZsYSBydSBsbyBiYW5ndSBwb2kgcnUg Y3Ugc2UgYmFuZ3Uga2UnYScnLiAnJ3JpJycgaXMgbm90IGNvcnJlY3QsIGJlY2F1c2UgaXQgcmVm ZXJzIHRvICcnbGEgLmxvamJhbi4nJy4gJydyYScnIGNvdWxkIGJlIHVzZWQsIGJ1dCBjb3VsZCBi ZSBtaXN0YWtlbmx5IGJlIHRob3VnaHQgdG8gcmVmZXIgdG8gJydsbyBudSB0YXZsYSBmbyBsYSAu bG9qYmFuLicnLCBidXQgJydydScnIGlzIGFzc3VtZWQgdG8gcmVmZXIgdG8gdGhlIG1vc3QgZGlz dGFudCBzdW10aSAtIHRoZSBtb3N0IG91dGVyIG9uZS5+fgoKCgpMYXN0bHksIHRoZXJlIGEgc3Vt dGNpdGEgd2hpY2ggcmVwcmVzZW50IHV0dGVyYW5jZXM6IFNvIGNhbGxlZCB1dHRlcmFuY2UgdmFy aWFibGVzLiBUaGV5IG5lZWQgbm90IGJlIHJlc3RyaWN0ZWQgdG8gb25lIHNlbnRlbmNlIChqdWZy YSksIGJ1dCBjYW4gYmUgc2V2ZXJhbCBzZW50ZW5jZXMsIGlmIHRoZSBjb250ZXh0IGFsbG93cyBp dDoKCl9fJydkYSd1JydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IFJlbW90ZSBwYXN0IHNlbnRlbmNl CgpfXycnZGUndScnX18gVXR0ZXJhbmNlIHZhcmlhYmxlOiBSZWNlbnQgc2VudGVuY2UKCl9fJydk aSd1JydfXyBVdHRlcmFuY2UgdmFyaWFibGU6IFByZXZpb3VzIHNlbnRlbmNlCgpfXycnZGVpJydf XyBVdHRlcmFuY2UgdmFyaWFibGU6IFRoaXMgc2VudGVuY2UKCl9fJydkaSdlJydfXyBVdHRlcmFu Y2UgdmFyaWFibGU6IE5leHQgc2VudGVuY2UKCl9fJydkZSdlJydfXyBVdHRlcmFuY2UgdmFyaWFi bGU6IE5lYXIgZnV0dXJlIHNlbnRlbmNlCgpfXycnZGEnZScnX18gVXR0ZXJhbmNlIHZhcmlhYmxl OiBSZW1vdGUgZnV0dXJlIHNlbnRlbmNlCgpfXycnZG8naScnX18gVXR0ZXJhbmNlIHZhcmlhYmxl OiBFbGxpcHRpY2FsIHV0dGVyYW5jZSB2YXJpYWJsZTog4oCcU29tZSBzZW50ZW5jZeKAnQoKVGhl c2UgcmVwcmVzZW50cyBzZW50ZW5jZXMgYXMgc3VtdGksIGFuZCByZWZlciBvbmx5IHRvIHRoZSBz cG9rZW4gd29yZHMgb3IgdGhlIGxldHRlcnMsIG5vdCB0byB0aGUgbWVhbmluZyBiZWhpbmQgdGhl bS4KCgoKVGhlcmUgYXJlIG1vcmUgTG9qYmFuICcnc3Vta2EnaScnLCBidXQgZm9yIG5vdyB5b3Ug cHJvYmFibHkgbmVlZCBhIGJyZWFrIGZyb20gdGhlbS4gVGhlIG5leHQgbGVzc29uIHdpbGwgYmUg b24gZGVyaXZlZCBzdW10aSwgc3VtdGkgbWFkZSBmcm9tIG90aGVyIHN1bXRpLgoKCgoKCiEhTG9q YmFuIExlc3NvbnMgLSBMZXNzb24gc2l4dGVlbiAodGhlIExvamJhbiBzdW10aSAzOiBkZXJpdmVk IHN1bXRpKQoKWW91IGNhbiBwcm9iYWJseSBzZWUgdGhhdCB0aGUgc3VtdGkgJydsZSBiYW5ndSBw b2kgbWkgc2UgYmFuZ3Uga2UnYScnIGlzIGEgbGVzcyB0aGFuIGVsZWdhbnQgZXhwcmVzc2lvbiBm b3Ig4oCcbXkgbGFuZ3VhZ2XigJ0uIFRoaXMgaXMgYmVjYXVzZSBpdCdzIHJlYWxseSBhIHdvcmsg YXJvdW5kLiBBIGxhbmd1YWdlIHdoaWNoIEkgc3BlYWsgY2FuIGJlIHNhaWQgdG8gZmlsbCBpbnRv IHRoZSB4MSBvZiB0aGUgYnJpZGkgJydiYW5ndSBtaScnLiBXZSBjYW4ndCBjb252ZXJ0IHRoYXQg dG8gYSBzdW10aSB1c2luZyBhIGdhZHJpOiAnJ2xlIGJhbmd1IHtrdX0gbWknJyBpcyB0d28gc3Vt dGksIGJlY2F1c2UgJydiYW5ndSBtaScnIGlzIGEgYnJpZGksIG5vdCBhIHNlbGJyaS4gTmVpdGhl ciBjYW4gd2UgY29udmVydCBpdCB1c2luZyAnJ2xlIHN1J3UnJywgYmVjYXVzZSB0aGUgc3UndSBn aXZlcyB0aGUgYnJpZGkgYSBuZXcgeDEsIHRoZSBhYnN0cmFjdGlvbiwgYW5kIHRoZSAnJ2xlJycg dGhlbiBleHRyYWN0cyB0aGF0LiBUaGF0IG1ha2VzIGFuIGFic3RyYWN0aW9uIHN1bXRpIG1lYW5p bmcgc29tZXRoaW5nIGxpa2Ug4oCcdGhhdCBzb21ldGhpbmcgaXMgbXkgbGFuZ3VhZ2XigJ0uCgpF bnRlciAnJ2JlJycuICcnYmUnJyBpcyBhIHdvcmQgd2hpY2ggYmluZHMgY29uc3RydWN0cyAoc3Vt dGksIHN1bXRjaXRhIGFuZCBvdGhlcnMpIHRvIGEgc2VsYnJpLiBVc2luZyBpdCBpbiBvcmRpbmFy eSBzZWxicmkgaGFzIG5vIGVmZmVjdDogaW4gJydtaSBuZWxjaSBiZSBkbycnLCB0aGUgJydiZScn IGRvZXMgbm90aGluZy4gSG93ZXZlciwgd2hlbiBhIHN1bXRpIGlzIGJvdW5kIHRvIGEgc2VsYnJp IHRoaXMgd2F5LCB5b3UgY2FuIHVzZSBhIGdhZHJpIG9uIHRoZSBzZWxicmkgd2l0aG91dCB0aGUg c3VtdGkgc3BsaXR0aW5nIG9mZjogJydsZSBiYW5ndSBiZSBtaScnIGlzIGEgY29ycmVjdCBzb2x1 dGlvbiB0byB0aGUgcHJvYmxlbSBhYm92ZS4gTGlrZXdpc2UsIHlvdSBjYW4gYXR0YWNoIGEgc3Vt dGNpdGE6ICcnbGUgbnUgZGFyeGkga2VpIGJlIGdhdSBkbycnOiDigJxUaGUgZXZlbnQgb2YgaGl0 dGluZywgd2hpY2ggaXMgY2F1c2VkIGJ5IHlvdeKAnS4gTm90ZSB0aGF0IHRoZSBwcmVzZW5jZSBv ciBhYnNlbmNlIG9mICcna2VpJycgbWFrZXMgaXQgcGFyc2UgZGlmZmVyZW50bHk6IFdpdGggdGhl IGZhJ29ybWEnbyBwcmVzZW50LCAnJ2JlJycgYXR0YWNoZXMgdG8gJydudScnLCB3aXRob3V0IHRo ZSBmYSdvcm1hJ28sIGl0IGF0dGFjaGVzIHRvICcnZGFyeGknJy4gU28gaXQgZGVjaWRlcyB3aGF0 IGlzIGJlaW5nIGVtcGhhc2lzZWQ6IElzIHRoZSBoaXR0aW5nLCBvciB0aGUgZXZlbnQgb2YgaGl0 dGluZyBjYXVzZWQgYnkgeW91PyBJbiB0aGlzIHNwZWNpZmljIGNhc2UsIHRob3VnaCwgdGhhdCdz IGp1c3QgYWJvdXQgdGhlIHNhbWUgdGhpbmcuCgoKCldoYXQgaWYgSSB3YW50IHRvIGF0dGFjaCBz ZXZlcmFsIHN1bXRpIHRvIGEgc2VsYnJpIGluc2lkZSBhIGdhZHJpPyDigJxUaGUgZ2l2ZXIgb2Yg dGhlIGFwcGxlIHRvIHlvdeKAnSBpcyAnJ2xlIGR1bmRhIGJlIGxvIHBsaXNlIGJlIGRvJycsIHJp Z2h0PyBOb3BlLiBUaGUgc2Vjb25kICcnYmUnJyBhdHRhY2hlcyB0byB0aGUgYXBwbGUsIG1lYW5p bmcgJydsZSBwbGlzZSBiZSBkbycnIC0g4oCcVGhlIGFwcGxlIG9mIHRoZSBzdHJhaW4gb2YgeW91 4oCdLCB3aGljaCBtYWtlcyBubyBzZW5zZS4gSW4gb3JkZXIgdG8gc3RyaW5nIHNldmVyYWwgc3Vt dGkgdG8gYSBzZWxicmksIHRoZSBhbGwgdGhlIG9uZXMgZm9sbG93aW5nIHRoZSBmaXJzdCBtdXN0 IGJlIGJvdW5kIHdpdGggJydiZWknJy4gVGhlIOKAnGJpbmRpbmfigJ0gY2FuIGJlIHRlcm1pbmF0 ZWQgd2l0aCAnJ2JlJ28nJyAtIG9uZSBpbnN0YW5jZSBvZiAnJ2JlJ28nJyBmb3IgZWFjaCBzZWxi cmkgd2hpY2ggaGFzIHN1bXRpIGJvdW5kIGJ5ICcnYmUnJy4KClRvIGxpc3QgdGhlbToKCl9fJydi ZScnX18gYmluZHMgc3VtdGkgb3Igc3VtdGNpdGEgdG8gc2VsYnJpCgpfXycnYmVpJydfXyBiaW5k cyBhIHNlY29uZCwgdGhpcmQsIGZvdXJ0aCAoZWN0KSBzdW10aSBvciBzdW10Y2l0YSB0byBhIHNl bGJyaQoKX18nJ2JlJ28nJ19fIGVuZHMgYmluZGluZyB0byBzZWxicmkKCgoKVGhlcmUgaXMgYWxz byB3YXlzIHRvIGxvb3NlbHkgYXNzb2NpYXRlIGEgc3VtdGkgd2l0aCBhbm90aGVyLiAnJ3BlJycg YW5kICcnbmUnJyBmb3IgcmVzdHJpY3RpdmUgYW5kIG5vbi1yZXN0cmljdGl2ZSBhc3NvY2lhdGlv bi4gQWN0dWFsbHksICcnbGUgYmFuZ3UgcGUgbWknJyBpcyBhIGJldHRlciB0cmFuc2xhdGlvbiBv ZiDigJxteSBsYW5ndWFnZeKAnSwgc2luY2UgdGhpcyBwaHJhc2UsIGxpa2UgdGhlIEVuZ2xpc2gs IGlzIHZhZ3VlIGFzIHRvIGhvdyB0aGUgdHdvIGFyZSBhc3NvY2lhdGVkIHdpdGggZWFjaCBvdGhl ci4KCicncGUnJyBhbmQgJyduZScnIGFyZSB1c2VkIGFzIGxvb3NlIGFzc29jaWF0aW9uIG9ubHks IGxpa2Ugc2F5aW5nIOKAnG15IGNoYWly4oCdIGFib3V0IGEgY2hhaXIgd2hpY2ggeW91IHNpdCBv bi4gSXQncyBub3QgcmVhbGx5IHlvdXJzLCBidXQgaGFzIHNvbWV0aGluZyBkbyB0byB3aXRoIHlv dS4gQSBtb3JlIGludGltYXRlIGNvbm5lY3Rpb24gY2FuIGJlIGVzdGFibGlzaGVkIHdpdGggJydw bycnLCB3aGljaCBtYWtlcyB0aGUgYXNzb2NpYXRpb24gdW5pcXVlIGFuZCBiaW5kaW5nIHRvIGEg cGVyc29uLCBhcyBpbiDigJxteSBjYXLigJ0gZm9yIGEgY2FyIHRoYXQgeW91IGFjdHVhbGx5IG93 bi4gVGhlIGxhc3Qga2luZCBvZiBhc3NvY2lhdG9yIGlzICcncG8nZScnLCB3aGljaCBtYWtlcyBh IHNvLWNhbGxlZCAiaW5hbGllbmFibGUiIGJvbmQgYmV0d2VlbiBzdW10aSwgbWVhbmluZyB0aGF0 IHRoZSBib25kIGlzIGlubmF0ZSBiZXR3ZWVuIHRoZSB0d28gc3VtdGkuIFNvbWUgZXhhbXBsZXMg Y291bGQgYmUgIm15IG1vdGhlciIsICJteSBhcm0iIG9yICJteSBob21lIGNvdW50cnkiOyBub25l IG9mIHRoZXNlICJwb3NzZXNpb25zIiBjYW4gYmUgbG9zdCAoZXZlbiBpZiB5b3Ugc2F3IG9mZiB5 b3VyIGFybSwgaXQncyBzdGlsbCBfX3lvdXJfXyBhcm0pLCBhbmQgYXJlIHRoZXJlZm9yZSBpbmFs aWVuYWJsZS4gQWxtb3N0IGFsbCBvZiB0aGUgdGltZXMgYSAnJ3BvJ2UnJyBpcyBhcHByb3ByaWF0 ZSwgdGhvdWdoLCB0aGUgeDIgb2YgdGhlIHNlbGJyaSBjb250YWlucyB0aGUgb25lIHRvIHdoaWNo IHRoZSB4MSBpcyBjb25uZWN0ZWQsIHNvICcnYmUnJyBpcyBiZXR0ZXIuCgpfXycnbmUnJ19fIG5v bi1yZXN0cmljdGl2ZSByZWxhdGl2ZSBwaHJhc2UuICJ3aGljaCBpcyBhc3NvY2lhdGVkIHdpdGgu Li4iCgpfXycncGUnJ19fIHJlc3RyaWN0aXZlIHJlbGF0aXZlIHBocmFzZS4gIndoaWNoIGlzIGFz c29jaWF0ZWQgd2l0aC4uLiIKCl9fJydwbycnX18gcG9zc2VzaXZlIHJlbGF0aXZlIHBocmFzZS4g IndoaWNoIGlzIHNwZWNpZmljIHRvLi4uIgoKX18nJ3BvJ2UnJ19fIGluYWxpZW5hYmxlIHJlbGF0 aXZlIHBocmFzZS4gIndoaWNoIGJlbG9uZ3MgdG8uLi4iCgoKCkEgdmVyeSB1c2VmdWwgY29uc3Ry dWN0IHRvIGtub3cgaXMgJyd7Z2Fkcml9IHtzdW10aX0ge3NlbGJyaX0nJy4gdGhpcyBpcyBlcXVp dmFsZW50IHRvICcne2dhZHJpfSB7c2VsYnJpfSBwZSAge3N1bXRpfScnLiBGb3IgaW5zdGFuY2Ug JydsZSBtaSBnZXJrdScnIGlzIGVxdWl2YWxlbnQgdG8gJydsZSBnZXJrdSBwZSBtaScnLiBPbmUg Y291bGQgaGF2ZSBkZXNjcmlwdGlvbiBzdW10aSBpbnNpZGUgZGVzY3JpcHRpb24gc3VtdGksIHNh eWluZyAnJ2xlIGxlIHNlIGNpbmppa2NhIGJlIG1pIGt1IGdlcmt1JycsID0gJydsZSBnZXJrdSBw ZSBsZSBzZSBjaW5qaWtjYSBiZSBtaScnID3igJx0aGUgZG9nIG9mIHRoZSBtYW4gSSdtIGZsaXJ0 aW5nIHdpdGjigJ0sIGJ1dCB0aGF0J3Mgbm90IHZlcnkgZWFzeSB0byByZWFkIChvciB0byB1bmRl cnN0YW5kIHdoZW4gc3Bva2VuKSwgYW5kIGlzIG9mdGVuIGJlaW5nIGF2b2lkZWQuCgoKCk9uZSBu ZWVkIGFsc28gdG8gbGVhcm4gJyd0dSdhJycsIHNpbmNlIGl0IHdpbGwgbWFrZSBhIGxvdCBvZiBz ZW50ZW5jZXMgbXVjaCBlYXNpZXIuIEl0IHRha2VzIGEgc3VtdGkgYW5kIGNvbnZlcnRzIGl0IHRv IGFub3RoZXIgc3VtdGkgLSBhbiBlbGxpcHRpY2FsIGFic3RyYWN0aW9uIHdoaWNoIGhhcyBzb21l dGhpbmcgdG8gZG8gd2l0aCB0aGUgZmlyc3Qgc3VtdGkuIEZvciBleGFtcGxlLCBJIGNvdWxkIHNh eSAnJ21pIGRqaWNhIGxvIG51IG1pIGNpdGthIGxvIHBsaXNlJycsIG9yIEkgY291bGQgbGV0IGl0 IGJlIHVwIHRvIGNvbnRleHQgd2hhdCBhYnN0cmFjdGlvbiBhYm91dCB0aGUgYXBwbGUgSSBkZXNp cmUgYW5kIGp1c3Qgc2F5ICcnbWkgZGppY2EgdHUnYSBsbyBwbGlzZScnLiBPbmUgYWx3YXlzIGhh cyB0byBndWVzcyB3aGF0IGFic3RyYWN0aW9uIHRoZSBzcGVha2VyIG1lYW5zIGJ5ICcndHUnYSBT VU1USScnLCBzbyBpdCBzaG91bGQgb25seSBiZSB1c2VkIHdoZW4gY29udGV4dCBtYWtlcyBpdCBl YXN5IHRvIGd1ZXNzLiBBbm90aGVyIGV4YW1wbGU6CgpfXycnZ2FzbnUnJ19fIOKAnHgxIGRvZXMv YnJpbmdzIGFib3V0IHgyICh2b2xpdGlvbiBub3QgaW1wbGllZCnigJ0KCicnemEnYSBkbyBnYXNu dSB0dSdhIGxvIHNrYW1pJycgLSDigJxJIHNlZSB0aGF0IHlvdSBtYWtlIHRoZSBjb21wdXRlciBk byBzb21ldGhpbmfigJ0uIE9mZmljaWFsbHksICcndHUnYSBTVU1USScnIGlzIGVxdWl2YWxlbnQg dG8gJydsZSBzdSd1IFNVTVRJIGNvJ2UnJy4gVmFndWUsIGJ1dCB1c2VmdWwuIFRoZXJlIGFyZSBz aXR1YXRpb25zIHdoZXJlIHlvdSBjYW5ub3QgdXNlICcndHUnYScnLCBldmVuIHRob3VnaCBpdCB3 b3VsZCBzZWVtIHN1aXRhYmxlLiBUaGVzZSBzaXR1YXRpb25zIGFyZSB3aGVuIEkgZG9uJ3Qgd2Fu dCB0aGUgcmVzdWx0aW5nIHN1bXRpIHRvIGJlIGFuIGFic3RyYWN0aW9uLCBidXQgYSBjb25jcmV0 ZSBzdW10aS4gSW4gdGhpcyBjYXNlLCBvbmUgY2FuIHVzZSAnJ3pvJ2UgcGUnJy4KCl9fJyd0dSdh JydfXyBjb252ZXJ0IHN1bXRpIHRvIHZhZ3VlIGFic3RyYWN0aW9uIGludm9sdmluZyB0aGUgc3Vt dGkuIEVxdWl2YWxlbnQgdG8gJydsZSBzdSd1IFNVTVRJIGNvJ2Uga2VpIGt1JycKCgoKRmluYWxs eSwgb25lIGtpbmQgb2Ygc3VtdGkgY2FuIGJlIHR1cm5lZCBpbnRvIGFub3RoZXIgYnkgdGhlIHdv cmRzIG9mIHRoZSBjbGFzcyBMQWhFLgoKX18nJ2x1J2EnJ19fIC0gQ29udmVydCBpbmRpdmlkdWFs KHMpL21hc3Mvc2VxdWVuY2Uvc2V0IHRvIGluZGl2aWR1YWxzLgoKX18nJ2x1J2knJ19fIC0gQ29u dmVydCBpbmRpdmlkdWFsKHMpL21hc3Mvc2VxdWVuY2Uvc2V0IHRvIGEgc2V0LgoKX18nJ2x1J28n J19fIC0gQ29udmVydCBpbmRpdmlkdWFsKHMpL21hc3Mvc2VxdWVuY2Uvc2V0IHRvIG1hc3MuCgpf XycndnUnaScnX18gLSBDb252ZXJ0IGluZGl2aWR1YWwocykvbWFzcy9zZXF1ZW5jZS9zZXQgdG8g c2VxdWVuY2U7IHRoZSBvcmRlciBpcyBub3Qgc3RhdGVkLgoKVGhlIHVzZSBvZiB0aGVzZSB3b3Jk cyBpcyBzdHJhaWdodC1mb3J3YXJkbHk6IFBsYWNpbmcgdGhlbSBiZWZvcmUgYSBzdW10aSBvZiBh IGNlcnRhaW4gdHlwZSBtYWtlcyBhIG5ldyBzdW10aSBvZiBhIG5ldyB0eXBlLiBOb3RpY2UsIHRo b3VnaCwgdGhhdCBhcyBhIGZvdXJ0aCBraW5kIG9mIHN1bXRpLCBhIHNlcXVlbmNlIGhhcyBiZWVu IGludHJvZHVjZWQuIFRoaXMgaXMgbm90IHVzZWQgdmVyeSBvZnRlbiAoaXQgZG9lc24ndCBoYXZl IGl0cyBvd24gZ2FkcmksIGZvciBpbnN0YW5jZSksIGJ1dCBqdXN0IGluY2x1ZGVkIGhlcmUgZm9y IGNvbXBsZXRpb24uCgpUaGUgbGFzdCB0d28gbWVtYmVycyBvZiBMQWhFIGRvIG5vdCBjb252ZXJ0 IGJldHdlZW4gdHlwZXMgb2Ygc3VtdGksIGJ1dCBhbGxvd3MgeW91IHRvIHNwZWFrIG9mIGEgYSBz dW10aSBieSBvbmx5IG1lbnRpb25pbmcgc29tZXRoaW5nIHdoaWNoIHJlZmVyZW5jZXMgdG8gaXQ6 CgpJZiBvbmUgc3VtdGkgQSByZWZlcnMgdG8gYSBzdW10aSBCLCBmb3IgaW5zdGFuY2UgYmVjYXVz ZSBzdW10aSBBIGlzIGEgdGl0bGUgb2YgYSBib29rLCBvciBhIG5hbWUsIG9yIGEgc2VudGVuY2Ug KHdoaWNoIGFsd2F5cyByZWZlciB0byBzb21ldGhpbmcsIGF0IGxlYXN0IGEgYnJpZGkpLCDigJgn bGEnZSBTVU1USSBBJycgcmVmZXJzIHRvIHN1bXRpIEIuIEZvciBpbnN0YW5jZSwg4oCYJ21pIG5l bGNpIGxhJ2UgZGkndScnIGZvciDigJxJIGxpa2Ugd2hhdCB5b3UganVzdCBzYWlk4oCdIChub3Qg JydtaSBuZWxjaSBkaSd1Jycgd2hpY2gganVzdCBtZWFucyAiSSBsaWtlIHlvdXIgcHJldmlvdXMg c2VudGVuY2UiKSBvciDigJgnbGEnZSBsZSBjbWFsdSBub2x0cnUnJyBmb3IgdGhlIGJvb2sg4oCc VGhlIExpdHRsZSBQcmluY2XigJ0sIGFuZCBub3Qgc29tZSBsaXR0bGUgcHJpbmNlIGhpbXNlbGYu IFRoZSBjbWF2byDigJgnbHUnZScnIGRvZXMgdGhlIGV4YWN0IHJldmVyc2Ug4oCTIOKAmCdsdSdl IFNVTVRJJycgcmVmZXJzIHRvIGFuIG9iamVjdCB3aGljaCByZWZlcnMgdG8gdGhlIHN1bXRpLiAK Cl9fJydsYSdlJydfXyAtIOKAnHRoZSB0aGluZyByZWZlcnJlZCB0byBieeKAnSAtIGV4dHJhY3Rz IGEgc3VtdGkgQSBmcm9tIGEgc3VtdGkgQiB3aGljaCByZWZlcnMgdG8gQS4gCgpfXycnbHUnZScn X18gLSDigJx0aGUgdGhpbmcgcmVmZXJyaW5nIHRv4oCdIC0gZXh0cmFjdHMgYSBzdW10aSBCIGZy b20gYSBzdW10aSBBLCB3aGVuIEIgcmVmZXJzIHRvIEEuCgoKCgoKISEhRW5kIG9mIHBhcnQgb25l CgpEdWUgdG8gdGhlIGltcHJhY3RpY2FsbHkgbGFyZ2Ugc2l6ZSBvZiB0aGVzZSBsZXNzb25zLCB0 aGUgc2Vjb25kIGFuZCB0aGlyZCBpbnN0YWxsbWVudCBjYW4gYmUgZm91bmQgb24gcGFnZXMgZGVk aWNhdGVkIHRvICgod2F2ZWxlc3NvbnNjb250aW51ZWRwMnx0aGUgZm9ybWVyKSkgYW5kICgod2F2 ZWxlc3NvbnNjb250aW51ZWRwM3x0aGUgbGF0dGVyKSkuIE5vIHdvcnJpZXMsIHRob3VnaCwgY2xp Y2tpbmcgb24gInRoZSBmb3JtZXIiIG9yICJ0aGUgbGF0dGVyIiB3aWxsIHRha2UgeW91IHRoZXJl IHBhaW5sZXNzbHkuCgoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpXaWtpY2hhbmdlcyBtYWlsaW5nIGxpc3QKV2lraWNoYW5nZXNAbG9qYmFuLm9yZwpo dHRwOi8vbWFpbC5sb2piYW4ub3JnL21haWxtYW4vbGlzdGluZm8vd2lraWNoYW5nZXMK