From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Zdenek Pytela To: git-commits@fedoraproject.org Subject: [rpms/selinux-policy] rawhide: Trim changelog so that it starts 6 months ago Date: Thu, 02 Jul 2026 07:29:04 GMT Message-ID: <178297734473.1.14146862122483436362.rpms-selinux-policy-74f6734539e7@fedoraproject.org> List-ID: X-Git-Repo: rpms/selinux-policy X-Git-Branch: rawhide X-Git-Rev: 74f6734539e7bef5916d67587915c9f80f6c78e5 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvc2VsaW51eC1wb2xp Y3kKQnJhbmNoIDogcmF3aGlkZQpDb21taXQgOiA3NGY2NzM0NTM5ZTdiZWY1OTE2ZDY3NTg3OTE1 YzlmODBmNmM3OGU1CkF1dGhvciA6IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4K RGF0ZSAgIDogMjAyNi0wNy0wMVQxNTo0MjozNCswMjowMApTdGF0cyAgOiArMC8tOTc2IGluIDEg ZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL3NlbGlu dXgtcG9saWN5L2MvNzRmNjczNDUzOWU3YmVmNTkxNmQ2NzU4NzkxNWM5ZjgwZjZjNzhlNT9icmFu Y2g9cmF3aGlkZQoKTG9nOgpUcmltIGNoYW5nZWxvZyBzbyB0aGF0IGl0IHN0YXJ0cyA2IG1vbnRo cyBhZ28KCi0tLQpkaWZmIC0tZ2l0IGEvY2hhbmdlbG9nIGIvY2hhbmdlbG9nCmluZGV4IDBjNWEz MTEuLmY2MmI2OGEgMTAwNjQ0Ci0tLSBhL2NoYW5nZWxvZworKysgYi9jaGFuZ2Vsb2cKQEAgLTIz MCw5NzkgKzIzMCwzIEBACiAKICogU2F0IEphbiAxNyAyMDI2IEZlZG9yYSBSZWxlYXNlIEVuZ2lu ZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNDIuMjEtMgogLSBSZWJ1aWx0IGZv ciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzQ0X01hc3NfUmVidWlsZAot Ci0qIFNhdCBKYW4gMTAgMjAyNiBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0g NDIuMjEtMQotLSBBbGxvdyBzc2hkX25ldF90IGlvY3RsIG9uIHVuaXhfc3RyZWFtX3NvY2tldCBv ZiBzc2hkX3Nlc3Npb25fdAotLSBBbGxvdyBzc2hkLXNlc3Npb24gcmVhZCwgd3JpdGUsIGFuZCBt YXAgaWNhIHRtcGZzIGZpbGVzCi0tIEFsbG93IGFpZGUgZ2V0IGF0dHJpYnV0ZXMgb2YgYSBmaWxl c3lzdGVtIHdpdGggZXh0ZW5kZWQgYXR0cmlidXRlcwotLSBTZXQgY29ycmVjdCBsYWJlbCBmb3Ig Z2x5Y2luIGZvbnRjb25maWcgKGJzYyMxMjUzNjgyKQotLSBTZXQgY29ycmVjdCBnc3RyZWFtZXIg ZGlyZWN0b3J5IGxhYmVsIGZvciBnbm9tZS1kZXNrdG9wLXRodW1ibmFpbGVyIChic2MjMTI1MzY4 MikKLS0gTG9nd2F0Y2ggenotcnVudGltZSB1c2VzIHVwdGltZSAoYnNjIzEyNTU4NjIpCi0tIEFk ZCBhdXRoX2xvZ2luX3BnbV9zaWdudWxsIGludGVyZmFjZSAoYnNjIzEyNTU4NjIpCi0tIEludHJv ZHVjZSBzeXN0ZW1kX2NyeXB0c2V0dXBfZ2VuZXJhdG9yX3Zhcl9ydW5fdCBmaWxlIHR5cGUgKGJz YyMxMjQ0NDU5KQotLSBBbGxvdyBsMnRwZF90IGFjY2VzcyB0byBuZXRsaW5rIGFuZCBzeXNmcwot LSBMYWJlbCBtaXNjZWxsYW5lb3VzIC9kZXYvcGFwci0qIGRldmljZXMKLS0gQWxsb3cgcWVtdS1n YSB0byBza2lwIGF1dGhlbnRpY2F0aW9uCi0tIFJldmVydCAiQWxsb3cgc3lzdGVtZC1jb3JlZHVt cCBzaWdudWxsIGNvbnRhaW5lcnMiCi0tIEFsbG93IHN5c3RlbWQtY29yZWR1bXAgc2lnbnVsbCBj b250YWluZXJzCi0tIEFsbG93IHZpcnRxZW11ZCBzZXRhdHRyIGRyaSBkZXZpY2VzCi0tIEFsbG93 IGlycWJhbGFuY2UgY3JlYXRlIGFuZCB1c2UgbmV0bGluayBnZW5lcmljIHNvY2tldAotLSBBbGxv dyB0aHVtYl90IGNvbm5lY3QgdG8gWERNIG92ZXIgYSB1bml4IGRvbWFpbiBzdHJlYW0gc29ja2V0 Ci0tIEFsbG93IHN5c3RlbWQtaG9tZXdvcmsgdG8gcmVtb3ZlIH4vLmlkZW50aXR5LWJsb2IKLS0g UmV2ZXJ0ICJBbGxvdyBrbDJ0cGQgY3JlYXRlIGFuZCB1c2UgbmV0bGlua19nZW5lcmljX3NvY2tl dCIKLQotKiBGcmkgRGVjIDE5IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29t PiAtIDQyLjIwLTEKLS0gU3VwcG9ydCBjb2NrcGl0IHByaXZpbGVnZWQgYWNjZXNzIGZvciB0aGUg c3RhZmYgdXNlcgotLSBVcGRhdGUgc3VfZG9tYWluX3R5cGUgcG9saWN5IGZvciBrZXJiZXJpemVk IHN1Ci0tIEFsbG93IHNzaGQtc2Vzc2lvbiBpbmhlcml0IGxpbWl0cyBmcm9tIGl0cyBwYXJlbnQg cHJvY2VzcwotLSBBbGxvdyBzeXN0ZW1kLW1hY2hpbmVkIHJlYWQgdmlydGQgcHJvY2VzcyBzdGF0 ZQotLSBBbGxvdyBrbDJ0cGQgY3JlYXRlIGFuZCB1c2UgbmV0bGlua19nZW5lcmljX3NvY2tldAot LSBVcGRhdGUgcG9saWN5IGZvciByZWRmaXNoLWZpbmRlcgotLSBMYWJlbCB0aGUgZ3JlZXRkIGxv Z2luIG1hbmFnZXIgZnJhbWV3b3JrIGFzIGEgZGlzcGxheSBtYW5hZ2VyCi0tIEFsbG93IHNzaGQt YXV0aCBnZXQgYXR0cmlidXRlcyBvZiBzc2hkIHZzb2NrIHNvY2tldAotLSBDb25maW5lIHJlZGZp c2hfZmluZGVyIC0gaG9zdCBhcGkgZGlzY292ZXJ5IHNlcnZpY2UKLS0gQWxsb3cgaXB0YWJsZXMg cmVhZCBmaXJld2FsbGQgcHJvY2VzcyBzdGF0ZQotLSBBbGxvdyB0dW5lZF90IHVzZSBpdHMgcHJp dmF0ZSB0bXBmcyBmaWxlcwotLSBUaGUgY29tbWl0IGFkZHJlc3NlcyB0aGUgZm9sbG93aW5nIEFW QyBkZW5pYWxzOgotCi0qIEZyaSBEZWMgMDUgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJl ZGhhdC5jb20+IC0gNDIuMTktMQotLSBBbGxvdyBwYXNzd2QgcmVhZCBhbmQgd3JpdGUgYSBzc2hk LXNlc3Npb24gdW5uYW1lZCBwaXBlcwotLSBBbGxvdyBzc2hkLWF1dGggY2FwYWJpbGl0aWVzCi0t IEFsbG93IHNzaGQtYXV0aCByZWFkIG5ldHdvcmsgc3lzY3RscwotLSBMYWJlbCAvcnVuL2luc2ln aHRzLWNsaWVudC5wcGlkIHdpdGggaW5zaWdodHNfY2xpZW50X3J1bl90Ci0tIGZpeDogdW5icmVh ayB0aHVtYm5haWxpbmcgZm9yIFRodW5hci90dW1ibGVyZAotLSBBZGQgZmlsZXNfbW91bnRvbl9n ZW5lcmljX3RtcF9kaXJzKCkgaW50ZXJmYWNlCi0tIEFkZCB0aGUgcnBtX3NpZ25hbCgpIGludGVy ZmFjZQotLSBBbGxvdyBzZXNzaW9uX2J1c190eXBlIGdldCB0aGUgYXR0cmlidXRlcyBvZiB0aGUg cGlkZnMgZmlsZXN5c3RlbQotLSBBbGxvdyBwY3NjZCBnZXQgdGhlIGF0dHJpYnV0ZXMgb2YgdGhl IHBpZGZzIGZpbGVzeXN0ZW0KLS0gQWxsb3cgc3NzZCBnZXQgdGhlIGF0dHJpYnV0ZXMgb2YgdGhl IHBpZGZzIGZpbGVzeXN0ZW0KLQotKiBUdWUgRGVjIDAyIDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5 dGVsYUByZWRoYXQuY29tPiAtIDQyLjE4LTEKLS0gQWxsb3cgS0RFIFBsYXNtYSBMb2dpbiBNYW5h Z2VyIHRvIGZ1bmN0aW9uIGFzIGEgZGlzcGxheSBtYW5hZ2VyCi0tIEFsbG93IG1kYWRtIHNlYXJj aCBmaWxlc3lzdGVtX3R5cGUgZGlyZWN0b3JpZXMKLS0gVXBkYXRlIHBvbGljeSBmb3IgZGhjcGNf aG9va190Ci0tIExhYmVsIC91c3IvbGliZXhlYy9kaGNwY2QtcnVuLWhvb2tzIHdpdGggZGhjcGNf aG9va19leGVjX3QKLS0gQWxsb3cgc3RhZmYgcm9sZSByZWFkL3dyaXRlIGNvY2twaXQtc2Vzc2lv biB1bml4IHN0cmVhbSBzb2NrZXRzCi0tIEFsbG93IHN0YXAgc2VydmVyIHJlYWQgdmlydHVhbCBt ZW1vcnkgc3lzY3RscwotLSBBbGxvdyBzeXN0ZW1fbWFpbF90IHJlYWQgYXBhY2hlIHN5c3RlbSBj b250ZW50IGNvbmRpdGlvbmFsbHkKLS0gQWxsb3cgbG9naW5fdXNlcmRvbWFpbiByZWFkIGxhc3Rs b2cKLQotKiBUdWUgTm92IDI1IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29t PiAtIDQyLjE3LTEKLS0gQWxsb3cgc3NoZC1uZXQgcmVhZCBhbmQgd3JpdGUgdG8gc3NoZCB2c29j ayBzb2NrZXQKLS0gVXBkYXRlIGt0bHMgcG9saWN5Ci0tIEFkZCBjb21wcmVoZW5zaXZlIFNFTGlu dXggcG9saWN5IG1vZHVsZSBmb3IgYndyYXAgdGh1bWJuYWlsIGdlbmVyYXRpb24KLS0gUmV2ZXJ0 ICJBbGxvdyB0aHVtYl90IGNyZWF0ZSBwZXJtaXNzaW9uIGluIHRoZSB1c2VyIG5hbWVzcGFjZSIK LS0gQWxsb3cgc3lzdGVtZC1tYWNoaW5lZCByZWFkIHN2aXJ0IHByb2Nlc3Mgc3RhdGUKLS0gQWxs b3cgc3NoZF9hdXRoX3QgZ2V0b3B0L3NldG9wdCBvbiB0Y3Bfc29ja2V0IChic2MjMTI1Mjk5MikK LS0gQWxsb3cgc3lzYWRtIGFjY2VzcyB0byBUUE0KLS0gQWxsb3cgdGxwIGdldCB0aGUgYXR0cmli dXRlcyBvZiB0aGUgcGlkZnMgZmlsZXN5c3RlbQotLSBBbGxvdyBrbXNjb24gdG8gcmVhZCBuZXRs aW5rX2tvYmplY3RfdWV2ZW50X3NvY2tldAotCi0qIFRodSBOb3YgMjAgMjAyNSBaZGVuZWsgUHl0 ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDIuMTYtMQotLSBBbGxvdyBzeXN0ZW1kLXNzaC1p c3N1ZSByZWFkIGtlcm5lbCBzeXNjdGxzCi0tIGZpeDogYnoyMjc5MjE1IEFsbG93IHNwZWVjaC1k aXNwYXRjaGVyIGFjY2VzcyB0byB1c2VyIGhvbWUvY2FjaGUgZmlsZXMKLS0gQWxsb3cgY3JlYXRl IGtlcmJlcm9zIGZpbGVzIGluIHBvc3RncmVzcWwgZGIgaG9tZQotLSBGaXggZmlsZXNfZGVsZXRl X2Jvb3Rfc3ltbGlua3MoKSB0byBjb250YWluIGRlbGV0ZV9sbmtfZmlsZXNfcGF0dGVybgotLSBB bGxvdyBzaGVsbCBjb21hbW5kcyBpbiBsb2NhdGUgc3lzdGVtZCBzZXJ2aWNlIChic2MjMTI0NjU1 OSkKLS0gSW50cm9kdWNlIGluaXRyY19ubnBfZGFlbW9uX2RvbWFpbiBpbnRlcmZhY2UKLS0gTGFi ZWwgL3Zhci9saWIvY29zbWljLWdyZWV0ZXIgd2l0aCB4ZG1fdmFyX2xpYl90Ci0tIEFsbG93IHNl dHJvdWJsZXNob290LWZpeGl0IGdldCBhdHRyaWJ1dGVzIG9mIHhhdHRyIGZzCi0KLSogVHVlIE5v diAxMSAyMDI1IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0Mi4xNS0xCi0t IEFsbG93IGluc2lnaHRzLWNsaWVudCBtYW5hZ2UgL2V0YyBzeW1saW5rcwotLSBBbGxvdyBpbnNp Z2h0cy1jbGllbnQgZ2V0IGF0dHJpYnV0ZXMgb2YgdGhlIHJwbSBleGVjdXRhYmxlCi0tIEFsbG93 IG5mc2lkbWFwZCBzZWFyY2ggdmlydCBsaWIgZGlyZWN0b3JpZXMKLS0gQWxsb3cgaW90b3Agc3Ry ZWFtIGNvbm5lY3QgdG8gc3lzdGVtZC11c2VyZGJkCi0tIEFsbG93IGdub21lLXJlbW90ZS1kZXNr dG9wIHJlYWQgc3NzZCBwdWJsaWMgZmlsZXMKLS0gQWxsb3cgdGh1bWJfdCBzdHJlYW0gY29ubmVj dCB0byBzeXN0ZW1kLXVzZXJkYmQKLS0gQWxsb3cgYmx1ZXogZGJ1cyBBUEkgcGFzc2luZyB1bml4 IGRvbWFpbiBzb2NrZXRzCi0tIEFsbG93IGJsdWV6IGRidXMgYXBpIHBhc3Mgc29ja2V0cyBvdmVy IGRidXMKLS0gRG9udGF1ZGl0IHN5c3RlbWQtZ2VuZXJhdG9yIGNvbm5lY3QgdG8gc3NzZCBvdmVy IGEgdW5peCBzdHJlYW0gc29ja2V0Ci0tIEFsbG93IGluaXQgd2F0Y2gvd2F0Y2hfcmVhZHMgc3lz dGVtZC1tYWNoaW5lZCB1c2VyIHB0eXMKLS0gRml4IHN5bnRheCBlcnJvciBpbiB1c2VyZG9tYWlu LmlmCi0tIEFsbG93IHJhcy1tYy1jdGwgZ2V0IGF0dHJpYnV0ZXMgb2YgdGhlIGttb2QgZXhlY3V0 YWJsZQotCi0qIEZyaSBPY3QgMjQgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5j b20+IC0gNDIuMTQtMQotLSBEZWZpbmUgZmlsZSBlcXVpdmFsZW5jeSBmb3IgL3Zhci9vcHQKLS0g QWxsb3cgdmlydG5vZGVkZXZfdCB0aGUgcGVyZm1vbiBjYXBhYmlsaXR5Ci0tIEFsbG93IG51dF91 cHNkcnZjdGxfdCB0aGUgc3lzX3B0cmFjZSBjYXBhYmlsaXR5Ci0tIExhYmVsIC91c3IvbGliL3N5 c3RlbWQvdXNlci9ncmFwaGljYWwtc2Vzc2lvbi1wcmUudGFyZ2V0IHdpdGggeGRtX3VuaXRfZmls ZV90Ci0tIHN5c3RlbWQtc3lzY3RsOiBhbGxvdyBydyBvbiBiaW5mbV9taXNjX2ZzX3QgdG8gc2V0 IGJpbmZtdF9taXNjIHN0YXR1cwotLSBBbGxvdyBjdXBzZCB0byBtYW5hZ2UgY3Vwc2RfcndfZXRj X3QgbG5rX2ZpbGVzCi0tIFNldCB0ZW1wb3Jhcnkgbm8tc3R1YiByZXNvbHYuY29uZiBmaWxlIGZy b20gTmV0d29ya01hbmFnZXIgYXMgbmV0X2NvbmZfdAotLSBBbGxvdyBzcGFtYyByZWFkIGFsaWFz ZXMgZmlsZQotLSBNYXJrIGNvbmZpZ2ZzX3QgYXMgbW91bnRwb2ludCAoYnNjIzEyNDYwODApCi0t IEFsbG93IHN5c3RlbWQtbWFjaGluZWQgd2F0Y2ggY2dyb3VwIGZpbGVzCi0KLSogTW9uIE9jdCAy MCAyMDI1IE1pY2hhZWwgQ2F0YW56YXJvIDxtY2F0YW56YXJvQHJlZGhhdC5jb20+IC0gNDIuMTMt MgotLSBGaXggdW5leHBhbmRlZCBtYWNybyBpbiBzZWxpbnV4X3JlcXVpcmVzCi0KLSogVHVlIE9j dCAxNCAyMDI1IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0Mi4xMy0xCi0t IEFsbG93IHNzaGQtYXV0aCByZWFkIGdlbmVyaWMgcHJvYyBmaWxlcwotLSBBbGxvdyBzc2hkLWF1 dGggcmVhZCBhbmQgd3JpdGUgdXNlciBkb21haW4gcHR5cwotLSBBbGxvdyBsb2d3YXRjaCByZWFk IGFuZCB3cml0ZSBzZW5kbWFpbCB1bml4IHN0cmVhbSBzb2NrZXRzCi0tIEFsbG93IGxvZ3dhdGNo IGRvbWFpbiB0cmFuc2l0aW9uIG9uIHJwbSBleGVjdXRpb24KLS0gQWxsb3cgdGh1bWJfdCBtb3Vu dG9uIGl0cyBwcml2YXRlIHRtcGZzIGZpbGVzCi0tIEFsbG93IHRodW1iX3QgY3JlYXRlIHBlcm1p c3Npb24gaW4gdGhlIHVzZXIgbmFtZXNwYWNlCi0tIEFsbG93IGNvcmVuZXRfdW5jb25maW5lZF90 eXBlIG5hbWVfYmluZCB0byBpY21wX3NvY2tldAotLSBBbGxvdyBzeXN0ZW1kLW5ldHdvcmtkIHRv IG1hbmFnZSBzeXN0ZW1kX25ldHdvcmtkX3Zhcl9saWJfdCBmaWxlcwotLSBBbGxvdyBzc2hkLXNl c3Npb24gZ2V0IGF0dHJpYnV0ZXMgb2Ygc3NoZCB2c29jayBzb2NrZXQKLQotKiBTYXQgT2N0IDA0 IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQyLjEyLTEKLS0gQWRq dXN0IGd1ZXN0IGFuZCB4Z3Vlc3QgdXNlcnMgcG9saWN5IGZvciBzc2hkLXNlc3Npb24KLS0gQWxs b3cgdmFsa2V5LXNlcnZlciBjcmVhdGUgYW5kIHVzZSBuZXRsaW5rX3JkbWFfc29ja2V0Ci0tIEFs bG93IGJsdWVtYW4gZ2V0IGF0dHJpYnV0ZXMgb2YgZmlsZXN5c3RlbXMgd2l0aCBleHRlbmRlZCBh dHRyaWJ1dGVzCi0tIFVwZGF0ZSBmaWxlc19zZWFyY2hfYmFzZV9maWxlX3R5cGVzKCkKLS0gQWxs b3cgZ2VvY2x1ZSBnZXQgYXR0cmlidXRlcyBvZiB0aGUgL2Rldi9zaG0gZmlsZXN5c3RlbQotLSBB bGxvdyBhcGN1cHNkIGdldCBhdHRyaWJ1dGVzIG9mIHRoZSAvZGV2L3NobSBmaWxlc3lzdGVtCi0t IEFsbG93IHNzaGQtc2Vzc2lvbiByZWFkIGNvY2twaXQgcGlkIGZpbGVzCi0KLSogV2VkIFNlcCAy NCAyMDI1IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0Mi4xMS0xCi0tIEFs bG93IG5mcyBnZW5lcmF0b3IgY3JlYXRlIGFuZCB1c2UgbmV0bGluayBzb2NrZXRzCi0tIENvbmRp dGlvbmFsbHkgYWxsb3cgdmlydCBndWVzdHMgdG8gcmVhZCBjZXJ0aWZpY2F0ZXMgaW4gdXNlciBo b21lIGRpcmVjdG9yaWVzCi0tIHhlbnN0b3JlZF90IG5lZWRzIENBUF9TWVNfQURNSU4gZm9yIFhF TlNUT1JFVFlQRT1kb21haW4gKGJzYyMxMjQ3ODc1KQotLSBBbGxvdyBuZnMtZ2VuZXJhdG9yIGNy ZWF0ZSBhbmQgdXNlIHVkcCBzb2NrZXRzCi0tIEFsbG93IGtkdW1wIHNlYXJjaCBrZHVtcGN0bF90 bXBfdCBkaXJlY3RvcmllcwotLSBBbGxvdyBpbml0IG9wZW4gYW5kIHJlYWQgdXNlciB0bXAgZmls ZXMKLS0gRml4IHRoZSBzeXN0ZW1kX2xvZ2luZF9zdHJlYW1fY29ubmVjdCgpIGludGVyZmFjZQot LSBBbGxvdyBzdGFmZiBhbmQgc3lzYWRtIGV4ZWN1dGUgaW90b3AgdXNpbmcgc3VkbwotLSBBbGxv dyBzdWRvZG9tYWlucyBjb25uZWN0IHRvIHN5c3RlbWQtbG9naW5kIG92ZXIgYSB1bml4IHNvY2tl dAotCi0qIFR1ZSBTZXAgMTYgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+ IC0gNDIuMTAtMQotLSBBZGQgZGVmYXVsdCBjb250ZXh0cyBmb3Igc3NoZC1zZWVzaW9uCi0tIERl ZmluZSB0eXBlcyBmb3IgbmV3IG9wZW5zc2ggZXhlY3V0YWJsZXMKLQotKiBNb24gU2VwIDE1IDIw MjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQyLjktMQotLSBGaXggc3lz dGVtZF9tYW5hZ2VfdW5pdF9zeW1saW5rcygpIGludGVyZmFjZSBkZWZpbml0aW9uCi0tIFN1cHBv cnQgY29yZW9zIGluc3RhbGxhdGlvbiBtZXRob2RzCi0tIEFkZCBhIG5ldyB0eXBlIGZvciBzeXN0 ZW1kLXNzaC1pc3N1ZSBQSUQgZmlsZXMKLS0gQWxsb3cgZ25vbWUtcmVtb3RlLWRlc2t0b3AgY29u bmVjdCB0byB1bnJlc2VydmVkIHBvcnRzCi0tIEFsbG93IG1kYWRtIHRoZSBDQVBfU1lTX1BUUkFD RSBjYXBhYmlsaXR5Ci0tIEFsbG93IGlwdGFibGVzIG1hbmFnZSBpdHMgcHJpdmF0ZSBmaWZvX2Zp bGVzIGluIC90bXAKLS0gQWxsb3cgYXVkaXRkIG1hbmFnZSBpdHMgcHJpdmF0ZSBydW4gZGlycwot LSBSZXZlcnQgIkFsbG93IHZpcnRfZG9tYWluIHdyaXRlIHRvIHZpcnRfaW1hZ2VfdCBmaWxlcyIK LS0gRXhjbHVkZSB0YWJybWQuaWYgZnJvbSBpbnRlcmZhY2VzIGxpc3QKLQotKiBUaHUgU2VwIDA0 IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQyLjgtMQotLSBBbGxv dyBnZG0gY3JlYXRlIC9ldGMvLnB3ZC5sb2NrIHdpdGggYSBmaWxlIHRyYW5zaXRpb24KLS0gQWxs b3cgZ2RtIGJpbmQgYSBzb2NrZXQgaW4gdGhlIC9ydW4vc3lzdGVtZC91c2VyZGJkIGRpcmVjdG9y eQotLSBBbGxvdyBuc3N3aXRjaF9kb21haW4gY29ubmVjdCB0byB4ZG0gb3ZlciBhIHVuaXggZG9t YWluIHNvY2tldAotLSBBbGxvdyBzeXN0ZW1kIGhvbWVkIGdldGF0dHIgYWxsIHRtcGZzIGZpbGVz IChic2MjMTI0MDg4MykKLS0gQWxsb3cgc3lzdGVtZCAoUElEIDEpIGNyZWF0ZSBsYXN0bG9nIGVu dHJpZXMKLS0gQWxsb3cgc3lzdGVtZF9ob21ld29ya190IHRyYW5zaXRpb24gcGlkIGZpbGVzIHRv IGx2bV92YXJfcnVuX3QgKGJzYyMxMjQwODgzKQotLSBBbGxvdyBnbm9tZS1yZW1vdGUtZGVza3Rv cCBzcGVhayB3aXRoIHRhYnJtZCBvdmVyIGRidXMgKGJzYyMxMjQ0NTczKQotLSBBbGxvdyBubS1k aXNwYXRjaGVyIGlzY3NpIGFuZCBzZW5kbWFpbCBwbHVnaW5zIGdldCBwaWRmcyBhdHRyaWJ1dGVz Ci0tIEFsbG93IHN5c3RlbWQtb29tZCB3YXRjaCB0bXBmcyBkaXJzCi0tIEFsbG93IGNocm9ueWMg dGhlIHNldGdpZCBhbmQgc2V0dWlkIGNhcGFiaWxpdGllcwotCi0qIEZyaSBBdWcgMjkgMjAyNSBa ZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDIuNy0xCi0tIExhYmVsIC91c3Iv bGliL3N5c3RlbWQvc3lzdGVtZC1zc2gtaXNzdWUgd2l0aCBzeXN0ZW1kX3NzaF9pc3N1ZV9leGVj X3QKLS0gQWxsb3cgc3RhbGxkIG1hcCBzeXNmcyBmaWxlcwotLSBBbGxvdyBOZXR3b3JrTWFuYWdl ci1kaXNwYXRjaGVyLXdpbmJpbmQgZ2V0IHBpZGZzIGF0dHJpYnV0ZXMKLS0gQWxsb3cgb3BlbnZw biBjcmVhdGUgYW5kIHVzZSBnZW5lcmljIG5ldGxpbmsgc29ja2V0Ci0tIHBvbGljeV9jYXBhYmls aXRpZXM6IHJlbW92ZSBlc3RpbWF0ZWQgZnJvbSByZWxlYXNlZCB2ZXJzaW9ucwotLSBwb2xpY3lf Y2FwYWJpbGl0aWVzOiBhZGQgc3R1YiBmb3IgdXNlcnNwYWNlX2luaXRpYWxfY29udGV4dAotLSBh ZGQgbmV0bGlua194cGVybSBwb2xpY3kgY2FwYWJpbGl0eSBhbmQgbmxtc2cgcGVybWlzc2lvbiBk ZWZpbml0aW9ucwotLSBwb2xpY3lfY2FwYWJpbGl0aWVzOiBhZGQgaW9jdGxfc2tpcF9jbG9leGVj Ci0tIHNlbGludXgtcG9saWN5OiBhZGQgYWxsb3cgcnVsZSBmb3IgdHVuZWRfcHBkX3QKLS0gc2Vs aW51eC1wb2xpY3k6IGFkZCBhbGxvdyBydWxlIGZvciBzd2l0Y2hlcm9vX2NvbnRyb2xfdAotLSBM YWJlbCAvcnVuL2F1ZGl0IHdpdGggYXVkaXRkX3Zhcl9ydW5fdAotCi0qIFR1ZSBBdWcgMTIgMjAy NSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDIuNi0xCi0tIEFsbG93IHZp cnRxZW11ZCBzdGFydCBhIHZtIHdoaWNoIHVzZXMgbmJka2l0Ci0tIEFkZCBuYmRraXRfc2lnbmFs KCkgYW5kIG5iZGtpdF9zaWdudWxsKCkgaW50ZXJmYWNlcwotLSBGaXggaW5zaWdodHNfY2xpZW50 IGludGVyZmFjZXMgbmFtZXMKLS0gQWRkIGluc2lnaHRzX2NvcmUgYW5kIGluc2lnaHRzX2NsaWVu dCBpbnRlcmZhY2VzCi0tIGRpc3QvdGFyZ2V0ZWQvbW9kdWxlcy5jb25mOiBlbmFibGUgc2xybnB1 bGwgbW9kdWxlCi0tIEFsbG93IGJvb3R1cGQgZGVsZXRlIHN5bWxpbmtzIGluIHRoZSAvYm9vdCBk aXJlY3RvcnkKLS0gQWxsb3cgc3lzdGVtZC1jb3JlZHVtcGQgY2FwYWJpbGl0aWVzIGluIHRoZSB1 c2VyIG5hbWVzcGFjZQotLSBBbGxvdyBvcGVudnN3aXRjaCByZWFkIHZpcnRxZW11ZCBwcm9jZXNz IHN0YXRlCi0tIEFsbG93IHN5c3RlbWQtbmV0d29ya2QgdG8gY3JlYXRlIGxlYXNlcyBkaXJlY3Rv cnkKLQotKiBGcmkgQXVnIDA4IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29t PiAtIDQyLjUtMQotLSBBcHBseSBnZW5lcmF0b3IgdGVtcGxhdGUgdG8gc2VsaW51eC1hdXRvcmVs YWJlbCBnZW5lcmF0b3IKLS0gU3VwcG9ydCB2aXJ0cWVtdWQgaGFuZGxlIGhvdHBsdWcgaG9zdGRl diBkZXZpY2VzCi0tIEFsbG93IHZpcnRzdG9yYWdlZCBjcmVhdGUgcWVtdSAvdmFyL3J1biBmaWxl cwotLSBBbGxvdyB1bmNvbmZpbmVkX2RvbWFpbl90eXBlIGNhcDJfdXNlcm5zIGNhcGFiaWxpdGll cwotLSBMYWJlbCAvdXNyL2xpYmV4ZWMvcG9zdGZpeC90bHNwcm94eSB3aXRoIHBvc3RmaXhfc210 cF9leGVjX3QKLS0gUmVtb3ZlIHRoZSBteXNxbCBtb2R1bGUgc291cmNlcwotLSBkaXN0L3Rhcmdl dGVkL21vZHVsZXMuY29uZjogRW5hYmxlIGttc2NvbiBtb2R1bGUgKGJzYyMxMjM4MTM3KQotLSBV cGRhdGUga21zY29uIHBvbGljeSBtb2R1bGUgdG8ga21zY29uIHZlcnNpb24gOSAoYnNjIzEyMzgx MzcpCi0tIEFsbG93IGxvZ2luIHRvIGdldGF0dHIgcGlkZnMKLS0gQWxsb3cgc3lzdGVtZCB0byBt YXAgZmlsZXMgdW5kZXIgL3N5cwotLSBzeXN0ZW1kOiBkcm9wIGR1cGxpY2F0ZSBpbml0X25ucF9k YWVtb25fZG9tYWluIGxpbmVzCi0tIEZpeCB0eXBvCi0tIEFsbG93IGxvZ3dhdGNoIHN0cmVhbSBj b25uZWN0IHRvIG9wZW5zbXRwZAotLSBBbGxvdyBnZW9jbHVlIHJlYWQgTmV0d29ya01hbmFnZXIg cGlkIGZpbGVzCi0KLSogTW9uIEF1ZyAwNCAyMDI1IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVk aGF0LmNvbT4gLSA0Mi40LTEKLS0gQWxsb3cgdW5jb25maW5lZCB1c2VyIGEgZmlsZSB0cmFuc2l0 aW9uIGZvciBjcmVhdGluZyBzdWRvIGxvZyBkaXJlY3RvcnkKLS0gQWxsb3cgdmlydHFlbXVkIHJl YWQvd3JpdGUgaW5oZXJpdGVkIGRyaSBkZXZpY2VzCi0tIEFsbG93IHhkbV90IGNyZWF0ZSB1c2Vy IG5hbWVzcGFjZXMKLS0gVXBkYXRlIHBvbGljeSBmb3IgbG9naW5fdXNlcmRvbWFpbgotLSBBZGQg cHBkX2Jhc2VfcHJvZmlsZSB0byBmaWxlIHRyYW5zaXRpb24gdG8gZ2V0IHR1bmVkX3J3X2V0Y190 IHR5cGUKLS0gVXBkYXRlIHBvbGljeSBmb3IgYm9vdHVwZAotLSBBbGxvdyBsb2d3YXRjaCB3b3Jr IHdpdGggb3BlbnNtdHBkCi0tIFVwZGF0ZSBkb3ZlY290IHBvbGljeSBmb3IgZG92ZWNvdCAyLjQu MQotLSBBbGxvdyByYXMtbWMtY3RsIHdyaXRlIHRvIHN5c2ZzIGZpbGVzCi0tIEFsbG93IGFuYWNv bmRhLWdlbmVyYXRvciBnZXQgYXR0cmlidXRlcyBvZiBhbGwgZmlsZXN5c3RlbXMKLS0gQWRkIHRo ZSByaGNkX3J3X2ZpZm9fZmlsZXMoKSBpbnRlcmZhY2UKLS0gQWxsb3cgc3lzdGVtZC1jb3JlZHVt cCB0aGUgc3lzX2Nocm9vdCBjYXBhYmlsaXR5Ci0tIEFsbG93IGhvc3RhcGQgd3JpdGUgdG8gc29j a2V0IGZpbGVzIGluIC90bXAKLS0gUmVjb2duaXplIC92YXIvaG9tZSBhcyBhbiBhbHRlcm5hdGUg cGF0aCBmb3IgL2hvbWUKLS0gTGFiZWwgL3Zhci9saWIvbGFzdGxvZyB3aXRoIGxhc3Rsb2dfdAot Ci0qIE1vbiBKdWwgMjggMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0g NDIuMy0xCi0tIEFsbG93IHZpcnRxZW11ZCB3cml0ZSB0byBzeXNmcyBmaWxlcwotLSBBbGxvdyBp cnFiYWxhbmNlIHNlYXJjaCBzc3NkIGxpYiBkaXJlY3RvcmllcwotLSBBbGxvdyBzYW1iYS1kY2Vy cGNkIHNlbmQgc2lna2lsbHMgdG8gcGFzc3dkCi0tIEFsbG93IHN5c3RlbWQtb29tZCB3YXRjaCBk YnVzIHBpZCBzb2NrIGZpbGVzCi0tIEFsbG93IHNvbWUgY29uZmluZWQgdXNlcnMgcmVhZCBhbmQg bWFwIGdlbmVyaWMgbG9nIGZpbGVzCi0tIEFsbG93IGxvZ2luX3VzZXJkb21haW4gd2F0Y2ggdGhl IC9ydW4vbG9nL2pvdXJuYWwgZGlyZWN0b3J5Ci0tIEFsbG93IGxvZ2luX3VzZXJkb21haW4gZGJ1 cyBjaGF0IHdpdGggdHVuZWQtcHBkCi0tIEFsbG93IGxvZ2luX3VzZXJkb21haW4gZGJ1cyBjaGF0 IHdpdGggc3dpdGNoZXJvby1jb250cm9sCi0tIEFsbG93IHVzZXJkb21haW4gdG8gY29ubmVjdCB0 byBzeXN0ZW1kLW9vbWQgb3ZlciBhIHVuaXggc29ja2V0Ci0tIEFkZCBpbnNpZ2h0c19jbGllbnRf ZGVsZXRlX2xpYl9kaXJzKCkgaW50ZXJmYWNlCi0KLSogRnJpIEp1bCAyNSAyMDI1IEZlZG9yYSBS ZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNDIuMi0yCi0t IFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfNDNfTWFz c19SZWJ1aWxkCi0KLSogTW9uIEp1bCAyMSAyMDI1IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVk aGF0LmNvbT4gLSA0Mi4yLTEKLS0gQWxsb3cgdmlydHFlbXVkX3QgdXNlIGl0cyBwcml2YXRlIHRt cGZzIGZpbGVzIChic2MjMTI0Mjk5OCkKLS0gQWxsb3cgdmlydHFlbXVkX3Qgc2V0YXR0ciB0byAv ZGV2L3VzZXJmYXVsdGZkIChic2MjMTI0Mjk5OCkKLS0gQWxsb3cgdmlydHFlbXVkX3QgcmVhZCBh bmQgd3JpdGUgL2Rldi9wdG14IChic2MjMTI0Mjk5OCkKLS0gRXh0ZW5kIHZpcnRxZW11ZF90IHRj cF9zb2NrZXQgcGVybWlzc2lvbnMgKGJzYyMxMjQyOTk4KQotLSBBbGxvdyB2aXJ0cWVtdWRfdCB0 byByZWFkIGFuZCB3cml0ZSBnZW5lcmljIHB0eSAoYnNjIzEyNDI5OTgpCi0tIEFsbG93IHN5c3Rl bWQtaW1wb3J0ZCBjcmVhdGUgYW5kIHVubGluayBpbml0IHBpZCBzb2NrZXQKLS0gQWxsb3cgdmly dHFlbXVkIGhhbmRsZSB2aXJ0X2NvbnRlbnRfdCBjaHIgZmlsZXMKLS0gQWxsb3cgc3ZpcnQgcmVh ZCB2aXJ0cWVtdWQgZmlmbyBmaWxlcwotLSBBbGwgc2JsaW0tc2ZjYmQgdGhlIGRhY19yZWFkX3Nl YXJjaCBjYXBhYmlsaXR5Ci0tIEFsbG93IHNibGltIGRvbWFpbiByZWFkIHN5c3RlbWQgc2Vzc2lv biBmaWxlcwotLSBBbGxvdyBzYmxpbS1zZmNiZCBleGVjdXRlIGRuc2RvbWFpbm5hbWUKLS0gQ29u ZmluZSBuZnMtc2VydmVyIGdlbmVyYXRvcgotLSBBbGxvdyBzeXN0ZW1kLXRpbWVkYXRlZCBzdGFy dC9zdG9wIHRpbWVtYXN0ZXIgc2VydmljZXMKLS0gQWxsb3cgImhvc3RhcGRfY2xpIHBpbmciIHJ1 biBhcyBhIHN5c3RlbWQgc2VydmljZQotLSBBbGxvdyBwb3dlci1wcm9maWxlcy1kYWVtb24gZ2V0 IGF0dHJpYnV0ZXMgb2YgZmlsZXN5c3RlbXMgd2l0aCBleHRlbmRlZCBhdHRyaWJ1dGVzCi0tIEFs bG93ICdvb21jdGwgZHVtcCcgdG8gaW50ZXJhY3Qgd2l0aCBzeXN0ZW1kLW9vbWQKLS0gQmFzaWMg ZnVuY3Rpb25hbGl0eSBmb3Igc3lzdGVtZC1vb21kCi0tIEJhc2ljIGVuYWJsZW1lbnQgZm9yIHN5 c3RlbWQtb29tZAotLSBBbGxvdyBzYW1iYS1iZ3FkIHNlbmQgdG8gc21iZCBvdmVyIGEgdW5peCBk YXRhZ3JhbSBzb2NrZXQKLS0gVXBkYXRlIGtlcm5lbF9zZWNyZXRtZW1fdXNlKCkKLS0gQWRkIHRo ZSBmaWxlL3dhdGNoX21vdW50bnMgcGVybWlzc2lvbgotCi0qIFR1ZSBKdWwgMTUgMjAyNSBaZGVu ZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDIuMS0xCi0tIFVwZGF0ZSBzeXN0ZW1k LWdlbmVyYXRvcnMgcG9saWN5Ci0tIEFsbG93IHBseW1vdXRoZF90IHJlYWQgcHJvYyBmaWxlcyBv ZiBzeXN0ZW1kX3Bhc3N3ZF9hZ2VudCAoYnNjIzEyNDU0NzApCi0tIEFsbG93IGluc2lnaHRzLWNs aWVudCBmaWxlIHRyYW5zaXRpb24gZm9yIGZpbGVzIGluIC92YXIvdG1wCi0tIEFsbG93IHR1bmVk LXBwZCBtYW5hZ2UgdHVuZWQgbG9nIGZpbGVzCi0tIEFsbG93IHN5c3RlbWQtY29yZWR1bXAgbW91 bnQgb24gdG1wZnMgZmlsZXN5c3RlbXMKLS0gVXBkYXRlIHNzc2RfZG9udGF1ZGl0X3JlYWRfcHVi bGljX2ZpbGVzKCkKLS0gQWxsb3cgenJhbS1nZW5lcmF0b3IgcmF3IHJlYWQgZml4ZWQgZGlzayBk ZXZpY2UKLQotKiBGcmkgSnVsIDA0IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQu Y29tPiAtIDQxLjQ1LTEKLS0gQWRkIGZzX3dyaXRlX2Nncm91cF9kaXJzKCkgYW5kIGZzX3NldGF0 dHJfY2dyb3VwX2RpcnMoKSBpbnRlcmZhY2VzCi0tIEFsbG93IGlycWJhbGFuY2UgZXhlY3V0ZSBz aGVsbCBpZiBpcnFiYWxhbmNlX3J1bl91bmNvbmZpbmVkIGlzIG9uCi0tIEFsbG93IG9wZW52c3dp dGNoIGlvY3RsIHZkdXNlIGRldmljZXMKLS0gTGFiZWwgL2Rldi92ZHVzZS9jb250cm9sIGFuZCAv ZGV2L3ZkdXNlL05BTUUgZGV2aWNlcwotLSBBbGxvdyB2aXJ0c3RvcmFnZWQgdGhlIHN5c19yYXdp byBjYXBhYmlsaXR5Ci0tIEFsbG93IHZpcnRxZW11ZCByZWFkIGluc2lnaHRzLWNvcmUgc3RhdGUg ZmlsZXMKLS0gQWxsb3cgdmlydG5vZGVkZXYgY3JlYXRlIG1kZXZjdGwgY29uZmlnIGRpcnMKLS0g QWxsb3cgdmlydHFlbXVkIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMgb24gc2NzaSBnZW5lcmljIGNo ciBmaWxlcwotLSBBbGxvdyBsb2NhbCBsb2dpbiBleGVjdXRlIGdub21lIGtleXJpbmcgZGFlbW9u Ci0tIEFsbG93IHZpcnRxZW11ZCBzZW5kIGEgZ2VuZXJpYyBzaWduYWwgdG8gcGFzc3QKLS0gQWxs b3cgc3ZpcnQtdGNnIHJlYWQgaW5pdCBzdGF0ZQotLSBBbGxvdyBpcnFiYWxhbmNlIGV4ZWN1dGUg c2hlbGwgaWYgaXJxYmFsYW5jZV9ydW5fdW5jb25maW5lZCBpcyBvbgotLSBMYWJlbCAvcnVuL29w ZW5ka2ltIHdpdGggZGtpbV9taWx0ZXJfZGF0YV90Ci0tIEFsbG93IHNhLXVwZGF0ZSBzdGF0dXMg c3lzdGVtZCBzZXJ2aWNlcwotLSBBbGxvdyB1cGRwd2QgbG9nZ2luZyBzZW5kIGF1ZGl0IG1lc3Nh Z2VzCi0tIFRlbXBvcmFyeSBkb250YXVkaXQgaWlvLXNlbnNvci1wcm94eSBzeXNfYWRtaW4uCi0t IEFsbG93IGlpby1zZW5zb3ItcHJveHkgc2VuZHRvIHRvIGpvdXJuYWxkIG92ZXIgYSB1bml4IGRh dGFncmFtIHNvY2tldAotLSBSZXZlcnQgIkFsbG93IGlpby1zZW5zb3ItcHJveHkgc2VuZHRvIHRv IGpvdXJuYWxkIG92ZXIgYSB1bml4IGRhdGFncmFtIHNvY2tldCIKLQotKiBGcmkgSnVsIDA0IDIw MjUgUGV0ciBMYXV0cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPiAtIDQxLjQ0LTIKLS0gUmVi dWlsdCB3aXRoIFNFTGludXggdXNlcnNwYWNlIDMuOS1yYzIgcmVsZWFzZQotCi0qIFR1ZSBKdW4g MTcgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuNDQtMQotLSB2 aXJ0OiBhbGxvdyBRRU1VIHVzZSBvZiB0aGUgcWdzIGRhZW1vbiBmb3IgYXR0ZXN0YXRpb24KLS0g cWdzOiBhZGQgY29udHJpYiBtb2R1bGUgZm9yIFREWCAicWdzIiBkYWVtb24KLS0ga2VybmVsOiBh ZGQgaW50ZXJmYWNlcyBmb3IgdXNpbmcgU0dYIGVuY2xhdmVzCi0tIERlZmluZSBmaWxlIGVxdWl2 YWxlbmN5IGZvciAvdXNyL2V0YwotLSBBbGxvdyBtb25nb2QgdG8gcmVjZWl2ZSBwcmVzc3VyZSBz dGFsbCBpbmZvcm1hdGlvbgotLSBEb250YXVkaXQgc3lzdGVtZF9nZW5lcmF0b3IgcmVhZCBzc3Nk IHB1YmxpYyBmaWxlcwotLSBBbGxvdyBwbHltb3V0aGQgcmVhZC93cml0ZSBpbnB1dCBldmVudCBk ZXZpY2VzCi0tIExhYmVsIDk5LW52bWUtbmJmdC1jb25uZWN0LnNoIHdpdGggTmV0d29ya01hbmFn ZXJfZGlzcGF0Y2hlcl9udm1lX3NjcmlwdF90Ci0tIEFsbG93IHN5c3RlbWQtdXNlci1ydW50aW1l LWRpciBzZW5kdG8gdG8gc3lzbG9nZAotLSBSZW1vdmUgcGNwIG1vZHVsZQotLSBVcGRhdGUgaXJx YmFsYW5jZSBwb2xpY3kgZm9yIHVzaW5nIHVuY29uZmluZWQgc2NyaXB0cwotLSBBbGxvdyB1dGVt cHRlciB1c2UgdGVybWluYWwgbXVsdGlwbGV4b3IKLS0gQWxsb3cgdmlydHFlbXVkIGV4ZWN1dGUg b3ZzLXZzY3RsIHdpdGggYSBkb21haW4gdHJhbnNpdGlvbgotLSBVcGRhdGUgdGhlIGZpbGVzX3Nl YXJjaF9tbnQoKSBpbnRlcmZhY2UKLQotKiBXZWQgSnVuIDA0IDIwMjUgWmRlbmVrIFB5dGVsYSA8 enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjQzLTEKLS0gQWxsb3cgbm1iZCByZWFkIG5ldHdvcmsg c3lzY3RscwotLSBBbGxvdyBpaW8tc2Vuc29yLXByb3h5IHNlbmR0byB0byBqb3VybmFsZCBvdmVy IGEgdW5peCBkYXRhZ3JhbSBzb2NrZXQKLS0gQWxsb3cgbG9ncm90YXRlIHN0b3AgYWxsIHN5c3Rl bWQgc2VydmljZXMKLS0gc3lzdGVtZDogcmV3b3JrIHN5c3RlbWRfbWFuYWdlX3JhbmRvbV9zZWVk Ci0tIEFsbG93IHR1bmVkLXBwZCBjb25uZWN0IHRvIHNzc2Qgb3ZlciBhIHVuaXggc3RyZWFtIHNv Y2tldAotCi0qIFR1ZSBKdW4gMDMgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5j b20+IC0gNDEuNDItMQotLSBEcm9wIGNvbmZpZyBmb3IgL3J1bi9yYW5kb20tc2VlZAotLSBVcGRh dGUgZmlsZSBsb2NhdGlvbiBmb3Igc3lzdGVtZCByYW5kb20tc2VlZCBmaWxlCi0tIEFsbG93IHRv bWNhdCBleGVjdXRlIGNyYWNrbGliLWNoZWNrIHdpdGggYSBkb21haW4gdHJhbnNpdGlvbgotLSBB bGxvdyBzc3NkIHdhdGNoIGxpYiBkaXJzCi0tIENvbmZpbmUgc3lzdGVtZC1oaWJlcm5hdGUtcmVz dW1lCi0tIEFsbG93IGxvZ2luX3VzZXJkb21haW4gY3JlYXRlIC9ydW4vdGxvZyBkaXJlY3Rvcnkg d2l0aCB1c2VyX3RtcF90Ci0tIEFsbG93IGxvZ2luX3BnbSByZWFkIGZpbGVzeXN0ZW0gc3lzY3Rs cwotLSBBbGxvdyBnY29uZmQgY29ubmVjdCB0byBzeXN0ZW0gZGJ1cwotLSBBbGxvdyBOZXR3b3Jr TWFuYWdlciBtYW5hZ2UgTmV0d29ya01hbmFnZXJfZXRjX3J3X3Qgc3ltbGlua3MKLQotKiBUaHUg TWF5IDIyIDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjQxLTEK LS0gQWxsb3cgbWRhZG0gbm9zdWlkX3RyYW5zaXRpb24KLS0gTGFiZWwgcGxhc21hIHVzZXIgc2Vy dmljZSBmaWxlcyBhcyB4ZG1fdW5pdF9maWxlX3QuCi0tIFJldmVydCAiQWxsb3cgc3lzdGVtZC1o b21lZCB0byBzdGFydCBzZXJ2aWNlcy4iCi0tIEFsbG93IHZpcnRzdG9yYWdlZCB3cml0ZSBxZW11 IHJ1bnRpbWUgZmlsZXMKLS0gQWxsb3cgdmlydHFlbXVkIHJlYWQvd3JpdGUvc2V0YXR0ciBpbnB1 dCBldmVudCBkZXZpY2VzCi0tIEFsbG93IHN5c3RlbWQgY3JlYXRlIGpvdXJuYWwgcGlkIGZpbGVz Ci0tIEFsbG93IG5ldHdvcmttYW5hZ2VyIHNlbmQgYSBnZW5lcmFsIHNpZ25hbCB0byBpcHRhYmxl cwotLSBBbGxvdyBzeXNsb2dkIHdhdGNoIHN5c2xvZ19jb25mX3QgZGlyZWN0b3JpZXMKLS0gQWxs b3cgc3lzdGVtZC1tYWNoaW5lZCB3b3JrIHdpdGggaXRzIHByaXZhdGUgdG1wIGFuZCB0bXBmcyBm aWxlcwotLSBBbGxvdyBnZW9jbHVlIHJlYWQgdmlydCBsaWIgZmlsZXMKLS0gRml4IGZpbGVzX2Rv bnRhdWRpdF9kZWxldGVfYWxsX2ZpbGVzKCkKLS0gTGFiZWwgL3J1bi9wb2xraXQtMSB3aXRoIHBv bGljeWtpdF92YXJfcnVuX3QKLS0gTGFiZWwgL2Rldi9kaWFnIGFzIGRpYWdub3N0aWNfZGV2aWNl X3QKLS0gQWxsb3cgc3lzdGVtZC1ob21lZCB0byBzdGFydCBzZXJ2aWNlcy4KLS0gQWxsb3cgbmFt ZWRfdCB0byByZWFkIE5ldHdvcmtNYW5hZ2VyJ3MgcnVudGltZSBmaWxlcwotLSBJbXByb3ZlIFJF QURNRSogZG9jdW1lbnRhdGlvbgotCi0qIFR1ZSBNYXkgMTMgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6 cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuNDAtMQotLSBBZGQgbWlzc2luZyBwZXJtaXNzaW9ucyBm b3IgZnRwZF9hbm9uX3dyaXRlIHRvIG1hbmFnZSBORlMgZGlyZWN0b3JpZXMKLS0gQWRkIG1pc3Np bmcgcGVybWlzc2lvbnMgZm9yIGZ0cGRfYW5vbl93cml0ZSB0byBtYW5hZ2UgQ0lGUyBkaXJlY3Rv cmllcwotLSBBbGxvdyBudXQtdXBzbW9uIHdyaXRlIHN5c3RlbWQgaW5oaWJpdCBwaXBlcwotLSBB bGxvdyBzeXN0ZW1kLXVzZXItcnVudGltZS1kaXIgY29ubmVjdCB0byBzeXN0ZW1kLXVzZXJkYmQg b3ZlciBhIHVuaXggc29ja2V0Ci0tIFJlbW92ZSBwZXJtaXNzaXZlIGRvbWFpbiBmb3Igc3lzdGVt ZF92c2Z0cGRfZ2VuZXJhdG9yX3QKLS0gQ2hhbmdlIGdlbmVyYXRvci1zcGVjaWZpYyBydWxlcyB0 byBhcHBseSB0byBzeXN0ZW1kX2dlbmVyYXRvcgotLSBEZWZpbmUgZmlsZSBlcXVpdmFsZW5jeSBm b3IgL3Zhci9ldGMKLS0gQWxsb3cgdHVuZWQtcHBkIGNyZWF0ZSBwcGRfYmFzZV9wcm9maWxlIHdp dGggYSBmaWxlIHRyYW5zaXRpb24KLS0gQWxsb3cgbGxkcGQgY29ubmVjdCB0byBzeXN0ZW1kLWhv bWVkIG92ZXIgYSB1bml4IHNvY2tldAotLSBBbGxvdyBzeXNhZG1fc3Vkb190IHNpZ25hbCBycG0g c2NyaXB0Ci0tIEZpeCB0aGUgIi92YXIvY2FjaGUvc3lzdGVtZC9ob21lKC8uKik/IiByZWdleAot Ci0qIFdlZCBBcHIgMzAgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0g NDEuMzktMQotLSBBbGxvdyBjb2xsZWN0ZCBhY2NlcHQgYW5kIGxpc3RlbiB0byB0Y3Agc29ja2V0 cwotLSBBbGxvdyBpbml0X3Qgbm5wIGRvbWFpbiB0cmFuc2l0aW9uIHRvIHJlZGlzX3QKLS0gQWxs b3cgdGxzaGQgcmVhZCBuZXR3b3JrIHN5c2N0bHMKLS0gQWxsb3cgTmV0d29ya01hbmFnZXIgY3Jl YXRlIGFuZCB1c2UgaWNtcF9zb2NrZXQKLS0gQWxsb3cgdmFybmlzaGQgZXhlY3V0ZSB0aGUgcHJs aW1pdDY0KCkgc3lzY2FsbAotLSBBbGxvdyByaHNtY2VydGQgY29ubmVjdCB0byBzeXN0ZW1kLW1h Y2hpbmVkCi0tIEFsbG93IHZpcnRfZG9tYWluIHdyaXRlIHRvIHZpcnRfaW1hZ2VfdCBmaWxlcwot LSBBbGxvdyBzeXN0ZW0tZGJ1c2QgbGlzdCBzeXN0ZW1kLW1hY2hpbmVkIGRpcmVjdG9yaWVzCi0t IEFsbG93IGFzdGVyaXNrIHJlYWQgbmV0d29yayBzeXNjdGxzCi0tIEFsbG93IHZpcnRzdG9yYWdl ZCBmc2V0aWQgY2FwYWJpbGl0eQotLSBBbGxvdyB4ZG0gd2F0Y2ggYSBtbnRfdCBkaXJlY3RvcnkK LS0gQWxsb3cgY29sbGVjdGQgYmluZCBUQ1Agc29ja2V0cyB0byB0aGUgY29sbGVjdGQgcG9ydAot LSBBbGxvdyB2aXJ0cWVtdWQgcmVsYWJlbCBmcm9tIHRtcGZzIGxuayBmaWxlcwotLSBBbGxvdyBn bm9tZS1yZW1vdGUtZGVza3RvcCBhZGRpdGlvbmFsIHNvY2tldHMgcGVybWlzc2lvbnMKLS0gVXBk YXRlIGluc2lnaHRzLWNvcmUgcG9saWN5Ci0tIFVwZGF0ZSBzeXN0ZW1kLWhvbWVkIHBvbGljeQot LSBBbGxvdyB4ZW5zdG9yZWRfdCBtYW5hZ2UgeGVuZF92YXJfbGliX3QgZmlsZXMgKGJzYyMxMjI4 NTQwKQotCi0qIFRodSBBcHIgMTcgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5j b20+IC0gNDEuMzgtMQotLSBBbGxvdyBpbml0IGFuZCBsb2dpbl9wZ20gY29ubmVjdCB0byBzeXN0 ZW1kLWxvZ2luZCBvdmVyIGEgdW5peCBzb2NrZXQKLS0gQWxsb3cgbG9naW5fdXNlcmRvbWFpbiBy ZWFkIHByZXNzdXJlIHN0YWxsIGluZm9ybWF0aW9uCi0tIEFsbG93IHN5c3RlbWQtam91cm5hbGQg Y3JlYXRlIGFuZCB1c2UgdnNvY2sgc29ja2V0Ci0tIFVwZGF0ZSBzeXN0ZW1kLXBjcmV4dGVuZCBw b2xpY3kKLS0gQWxsb3cgc3lzdGVtZCB3YXRjaC93YXRjaF9yZWFkcyB1c2IgdHR5cwotLSBVcGRh dGUgY29yZW9zLWluc3RhbGxlci1nZW5lcmF0b3IgcG9saWN5Ci0tIFVwZGF0ZSBzeXN0ZW1kLWhv bWVkIHBvbGljeQotLSBBbGxvdyBzeXN0ZW1kLXVzZXItcnVudGltZS1kaXIgZ2V0L3NldCB0bXBm cyBxdW90YXMKLS0gQWxsb3cgc3lzdGVtZC1yZmtpbGwgcmVhZCBuc2ZzIGZpbGVzCi0tIERvbnRh dWRpdCBib290Yy1zeXN0ZW1kLWdlbmVyYXRvciBzZWFyY2ggc3NzZCBsaWIgZGlyZWN0b3JpZXMK LS0gQWxsb3cgc3lzdGVtZC11c2VyLXJ1bnRpbWUtZGlyIGRlbGV0ZSBnbm9tZSBob21lZGlyIGNv bnRlbnQKLQotKiBGcmkgQXByIDExIDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQu Y29tPiAtIDQxLjM3LTEKLS0gQWxsb3cgdHVuZWQtcHBkIHJlYWQgc3NzZCBwdWJsaWMgZmlsZXMK LS0gQWxsb3cgdHVuZWQtcHBkIHdhdGNoX3JlYWRzIHN5c2ZzIGRpcmVjdG9yaWVzCi0tIENvbmZp bmUgL3Vzci9saWIvc3lzdGVtZC9zeXN0ZW1kLXVzZXItcnVudGltZS1kaXIKLS0gUmV2ZXJ0ICJE b250YXVkaXQgc3lzdGVtZC1sb2dpbmQgcmVtb3ZlIGFsbCBmaWxlcyIKLS0gTWFrZSBib290dXBk IHVzZSBib290dXBkX3RtcF90IGFzIGl0cyBwcml2YXRlIHR5cGUgZm9yIGZpbGVzIGluIC90bXAK LS0gTGFiZWwgU2V0cm91Ymxlc2hvb3RQcml2aWxlZ2VkLnB5IHdpdGggc2V0cm91Ymxlc2hvb3Rk X2V4ZWNfdAotLSBBbGxvdyBwb3dlci1wcm9maWxlcy1kYWVtb24gd2F0Y2ggc3lzZnMgZGlyZWN0 b3JpZXMKLS0gc3lzdGVtZDogYWxsb3cgcmVhZGluZyAvZGV2L2NwdS8wL21zcgotLSBVcGRhdGUg dGhlIHBjbXNlbnNvciBwb2xpY3kKLS0gQWxsb3cgY2hyb255ZC1yZXN0cmljdGVkIHNlbmR0byB0 byBjaHJvbnljCi0tIEFsbG93IHN5c3RlbV9kYnVzZF90IHIvdyB1bml4IHN0cmVhbSBzb2NrZXRz IG9mIHVuY29uZmluZWRfc2VydmljZV90Ci0tIEFsbG93IGRvdmVjb3QtZGVsaXZlciByZWFkIG1h aWwgYWxpYXNlcwotCi0qIE1vbiBBcHIgMDcgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJl ZGhhdC5jb20+IC0gNDEuMzYtMQotLSBDb25maW5lIHN5c3RlbWQtZmFjdG9yeS1yZXNldCBzeXN0 ZW0gZ2VuZXJhdG9yCi0tIEFsbG93IHN5c3RlbWQgZGVidWcgZ2VuZXJhdG9yIHJlYWQgdG1wZnMg ZmlsZXMKLS0gQWxsb3cgZ25vbWUtc2hlbGwgZ2V0IGF0dHJpYnV0ZXMgb2Ygc3lzdGVtZCBpbmhp Yml0IHBpcGVzCi0tIEFsbG93IHR1bmVkLXBwZCB3YXRjaCBzeXNmcyBkaXJlY3RvcmllcwotLSBG aXggdGhlIHN0b3JhZ2VfcndfaW5oZXJpdGVkX3JlbW92YWJsZV9kZXZpY2UoKSBpbnRlcmZhY2UK LS0gQWxsb3cgc2FkYyByZWFkIGdsb2JhbCBwcmVzc3VyZSBzdGFsbCBpbmZvcm1hdGlvbgotLSBB bGxvdyB2aXJ0cWVtdWQgcmVhZCBzYmxpbS1nYXRoZXJkIHByb2Nlc3Mgc3RhdGUKLS0gQWxsb3cg c3dpdGNoZXJvby1jb250cm9sIGRidXMgY2hhdCB3aXRoIHhkbQotLSBGaXggdHlwbyBpbiBjYWxs aW5nIHVuY29uZmluZWRfZGJ1c19jaGF0IGZvciBzd2l0Y2hlcm9vLWNvbnRyb2wKLS0gQWxsb3cg c3lzYWRtX3QgdG8gd3JpdGUgdG8gL2Rldi9rbXNnCi0tIEFsbG93IGluaXRfdCBubnAgZG9tYWlu IHRyYW5zaXRpb24gdG8gcGNzY2RfdAotLSBGaXggdGhlIGdlbmZzY29uIHN0YXRlbWVudCBmb3Ig cGlkZnMgZmlsZXN5c3RlbQotLSBBbGxvdyB0dW5lZC1wcGQgZGJ1cyBjaGF0IHdpdGggeGRtCi0K LSogRnJpIE1hciAyOCAyMDI1IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0 MS4zNS0xCi0tIFVwZGF0ZSBJTlNUQUxMIHRvIGRlc2NyaWJlIG5lY2Vzc2FyeSBzdGVwcyB0byBi dWlsZCBpdAotLSBSZW5hbWUgdGhlIGRlZmF1bHQgcG9saWN5IHRvIGZlZG9yYS1zZWxpbnV4Ci0t IFVwZGF0ZSBDT1BZSU5HIHRvIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiBHUEx2MgotLSBBbGxvdyB0 cmFjZXJvdXRlX3QgYmluZCByYXdpcCBzb2NrZXRzIHRvIHVucmVzZXJ2ZWQgcG9ydHMKLS0gUmV2 ZXJ0ICJBbGxvdyB0cmFjZXJvdXRlX3QgYmluZCByYXdpcCBzb2NrZXRzIHRvIHVucmVzZXJ2ZWQg cG9ydHMiCi0tIENoYW5nZSB0aGUgYm9vdGMgc3lzdGVtIGdlbmVyYXRvciBuYW1lIHRvIGJvb3Rj LXN5c3RlbWQtZ2VuZXJhdG9yCi0tIEFsbG93IG1wZCB1c2UgdGhlIGlvX3VyaW5nIEFQSQotLSBD b25maW5lIHR1bmVkLXBwZAotLSBBZGQgdGhlIHN3aXRjaGVyb28gbW9kdWxlCi0tIExhYmVsIHdp bmUncyB3aW5kb3dzIGxpYnJhcmllcyBhcyB0ZXh0cmVsX3NobGliX3QKLS0gQWxsb3cgc3lzdGVt ZCBkb21haW5zIHdyaXRlIGdsb2JhbCBwcmVzc3VyZSBzdGFsbCBpbmZvcm1hdGlvbgotLSBBZGQg bGFiZWwgYW5kIGludGVyZmFjZXMgZm9yIGtlcm5lbCBQU0kgZmlsZXMKLS0gVXBkYXRlIGJvb3R1 cGQgcG9saWN5Ci0tIFVwZGF0ZSBrdGxzIHBvbGljeQotLSBBZGQgcG9saWN5IGZvciBzeXN0ZW1k LWJvb3RjLWdlbmVyYXRvcgotLSBBbGxvdyBibHVlbWFuIHRoZSBraWxsIGNhcGFiaWxpdHkKLQot KiBGcmkgTWFyIDA3IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQx LjM0LTEKLS0gQWRkIGNvbnRleHQgZm9yIHBseW1vdXRoIGRlYnVnIGxvZyBmaWxlcwotLSBBbGxv dyBybGltaXQgaW5oZXJpdGFuY2UgZm9yIGRvbWFpbnMgdHJhbnNpdGlvbmluZyB0byBsb2NhbF9s b2dpbl90Ci0tIFVwZGF0ZSBpbnNpZ2h0cy1jb3JlIHBvbGljeQotLSBBbGxvdyBpbnNpZ2h0cy1j b3JlIG1hcCBhbGwgbm9uLXNlY3VyaXR5IGZpbGVzCi0tIEFsbG93IGluc2lnaHRzLWNvcmUgbWFw IGF1ZGl0IGNvbmZpZyBhbmQgbG9nIGZpbGVzCi0tIEFsbG93IGluc2lnaHRzLWNsaWVudCBtYW5h Z2UgaW5zaWdodHNfY2xpZW50X3Zhcl9sb2dfdCBmaWxlcwotLSBSZW1vdmUgZHVwbGljYXRlIGRl dl9yd19kbWFfZGV2KHhkbV90KQotLSBBbGxvdyB0aHVtYm5haWxlciByZWFkIGFuZCB3cml0ZSB0 aGUgZG1hIGRldmljZQotLSBBbGxvdyBuYW1lZF9maWxldHJhbnNfZG9tYWluIGZpbGV0cmFucyBy YWlkL21kYWRtIG5hbWVkIGNvbnRlbnQKLS0gQWxsb3cgYWZ0ZXJidXJuIHRvIG1vdW50IGFuZCBy ZWFkIGNvbmZpZyBkcml2ZXMKLS0gQWxsb3cgbXB0Y3BkIHRoZSBuZXRfYWRtaW4gY2FwYWJpbGl0 eQotCi0qIEZyaSBGZWIgMDcgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+ IC0gNDEuMzMtMQotLSBBbGxvdyBzeXN0ZW1kLW5ldHdvcmtkIHRoZSBzeXNfYWRtaW4gY2FwYWJp bGl0eQotLSBVcGRhdGUgc3lzdGVtZC1uZXR3b3JrZCBwb2xpY3kgaW4gc3lzdGVtZCB2MjU3Ci0t IFNlcGFyYXRlIGluc2lnaHRzLWNvcmUgZnJvbSBpbnNpZ2h0cy1jbGllbnQKLS0gUmVtb3ZlZCB1 bnVzZWQgaW5zaWdodHNfY2xpZW50IGludGVyZmFjZXMgY2FsbHMgZnJvbSBvdGhlciBtb2R1bGVz Ci0tIFVwZGF0ZSBwb2xpY3kgZm9yIGluc2lnaHRzX2NsaWVudCB3cnQgbmV3IHJ1bGVzIGZvciBp bnNpZ2h0c19jb3JlX3QKLS0gQWRkIHBvbGljeSBmb3IgaW5zaWdodHMtY29yZQotLSBBbGxvdyBz eXN0ZW1kLW5ldHdvcmtkIHVzZSBpdHMgcHJpdmF0ZSB0bXBmcyBmaWxlcwotLSBBbGxvdyBib290 aGQgY29ubmVjdCB0byBzeXN0ZW1kLW1hY2hpbmVkIG92ZXIgYSB1bml4IHNvY2tldAotLSBVcGRh dGUgaW5pdF9leHBsaWNpdF9kb21haW4oKSBpbnRlcmZhY2UKLS0gQWxsb3cgdGxwIHRvIHJlYWQv d3JpdGUgbm1pX3dhdGNoZG9nIHN0YXRlIGluZm9ybWF0aW9uCi0tIEFsbG93IHBvd2VyLXByb2Zp bGVzLWRhZW1vbiB0aGUgYnBmIGNhcGFiaWxpdHkKLS0gQWxsb3cgc3ZpcnRfdCB0byBjb25uZWN0 IHRvIG5iZGtpdCBvdmVyIGEgdW5peCBzdHJlYW0gc29ja2V0Ci0tIFVwZGF0ZSBrdGxzaGQgcG9s aWN5IHRvIHJlYWQgL3Byb2Mva2V5cyBhbmQgZG9tYWluIGtleXJpbmdzCi0tIEFsbG93IHZpcnRf ZG9tYWluIHJlYWQgaGFyZHdhcmUgc3RhdGUgaW5mb3JtYXRpb24gdW5jb25kaXRpb25hbGx5Ci0t IEFsbG93IGluaXQgbW91bnRvbiBjcnlwdG8gc3lzY3RsIGZpbGVzCi0tIFJlbmFtZSB3aW5iaW5k X3JwY2RfKiB0eXBlcyB0byBzYW1iYV9kY2VycGNkXyoKLS0gU3VwcG9ydCBwZWVyLXRvLXBlZXIg bWlncmF0aW9uIG9mIHZtcyB1c2luZyBzc2gKLQotKiBXZWQgRmViIDA1IDIwMjUgWmRlbmVrIFB5 dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjMyLTEKLS0gQWxsb3cgdmlydHFlbXVkIHVz ZSBob3N0ZGV2IHVzYiBkZXZpY2VzIGNvbmRpdGlvbmFsbHkKLS0gQWxsb3cgdmlydHFlbXVkIG1h cCBzdmlydF9pbWFnZV90IHBsYWluIGZpbGVzCi0tIEFsbG93IHZpcnRxZW11ZCB3b3JrIHdpdGgg bnZkaW1tIGRldmljZXMKLS0gU3VwcG9ydCBzYXZpbmcgYW5kIHJlc3RvcmluZyBhIFZNIHRvL2Zy b20gYSBibG9jayBkZXZpY2UKLS0gQWxsb3cgdmlydG53ZmlsdGVyZCBkYnVzIGNoYXQgd2l0aCBm aXJld2FsbGQKLS0gRG9udGF1ZGl0IHN5c3RlbWQtbG9naW5kIHJlbW92ZSBhbGwgZmlsZXMKLS0g QWRkIHRoZSBmaWxlc19kb250YXVkaXRfcmVhZF9hbGxfZGlycygpIGludGVyZmFjZQotLSBBZGQg dGhlIGZpbGVzX2RvbnRhdWRpdF9kZWxldGVfYWxsX2ZpbGVzKCkgaW50ZXJmYWNlCi0tIEFsbG93 IHJoc21jZXJ0ZCBub3RpZnkgdmlydC13aG8KLS0gQWxsb3cgaXJxYmFsYW5jZSB0byBydW4gdW5j b25maW5lZCBzY3JpcHRzIGNvbmRpdGlvbmFsbHkKLS0gRml4IGJpbnNiaW4tY29udmVydC5zaCB0 byBoYW5kbGUgZXhjZXB0aW9ucwotCi0qIEZyaSBKYW4gMzEgMjAyNSBaZGVuZWsgUHl0ZWxhIDx6 cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuMzEtMQotLSBBbGxvdyBzbmFwcGVyZCBleGVjdXRlIHN5 c3RlbWN0bCBpbiB0aGUgY2FsbGVyIGRvbWFpbgotLSBBbGxvdyBzdmlydF90Y2dfdCB0byBjb25u ZWN0IHRvIG5iZGtpdCBvdmVyIGEgdW5peCBzdHJlYW0gc29ja2V0Ci0tIEFsbG93IGlpby1zZW5z b3ItcHJveHkgcmVhZCBpaW8gZGV2aWNlcwotLSBMYWJlbCAvZGV2L2lpbzpkZXZpY2VbMC05XSsg ZGV2aWNlcwotLSBBbGxvdyBzeXN0ZW1kLWNvcmVkdW1wIHRoZSBzeXNfYWRtaW4gY2FwYWJpbGl0 eQotLSBBbGxvdyBhcGN1cHNkJ3MgYXBjY29udHJvbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIHdh bGwKLS0gY29udHJpYi90aHVtYjogYWxzbyBhbGxvdyBwZXItdXNlciB0aHVtYm5haWxlcnMKLS0g Y29udHJpYi90aHVtYjogZml4IHRodW5hciB0aHVtYm5haWxlciAocmhieiMyMzE1ODkzKQotLSBB bGxvdyB2aXJ0X2RvbWFpbiB0byB1c2UgcHVsc2VhdWRpbyAtIGNvbmRpdGlvbmFsCi0tIEFsbG93 IHBjbXNlbnNvciByZWFkIG5taV93YXRjaGRvZyBzdGF0ZSBpbmZvcm1hdGlvbgotLSBBbGxvdyBp bml0X3Qgbm5wIGRvbWFpbiB0cmFuc2l0aW9uIHRvIGdzc3Byb3h5X3QKLQotKiBNb24gSmFuIDI3 IDIwMjUgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjMwLTEKLS0gQWxs b3cgc3lzdGVtZC1nZW5lcmF0b3IgY29ubmVjdCB0byBzeXNsb2cgb3ZlciBhIHVuaXggc3RyZWFt IHNvY2tldAotLSBBbGxvdyB2aXJ0cWVtdWQgbWFuYWdlIGZpeGVkIGRpc2sgZGV2aWNlIG5vZGVz Ci0tIEFsbG93IGlpby1zZW5zb3ItcHJveHkgY29ubmVjdCB0byBzeXNsb2cgb3ZlciBhIHVuaXgg c3RyZWFtIHNvY2tldAotLSBBbGxvdyB2aXJ0c3RvcmFnZWQgd3JpdGUgdG8gc3lzZnMgZmlsZXMK LS0gQWxsb3cgcG93ZXItcHJvZmlsZXMtZGFlbW9uIHdyaXRlIHN5c2ZzIGZpbGVzCi0tIFVwZGF0 ZSBpaW9zZW5zb3Jwcm94eSBwb2xpY3kKLS0gQWxsb3cgcGNtc2Vuc29yIHdyaXRlIG5taV93YXRj aGRvZyBzdGF0ZSBpbmZvcm1hdGlvbgotLSBMYWJlbCAvcHJvYy9zeXMva2VybmVsL25taV93YXRj aGRvZyB3aXRoIHN5c2N0bF9ubWlfd2F0Y2hkb2dfdAotLSBBbGxvdyB2aXJ0bm9kZWRldiBjcmVh dGUgL2V0Yy9tZGV2Y3RsLmQvc2NyaXB0cy5kIHdpdGggYmluX3QgdHlwZQotLSBBZGQgdGhlIGdw Z19yZWFkX3VzZXJfc2VjcmV0cygpIGludGVyZmFjZQotLSBBbGxvdyBnbm9tZS1yZW1vdGUtZGVz a3RvcCByZWFkIHJlc29sdi5jb25mCi0tIFVwZGF0ZSBzd2l0Y2hlcm9vIHBvbGljeQotLSBBbGxv dyBuZnNpZG1hcCBjb25uZWN0IHRvIHN5c3RlbWQtaG9tZWQgb3ZlciBhIHVuaXggc29ja2V0Ci0t IEFkZCB0aGUgYXV0aF93cml0ZV9tb3RkX3Zhcl9ydW5fZmlsZXMoKSBpbnRlcmZhY2UKLS0gQWRk IHRoZSBiaW5kX2V4ZWNfbmFtZWRfY2hlY2tjb25mKCkgaW50ZXJmYWNlCi0tIEFkZCB0aGUgdmly dF9leGVjX3ZpcnNoKCkgaW50ZXJmYWNlCi0KLSogV2VkIEphbiAxNSAyMDI1IFpkZW5layBQeXRl bGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0MS4yOS0xCi0tIEFsbG93IHZpcnRxZW11ZCBkb21h aW4gdHJhbnNpdGlvbiB0byBuYmRraXQKLS0gQWRkIG5iZGtpdCBpbnRlcmZhY2VzIGRlZmluZWQg Y29uZGl0aW9uYWxseQotLSBBbGxvdyBzYW1iYS1iZ3FkIGNvbm5lY3QgdG8gY3Vwc2Qgb3ZlciBh biB1bml4IGRvbWFpbiBzdHJlYW0gc29ja2V0Ci0tIENvbmZpbmUgdGhlIHN3aXRjaGVyb28tY29u dHJvbCBzZXJ2aWNlCi0tIEFsbG93IHN2aXJ0X3QgcmVhZCBzeXNmcyBmaWxlcwotLSBBZGQgcmhz bWNlcnRkIGludGVyZmFjZXMKLS0gQWRkIHRoZSBzc2hfZXhlY19zc2hkKCkgaW50ZXJmYWNlCi0t IEFkZCB0aGUgZ3BnX2RvbXRyYW5zX2FnZW50KCkgaW50ZXJmYWNlCi0tIExhYmVsIC91c3IvYmlu L2RuZjUgd2l0aCBycG1fZXhlY190Ci0tIExhYmVsIC9kZXYvcG1lbVswLTldKyB3aXRoIGZpeGVk X2Rpc2tfZGV2aWNlX3QKLS0gYWxsb3cga2RtIHRvIGNyZWF0ZSAvcm9vdC8ua2RlLyB3aXRoIGNv cnJlY3QgbGFiZWwKLS0gQ2hhbmdlIC91c3Ivc2JpbiBlbnRyaWVzIHRvIHVzZSAvdXNyL2JpbiBv ciByZW1vdmUgdGhlbQotLSBBbGxvdyBzeXN0ZW1kLWhvbWVkIGdldCBmaWxlc3lzdGVtIHF1b3Rh cwotLSBBbGxvdyBsb2dpbl91c2VyZG9tYWluIGdldGF0dHIgbnNmcyBmaWxlcwotLSBBbGxvdyB2 aXJ0cWVtdWQgc2VuZCBhIGdlbmVyaWMgc2lnbmFsIHRvIHRoZSBzc2ggY2xpZW50IGRvbWFpbgot LSBEb250YXVkaXQgcmVxdWVzdC1rZXkgcmVhZCAvZXRjL3Bhc3N3ZAotCi0qIEZyaSBKYW4gMDMg MjAyNSBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuMjgtMQotLSBVcGRh dGUgdmlydHFlbXVkIHBvbGljeSByZWdhcmRpbmcgdGhlIHN2aXJ0X3RjZ190IGRvbWFpbgotLSBB bGxvdyB2aXJ0cWVtdWQgZG9tYWluIHRyYW5zaXRpb24gb24gbnVtYWQgZXhlY3V0aW9uCi0tIFN1 cHBvcnQgdmlydCBsaXZlIG1pZ3JhdGlvbiB1c2luZyBzc2gKLS0gQWxsb3cgdmlydHFlbXVkIHBl cm1pc3Npb25zIG5lZWRlZCBmb3IgbGl2ZSBtaWdyYXRpb24KLS0gQWxsb3cgdmlydHFlbXVkIHRo ZSBnZXRwZ2lkIHByb2Nlc3MgcGVybWlzc2lvbgotLSBBbGxvdyB2aXJ0cWVtdWQgbWFuYWdlIG5m cyBkaXJzIHdoZW4gdmlydF91c2VfbmZzIGJvb2xlYW4gaXMgb24KLS0gQWxsb3cgdmlydHFlbXVk IHJlbGFiZWxmcm9tIHZpcnRfbG9nX3QgZmlsZXMKLS0gQWxsb3cgdmlydHFlbXVkIHJlbGFiZWwg dHVuX3NvY2tldAotLSBBZGQgcG9saWN5IGZvciBzeXN0ZW1kLWltcG9ydC1nZW5lcmF0b3IKLS0g Q29uZmluZSB2c2Z0cGQgc3lzdGVtZCBzeXN0ZW0gZ2VuZXJhdG9yCi0tIEFsbG93IHZpcnRxZW11 ZCByZWFkIGFuZCB3cml0ZSBzZ3hfdmVwYyBkZXZpY2VzCi0tIEFsbG93IHN5c3RlbWQtbmV0d29y a2QgbGlzdCBjZ3JvdXAgZGlyZWN0b3JpZXMKLS0gQWxsb3cgeGRtIGRidXMgY2hhdCB3aXRoIHBv d2VyLXByb2ZpbGVzLWRhZW1vbgotLSBBbGxvdyBzc2hfdCByZWFkIHN5c3RlbWQgY29uZmlnIGZp bGVzCi0tIEFkZCBWYWxrZXkgcnVsZXMgdG8gUmVkaXMgbW9kdWxlCi0KLSogVHVlIERlYyAxNyAy MDI0IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0MS4yNy0xCi0tIFVwZGF0 ZSBrdGxzaCBwb2xpY3kKLS0gQWxsb3cgcmVxdWVzdC1rZXkgdG8gcmVhZCAvZXRjL3Bhc3N3ZAot LSBBbGxvdyByZXF1ZXN0LWtleSB0byBtYW5hZ2UgYWxsIGRvbWFpbnMnIGtleXMKLS0gQWRkIHN1 cHBvcnQgZm9yIHRoZSBLVk0gZ3Vlc3QgbWVtZmQgYW5vbiBpbm9kZXMKLS0gQWxsb3cgYXVkaXRj dGwgc2lnbmFsIGF1ZGl0ZAotLSBEb250YXVkaXQgc3lzdGVtZC1jb3JlZHVtcCB0aGUgc3lzX3Jl c291cmNlIGNhcGFiaWxpdHkKLS0gQWxsb3cgdHJhY2Vyb3V0ZV90IGJpbmQgcmF3aXAgc29ja2V0 cyB0byB1bnJlc2VydmVkIHBvcnRzCi0tIEZpeCB0aGUgY3Vwc19yZWFkX3BpZF9maWxlcygpIGlu dGVyZmFjZSB0byB1c2UgcmVhZF9maWxlc19wYXR0ZXJuCi0tIEFsbG93IHZpcnRxZW11ZCBhZGRp dGlvbmFsIHBlcm1pc3Npb25zIGZvciB0bXBmc190IGJsayBkZXZpY2VzCi0tIEFsbG93IHZpcnRx ZW11ZCBydyBhY2Nlc3MgdG8gc3ZpcnRfaW1hZ2VfdCBjaHIgZmlsZXMKLS0gQWxsb3cgdmlydHFl bXVkIHJ3IGFuZCBzZXRhdHRyIGFjY2VzcyB0byBmaXhlZCBibG9jayBkZXZpY2VzCi0tIExhYmVs IC9ldGMvbWRldmN0bC5kL3NjcmlwdHMuZCB3aXRoIGJpbl90Ci0tIEFsbG93IHZpcnRxZW11ZCBv cGVuIHN2aXJ0X2RldnB0c190IGNoYXIgZmlsZXMKLS0gQWxsb3cgdmlydHFlbXVkIHJlbGFiZWxm cm9tIHZpcnRfbG9nX3QgZmlsZXMKLS0gQWxsb3cgc3ZpcnRfdGNnX3QgcmVhZCB2aXJ0cWVtdWRf dCBmaWZvX2ZpbGVzCi0tIEFsbG93IHZpcnRxZW11ZCBydyBhbmQgc2V0YXR0ciBhY2Nlc3MgdG8g c2V2IGRldmljZXMKLS0gQWxsb3cgdmlydHFlbXVkIGRpcmVjdGx5IHJlYWQgYW5kIHdyaXRlIHRv IGEgZml4ZWQgZGlzawotLSBBbGxvdyB2aXJ0cWVtdWRfdCByZWxhYmVsIHZpcnRfdmFyX2xpYl90 IGZpbGVzCi0tIEFsbG93IHZpcnRxZW11ZF90IHJlbGFiZWwgdmlydHFlbXVkX3Zhcl9ydW5fdCBz b2NrX2ZpbGVzCi0tIEFkZCBnbm9tZV9maWxldHJhbnNfZ3N0cmVhbWVyX2FkbWluX2hvbWVfY29u dGVudCgpIGludGVyZmFjZQotLSBMYWJlbCAvZGV2L3N3cmFkaW8sIC9kZXYvdjRsLXN1YmRldiwg L2Rldi92NGwtdG91Y2ggd2l0aCB2NGxfZGV2aWNlX3QKLS0gTWFrZSBib290dXBkX3QgcGVybWlz c2l2ZQotLSBBbGxvdyBpbml0X3Qgbm5wIGRvbWFpbiB0cmFuc2l0aW9uIHRvIGxvY2F0ZV90Ci0t IGFsbG93IGdkbSBhbmQgaWlvc2Vuc29ycHJveHkgdGFsayB0byBlYWNoIG90aGVyIHZpYSBELWJ1 cwotLSBBbGxvdyBzeXN0ZW1kLWpvdXJuYWxkIGdldGF0dHIgbnNmcyBmaWxlcwotLSBBbGxvdyBz ZW5kbWFpbCB0byBtYXAgbWFpbCBzZXJ2ZXIgY29uZmlndXJhdGlvbiBmaWxlcwotLSBBbGxvdyBw cm9jbWFpbCB0byByZWFkIG1haWwgYWxpYXNlcwotLSBBbGxvdyBjaWZzLmlkbWFwIGhlbHBlciB0 byBzZXQgYXR0cmlidXRlcyBvbiBrZXJuZWwga2V5cwotLSBBbGxvdyBpcnFiYWxhbmNlIHNldHBj YXAgY2FwYWJpbGl0eSBpbiB0aGUgdXNlciBuYW1lc3BhY2UKLS0gQWxsb3cgc3NzZF9zZWxpbnV4 X21hbmFnZXJfdCB0aGUgc2V0Y2FwIHByb2Nlc3MgcGVybWlzc2lvbgotLSBBbGxvdyBzeXN0ZW1k LXNsZWVwIG1hbmFnZSBlZml2YXJmcyBmaWxlcwotLSBBbGxvdyBzeXN0ZW1kLXJlbGF0ZWQgZG9t YWlucyBnZXRhdHRyIG5zZnMgZmlsZXMKLS0gQWxsb3cgc3ZpcnRfdCB0aGUgc3lzX3Jhd2lvIGNh cGFiaWxpdHkKLS0gQWxsb3cgYWxzYSB3YXRjaCBnZW5lcmljIGRldmljZSBkaXJlY3Rvcmllcwot LSBNb3ZlIHN5c3RlbWQtaG9tZWQgaW50ZXJmYWNlcyB0byBzZXBlcmF0ZSBvcHRpb25hbF9wb2xp Y3kgYmxvY2sKLS0gVXBkYXRlIHNhbWJhLWJncWQgcG9saWN5Ci0tIFVwZGF0ZSB2aXJ0bG9nZCBw b2xpY3kKLS0gQWxsb3cgc3ZpcnRfdCB0aGUgc3lzX3Jhd2lvIGNhcGFiaWxpdHkKLS0gQWxsb3cg cWVtdS1nYSB0aGUgZGFjX292ZXJyaWRlIGFuZCBkYWNfcmVhZF9zZWFyY2ggY2FwYWJpbGl0aWVz Ci0tIEFsbG93IGJhY3VsYSBleGVjdXRlIGNvbnRhaW5lciBpbiB0aGUgY29udGFpbmVyIGRvbWFp bgotLSBBbGxvdyBodHRwZCBnZXQgYXR0cmlidXRlcyBvZiBkaXJzcnYgdW5pdCBmaWxlcwotLSBB bGxvdyBzYW1iYS1iZ3FkIHJlYWQgY3VwcyBjb25maWcgZmlsZXMKLS0gQWRkIGxhYmVsIHJzaGlt X3Zhcl9ydW5fdCBmb3IgL3J1bi9yc2hpbS5waWQKLQotKiBNb24gRGVjIDAyIDIwMjQgUGV0ciBM YXV0cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPiAtIDQxLjI2LTIKLS0gUmVidWlsZCB3aXRo IFNFTGludXggVXNlcnNwYWNlIDMuOAotCi0qIFR1ZSBOb3YgMTkgMjAyNCBaZGVuZWsgUHl0ZWxh IDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuMjYtMQotLSBbNS81XVtzeW5jIGZyb20gJ215c3Fs LXNlbGludXgnXSBBZGQgbWFyaWFkYi1iYWNrdXAKLS0gWzQvNV1bc3luYyBmcm9tICdteXNxbC1z ZWxpbnV4J10gRml4IHJlZ2V4IHRvIGFsc28gbWF0Y2ggJy92YXIvbGliL215c3FsL215c3FseC5z b2NrJwotLSBbMy81XVtzeW5jIGZyb20gJ215c3FsLXNlbGludXgnXSBBbGxvdyBteXNxbGRfdCB0 byByZWFkIGFuZCB3cml0ZSB0byB0aGUgJ21lbW9yeS5wcmVzc3VyZScgZmlsZSBpbiBjZ3JvdXAy Ci0tIFsyLzVdW3N5bmMgZnJvbSAnbXlzcWwtc2VsaW51eCddIDJuZCBhdHRlbXB0IHRvIGZpeCBy aGJ6IzIxODY5OTYgcmhieiMyMjIxNDMzIHJoYnojMjI0NTcwNQotLSBbMS81XVtzeW5jIGZyb20g J215c3FsLXNlbGludXgnXSBBbGxvdyAnbXlzcWxkJyB0byB1c2UgJy91c3IvYmluL2hvc3RuYW1l JwotLSBBbGxvdyBzeXN0ZW1kLW5ldHdvcmtkIHJlYWQgbW91bnQgcGlkIGZpbGVzCi0tIFVwZGF0 ZSBwb2xpY3kgZm9yIHNhbWJhLWJncWQKLS0gQWxsb3cgY2hyb255ZCByZWFkIG5ldHdvcmttYW5h Z2VyJ3MgcGlkIGZpbGVzCi0tIEFsbG93IHN0YWZmIHVzZXIgY29ubmVjdCB0byBnZW5lcmljIHRj cCBwb3J0cwotLSBBbGxvdyBnbm9tZS1yZW1vdGUtZGVza3RvcCBkYnVzIGNoYXQgd2l0aCBwb2xp Y3lraXQKLS0gQWxsb3cgdGxwIHRoZSBzZXRwZ2lkIHByb2Nlc3MgcGVybWlzc2lvbgotLSBVcGRh dGUgdGhlIGJvb3R1cGQgcG9saWN5Ci0tIEFsbG93IHN5c2FkbV90IHVzZSB0aGUgaW9fdXJpbmcg QVBJCi0tIEFsbG93IHN5c2FkbSB1c2VyIGRidXMgY2hhdCB3aXRoIHZpcnQtZGJ1cwotLSBBbGxv dyB2aXJ0cWVtdWRfdCByZWFkIHZpcnNoX3QgZmlsZXMKLS0gQWxsb3cgdmlydF9kYnVzX3QgY29u bmVjdCB0byB2aXJ0ZF90IG92ZXIgYSB1bml4IHN0cmVhbSBzb2NrZXQKLS0gQWxsb3cgc3lzdGVt ZC10cG0yLWdlbmVyYXRvciByZWFkIGhhcmR3YXJlIHN0YXRlIGluZm9ybWF0aW9uCi0tIEFsbG93 IGNvcmVvcy1pbnN0YWxsZXItZ2VuZXJhdG9yIGV4ZWN1dGUgZ2VuZXJpYyBwcm9ncmFtcwotLSBB bGxvdyBjb3Jlb3MtaW5zdGFsbGVyIGRvbWFpbiB0cmFuc2l0aW9uIG9uIHVkZXYgZXhlY3V0aW9u Ci0tIFJldmVydCAiQWxsb3cgdW5jb25maW5lZF90IGV4ZWN1dGUga21vZCBpbiB0aGUga21vZCBk b21haW4iCi0tIEFsbG93IGlpby1zZW5zb3ItcHJveHkgY3JlYXRlIGFuZCB1c2UgdW5peCBkZ3Jh bSBzb2NrZXQKLS0gQWxsb3cgdmlydHN0b3JhZ2VkIHJlYWQgdm0gc3lzY3RscwotLSBTdXBwb3J0 IHNzaCBjb25uZWN0aW9ucyB2aWEgc3lzdGVtZC1zc2gtZ2VuZXJhdG9yCi0tIExhYmVsIGFsbCBz ZW1hbmFnZSBzdG9yZSBmaWxlcyBpbiAvZXRjIGFzIHNlbWFuYWdlX3N0b3JlX3QKLS0gQWRkIGZp bGUgdHJhbnNpdGlvbiBmb3IgbnZpZGlhLW1vZGVzZXQKLQotKiBGcmkgT2N0IDI1IDIwMjQgWmRl bmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjI1LTEKLS0gQWxsb3cgZGlyc3J2 LXNubXAgbWFwIGRpcnN2X3RtcGZzX3QgZmlsZXMKLS0gTGFiZWwgL3Vzci9saWIvbm9kZV9tb2R1 bGVzXzIyL25wbS9iaW4gd2l0aCBiaW5fdAotLSBBZGQgcG9saWN5IGZvciAvdXNyL2xpYmV4ZWMv c2FtYmEvc2FtYmEtYmdxZAotLSBBbGxvdyBnbm9tZS1yZW1vdGUtZGVza3RvcCB3YXRjaCAvZXRj IGRpcmVjdG9yeQotLSBBbGxvdyBycGNkIHJlYWQgbmV0d29yayBzeXNjdGxzCi0tIEFsbG93IGpv dXJuYWxjdGwgY29ubmVjdCB0byBzeXN0ZW1kLXVzZXJkYmQgb3ZlciBhIHVuaXggc29ja2V0Ci0t IEFsbG93IHNvbWUgY29uZmluZWQgdXNlcnMgc2VuZCB0byBsbGRwYWQgb3ZlciBhIHVuaXggZGdy YW0gc29ja2V0Ci0tIEFsbG93IGxsZHBhZCBzZW5kIHRvIHVuY29uZmluZWRfdCBvdmVyIGEgdW5p eCBkZ3JhbSBzb2NrZXQKLS0gQWxsb3cgbGxkcGQgY29ubmVjdCB0byBzeXN0ZW1kLW1hY2hpbmVk IG92ZXIgYSB1bml4IHNvY2tldAotLSBDb25maW5lIHRoZSBrdGxzIHNlcnZpY2UKLQotKiBXZWQg T2N0IDIzIDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjI0LTEK LS0gQWxsb3cgZGlyc3J2IHJlYWQgbmV0d29yayBzeXNjdGxzCi0tIExhYmVsIC9ydW4vc3NzZCB3 aXRoIHNzc2RfdmFyX3J1bl90Ci0tIExhYmVsIC9ldGMvc3lzY3RsLmQgYW5kIC9ydW4vc3lzY3Rs LmQgd2l0aCBzeXN0ZW1fY29uZl90Ci0tIEFsbG93IHVuY29uZmluZWRfdCBleGVjdXRlIGttb2Qg aW4gdGhlIGttb2QgZG9tYWluCi0tIEFsbG93IGNvbmZpbmVkIHVzZXJzIHIvdyB0byBzY3JlZW4g dW5peCBzdHJlYW0gc29ja2V0Ci0tIExhYmVsIC9yb290Ly5zY3JlZW5yYyBhbmQgL3Jvb3QvLnRt dXguY29uZiB3aXRoIHNjcmVlbl9ob21lX3QKLS0gQWxsb3cgdmlydHFlbXVkIHJlYWQgdmlydGRf dCBmaWxlcwotLSBBbGxvdyBwaW5nX3QgcmVhZCBuZXR3b3JrIHN5c2N0bHMKLQotKiBNb24gT2N0 IDIxIDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjIzLTEKLS0g QWxsb3cgc3lzdGVtZC1ob21ld29yayBjb25uZWN0IHRvIGluaXQgb3ZlciBhIHVuaXggc29ja2V0 Ci0tIEZpeCBzeXN0ZW1kLWhvbWVkIGJsb2JzIGRpcmVjdG9yeSBwZXJtaXNzaW9ucwotLSBBbGxv dyB2aXJ0cWVtdWQgcmVhZCBzZ3hfdmVwYyBkZXZpY2VzCi0tIEFsbG93IGxsZHBhZCBjcmVhdGUg YW5kIHVzZSBuZXRsaW5rX2dlbmVyaWNfc29ja2V0Ci0KLSogV2VkIE9jdCAxNiAyMDI0IFpkZW5l ayBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0MS4yMi0xCi0tIEFsbG93IHN5c3RlbWQt aG9tZXdvcmsgd3JpdGUgdG8gaW5pdCBwaWQgc29ja2V0Ci0tIEFsbG93IGluaXQgY3JlYXRlIC92 YXIvY2FjaGUvc3lzdGVtZC9ob21lCi0tIENvbmZpbmUgdGhlIHBjbSBzZXJ2aWNlCi0tIEFsbG93 IGxvZ2luX3VzZXJkb21haW4gcmVhZCB0aHVtYiB0bXAgZmlsZXMKLS0gVXBkYXRlIHBvd2VyLXBy b2ZpbGVzLWRhZW1vbiBwb2xpY3kKLS0gRml4IHRoZSAvZXRjL21kZXZjdGxcLmQoLy4qKT8gcmVn ZXhwCi0tIEdyYW50IHJoc21jZXJ0ZCBjaG93biBjYXBhYmlsaXR5ICYgdXNlcmRiIGFjY2Vzcwot LSBBbGxvdyBpaW8tc2Vuc29yLXByb3h5IHRoZSBicGYgY2FwYWJpbGl0eQotLSBBbGxvdyBzeXN0 ZW1kLW1hY2hpbmVkIHRoZSBraWxsIHVzZXItbmFtZXNwYWNlIGNhcGFiaWxpdHkKLQotKiBGcmkg T2N0IDExIDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjIxLTEK LS0gUmVtb3ZlIHRoZSBmYWlsMmJhbiBtb2R1bGUgc291cmNlcwotLSBSZW1vdmUgdGhlIGxpbnV4 cHRwIG1vZHVsZSBzb3VyY2VzCi0tIFJlbW92ZSBsZWdhY3kgcnVsZXMgZm9yIHNscm5wdWxsCi0t IFJlbW92ZSB0aGUgYWljY3UgbW9kdWxlIHNvdXJjZXMKLS0gUmVtb3ZlIHRoZSBiY2ZnMiBtb2R1 bGUgc291cmNlcwotLSBSZW1vdmUgdGhlIGFtdHUgbW9kdWxlIHNvdXJjZXMKLS0gUmVtb3ZlIHRo ZSByaGV2IG1vZHVsZSBzb3VyY2VzCi0tIFJlbW92ZSBhbGwgZmlsZSBjb250ZXh0IGVudHJpZXMg Zm9yIC9iaW4gYW5kIC9saWIKLS0gQWxsb3cgcHRwNGwgdGhlIHN5c19hZG1pbiBjYXBhYmlsaXR5 Ci0tIENvbmZpbmUgcG93ZXItcHJvZmlsZXMtZGFlbW9uCi0tIExhYmVsIC92YXIvY2FjaGUvc3lz dGVtZC9ob21lIHdpdGggc3lzdGVtZF9ob21lZF9jYWNoZV90Ci0tIEFsbG93IGxvZ2luX3VzZXJk b21haW4gY29ubmVjdCB0byBzeXN0ZW1kLWhvbWVkIG92ZXIgYSB1bml4IHNvY2tldAotLSBBbGxv dyBib290aGQgY29ubmVjdCB0byBzeXN0ZW1kLWhvbWVkIG92ZXIgYSB1bml4IHNvY2tldAotLSBB bGxvdyBzeXN0ZW1kLWhvbWVkIGdldCBhdHRyaWJ1dGVzIG9mIGEgdG1wZnMgZmlsZXN5c3RlbQot LSBBbGxvdyBhYnJ0LWR1bXAtam91cm5hbC1jb3JlIGNvbm5lY3QgdG8gc3lzdGVtZC1ob21lZCBv dmVyIGEgdW5peCBzb2NrZXQKLS0gQWxsb3cgYWlkZSBjb25uZWN0IHRvIHN5c3RlbWQtaG9tZWQg b3ZlciBhIHVuaXggc29ja2V0Ci0tIExhYmVsIC9kZXYvaGZpMV9bMC05XSsgZGV2aWNlcwotLSBT dXBwcmVzcyBzZW1vZHVsZSdzIHN0ZGVycgotCi0qIFRodSBPY3QgMDMgMjAyNCBaZGVuZWsgUHl0 ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuMjAtMQotLSBSZW1vdmUgdGhlIG9wZW5jdCBt b2R1bGUgc291cmNlcwotLSBSZW1vdmUgdGhlIHRpbWlkaXR5IG1vZHVsZSBzb3VyY2VzCi0tIEVu YWJsZSB0aGUgc2xybiBtb2R1bGUKLS0gUmVtb3ZlIGkxOG5faW5wdXQgbW9kdWxlIHNvdXJjZXMK LS0gRW5hYmxlIHRoZSBkaXN0Y2MgbW9kdWxlCi0tIFJlbW92ZSB0aGUgZGRjcHJvYmUgbW9kdWxl IHNvdXJjZXMKLS0gUmVtb3ZlIHRoZSB0aW1lZGF0ZXggbW9kdWxlIHNvdXJjZXMKLS0gUmVtb3Zl IHRoZSBkamJkbnMgbW9kdWxlIHNvdXJjZXMKLS0gQ29uZmluZSBpaW8tc2Vuc29yLXByb3h5Ci0t IEFsbG93IHN0YWZmIHVzZXIgbmxtc2dfd3JpdGUKLS0gVXBkYXRlIHBvbGljeSBmb3IgeGRtIHdp dGggY29uZmluZWQgdXNlcnMKLS0gQWxsb3cgdmlydG5vZGVkZXYgd2F0Y2ggbWRldmN0bCBjb25m aWcgZGlycwotLSBBbGxvdyBzc2ggd2F0Y2ggaG9tZSBjb25maWcgZGlycwotLSBBbGxvdyBzc2gg bWFwIGhvbWUgY29uZmlncyBmaWxlcwotLSBBbGxvdyBzc2ggcmVhZCBuZXR3b3JrIHN5c2N0bHMK LS0gQWxsb3cgY2hyb255YyBzZW5kdG8gdG8gY2hyb255ZC1yZXN0cmljdGVkCi0tIEFsbG93IGN1 cHMgc3lzX3B0cmFjZSBjYXBhYmlsaXR5IGluIHRoZSB1c2VyIG5hbWVzcGFjZQotCi0qIFR1ZSBT ZXAgMjQgMjAyNCBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuMTktMQot LSBBZGQgcG9saWN5IGZvciBzeXN0ZW1kLWhvbWVkCi0tIFJlbW92ZSBmYyBlbnRyeSBmb3IgL3Vz ci9iaW4vcHVtcAotLSBMYWJlbCAvdXNyL2Jpbi9ub3BpbmcgYW5kIC91c3IvYmluL29waW5nIHdp dGggcGluZ19leGVjX3QKLS0gQWxsb3cgYWNjb3VudHNkIHJlYWQgZ25vbWUtaW5pdGlhbC1zZXR1 cCB0bXAgZmlsZXMKLS0gQWxsb3cgeGRtIHdyaXRlIHRvIGdub21lLWluaXRpYWwtc2V0dXAgZmlm byBmaWxlcwotLSBBbGxvdyBybmdkIHJlYWQgYW5kIHdyaXRlIGdlbmVyaWMgdXNiIGRldmljZXMK LS0gQWxsb3cgcWF0bGliIHNlYXJjaCB0aGUgY29udGVudCBvZiB0aGUga2VybmVsIGRlYnVnZ2lu ZyBmaWxlc3lzdGVtCi0tIEFsbG93IHFhdGxpYiBjb25uZWN0IHRvIHN5c3RlbWQtbWFjaGluZWQg b3ZlciBhIHVuaXggc29ja2V0Ci0KLSogV2VkIFNlcCAxOCAyMDI0IFBldHIgTGF1dHJiYWNoIDxs YXV0cmJhY2hAcmVkaGF0LmNvbT4gLSA0MS4xOC0xCi0tIERyb3AgcnUgbWFuIHBhZ2VzCi0tIG1s cy9tb2R1bGVzLmNvbmYgLSBmaXggdHlwbwotLSBBbGxvdyB1bnByaXZpbGVnZWQgdXNlciB3YXRj aCAvcnVuL3N5c3RlbWQKLS0gQWxsb3cgYm9vdGhkIGNvbm5lY3QgdG8ga2VybmVsIG92ZXIgYSB1 bml4IHNvY2tldAotCi0qIE1vbiBTZXAgMTYgMjAyNCBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJl ZGhhdC5jb20+IC0gNDEuMTctMgotLSBSZWxhYmVsIC9ldGMvbWRldmN0bC5kCi0KLSogVGh1IFNl cCAxMiAyMDI0IFBldHIgTGF1dHJiYWNoIDxsYXV0cmJhY2hAcmVkaGF0LmNvbT4gLSA0MS4xNy0x Ci0tIENsZWFuIHVwIGFuZCBzeW5jIHNlY3VyZXR0eV90eXBlcwotLSBCcmluZyBjb25maWcgZmls ZXMgZnJvbSBkaXN0LWdpdCBpbnRvIHRoZSBzb3VyY2UgcmVwbwotLSBDb25maW5lIGdub21lLXJl bW90ZS1kZXNrdG9wCi0tIEFsbG93IHZpcnRzdG9yYWdlZCBleGVjdXRlIG1vdW50IHByb2dyYW1z IGluIHRoZSBtb3VudCBkb21haW4KLS0gTWFrZSBtZGV2Y3RsX2NvbmZfdCBtZW1iZXIgb2YgdGhl IGZpbGVfdHlwZSBhdHRyaWJ1dGUKLQotKiBGcmkgU2VwIDA2IDIwMjQgWmRlbmVrIFB5dGVsYSA8 enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjE2LTEKLS0gTGFiZWwgL2V0Yy9tZGV2Y3RsLmQgd2l0 aCBtZGV2Y3RsX2NvbmZfdAotLSBTeW5jIHVzZXJzIHdpdGggRmVkb3JhIHRhcmdldGVkIHVzZXJz Ci0tIFVwZGF0ZSBwb2xpY3kgZm9yIHJwYy12aXJ0c3RvcmFnZQotLSBBbGxvdyB2aXJ0c3RvcmFn ZWQgZ2V0IGF0dHJpYnV0ZXMgb2YgY29uZmlnZnMgZGlycwotLSBGaXggU0VMaW51eCBwb2xpY3kg Zm9yIHNhbmRib3ggWCBzZXJ2ZXIgdG8gZml4ICdzYW5kYm94IC1YJyBjb21tYW5kCi0tIFVwZGF0 ZSBib290dXBkIHBvbGljeSB3aGVuIEVTUCBpcyBub3QgbW91bnRlZAotLSBBbGxvdyB0aHVtYl90 IG1hcCBkcmkgZGV2aWNlcwotLSBBbGxvdyBzYW1iYSB1c2UgdGhlIGlvX3VyaW5nIEFQSQotLSBB bGxvdyB0aGUgc3lzYWRtIHVzZXIgdXNlIHRoZSBzZWNyZXRtZW0gQVBJCi0tIEFsbG93IG51dC11 cHNtb24gcmVhZCBzeXN0ZW1kLWxvZ2luZCBzZXNzaW9uIGZpbGVzCi0tIEFsbG93IHN5c2FkbV90 IHRvIGNyZWF0ZSBQRl9LRVkgc29ja2V0cwotLSBVcGRhdGUgYm9vdHVwZCBwb2xpY3kgZm9yIHRo ZSByZW1vdmluZy1zdGF0ZS1maWxlIHRlc3QKLS0gQWxsb3cgY29yZW9zLWluc3RhbGxlci1nZW5l cmF0b3IgbWFuYWdlIG1kYWRtX2NvbmZfdCBmaWxlcwotCi0qIFRodSBBdWcgMjkgMjAyNCBaZGVu ZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuMTUtMQotLSBBbGxvdyBzZXRzZWJv b2xfdCByZWxhYmVsIHNlbGludXggZGF0YSBmaWxlcwotLSBBbGxvdyB2aXJ0cWVtdWQgcmVsYWJl bGZyb20gdmlydHFlbXVkX3Zhcl9ydW5fdCBkaXJzCi0tIFVzZSBiZXR0ZXIgZXNjYXBlIG1ldGhv ZCBmb3IgImludGVyZmFjZSIKLS0gQWxsb3cgaW5pdCBhbmQgc3lzdGVtZC1sb2dpbmQgdG8gaW5o ZXJpdCBmZHMgZnJvbSBzc2hkCi0tIEFsbG93IHN5c3RlbWQtc3NoLWdlbmVyYXRvciByZWFkIHN5 c2N0bCBmaWxlcwotLSBTeW5jIG1vZHVsZXMuY29uZiB3aXRoIEZlZG9yYSB0YXJnZXRlZCBtb2R1 bGVzCi0tIEFsbG93IHZpcnRxZW11ZCByZWxhYmVsIHVzZXIgdG1wIGZpbGVzIGFuZCBzb2NrZXQg ZmlsZXMKLS0gQWRkIG1pc3Npbmcgc3lzX2Nocm9vdCBjYXBhYmlsaXR5IHRvIGdyb3VwYWRkIHBv bGljeQotLSBMYWJlbCAvcnVuL2xpYnZpcnQvcWVtdS9jaGFubmVsIHdpdGggdmlydHFlbXVkX3Zh cl9ydW5fdAotLSBBbGxvdyB2aXJ0cWVtdWQgcmVsYWJlbGZyb20gYWxzbyBmb3IgZmlsZSBhbmQg c29ja19maWxlCi0tIEFkZCB2aXJ0X2NyZWF0ZV9sb2coKSBhbmQgdmlydF93cml0ZV9sb2coKSBp bnRlcmZhY2VzCi0tIENhbGwgYmluYXJpZXMgd2l0aG91dCBmdWxsIHBhdGgKLQotKiBNb24gQXVn IDEyIDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjE0LTEKLS0g VXBkYXRlIGxpYnZpcnQgcG9saWN5Ci0tIEFkZCBwb3J0IDgwL3VkcCBhbmQgNDQzL3VkcCB0byBo dHRwX3BvcnRfdCBkZWZpbml0aW9uCi0tIEFkZGl0aW9uYWwgdXBkYXRlcyBzdGFsbGQgcG9saWN5 IGZvciBicGYgdXNhZ2UKLS0gTGFiZWwgc3lzdGVtZC1wY3JleHRlbmQgYW5kIHN5c3RlbWQtcGNy bG9jayBwcm9wZXJseQotLSBBbGxvdyBjb3Jlb3NfaW5zdGFsbGVyX3Qgd29yayB3aXRoIHBhcnRp dGlvbnMKLS0gUmV2ZXJ0ICJBbGxvdyBjb3Jlb3MtaW5zdGFsbGVyLWdlbmVyYXRvciB3b3JrIHdp dGggcGFydGl0aW9ucyIKLS0gQWRkIHBvbGljeSBmb3Igc3lzdGVtZC1wY3JleHRlbmQKLS0gVXBk YXRlIHBvbGljeSBmb3Igc3lzdGVtZC1nZXR0eS1nZW5lcmF0b3IKLS0gQWxsb3cgaXAgY29tbWFu ZCB3cml0ZSB0byBpcHNlYydzIGxvZ3MKLS0gQWxsb3cgdmlydF9kcml2ZXJfZG9tYWluIHJlYWQg dmlydGQtbHhjIGZpbGVzIGluIC9wcm9jCi0tIFJldmVydCAiQWxsb3cgc3ZpcnQgcmVhZCB2aXJ0 cWVtdWQgZmlmbyBmaWxlcyIKLS0gVXBkYXRlIHZpcnRxZW11ZCBwb2xpY3kgZm9yIGxpYmd1ZXN0 ZnMgdXNhZ2UKLS0gQWxsb3cgdmlydHByb3h5ZCBjcmVhdGUgYW5kIHVzZSBpdHMgcHJpdmF0ZSB0 bXAgZmlsZXMKLS0gQWxsb3cgdmlydHByb3h5ZCByZWFkIG5ldHdvcmsgc3RhdGUKLS0gQWxsb3cg dmlydF9kcml2ZXJfZG9tYWluIGNyZWF0ZSBhbmQgdXNlIGxvZyBmaWxlcyBpbiAvdmFyL2xvZwot LSBBbGxvdyBzYW1iYS1kY2VycGNkIHdvcmsgd2l0aCBjdGRiIGNsdXN0ZXIKLQotKiBUdWUgQXVn IDA2IDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjEzLTEKLS0g QWxsb3cgTmV0d29ya01hbmFnZXJfZGlzcGF0Y2hlcl90IHNlbmQgU0lHS0lMTCB0byBwbHVnaW5z Ci0tIEFsbG93IHNldHJvdWJsZXNob290ZCBleGVjdXRlIHNlbmRtYWlsIHdpdGggYSBkb21haW4g dHJhbnNpdGlvbgotLSBBbGxvdyBrZXkuZG5zX3Jlc29sdmUgc2V0IGF0dHJpYnV0ZXMgb24gdGhl IGtlcm5lbCBrZXkgcmluZwotLSBVcGRhdGUgcWF0bGliIHBvbGljeSBmb3IgdjI0LjAyIHdpdGgg bmV3IGZlYXR1cmVzCi0tIExhYmVsIC92YXIvbGliL3N5c3RlbWQvc2xlZXAgd2l0aCBzeXN0ZW1k X3NsZWVwX3Zhcl9saWJfdAotLSBBbGxvdyB0bHAgc3RhdHVzIHBvd2VyIHNlcnZpY2VzCi0tIEFs bG93IHZpcnRxZW11ZCBkb21haW4gdHJhbnNpdGlvbiBvbiBwYXNzdCBleGVjdXRpb24KLS0gQWxs b3cgdmlydF9kcml2ZXJfZG9tYWluIGNvbm5lY3QgdG8gc3lzdGVtZC11c2VyZGJkIG92ZXIgYSB1 bml4IHNvY2tldAotLSBBbGxvdyBib290aGQgY29ubmVjdCB0byBzeXN0ZW1kLXVzZXJkYmQgb3Zl ciBhIHVuaXggc29ja2V0Ci0tIFVwZGF0ZSBwb2xpY3kgZm9yIGF3c3RhdHMgc2NyaXB0cwotLSBB bGxvdyBiaXRsYmVlIGV4ZWN1dGUgZ2VuZXJpYyBwcm9ncmFtcyBpbiBzeXN0ZW0gYmluIGRpcmVj dG9yaWVzCi0tIEFsbG93IGxvZ2luX3VzZXJkb21haW4gcmVhZCBhbGlhc2VzIGZpbGUKLS0gQWxs b3cgbG9naW5fdXNlcmRvbWFpbiByZWFkIGlwc2VjIGNvbmZpZyBmaWxlcwotLSBBbGxvdyBsb2dp bl91c2VyZG9tYWluIHJlYWQgYWxsIHBpZCBmaWxlcwotLSBBbGxvdyByc3lzbG9nIHJlYWQgc3lz dGVtZC1sb2dpbmQgc2Vzc2lvbiBmaWxlcwotLSBBbGxvdyBsaWJ2aXJ0LWRidXMgc3RyZWFtIGNv bm5lY3QgdG8gdmlydGx4Y2QKLQotKiBXZWQgSnVsIDMxIDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5 dGVsYUByZWRoYXQuY29tPiAtIDQxLjEyLTEKLS0gVXBkYXRlIGJvb3R1cGQgcG9saWN5Ci0tIEFs bG93IHJoc21jZXJ0ZCByZWFkL3dyaXRlIGFjY2VzcyB0byAvZGV2L3BhcHItc3lzcGFybQotLSBM YWJlbCAvZGV2L3BhcHItc3lzcGFybSBhbmQgL2Rldi9wYXByLXZwZAotLSBBbGxvdyBhYnJ0LWR1 bXAtam91cm5hbC1jb3JlIGNvbm5lY3QgdG8gd2luYmluZGQKLS0gQWxsb3cgc3lzdGVtZC1ob3N0 bmFtZWQgc2h1dCBkb3duIG5zY2QKLS0gQWxsb3cgc3lzdGVtZC1wc3RvcmUgc2VuZCBhIG1lc3Nh Z2UgdG8gc3lzbG9nZCBvdmVyIGEgdW5peCBkb21haW4KLS0gQWxsb3cgcG9zdGZpeF9kb21haW4g bWFwIHBvc3RmaXhfZXRjX3QgZmlsZXMKLS0gQWxsb3cgbWljcm9jb2RlIGNyZWF0ZSAvc3lzL2Rl dmljZXMvc3lzdGVtL2NwdS9taWNyb2NvZGUvcmVsb2FkCi0tIEFsbG93IHJoc21jZXJ0ZCByZWFk LCB3cml0ZSwgYW5kIG1hcCBpY2EgdG1wZnMgZmlsZXMKLS0gU3VwcG9ydCBTR1ggZGV2aWNlcwot LSBBbGxvdyBpbml0cmNfdCB0cmFuc2l0aW9uIHRvIHBhc3N3ZF90Ci0tIFVwZGF0ZSBmc3RhYiBh bmQgY3J5cHRzZXR1cCBnZW5lcmF0b3JzIHBvbGljeQotLSBBbGxvdyB4ZG1fdCByZWFkIGFuZCB3 cml0ZSB0aGUgZG1hIGRldmljZQotLSBVcGRhdGUgc3RhbGxkIHBvbGljeSBmb3IgYnBmIHVzYWdl Ci0tIEFsbG93IHN5c3RlbWRfZ3B0X2dlbmVyYXRvciB0byBnZXRhdHRyIG9uIERPUyBkaXJlY3Rv cmllcwotCi0qIFRodSBKdWwgMjUgMjAyNCBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5j b20+IC0gNDEuMTEtMQotLSBNYWtlIGNncm91cF9tZW1vcnlfcHJlc3N1cmVfdCBhIHBhcnQgb2Yg dGhlIGZpbGVfdHlwZSBhdHRyaWJ1dGUKLS0gQWxsb3cgc3NoX3QgdG8gY2hhbmdlIHJvbGUgdG8g c3lzdGVtX3IKLS0gVXBkYXRlIHBvbGljeSBmb3IgY29yZW9zIGdlbmVyYXRvcnMKLS0gQWxsb3cg aW5pdF90IG5ucCBkb21haW4gdHJhbnNpdGlvbiB0byBmaXJld2FsbGRfdAotLSBMYWJlbCAvcnVu L21vZHByb2JlLmQgd2l0aCBtb2R1bGVzX2NvbmZfdAotLSBBbGxvdyB2aXJ0bm9kZWRldmQgcnVu IHVkZXYgd2l0aCBhIGRvbWFpbiB0cmFuc2l0aW9uCi0tIEFsbG93IHZpcnRub2RlZGV2X3QgY3Jl YXRlIGFuZCB1c2UgdmlydG5vZGVkZXZfbG9ja190Ci0tIEFsbG93IHZpcnRzdG9yYWdlZCBtYW5h Z2UgZmlsZXMgd2l0aCB2aXJ0X2NvbnRlbnRfdCB0eXBlCi0tIEFsbG93IHZpcnRxZW11ZCB1bm1v dW50IGEgZmlsZXN5c3RlbSB3aXRoIGV4dGVuZGVkIGF0dHJpYnV0ZXMKLS0gQWxsb3cgc3ZpcnRf dCBjb25uZWN0IHRvIHVuY29uZmluZWRfdCBvdmVyIGEgdW5peCBkb21haW4gc29ja2V0Ci0KLSog TW9uIEp1bCAyMiAyMDI0IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNvbT4gLSA0MS4x MC0xCi0tIFVwZGF0ZSBhZnRlcmJ1cm4gZmlsZSB0cmFuc2l0aW9uIHBvbGljeQotLSBBbGxvdyBz eXN0ZW1kX2dlbmVyYXRvciByZWFkIGF0dHJpYnV0ZXMgb2YgYWxsIGZpbGVzeXN0ZW1zCi0tIEFs bG93IGZzdGFiLWdlbmVyYXRvciByZWFkIGFuZCB3cml0ZSBjcnlwdHNldHVwLWdlbmVyYXRvciB1 bml0IGZpbGUKLS0gQWxsb3cgY3J5cHRzZXR1cC1nZW5lcmF0b3IgcmVhZCBhbmQgd3JpdGUgZnN0 YWItZ2VuZXJhdG9yIHVuaXQgZmlsZQotLSBBbGxvdyBzeXN0ZW1kX2dlbmVyYXRvciBtYXAgZmls ZXMgaW4gL2V0YwotLSBBbGxvdyBzeXN0ZW1kX2dlbmVyYXRvciByZWFkIGluaXQncyBwcm9jZXNz IHN0YXRlCi0tIEFsbG93IGNvcmVvcy1pbnN0YWxsZXItZ2VuZXJhdG9yIHJlYWQgc3NzZCBwdWJs aWMgZmlsZXMKLS0gQWxsb3cgY29yZW9zLWluc3RhbGxlci1nZW5lcmF0b3Igd29yayB3aXRoIHBh cnRpdGlvbnMKLS0gTGFiZWwgL2V0Yy9tZGFkbS5jb25mLmQgd2l0aCBtZGFkbV9jb25mX3QKLS0g Q29uZmluZSBjb3Jlb3MgZ2VuZXJhdG9ycwotLSBMYWJlbCAvcnVuL21ldGFkYXRhIHdpdGggYWZ0 ZXJidXJuX3J1bnRpbWVfdAotLSBBbGxvdyBhZnRlcmJ1cm4gbGlzdCBzc2ggaG9tZSBkaXJlY3Rv cnkKLS0gTGFiZWwgc2FtYmEgY2VydGlmaWNhdGVzIHdpdGggc2FtYmFfY2VydF90Ci0tIExhYmVs IC9ydW4vY29yZW9zLWluc3RhbGxlci1yZWJvb3Qgd2l0aCBjb3Jlb3NfaW5zdGFsbGVyX3Zhcl9y dW5fdAotLSBBbGxvdyB2aXJ0cWVtdWQgcmVhZCB2aXJ0LWRidXMgcHJvY2VzcyBzdGF0ZQotLSBB bGxvdyBzdGFmZiB1c2VyIGRidXMgY2hhdCB3aXRoIHZpcnQtZGJ1cwotLSBBbGxvdyBzdGFmZiB1 c2Ugd2F0Y2ggL3J1bi9zeXN0ZW1kCi0tIEFsbG93IHN5c3RlbWRfZ2VuZXJhdG9yIHRvIHdyaXRl IGttc2cKLQotKiBTYXQgSnVsIDIwIDIwMjQgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJl bGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA0MS45LTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9m ZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV80MV9NYXNzX1JlYnVpbGQKLQotKiBUdWUgSnVs IDE2IDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjktMQotLSBB bGxvdyB2aXJ0cWVtdWQgY29ubmVjdCB0byBzYW5sb2NrIG92ZXIgYSB1bml4IHN0cmVhbSBzb2Nr ZXQKLS0gQWxsb3cgdmlydHFlbXVkIHJlbGFiZWwgdmlydF92YXJfcnVuX3QgZGlyZWN0b3JpZXMK LS0gQWxsb3cgc3ZpcnRfdGNnX3QgcmVhZCB2bSBzeXNjdGxzCi0tIEFsbG93IHZpcnRub2RlZGV2 ZCBjb25uZWN0IHRvIHN5c3RlbWQtdXNlcmRiZCBvdmVyIGEgdW5peCBzb2NrZXQKLS0gQWxsb3cg c3ZpcnQgcmVhZCB2aXJ0cWVtdWQgZmlmbyBmaWxlcwotLSBBbGxvdyBzdmlydCBhdHRhY2hfcXVl dWUgdG8gYSB2aXJ0cWVtdWQgdHVuX3NvY2tldAotLSBBbGxvdyB2aXJ0cWVtdWQgcnVuIHNzaCBj bGllbnQgd2l0aCBhIHRyYW5zaXRpb24KLS0gQWxsb3cgdmlydF9kYnVzX3QgY29ubmVjdCB0byB2 aXJ0cWVtdWRfdCBvdmVyIGEgdW5peCBzdHJlYW0gc29ja2V0Ci0tIFVwZGF0ZSBrZXl1dGlscyBw b2xpY3kKLS0gQWxsb3cgc3NoZF9rZXlnZW5fdCBjb25uZWN0IHRvIHVzZXJkYmQgb3ZlciBhIHVu aXggc3RyZWFtIHNvY2tldAotLSBBbGxvdyBwb3N0Zml4LXNtdHBkIHJlYWQgbXlzcWwgY29uZmln IGZpbGVzCi0tIEFsbG93IGxvY2F0ZSBzdHJlYW0gY29ubmVjdCB0byBzeXN0ZW1kLXVzZXJkYmQK LS0gQWxsb3cgdGhlIHN0YWZmIHVzZXIgdXNlIHdpcmVzaGFyawotLSBBbGxvdyB1cGRhdGVkYiBj b25uZWN0IHRvIHVzZXJkYmQgb3ZlciBhIHVuaXggc3RyZWFtIHNvY2tldAotLSBBbGxvdyBncGdf dCBzZXQgYXR0cmlidXRlcyBvZiBwdWJsaWMta2V5cy5kCi0tIEFsbG93IGdwZ190IGdldCBhdHRy aWJ1dGVzIG9mIGxvZ2luX3VzZXJkb21haW4gc3RyZWFtCi0tIEFsbG93IHN5c3RlbWRfZ2V0dHlf Z2VuZXJhdG9yX3QgcmVhZCAvcHJvYy8xL2Vudmlyb24KLS0gQWxsb3cgc3lzdGVtZF9nZXR0eV9n ZW5lcmF0b3JfdCB0byByZWFkIGFuZCB3cml0ZSB0byB0dHlfZGV2aWNlX3QKLQotKiBUaHUgSnVs IDExIDIwMjQgUGV0ciBMYXV0cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPiA0MS44LTQKLS0g TW92ZSAlJXBvc3RJbnN0YWxsIHRvICUlcG9zdHRyYW5zCi0tIFVzZSBgUmVxdWlyZXMobWV0YSk6 IChycG0tcGx1Z2luLXNlbGludXggaWYgcnBtLWxpYnMpYAotLSBEcm9wIG9ic29sZXRlIG1vZHVs ZXMgZnJvbSBjb25maWcKLS0gSW5zdGFsbCBkbmYgcHJvdGVjdGVkIGZpbGVzIG9ubHkgd2hlbiBw b2xpY3kgaXMgYnVpbHQKLQotKiBUaHUgSnVsIDExIDIwMjQgWmJpZ25pZXcgSsSZZHJ6ZWpld3Nr aS1Tem1layA8emJ5c3pla0Bpbi53YXcucGw+IC0gNDEuOC0zCi0tIFJlbGFiZWwgZmlsZXMgdW5k ZXIgL3Vzci9iaW4gdG8gZml4IHN0YWxlIGNvbnRleHQgYWZ0ZXIgc2JpbiBtZXJnZQotCi0qIFdl ZCBKdWwgMTAgMjAyNCBQZXRyIExhdXRyYmFjaCA8bGF1dHJiYWNoQHJlZGhhdC5jb20+IDQxLjgt MgotLSBNZXJnZSAtYmFzZSBhbmQgLWNvbnRyaWIKLQotKiBXZWQgSnVsIDEwIDIwMjQgWmRlbmVr IFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjgtMQotLSBEcm9wIHB1YmxpY2ZpbGUg bW9kdWxlCi0tIFJlbW92ZSBwZXJtaXNzaXZlIGRvbWFpbiBmb3Igc3lzdGVtZF9uc3Jlc291cmNl ZF90Ci0tIENoYW5nZSBmc19kb250YXVkaXRfd3JpdGVfY2dyb3VwX2ZpbGVzKCkgdG8gYXBwbHkg dG8gY2dyb3VwX3QKLS0gTGFiZWwgL3Vzci9iaW4vc2FtYmEtZ3B1cGRhdGUgd2l0aCBzYW1iYV9n cHVwZGF0ZV9leGVjX3QKLS0gQWxsb3cgdG8gY3JlYXRlIGFuZCBkZWxldGUgc29ja2V0IGZpbGVz IGNyZWF0ZWQgYnkgcmhzbS5zZXJ2aWNlCi0tIEFsbG93IHZpcnRuZXR3b3JrZCBleGVjIHNoZWxs IHdoZW4gdmlydF9ob29rc191bmNvbmZpbmVkIGlzIG9uCi0tIEFsbG93IHVuY29uZmluZWRfc2Vy dmljZV90IHRyYW5zaXRpb24gdG8gcGFzc3dkX3QKLS0gU3VwcG9ydCAvdmFyIGlzIGVtcHR5Ci0t IEFsbG93IGFicnQtZHVtcC1qb3VybmFsIHJlYWQgYWxsIG5vbl9zZWN1cml0eSBzb2NrZXQgZmls ZXMKLS0gQWxsb3cgdGltZW1hc3RlciB3cml0ZSB0byBzeXNmcyBmaWxlcwotLSBEb250YXVkaXQg ZG9tYWluIHdyaXRlIGNncm91cCBmaWxlcwotLSBMYWJlbCAvdXNyL2xpYi9ub2RlX21vZHVsZXMv bnBtL2JpbiB3aXRoIGJpbl90Ci0tIEFsbG93IGlwIHRoZSBzZXRleGVjIHBlcm1pc3Npb24KLS0g QWxsb3cgc3lzdGVtZC1uZXR3b3JrZCB3cml0ZSBmaWxlcyBpbiAvdmFyL2xpYi9zeXN0ZW1kL25l dHdvcmsKLS0gRml4IHR5cG8gaW4gc3lzdGVtZF9uc3Jlc291cmNlZF9wcm9nX3J1bl9icGYoKQot Ci0qIEZyaSBKdW4gMjggMjAyNCBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0g NDEuNy0xCi0tIENvbmZpbmUgbGlidmlydC1kYnVzCi0tIEFsbG93IHZpcnRxZW11ZCB0aGUga2ls bCBjYXBhYmlsaXR5IGluIHVzZXIgbmFtZXNwYWNlCi0tIEFsbG93IHJzaGltIGdldCBvcHRpb25z IG9mIHRoZSBuZXRsaW5rIGNsYXNzIGZvciBLT0JKRUNUX1VFVkVOVCBmYW1pbHkKLS0gQWxsb3cg ZGhjcGNkIHRoZSBraWxsIGNhcGFiaWxpdHkKLS0gQWxsb3cgc3lzdGVtZC1uZXR3b3JrZCBsaXN0 IC92YXIvbGliL3N5c3RlbWQvbmV0d29yawotLSBBbGxvdyBzeXNhZG1fdCBydW4gc3lzdGVtZC1u c3Jlc291cmNlZCBicGYgcHJvZ3JhbXMKLS0gVXBkYXRlIHBvbGljeSBmb3Igc3lzdGVtZCBnZW5l cmF0b3JzIGludGVyYWN0aW9ucwotLSBBbGxvdyBjcmVhdGUgbWVtb3J5LnByZXNzdXJlIGZpbGVz IHdpdGggY2dyb3VwX21lbW9yeV9wcmVzc3VyZV90Ci0tIEFkZCBzdXBwb3J0IGZvciBsaWJ2aXJ0 IGhvb2tzCi0KLSogV2VkIEp1biAxOSAyMDI0IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0 LmNvbT4gLSA0MS42LTEKLS0gQWxsb3cgY2VydG1vbmdlciByZWFkIGFuZCB3cml0ZSB0cG0gZGV2 aWNlcwotLSBBbGxvdyBhbGwgZG9tYWlucyB0byBjb25uZWN0IHRvIHN5c3RlbWQtbnNyZXNvdXJj ZWQgb3ZlciBhIHVuaXggc29ja2V0Ci0tIEFsbG93IHN5c3RlbWQtbWFjaGluZWQgcmVhZCB0aGUg dnNvY2sgZGV2aWNlCi0tIFVwZGF0ZSBwb2xpY3kgZm9yIHN5c3RlbWQgZ2VuZXJhdG9ycwotLSBB bGxvdyBwdHA0bF90IHJlcXVlc3QgdGhhdCB0aGUga2VybmVsIGxvYWQgYSBrZXJuZWwgbW9kdWxl Ci0tIEFsbG93IHNiZCB0byB0cmFjZSBwcm9jZXNzZXMgaW4gdXNlciBuYW1lc3BhY2UKLS0gQWxs b3cgcmVxdWVzdC1rZXkgZXhlY3V0ZSBzY3JpcHRzCi0tIFVwZGF0ZSBwb2xpY3kgZm9yIGhhcHJv eHlkCi0KLSogVHVlIEp1biAxOCAyMDI0IFpkZW5layBQeXRlbGEgPHpweXRlbGFAcmVkaGF0LmNv bT4gLSA0MS41LTEKLS0gVXBkYXRlIHBvbGljeSBmb3Igc3lzdGVtZC1uc3Jlc291cmNlZAotLSBD b3JyZWN0IHNiaW4tcmVsYXRlZCBmaWxlIGNvbnRleHQgZW50cmllcwotCi0qIE1vbiBKdW4gMTcg MjAyNCBaZGVuZWsgUHl0ZWxhIDx6cHl0ZWxhQHJlZGhhdC5jb20+IC0gNDEuNC0xCi0tIEFsbG93 IGxvZ2luX3VzZXJkb21haW4gZXhlY3V0ZSBzeXN0ZW1kLXRtcGZpbGVzIGluIHRoZSBjYWxsZXIg ZG9tYWluCi0tIEFsbG93IHZpcnRfZHJpdmVyX2RvbWFpbiByZWFkIGZpbGVzIGxhYmVsZWQgdW5j b25maW5lZF90Ci0tIEFsbG93IHZpcnRfZHJpdmVyX2RvbWFpbiBkYnVzIGNoYXQgd2l0aCBwb2xp Y3lraXQKLS0gQWxsb3cgdmlydHFlbXVkIG1hbmFnZSBuZnMgZmlsZXMgd2hlbiB2aXJ0X3VzZV9u ZnMgYm9vbGVhbiBpcyBvbgotLSBBZGQgcnVsZXMgZm9yIGludGVyYWN0aW9ucyBiZXR3ZWVuIGdl bmVyYXRvcnMKLS0gTGFiZWwgbWVtb3J5LnByZXNzdXJlIGZpbGVzIHdpdGggY2dyb3VwX21lbW9y eV9wcmVzc3VyZV90Ci0tIFJldmVydCAiQWxsb3cgc29tZSBzeXN0ZW1kIHNlcnZpY2VzIHdyaXRl IHRvIGNncm91cCBmaWxlcyIKLS0gVXBkYXRlIHBvbGljeSBmb3Igc3lzdGVtZC1uc3Jlc291cmNl ZAotLSBMYWJlbCAvdXNyL2Jpbi9udGZzY2sgd2l0aCBmc2FkbV9leGVjX3QKLS0gQWxsb3cgc3lz dGVtZF9mc3RhYl9nZW5lcmF0b3JfdCByZWFkIHRtcGZzIGZpbGVzCi0tIFVwZGF0ZSBwb2xpY3kg Zm9yIHN5c3RlbWQtbnNyZXNvdXJjZWQKLS0gQWxpYXMgL3Vzci9zYmluIHRvIC91c3IvYmluIGFu ZCBjaGFuZ2UgYWxsIC91c3Ivc2JpbiBwYXRocyB0byAvdXNyL2JpbgotLSBSZW1vdmUgYSBmZXcg bGluZXMgZHVwbGljYXRlZCBiZXR3ZWVuIHtka2ltLG1pbHRlcn0uZmMKLS0gQWxpYXMgL2JpbiDi hpIgL3Vzci9iaW4gYW5kIHJlbW92ZSByZWR1bmRhbnQgcGF0aHMKLS0gRHJvcCBkdXBsaWNhdGUg bGluZSBmb3IgL3Vzci9zYmluL3VuaXhfY2hrcHdkCi0tIERyb3AgZHVwbGljYXRlIHBhdGhzIGZv ciAvdXNyL3NiaW4KLQotKiBUdWUgSnVuIDExIDIwMjQgWmRlbmVrIFB5dGVsYSA8enB5dGVsYUBy ZWRoYXQuY29tPiAtIDQxLjMtMQotLSBVcGRhdGUgc3lzdGVtZC1nZW5lcmF0b3IgcG9saWN5Ci0t IFJlbW92ZSBwZXJtaXNzaXZlIGRvbWFpbiBmb3IgYm9vdHVwZF90Ci0tIFJlbW92ZSBwZXJtaXNz aXZlIGRvbWFpbiBmb3IgY29yZW9zX2luc3RhbGxlcl90Ci0tIFJlbW92ZSBwZXJtaXNzaXZlIGRv bWFpbiBmb3IgYWZ0ZXJidXJuX3QKLS0gQWRkIHRoZSBzYXAgbW9kdWxlIHRvIG1vZHVsZXMuY29u ZgotLSBNb3ZlIHVuY29uZmluZWRfZG9tYWluKHNhcF91bmNvbmZpbmVkX3QpIHRvIGFuIG9wdGlv bmFsIGJsb2NrCi0tIENyZWF0ZSB0aGUgc2FwIG1vZHVsZQotLSBBbGxvdyBzeXN0ZW1kLWNvcmVk dW1wZCBzeXNfYWRtaW4gYW5kIHN5c19yZXNvdXJjZSBjYXBhYmlsaXRpZXMKLS0gQWxsb3cgc3lz dGVtZC1jb3JlZHVtcCByZWFkIG5zZnMgZmlsZXMKLS0gQWxsb3cgZ2VuZXJhdG9ycyBhdXRvIGZp bGUgdHJhbnNpdGlvbiBvbmx5IGZvciBwbGFpbiBmaWxlcwotLSBBbGxvdyBzeXN0ZW1kLWh3ZGIg d3JpdGUgdG8gdGhlIGtlcm5lbCBtZXNzYWdlcyBkZXZpY2UKLS0gRXNjYXBlICJpbnRlcmZhY2Ui IGFzIGEgZmlsZSBuYW1lIGluIGEgdmlydCBmaWxldHJhbnMgcGF0dGVybgotLSBBbGxvdyBnbm9t ZS1zb2Z0d2FyZSB3b3JrIGZvciBsb2dpbl91c2VyZG9tYWluCi0tIEFsbG93IHN5c3RlbWQtbWFj aGluZWQgbWFuYWdlIHJ1bnRpbWUgc29ja2V0cwotLSBSZXZlcnQgIkFsbG93IHN5c3RlbWQtbWFj aGluZWQgbWFuYWdlIHJ1bnRpbWUgc29ja2V0cyIKLQotKiBGcmkgSnVuIDA3IDIwMjQgWmRlbmVr IFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjItMQotLSBBbGxvdyBwb3N0Zml4X2Rv bWFpbiBjb25uZWN0IHRvIHBvc3RncmVzcWwgb3ZlciBhIHVuaXggc29ja2V0Ci0tIERvbnRhdWRp dCBzeXN0ZW1kLWNvcmVkdW1wIHN5c19hZG1pbiBjYXBhYmlsaXR5Ci0tIEFsbG93IGFsbCBkb21h aW5zIHJlYWQgYW5kIHdyaXRlIHo5MGNyeXB0IGRldmljZQotLSBBbGxvdyB0cG0yIGdlbmVyYXRv ciBzZXRmc2NyZWF0ZQotLSBBbGxvdyBzeXN0ZW1kIChQSUQgMSkgbWFuYWdlIHN5c3RlbWQgY29u ZiBmaWxlcwotLSBBbGxvdyBwdWxzZWF1ZGlvIG1hcCBpdHMgcnVudGltZSBmaWxlcwotLSBVcGRh dGUgcG9saWN5IGZvciBnZXR0eS1nZW5lcmF0b3IKLS0gQWxsb3cgc3lzdGVtZC1od2RiIHNlbmQg bWVzc2FnZXMgdG8ga2VybmVsIHVuaXggZGF0YWdyYW0gc29ja2V0cwotLSBBbGxvdyBzeXN0ZW1k LW1hY2hpbmVkIG1hbmFnZSBydW50aW1lIHNvY2tldHMKLQotKiBNb24gSnVuIDAzIDIwMjQgWmRl bmVrIFB5dGVsYSA8enB5dGVsYUByZWRoYXQuY29tPiAtIDQxLjEtMQotLSBBbGxvdyBmc3RhYi1n ZW5lcmF0b3IgY3JlYXRlIHVuaXQgZmlsZSBzeW1saW5rcwotLSBVcGRhdGUgcG9saWN5IGZvciBj cnlwdHNldHVwLWdlbmVyYXRvcgotLSBVcGRhdGUgcG9saWN5IGZvciBmc3RhYi1nZW5lcmF0b3IK LS0gQWxsb3cgdmlydHFlbXVkIHJlYWQgdm0gc3lzY3RscwotLSBBbGxvdyBjb2xsZWN0ZCB0byB0 cmFjZSBwcm9jZXNzZXMgaW4gdXNlciBuYW1lc3BhY2UKLS0gQWxsb3cgYm9vdHVwZCBzZWFyY2gg ZWZpdmFyZnMgZGlycwotLSBBZGQgcG9saWN5IGZvciBzeXN0ZW1kLW1vdW50ZnNkCi0tIEFkZCBw b2xpY3kgZm9yIHN5c3RlbWQtbnNyZXNvdXJjZWQKLS0gVXBkYXRlIHBvbGljeSBnZW5lcmF0b3Jz Ci0tIEFkZCBwb2xpY3kgZm9yIGFuYWNvbmRhLWdlbmVyYXRvcgotLSBVcGRhdGUgcG9saWN5IGZv ciBmc3RhYiBhbmQgZ3B0IGdlbmVyYXRvcnMKLS0gQWRkIHBvbGljeSBmb3Iga2R1bXAtZGVwLWdl bmVyYXRvcgo=