From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: References: <20200608085305.30964-1-bst@pengutronix.de> <20200608085305.30964-5-bst@pengutronix.de> <20200608101639.fq7ob6c3u5sjerzt@pengutronix.de> From: Bastian Krause Message-ID: <1e1e43ae-3901-8a47-bfca-660bd4fc650b@pengutronix.de> Date: Fri, 12 Jun 2020 10:55:53 +0200 MIME-Version: 1.0 In-Reply-To: <20200608101639.fq7ob6c3u5sjerzt@pengutronix.de> Content-Language: en-US Subject: Re: [ptxdist] [PATCH 4/5] doc: dev_code_signing: rework and extend code signing section List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de, Roland Hieber Ck9uIDYvOC8yMCAxMjoxNiBQTSwgUm9sYW5kIEhpZWJlciB3cm90ZToKPiBPbiBNb24sIEp1biAw OCwgMjAyMCBhdCAxMDo1MzowNEFNICswMjAwLCBCYXN0aWFuIEtyYXVzZSB3cm90ZToKPj4gU2ln bmVkLW9mZi1ieTogQmFzdGlhbiBLcmF1c2UgPGJzdEBwZW5ndXRyb25peC5kZT4KPj4gLS0tCj4+ ICBkb2MvZGV2X2NvZGVfc2lnbmluZy5yc3QgfCAxMzkgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKystLS0tLS0tCj4+ICAxIGZpbGUgY2hhbmdlZCwgMTE2IGluc2VydGlvbnMoKyksIDIz IGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZG9jL2Rldl9jb2RlX3NpZ25pbmcucnN0 IGIvZG9jL2Rldl9jb2RlX3NpZ25pbmcucnN0Cj4+IGluZGV4IGRlMDA4N2Y4Yi4uYzViNTc4NmY5 IDEwMDY0NAo+PiAtLS0gYS9kb2MvZGV2X2NvZGVfc2lnbmluZy5yc3QKPj4gKysrIGIvZG9jL2Rl dl9jb2RlX3NpZ25pbmcucnN0Cj4+IEBAIC0zLDM0ICszLDEyNyBAQAo+PiAgQ29kZSBTaWduaW5n Cj4+ICAtLS0tLS0tLS0tLS0KPj4gIAo+PiAtVGhpcyBpcyBhbiBvdmVydmlldyBvdmVyIHRoZSBw dHhkaXN0IHNpZ25pbmcgaW5mcmFzdHJ1Y3R1cmUuCj4+IC1wdHhkaXN0IHVzZXMgUEtDUyMxMSBp bnRlcm5hbGx5IGZvciBwcm92aWRpbmcgYWNjZXNzIHRvIGtleXMgYW5kIGNlcnRpZmljYXRlcy4K Pj4gLVBhY2thZ2VzIHRoYXQgd2lzaCB0byBzaWduIHNvbWV0aGluZyBzaG91bGQgaW1wbGVtZW50 IGEgUEtDUyMxMSBpbnRlcmZhY2UuCj4+ICtJbiBvcmRlciB0byBtYWtlIHN1cmUgYW4gYXJ0aWZh Y3Qgd2FzIGNyZWF0ZWQgYnkgYSBrbm93biBhdXRob3JpdHkgYW5kIHdhcyBub3QKPj4gK2FsdGVy ZWQgbGF0ZXIsIGRpZ2l0YWwgc2lnbmF0dXJlcyBwbGF5IGEga2V5IHJvbGUgd2hlbiBidWlsZGlu ZyBmaXJtd2FyZQo+PiAraW1hZ2VzLgo+PiArVGhpcyBpcyBhbHNvIGVzc2VudGlhbCB3aGVuIGEg dmVyaWZpZWQgYm9vdCBjaGFpbiBpcyBlc3RhYmxpc2hlZCwgZS5nLiB2aWEKPj4gKypIaWdoIEFz c3VyYW5jZSBCb290KiAoSEFCKSwgc2lnbmVkIEZJVCBpbWFnZXMsIGFuZCBhIHZlcmlmaWVkIHJv b3QgZmlsZQo+PiArc3lzdGVtLgo+PiArCj4+ICtQVFhkaXN0IHVzZXMgYFBLQ1MjMTEgPHBrY3Mx MS1kb2NfPmBfIGludGVybmFsbHkgdG8gcHJvdmlkZSBhY2Nlc3MgdG8ga2V5cyBhbmQKPj4gK2Nl cnRpZmljYXRlcywgdGhlcmVmb3JlIGNvZGUgc2lnbmluZyBjb25zdW1lcnMgc2hvdWxkIGltcGxl bWVudCBhIFBLQ1MjMTEKPj4gK2ludGVyZmFjZSB0byBtYWtlIHVzZSBvZiBQVFhkaXN0J3MgY29k ZSBzaWduaW5nIGluZnJhc3RydWN0dXJlLgo+PiAgCj4+ICBBcyBQS0NTIzExIFVSSXMgdXN1YWxs eSBkaWZmZXIgYmV0d2VlbiBkaWZmZXJlbnQgdXNlY2FzZXMgKHJlbGVhc2UgdnMuCj4+IC1kZXZl bG9wbWVudCkgdGhlIFVSSXMgbm9ybWFsbHkgYXJlIG5vdCBoYXJkY29kZWQgaW4gdGhlIHBhY2th Z2UgY29uZmlndXJhdGlvbi4KPj4gLUluc3RlYWQsIHB0eGRpc3QgaGFzIHRoZSBpZGVhIG9mICJy b2xlcyIgd2hpY2ggYXJlIHN0cmluZyBpZGVudGlmaWVycyB1c2VkIHRvCj4+ICtkZXZlbG9wbWVu dCkgdGhlIFVSSXMgYXJlIHVzdWFsbHkgbm90IGhhcmRjb2RlZCBpbiB0aGUgcGFja2FnZSBjb25m aWd1cmF0aW9uLgo+PiArSW5zdGVhZCwgUFRYZGlzdCBoYXMgdGhlIGlkZWEgb2YgKipyb2xlcyoq IHdoaWNoIGFyZSBzdHJpbmcgaWRlbnRpZmllcnMgdXNlZCB0bwo+PiAgYWNjZXNzIGEgc2luZ2xl IHByaXZhdGUvcHVibGljIGtleSBwYWlyIGFuZCBhIGNlcnRpZmljYXRlLgo+PiAgCj4+IC1wdHhk aXN0IHN1cHBvcnRzIEhhcmR3YXJlIFNlY3VyaXR5IE1vZHVsZXMgKEhTTSkuCj4+IC1JbiBjYXNl IGEgSFNNIGlzIG5vdCBwcmVzZW50IG9yIHNoYWxsIG5vdCBiZSB1c2VkIFNvZnRIU00gaXMgdXNl ZCBpbnRlcm5hbGx5IHRvCj4+IC10cmFuc3BhcmVudGx5IHByb3ZpZGUgdGhlIHNhbWUgQVBJIGlu dGVybmFsbHkuCj4+ICtGaW5hbGx5LCBvbmUgb3Igc2V2ZXJhbCAqKmNvZGUgc2lnbmluZyBwcm92 aWRlcnMqKiBzdXBwbHkgdGhlIG1hcHBpbmcgZnJvbQo+PiArcm9sZXMgdG8gdGhlIHJlc3BlY3Rp dmUga2V5IG1hdGVyaWFsIG9yIGV2ZW4gcHJvdmlkZSBpdCB0aGVtc2VsdmVzIGZvcgo+PiArZGV2 ZWxvcG1lbnQuCj4+ICsKPj4gK1BUWGRpc3Qgc3VwcG9ydHMgKkhhcmR3YXJlIFNlY3VyaXR5IE1v ZHVsZXMqIChIU00pLgo+PiArSW4gY2FzZSBhbiBIU00gaXMgbm90IHByZXNlbnQgb3Igc2hhbGwg bm90IGJlIHVzZWQsIFBUWGRpc3QgY2FuIGVtdWxhdGUgaXQKPj4gK3VzaW5nIGBTb2Z0SFNNIDxz b2Z0aHNtXz5gXywgd2hpbGUgc3RpbGwgdHJhbnNwYXJlbnRseSBwcm92aWRpbmcgdGhlIHNhbWUg QVBJCj4+ICt0byBjb2RlIHNpZ25pbmcgY29uc3VtZXJzLgo+PiArCj4+ICsuLiBfcGtjczExLWRv YzogaHR0cHM6Ly93d3cuY3J5cHRzb2Z0LmNvbS9wa2NzMTFkb2MvCj4+ICsuLiBfc29mdGhzbTog aHR0cHM6Ly93d3cub3BlbmRuc3NlYy5vcmcvc29mdGhzbS8KPj4gIAo+PiAtRm9yIGVhY2ggcm9s ZSBhIFBLQ1MjMTEgVVJJIG11c3QgYmUga25vd24gYnkgcHR4ZGlzdC4KPj4gLUluIGNhc2Ugb2Yg YSBIU00gdGhlIGtleXMgYW5kIGNlcnRpZmljYXRlcyBhcmUgc3RvcmVkIGluIHRoZSBIU00sIGJ1 dCBwdHhkaXN0Cj4+ICsuLiBfY29kZV9zaWduaW5nX3Byb3ZpZGVyczoKPj4gKwo+PiArQ29kZSBT aWduaW5nIFByb3ZpZGVycwo+PiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+PiArCj4+ICtGb3Ig ZWFjaCByb2xlIGEgUEtDUyMxMSBVUkkgbXVzdCBiZSBrbm93biBieSBQVFhkaXN0Lgo+IAo+ICJr bm93biB0byBQVFhkaXN0IiBzb3VuZHMgbW9yZSBuYXR1cmFsIHRvIG1lIGhlcmUsIGJ1dCB0aGF0 J3Mgb25seSBhCj4gc21hbGwgbml0cGljayBpbiBjYXNlIHNvbWVvbmUgZmluZHMgYW55IG1vcmUg aXNzdWVzIHRoYXQganVzdGlmeSBhIGZ1bGwKPiB2MiA7KQoKIkZvciBlYWNoIHJvbGUgYSBQS0NT IzExIFVSSSBtdXN0IGJlIGtub3duIGJ5IFBUWGRpc3QuIiBpcyBhIHBlcmZlY3RseQp2YWxpZCBz ZW50ZW5jZS4gImtub3duIHRvIiBhcyB3ZWxsIGFzICJrbm93biBieSIgYXJlIGFwcGxpY2FibGUu IEkgd291bGQKbGVhdmUgaXQgdGhpcyB3YXksIHVubGVzcyBzb21lIGdyYW1tYXIgZ3VydSBleHBs YWlucyB0aGUgZGlmZmVyZW5jZSBpbgp0aGlzIHZlcnkgc2VudGVuY2UgYW5kIGFyZ3VlcyBSb2xh bmQncyB2YXJpYW50IGZpdHMgYmV0dGVyLgoKUmVnYXJkcywKQmFzdGlhbgoKPiAKPiAgLSBSb2xh bmQKPiAKPj4gK0luIGNhc2Ugb2YgYW4gSFNNIHRoZSBrZXlzIGFuZCBjZXJ0aWZpY2F0ZXMgYXJl IHN0b3JlZCBpbiB0aGUgSFNNLCBidXQgUFRYZGlzdAo+PiAgbmVlZHMgdG8ga25vdyB0aGUgUEtD UyMxMSBVUkkgdG8gYWNjZXNzIHRoZSBrZXlzLgo+PiAtVGhpcyBpcyBkb25lIGluIHB0eGRpc3Qg cnVsZSBmaWxlcyBjYWxsaW5nIGNzX3NldF91cmkgPHJvbGU+IDx1cmk+Lgo+PiAtRm9yIFNvZnRI U00gdGhlIFVSSSBpcyBnZW5lcmF0ZWQgaW50ZXJuYWxseSBieSBwdHhkaXN0LCBidXQgaW5zdGVh ZCB0aGUKPj4gLWtleXMvY2VydGlmaWNhdGVzIGZvciBlYWNoIHJvbGUgaGF2ZSBoYXZlIHRvIGJl IGltcG9ydGVkLgo+PiAtVGhpcyBpcyBkb25lIHdpdGggdGhlIGNzX2ltcG9ydF8qIGZ1bmN0aW9u cyBiZWxvdy4KPj4gLQo+PiAtRHVyaW5nIGVhY2ggaW52b2NhdGlvbiBvZiBwdHhkaXN0IGV4YWN0 bHkgb25lIGtleSBwcm92aWRlciBpcyBhY3RpdmUuCj4+IC1UaGUgY29kZSBzaWduaW5nIHByb3Zp ZGVyIGNhbiBiZSBjaG9zZW4gd2l0aCB0aGUgUFRYQ09ORl9DT0RFX1NJR05JTkdfUFJPVklERVIK Pj4gLXZhcmlhYmxlLgo+PiAtQSBjb2RlIHNpZ25pbmcgcHJvdmlkZXIgaXMgYSBwYWNrYWdlIHJl c3Bvc2libGUgZm9yIHByb3ZpZGluZyB0aGUgcm9sZSA8LT4KPj4gLVBLQ1MjMTEgVVJJIHJlbGF0 aW9uc2hpcHMgaW4gY2FzZSBhIEhTTSBpcyB1c2VkIG9yIGZvciBwcm92aWRpbmcgdGhlIGtleQo+ PiArRm9yIFNvZnRIU00gdGhlIFVSSSBpcyBnZW5lcmF0ZWQgaW50ZXJuYWxseSBieSBQVFhkaXN0 LCBidXQgaW5zdGVhZCB0aGUKPj4gK2tleXMvY2VydGlmaWNhdGVzIGZvciBlYWNoIHJvbGUgaGF2 ZSB0byBiZSBpbXBvcnRlZCBieSB0aGUgY29kZSBzaWduaW5nCj4+ICtwcm92aWRlciBpbnRvIHRo ZSBTb2Z0SFNNLgo+PiArCj4+ICtBIGNvZGUgc2lnbmluZyBwcm92aWRlciBpcyBhIHBhY2thZ2Ug cmVzcG9uc2libGUgZm9yIHByb3ZpZGluZyB0aGUgcm9sZSDihpQKPj4gK1BLQ1MjMTEgVVJJIHJl bGF0aW9uc2hpcHMgaW4gY2FzZSBhbiBIU00gaXMgdXNlZCwgb3IgZm9yIHByb3ZpZGluZyB0aGUg a2V5Cj4+ICBtYXRlcmlhbCBpbiBjYXNlIFNvZnRIU00gaXMgdXNlZC4KPj4gIAo+PiAtQSBwYWNr YWdlIHdoaWNoIHdhbnRzIHRvIHNpZ24gc29tZXRoaW5nIG9yIHdoaWNoIG5lZWRzIGFjY2VzcyB0 byBrZXlzIGhhcyB0bwo+PiAtc2VsZWN0IENPREVfU0lHTklORy4KPj4gLVRoaXMgbWFrZXMgc3Vy ZSB0aGUga2V5cyBhcmUgcmVhZHkgd2hlbiB0aGUgcGFja2FnZSBpcyBiZWluZyBidWlsdC4KPj4g K1doZW4gYGBQVFhDT05GX0NPREVfU0lHTklOR2BgIGlzIGVuYWJsZWQgZXhhY3RseSBvbmUgY29k ZSBzaWduaW5nIHByb3ZpZGVyIGlzCj4+ICthY3RpdmUgZHVyaW5nIGVhY2ggaW52b2NhdGlvbiBv ZiBQVFhkaXN0Lgo+PiArCj4+ICtQVFhkaXN0IGNvbWVzIGVxdWlwcGVkIHdpdGggYSBkZXZlbG9w bWVudCBjb2RlIHNpZ25pbmcgcHJvdmlkZXIgImRldmVsIgo+PiAraW1wbGVtZW50ZWQgdmlhIHRo ZSBwYWNrYWdlIGBgaG9zdC1wdHgtY29kZS1zaWduaW5nLWRldmBgLgo+PiArSXQgaW1wb3J0cyBw dWJsaWNseSBhdmFpbGFibGUgZGV2ZWxvcG1lbnQga2V5cyBmb3IgZWFjaCByb2xlIGludG8gdGhl IFNvZnRIU00uCj4+ICsKPj4gKy4uIGltcG9ydGFudDo6IFRoZSBgYGhvc3QtcHR4LWNvZGUtc2ln bmluZy1kZXZgYCBjb2RlIHNpZ25pbmcgcHJvdmlkZXIgY2FuIGJlCj4+ICsgIHVzZWQgdG8gc2ln biBhcnRpZmFjdHMgZm9yIGRldmVsb3BtZW50IHB1cnBvc2VzLCBidXQgKiptdXN0IG5vdCoqIGJl IHVzZWQgZm9yCj4+ICsgIHByb2R1Y3Rpb24uCj4+ICsKPj4gK0NyZWF0aW5nIEN1c3RvbSBDb2Rl IFNpZ25pbmcgUHJvdmlkZXJzCj4+ICteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5e Xl5eXgo+PiArCj4+ICtXaGVuIGEgc2V0IG9mIHJlbGVhc2Uga2V5cyBvciBwcm9qZWN0LXNwZWNp ZmljIGRldmVsb3BtZW50IGtleXMgc2hvdWxkIGJlCj4+ICt1c2VkIChlLmcuIHRvIGFjaGlldmUg YmFja3dhcmQgY29tcGF0aWJpbGl0eSkgYSBuZXcgY29kZSBzaWduaW5nIHByb3ZpZGVyCj4+ICtt dXN0IGJlIGludHJvZHVjZWQuCj4+ICsKPj4gK1VzZSBgYHB0eGRpc3QgbmV3cGFja2FnZSBjb2Rl LXNpZ25pbmctcHJvdmlkZXJgYCB0byBnZW5lcmF0ZSBzdWNoIGEgbmV3IGNvZGUKPj4gK3NpZ25p bmcgcHJvdmlkZXIuCj4+ICtUaGUgZ2VuZXJhdGVkIGZpbGVzIG11c3Qgbm93IGJlIGFkanVzdGVk IHRvIHRoZSB1c2UgY2FzZSwgZGVwZW5kaW5nIG9uIHdoZXRoZXIKPj4gK2Egc3BlY2lmaWMgSFNN IG9yIFNvZnRIU00gc2hvdWxkIGJlIHVzZWQuCj4+ICtUaGUgZ2VuZXJhdGVkIHNoZWxsIHNjcmlw dCBpbiBgYGxvY2FsX3NyYy88bmFtZT4tY29kZS1zaWduaW5nL2BgIGNvbnRhaW5zCj4+ICtleGFt cGxlcyBmb3IgYm90aCB1c2UgY2FzZXMuCj4+ICtTZWUgOnJlZjpgY29kZV9zaWduaW5nX2hlbHBl cl9mdW5jdGlvbnNgIGZvciBhbiBleHBsYW5hdGlvbiBvZiB0aGUgYXZhaWxhYmxlCj4+ICtjb2Rl IHNpZ25pbmcgaGVscGVycy4KPj4gK0l0IGlzIHRoZSBjb2RlIHNpZ25pbmcgcHJvdmlkZXIncyBy ZXNwb25zaWJpbGl0eSB0byBzZWxlY3QgdGhlIGhvc3QKPj4gK3Rvb2xzIHJlcXVpcmVkIGJ5IHRo ZSBjb2RlIHNpZ25pbmcgaGVscGVyIGZ1bmN0aW9ucyBpdCB1c2VzLgo+PiArSW4gY2FzZSBvZiBT b2Z0SFNNIHVzZSBjYXNlcyB0aGUga2V5cyBzaG91bGQgYWxzbyBiZSBwbGFjZWQgaW5zaWRlCj4+ ICtgYGxvY2FsX3NyYy88bmFtZT4tY29kZS1zaWduaW5nL2BgCj4+ICsKPj4gK0luIGNhc2UgYW4g SFNNIGlzIHVzZWQgaXQgaXMgcmVxdWlyZWQgdG8gZXh0ZW5kIHRoZSBgYENPREVfU0lHTklOR19F TlZgYCB3aXRoCj4+ICthZGRpdGlvbmFsIGVudmlyb25tZW50IHZhcmlhYmxlcyB2aWEgYSBwcmUg cnVsZSBpbgo+PiArYGAkKFBUWERJU1RfUExBVEZPUk1DT05GSUdESVIpL3J1bGVzL3ByZS9gYC4K Pj4gK0ZvciBleGFtcGxlLCBmb3IgTml0cm9rZXkgSFNNcyB3aGljaCB1c2UgKk9wZW5TQyogdGhl IHByZSBydWxlIGNvdWxkIGxvb2sgbGlrZQo+PiArdGhpczoKPj4gKwo+PiArLi4gY29kZS1ibG9j azo6IG1ha2UKPj4gKwo+PiArICAgIGlmZGVmIFBUWENPTkZfQ09ERV9TSUdOSU5HX1BST1ZJREVS XzxOQU1FPgo+PiArICAgIENPREVfU0lHTklOR19FTlYgKz0gXAo+PiArICAgIAlQS0NTMTFfTU9E VUxFX1BBVEg9IiR7UFRYRElTVF9TWVNST09UX0hPU1R9L2xpYi9wa2NzMTEvb3BlbnNjLXBrY3Mx MS5zbyIKPj4gKyAgICBlbmRpZgo+PiArCj4+ICtOb3RlIHRoYXQgdGhlIG1vZHVsZSBpcyBidWls dCBpbiB0aGUgQlNQIGluIHRoaXMgY2FzZSAodmlhCj4+ICtgYHNlbGVjdCBIT1NUX09QRU5TQ19Q Q1NDYGAgaW4gdGhlIGNvZGUgc2lnbmluZyBwcm92aWRlcidzIG1lbnUgZmlsZSkuCj4+ICtUaGlz IGlzIG5vdCBzdHJpY3RseSByZXF1aXJlZCwgaXQgaXMgYWxzbyBwb3NzaWJsZSB0byB1c2UgYW4g b3RoZXJ3aXNlCj4+ICtkaXN0cmlidXRlZCBtb2R1bGUsIGUuZy4gYnkgdGhlIEhTTSBtYW51ZmFj dHVyZXIuCj4+ICsKPj4gK1N3aXRjaGluZyB0aGUgY29kZSBzaWduaW5nIHByb3ZpZGVyIGlzIG5v dyBwb3NzaWJsZSB3aXRoCj4+ICtgYHB0eGRpc3QgcGxhdGZvcm1jb25maWdgYCwgdGhlbiBuYXZp Z2F0ZSB0byAqQ29kZSBzaWduaW5nKiDihpIgKkNvZGUgc2lnbmluZwo+PiArcHJvdmlkZXIqLgo+ PiArCj4+ICtDb2RlIFNpZ25pbmcgQ29uc3VtZXJzCj4+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ Cj4+ICsKPj4gK0EgcGFja2FnZSBoYXMgdG8gc2VsZWN0IGBgQ09ERV9TSUdOSU5HYGAgaWYgaXQg d2FudHMgdG8gc2lnbiBzb21ldGhpbmcsIG9yIGlmCj4+ICtpdCBuZWVkcyBhY2Nlc3MgdG8ga2V5 cyBhbmQvb3IgY2VydGlmaWNhdGVzLgo+PiArVGhlIGNvbmZpZyBzeW1ib2wgaXMgYXZhaWxhYmxl IGluIHB0eGNvbmZpZyBhcyB3ZWxsIGFzIGluIHBsYXRmb3JtY29uZmlnLgo+PiArU2VsZWN0aW5n IHRoaXMgc3ltYm9sIG1ha2VzIHN1cmUgdGhlIGtleXMgYW5kIGNlcnRpZmljYXRlcyBhcmUgcmVh ZHkgd2hlbiB0aGUKPj4gK3BhY2thZ2UgaXMgYmVpbmcgYnVpbHQuCj4+ICsKPj4gK0J5IGFkZGlu ZyBgYENPREVfU0lHTklOR19FTlZgYCB0byB0aGUgcGFja2FnZSdzIG1ha2UvY29uZi9pbWFnZSBl bnZpcm9ubWVudCBhCj4+ICt0b29sIGltcGxlbWVudGluZyBhIFBLQ1MjMTEgaW50ZXJmYWNlIGNh biBhY2Nlc3MgdGhlIEhTTSBvciBTb2Z0SFNNLgo+PiArVGhlIFBLQ1MjMTEgVVJJIGNhbiBiZSBy ZXRyaWV2ZWQgdmlhIDpyZWY6YGNzX2dldF91cmlgIGFuZCBwYXNzZWQgb24sIHVzdWFsbHkKPj4g K2Fsc28gdmlhIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLgo+PiArCj4+ICs6cmVmOmBjc19nZXRf Y2FgIGNhbiBiZSB1c2VkIHRvIGluc3RhbGwgYSBrZXlyaW5nIHRvIHRoZSByb290IGZpbGUgc3lz dGVtLCBlLmcuOgo+PiArCj4+ICsuLiBjb2RlLWJsb2NrOjogbm9uZQo+PiArCj4+ICsgICAgJChj YWxsIGluc3RhbGxfY29weSwgcmF1YywgMCwgMCwgMDY0NCwgXAo+PiArICAgICAgJChzaGVsbCBj c19nZXRfY2EgdXBkYXRlKSwgXAo+PiArICAgICAgL2V0Yy9yYXVjL2NhLmNlcnQucGVtKQo+PiAr Cj4+ICsuLiBub3RlOjogV2hlbiBjb2RlIHNpZ25pbmcgaGVscGVyIGZ1bmN0aW9ucyBhcmUgdXNl ZCBpbiBtYWtlIHZhcmlhYmxlcyAoZS5nLgo+PiArICBmb3IgZW52aXJvbm1lbnQgZGVmaW5pdGlv bnMpIHJlY3Vyc2l2ZWx5IGV4cGFuZGVkIHZhcmlhYmxlcyBtdXN0IGJlIHVzZWQKPj4gKyAgKGBg PWBgLCBub3QgYGA6PWBgKS4KPj4gKyAgT3RoZXJ3aXNlIHRoZSB2YXJpYWJsZSBpcyBleHBhbmRl ZCBiZWZvcmUgYSBjb2RlIHNpZ25pbmcgcHJvdmlkZXIgY2FuIHBlcmZvcm0KPj4gKyAgaXRzIHNl dHVwLgo+PiAtLSAKPj4gMi4yNy4wCj4+Cj4+Cj4gCgoKLS0gClBlbmd1dHJvbml4IGUuSy4gICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ClN0 ZXVlcndhbGRlciBTdHIuIDIxICAgICAgICAgICAgICAgICAgICAgICB8IGh0dHA6Ly93d3cucGVu Z3V0cm9uaXguZGUvICB8CjMxMTM3IEhpbGRlc2hlaW0sIEdlcm1hbnkgICAgICAgICAgICAgICAg ICB8IFBob25lOiArNDktNTEyMS0yMDY5MTctMCAgICB8CkFtdHNnZXJpY2h0IEhpbGRlc2hlaW0s IEhSQSAyNjg2ICAgICAgICAgICB8IEZheDogICArNDktNTEyMS0yMDY5MTctNTU1NSB8CgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwdHhkaXN0IG1haWxp bmcgbGlzdApwdHhkaXN0QHBlbmd1dHJvbml4LmRlClRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgbWFp bCB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIiB0byBwdHhkaXN0LXJlcXVlc3RAcGVuZ3V0cm9u aXguZGUK