From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: Re: [PATCH v2 0/7] Make GEN macros more similar Date: Wed, 21 Nov 2018 14:19:19 -0800 Message-ID: <20181121221919.GF13148@intel.com> References: <20181106215123.27568-1-lucas.demarchi@intel.com> <6d6d46ec-5f0f-78eb-295c-7926e4b068d2@linux.intel.com> <20181108005727.GB2885@ldmartin-desk.jf.intel.com> <20181119222054.GB9928@ldmartin-desk.jf.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9C6CD6E0E1 for ; Wed, 21 Nov 2018 22:19:20 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20181119222054.GB9928@ldmartin-desk.jf.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Lucas De Marchi Cc: intel-gfx@lists.freedesktop.org, Lucas De Marchi List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBOb3YgMTksIDIwMTggYXQgMDI6MjA6NTVQTSAtMDgwMCwgTHVjYXMgRGUgTWFyY2hp IHdyb3RlOgo+IE9uIFRodSwgTm92IDA4LCAyMDE4IGF0IDExOjIzOjQ2QU0gKzAwMDAsIFR2cnRr byBVcnN1bGluIHdyb3RlOgo+ID4gCj4gPiBPbiAwOC8xMS8yMDE4IDAwOjU3LCBMdWNhcyBEZSBN YXJjaGkgd3JvdGU6Cj4gPiA+IE9uIFdlZCwgTm92IDA3LCAyMDE4IGF0IDEwOjA1OjE5QU0gKzAw MDAsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+ID4gPiA+IAo+ID4gPiA+IE9uIDA2LzExLzIwMTgg MjE6NTEsIEx1Y2FzIERlIE1hcmNoaSB3cm90ZToKPiA+ID4gPiA+IFRoaXMgaXMgdGhlIHNlY29u ZCB2ZXJzaW9uIG9mIHRoZSBzZXJpZXMgdHJ5aW5nIHRvIG1ha2UgR0VOIGNoZWNrcwo+ID4gPiA+ ID4gbW9yZSBzaW1pbGFyLiBUaGVzZSBvciByb3VnaGx5IHRoZSBjaGFuZ2VzIGZyb20gdjE6Cj4g PiA+ID4gPiAKPiA+ID4gPiA+IC0gV2UgZG9uJ3QgaGF2ZSBhIHNpbmdsZSBtYWNybyByZWNlaXZp bmcgMiBvciAzIHBhcmFtZXRlcnMuIE5vdyB0aGVyZQo+ID4gPiA+ID4gICAgIGlzIEdUX0dFTl9S QU5HRSgpLCBhbmQgR1RfR0VOKCkuIFRoZSBmaXJzIGlzIHRoZSBjb252ZXJzaW9uIGZyb20KPiA+ ID4gPiA+ICAgICBJU19HRU4oKSB3aGlsZSB0aGUgc2Vjb25kIGlzIHRoZSBjb252ZXJzaW9uIGZy b20gSVNfR0VOPE4+KCkKPiA+ID4gPiA+IC0gQnJpbmcgR0VOX0ZPUkVWRVIgYmFjayB0byBiZSB1 c2VkIHdpdGggYWJvdmUgbWFjcm9zCj4gPiA+ID4gPiAtIFBhdGNoIGNvbnZlcnRpbmcgPCwgPD0s ID09LCA+LCA+PSAgY2hlY2tzIHVzaW5nIElOVEVMX0dFTigpIHRvCj4gPiA+ID4gPiAgICAgdXNl IHRoZSBtYWNyb3MgYWJvdmUgd2FzIGFkZGVkCj4gPiA+ID4gPiAtIElOVEVMX0dFTigpIGlzIHJl bW92ZWQgdG8gYXZvaWQgaXQgYmVpbmcgdXNlZCB3aGVuIHdlIHNob3VsZCBwcmVmZXIKPiA+ID4g PiA+ICAgICB0aGUgbmV3IG1hY3Jvcwo+ID4gPiA+ID4gCj4gPiA+ID4gPiBUaGUgaWRlYSBvZiB0 aGUgbmFtZXMgaXMgdG8gcGF2ZSB0aGUgd2F5IGZvciBjaGVja3Mgb2YgdGhlIGRpc3BsYXkgdmVy c2lvbiwKPiA+ID4gPiA+IHdoaWNoIHdvdWxkIGJlIG5hbWVkIERJU1BMQVlfR0VOKCksIERJU1BM QVlfR0VOX1JBTkdFKCkuCj4gPiA+ID4gPiAKPiA+ID4gPiA+IEluIHRoZSBjb21taXQgbWVzc2Fn ZXMgd2UgaGF2ZSB0aGUgc2NyaXB0cyB0byByZWdlbmVyYXRlIHRoZSBwYXRjaCB0byBtYWtlCj4g PiA+ID4gPiBpdCBlYXNpZXIgdG8gYXBwbHkgYWZ0ZXIgdGhlIGRpc2N1c3Npb25zIGFuZCBhbHNv IHRvIGJlIGFibGUgdG8gY29udmVydAo+ID4gPiA+ID4gaW5mbGlnaHQgcGF0Y2hlcy4KPiA+ID4g PiA+IAo+ID4gPiA+ID4gU29ycnkgaW4gYWR2YW5jZSBmb3IgdGhlIG5vaXNlIHRoaXMgY2F1c2Vz IGluIHRoZSBjb2RlYmFzZSwgYnV0IGhvcGVmdWxseQo+ID4gPiA+ID4gaXQgaXMgZm9yIHRoZSBn cmVhdGVyIGdvb2QuCj4gPiA+ID4gPiAKPiA+ID4gPiA+IAo+ID4gPiA+ID4gTHVjYXMgRGUgTWFy Y2hpICg2KToKPiA+ID4gPiA+ICAgICBSZXZlcnQgImRybS9pOTE1OiBLaWxsIEdFTl9GT1JFVkVS Igo+ID4gPiA+ID4gICAgIGRybS9pOTE1OiByZXBsYWNlIElTX0dFTjxOPiB3aXRoIEdUX0dFTigu Li4sIE4pCj4gPiA+ID4gPiAgICAgZHJtL2k5MTU6IHJlbmFtZSBJU19HRU45XyogdG8gR1RfR0VO OV8qCj4gPiA+ID4gPiAgICAgZHJtL2k5MTU6IHJlcGxhY2UgZ2VuIGNoZWNrcyB1c2luZyBvcGVy YXRvcnMgYnkgR1RfR0VOL0dUX0dFTl9SQU5HRQo+ID4gPiA+IAo+ID4gPiA+IEkgaGF2ZSByZXNl cnZhdGlvbnMgYWJvdXQgdGhpcyBwYXRjaCwgd2hlcmUgSSB0aGluayBmb3JjaW5nIG9ubHkgb25l IGZsYXZvdXIKPiA+ID4gPiBtYXliZSBpcyBub3QgdGhlIGJlc3QgdGhpbmcuIEJlY2F1c2UgZm9y IHBsYWluIGlmLWxhZGRlciBjYXNlcyBpdCBmZWVscyBtb3JlCj4gPiA+ID4gcmVhZGFibGUgdG8g c3RpY2sgd2l0aCB0aGUgY3VycmVudCBzY2hlbWUgb2YgYXJpdGhtZXRpYyBjb21wYXJpc29ucy4g QW5kIGl0Cj4gPiA+ID4gaXMgbW9yZSBlZmZpY2llbnQgaW4gY29kZSBhcyB3ZWxsLgo+ID4gPiA+ IAo+ID4gPiA+IFJhbmdlIGNoZWNrcyBhcmUgb24gdGhlIG90aGVyIGhhbmQgdXNlZnVsIGVpdGhl ciB3aGVuIGNvbWJpbmVkIGluIHRoZSBzYW1lCj4gPiA+ID4gY29uZGl0aW9uYWwgYXMgc29tZSBv dGhlciBiaXRtYXNrIGJhc2VkIHRlc3QsIG9yIHdoZW4gYm90aCBlbmRzIG9mIHRoZQo+ID4gPiA+ IGNvbXBhcmlzb24gZWRnZSBhcmUgYm91bmQuCj4gPiA+IAo+ID4gPiBTbyBhcmUgeW91IGFnYWlu c3QgY2hhbmdpbmcgdGhlID09IHRvIHVzZSB0aGUgbWFjcm9zLCBjaGFuZ2luZyB0aGUgPj0sID4s IDwsIDw9LAo+ID4gPiBvciBhbGwgb2YgdGhlbT8KPiA+IAo+ID4gRGVmaW5pdGVseSBub3QgYWxs IG9mIHRoZW0uIEp1c3QgcGxhaW4gaWYgbGFkZGVycyBJIHRoaW5rIGFyZSBkZWZpbml0ZWx5Cj4g PiBtb3JlIHJlYWRhYmxlIGluIHNvdXJjZSBhbmQgcmVzdWx0IGluIGJldHRlciBjb2RlIGluIHRo ZSBub3JtYWwgZmFzaGlvbiBvZjoKPiA+IAo+ID4gICAgaWYgKGdlbiA+PSAxMSkKPiA+ICAgIGVs c2UgaWYgKGdlbiA+PSA5KQo+ID4gICAgZWxzZSBpZiAoZ2VuID49IDcpCj4gPiAgICAuLi4gZXRj IC4uLgo+ID4gCj4gPiBXaGVyZSBJIHRoaW5rIGl0IG1ha2VzIHNlbnNlIGlzIHdoZW4gZWl0aGVy IGJvdGggZWRnZXMgYXJlIGJvdW5kLCBsaWtlOgo+ID4gCj4gPiAgIGlmIChnZW4gPCAxMSB8fCBn ZW4gPj0gOCkKPiA+ICAgaWYgKGdlbiA+PSAxMCB8fCBnZW4gPT0gOCkKPiAKPiBvaywgSSB3aWxs IHRha2UgYSBsb29rIGJlZm9yZSByZXNwaW5uaW5nIHRoaXMuCj4gCj4gPiAKPiA+IEJ1dCBub3Qg c3VyZSBob3cgbWFueSBvZiB0aG9zZSB0aGVyZSBhcmUuCj4gPiAKPiA+IFdoYXQgZGVmaW5pdGVs eSBleGlzdHMgaW4gbGFyZ2UtaXNoIG51bWJlcnMgYXJlOgoKc3BlY2lhbGx5IG9uIGRpc3BsYXkg c2lkZS4uLgoKPiA+IAo+ID4gICAgaWYgKGdlbiA+PSAxMSB8fCAgSVNfUExBVEZPUk0pCgpNeSBn b2FsIGlzIGV4YWN0bHkgdG8gb3JnYW5pemUgdGhlIGdlbiBudW1iZXJzIGluIGEgd2F5IHRoYXQK d2UgbWluaW1pemUgdGhpcyBtaXggYXMgbXVjaCBhcyBwb3NzaWJsZS4KCj4gPiAKPiA+IEF0IHNv bWUgcG9pbnQgSSBoYWQgYSBwcm90b3R5cGUgd2hpY2ggcHV0cyB0aGUgZ2VuIGFuZCBwbGF0Zm9y bSBtYXNrcyBpbnRvIGEKPiA+IGJhZyBvZiBiaXRzIGFuZCB0aGVuLCBkZXBlbmRpbmcgb24gYml0 cyBsb2NhbGl0eSwgdGhpcyB0b28gY2FuIGJlIGNvbXByZXNzZWQKPiA+IHRvIGEgc2luZ2xlIGJp dG1hc2sgdGVzdC4gSG93ZXZlciBJIGZlbHQgdGhhdCB3YXMgZ29pbmcgdG9vIGZhciwgYW5kIHRo ZQo+ID4gaXNzdWUgaXMgYWNoaWV2aW5nIGludGVyZXN0aW5nIGJpdHMgbG9jYWxpdHkgZm9yIGl0 IHRvbyB3b3JrLiBCdXQgSSBkaWdyZXNzLgo+ID4gCj4gPiA+IExvb2tpbmcgYXQgdGhlIGNoYW5n ZXMgdG8gPT0sIHRoZXkgc2VlbSB2ZXJ5IHJlYXNvbmFibGUgYW5kIGluIGEgZmV3IGNhc2VzIGl0 IGFsbG93ZWQKPiA+ID4gdGhlIG5leHQgcGF0Y2ggdG8gbWVyZ2UgdGhlbSBpbiBhIEdUX0dFTl9S QU5HRSgpIC0tIHllcyB0aGUgcGF0Y2ggb3JkZXJpbmcgd2FzIG9uCj4gPiA+IHB1cnBvc2UgdG8g YWxsb3cgdGhhdC4KPiA+IAo+ID4gWWVwIHRob3NlIGFyZSB0aGUgZ29vZCBvbmVzLgo+ID4gCj4g PiA+IFRoZSBvdGhlcnMgYXJlIGluZGVlZCBkZWJhdGFibGUuIEhvd2V2ZXIgSU1PIGZvciB0aGUg Y2FzZXMgaXQgbWFrZXMgc2Vuc2UsCj4gPiA+IHRoZXJlJ3MgYWx3YXlzIHRoZSBmYWxsYmFjawo+ ID4gPiAKPiA+ID4gaWYgKGRldl9wcml2LT5pbmZvLmdlbiA9PSAxMCkKPiA+ID4gICAgICAuLi4K PiA+ID4gZWxzZSBpZiAoZGV2X3ByaXYtPmluZm8uZ2VuID09IDExKQo+ID4gPiAgICAgIC4uLgo+ ID4gPiBlbHNlIGlmIChkZXZfcHJpdi0+aW5mby5nZW4gPCA1KQo+ID4gPiAgICAgIC4uLgo+ID4g PiAKPiA+ID4gV2UgY2FuIGdvIG9uIGEgY2FzZSBieSBjYXNlIG1hbm5lciBpbiB0aGlzIHBhdGNo IHJhdGhlciB0aGFuIHRoZSBtYXNzIGNvbnZlcnNpb24KPiA+ID4gZm9yIHRoZXNlLgo+ID4gPiAK PiA+ID4gPiAKPiA+ID4gPiA+ICAgICBkcm0vaTkxNTogbWVyZ2UgZ2VuIGNoZWNrcyB0byB1c2Ug cmFuZ2UKPiA+ID4gPiA+ICAgICBkcm0vaTkxNTogcmVtb3ZlIElOVEVMX0dFTiBtYWNybwo+ID4g PiA+IAo+ID4gPiA+IEkgaGF2ZSByZXNlcnZhdGlvbnMgYWJvdXQgdGhpcyBhcyBhcyB3ZWxsLCBl c3BlY2lhbGx5IGNvbnNpZGVyaW5nIHRoZQo+ID4gPiA+IHByZXZpb3VzIHBhcmFncmFwaC4gQnV0 IGV2ZW4gb24gaXQncyBvd24gSSBhbSBub3Qgc3VyZSB3ZSB3YW50IHRvIGdvIGJhY2sgdG8KPiA+ ID4gPiBtb3JlIHZlcmJvc2UuCj4gPiA+IAo+ID4gPiBzZWUgYWJvdmUuIElNTyBpdCdzIG5vdCBh Y3R1YWxseSBzbyB2ZXJib3NlIGFzIG9uZSB3b3VsZCB0aGluay4KPiA+ID4gCj4gPiA+ICAgICAg aWYgKElOVEVMX0dFTihkZXZfcHJpdikgPT0gMTEpCj4gPiA+ICAgICAgdnMKPiA+ID4gICAgICBp ZiAoZGV2X3ByaXYtPmluZm8uZ2VuID09IDExKQo+ID4gCj4gPiBJIHRoaW5rIGl0IHNob3VsZCBi ZToKPiA+IAo+ID4gICAgICAgIGlmIChJTlRFTF9JTkZPKGRldl9wcml2KS0+Z2VuID09IDExKQo+ ID4gCj4gPiBXaGljaCBpcyBhIHRpbnkgYml0IGxvbmdlci4uCj4gCj4gSWYgaXQncyBsb25nZXIs IHdoeSBib3RoZXI/IFdlIGNvdWxkIGp1c3QgYXMgd2VsbCBkbyBmb3IgdGhlIGlmIGxhZGRlcnM6 Cj4gCj4gZ2VuID0gZGV2X3ByaXYtPmluZm8uZ2VuOwo+IG9yCj4gZ2VuID0gSU5URUxfSU5GTyhk ZXZfcHJpdiktPmdlbgo+IAo+IEluIHlvdXIgb3RoZXIgc2VyaWVzIHlvdSB3b3VsZCBiZSBtb3Zp bmcgZ2VuIHRvIGEgcnVudGltZSBpbmZvLCBzbyB0aGlzCj4gd291bGQgY2F1c2UgdGhlIHNhbWUg YW1vdW50IG9mIGNodXJuIChhbHRob3VnaCBJIGRpc2FncmVlIHdpdGggbW92aW5nIGdlbiB0byBh IHJ1bnRpbWUKPiBpbmZvIGp1c3QgYmVjYXVzZSBvZiB0aGUgbW9jayBzdHJ1Y3QpLgo+IAo+IAo+ ID4gCj4gPiA+IFRoZSAidmVyYm9zZSIgdmVyc2lvbiBpcyBhY3R1YWxseSBvbmUgY2hhcmFjdGVy IGxlc3MgYW5kIG9uZSBsb29rdXAgbGVzcwo+ID4gPiB0byB3aGF0IHRoZSBtYWNybyBpcyBkb2lu ZyB1bmRlcm5lYXRoLiBPZiBjb3Vyc2UgdGhhdCBtZWFucyBhIGxvdCBvZiBjaHVybgo+ID4gPiB0 byB0aGUgY29kZWJhc2Ugd2hlbi9pZiB3ZSBjaGFuZ2Ugd2hlcmUgdGhlIGdlbiBudW1iZXIgaXMg bG9jYXRlZCwgYnV0IHRoYXQKPiA+ID4gbnVtYmVyIGlzIGF0IHRoZSBzYW1lIHBsYWNlIHNpbmNl IGl0cyBpbnRyb2R1Y3Rpb24gaW4gMjAxMAo+ID4gPiAoY29tbWl0IGM5NmMzYThjYjdmYWRjYjMz ZDlhNWViZTM1ZmNlZThiN2QwYTc5NDYpCj4gPiAKPiA+IEkgYW0gcHJldHR5IHN1cmUgd2Ugd2Vu dCB0aHJvdWdoIHBhdGNoZXMgdG8gYSkgbW92ZSB0b3dhcmRzIElOVEVMX0lORk8gYW5kCj4gPiBi KSByZXBsYWNlIElOVEVMX0lORk8oZGV2X3ByaXYpLT5nZW4gd2l0aCBJTlRFTF9HRU4uIFNvIEkg ZG9uJ3Qgc2VlIGFuCj4gPiBhZHZhbnRhZ2Ugb2YgcmV2ZXJ0aW5nIHRoYXQsIGp1c3Qgc28gdGhh dCB3ZSBjYW4gbG9zZSB0aGUgSVNfIHByZWZpeCBiZWxvdy4KPiA+IAo+ID4gPiA+IFBlcmhhcHMg aW4gdGhlIG5ldyBzY2hlbWUgb2YgdGhpbmdzIGl0IHNob3VsZCBiZSByZW5hbWVkIHRvIElOVEVM X0dUX0dFTj8gSQo+ID4gPiA+IGtub3cgaXQgZG9lc24ndCBmaXQgbmljZWx5IHdpdGggdGhlIG5h bWluZyBzY2hlbWUgb2YgR1QvRElTUExBWV9HRU4uLiBzbwo+ID4gPiA+IG1heWJlOgo+ID4gPiA+ IAo+ID4gPiA+IEdUX0dFTiAtPiBJU19HVF9HRU4KPiA+ID4gPiBHVF9HRU5fUkFOR0UgLT4gSVNf R1RfR0VOX1JBTkdFCj4gPiA+ID4gSU5URUxfR0VOIC0+IEdUX0dFTiAoYnV0IGNodXJuIT8pCj4g PiA+IAo+ID4gPiBJIHN0aWxsIHRoaW5rIElOVEVMX0dFTigpIGlzIG5vdCBicmluZ2luZyBtdWNo IGNsYXJpdHkgYW5kIGZvcmNpbmcKPiA+ID4gdGhlIG90aGVyIG1hY3JvcyB0byBoYXZlIHRoZSBJ U18gcHJlZml4Lgo+ID4gCj4gPiBJcyB0aGUgSVNfIHByZWZpeCB0aGF0IGJhZD8KCkkgcGVyc29u YWxseSBkb24ndCBsaWtlIGl0Li4uIGJ1dCBtYXliZSBpdCBpcyBqdXN0IG15IGJhZCBlbmdsaXNo PyEKCjEuIGlmIGdlbiA5CjIuIGlmIGlzIGdlbiA5CjMuIGlmIHRoaXMgaXMgYSBnZW4gOSBwbGF0 Zm9ybQoKSSBsaWtlIG1vcmUgdGhlIG9wdGlvbiAxLi4uCgo+ID4gCj4gPiBJIGFncmVlIG15IGlk ZWEgZG9lcyBub3QgZGVjcmVhc2UgdGhlIGFtb3VudCBvZiBjaHVybiwgc2luY2UgaXQgc2FpZCB0 bwo+ID4gcmVwbGFjZSBJTlRFTF9HRU4gd2l0aCBJTlRFTF9HVF9HRU4uIEJ1dCBpbiB0aGUgbGln aHQgb2YgdGhlIEdUL0RJU1BMQVkKPiA+IHNwbGl0LCBhbmQgaWYgd2UgYWdyZWUgdG8gbGVhdmUg YSBsb3Qgb2YgdGhlIGFyaXRobWV0aWMgY29tcGFyaXNvbiBpbgo+ID4gKGRpYWxpbmcgZG93biBv ZiAiZHJtL2k5MTU6IHJlcGxhY2UgZ2VuIGNoZWNrcyB1c2luZyBvcGVyYXRvcnMgYnkKPiA+IEdU X0dFTi9HVF9HRU5fUkFOR0UiKSwgdGhlbiBpdCBmZWVscyBnb2luZyBiYWNrIHRvIElOVEVMX0lO Rk8oZGV2X3ByaXYpLT5nZW4KPiA+IHRocm91Z2hvdXQgdGhlIGNvZGUgaXMgdW5kb2luZyBzb21l IHdvcmssIGp1c3Qgc28geW91IGNhbiByZW1vdmUgdGhlCj4gPiBJTlRFTF9HRU4gbWFjcm8gaW5z dGVhZCBvZiByZW5hbWluZyBpdCBJTlRFTF9HVF9HRU4uCj4gPiAKPiA+IERvbid0IGtub3csIGl0 J3MgbXkgb3BpbmlvbiBhdCBsZWFzdCBhbmQgbW9yZSBwZW9wbGUgYXJlIHdlbGNvbWUgdG8gY2hp bWUgaW4KPiA+IHdpdGggdGhlaXJzLgo+IAo+IEFueSBvdGhlcnMgdG8gY2hpbWUgaW4gb24gdGhp cz8gSmFuaSwgVmlsbGUsIFJvZHJpZ28/CgpJIGRvbid0IGxpa2UgbWl4ZWQgc3R5bGVzIG11Y2gu IElmIHdlIGRvbid0IGtpbGwgdGhlIG1hY3JvIHdlIHdpbGwgY29udGludWUKaGF2aW5nIG1peGVk IGNhc2VzLgoKU28gSSdtIGluIGZhdm9yIG9mIHRoZSBhcHByb2FjaCBvZiB0aGlzIHNlcmllcyBo ZXJlLgoKVGhhbmtzLApSb2RyaWdvLgoKPiAKPiB0aGFua3MKPiBMdWNhcyBEZSBNYXJjaGkKPiAK PiA+IAo+ID4gUmVnYXJkcywKPiA+IAo+ID4gVHZydGtvCj4gPiAKPiA+IFAuUy4gUmVtaW5kZWQg bWUgb2YgdGhpcyB0YW5nZW50aWFsIGF0dGVtcHQgYXMgd2VsbDoKPiA+IGh0dHBzOi8vcGF0Y2h3 b3JrLmZyZWVkZXNrdG9wLm9yZy9wYXRjaC8yMDYxNjgvLCB3aGljaCBJIHRob3VnaHQgd2FzIGEg Z29vZAo+ID4gd2F5IHRvIG1ha2UgdGhlIGNvZGUgbW9yZSBlbGVnYW50Lgo+ID4gCj4gPiAKPiA+ ID4gPiAKPiA+ID4gPiBUaGlzIGxlYXZlcyBHVCBhbmQgRElTUExBWSBuYW1lc3BhY2VzIGNvbXBs ZXRlbHkgcGFyYWxsZWwgaW4gc3ludGF4IGFuZAo+ID4gPiA+IHNlbWFudGljcy4KPiA+ID4gPiAK PiA+ID4gPiBSZWdhcmRzLAo+ID4gPiA+IAo+ID4gPiA+IFR2cnRrbwo+ID4gPiA+IAo+ID4gPiA+ IAo+ID4gPiA+IAo+ID4gPiA+ID4gCj4gPiA+ID4gPiBSb2RyaWdvIFZpdmkgKDEpOgo+ID4gPiA+ ID4gICAgIGRybS9pOTE1OiBSZW5hbWUgSVNfR0VOIHRvIEdUX1JBTkdFCj4gPiA+ID4gPiAKPiA+ ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9ndHQuYyAgICAgICAgICAgICAgICB8 ICAgNCArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2hhbmRsZXJzLmMg ICAgICAgICAgIHwgICAyICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQv dmdwdS5jICAgICAgICAgICAgICAgfCAgIDQgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfY21kX3BhcnNlci5jICAgICAgICB8ICAgMiArLQo+ID4gPiA+ID4gICAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgICAgICAgICAgIHwgMTQ1ICsrKysrLS0t LQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyAgICAgICAgICAg ICAgIHwgIDUwICstLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aCAgICAgICAgICAgICAgIHwgIDY3ICsrLS0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICAgICB8ICAzMCArLQo+ID4gPiA+ID4gICAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jICAgICAgIHwgICA0ICstCj4gPiA+ID4g PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgICAgfCAgMTAg Ky0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2ZlbmNlX3JlZy5j ICAgICB8ICAxNiArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Z3R0LmMgICAgICAgICAgIHwgIDM2ICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuYyAgfCAgIDIgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jICAgICAgICB8ICAxNSArLQo+ID4gPiA+ID4g ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fdGlsaW5nLmMgICAgICAgIHwgIDEyICst Cj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJvci5jICAgICAg ICAgfCAgNjIgKystLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEu YyAgICAgICAgICAgICAgIHwgMTIwICsrKy0tLS0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcGVyZi5jICAgICAgICAgICAgICB8ICAxNCArLQo+ID4gPiA+ID4gICAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wbXUuYyAgICAgICAgICAgICAgIHwgICA2ICstCj4gPiA+ ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oICAgICAgICAgICAgICAgfCAg IDggKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc3VzcGVuZC5jICAg ICAgICAgICB8ICAyNCArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9z eXNmcy5jICAgICAgICAgICAgIHwgICAyICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9hdG9taWMuYyAgICAgICAgICAgfCAgIDQgKy0KPiA+ID4gPiA+ICAgIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMgICAgICAgICAgICB8ICAgNCArLQo+ID4gPiA+ ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jICAgICAgICAgICAgIHwgIDEy ICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jZGNsay5jICAgICAg ICAgICAgfCAgMjggKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Nv bG9yLmMgICAgICAgICAgICB8ICAgNiArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfY3J0LmMgICAgICAgICAgICAgIHwgIDEyICstCj4gPiA+ID4gPiAgICBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9jc3IuYyAgICAgICAgICAgICAgfCAgIDIgKy0KPiA+ID4gPiA+ ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jICAgICAgICAgICAgICB8ICA1OCAr Ky0tCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5mby5j ICAgICAgfCAgNDYgKy0tCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmMgICAgICAgICAgfCAzMDggKysrKysrKysrLS0tLS0tLS0tCj4gPiA+ID4gPiAgICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICAgICAgICAgICAgfCAgODIgKystLS0K PiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX21zdC5jICAgICAgICAg ICB8ICAgMiArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBsbF9t Z3IuYyAgICAgICAgIHwgIDEwICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCAgICAgICAgICAgICAgfCAgIDIgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jICAgICAgICB8ICA0NCArLS0KPiA+ID4gPiA+ICAg IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiYy5jICAgICAgICAgICAgICB8ICA1MiArLS0K PiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZpZm9fdW5kZXJydW4uYyAg ICB8ICAgOCArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2Z3 LmMgICAgICAgICAgIHwgICA0ICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oYW5nY2hlY2suYyAgICAgICAgfCAgIDYgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2hkY3AuYyAgICAgICAgICAgICB8ICAgMiArLQo+ID4gPiA+ID4gICAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jICAgICAgICAgICAgIHwgIDE4ICstCj4g PiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYyAgICAgICAgICAgICAg fCAgMTQgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAg ICAgICAgICAgICB8ICAzMiArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHZkcy5jICAgICAgICAgICAgIHwgIDE0ICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9tb2NzLmMgICAgICAgICAgICAgfCAgIDggKy0KPiA+ID4gPiA+ICAgIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX292ZXJsYXkuYyAgICAgICAgICB8ICAxMiArLQo+ID4g PiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGFuZWwuYyAgICAgICAgICAgIHwg IDIwICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9waXBlX2NyYy5j ICAgICAgICAgfCAgMTIgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3BtLmMgICAgICAgICAgICAgICB8IDE5NiArKysrKy0tLS0tLQo+ID4gPiA+ID4gICAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMgICAgICAgICAgICAgIHwgIDI2ICstCj4gPiA+ID4g PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgICAgICAgfCAgNjgg KystLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5o ICAgICAgIHwgICA0ICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y dW50aW1lX3BtLmMgICAgICAgfCAgMzIgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3Nkdm8uYyAgICAgICAgICAgICB8ICAxNCArLQo+ID4gPiA+ID4gICAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMgICAgICAgICAgIHwgIDM0ICstCj4gPiA+ID4g PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF90di5jICAgICAgICAgICAgICAgfCAgIDIg Ky0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VjLmMgICAgICAgICAg ICAgICB8ICAgNCArLQo+ID4gPiA+ID4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5j b3JlLmMgICAgICAgICAgIHwgIDYwICsrLS0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3dvcGNtLmMgICAgICAgICAgICB8ICAgOCArLQo+ID4gPiA+ID4gICAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfd29ya2Fyb3VuZHMuYyAgICAgIHwgIDIwICstCj4gPiA+ID4g PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5jICAgfCAgIDIg Ky0KPiA+ID4gPiA+ICAgIC4uLi9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fY29oZXJlbmN5 LmMgICB8ICAgNCArLQo+ID4gPiA+ID4gICAgLi4uL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkx NV9nZW1fY29udGV4dC5jIHwgIDEwICstCj4gPiA+ID4gPiAgICAuLi4vZ3B1L2RybS9pOTE1L3Nl bGZ0ZXN0cy9pOTE1X2dlbV9vYmplY3QuYyAgfCAgMTIgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMv Z3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X3JlcXVlc3QuYyB8ICAgMiArLQo+ID4gPiA+ID4g ICAgLi4uL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfaGFuZ2NoZWNrLmMgIHwgICA4ICst Cj4gPiA+ID4gPiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfbHJjLmMg ICAgfCAgIDIgKy0KPiA+ID4gPiA+ICAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9p bnRlbF91bmNvcmUuYyB8ICAgMiArLQo+ID4gPiA+ID4gICAgLi4uL2RybS9pOTE1L3NlbGZ0ZXN0 cy9pbnRlbF93b3JrYXJvdW5kcy5jICAgIHwgICAyICstCj4gPiA+ID4gPiAgICBkcml2ZXJzL2dw dS9kcm0vaTkxNS92bHZfZHNpLmMgICAgICAgICAgICAgICAgfCAgNDAgKy0tCj4gPiA+ID4gPiAg ICA3MiBmaWxlcyBjaGFuZ2VkLCAxMDAzIGluc2VydGlvbnMoKyksIDEwMDYgZGVsZXRpb25zKC0p Cj4gPiA+ID4gPiAKPiA+ID4gCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwo+ID4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID4gSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==