From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sebastien Boisvert Subject: Re: [lttng-ust RFC PATCH v2 1/1] Add -ust to the name of UST threads of the application Date: Fri, 3 Jun 2016 12:24:31 -0400 Message-ID: <5751AF3F.4000405__5011.1303608448$1464971050$gmane$org@gydle.com> References: <80ee3399800d43b5d3f51aa095ebca160d4f20b9.1464966729.git.raphael.beamonte@gmail.com> <5751A690.9000501@gydle.com> <1992157209.27136.1464969273436.JavaMail.zimbra@efficios.com> <1936873452.27140.1464969327630.JavaMail.zimbra@efficios.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.gydle.com (mail.gydle.com [64.18.173.180]) by evm-lttng-1.efficios.com (Postfix) with ESMTPS id 669DFA3784 for ; Fri, 3 Jun 2016 16:23:31 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" To: =?UTF-8?Q?Rapha=c3=abl_Beamonte?= , Mathieu Desnoyers Cc: lttng-dev List-Id: lttng-dev@lists.lttng.org SGkgUmFwaGHDq2wsCgpJIGhhZCBhbm90aGVyIHRob3VnaHQuCgpJZiB0aGUgcHJvY2VzcyBuYW1l IGlzICJteS1zdXBlci1wcm9jZXNzIiwgSSB0aGluayBpdCBvbmx5IG1ha2VzIHNlbnNlIHRvIGFw cGVuZCB0aGUKIi11c3QiIHN1ZmZpeCBpZiB0aGVyZSBpcyBzdWZmaWNpZW50IHNwYWNlLiAibXkt c3VwZXItcHJvY2Vzcy11c3QiIGlzIGZpbmUsIGJ1dCBJIGZlZWwKdGhhdCAibXktc3VwZXItcHJv LXVzdCIgaXMgbWVhbmluZ2xlc3MuCgoKT24gMDYvMDMvMjAxNiAxMjoxMiBQTSwgUmFwaGHDq2wg QmVhbW9udGUgd3JvdGU6Cj4gMjAxNi0wNi0wMyAxMTo1NSBHTVQtMDQ6MDAgTWF0aGlldSBEZXNu b3llcnMgPG1hdGhpZXUuZGVzbm95ZXJzQGVmZmljaW9zLmNvbT46Cj4+IC0tLS0tIE9uIEp1biAz LCAyMDE2LCBhdCA1OjU0IFBNLCBNYXRoaWV1IERlc25veWVycyBtYXRoaWV1LmRlc25veWVyc0Bl ZmZpY2lvcy5jb20gd3JvdGU6Cj4+Cj4+PiAtLS0tLSBPbiBKdW4gMywgMjAxNiwgYXQgNTo0NyBQ TSwgU2ViYXN0aWVuIEJvaXN2ZXJ0IHNib2lzdmVydEBneWRsZS5jb20gd3JvdGU6Cj4+Pgo+Pj4+ IEhpIFJhcGhhw6tsLAo+Pj4+Cj4+Pj4gSSB0aGluayB5b3UgaGF2ZSBhIGJ1ZmZlciBvdmVyZmxv dywgc2VlIGJlbG93Lgo+Pj4+Cj4+Pj4gT24gMDYvMDMvMjAxNiAxMToxNyBBTSwgUmFwaGHDq2wg QmVhbW9udGUgd3JvdGU6Cj4+Pj4+IEFkZCB0aGUgcmVxdWlyZWQgZnVuY3Rpb25zIHRvIGNoYW5n ZSB0aGUgdGhyZWFkIG5hbWUgb2YgdGhlIFVTVAo+Pj4+PiB0aHJlYWRzIGFuZCBhZGQgdGhlIC11 c3Qgc3RyaW5nIGF0IGl0cyBlbmQuIFRoaXMgd2lsbCBoZWxwIHRvCj4+Pj4+IGlkZW50aWZ5IExU VG5nLVVTVCBwcm9jZXNzZXMgd2hlbiBhbmFseXppbmcgdGhlIHRyYWNlIG9mIGEgcHJvY2Vzcy4K Pj4+Pj4KPj4+Pj4gU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgQmVhbW9udGUgPHJhcGhhZWwuYmVh bW9udGVAZ21haWwuY29tPgo+Pj4+PiAtLS0KPj4+Pj4gIGNvbmZpZ3VyZS5hYyAgICAgICAgICAg ICAgICAgIHwgIDUgKysrKysKPj4+Pj4gIGxpYmx0dG5nLXVzdC9NYWtlZmlsZS5hbSAgICAgIHwg IDEgKwo+Pj4+PiAgbGlibHR0bmctdXN0L2NvbXBhdC5oICAgICAgICAgfCA0OCArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCj4+Pj4+ICBsaWJsdHRuZy11c3QvbHR0 bmctdXN0LWNvbW0uYyB8ICA2ICsrKysrKwo+Pj4+PiAgNCBmaWxlcyBjaGFuZ2VkLCA1OSBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCj4+Pj4+Cj4+Pj4+IGRpZmYgLS1naXQgYS9jb25maWd1 cmUuYWMgYi9jb25maWd1cmUuYWMKPj4+Pj4gaW5kZXggNTY5MjU1My4uZGU0NjJmZiAxMDA2NDQK Pj4+Pj4gLS0tIGEvY29uZmlndXJlLmFjCj4+Pj4+ICsrKyBiL2NvbmZpZ3VyZS5hYwo+Pj4+PiBA QCAtMTM1LDYgKzEzNSwxMSBAQCBBTV9DT05ESVRJT05BTChbTFRUTkdfVVNUX0JVSUxEX1dJVEhf TElCRExdLCBbdGVzdAo+Pj4+PiAieCRoYXZlX2xpYmRsIiA9ICJ4eWVzIl0pCj4+Pj4+ICBBTV9D T05ESVRJT05BTChbTFRUTkdfVVNUX0JVSUxEX1dJVEhfTElCQ19ETF0sIFt0ZXN0ICJ4JGhhdmVf bGliY19kbCIgPSAieHllcyJdKQo+Pj4+Pgo+Pj4+PiAgQUNfQ0hFQ0tfTElCKFtwdGhyZWFkXSwg W3B0aHJlYWRfY3JlYXRlXSkKPj4+Pj4gK0FDX0NIRUNLX0xJQihbcHRocmVhZF0sIFtwdGhyZWFk X3NldG5hbWVfbnBdLAo+Pj4+PiArICAgQUNfREVGSU5FKFtIQVZFX1BUSFJFQURfU0VUTkFNRV9O UF0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHB0aHJlYWRfc2V0bmFtZV9ucAo+Pj4+PiBpcyBhdmFp bGFibGUuXSksCj4+Pj4+ICsgICBBQ19DSEVDS19MSUIoW3B0aHJlYWRdLCBbcHRocmVhZF9zZXRf bmFtZV9ucF0sCj4+Pj4+ICsgICAgICAgICAgIEFDX0RFRklORShbSEFWRV9QVEhSRUFEX1NFVF9O QU1FX05QXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYKPj4+Pj4gcHRocmVhZF9zZXRfbmFtZV9ucCBp cyBhdmFpbGFibGUuXSksCj4+Pj4+ICsgICAgICAgICAgIEFDX01TR19SRVNVTFQoW3B0aHJlYWQg c2V0bmFtZS9zZXRfbmFtZSBub3QgZm91bmQuXSkpKQo+Pj4+Pgo+Pj4+PiAgIyBDaGVjayBmb3Ig ZGxmY24uaAo+Pj4+PiAgQUNfQ0hFQ0tfSEVBREVSKFtkbGZjbi5oXSkKPj4+Pj4gZGlmZiAtLWdp dCBhL2xpYmx0dG5nLXVzdC9NYWtlZmlsZS5hbSBiL2xpYmx0dG5nLXVzdC9NYWtlZmlsZS5hbQo+ Pj4+PiBpbmRleCBmMTgwMWNmLi4wNTkyOWJlIDEwMDY0NAo+Pj4+PiAtLS0gYS9saWJsdHRuZy11 c3QvTWFrZWZpbGUuYW0KPj4+Pj4gKysrIGIvbGlibHR0bmctdXN0L01ha2VmaWxlLmFtCj4+Pj4+ IEBAIC0xNCw2ICsxNCw3IEBAIGxpYmx0dG5nX3VzdF90cmFjZXBvaW50X2xhX1NPVVJDRVMgPSBc Cj4+Pj4+ICAgICBlcnJvci5oCj4+Pj4+ICBsaWJsdHRuZ191c3RfdHJhY2Vwb2ludF9sYV9MSUJB REQgPSBcCj4+Pj4+ICAgICAtbHVyY3UtYnAgXAo+Pj4+PiArICAgLWxwdGhyZWFkIFwKPj4+Pj4g ICAgICQodG9wX2J1aWxkZGlyKS9zbnByaW50Zi9saWJ1c3RzbnByaW50Zi5sYQo+Pj4+PiAgbGli bHR0bmdfdXN0X3RyYWNlcG9pbnRfbGFfTERGTEFHUyA9IC1uby11bmRlZmluZWQgLXZlcnNpb24t aW5mbwo+Pj4+PiAgJChMVFROR19VU1RfTElCUkFSWV9WRVJTSU9OKQo+Pj4+PiAgbGlibHR0bmdf dXN0X3RyYWNlcG9pbnRfbGFfQ0ZMQUdTID0gLURVU1RfQ09NUE9ORU5UPSJsaWJsdHRuZ191c3Rf dHJhY2Vwb2ludCIKPj4+Pj4gIC1mbm8tc3RyaWN0LWFsaWFzaW5nCj4+Pj4+IGRpZmYgLS1naXQg YS9saWJsdHRuZy11c3QvY29tcGF0LmggYi9saWJsdHRuZy11c3QvY29tcGF0LmgKPj4+Pj4gaW5k ZXggNDNiMjIyMy4uNGZlZTkxOSAxMDA2NDQKPj4+Pj4gLS0tIGEvbGlibHR0bmctdXN0L2NvbXBh dC5oCj4+Pj4+ICsrKyBiL2xpYmx0dG5nLXVzdC9jb21wYXQuaAo+Pj4+PiBAQCAtMyw2ICszLDcg QEAKPj4+Pj4KPj4+Pj4gIC8qCj4+Pj4+ICAgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTWF0aGlldSBE ZXNub3llcnMgPG1hdGhpZXUuZGVzbm95ZXJzQGVmZmljaW9zLmNvbT4KPj4+Pj4gKyAqIENvcHly aWdodCAoQykgMjAxNiBSYXBoYcOrbCBCZWFtb250ZSA8cmFwaGFlbC5iZWFtb250ZUBnbWFpbC5j b20+Cj4+Pj4+ICAgKgo+Pj4+PiAgICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgo+Pj4+PiAgICogbW9kaWZ5IGl0IHVuZGVyIHRo ZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwo+Pj4+PiBAQCAtMjMsNyAr MjQsNiBAQAo+Pj4+PiAgICogbHR0bmdfdXN0X2dldHByb2NuYW1lLgo+Pj4+PiAgICovCj4+Pj4+ ICAjaWZkZWYgX19saW51eF9fCj4+Pj4+IC0KPj4+Pj4gICNpbmNsdWRlIDxzeXMvcHJjdGwuaD4K Pj4+Pj4KPj4+Pj4gICNkZWZpbmUgTFRUTkdfVVNUX1BST0NOQU1FX0xFTiAxNwo+Pj4+PiBAQCAt MzQsNiArMzQsMTMgQEAgdm9pZCBsdHRuZ191c3RfZ2V0cHJvY25hbWUoY2hhciAqbmFtZSkKPj4+ Pj4gICAgICh2b2lkKSBwcmN0bChQUl9HRVRfTkFNRSwgKHVuc2lnbmVkIGxvbmcpIG5hbWUsIDAs IDAsIDApOwo+Pj4+PiAgfQo+Pj4+Pgo+Pj4+PiArLyoKPj4+Pj4gKyAqIGlmIHB0aHJlYWRfc2V0 bmFtZV9ucCBpcyBhdmFpbGFibGUuCj4+Pj4+ICsgKi8KPj4+Pj4gKyNpZmRlZiBIQVZFX1BUSFJF QURfU0VUTkFNRV9OUAo+Pj4+PiArI2RlZmluZSBQVEhSRUFEX1NFVE5BTUVfTlAgcHRocmVhZF9z ZXRuYW1lX25wCj4+Pj4+ICsjZW5kaWYKPj4+Pj4gKwo+Pj4+PiAgI2VsaWYgZGVmaW5lZChfX0Zy ZWVCU0RfXykKPj4+Pj4gICNpbmNsdWRlIDxzdGRsaWIuaD4KPj4+Pj4gICNpbmNsdWRlIDxzdHJp bmcuaD4KPj4+Pj4gQEAgLTU5LDYgKzY2LDQ1IEBAIHZvaWQgbHR0bmdfdXN0X2dldHByb2NuYW1l KGNoYXIgKm5hbWUpCj4+Pj4+ICAgICAgICAgICAgIHN0cm5jcHkobmFtZSwgYnNkX25hbWUsIExU VE5HX1VTVF9QUk9DTkFNRV9MRU4gLSAxKTsKPj4+Pj4gIH0KPj4+Pj4KPj4+Pj4gKy8qCj4+Pj4+ ICsgKiBpZiBwdGhyZWFkX3NldF9uYW1lX25wIGlzIGF2YWlsYWJsZS4KPj4+Pj4gKyAqLwo+Pj4+ PiArI2lmZGVmIEhBVkVfUFRIUkVBRF9TRVRfTkFNRV9OUAo+Pj4+PiArI2RlZmluZSBQVEhSRUFE X1NFVE5BTUVfTlAgcHRocmVhZF9zZXRfbmFtZV9ucAo+Pj4+PiArI2VuZGlmCj4+Pj4+ICsKPj4+ Pj4gKyNlbmRpZgo+Pj4+PiArCj4+Pj4+ICsvKgo+Pj4+PiArICogaWYgYSBwdGhyZWFkIHNldG5h bWUvc2V0X25hbWUgZnVuY3Rpb24gaXMgYXZhaWxhYmxlLCBkZWNsYXJlCj4+Pj4+ICsgKiB0aGUg c2V0dXN0cHJvY25hbWUoKSBmdW5jdGlvbiB0aGF0IHdpbGwgYWRkICctdXN0JyB0byB0aGUgZW5k Cj4+Pj4+ICsgKiBvZiB0aGUgY3VycmVudCBwcm9jZXNzIG5hbWUsIHdoaWxlIHRydW5jYXRpbmcg aXQgaWYgbmVlZGVkLgo+Pj4+PiArICovCj4+Pj4+ICsjaWZkZWYgUFRIUkVBRF9TRVROQU1FX05Q Cj4+Pj4+ICsjZGVmaW5lIExUVE5HX1VTVF9TRVRVU1RQUk9DTkFNRSBsdHRuZ191c3Rfc2V0dXN0 cHJvY25hbWUoKQo+Pj4+PiArCj4+Pj4+ICsjaW5jbHVkZSA8cHRocmVhZC5oPgo+Pj4+PiArCj4+ Pj4+ICtzdGF0aWMgaW5saW5lCj4+Pj4+ICt2b2lkIGx0dG5nX3VzdF9zZXR1c3Rwcm9jbmFtZSgp Cj4+Pj4+ICt7Cj4+Pj4+ICsgICBjaGFyIG5hbWVbTFRUTkdfVVNUX1BST0NOQU1FX0xFTl07Cj4+ Pj4KPj4+PiBMZXQncyBzYXkgdGhhdCBMVFROR19VU1RfUFJPQ05BTUVfTEVOIGlzIDEwLgo+Pj4+ Cj4+Pj4+ICsgICBpbnQgbGltaXQgPSBMVFROR19VU1RfUFJPQ05BTUVfTEVOIC0gNDsKPj4+Pgo+ Pj4+IFRoZW4sIGxpbWl0IGlzIDEwIC0gNCA9IDYuCj4+Pj4KPj4+Pj4gKyAgIGludCBsZW4gPSAw Owo+Pj4+Cj4+Pj4gVGhpcyBjYW4gYmUgbW92ZWQgb24gdGhlIHN0cmxlbihuYW1lKSBsaW5lLgo+ Pj4+Cj4+Pj4+ICsKPj4+Pj4gKyAgIGx0dG5nX3VzdF9nZXRwcm9jbmFtZShuYW1lKTsKPj4+Pgo+ Pj4+IExldCdzIHN1cHBvc2UgdGhhdCBhZnRlciB0aGUgY2FsbCB0byBsdHRuZ191c3RfZ2V0cHJv Y25hbWUoKSwgbmFtZSBjb250YWlucwo+Pj4+ICIwMTIzNDU2NzhcMCIsCj4+Pj4KPj4+Pj4gKwo+ Pj4+PiArICAgbGVuID0gc3RybGVuKG5hbWUpOwo+Pj4+Cj4+Pj4gVGhlIHZhcmlhYmxlICJsZW4i IHdpbGwgY29udGFpbiB0aGUgaW50ZWdlciA5Lgo+Pj4+Cj4+Pj4+ICsgICBpZiAobGVuID49IGxp bWl0KSB7Cj4+Pj4+ICsgICAgICAgICAgIGxlbiA9IGxpbWl0Owo+Pj4+PiArICAgfQo+Pj4+PiAr Cj4+Pj4KPj4+PiBBZnRlciB0aGF0LCBsZW4gaXMgPj0gbGltaXQgKDkgPj0gNiksIHNvIGxlbiBi ZWNvbWVzIDYuCj4+Pj4KPj4+Pj4gKyAgIHNwcmludGYobmFtZSArIGxlbiwgIiVzIiwgIi11c3Qi KTsKPj4+Pgo+Pj4+IG5hbWUgaXMgYSBwb2ludGVyIHRvICIwMTIzNDU2NzhcMCIgKDkgYnl0ZXMg KyAnXDAnKQo+Pj4+Cj4+Pj4gbmFtZSArIGxlbiBpcyBuYW1lICsgNiwgc28gaXQgcG9pbnRzIHRv ICI2NzhcMCIKPj4+Pgo+Pj4+IHNwcmludGYgd2lsbCBlc3NlbnRpYWxseSBjb3B5ICItdXN0XDAi IHRvICI2NzhcMCIuCj4+Pj4KPj4+PiBTbywgaWYgbXkgY2FsY3VsYXRpb25zIGFyZSBub3Qgd3Jv bmcsIHlvdSBoYXZlIGEgYnVmZmVyIG92ZXJmbG93IHdoaWNoIHdpbGwKPj4+PiBjb3JydXB0IHRo ZSBzdGFjayBtZW1vcnkgb2YgdGhlCj4+Pj4gY3VycmVudCBzdGFjayBmcmFtZS4KPiAKPiBZb3Un cmUgcmlnaHQsIHdpbGwgZml4IHRoYXQuCj4gSSdtIGFsc28gcXVlc3Rpb25uaW5nIHRoZSBpbnRl cmVzdCBvZiBsaW1pdCBiZWluZyBhIHZhcmlhYmxlIGhlcmUuCj4gU2hvdWxkIEkgcmVwbGFjZSBi b3RoIG9jY3VycmVuY2VzIGRpcmVjdGx5IGJ5ICJMVFROR19VU1RfUFJPQ05BTUVfTEVOCj4gLSA1 IiBvciBjcmVhdGUgYSAiI2RlZmluZSBMVFROR19VU1RfUFJPQ05BTUVfTElNSVQKPiAoTFRUTkdf VVNUX1BST0NOQU1FX0xFTiAtIDUpIiBtYWNybyA/IE1hdGhpZXUsIHdoYXQgZG8geW91IHRoaW5r IHdvdWxkCj4gYmUgdGhlIGJlc3QgdG8gZG8gaGVyZSA/Cj4gVGhlIGNvbmRpdGlvbiB3aWxsIGFs c28gYmUgcmVwbGFjZWQgZnJvbSAiPj0iIHRvICI+IiwgYXMgdGhlICI9IiBwYXJ0Cj4gaXMgbm90 IHVzZWZ1bCBhbnltb3JlIGluIHRoYXQgdmVyc2lvbiBvZiB0aGUgcGF0Y2ggKGl0IHdhcyBpbiB2 MSwKPiBiZWNhdXNlIG9mIHRoZSBvcGVyYXRpb25zIHRoYXQgd2VyZSBkb25lKS4KPiAKPj4+Pgo+ Pj4+Cj4+Pj4+ICsKPj4+Pj4gKyAgIFBUSFJFQURfU0VUTkFNRV9OUChwdGhyZWFkX3NlbGYoKSwg bmFtZSk7Cj4+Pj4+ICt9Cj4+Pj4+ICsjZWxzZQo+Pj4+PiArI2RlZmluZSBMVFROR19VU1RfU0VU VVNUUFJPQ05BTUUKPj4+Pj4gICNlbmRpZgo+Pj4+Pgo+Pj4+PiAgI2luY2x1ZGUgPGVycm5vLmg+ Cj4+Pj4+IGRpZmYgLS1naXQgYS9saWJsdHRuZy11c3QvbHR0bmctdXN0LWNvbW0uYyBiL2xpYmx0 dG5nLXVzdC9sdHRuZy11c3QtY29tbS5jCj4+Pj4+IGluZGV4IGUwMGEyMmMuLjRkZTY4YzcgMTAw NjQ0Cj4+Pj4+IC0tLSBhL2xpYmx0dG5nLXVzdC9sdHRuZy11c3QtY29tbS5jCj4+Pj4+ICsrKyBi L2xpYmx0dG5nLXVzdC9sdHRuZy11c3QtY29tbS5jCj4+Pj4+IEBAIC0xMjk1LDYgKzEyOTUsMTIg QEAgdm9pZCAqdXN0X2xpc3RlbmVyX3RocmVhZCh2b2lkICphcmcpCj4+Pj4+ICAgICBpbnQgc29j aywgcmV0LCBwcmV2X2Nvbm5lY3RfZmFpbGVkID0gMCwgaGFzX3dhaXRlZCA9IDA7Cj4+Pj4+ICAg ICBsb25nIHRpbWVvdXQ7Cj4+Pj4+Cj4+Pj4+ICsgICAvKgo+Pj4+PiArICAgICogSWYgYXZhaWxh YmxlLCBhZGQgJy11c3QnIHRvIHRoZSBlbmQgb2YgdGhpcyB0aHJlYWQncwo+Pj4+PiArICAgICog cHJvY2VzcyBuYW1lCj4+Pj4+ICsgICAgKi8KPj4+Pj4gKyAgIExUVE5HX1VTVF9TRVRVU1RQUk9D TkFNRTsKPj4+Pgo+Pj4+IElzIHRoaXMgY29tbW9uIHByYWN0aWNlID8gSnVzdCBieSBsb29raW5n IGF0IHRoaXMgbGluZSwgaXQgaXMgdW5jbGVhciB0aGF0IGl0IGlzCj4+Pj4gYSBmdW5jdGlvbiBj YWxsLgo+Pj4+Cj4+Pj4gSSB3b3VsZCBwcmVmZXIKPj4+Pgo+Pj4+IExUVE5HX1VTVF9TRVRVU1RQ Uk9DTkFNRSgpCj4+Pj4KPj4+PiBvcgo+Pj4+Cj4+Pj4gbHR0bmdfdXN0X3NldHVzdHByb2NuYW1l KCkKPj4+Cj4+PiBUaGUgbGF0dGVyIGlzIHByZWZlcnJlZCBieSBvdXIgY29kaW5nIHN0eWxlLCBp bmRlZWQuCj4+Pgo+Pgo+PiBBbmQgdGhlcmUgaXMgbm8gcmVhc29uIHRvIG1ha2UgaXQgYSBtYWNy by4gSXQgc2hvdWxkIGJlCj4+IGEgc3RhdGljIGlubGluZSB3aGVuZXZlciBwb3NzaWJsZS4KPiAK PiBJIG1hZGUgaXQgYSBtYWNybyBhcyBJIHdhcyBub3Qgc3VyZSBhYm91dCB0aGUgYmVzdCBwYXRo IHRvIHRha2UsIGFuZAo+IHRoZSBtYWNybyBzZWVtZWQgdG8gYmUgdGhlIGNsZWFuZXIgYXBwcm9h Y2ghCj4gSG93ZXZlciwgd291bGQgaXQgYmUgYmV0dGVyIGxpa2UgdGhhdDoKPiAKPiAjaWZkZWYg UFRIUkVBRF9TRVROQU1FX05QCj4gI2luY2x1ZGUgPHB0aHJlYWQuaD4KPiAjZW5kaWYKPiAKPiBz dGF0aWMgaW5saW5lCj4gdm9pZCBsdHRuZ191c3Rfc2V0dXN0cHJvY25hbWUoKQo+IHsKPiAjaWZk ZWYgUFRIUkVBRF9TRVROQU1FX05QCj4gICAgIC4uLgo+IAo+ICAgICBQVEhSRUFEX1NFVE5BTUVf TlAocHRocmVhZF9zZWxmKCksIG5hbWUpOwo+ICNlbmRpZgo+IH0KPiAKPiBPciBsaWtlIHRoYXQg Pwo+IAo+ICNpZmRlZiBQVEhSRUFEX1NFVE5BTUVfTlAKPiAjaW5jbHVkZSA8cHRocmVhZC5oPgo+ IAo+IHN0YXRpYyBpbmxpbmUKPiB2b2lkIGx0dG5nX3VzdF9zZXR1c3Rwcm9jbmFtZSgpCj4gewo+ ICAgICAuLi4KPiAKPiAgICAgUFRIUkVBRF9TRVROQU1FX05QKHB0aHJlYWRfc2VsZigpLCBuYW1l KTsKPiB9Cj4gI2Vsc2UKPiBzdGF0aWMgaW5saW5lCj4gdm9pZCBsdHRuZ191c3Rfc2V0dXN0cHJv Y25hbWUoKQo+IHt9Cj4gI2VuZGlmCj4gCj4gCj4gSW4gYm90aCB0aG9zZSBjYXNlcywgdGhlIG1h Y3JvIGRpc2FwcGVhcnMsIGFuZCBpcyByZXBsYWNlZCBieSBhIGNhbGwKPiB0byBsdHRuZ191c3Rf c2V0dXN0cHJvY25hbWUoKS4KPiBJJ20gbm90IHN1cmUgaG93ZXZlciB3aGljaCBpcyBwcmVmZXJh YmxlIGFjY29yZGluZyB0byB0aGUgY29kaW5nIHN0eWxlCj4gKEluIG9uZSBjYXNlLCB0d28gI2lm ZGVmIGFyZSByZXF1aXJlZCwgaW4gdGhlIG90aGVyLCB3ZSBkZWNsYXJlIHRoZQo+IGZ1bmN0aW9u IGluIGVhY2ggYnJhbmNoIG9mIHRoZSBpZmRlZi9lbHNlKS4KPiAKPiBUaG91Z2h0cyA/IEknbGwg c2VuZCBhIHYzIG9mIHRoZSBwYXRjaCBhY2NvcmRpbmcgdG8geW91ciBwcmVmZXJlbmNlIGluCj4g Ym90aCBtYXR0ZXJzLgo+IAo+IFRoYW5rcyBhIGxvdCEKPiBSYXBoYcOrbAo+IApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsdHRuZy1kZXYgbWFpbGluZyBs aXN0Cmx0dG5nLWRldkBsaXN0cy5sdHRuZy5vcmcKaHR0cHM6Ly9saXN0cy5sdHRuZy5vcmcvY2dp LWJpbi9tYWlsbWFuL2xpc3RpbmZvL2x0dG5nLWRldgo=