From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x542.google.com (mail-ed1-x542.google.com [IPv6:2a00:1450:4864:20::542]) by gabe.freedesktop.org (Postfix) with ESMTPS id 78AF96E080 for ; Wed, 23 Jan 2019 11:18:19 +0000 (UTC) Received: by mail-ed1-x542.google.com with SMTP id h15so1385258edb.4 for ; Wed, 23 Jan 2019 03:18:19 -0800 (PST) Date: Wed, 23 Jan 2019 12:18:14 +0100 From: Daniel Vetter Message-ID: <20190123111814.GH3271@phenom.ffwll.local> References: <20190114083937.14822-1-emil.l.velikov@gmail.com> <20190118155844.GI3271@phenom.ffwll.local> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Subject: Re: [igt-dev] [PATCH i-g-t] tests/core_unauth_vs_render: new test for the relaxed DRM_AUTH handling List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Emil Velikov Cc: IGT development , Daniel Vetter List-ID: T24gVHVlLCBKYW4gMjIsIDIwMTkgYXQgMDU6NDQ6MDJQTSArMDAwMCwgRW1pbCBWZWxpa292IHdy b3RlOgo+IE9uIEZyaSwgMTggSmFuIDIwMTkgYXQgMTU6NTgsIERhbmllbCBWZXR0ZXIgPGRhbmll bEBmZndsbC5jaD4gd3JvdGU6Cj4gPgo+ID4gT24gTW9uLCBKYW4gMTQsIDIwMTkgYXQgMDg6Mzk6 MzdBTSArMDAwMCwgRW1pbCBWZWxpa292IHdyb3RlOgo+ID4gPiBGcm9tOiBFbWlsIFZlbGlrb3Yg PGVtaWwudmVsaWtvdkBjb2xsYWJvcmEuY29tPgo+ID4gPgo+ID4gPiBBcyB0aGUgaW5saW5lIGNv bW1lbnQgc2F5cywgdGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRoZSBrZXJuZWwgYWxsb3dzCj4gPiA+ IHVuYXV0aGVudGljYXRlZCBtYXN0ZXIgd2l0aCByZW5kZXIgY2FwYWJsZSwgUkVOREVSX0FMTE9X IGlvY3Rscy4KPiA+ID4KPiA+ID4gVGhlIGtlcm5lbCBjb21taXQgaGFzIGV4dHJhIGRldGFpbHMg d2h5Lgo+ID4gPgo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBFbWlsIFZlbGlrb3YgPGVtaWwudmVsaWtv dkBjb2xsYWJvcmEuY29tPgo+ID4KPiA+IFNvcnJ5IGZvciB0aGUgbGF0ZSByZXBseSwgZ290IGRp c3RyYWN0ZWQgYW5kIGFsbCB0aGF0IDotLwo+ID4KPiBMb29raW5nIGF0IHRoZSByZXBseSBJIHVu ZGVyc3RhbmQgd2h5IDotUAo+IAo+ID4gPiAtLS0KPiA+ID4gIHRlc3RzL2NvcmVfdW5hdXRoX3Zz X3JlbmRlci5jIHwgMTA4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+ID4g IHRlc3RzL21lc29uLmJ1aWxkICAgICAgICAgICAgIHwgICAxICsKPiA+ID4gIDIgZmlsZXMgY2hh bmdlZCwgMTA5IGluc2VydGlvbnMoKykKPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0cy9j b3JlX3VuYXV0aF92c19yZW5kZXIuYwo+ID4gPgo+ID4gPiBkaWZmIC0tZ2l0IGEvdGVzdHMvY29y ZV91bmF1dGhfdnNfcmVuZGVyLmMgYi90ZXN0cy9jb3JlX3VuYXV0aF92c19yZW5kZXIuYwo+ID4g PiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gPiBpbmRleCAwMDAwMDAwMC4uYTdkNzBkNzcKPiA+ ID4gLS0tIC9kZXYvbnVsbAo+ID4gPiArKysgYi90ZXN0cy9jb3JlX3VuYXV0aF92c19yZW5kZXIu Ywo+ID4gPiBAQCAtMCwwICsxLDEwOCBAQAo+ID4gPiArLyoKPiA+ID4gKyAqIENvcHlyaWdodCAy MDE4IENvbGxhYm9yYSwgTHRkCj4gPiA+ICsgKgo+ID4gPiArICogUGVybWlzc2lvbiBpcyBoZXJl YnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEKPiA+ ID4gKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9u IGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCj4gPiA+ICsgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2Fy ZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCj4gPiA+ ICsgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlz dHJpYnV0ZSwgc3VibGljZW5zZSwKPiA+ID4gKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUg U29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQo+ID4gPiArICogU29m dHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29u ZGl0aW9uczoKPiA+ID4gKyAqCj4gPiA+ICsgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBh bmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0Cj4gPiA+ICsgKiBw YXJhZ3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwg cG9ydGlvbnMgb2YgdGhlCj4gPiA+ICsgKiBTb2Z0d2FyZS4KPiA+ID4gKyAqCj4gPiA+ICsgKiBU SEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkg S0lORCwgRVhQUkVTUyBPUgo+ID4gPiArICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElN SVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCj4gPiA+ICsgKiBGSVRO RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8g RVZFTlQgU0hBTEwKPiA+ID4gKyAqIFRIRSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJF IExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4gPiA+ICsgKiBMSUFCSUxJ VFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwg QVJJU0lORwo+ID4gPiArICogRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUg U09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUwo+ID4gPiArICogSU4gVEhFIFNP RlRXQVJFLgo+ID4gPiArICoKPiA+ID4gKyAqIEF1dGhvcnM6Cj4gPiA+ICsgKiAgIEVtaWwgVmVs aWtvdiA8ZW1pbC52ZWxpa292QGNvbGxhYm9yYS5jb20+Cj4gPiA+ICsgKi8KPiA+ID4gKwo+ID4g PiArLyoKPiA+ID4gKyAqIFRlc3RjYXNlOiBSZW5kZXIgY2FwYWJsZSwgdW5hdXRoZW50aWNhdGVk IG1hc3RlciBkb2Vzbid0IHRocm93IC1FQUNDRVMgZm9yCj4gPiA+ICsgKiBEUk1fUkVOREVSX0FM TE9XIGlvY3Rscy4KPiA+ID4gKyAqLwo+ID4gPiArCj4gPiA+ICsjaW5jbHVkZSAiaWd0LmgiCj4g PiA+ICsjaW5jbHVkZSA8dW5pc3RkLmg+Cj4gPiA+ICsjaW5jbHVkZSA8c3RkbGliLmg+Cj4gPiA+ ICsjaW5jbHVkZSA8c3RkaW50Lmg+Cj4gPiA+ICsjaW5jbHVkZSA8c3RkaW8uaD4KPiA+ID4gKyNp bmNsdWRlIDxzdHJpbmcuaD4KPiA+ID4gKyNpbmNsdWRlIDxzaWduYWwuaD4KPiA+ID4gKyNpbmNs dWRlIDxmY250bC5oPgo+ID4gPiArI2luY2x1ZGUgPGludHR5cGVzLmg+Cj4gPiA+ICsjaW5jbHVk ZSA8ZXJybm8uaD4KPiA+ID4gKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgo+ID4gPiArI2luY2x1ZGUg PHN5cy9pb2N0bC5oPgo+ID4gPiArI2luY2x1ZGUgPHN5cy90aW1lLmg+Cj4gPiA+ICsjaW5jbHVk ZSA8c3lzL3BvbGwuaD4KPiA+ID4gKyNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KPiA+ID4gKyNp bmNsdWRlICJkcm0uaCIKPiA+ID4gKwo+ID4gPiArSUdUX1RFU1RfREVTQ1JJUFRJT04oIkNhbGwg WFhYIGZyb20gdW5hdXRoZW50aWNhdGVkIG1hc3RlciBkb2Vzbid0IHJldHVybiAtRUFDQ0VTLiIp Owo+ID4gPiArCj4gPiA+ICtzdGF0aWMgdm9pZCB0ZXN0X3VuYXV0aF92c19yZW5kZXIoaW50IG1h c3RlcikKPiA+ID4gK3sKPiA+ID4gKyAgICAgaW50IHNsYXZlOwo+ID4gPiArICAgICBpbnQgcHJp bWVfZmQ7Cj4gPiA+ICsgICAgIHVpbnQzMl90IGhhbmRsZTsKPiA+ID4gKwo+ID4gPiArICAgICAv Kgo+ID4gPiArICAgICAgKiBUaGUgc2Vjb25kIG9wZW4oKSBoYXBwZW5zIHdpdGhvdXQgQ0FQX1NZ U19BRE1JTiwgdGh1cyBpdAo+ID4gPiArICAgICAgKiB3aWxsIG5vdCBiZSBhdXRoZW50aWNhdGVk Lgo+ID4gPiArICAgICAgKi8KPiA+ID4gKyAgICAgc2xhdmUgPSBkcm1fb3Blbl9kcml2ZXIoRFJJ VkVSX0FOWSk7IC8vIFhYWDogcmVsYXRlIHRvIHRoZSBtYXN0ZXIgZ2l2ZW4/Cj4gPiA+ICsgICAg IGlndF9yZXF1aXJlKHNsYXZlID49IDApOwo+ID4gPiArCj4gPiA+ICsgICAgIC8qIElzc3Vpbmcg dGhlIGZvbGxvd2luZyBpb2N0bCB3aWxsIGZhaWwsIG5vIGRvdWJ0IGFib3V0IGl0LiAqLwo+ID4g PiArICAgICBpZ3RfYXNzZXJ0KGRybVByaW1lRkRUb0hhbmRsZShzbGF2ZSwgcHJpbWVfZmQsICZo YW5kbGUpIDwgMCk7Cj4gPiA+ICsKPiA+ID4gKyAgICAgLyoKPiA+ID4gKyAgICAgICogVXBkYXRl ZCBrZXJuZWxzIGFsbG93IHJlbmRlciBjYXBhYmxlLCB1bmF1dGhlbnRpY2F0ZWQKPiA+ID4gKyAg ICAgICogbWFzdGVyIHRvIGlzc3VlIERSTV9BVVRIIGlvY3RscyAobGlrZSB0aGUgYWJvdmUpLCBh cyBsb25nIGFzCj4gPiA+ICsgICAgICAqIHRoZXkgYXJlIGFubm90YXRlZCBhcyBEUk1fUkVOREVS X0FMTE9XLgo+ID4gPiArICAgICAgKgo+ID4gPiArICAgICAgKiBPbGRlciBvbmVzIHRocm93IC1F QUNDRVMuCj4gPiA+ICsgICAgICAqLwo+ID4gPiArICAgICBpZ3RfYXNzZXJ0KGVycm5vICE9IEVB Q0NFUyk7Cj4gPiA+ICsKPiA+ID4gKyAgICAgY2xvc2Uoc2xhdmUpOwo+ID4KPiA+IEhtIEkgdGhp bmsgd2UgbmVlZCBhIG1vcmUgc3RyaWN0IHRlc3RjYXNlIGhlcmUuIFdoYXQgSSBsaWtlIGRvaW5n IGlzCj4gPiBkb2luZyB0aGUgZXhhY3Qgc2FtZSBpb2N0bCB0d2ljZSwgb25jZSB3aGVyZSBpdCBz aG91bGQgZmFpbCwgYW5kIG9uY2UKPiA+IHdoZXJlIGl0IGRvZXNuJ3QgZmFpbC4gV2UgYWxzbyBu ZWVkIHRvIGNoZWNrIGZvciByZW5kZXJfYWxsb3cgaGVyZQo+ID4gc29tZWhvdywgb3IgdGhpcyB3 aWxsIGZhaWwgb24gc29tZSBkcml2ZXJzLiBFeGNlcHQgZm9yIHRoaXMgY2FzZSBoZXJlIHdlCj4g PiB3YW50IGl0IHRvIHN1Y2NlZWQgYm90aCB0aW1lcywgYnV0IG9uY2UgYXV0aGVudGljYXRlZCBh bmQgb25jZSB3aGVyZSB3ZSd2ZQo+ID4gbWFkZSBzdXJlIHdlJ3JlIG5vdCBhdXRoZW50aWNhdGVk Lgo+ID4KPiA+IEkgdGhpbmsgdGhlIGZvbGxvd2luZyBzaG91bGQgZ2l2ZSB1cyBhIHNvbGlkIHRl c3RjYXNlOgo+ID4KPiA+IDEuIGlndF9yZXF1aXJlKGdldGNhcChEUk1fQ0FQX1BSSU1FKSkKPiA+ Cj4gPiAyLiBPcGVuIHRoZSBwcmltYXJ5IG5vZGUsIG1ha2Ugc3VyZSB3ZSdyZSBhdXRoZW50aWNh dGVkIChyZXVzaW5nCj4gPiBjaGVja19hdXRoIGZyb20gY29yZV9nZXRfY2xpZW50X2F1dGggc2hv dWxkIGhlbHApLiBNYWtlIHN1cmUgYSByZW5kZXIgbm9kZQo+ID4gZm9yIHRoaXMgcHJpbWFyeSBu b2RlIGV4aXN0cywgaWd0X3NraXAgaWYgdGhhdCdzIG5vdCB0aGUgY2FzZS4gTWlnaHQgbmVlZAo+ ID4gYSBuZXcgbGlicmFyeSBmdW5jdGlvbi4gV2UgbmVlZCB0aGlzIHRvIGhhbmRsZSByZW5kZXIt bGVzcyBkcml2ZXJzLCB3aGljaAo+ID4gaXMgdGhlIHN0YW5kYXJkIGZvciBrbXMtb25seSBkcm0g ZHJpdmVycy4KPiA+Cj4gSG93IGRvIHlvdSBlbnZpc2lvbiB0aGUgY2FyZCogdG8gcmVuZGVyRCog aGVscGVyPyBTaG91bGQgSSBnbyB3aXRoIHRoZQo+IG1pbm9yKHJkZXYpICYgMHg4MCBoYWNrLCB1 c2UgdGhlIGxpYmRybSBoZWxwZXJzIG9yIHNvbWV0aGluZyBlbHNlPwoKSSB0aGluayBpdCdzIG1p bm9yKHJkZXYpICsgMHg4MCwgYnV0IHllYWggSSB0aGluayB0aGF0J3Mgb2ZmaWNpYWwgdWFwaSBu b3cKOi0vCgo+IEEgc2ltcGxlIGRybV9vcGVuX2RyaXZlcigpIG9wZW5zIC9kZXYvZHJpL2NhcmQw IHR3aWNlLCB3aGVuIHVzaW5nIHRoZQo+IGRybV9vcGVuX2RyaXZlcl9tYXN0ZXIgd2UgZW5kIHVw IHdpdGggYW4gZXh0cmEgb3BlbigpLgo+IFRoZSBrZXJuZWwgZHJtX2dldGNsaWVudCgpIHdhcyBo b2xsb3dlZC1vdXQgc2V2ZXJlbHkgKGNvbW1pdAo+IDcxOTUyNGRmNGEyZTQ4ZmE3Y2EzYWQxNjk3 ZmQ5YTdmODVlYzhhZDMpLCBzbyBJJ20gbm90IHN1cmUgaWYvaG93Cj4gcmVsaWFibHkgd2UgY2Fu IHVzZSB0aGF0LgoKSSB3cm90ZSB0aGF0IGlndCB0byB2YWxpZGF0ZSB0aGUgaG9sbG93ZWQtb3V0 IGdldGNsaWVudCwgYW5kIGl0J3MgdXNlZCBieQpsaWJ2YSAoc29tZWhvdyBhbGwgdGhlc2UgaGFj a3MgYXJlIHVzZWQgYnkgbGlidmEpIHRvIGNoZWNrIHdoZXRoZXIgaXQncwphdXRoZW50aWNhdGVk LiBTbyBzaG91bGQgYmUgYWNjdXJhdGUgSSBob3BlLgoKPiBUaGF0J3Mgd2h5IEkgdXNlZCBpZ3Rf ZGVidWdmc19kdW1wKCkgdG8gcHJpbnQgdGhlIHN0YXRlIDstKQoKWWVhaCwgYnV0IGZvciBpZ3Qg SSB3YW50IHRlc3RzIHRoYXQgY2hlY2sgdGhlbXNlbHZlcywgbm90Cmh1bWFucy1pbi10aGUtbG9v cCBzdHVmZi4gVGhlIGludGVyYWN0aXZlL2RlYnVnIHN0dWZmIGlzIHVzZWZ1bCBmb3IgaHVtYW5z CnRvIGRlYnVnIHdoZW4gdGhpbmdzIGZhaWwuCgo+ID4gMy4gRkQySEFORExFIHdpdGggLTEgYXMg aGFuZGxlIHNob3VsZCBhbHdheXMgZmFpbCB3aXRoIEVCQURGLCBzbyB3ZSBjYW4KPiA+IGNoZWNr IGZvciB0aGF0IGV4YWN0IGVycm9yLiBJZiB3ZSBqdXN0IGNoZWNrIGZvciBhbnl0aGluZyBnb2lu ZyB3cm9uZywKPiA+IHdlJ2xsIGNhdGNoIG11Y2ggZmV3ZXIgYnVncy4KPiA+Cj4gT3VjaCwgY291 bGQgc3dlYXIgSSB1c2VkIC0xIGF0IHNvbWUgcG9pbnQuCj4gCj4gV2h5IGNoZWNrIGZvciBFQkFE RiBpbnN0ZWFkIG9mIEVBQ0NFUz8gQWZ0ZXIgYWxsIHdlJ3JlIGludGVyZXN0ZWQgaWYKPiB0aGUg cGVybWlzc2lvbiBpcyBiZWluZyBoYW5kbGVkIGNvcnJlY3RseSBhbmQgZXZlcnl0aGluZyBlbHNl IGlzCj4gZXh0cmEuCj4gCj4gPiA0LiBPcGVuIHRoZSBkZXZpY2UgYXMgbm9uLXJvb3QsIG1ha2Ug c3VyZSB3ZSBhcmUgX25vdF8gYXV0aGVudGljYXRlZAo+ID4gKHVzaW5nIGNoZWNrX2F1dGgpLgo+ ID4KPiA+IDUuIEZEMkhBTkRMRSBsaWtlIGluIDMsIGZhaWwgaWYgd2UgZ2V0IGFueXRoaW5nIGVs c2UgdGhhbiBFQkFERi4KPiA+Cj4gT3IgcGVyaGFwcyBrZWVwIHRoZSBFQkFERiBmb3IgMyBhbmQg dXNlIEVBQ0NFUyBmb3IgaGVyZT8KClRoZSBpZGVhIGJlaGluZCBFQkFERiBpcyB0aGF0IHlvdSBj YW4gb25seSBnZXQgdGhhdCBmcm9tIHRoZSBpb2N0bAppbXBsZW1lbnRhdGlvbiwgd2hpY2ggbWVh bnMgdGhlIGNvcmUgZHJtIGF1dGggY2hlY2tzIGhhdmUgYmVlbiBwYXNzZWQKYWxyZWFkeS4gU28g aXQncyBwb3NpdGl2ZSBjb25maXJtYXRpb24gdGhhdCB0aGUgY2hlY2tzIHdvcmsgYXMgaW50ZW5k ZWQuCk5vdyBpZGVhbGx5IHdlJ2QgdGVzdCBvbmUgY2FzZSB3aGVyZSB3ZSBnZXQgc3VjY2VzcyBh Z2FpbnN0IG9uZSBjYXNlIHdoZXJlCndlIGdldCBhIHNwZWNpZmljIGZhaWx1cmUgKHNvIHRoYXQg ZXZlbiB3aGVuIHNvbWVvbmUgY29tcGxldGVseSByZW9yZGVycwp0aGUgaW9jdGwgaW1wbGVtZW50 YXRpb24gd2UncmUgc3RpbGwgaGl0dGluZyB0aGUgcmlnaHQgY2FzZSBhbmQgdGhlIHRlc3QKc3Rp bGwgdGVzdHMgd2hhdCBpdCBzaG91bGQgdGVzdCkuIEJ1dCBJIGNvdWxkbid0IGNvbWUgdXAgd2l0 aCBzb21ldGhpbmcKbGlrZSB0aGF0OgoKLSBDcmVhdGluZyBhIGRtYS1idWYgdGhhdCdzIGd1YXJh bnRlZWQgdG8gd29yayBmb3IgaW1wb3J0aW5nIG91dCBvZiB0aGluCiAgYWlyIGlzIGhhcmQuCgot IFdpdGggeW91ciBrZXJuZWwgY2hhbmdlIF9ldmVyeXRoaW5nXyB3b3JrcywgYXQgbGVhc3QgaWYg d2UgaGF2ZSBhIHJlbmRlcgogIG5vZGUgY2FwYWJsZSBkcml2ZXIuIFNvIHRoZXJlJ3Mgbm90IHJl YWxseSBhbnkga25vd24tdG8tZmFpbCBjYXNlIGxlZnQKICBhbnltb3JlLgogCkJ1dCB5ZWFoIGl0 J3Mgbm90IHBlcmZlY3QuCgpJIGd1ZXNzIGlmIHlvdSB3YW50IHRvIGNoZWNrIGZvciAtRUFDQ0VT UyBtYWtlIGEgMm5kIHRlc3QgKG9yIG1lcmdlIHRoZW0pCndoaWNoIG1ha2VzIHN1cmUgdGhhdCBp ZiB3ZSBoYXZlIGEgbm9uLXJlbmRlciBub2RlLCB0aGVuIHdlIGdldCBhbgpFQUNDRVNTLiBXb3Vs ZCBtZWFuIGEgcXVpY2sgdGVzdHJ1biBvbiBhIGRpc3BsYXktb25seSBkcm0gZHJpdmVyICh0aG9z ZQphcmUgYWxsIG5vbi1yZW5kZXJub2RlKSB0byBtYWtlIHN1cmUgaXQgd29ya3MuIEFuZCB3b3Vs ZCBiZSBhbiBldmVuIGJldHRlcgp0ZXN0IEkgdGhpbmsuCgo+IAo+ID4KPiA+ID4gK30KPiA+ID4g Kwo+ID4gPiArLyoKPiA+ID4gKyAqIEJ5IGRlZmF1bHQgSUdUIGlzIGV4ZWN1dGVkIGFzIHJvb3Qu Cj4gPgo+ID4gSXQncyBub3QganVzdCB0aGUgZGVmYXVsdCwgaXQncyBhIGhhcmQgcmVxdWlyZW1l bnQuIFRoZSBydW5uZXIgaGFzIGNoZWNrcwo+ID4gZm9yIG90aGVyIGRybSBjbGllbnRzIGFuZCB3 aGV0aGVyIHlvdSdyZSByb290IGFuZCBiYWlscyBvdXQgaWYgdGhhdCdzIG5vdAo+ID4gdGhlIGNh c2UuIExvdHMmbG90cyBvZiBpZ3RzIGJyZWFrIGlmIHlvdSBydW4gdGhlbSBhcyBub24tcm9vdCBv ciB3aXRoCj4gPiBvdGhlciBkcm0gY2xpZW50cyBydW5uaW5nLiBPbmx5IHRoaW5nIHRoYXQncyBh bGxvd2VkIGlzIGVudW1lcmF0aW5nCj4gPiBzdWJ0ZXN0cyAoYmVjYXVzZSB3ZSBuZWVkIHRoYXQg b24gb3VyIGJ1aWxkIG1hY2hpbmVzIHRvIGdlbmVyYXRlIHRoZQo+ID4gdGVzdGxpc3RzKS4KPiA+ Cj4gPiB0bGRyOyBQbGVhc2UgZm9sZCBpbi4KPiA+Cj4gU3VyZSB3aWxsIGZvbGQuCj4gCj4gTW9k dWxvIGFuIGV4Y2VwdGlvbiBvciB0d28sIElHVCB0ZXN0cyBvbmx5IHJlcXVpcmUgZGVidWdmcyAo d3JpdGUgcGVybQo+IGZvciBpOTE1KSBhbmQgdXNlciBpbiB0aGUgdmlkZW8gZ3JvdXAgKHRvIG9w ZW4gdGhlIG5vZGUpLgo+IFRoYXQncyBiYXNlZCBvbiBhIHF1aWNrIGxvb2svdGVzdC4KPiAKPiBT aW5jZSBmZXcgZGlzdHJpYnV0aW9ucyBkb24ndCBydW4gdGhlIGRpc3BsYXkgc2VydmVyIGFuZC9v ciBjb21wb3NpdG9yCj4gYXMgcm9vdCwgaWRlYWxseSBJR1Qgd2lsbCBnZXQgcm9vdC1mcmVlIGF0 IHNvbWUgcG9pbnQuCj4gQWtlIElHVCB0ZXN0aW5nIHdpbGwgYmUgY2xvc2VyIHRvIHJlYWwgd29y bGQgdXNlLWNhc2VzLgoKSUdUIGlzbnQgbGlrZSBwaWdsaXQsIG1vc3Qgb2YgdGhlIHRlc3RzIGNo ZWNrIGZvciBjb3JuZXIgY2FzZXMgd2hlcmUgeW91CnJlYWxseSBjYW4ndCBoYXZlIGFueXRoaW5n IGVsc2UgdG91Y2hpbmcgdGhlIGRpc3BsYXkgKGUuZy4gYW55dGhpbmcga21zKS4KQmVpbmcgcm9v dCBpcyB0aGUgZWFzaWVzdCB3YXkgdG8gY2hlY2sgZm9yIHRoYXQgKGluIGRlYnVnZnMsIGlmIHRo ZXJlJ3MKYW55IG90aGVyIGRybSBjbGllbnQgdGhlIGlndCBydW5uZXIgY29tcGxhaW5zJnF1aXRz KS4gSSBndWVzcyB0aGVyZSdzIHNvbWUKaWd0cyB3aGljaCBjYW4gYmUgcnVuIGxpa2UgcGlnbGl0 cywgYnV0IHRob3NlIGFyZSB0aGUgcmFyZSBleGNlcHRpb25zLgoKTm93IHRoZSBlbnRpcmUgInJ1 biBjb21wb3NpdG9yIGFzIG5vbi1yb290IiBidXNpbmVzcyBpcyBhIGdvb2QgcG9pbnQuIFdlCmRv IGhhdmUgc29tZSBpZ3RzIHRoYXQgZHJvcCBDQVBfU1lTX0FETUlOIChzZWUgaWd0X2Ryb3Bfcm9v dCgpKSwgYnV0IG5vbmUKdGhhdCBtYWtlIHN1cmUgdGhpcyBob2xkcyBmb3Iga21zL2NvcmUgZnVu Y3Rpb25hbGl0eS4gSXQncyBqdXN0IGEgZmV3Cmk5MTUtZ2VtIHRlc3RzLiBXb3VsZCBiZSBhIGdv b2QgZ2FwIHRvIGZpbGwgdGhvdWdoLiBJIHRoaW5rIGZvciB0aGUKbm9uLXJlbmRlcm5vZGUgRUFD Q0VTUyB0ZXN0IHdlJ2xsIG5lZWQgdGhhdCAoc2luY2Ugcm9vdCBjYW4gZG8gd2hhdGV2ZXIpLgoK PiA+ID4gQEAgLTEsNSArMSw2IEBACj4gPiA+ICB0ZXN0X3Byb2dzID0gWwo+ID4gPiAgICAgICAn Y29yZV9hdXRoJywKPiA+ID4gKyAgICAgJ2NvcmVfdW5hdXRoX3ZzX3JlbmRlcicsCj4gPiA+ICAg ICAgICdjb3JlX2dldF9jbGllbnRfYXV0aCcsCj4gPgo+ID4gSSB0aGluayBpdCB3b3VsZCBtYWtl IHNlbnNlIHRvIHB1dCBhbGwgdGhlIGF1dGggdGVzdHMgaW50byBjb3JlX2F1dGgsCj4gPiB0b2dl dGhlciB3aXRoIGNvcmVfZ2V0X2NsaWVudF9hdXRoLiBUaGF0IHdheSB3ZSBjYW4gYWxzbyByZXVz ZSB0aGUKPiA+IGNoZWNrX2F1dGggZnVuY3Rpb24gd2l0aG91dCBjb3B5cGFzdGluZyBpdC4KPiA+ Cj4gQ29uc2lkZXJpbmcgbXkgbHVjaywgSSdtIHdlYXJ5IHRoYXQgY29tYmluaW5nIHRoaW5ncyB3 aWxsIG9wZW4gYW5vdGhlcgo+IGNhbiBvZiB3b3Jtcy4KPiBEbyB5b3UgbWluZCBpZiBJIGtlZXAg dGhlIHRlc3Qgc2VwYXJhdGUsIHNvIHRoYXQgdGhlIGtlcm5lbCBmaXggaXNuJ3QgYmxvY2tlZD8K PiAKPiBGb3IgZXhhbXBsZSwgdXNpbmcgZHJtX29wZW5fZHJpdmVyX21hc3RlciAoYXMgc2VlbiBp biBjb3JlX2F1dGgpIGZvcgo+IHRoZSB1bmF1dGhfdnNfcmVuZGVyIHRlc3QgZGlkIG5vdCBnbyB3 ZWxsLgo+IE90aGVyIGludGVyZXN0aW5nIGlzc3VlcyBpbmNsdWRlLCBpZ3RfZm9yayBhbmQgaWd0 X3NraXAqIChpbXBsaWNpdAo+IGhpZGRlbiBpbiB0aGUgZHJtX29wZW5fZHJpdmVyIG1hemUpIGNv bmZsaWN0cy4KCkhtLCBzaG91bGQgd29yay4gSSBqdXN0IHdhbnRlZCB0byBhdm9pZCBjb3B5cGFz dGVpbmcgdGhlIGNoZWNrX2F1dGgKZnVuY3Rpb24uIFlvdSBuZWVkIHRvIGJlIHNvbWV3aGF0IGNh cmVmdWwgd2l0aCBtZXJnaW5nIHRoZW0gdGhvdWdoLCBuZWVkcwphbiBpZ3Rfc3VidGVzdF9ncm91 cC4gSSBjYW4gdHlwZSB0aGUgcHJlcCBwYXRjaC4gT3IgZm9sbG93IHVwJnJlYmFzZSBvbmNlCnRo aXMgaGFzIGxhbmRlZCwgaWYgeW91IHByZWZlci4KLURhbmllbAotLSAKRGFuaWVsIFZldHRlcgpT b2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBt YWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==