From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: Re: [Intel-gfx] [PATCH v3 01/40] drm: hdcp2.2 authentication msg definitions Date: Mon, 14 May 2018 20:53:53 +0530 Message-ID: <5e1f6005-8fc9-20b5-6f69-e062de535de3@intel.com> References: <1522763873-23041-1-git-send-email-ramalingam.c@intel.com> <1522763873-23041-2-git-send-email-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "Shankar, Uma" , "intel-gfx@lists.freedesktop.org" , "dri-devel@lists.freedesktop.org" , "seanpaul@chromium.org" , "daniel@ffwll.ch" , "chris@chris-wilson.co.uk" , "jani.nikula@linux.intel.com" , "Winkler, Tomas" , "Usyskin, Alexander" Cc: "Vivi, Rodrigo" List-Id: dri-devel@lists.freedesktop.org VGhhbmsgeW91IGZvciB0aGUgcmV2aWV3IGNvbW1lbnRzIFVtYSBTaGFua2FyIQoKCk9uIFdlZG5l c2RheSAwOSBNYXkgMjAxOCAwMzozMSBQTSwgU2hhbmthciwgVW1hIHdyb3RlOgo+Cj4+IC0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+IEZyb206IEludGVsLWdmeCBbbWFpbHRvOmludGVsLWdm eC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9wLm9yZ10gT24gQmVoYWxmIE9mCj4+IFJhbWFsaW5n YW0gQwo+PiBTZW50OiBUdWVzZGF5LCBBcHJpbCAzLCAyMDE4IDc6MjcgUE0KPj4gVG86IGludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmc7IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmc7Cj4+IHNlYW5wYXVsQGNocm9taXVtLm9yZzsgZGFuaWVsQGZmd2xsLmNoOyBjaHJpc0BjaHJp cy13aWxzb24uY28udWs7Cj4+IGphbmkubmlrdWxhQGxpbnV4LmludGVsLmNvbTsgV2lua2xlciwg VG9tYXMgPHRvbWFzLndpbmtsZXJAaW50ZWwuY29tPjsKPj4gVXN5c2tpbiwgQWxleGFuZGVyIDxh bGV4YW5kZXIudXN5c2tpbkBpbnRlbC5jb20+Cj4+IENjOiBWaXZpLCBSb2RyaWdvIDxyb2RyaWdv LnZpdmlAaW50ZWwuY29tPgkKPj4gU3ViamVjdDogW0ludGVsLWdmeF0gW1BBVENIIHYzIDAxLzQw XSBkcm06IGhkY3AyLjIgYXV0aGVudGljYXRpb24gbXNnIGRlZmluaXRpb25zCj4+Cj4+IFRoaXMg cGF0Y2ggZGVmaW5lcyB0aGUgaGRjcDIuMiBwcm90b2NvbCBtZXNzYWdlcyBmb3IgdGhlCj4gRHJv cCByZWR1bmRhbnQgInRoZSIgYW5kIG9uZSBvZiB0aGUgaGRjcDIuMi4gTm90IHJlcXVpcmVkLgpv awo+Cj4+IEhEQ1AyLjIgYXV0aGVudGljYXRpb24uCj4+Cj4+IHYyOgo+PiAgIGJpdF9maWVsZHMg YXJlIHJlbW92ZWQuIEluc3RlYWQgYml0bWFza2luZyB1c2VkLiBbVG9tYXMgYW5kIEphbmldCj4+ ICAgcHJlZml4IEhEQ1BfMl8yXyBpcyBhZGRlZCB0byB0aGUgbWFjcm9zLiBbVG9tYXNdCj4+IHYz Ogo+PiAgIE5vIENoYW5nZXMuCj4+Cj4+IFNpZ25lZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFt YWxpbmdhbS5jQGludGVsLmNvbT4KPj4gLS0tCj4+IGluY2x1ZGUvZHJtL2RybV9oZGNwLmggfCAx ODMKPj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ PiAxIGZpbGUgY2hhbmdlZCwgMTgzIGluc2VydGlvbnMoKykKPj4KPj4gZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvZHJtL2RybV9oZGNwLmggYi9pbmNsdWRlL2RybS9kcm1faGRjcC5oIGluZGV4Cj4+IDU2 MmZhN2RmMjYzNy4uNWUwYTVlZDFhMDhlIDEwMDY0NAo+PiAtLS0gYS9pbmNsdWRlL2RybS9kcm1f aGRjcC5oCj4+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9oZGNwLmgKPj4gQEAgLTM4LDQgKzM4LDE4 NyBAQAo+PiAjZGVmaW5lIERSTV9IRENQX0REQ19CU1RBVFVTCQkJMHg0MQo+PiAjZGVmaW5lIERS TV9IRENQX0REQ19LU1ZfRklGTwkJCTB4NDMKPj4KPj4gKyNkZWZpbmUgRFJNX0hEQ1BfMV80X1NS TV9JRAkJCTB4OAo+PiArI2RlZmluZSBEUk1fSERDUF8xXzRfVlJMX0xFTkdUSF9TSVpFCQkzCj4+ ICsjZGVmaW5lIERSTV9IRENQXzFfNF9EQ1BfU0lHX1NJWkUJCTQwCj4+ICsKPj4gKy8qKgo+PiAr ICogUHJvdG9jb2wgbWVzc2FnZSBkZWZpbml0aW9uIGZvciBIRENQMi4yIHNwZWNpZmljYXRpb24g ICovCj4gTXVsdGkgTGluZSBjb21tZW50IHN0eWxlIG5vdCBuZWVkZWQgaGVyZS4KT2sKPgo+PiAr Cj4+ICsjZGVmaW5lIEhEQ1BfU1RSRUFNX1RZUEUwCQkJMHgwMAo+PiArI2RlZmluZSBIRENQX1NU UkVBTV9UWVBFMQkJCTB4MDEKPj4gKwo+PiArLyogSERDUDIuMiBNc2cgSURzICovCj4+ICsjZGVm aW5lIEhEQ1BfMl8yX05VTExfTVNHCQkJMQo+PiArI2RlZmluZSBIRENQXzJfMl9BS0VfSU5JVAkJ CTIKPj4gKyNkZWZpbmUgSERDUF8yXzJfQUtFX1NFTkRfQ0VSVAkJCTMKPj4gKyNkZWZpbmUgSERD UF8yXzJfQUtFX05PX1NUT1JFRF9LTQkJNAo+PiArI2RlZmluZSBIRENQXzJfMl9BS0VfU1RPUkVE X0tNCQkJNQo+PiArI2RlZmluZSBIRENQXzJfMl9BS0VfU0VORF9IUFJJTUUJCTcKPj4gKyNkZWZp bmUgSERDUF8yXzJfQUtFX1NFTkRfUEFSSU5HX0lORk8JCTgKPiBUeXBvIGluIFBhaXJpbmcKRml4 ZWQKPgo+PiArI2RlZmluZSBIRENQXzJfMl9MQ19JTklUCQkJOQo+PiArI2RlZmluZSBIRENQXzJf Ml9MQ19TRU5EX0xQUklNRQkJCTEwCj4+ICsjZGVmaW5lIEhEQ1BfMl8yX1NLRV9TRU5EX0VLUwkJ CTExCj4+ICsjZGVmaW5lIEhEQ1BfMl8yX1JFUF9TRU5EX1JFQ1ZJRF9MSVNUCQkxMgo+PiArI2Rl ZmluZSBIRENQXzJfMl9SRVBfU0VORF9BQ0sJCQkxNQo+PiArI2RlZmluZSBIRENQXzJfMl9SRVBf U1RSRUFNX01BTkFHRQkJMTYKPj4gKyNkZWZpbmUgSERDUF8yXzJfUkVQX1NUUkVBTV9SRUFEWQkJ MTcKPj4gKyNkZWZpbmUgSERDUF8yXzJfRVJSQVRBX0RQX1NUUkVBTV9UWVBFCQk1MAo+PiArCj4+ ICsjZGVmaW5lIEhEQ1BfMl8yX1JUWF9MRU4JCQk4Cj4+ICsjZGVmaW5lIEhEQ1BfMl8yX1JSWF9M RU4JCQk4Cj4+ICsKPj4gKyNkZWZpbmUgSERDUF8yXzJfS19QVUJfUlhfTU9EX05fTEVOCQkxMjgK Pj4gKyNkZWZpbmUgSERDUF8yXzJfS19QVUJfUlhfRVhQX0VfTEVOCQkzCj4+ICsjZGVmaW5lIEhE Q1BfMl8yX0tfUFVCX1JYX0xFTgo+PiAJKEhEQ1BfMl8yX0tfUFVCX1JYX01PRF9OX0xFTiArIFwK Pj4gKwo+PiBIRENQXzJfMl9LX1BVQl9SWF9FWFBfRV9MRU4pCj4+ICsKPj4gKyNkZWZpbmUgSERD UF8yXzJfRENQX0xMQ19TSUdfTEVOCQkzODQKPj4gKwo+PiArI2RlZmluZSBIRENQXzJfMl9FX0tQ VUJfS01fTEVOCQkJMTI4Cj4+ICsjZGVmaW5lIEhEQ1BfMl8yX0VfS0hfS01fTV9MRU4JCQkoMTYg KyAxNikKPj4gKyNkZWZpbmUgSERDUF8yXzJfSF9QUklNRV9MRU4JCQkzMgo+PiArI2RlZmluZSBI RENQXzJfMl9FX0tIX0tNX0xFTgkJCTE2Cj4+ICsjZGVmaW5lIEhEQ1BfMl8yX1JOX0xFTgkJCQk4 Cj4+ICsjZGVmaW5lIEhEQ1BfMl8yX0xfUFJJTUVfTEVOCQkJMzIKPj4gKyNkZWZpbmUgSERDUF8y XzJfRV9ES0VZX0tTX0xFTgkJCTE2Cj4+ICsjZGVmaW5lIEhEQ1BfMl8yX1JJVl9MRU4JCQk4Cj4+ ICsjZGVmaW5lIEhEQ1BfMl8yX1NFUV9OVU1fTEVOCQkJMwo+PiArI2RlZmluZSBIRENQXzJfMl9M UFJJTUVfSEFMRl9MRU4JCShIRENQXzJfMl9MX1BSSU1FX0xFTiAvIDIpCj4+ICsjZGVmaW5lIEhE Q1BfMl8yX1JFQ0VJVkVSX0lEX0xFTgkJRFJNX0hEQ1BfS1NWX0xFTgo+PiArI2RlZmluZSBIRENQ XzJfMl9NQVhfREVWSUNFX0NPVU5UCQkzMQo+PiArI2RlZmluZSBIRENQXzJfMl9SRUNFSVZFUl9J RFNfTUFYX0xFTgo+PiAJKEhEQ1BfMl8yX1JFQ0VJVkVSX0lEX0xFTiAqIFwKPj4gKwo+PiBIRENQ XzJfMl9NQVhfREVWSUNFX0NPVU5UKQo+PiArI2RlZmluZSBIRENQXzJfMl9NUFJJTUVfTEVOCQkJ MzIKPj4gKwo+PiArLyoqCj4gUmVtb3ZlIGFuIGV4dHJhICIqIi4KPgo+PiArICogVE9ETzogVGhp cyBoYXMgdG8gYmUgY2hhbmdlZCBmb3IgRFAgTVNULCBhcyBtdWx0aXBsZSBzdHJlYW0gb24KPj4g KyAqIHNhbWUgcG9ydCBpcyBwb3NzaWJsZS4KPj4gKyAqIEZvciBIRENQMi4yIG9uIEhETUkgYW5k IERQIFNTVCB0aGlzIHZhbHVlIGlzIGFsd2F5cyAxLgo+PiArICovCj4+ICsjZGVmaW5lIEhEQ1Bf Ml8yX01BWF9DT05URU5UX1NUUkVBTVNfQ05UCTEKPj4gKyNkZWZpbmUgSERDUF8yXzJfVFhDQVBf TUFTS19MRU4JCQkyCj4+ICsjZGVmaW5lIEhEQ1BfMl8yX1JYQ0FQU19MRU4JCQkzCj4+ICsjZGVm aW5lIEhEQ1BfMl8yX1JYX1JFUEVBVEVSKHgpCQkJKHggJiBCSVQoMCkpCj4+ICsjZGVmaW5lIEhE Q1BfMl8yX0RQX0hEQ1BfQ0FQQUJMRSh4KQkJKHggJiBCSVQoMSkpCj4+ICsjZGVmaW5lIEhEQ1Bf Ml8yX1JYSU5GT19MRU4JCQkyCj4+ICsKPj4gKy8qIEhEQ1AxLnggY29tcGxpYW50IGRldmljZSBp biBkb3duc3RyZWFtICovCj4+ICsjZGVmaW5lIEhEQ1BfMl8yX0hEQ1AxX0RFVklDRV9DT05ORUNU RUQoeCkJKHggJiBCSVQoMCkpCj4+ICsKPj4gKy8qIEhEQ1AyLjAgQ29tcGxpYW50IHJlcGVhdGVy IGluIGRvd25zdHJlYW0gKi8KPj4gKyNkZWZpbmUgSERDUF8yXzJfSERDUF8yXzBfUkVQX0NPTk5F Q1RFRCh4KQkoeCAmIEJJVCgxKSkKPj4gKyNkZWZpbmUgSERDUF8yXzJfTUFYX0NBU0NBREVfRVhD RUVERUQoeCkJKHggJiBCSVQoMikpCj4+ICsjZGVmaW5lIEhEQ1BfMl8yX01BWF9ERVZTX0VYQ0VF REVEKHgpCQkoeCAmIEJJVCgzKSkKPj4gKyNkZWZpbmUgSERDUF8yXzJfREVWX0NPVU5UX0xPKHgp CQkoKHggJiAoMHhGIDw8IDQpKSA+PiA0KQo+PiArI2RlZmluZSBIRENQXzJfMl9ERVZfQ09VTlRf SEkoeCkJCSh4ICYgQklUKDApKQo+IEFzIHBlciAyLjIgc3BlYyB0aGlzIGlzIGEgNSBiaXQgZmll bGQgYW5kIG5vIG1lbnRpb24gb2YgSEkgYW5kIExPIGlzIHRoZXJlIGZvciBkZXYgY291bnQuCj4g QSBjb21tZW50IGV4cGxhaW5pbmcgd2h5IHRoaXMgbWFza2luZyBzdHlsZSBpcyBjaG9zZW4gd2ls bCBiZSBoZWxwZnVsIHNpbmNlIGl0IGRvZXNuJ3QKPiBtYXRjaCBleGFjdGx5IHdpdGggc3BlYy4K ZGV2IGNvdW50IGlzIHNwcmVhZCBhY3Jvc3MgbXVsdGkgYnl0ZSB2YWx1ZS4gQW5kIHRoZXNlIG1h Y3JvcyBhcmUgcHJvY2Vzc2luZwp0aGUgZWFjaCBieXRlIHNlcGFyYXRlbHkuIEFncmVlZCB0aGF0 IGEgY29tbWVudCB3b3VsZCBoZWxwIGhlcmUuCj4KPj4gKyNkZWZpbmUgSERDUF8yXzJfREVQVEgo eCkJCQkoKHggJiAoMHg3IDw8IDEpKSA+PiAxKQo+IFNhbWUgaGVyZSwgbWF5IGJlIGFkZCBhIGdl bmVyaWMgY29tbWVudCBleHBsYWluaW5nIHRoZSBsb2dpYyBmb3IKPiBhbGwgdGhlIHJlbGV2YW50 IG1hY3JvIGRlZmluaXRpb25zLgo+PiArCj4+ICtzdHJ1Y3QgaGRjcDJfY2VydF9yeCB7Cj4+ICsJ dWludDhfdAlyZWNlaXZlcl9pZFtIRENQXzJfMl9SRUNFSVZFUl9JRF9MRU5dOwo+PiArCXVpbnQ4 X3QJa3B1Yl9yeFtIRENQXzJfMl9LX1BVQl9SWF9MRU5dOwo+PiArCXVpbnQ4X3QJcmVzZXJ2ZWRb Ml07Cj4+ICsJdWludDhfdAlkY3Bfc2lnbmF0dXJlW0hEQ1BfMl8yX0RDUF9MTENfU0lHX0xFTl07 Cj4+ICt9IF9fcGFja2VkOwo+PiArCj4+ICtzdHJ1Y3QgaGRjcDJfc3RyZWFtaWRfdHlwZSB7Cj4+ ICsJdWludDhfdCBzdHJlYW1faWQ7Cj4+ICsJdWludDhfdCBzdHJlYW1fdHlwZTsKPj4gK30gX19w YWNrZWQ7Cj4+ICsKPj4gKy8qKgo+IERyb3AgdGhlIGV4dHJhICIqIi4KRml4ZWQuCj4KPj4gKyAq IFRoZSBUeENhcHMgZmllbGQgc3BlY2lmaWVkIGluIHRoZSBIRENQIEhETUksIERQIHNwZWNzCj4+ ICsgKiBUaGlzIGZpZWxkIGlzIGJpZyBlbmRpYW4gYXMgc3BlY2lmaWVkIGluIHRoZSBlcnJhdGEu Cj4+ICsgKi8KPj4gK3N0cnVjdCBoZGNwMl90eF9jYXBzIHsKPj4gKwkvKiBUcmFuc21pdHRlciBt dXN0IHNldCB0aGlzIHRvIDB4MiAqLwo+PiArCXVpbnQ4X3QJCQl2ZXJzaW9uOwo+PiArCj4+ICsJ LyogUmVzZXJ2ZWQgZm9yIEhEQ1AgYW5kIERQIFNwZWMuIFJlYWQgYXMgWmVybyAqLwo+PiArCXVp bnQ4X3QJCQl0eF9jYXBfbWFza1tIRENQXzJfMl9UWENBUF9NQVNLX0xFTl07Cj4gRHJvcCBleHRy YSB0YWJzIGhlcmUuCktlZXBpbmcgdGhlIGV4dHJhIHRhYnMgZm9yIHRoZSB1bmlmb3JtaXR5LiBJ ZiBpdCBpcyBvaywgSSB3b3VsZCBsaWtlIHRvIAprZWVwIGl0IGFzIGl0IGlzIG5vdy4KPgo+PiAr fSBfX3BhY2tlZDsKPj4gKwo+PiArLyoKPj4gKyAqIE1haW4gc3RydWN0dXJlcyBmb3IgSERDUDIu MiBwcm90b2NvbCBjb21tdW5pY2F0aW9uICAqLyBzdHJ1Y3QKPiBObyBuZWVkIG9mIG11bHRpLWxp bmUgY29tbWVudCBzdHlsZS4KPgo+PiAraGRjcDJfYWtlX2luaXQgewo+PiArCXVpbnQ4X3QJCQlt c2dfaWQ7Cj4+ICsJdWludDhfdAkJCXJfdHhbSERDUF8yXzJfUlRYX0xFTl07Cj4+ICsJc3RydWN0 IGhkY3AyX3R4X2NhcHMJdHhfY2FwczsKPj4gK30gX19wYWNrZWQ7Cj4+ICsKPj4gK3N0cnVjdCBo ZGNwMl9ha2Vfc2VuZF9jZXJ0IHsKPj4gKwl1aW50OF90CQkJbXNnX2lkOwo+PiArCXN0cnVjdCBo ZGNwMl9jZXJ0X3J4CWNlcnRfcng7Cj4+ICsJdWludDhfdAkJCXJfcnhbSERDUF8yXzJfUlJYX0xF Tl07Cj4+ICsJdWludDhfdAkJCXJ4X2NhcHNbSERDUF8yXzJfUlhDQVBTX0xFTl07Cj4+ICt9IF9f cGFja2VkOwo+PiArCj4+ICtzdHJ1Y3QgaGRjcDJfYWtlX25vX3N0b3JlZF9rbSB7Cj4+ICsJdWlu dDhfdAkJCW1zZ19pZDsKPj4gKwl1aW50OF90CQkJZV9rcHViX2ttW0hEQ1BfMl8yX0VfS1BVQl9L TV9MRU5dOwo+IERyb3AgZXh0cmEgdGFicy4gRG8gaXQgdW5pdmVyc2FsbHkgaW4gYWxsIHN0cnVj dHVyZSBkZWZpbml0aW9ucy4KPgo+PiArfSBfX3BhY2tlZDsKPj4gKwo+PiArc3RydWN0IGhkY3Ay X2FrZV9zdG9yZWRfa20gewo+PiArCXVpbnQ4X3QJCQltc2dfaWQ7Cj4+ICsJdWludDhfdAkJCWVf a2hfa21fbVtIRENQXzJfMl9FX0tIX0tNX01fTEVOXTsKPj4gK30gX19wYWNrZWQ7Cj4+ICsKPj4g K3N0cnVjdCBoZGNwMl9ha2Vfc2VuZF9ocHJpbWUgewo+PiArCXVpbnQ4X3QJCQltc2dfaWQ7Cj4+ ICsJdWludDhfdAkJCWhfcHJpbWVbSERDUF8yXzJfSF9QUklNRV9MRU5dOwo+PiArfSBfX3BhY2tl ZDsKPj4gKwo+PiArc3RydWN0IGhkY3AyX2FrZV9zZW5kX3BhaXJpbmdfaW5mbyB7Cj4+ICsJdWlu dDhfdAkJCW1zZ19pZDsKPj4gKwl1aW50OF90CQkJZV9raF9rbVtIRENQXzJfMl9FX0tIX0tNX0xF Tl07Cj4+ICt9IF9fcGFja2VkOwo+PiArCj4+ICtzdHJ1Y3QgaGRjcDJfbGNfaW5pdCB7Cj4+ICsJ dWludDhfdAkJCW1zZ19pZDsKPj4gKwl1aW50OF90CQkJcl9uW0hEQ1BfMl8yX1JOX0xFTl07Cj4+ ICt9IF9fcGFja2VkOwo+PiArCj4+ICtzdHJ1Y3QgaGRjcDJfbGNfc2VuZF9scHJpbWUgewo+PiAr CXVpbnQ4X3QJCQltc2dfaWQ7Cj4+ICsJdWludDhfdAkJCWxfcHJpbWVbSERDUF8yXzJfTF9QUklN RV9MRU5dOwo+PiArfSBfX3BhY2tlZDsKPj4gKwo+PiArc3RydWN0IGhkY3AyX3NrZV9zZW5kX2Vr cyB7Cj4+ICsJdWludDhfdAkJCW1zZ19pZDsKPj4gKwl1aW50OF90CQkJZV9ka2V5X2tzW0hEQ1Bf Ml8yX0VfREtFWV9LU19MRU5dOwo+PiArCXVpbnQ4X3QJCQlyaXZbSERDUF8yXzJfUklWX0xFTl07 Cj4+ICt9IF9fcGFja2VkOwo+PiArCj4+ICtzdHJ1Y3QgaGRjcDJfcmVwX3NlbmRfcmVjZWl2ZXJp ZF9saXN0IHsKPj4gKwl1aW50OF90CQkJbXNnX2lkOwo+PiArCXVpbnQ4X3QJCQlyeF9pbmZvW0hE Q1BfMl8yX1JYSU5GT19MRU5dOwo+PiArCXVpbnQ4X3QJCQlzZXFfbnVtX3ZbSERDUF8yXzJfU0VR X05VTV9MRU5dOwo+PiArCXVpbnQ4X3QJCQl2X3ByaW1lW0hEQ1BfMl8yX0xQUklNRV9IQUxGX0xF Tl07Cj4+ICsJdWludDhfdAo+PiAJcmVjZWl2ZXJfaWRzW0hEQ1BfMl8yX1JFQ0VJVkVSX0lEU19N QVhfTEVOXTsKPj4gK30gX19wYWNrZWQ7Cj4+ICsKPj4gK3N0cnVjdCBoZGNwMl9yZXBfc2VuZF9h Y2sgewo+PiArCXVpbnQ4X3QJCQltc2dfaWQ7Cj4+ICsJdWludDhfdAkJCXZbSERDUF8yXzJfTFBS SU1FX0hBTEZfTEVOXTsKPj4gK30gX19wYWNrZWQ7Cj4+ICsKPj4gK3N0cnVjdCBoZGNwMl9yZXBf c3RyZWFtX21hbmFnZSB7Cj4+ICsJdWludDhfdAkJCW1zZ19pZDsKPj4gKwl1aW50OF90CQkJc2Vx X251bV9tW0hEQ1BfMl8yX1NFUV9OVU1fTEVOXTsKPj4gKwlfX2JlMTYJCQlrOwo+PiArCXN0cnVj dCBoZGNwMl9zdHJlYW1pZF90eXBlCj4+IHN0cmVhbXNbSERDUF8yXzJfTUFYX0NPTlRFTlRfU1RS RUFNU19DTlRdOwo+PiArfSBfX3BhY2tlZDsKPj4gKwo+PiArc3RydWN0IGhkY3AyX3JlcF9zdHJl YW1fcmVhZHkgewo+PiArCXVpbnQ4X3QJCQltc2dfaWQ7Cj4+ICsJdWludDhfdAkJCW1fcHJpbWVb SERDUF8yXzJfTVBSSU1FX0xFTl07Cj4+ICt9IF9fcGFja2VkOwo+PiArCj4+ICtzdHJ1Y3QgaGRj cDJfZHBfZXJyYXRhX3N0cmVhbV90eXBlIHsKPj4gKwl1aW50OF90CQkJbXNnX2lkOwo+PiArCXVp bnQ4X3QJCQlzdHJlYW1fdHlwZTsKPj4gK30gX19wYWNrZWQ7Cj4+ICsKPj4gI2VuZGlmCj4+IC0t Cj4+IDIuNy40Cj4+Cj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCj4+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QKPj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwo+PiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRl dmVsCg==