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: Artur Frenszek-Iwicki To: git-commits@fedoraproject.org Subject: [rpms/Maelstrom] rawhide: Update to v4.0.2 (rhbz#2495895) Date: Sun, 20 Sep 2026 11:32:50 GMT Message-ID: <178990397002.1.14477292878854895514.rpms-Maelstrom-2c6b69ef5a6c@fedoraproject.org> List-ID: X-Git-Repo: rpms/Maelstrom X-Git-Branch: rawhide X-Git-Rev: 2c6b69ef5a6c15a38c8b8680eeff6e53d1adadfb ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvTWFlbHN0cm9tCiAgICAgICAgICAgIEJyYW5jaCA6IHJhd2hpZGUKICAgICAg ICAgICAgQ29tbWl0IDogMmM2YjY5ZWY1YTZjMTVhMzhjOGI4NjgwZWVmZjZlNTNkMWFkYWRmYgog ICAgICAgICAgICBBdXRob3IgOiBBcnR1ciBGcmVuc3play1Jd2lja2kgPGZlZG9yYUBzdmdhbWVz LnBsPgogICAgICAgICAgICBEYXRlICAgOiAyMDI2LTA5LTIwVDEzOjEzOjEzKzAyOjAwCiAgICAg ICAgICAgIFN0YXRzICA6ICs0MTkvLTQxMSBpbiAxNCBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAg ICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvTWFlbHN0cm9tL2MvMmM2YjY5 ZWY1YTZjMTVhMzhjOGI4NjgwZWVmZjZlNTNkMWFkYWRmYj9icmFuY2g9cmF3aGlkZQoKICAgICAg ICAgICAgTG9nOgogICAgICAgICAgICBVcGRhdGUgdG8gdjQuMC4yIChyaGJ6IzI0OTU4OTUpCgpU aGlzIGNvbW1pdCB1bmNlcmVtb25pb3VzbHkgZHJvcHMgdGhlIHBhdGNoZXMgZm9yIHN5c3RlbS13 aWRlIHNoYXJlZApoaS1zY29yZXMsIGFzIHRoZSBnYW1lIHN3aXRjaGVkIGZyb20gc3RvcmluZyBh IHNpbXBsZSBsaXN0IG9mIHNjb3Jlcwp0byBzdG9yaW5nIGEgZGlyZWN0b3J5IG9mIGdhbWUgcmVw bGF5cy4KCi0tLQpkaWZmIC0tZ2l0IGEvLmdpdGlnbm9yZSBiLy5naXRpZ25vcmUKaW5kZXggNmI4 MzUxMy4uOGU2NjBmZCAxMDA2NDQKLS0tIGEvLmdpdGlnbm9yZQorKysgYi8uZ2l0aWdub3JlCkBA IC0xLDIgKzEsNCBAQAogTWFlbHN0cm9tLTMuMC42LnRhci5negogL01hZWxzdHJvbS0zLjAuNy50 YXIuZ3oKKy9NYWVsc3Ryb20tcmVsZWFzZS00LjAuMi50YXIuZ3oKKy9waHlzZnMtNDljZmQ1ZmRk NDZmMzhiNGMyNjExNTU2YjQ0ZWU5YjBkMzA4ZTE2Mi50YXIuZ3oKCmRpZmYgLS1naXQgYS82NGJp dC5wYXRjaCBiLzY0Yml0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMzA5 MWVmLi4wMDAwMDAwCi0tLSBhLzY0Yml0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAs MCBAQAotZGlmZiAtLWdpdCBhL3NjcmVlbmxpYi9TRExfRnJhbWVCdWYuY3BwIGIvc2NyZWVubGli L1NETF9GcmFtZUJ1Zi5jcHAKLWluZGV4IDJmN2I0NGMuLmRiY2YzNzkgMTAwNjQ0Ci0tLS0gYS9z Y3JlZW5saWIvU0RMX0ZyYW1lQnVmLmNwcAotKysrIGIvc2NyZWVubGliL1NETF9GcmFtZUJ1Zi5j cHAKLUBAIC04ODgsNyArODg4LDcgQEAgRnJhbWVCdWY6OiBBZGREaXJ0eVJlY3QoU0RMX1JlY3Qg KnJlY3QpCi0gCQkJZm9yICggaT0wOyBpPGRpcnR5bWFwbGVuOyArK2kgKSB7Ci0gCQkJCWlmICgg ZGlydHltYXBbaV0gIT0gTlVMTCApIHsKLSAJCQkJCWRpcnR5bWFwW2ldID0gKFNETF9SZWN0ICop KAotLQkJCQkJKChpbnRwdHJfdClkaXJ0eW1hcFtpXS0oaW50cHRyX3QpdXBkYXRlbGlzdCkgKyAo aW50cHRyX3QpbmV3bGlzdAotKwkJCQkJKChsb25nKWRpcnR5bWFwW2ldLShsb25nKXVwZGF0ZWxp c3QpICsgKGxvbmcpbmV3bGlzdAotIAkJCQkJKTsKLSAJCQkJfQotIAkJCX0KCmRpZmYgLS1naXQg YS9DQy1CWS0zLjAudHh0IGIvQ0MtQlktMy4wLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwLi4xYTE2ZTA1Ci0tLSAvZGV2L251bGwKKysrIGIvQ0MtQlktMy4wLnR4dApAQCAt MCwwICsxLDMxOSBAQAorQ3JlYXRpdmUgQ29tbW9ucyBMZWdhbCBDb2RlCisKK0F0dHJpYnV0aW9u IDMuMCBVbnBvcnRlZAorCisgICAgQ1JFQVRJVkUgQ09NTU9OUyBDT1JQT1JBVElPTiBJUyBOT1Qg QSBMQVcgRklSTSBBTkQgRE9FUyBOT1QgUFJPVklERQorICAgIExFR0FMIFNFUlZJQ0VTLiBESVNU UklCVVRJT04gT0YgVEhJUyBMSUNFTlNFIERPRVMgTk9UIENSRUFURSBBTgorICAgIEFUVE9STkVZ LUNMSUVOVCBSRUxBVElPTlNISVAuIENSRUFUSVZFIENPTU1PTlMgUFJPVklERVMgVEhJUworICAg IElORk9STUFUSU9OIE9OIEFOICJBUy1JUyIgQkFTSVMuIENSRUFUSVZFIENPTU1PTlMgTUFLRVMg Tk8gV0FSUkFOVElFUworICAgIFJFR0FSRElORyBUSEUgSU5GT1JNQVRJT04gUFJPVklERUQsIEFO RCBESVNDTEFJTVMgTElBQklMSVRZIEZPUgorICAgIERBTUFHRVMgUkVTVUxUSU5HIEZST00gSVRT IFVTRS4KKworTGljZW5zZQorCitUSEUgV09SSyAoQVMgREVGSU5FRCBCRUxPVykgSVMgUFJPVklE RUQgVU5ERVIgVEhFIFRFUk1TIE9GIFRISVMgQ1JFQVRJVkUKK0NPTU1PTlMgUFVCTElDIExJQ0VO U0UgKCJDQ1BMIiBPUiAiTElDRU5TRSIpLiBUSEUgV09SSyBJUyBQUk9URUNURUQgQlkKK0NPUFlS SUdIVCBBTkQvT1IgT1RIRVIgQVBQTElDQUJMRSBMQVcuIEFOWSBVU0UgT0YgVEhFIFdPUksgT1RI RVIgVEhBTiBBUworQVVUSE9SSVpFRCBVTkRFUiBUSElTIExJQ0VOU0UgT1IgQ09QWVJJR0hUIExB VyBJUyBQUk9ISUJJVEVELgorCitCWSBFWEVSQ0lTSU5HIEFOWSBSSUdIVFMgVE8gVEhFIFdPUksg UFJPVklERUQgSEVSRSwgWU9VIEFDQ0VQVCBBTkQgQUdSRUUKK1RPIEJFIEJPVU5EIEJZIFRIRSBU RVJNUyBPRiBUSElTIExJQ0VOU0UuIFRPIFRIRSBFWFRFTlQgVEhJUyBMSUNFTlNFIE1BWQorQkUg Q09OU0lERVJFRCBUTyBCRSBBIENPTlRSQUNULCBUSEUgTElDRU5TT1IgR1JBTlRTIFlPVSBUSEUg UklHSFRTCitDT05UQUlORUQgSEVSRSBJTiBDT05TSURFUkFUSU9OIE9GIFlPVVIgQUNDRVBUQU5D RSBPRiBTVUNIIFRFUk1TIEFORAorQ09ORElUSU9OUy4KKworMS4gRGVmaW5pdGlvbnMKKworIGEu ICJBZGFwdGF0aW9uIiBtZWFucyBhIHdvcmsgYmFzZWQgdXBvbiB0aGUgV29yaywgb3IgdXBvbiB0 aGUgV29yayBhbmQKKyAgICBvdGhlciBwcmUtZXhpc3Rpbmcgd29ya3MsIHN1Y2ggYXMgYSB0cmFu c2xhdGlvbiwgYWRhcHRhdGlvbiwKKyAgICBkZXJpdmF0aXZlIHdvcmssIGFycmFuZ2VtZW50IG9m IG11c2ljIG9yIG90aGVyIGFsdGVyYXRpb25zIG9mIGEKKyAgICBsaXRlcmFyeSBvciBhcnRpc3Rp YyB3b3JrLCBvciBwaG9ub2dyYW0gb3IgcGVyZm9ybWFuY2UgYW5kIGluY2x1ZGVzCisgICAgY2lu ZW1hdG9ncmFwaGljIGFkYXB0YXRpb25zIG9yIGFueSBvdGhlciBmb3JtIGluIHdoaWNoIHRoZSBX b3JrIG1heSBiZQorICAgIHJlY2FzdCwgdHJhbnNmb3JtZWQsIG9yIGFkYXB0ZWQgaW5jbHVkaW5n IGluIGFueSBmb3JtIHJlY29nbml6YWJseQorICAgIGRlcml2ZWQgZnJvbSB0aGUgb3JpZ2luYWws IGV4Y2VwdCB0aGF0IGEgd29yayB0aGF0IGNvbnN0aXR1dGVzIGEKKyAgICBDb2xsZWN0aW9uIHdp bGwgbm90IGJlIGNvbnNpZGVyZWQgYW4gQWRhcHRhdGlvbiBmb3IgdGhlIHB1cnBvc2Ugb2YKKyAg ICB0aGlzIExpY2Vuc2UuIEZvciB0aGUgYXZvaWRhbmNlIG9mIGRvdWJ0LCB3aGVyZSB0aGUgV29y ayBpcyBhIG11c2ljYWwKKyAgICB3b3JrLCBwZXJmb3JtYW5jZSBvciBwaG9ub2dyYW0sIHRoZSBz eW5jaHJvbml6YXRpb24gb2YgdGhlIFdvcmsgaW4KKyAgICB0aW1lZC1yZWxhdGlvbiB3aXRoIGEg bW92aW5nIGltYWdlICgic3luY2hpbmciKSB3aWxsIGJlIGNvbnNpZGVyZWQgYW4KKyAgICBBZGFw dGF0aW9uIGZvciB0aGUgcHVycG9zZSBvZiB0aGlzIExpY2Vuc2UuCisgYi4gIkNvbGxlY3Rpb24i IG1lYW5zIGEgY29sbGVjdGlvbiBvZiBsaXRlcmFyeSBvciBhcnRpc3RpYyB3b3Jrcywgc3VjaCBh cworICAgIGVuY3ljbG9wZWRpYXMgYW5kIGFudGhvbG9naWVzLCBvciBwZXJmb3JtYW5jZXMsIHBo b25vZ3JhbXMgb3IKKyAgICBicm9hZGNhc3RzLCBvciBvdGhlciB3b3JrcyBvciBzdWJqZWN0IG1h dHRlciBvdGhlciB0aGFuIHdvcmtzIGxpc3RlZAorICAgIGluIFNlY3Rpb24gMShmKSBiZWxvdywg d2hpY2gsIGJ5IHJlYXNvbiBvZiB0aGUgc2VsZWN0aW9uIGFuZAorICAgIGFycmFuZ2VtZW50IG9m IHRoZWlyIGNvbnRlbnRzLCBjb25zdGl0dXRlIGludGVsbGVjdHVhbCBjcmVhdGlvbnMsIGluCisg ICAgd2hpY2ggdGhlIFdvcmsgaXMgaW5jbHVkZWQgaW4gaXRzIGVudGlyZXR5IGluIHVubW9kaWZp ZWQgZm9ybSBhbG9uZworICAgIHdpdGggb25lIG9yIG1vcmUgb3RoZXIgY29udHJpYnV0aW9ucywg ZWFjaCBjb25zdGl0dXRpbmcgc2VwYXJhdGUgYW5kCisgICAgaW5kZXBlbmRlbnQgd29ya3MgaW4g dGhlbXNlbHZlcywgd2hpY2ggdG9nZXRoZXIgYXJlIGFzc2VtYmxlZCBpbnRvIGEKKyAgICBjb2xs ZWN0aXZlIHdob2xlLiBBIHdvcmsgdGhhdCBjb25zdGl0dXRlcyBhIENvbGxlY3Rpb24gd2lsbCBu b3QgYmUKKyAgICBjb25zaWRlcmVkIGFuIEFkYXB0YXRpb24gKGFzIGRlZmluZWQgYWJvdmUpIGZv ciB0aGUgcHVycG9zZXMgb2YgdGhpcworICAgIExpY2Vuc2UuCisgYy4gIkRpc3RyaWJ1dGUiIG1l YW5zIHRvIG1ha2UgYXZhaWxhYmxlIHRvIHRoZSBwdWJsaWMgdGhlIG9yaWdpbmFsIGFuZAorICAg IGNvcGllcyBvZiB0aGUgV29yayBvciBBZGFwdGF0aW9uLCBhcyBhcHByb3ByaWF0ZSwgdGhyb3Vn aCBzYWxlIG9yCisgICAgb3RoZXIgdHJhbnNmZXIgb2Ygb3duZXJzaGlwLgorIGQuICJMaWNlbnNv ciIgbWVhbnMgdGhlIGluZGl2aWR1YWwsIGluZGl2aWR1YWxzLCBlbnRpdHkgb3IgZW50aXRpZXMg dGhhdAorICAgIG9mZmVyKHMpIHRoZSBXb3JrIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vu c2UuCisgZS4gIk9yaWdpbmFsIEF1dGhvciIgbWVhbnMsIGluIHRoZSBjYXNlIG9mIGEgbGl0ZXJh cnkgb3IgYXJ0aXN0aWMgd29yaywKKyAgICB0aGUgaW5kaXZpZHVhbCwgaW5kaXZpZHVhbHMsIGVu dGl0eSBvciBlbnRpdGllcyB3aG8gY3JlYXRlZCB0aGUgV29yaworICAgIG9yIGlmIG5vIGluZGl2 aWR1YWwgb3IgZW50aXR5IGNhbiBiZSBpZGVudGlmaWVkLCB0aGUgcHVibGlzaGVyOyBhbmQgaW4K KyAgICBhZGRpdGlvbiAoaSkgaW4gdGhlIGNhc2Ugb2YgYSBwZXJmb3JtYW5jZSB0aGUgYWN0b3Jz LCBzaW5nZXJzLAorICAgIG11c2ljaWFucywgZGFuY2VycywgYW5kIG90aGVyIHBlcnNvbnMgd2hv IGFjdCwgc2luZywgZGVsaXZlciwgZGVjbGFpbSwKKyAgICBwbGF5IGluLCBpbnRlcnByZXQgb3Ig b3RoZXJ3aXNlIHBlcmZvcm0gbGl0ZXJhcnkgb3IgYXJ0aXN0aWMgd29ya3Mgb3IKKyAgICBleHBy ZXNzaW9ucyBvZiBmb2xrbG9yZTsgKGlpKSBpbiB0aGUgY2FzZSBvZiBhIHBob25vZ3JhbSB0aGUg cHJvZHVjZXIKKyAgICBiZWluZyB0aGUgcGVyc29uIG9yIGxlZ2FsIGVudGl0eSB3aG8gZmlyc3Qg Zml4ZXMgdGhlIHNvdW5kcyBvZiBhCisgICAgcGVyZm9ybWFuY2Ugb3Igb3RoZXIgc291bmRzOyBh bmQsIChpaWkpIGluIHRoZSBjYXNlIG9mIGJyb2FkY2FzdHMsIHRoZQorICAgIG9yZ2FuaXphdGlv biB0aGF0IHRyYW5zbWl0cyB0aGUgYnJvYWRjYXN0LgorIGYuICJXb3JrIiBtZWFucyB0aGUgbGl0 ZXJhcnkgYW5kL29yIGFydGlzdGljIHdvcmsgb2ZmZXJlZCB1bmRlciB0aGUgdGVybXMKKyAgICBv ZiB0aGlzIExpY2Vuc2UgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiBhbnkgcHJvZHVjdGlv biBpbiB0aGUKKyAgICBsaXRlcmFyeSwgc2NpZW50aWZpYyBhbmQgYXJ0aXN0aWMgZG9tYWluLCB3 aGF0ZXZlciBtYXkgYmUgdGhlIG1vZGUgb3IKKyAgICBmb3JtIG9mIGl0cyBleHByZXNzaW9uIGlu Y2x1ZGluZyBkaWdpdGFsIGZvcm0sIHN1Y2ggYXMgYSBib29rLAorICAgIHBhbXBobGV0IGFuZCBv dGhlciB3cml0aW5nOyBhIGxlY3R1cmUsIGFkZHJlc3MsIHNlcm1vbiBvciBvdGhlciB3b3JrCisg ICAgb2YgdGhlIHNhbWUgbmF0dXJlOyBhIGRyYW1hdGljIG9yIGRyYW1hdGljby1tdXNpY2FsIHdv cms7IGEKKyAgICBjaG9yZW9ncmFwaGljIHdvcmsgb3IgZW50ZXJ0YWlubWVudCBpbiBkdW1iIHNo b3c7IGEgbXVzaWNhbAorICAgIGNvbXBvc2l0aW9uIHdpdGggb3Igd2l0aG91dCB3b3JkczsgYSBj aW5lbWF0b2dyYXBoaWMgd29yayB0byB3aGljaCBhcmUKKyAgICBhc3NpbWlsYXRlZCB3b3JrcyBl eHByZXNzZWQgYnkgYSBwcm9jZXNzIGFuYWxvZ291cyB0byBjaW5lbWF0b2dyYXBoeTsKKyAgICBh IHdvcmsgb2YgZHJhd2luZywgcGFpbnRpbmcsIGFyY2hpdGVjdHVyZSwgc2N1bHB0dXJlLCBlbmdy YXZpbmcgb3IKKyAgICBsaXRob2dyYXBoeTsgYSBwaG90b2dyYXBoaWMgd29yayB0byB3aGljaCBh cmUgYXNzaW1pbGF0ZWQgd29ya3MKKyAgICBleHByZXNzZWQgYnkgYSBwcm9jZXNzIGFuYWxvZ291 cyB0byBwaG90b2dyYXBoeTsgYSB3b3JrIG9mIGFwcGxpZWQKKyAgICBhcnQ7IGFuIGlsbHVzdHJh dGlvbiwgbWFwLCBwbGFuLCBza2V0Y2ggb3IgdGhyZWUtZGltZW5zaW9uYWwgd29yaworICAgIHJl bGF0aXZlIHRvIGdlb2dyYXBoeSwgdG9wb2dyYXBoeSwgYXJjaGl0ZWN0dXJlIG9yIHNjaWVuY2U7 IGEKKyAgICBwZXJmb3JtYW5jZTsgYSBicm9hZGNhc3Q7IGEgcGhvbm9ncmFtOyBhIGNvbXBpbGF0 aW9uIG9mIGRhdGEgdG8gdGhlCisgICAgZXh0ZW50IGl0IGlzIHByb3RlY3RlZCBhcyBhIGNvcHly aWdodGFibGUgd29yazsgb3IgYSB3b3JrIHBlcmZvcm1lZCBieQorICAgIGEgdmFyaWV0eSBvciBj aXJjdXMgcGVyZm9ybWVyIHRvIHRoZSBleHRlbnQgaXQgaXMgbm90IG90aGVyd2lzZQorICAgIGNv bnNpZGVyZWQgYSBsaXRlcmFyeSBvciBhcnRpc3RpYyB3b3JrLgorIGcuICJZb3UiIG1lYW5zIGFu IGluZGl2aWR1YWwgb3IgZW50aXR5IGV4ZXJjaXNpbmcgcmlnaHRzIHVuZGVyIHRoaXMKKyAgICBM aWNlbnNlIHdobyBoYXMgbm90IHByZXZpb3VzbHkgdmlvbGF0ZWQgdGhlIHRlcm1zIG9mIHRoaXMg TGljZW5zZSB3aXRoCisgICAgcmVzcGVjdCB0byB0aGUgV29yaywgb3Igd2hvIGhhcyByZWNlaXZl ZCBleHByZXNzIHBlcm1pc3Npb24gZnJvbSB0aGUKKyAgICBMaWNlbnNvciB0byBleGVyY2lzZSBy aWdodHMgdW5kZXIgdGhpcyBMaWNlbnNlIGRlc3BpdGUgYSBwcmV2aW91cworICAgIHZpb2xhdGlv bi4KKyBoLiAiUHVibGljbHkgUGVyZm9ybSIgbWVhbnMgdG8gcGVyZm9ybSBwdWJsaWMgcmVjaXRh dGlvbnMgb2YgdGhlIFdvcmsgYW5kCisgICAgdG8gY29tbXVuaWNhdGUgdG8gdGhlIHB1YmxpYyB0 aG9zZSBwdWJsaWMgcmVjaXRhdGlvbnMsIGJ5IGFueSBtZWFucyBvcgorICAgIHByb2Nlc3MsIGlu Y2x1ZGluZyBieSB3aXJlIG9yIHdpcmVsZXNzIG1lYW5zIG9yIHB1YmxpYyBkaWdpdGFsCisgICAg cGVyZm9ybWFuY2VzOyB0byBtYWtlIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIFdvcmtzIGluIHN1 Y2ggYSB3YXkgdGhhdAorICAgIG1lbWJlcnMgb2YgdGhlIHB1YmxpYyBtYXkgYWNjZXNzIHRoZXNl IFdvcmtzIGZyb20gYSBwbGFjZSBhbmQgYXQgYQorICAgIHBsYWNlIGluZGl2aWR1YWxseSBjaG9z ZW4gYnkgdGhlbTsgdG8gcGVyZm9ybSB0aGUgV29yayB0byB0aGUgcHVibGljCisgICAgYnkgYW55 IG1lYW5zIG9yIHByb2Nlc3MgYW5kIHRoZSBjb21tdW5pY2F0aW9uIHRvIHRoZSBwdWJsaWMgb2Yg dGhlCisgICAgcGVyZm9ybWFuY2VzIG9mIHRoZSBXb3JrLCBpbmNsdWRpbmcgYnkgcHVibGljIGRp Z2l0YWwgcGVyZm9ybWFuY2U7IHRvCisgICAgYnJvYWRjYXN0IGFuZCByZWJyb2FkY2FzdCB0aGUg V29yayBieSBhbnkgbWVhbnMgaW5jbHVkaW5nIHNpZ25zLAorICAgIHNvdW5kcyBvciBpbWFnZXMu CisgaS4gIlJlcHJvZHVjZSIgbWVhbnMgdG8gbWFrZSBjb3BpZXMgb2YgdGhlIFdvcmsgYnkgYW55 IG1lYW5zIGluY2x1ZGluZworICAgIHdpdGhvdXQgbGltaXRhdGlvbiBieSBzb3VuZCBvciB2aXN1 YWwgcmVjb3JkaW5ncyBhbmQgdGhlIHJpZ2h0IG9mCisgICAgZml4YXRpb24gYW5kIHJlcHJvZHVj aW5nIGZpeGF0aW9ucyBvZiB0aGUgV29yaywgaW5jbHVkaW5nIHN0b3JhZ2Ugb2YgYQorICAgIHBy b3RlY3RlZCBwZXJmb3JtYW5jZSBvciBwaG9ub2dyYW0gaW4gZGlnaXRhbCBmb3JtIG9yIG90aGVy IGVsZWN0cm9uaWMKKyAgICBtZWRpdW0uCisKKzIuIEZhaXIgRGVhbGluZyBSaWdodHMuIE5vdGhp bmcgaW4gdGhpcyBMaWNlbnNlIGlzIGludGVuZGVkIHRvIHJlZHVjZSwKK2xpbWl0LCBvciByZXN0 cmljdCBhbnkgdXNlcyBmcmVlIGZyb20gY29weXJpZ2h0IG9yIHJpZ2h0cyBhcmlzaW5nIGZyb20K K2xpbWl0YXRpb25zIG9yIGV4Y2VwdGlvbnMgdGhhdCBhcmUgcHJvdmlkZWQgZm9yIGluIGNvbm5l Y3Rpb24gd2l0aCB0aGUKK2NvcHlyaWdodCBwcm90ZWN0aW9uIHVuZGVyIGNvcHlyaWdodCBsYXcg b3Igb3RoZXIgYXBwbGljYWJsZSBsYXdzLgorCiszLiBMaWNlbnNlIEdyYW50LiBTdWJqZWN0IHRv IHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UsCitMaWNlbnNvciBoZXJl YnkgZ3JhbnRzIFlvdSBhIHdvcmxkd2lkZSwgcm95YWx0eS1mcmVlLCBub24tZXhjbHVzaXZlLAor cGVycGV0dWFsIChmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBhcHBsaWNhYmxlIGNvcHlyaWdodCkg bGljZW5zZSB0bworZXhlcmNpc2UgdGhlIHJpZ2h0cyBpbiB0aGUgV29yayBhcyBzdGF0ZWQgYmVs b3c6CisKKyBhLiB0byBSZXByb2R1Y2UgdGhlIFdvcmssIHRvIGluY29ycG9yYXRlIHRoZSBXb3Jr IGludG8gb25lIG9yIG1vcmUKKyAgICBDb2xsZWN0aW9ucywgYW5kIHRvIFJlcHJvZHVjZSB0aGUg V29yayBhcyBpbmNvcnBvcmF0ZWQgaW4gdGhlCisgICAgQ29sbGVjdGlvbnM7CisgYi4gdG8gY3Jl YXRlIGFuZCBSZXByb2R1Y2UgQWRhcHRhdGlvbnMgcHJvdmlkZWQgdGhhdCBhbnkgc3VjaCBBZGFw dGF0aW9uLAorICAgIGluY2x1ZGluZyBhbnkgdHJhbnNsYXRpb24gaW4gYW55IG1lZGl1bSwgdGFr ZXMgcmVhc29uYWJsZSBzdGVwcyB0bworICAgIGNsZWFybHkgbGFiZWwsIGRlbWFyY2F0ZSBvciBv dGhlcndpc2UgaWRlbnRpZnkgdGhhdCBjaGFuZ2VzIHdlcmUgbWFkZQorICAgIHRvIHRoZSBvcmln aW5hbCBXb3JrLiBGb3IgZXhhbXBsZSwgYSB0cmFuc2xhdGlvbiBjb3VsZCBiZSBtYXJrZWQgIlRo ZQorICAgIG9yaWdpbmFsIHdvcmsgd2FzIHRyYW5zbGF0ZWQgZnJvbSBFbmdsaXNoIHRvIFNwYW5p c2gsIiBvciBhCisgICAgbW9kaWZpY2F0aW9uIGNvdWxkIGluZGljYXRlICJUaGUgb3JpZ2luYWwg d29yayBoYXMgYmVlbiBtb2RpZmllZC4iOworIGMuIHRvIERpc3RyaWJ1dGUgYW5kIFB1YmxpY2x5 IFBlcmZvcm0gdGhlIFdvcmsgaW5jbHVkaW5nIGFzIGluY29ycG9yYXRlZAorICAgIGluIENvbGxl Y3Rpb25zOyBhbmQsCisgZC4gdG8gRGlzdHJpYnV0ZSBhbmQgUHVibGljbHkgUGVyZm9ybSBBZGFw dGF0aW9ucy4KKyBlLiBGb3IgdGhlIGF2b2lkYW5jZSBvZiBkb3VidDoKKworICAgICBpLiBOb24t d2FpdmFibGUgQ29tcHVsc29yeSBMaWNlbnNlIFNjaGVtZXMuIEluIHRob3NlIGp1cmlzZGljdGlv bnMgaW4KKyAgICAgICAgd2hpY2ggdGhlIHJpZ2h0IHRvIGNvbGxlY3Qgcm95YWx0aWVzIHRocm91 Z2ggYW55IHN0YXR1dG9yeSBvcgorICAgICAgICBjb21wdWxzb3J5IGxpY2Vuc2luZyBzY2hlbWUg Y2Fubm90IGJlIHdhaXZlZCwgdGhlIExpY2Vuc29yCisgICAgICAgIHJlc2VydmVzIHRoZSBleGNs dXNpdmUgcmlnaHQgdG8gY29sbGVjdCBzdWNoIHJveWFsdGllcyBmb3IgYW55CisgICAgICAgIGV4 ZXJjaXNlIGJ5IFlvdSBvZiB0aGUgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlOwor ICAgIGlpLiBXYWl2YWJsZSBDb21wdWxzb3J5IExpY2Vuc2UgU2NoZW1lcy4gSW4gdGhvc2UganVy aXNkaWN0aW9ucyBpbgorICAgICAgICB3aGljaCB0aGUgcmlnaHQgdG8gY29sbGVjdCByb3lhbHRp ZXMgdGhyb3VnaCBhbnkgc3RhdHV0b3J5IG9yCisgICAgICAgIGNvbXB1bHNvcnkgbGljZW5zaW5n IHNjaGVtZSBjYW4gYmUgd2FpdmVkLCB0aGUgTGljZW5zb3Igd2FpdmVzIHRoZQorICAgICAgICBl eGNsdXNpdmUgcmlnaHQgdG8gY29sbGVjdCBzdWNoIHJveWFsdGllcyBmb3IgYW55IGV4ZXJjaXNl IGJ5IFlvdQorICAgICAgICBvZiB0aGUgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNl OyBhbmQsCisgICBpaWkuIFZvbHVudGFyeSBMaWNlbnNlIFNjaGVtZXMuIFRoZSBMaWNlbnNvciB3 YWl2ZXMgdGhlIHJpZ2h0IHRvCisgICAgICAgIGNvbGxlY3Qgcm95YWx0aWVzLCB3aGV0aGVyIGlu ZGl2aWR1YWxseSBvciwgaW4gdGhlIGV2ZW50IHRoYXQgdGhlCisgICAgICAgIExpY2Vuc29yIGlz IGEgbWVtYmVyIG9mIGEgY29sbGVjdGluZyBzb2NpZXR5IHRoYXQgYWRtaW5pc3RlcnMKKyAgICAg ICAgdm9sdW50YXJ5IGxpY2Vuc2luZyBzY2hlbWVzLCB2aWEgdGhhdCBzb2NpZXR5LCBmcm9tIGFu eSBleGVyY2lzZQorICAgICAgICBieSBZb3Ugb2YgdGhlIHJpZ2h0cyBncmFudGVkIHVuZGVyIHRo aXMgTGljZW5zZS4KKworVGhlIGFib3ZlIHJpZ2h0cyBtYXkgYmUgZXhlcmNpc2VkIGluIGFsbCBt ZWRpYSBhbmQgZm9ybWF0cyB3aGV0aGVyIG5vdwora25vd24gb3IgaGVyZWFmdGVyIGRldmlzZWQu IFRoZSBhYm92ZSByaWdodHMgaW5jbHVkZSB0aGUgcmlnaHQgdG8gbWFrZQorc3VjaCBtb2RpZmlj YXRpb25zIGFzIGFyZSB0ZWNobmljYWxseSBuZWNlc3NhcnkgdG8gZXhlcmNpc2UgdGhlIHJpZ2h0 cyBpbgorb3RoZXIgbWVkaWEgYW5kIGZvcm1hdHMuIFN1YmplY3QgdG8gU2VjdGlvbiA4KGYpLCBh bGwgcmlnaHRzIG5vdCBleHByZXNzbHkKK2dyYW50ZWQgYnkgTGljZW5zb3IgYXJlIGhlcmVieSBy ZXNlcnZlZC4KKworNC4gUmVzdHJpY3Rpb25zLiBUaGUgbGljZW5zZSBncmFudGVkIGluIFNlY3Rp b24gMyBhYm92ZSBpcyBleHByZXNzbHkgbWFkZQorc3ViamVjdCB0byBhbmQgbGltaXRlZCBieSB0 aGUgZm9sbG93aW5nIHJlc3RyaWN0aW9uczoKKworIGEuIFlvdSBtYXkgRGlzdHJpYnV0ZSBvciBQ dWJsaWNseSBQZXJmb3JtIHRoZSBXb3JrIG9ubHkgdW5kZXIgdGhlIHRlcm1zCisgICAgb2YgdGhp cyBMaWNlbnNlLiBZb3UgbXVzdCBpbmNsdWRlIGEgY29weSBvZiwgb3IgdGhlIFVuaWZvcm0gUmVz b3VyY2UKKyAgICBJZGVudGlmaWVyIChVUkkpIGZvciwgdGhpcyBMaWNlbnNlIHdpdGggZXZlcnkg Y29weSBvZiB0aGUgV29yayBZb3UKKyAgICBEaXN0cmlidXRlIG9yIFB1YmxpY2x5IFBlcmZvcm0u IFlvdSBtYXkgbm90IG9mZmVyIG9yIGltcG9zZSBhbnkgdGVybXMKKyAgICBvbiB0aGUgV29yayB0 aGF0IHJlc3RyaWN0IHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2Ugb3IgdGhlIGFiaWxpdHkgb2YK KyAgICB0aGUgcmVjaXBpZW50IG9mIHRoZSBXb3JrIHRvIGV4ZXJjaXNlIHRoZSByaWdodHMgZ3Jh bnRlZCB0byB0aGF0CisgICAgcmVjaXBpZW50IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTGljZW5z ZS4gWW91IG1heSBub3Qgc3VibGljZW5zZSB0aGUKKyAgICBXb3JrLiBZb3UgbXVzdCBrZWVwIGlu dGFjdCBhbGwgbm90aWNlcyB0aGF0IHJlZmVyIHRvIHRoaXMgTGljZW5zZSBhbmQKKyAgICB0byB0 aGUgZGlzY2xhaW1lciBvZiB3YXJyYW50aWVzIHdpdGggZXZlcnkgY29weSBvZiB0aGUgV29yayBZ b3UKKyAgICBEaXN0cmlidXRlIG9yIFB1YmxpY2x5IFBlcmZvcm0uIFdoZW4gWW91IERpc3RyaWJ1 dGUgb3IgUHVibGljbHkKKyAgICBQZXJmb3JtIHRoZSBXb3JrLCBZb3UgbWF5IG5vdCBpbXBvc2Ug YW55IGVmZmVjdGl2ZSB0ZWNobm9sb2dpY2FsCisgICAgbWVhc3VyZXMgb24gdGhlIFdvcmsgdGhh dCByZXN0cmljdCB0aGUgYWJpbGl0eSBvZiBhIHJlY2lwaWVudCBvZiB0aGUKKyAgICBXb3JrIGZy b20gWW91IHRvIGV4ZXJjaXNlIHRoZSByaWdodHMgZ3JhbnRlZCB0byB0aGF0IHJlY2lwaWVudCB1 bmRlcgorICAgIHRoZSB0ZXJtcyBvZiB0aGUgTGljZW5zZS4gVGhpcyBTZWN0aW9uIDQoYSkgYXBw bGllcyB0byB0aGUgV29yayBhcworICAgIGluY29ycG9yYXRlZCBpbiBhIENvbGxlY3Rpb24sIGJ1 dCB0aGlzIGRvZXMgbm90IHJlcXVpcmUgdGhlIENvbGxlY3Rpb24KKyAgICBhcGFydCBmcm9tIHRo ZSBXb3JrIGl0c2VsZiB0byBiZSBtYWRlIHN1YmplY3QgdG8gdGhlIHRlcm1zIG9mIHRoaXMKKyAg ICBMaWNlbnNlLiBJZiBZb3UgY3JlYXRlIGEgQ29sbGVjdGlvbiwgdXBvbiBub3RpY2UgZnJvbSBh bnkgTGljZW5zb3IgWW91CisgICAgbXVzdCwgdG8gdGhlIGV4dGVudCBwcmFjdGljYWJsZSwgcmVt b3ZlIGZyb20gdGhlIENvbGxlY3Rpb24gYW55IGNyZWRpdAorICAgIGFzIHJlcXVpcmVkIGJ5IFNl Y3Rpb24gNChiKSwgYXMgcmVxdWVzdGVkLiBJZiBZb3UgY3JlYXRlIGFuCisgICAgQWRhcHRhdGlv biwgdXBvbiBub3RpY2UgZnJvbSBhbnkgTGljZW5zb3IgWW91IG11c3QsIHRvIHRoZSBleHRlbnQK KyAgICBwcmFjdGljYWJsZSwgcmVtb3ZlIGZyb20gdGhlIEFkYXB0YXRpb24gYW55IGNyZWRpdCBh cyByZXF1aXJlZCBieQorICAgIFNlY3Rpb24gNChiKSwgYXMgcmVxdWVzdGVkLgorIGIuIElmIFlv dSBEaXN0cmlidXRlLCBvciBQdWJsaWNseSBQZXJmb3JtIHRoZSBXb3JrIG9yIGFueSBBZGFwdGF0 aW9ucyBvcgorICAgIENvbGxlY3Rpb25zLCBZb3UgbXVzdCwgdW5sZXNzIGEgcmVxdWVzdCBoYXMg YmVlbiBtYWRlIHB1cnN1YW50IHRvCisgICAgU2VjdGlvbiA0KGEpLCBrZWVwIGludGFjdCBhbGwg Y29weXJpZ2h0IG5vdGljZXMgZm9yIHRoZSBXb3JrIGFuZAorICAgIHByb3ZpZGUsIHJlYXNvbmFi bGUgdG8gdGhlIG1lZGl1bSBvciBtZWFucyBZb3UgYXJlIHV0aWxpemluZzogKGkpIHRoZQorICAg IG5hbWUgb2YgdGhlIE9yaWdpbmFsIEF1dGhvciAob3IgcHNldWRvbnltLCBpZiBhcHBsaWNhYmxl KSBpZiBzdXBwbGllZCwKKyAgICBhbmQvb3IgaWYgdGhlIE9yaWdpbmFsIEF1dGhvciBhbmQvb3Ig TGljZW5zb3IgZGVzaWduYXRlIGFub3RoZXIgcGFydHkKKyAgICBvciBwYXJ0aWVzIChlLmcuLCBh IHNwb25zb3IgaW5zdGl0dXRlLCBwdWJsaXNoaW5nIGVudGl0eSwgam91cm5hbCkgZm9yCisgICAg YXR0cmlidXRpb24gKCJBdHRyaWJ1dGlvbiBQYXJ0aWVzIikgaW4gTGljZW5zb3IncyBjb3B5cmln aHQgbm90aWNlLAorICAgIHRlcm1zIG9mIHNlcnZpY2Ugb3IgYnkgb3RoZXIgcmVhc29uYWJsZSBt ZWFucywgdGhlIG5hbWUgb2Ygc3VjaCBwYXJ0eQorICAgIG9yIHBhcnRpZXM7IChpaSkgdGhlIHRp dGxlIG9mIHRoZSBXb3JrIGlmIHN1cHBsaWVkOyAoaWlpKSB0byB0aGUKKyAgICBleHRlbnQgcmVh c29uYWJseSBwcmFjdGljYWJsZSwgdGhlIFVSSSwgaWYgYW55LCB0aGF0IExpY2Vuc29yCisgICAg c3BlY2lmaWVzIHRvIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgV29yaywgdW5sZXNzIHN1Y2ggVVJJ IGRvZXMgbm90CisgICAgcmVmZXIgdG8gdGhlIGNvcHlyaWdodCBub3RpY2Ugb3IgbGljZW5zaW5n IGluZm9ybWF0aW9uIGZvciB0aGUgV29yazsKKyAgICBhbmQgKGl2KSAsIGNvbnNpc3RlbnQgd2l0 aCBTZWN0aW9uIDMoYiksIGluIHRoZSBjYXNlIG9mIGFuIEFkYXB0YXRpb24sCisgICAgYSBjcmVk aXQgaWRlbnRpZnlpbmcgdGhlIHVzZSBvZiB0aGUgV29yayBpbiB0aGUgQWRhcHRhdGlvbiAoZS5n LiwKKyAgICAiRnJlbmNoIHRyYW5zbGF0aW9uIG9mIHRoZSBXb3JrIGJ5IE9yaWdpbmFsIEF1dGhv ciwiIG9yICJTY3JlZW5wbGF5CisgICAgYmFzZWQgb24gb3JpZ2luYWwgV29yayBieSBPcmlnaW5h bCBBdXRob3IiKS4gVGhlIGNyZWRpdCByZXF1aXJlZCBieQorICAgIHRoaXMgU2VjdGlvbiA0IChi KSBtYXkgYmUgaW1wbGVtZW50ZWQgaW4gYW55IHJlYXNvbmFibGUgbWFubmVyOworICAgIHByb3Zp ZGVkLCBob3dldmVyLCB0aGF0IGluIHRoZSBjYXNlIG9mIGEgQWRhcHRhdGlvbiBvciBDb2xsZWN0 aW9uLCBhdAorICAgIGEgbWluaW11bSBzdWNoIGNyZWRpdCB3aWxsIGFwcGVhciwgaWYgYSBjcmVk aXQgZm9yIGFsbCBjb250cmlidXRpbmcKKyAgICBhdXRob3JzIG9mIHRoZSBBZGFwdGF0aW9uIG9y IENvbGxlY3Rpb24gYXBwZWFycywgdGhlbiBhcyBwYXJ0IG9mIHRoZXNlCisgICAgY3JlZGl0cyBh bmQgaW4gYSBtYW5uZXIgYXQgbGVhc3QgYXMgcHJvbWluZW50IGFzIHRoZSBjcmVkaXRzIGZvciB0 aGUKKyAgICBvdGhlciBjb250cmlidXRpbmcgYXV0aG9ycy4gRm9yIHRoZSBhdm9pZGFuY2Ugb2Yg ZG91YnQsIFlvdSBtYXkgb25seQorICAgIHVzZSB0aGUgY3JlZGl0IHJlcXVpcmVkIGJ5IHRoaXMg U2VjdGlvbiBmb3IgdGhlIHB1cnBvc2Ugb2YgYXR0cmlidXRpb24KKyAgICBpbiB0aGUgbWFubmVy IHNldCBvdXQgYWJvdmUgYW5kLCBieSBleGVyY2lzaW5nIFlvdXIgcmlnaHRzIHVuZGVyIHRoaXMK KyAgICBMaWNlbnNlLCBZb3UgbWF5IG5vdCBpbXBsaWNpdGx5IG9yIGV4cGxpY2l0bHkgYXNzZXJ0 IG9yIGltcGx5IGFueQorICAgIGNvbm5lY3Rpb24gd2l0aCwgc3BvbnNvcnNoaXAgb3IgZW5kb3Jz ZW1lbnQgYnkgdGhlIE9yaWdpbmFsIEF1dGhvciwKKyAgICBMaWNlbnNvciBhbmQvb3IgQXR0cmli dXRpb24gUGFydGllcywgYXMgYXBwcm9wcmlhdGUsIG9mIFlvdSBvciBZb3VyCisgICAgdXNlIG9m IHRoZSBXb3JrLCB3aXRob3V0IHRoZSBzZXBhcmF0ZSwgZXhwcmVzcyBwcmlvciB3cml0dGVuCisg ICAgcGVybWlzc2lvbiBvZiB0aGUgT3JpZ2luYWwgQXV0aG9yLCBMaWNlbnNvciBhbmQvb3IgQXR0 cmlidXRpb24KKyAgICBQYXJ0aWVzLgorIGMuIEV4Y2VwdCBhcyBvdGhlcndpc2UgYWdyZWVkIGlu IHdyaXRpbmcgYnkgdGhlIExpY2Vuc29yIG9yIGFzIG1heSBiZQorICAgIG90aGVyd2lzZSBwZXJt aXR0ZWQgYnkgYXBwbGljYWJsZSBsYXcsIGlmIFlvdSBSZXByb2R1Y2UsIERpc3RyaWJ1dGUgb3IK KyAgICBQdWJsaWNseSBQZXJmb3JtIHRoZSBXb3JrIGVpdGhlciBieSBpdHNlbGYgb3IgYXMgcGFy dCBvZiBhbnkKKyAgICBBZGFwdGF0aW9ucyBvciBDb2xsZWN0aW9ucywgWW91IG11c3Qgbm90IGRp c3RvcnQsIG11dGlsYXRlLCBtb2RpZnkgb3IKKyAgICB0YWtlIG90aGVyIGRlcm9nYXRvcnkgYWN0 aW9uIGluIHJlbGF0aW9uIHRvIHRoZSBXb3JrIHdoaWNoIHdvdWxkIGJlCisgICAgcHJlanVkaWNp YWwgdG8gdGhlIE9yaWdpbmFsIEF1dGhvcidzIGhvbm9yIG9yIHJlcHV0YXRpb24uIExpY2Vuc29y CisgICAgYWdyZWVzIHRoYXQgaW4gdGhvc2UganVyaXNkaWN0aW9ucyAoZS5nLiBKYXBhbiksIGlu IHdoaWNoIGFueSBleGVyY2lzZQorICAgIG9mIHRoZSByaWdodCBncmFudGVkIGluIFNlY3Rpb24g MyhiKSBvZiB0aGlzIExpY2Vuc2UgKHRoZSByaWdodCB0bworICAgIG1ha2UgQWRhcHRhdGlvbnMp IHdvdWxkIGJlIGRlZW1lZCB0byBiZSBhIGRpc3RvcnRpb24sIG11dGlsYXRpb24sCisgICAgbW9k aWZpY2F0aW9uIG9yIG90aGVyIGRlcm9nYXRvcnkgYWN0aW9uIHByZWp1ZGljaWFsIHRvIHRoZSBP cmlnaW5hbAorICAgIEF1dGhvcidzIGhvbm9yIGFuZCByZXB1dGF0aW9uLCB0aGUgTGljZW5zb3Ig d2lsbCB3YWl2ZSBvciBub3QgYXNzZXJ0LAorICAgIGFzIGFwcHJvcHJpYXRlLCB0aGlzIFNlY3Rp b24sIHRvIHRoZSBmdWxsZXN0IGV4dGVudCBwZXJtaXR0ZWQgYnkgdGhlCisgICAgYXBwbGljYWJs ZSBuYXRpb25hbCBsYXcsIHRvIGVuYWJsZSBZb3UgdG8gcmVhc29uYWJseSBleGVyY2lzZSBZb3Vy CisgICAgcmlnaHQgdW5kZXIgU2VjdGlvbiAzKGIpIG9mIHRoaXMgTGljZW5zZSAocmlnaHQgdG8g bWFrZSBBZGFwdGF0aW9ucykKKyAgICBidXQgbm90IG90aGVyd2lzZS4KKworNS4gUmVwcmVzZW50 YXRpb25zLCBXYXJyYW50aWVzIGFuZCBEaXNjbGFpbWVyCisKK1VOTEVTUyBPVEhFUldJU0UgTVVU VUFMTFkgQUdSRUVEIFRPIEJZIFRIRSBQQVJUSUVTIElOIFdSSVRJTkcsIExJQ0VOU09SCitPRkZF UlMgVEhFIFdPUksgQVMtSVMgQU5EIE1BS0VTIE5PIFJFUFJFU0VOVEFUSU9OUyBPUiBXQVJSQU5U SUVTIE9GIEFOWQorS0lORCBDT05DRVJOSU5HIFRIRSBXT1JLLCBFWFBSRVNTLCBJTVBMSUVELCBT VEFUVVRPUlkgT1IgT1RIRVJXSVNFLAorSU5DTFVESU5HLCBXSVRIT1VUIExJTUlUQVRJT04sIFdB UlJBTlRJRVMgT0YgVElUTEUsIE1FUkNIQU5USUJJTElUWSwKK0ZJVE5FU1MgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFLCBOT05JTkZSSU5HRU1FTlQsIE9SIFRIRSBBQlNFTkNFIE9GCitMQVRFTlQg T1IgT1RIRVIgREVGRUNUUywgQUNDVVJBQ1ksIE9SIFRIRSBQUkVTRU5DRSBPRiBBQlNFTkNFIE9G IEVSUk9SUywKK1dIRVRIRVIgT1IgTk9UIERJU0NPVkVSQUJMRS4gU09NRSBKVVJJU0RJQ1RJT05T IERPIE5PVCBBTExPVyBUSEUgRVhDTFVTSU9OCitPRiBJTVBMSUVEIFdBUlJBTlRJRVMsIFNPIFNV Q0ggRVhDTFVTSU9OIE1BWSBOT1QgQVBQTFkgVE8gWU9VLgorCis2LiBMaW1pdGF0aW9uIG9uIExp YWJpbGl0eS4gRVhDRVBUIFRPIFRIRSBFWFRFTlQgUkVRVUlSRUQgQlkgQVBQTElDQUJMRQorTEFX LCBJTiBOTyBFVkVOVCBXSUxMIExJQ0VOU09SIEJFIExJQUJMRSBUTyBZT1UgT04gQU5ZIExFR0FM IFRIRU9SWSBGT1IKK0FOWSBTUEVDSUFMLCBJTkNJREVOVEFMLCBDT05TRVFVRU5USUFMLCBQVU5J VElWRSBPUiBFWEVNUExBUlkgREFNQUdFUworQVJJU0lORyBPVVQgT0YgVEhJUyBMSUNFTlNFIE9S IFRIRSBVU0UgT0YgVEhFIFdPUkssIEVWRU4gSUYgTElDRU5TT1IgSEFTCitCRUVOIEFEVklTRUQg T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFUy4KKworNy4gVGVybWluYXRpb24KKwor IGEuIFRoaXMgTGljZW5zZSBhbmQgdGhlIHJpZ2h0cyBncmFudGVkIGhlcmV1bmRlciB3aWxsIHRl cm1pbmF0ZQorICAgIGF1dG9tYXRpY2FsbHkgdXBvbiBhbnkgYnJlYWNoIGJ5IFlvdSBvZiB0aGUg dGVybXMgb2YgdGhpcyBMaWNlbnNlLgorICAgIEluZGl2aWR1YWxzIG9yIGVudGl0aWVzIHdobyBo YXZlIHJlY2VpdmVkIEFkYXB0YXRpb25zIG9yIENvbGxlY3Rpb25zCisgICAgZnJvbSBZb3UgdW5k ZXIgdGhpcyBMaWNlbnNlLCBob3dldmVyLCB3aWxsIG5vdCBoYXZlIHRoZWlyIGxpY2Vuc2VzCisg ICAgdGVybWluYXRlZCBwcm92aWRlZCBzdWNoIGluZGl2aWR1YWxzIG9yIGVudGl0aWVzIHJlbWFp biBpbiBmdWxsCisgICAgY29tcGxpYW5jZSB3aXRoIHRob3NlIGxpY2Vuc2VzLiBTZWN0aW9ucyAx LCAyLCA1LCA2LCA3LCBhbmQgOCB3aWxsCisgICAgc3Vydml2ZSBhbnkgdGVybWluYXRpb24gb2Yg dGhpcyBMaWNlbnNlLgorIGIuIFN1YmplY3QgdG8gdGhlIGFib3ZlIHRlcm1zIGFuZCBjb25kaXRp b25zLCB0aGUgbGljZW5zZSBncmFudGVkIGhlcmUgaXMKKyAgICBwZXJwZXR1YWwgKGZvciB0aGUg ZHVyYXRpb24gb2YgdGhlIGFwcGxpY2FibGUgY29weXJpZ2h0IGluIHRoZSBXb3JrKS4KKyAgICBO b3R3aXRoc3RhbmRpbmcgdGhlIGFib3ZlLCBMaWNlbnNvciByZXNlcnZlcyB0aGUgcmlnaHQgdG8g cmVsZWFzZSB0aGUKKyAgICBXb3JrIHVuZGVyIGRpZmZlcmVudCBsaWNlbnNlIHRlcm1zIG9yIHRv IHN0b3AgZGlzdHJpYnV0aW5nIHRoZSBXb3JrIGF0CisgICAgYW55IHRpbWU7IHByb3ZpZGVkLCBo b3dldmVyIHRoYXQgYW55IHN1Y2ggZWxlY3Rpb24gd2lsbCBub3Qgc2VydmUgdG8KKyAgICB3aXRo ZHJhdyB0aGlzIExpY2Vuc2UgKG9yIGFueSBvdGhlciBsaWNlbnNlIHRoYXQgaGFzIGJlZW4sIG9y IGlzCisgICAgcmVxdWlyZWQgdG8gYmUsIGdyYW50ZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoaXMg TGljZW5zZSksIGFuZCB0aGlzCisgICAgTGljZW5zZSB3aWxsIGNvbnRpbnVlIGluIGZ1bGwgZm9y Y2UgYW5kIGVmZmVjdCB1bmxlc3MgdGVybWluYXRlZCBhcworICAgIHN0YXRlZCBhYm92ZS4KKwor OC4gTWlzY2VsbGFuZW91cworCisgYS4gRWFjaCB0aW1lIFlvdSBEaXN0cmlidXRlIG9yIFB1Ymxp Y2x5IFBlcmZvcm0gdGhlIFdvcmsgb3IgYSBDb2xsZWN0aW9uLAorICAgIHRoZSBMaWNlbnNvciBv ZmZlcnMgdG8gdGhlIHJlY2lwaWVudCBhIGxpY2Vuc2UgdG8gdGhlIFdvcmsgb24gdGhlIHNhbWUK KyAgICB0ZXJtcyBhbmQgY29uZGl0aW9ucyBhcyB0aGUgbGljZW5zZSBncmFudGVkIHRvIFlvdSB1 bmRlciB0aGlzIExpY2Vuc2UuCisgYi4gRWFjaCB0aW1lIFlvdSBEaXN0cmlidXRlIG9yIFB1Ymxp Y2x5IFBlcmZvcm0gYW4gQWRhcHRhdGlvbiwgTGljZW5zb3IKKyAgICBvZmZlcnMgdG8gdGhlIHJl Y2lwaWVudCBhIGxpY2Vuc2UgdG8gdGhlIG9yaWdpbmFsIFdvcmsgb24gdGhlIHNhbWUKKyAgICB0 ZXJtcyBhbmQgY29uZGl0aW9ucyBhcyB0aGUgbGljZW5zZSBncmFudGVkIHRvIFlvdSB1bmRlciB0 aGlzIExpY2Vuc2UuCisgYy4gSWYgYW55IHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2UgaXMgaW52 YWxpZCBvciB1bmVuZm9yY2VhYmxlIHVuZGVyCisgICAgYXBwbGljYWJsZSBsYXcsIGl0IHNoYWxs IG5vdCBhZmZlY3QgdGhlIHZhbGlkaXR5IG9yIGVuZm9yY2VhYmlsaXR5IG9mCisgICAgdGhlIHJl bWFpbmRlciBvZiB0aGUgdGVybXMgb2YgdGhpcyBMaWNlbnNlLCBhbmQgd2l0aG91dCBmdXJ0aGVy IGFjdGlvbgorICAgIGJ5IHRoZSBwYXJ0aWVzIHRvIHRoaXMgYWdyZWVtZW50LCBzdWNoIHByb3Zp c2lvbiBzaGFsbCBiZSByZWZvcm1lZCB0bworICAgIHRoZSBtaW5pbXVtIGV4dGVudCBuZWNlc3Nh cnkgdG8gbWFrZSBzdWNoIHByb3Zpc2lvbiB2YWxpZCBhbmQKKyAgICBlbmZvcmNlYWJsZS4KKyBk LiBObyB0ZXJtIG9yIHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2Ugc2hhbGwgYmUgZGVlbWVkIHdh aXZlZCBhbmQgbm8KKyAgICBicmVhY2ggY29uc2VudGVkIHRvIHVubGVzcyBzdWNoIHdhaXZlciBv ciBjb25zZW50IHNoYWxsIGJlIGluIHdyaXRpbmcKKyAgICBhbmQgc2lnbmVkIGJ5IHRoZSBwYXJ0 eSB0byBiZSBjaGFyZ2VkIHdpdGggc3VjaCB3YWl2ZXIgb3IgY29uc2VudC4KKyBlLiBUaGlzIExp Y2Vuc2UgY29uc3RpdHV0ZXMgdGhlIGVudGlyZSBhZ3JlZW1lbnQgYmV0d2VlbiB0aGUgcGFydGll cyB3aXRoCisgICAgcmVzcGVjdCB0byB0aGUgV29yayBsaWNlbnNlZCBoZXJlLiBUaGVyZSBhcmUg bm8gdW5kZXJzdGFuZGluZ3MsCisgICAgYWdyZWVtZW50cyBvciByZXByZXNlbnRhdGlvbnMgd2l0 aCByZXNwZWN0IHRvIHRoZSBXb3JrIG5vdCBzcGVjaWZpZWQKKyAgICBoZXJlLiBMaWNlbnNvciBz aGFsbCBub3QgYmUgYm91bmQgYnkgYW55IGFkZGl0aW9uYWwgcHJvdmlzaW9ucyB0aGF0CisgICAg bWF5IGFwcGVhciBpbiBhbnkgY29tbXVuaWNhdGlvbiBmcm9tIFlvdS4gVGhpcyBMaWNlbnNlIG1h eSBub3QgYmUKKyAgICBtb2RpZmllZCB3aXRob3V0IHRoZSBtdXR1YWwgd3JpdHRlbiBhZ3JlZW1l bnQgb2YgdGhlIExpY2Vuc29yIGFuZCBZb3UuCisgZi4gVGhlIHJpZ2h0cyBncmFudGVkIHVuZGVy LCBhbmQgdGhlIHN1YmplY3QgbWF0dGVyIHJlZmVyZW5jZWQsIGluIHRoaXMKKyAgICBMaWNlbnNl IHdlcmUgZHJhZnRlZCB1dGlsaXppbmcgdGhlIHRlcm1pbm9sb2d5IG9mIHRoZSBCZXJuZSBDb252 ZW50aW9uCisgICAgZm9yIHRoZSBQcm90ZWN0aW9uIG9mIExpdGVyYXJ5IGFuZCBBcnRpc3RpYyBX b3JrcyAoYXMgYW1lbmRlZCBvbgorICAgIFNlcHRlbWJlciAyOCwgMTk3OSksIHRoZSBSb21lIENv bnZlbnRpb24gb2YgMTk2MSwgdGhlIFdJUE8gQ29weXJpZ2h0CisgICAgVHJlYXR5IG9mIDE5OTYs IHRoZSBXSVBPIFBlcmZvcm1hbmNlcyBhbmQgUGhvbm9ncmFtcyBUcmVhdHkgb2YgMTk5NgorICAg IGFuZCB0aGUgVW5pdmVyc2FsIENvcHlyaWdodCBDb252ZW50aW9uIChhcyByZXZpc2VkIG9uIEp1 bHkgMjQsIDE5NzEpLgorICAgIFRoZXNlIHJpZ2h0cyBhbmQgc3ViamVjdCBtYXR0ZXIgdGFrZSBl ZmZlY3QgaW4gdGhlIHJlbGV2YW50CisgICAganVyaXNkaWN0aW9uIGluIHdoaWNoIHRoZSBMaWNl bnNlIHRlcm1zIGFyZSBzb3VnaHQgdG8gYmUgZW5mb3JjZWQKKyAgICBhY2NvcmRpbmcgdG8gdGhl IGNvcnJlc3BvbmRpbmcgcHJvdmlzaW9ucyBvZiB0aGUgaW1wbGVtZW50YXRpb24gb2YKKyAgICB0 aG9zZSB0cmVhdHkgcHJvdmlzaW9ucyBpbiB0aGUgYXBwbGljYWJsZSBuYXRpb25hbCBsYXcuIElm IHRoZQorICAgIHN0YW5kYXJkIHN1aXRlIG9mIHJpZ2h0cyBncmFudGVkIHVuZGVyIGFwcGxpY2Fi bGUgY29weXJpZ2h0IGxhdworICAgIGluY2x1ZGVzIGFkZGl0aW9uYWwgcmlnaHRzIG5vdCBncmFu dGVkIHVuZGVyIHRoaXMgTGljZW5zZSwgc3VjaAorICAgIGFkZGl0aW9uYWwgcmlnaHRzIGFyZSBk ZWVtZWQgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIExpY2Vuc2U7IHRoaXMKKyAgICBMaWNlbnNlIGlz IG5vdCBpbnRlbmRlZCB0byByZXN0cmljdCB0aGUgbGljZW5zZSBvZiBhbnkgcmlnaHRzIHVuZGVy CisgICAgYXBwbGljYWJsZSBsYXcuCisKKworQ3JlYXRpdmUgQ29tbW9ucyBOb3RpY2UKKworICAg IENyZWF0aXZlIENvbW1vbnMgaXMgbm90IGEgcGFydHkgdG8gdGhpcyBMaWNlbnNlLCBhbmQgbWFr ZXMgbm8gd2FycmFudHkKKyAgICB3aGF0c29ldmVyIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgV29y ay4gQ3JlYXRpdmUgQ29tbW9ucyB3aWxsIG5vdCBiZQorICAgIGxpYWJsZSB0byBZb3Ugb3IgYW55 IHBhcnR5IG9uIGFueSBsZWdhbCB0aGVvcnkgZm9yIGFueSBkYW1hZ2VzCisgICAgd2hhdHNvZXZl ciwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiBhbnkgZ2VuZXJhbCwgc3BlY2lhbCwKKyAg ICBpbmNpZGVudGFsIG9yIGNvbnNlcXVlbnRpYWwgZGFtYWdlcyBhcmlzaW5nIGluIGNvbm5lY3Rp b24gdG8gdGhpcworICAgIGxpY2Vuc2UuIE5vdHdpdGhzdGFuZGluZyB0aGUgZm9yZWdvaW5nIHR3 byAoMikgc2VudGVuY2VzLCBpZiBDcmVhdGl2ZQorICAgIENvbW1vbnMgaGFzIGV4cHJlc3NseSBp ZGVudGlmaWVkIGl0c2VsZiBhcyB0aGUgTGljZW5zb3IgaGVyZXVuZGVyLCBpdAorICAgIHNoYWxs IGhhdmUgYWxsIHJpZ2h0cyBhbmQgb2JsaWdhdGlvbnMgb2YgTGljZW5zb3IuCisKKyAgICBFeGNl cHQgZm9yIHRoZSBsaW1pdGVkIHB1cnBvc2Ugb2YgaW5kaWNhdGluZyB0byB0aGUgcHVibGljIHRo YXQgdGhlCisgICAgV29yayBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQ0NQTCwgQ3JlYXRpdmUgQ29t bW9ucyBkb2VzIG5vdCBhdXRob3JpemUKKyAgICB0aGUgdXNlIGJ5IGVpdGhlciBwYXJ0eSBvZiB0 aGUgdHJhZGVtYXJrICJDcmVhdGl2ZSBDb21tb25zIiBvciBhbnkKKyAgICByZWxhdGVkIHRyYWRl bWFyayBvciBsb2dvIG9mIENyZWF0aXZlIENvbW1vbnMgd2l0aG91dCB0aGUgcHJpb3IKKyAgICB3 cml0dGVuIGNvbnNlbnQgb2YgQ3JlYXRpdmUgQ29tbW9ucy4gQW55IHBlcm1pdHRlZCB1c2Ugd2ls bCBiZSBpbgorICAgIGNvbXBsaWFuY2Ugd2l0aCBDcmVhdGl2ZSBDb21tb25zJyB0aGVuLWN1cnJl bnQgdHJhZGVtYXJrIHVzYWdlCisgICAgZ3VpZGVsaW5lcywgYXMgbWF5IGJlIHB1Ymxpc2hlZCBv biBpdHMgd2Vic2l0ZSBvciBvdGhlcndpc2UgbWFkZQorICAgIGF2YWlsYWJsZSB1cG9uIHJlcXVl c3QgZnJvbSB0aW1lIHRvIHRpbWUuIEZvciB0aGUgYXZvaWRhbmNlIG9mIGRvdWJ0LAorICAgIHRo aXMgdHJhZGVtYXJrIHJlc3RyaWN0aW9uIGRvZXMgbm90IGZvcm0gcGFydCBvZiB0aGlzIExpY2Vu c2UuCisKKyAgICBDcmVhdGl2ZSBDb21tb25zIG1heSBiZSBjb250YWN0ZWQgYXQgaHR0cHM6Ly9j cmVhdGl2ZWNvbW1vbnMub3JnLy4KCmRpZmYgLS1naXQgYS9NYWVsc3Ryb20uZGVza3RvcCBiL01h ZWxzdHJvbS5kZXNrdG9wCmluZGV4IDJmNTYxOWMuLjZjMWJiZWQgMTAwNjQ0Ci0tLSBhL01hZWxz dHJvbS5kZXNrdG9wCisrKyBiL01hZWxzdHJvbS5kZXNrdG9wCkBAIC0yLDcgKzIsNyBAQAogTmFt ZT1NYWVsc3Ryb20KIENvbW1lbnQ9U3BhY2UgY29tYmF0IGdhbWUKIEV4ZWM9TWFlbHN0cm9tCi1J Y29uPW1hZWxzdHJvbS5wbmcKK0ljb249TWFlbHN0cm9tCiBUZXJtaW5hbD1mYWxzZQogVHlwZT1B cHBsaWNhdGlvbgogQ2F0ZWdvcmllcz1HYW1lO0FyY2FkZUdhbWU7CgpkaWZmIC0tZ2l0IGEvTWFl bHN0cm9tLnNwZWMgYi9NYWVsc3Ryb20uc3BlYwppbmRleCBlNjAyNDM4Li45Zjk2NmY0IDEwMDY0 NAotLS0gYS9NYWVsc3Ryb20uc3BlYworKysgYi9NYWVsc3Ryb20uc3BlYwpAQCAtMSwzMCArMSw0 MCBAQAogTmFtZTogICAgICAgICAgIE1hZWxzdHJvbQotVmVyc2lvbjogICAgICAgIDMuMC43CitW ZXJzaW9uOiAgICAgICAgNC4wLjIKIFJlbGVhc2U6ICAgICAgICAlYXV0b3JlbGVhc2UKIFN1bW1h cnk6ICAgICAgICBBIHNwYWNlIGNvbWJhdCBnYW1lCi0KLSMgU2VlIE1hZWxzdHJvbS1Db250ZW50 LUxpY2Vuc2UudHh0IGZvciBkZXRhaWxzIG9uIHRoZSB1cGRhdGVkIGNvbnRlbnQgbGljZW5zaW5n Ci1MaWNlbnNlOiAgICAgICAgR1BMLTIuMC1vci1sYXRlciBBTkQgQ0MtQlktMy4wCiBVUkw6ICAg ICAgICAgICAgaHR0cDovL3d3dy5saWJzZGwub3JnL3Byb2plY3RzL01hZWxzdHJvbS8KLVNvdXJj ZTA6ICAgICAgICBodHRwOi8vd3d3LmxpYnNkbC5vcmcvcHJvamVjdHMvTWFlbHN0cm9tL3NyYy9N YWVsc3Ryb20tJXt2ZXJzaW9ufS50YXIuZ3oKLVNvdXJjZTE6ICAgICAgICBtYWVsc3Ryb20ucG5n Ci1Tb3VyY2UyOiAgICAgICAgTWFlbHN0cm9tLmRlc2t0b3AKLVNvdXJjZTM6ICAgICAgICBNYWVs c3Ryb20tQ29udGVudC1MaWNlbnNlLnR4dAotU291cmNlNDogICAgICAgIE1hZWxzdHJvbS5hcHBk YXRhLnhtbAotUGF0Y2g6ICAgICAgICAgIHNldGdpZC5wYXRjaAotUGF0Y2g6ICAgICAgICAgIGdj YzM0LnBhdGNoCi1QYXRjaDogICAgICAgICAgNjRiaXQucGF0Y2gKLVBhdGNoOiAgICAgICAgICBp bnN0YWxsLnBhdGNoCi1QYXRjaDogICAgICAgICAgZ2NjNS5wYXRjaAotUGF0Y2g6ICAgICAgICAg IG5ldGQtYzk5LnBhdGNoCi1QYXRjaDogICAgICAgICAgTWFrZWZpbGUucGF0Y2gKKworIyBNYWVs c3Ryb20gaXRzZWxmIGlzIFpsaWIuCisjIHJhcGlkeG1sIGlzIEJTTCBvciBNSVQuIEV2ZW4gdGhv dWdoIHdlIHVuYnVuZGxlIGl0LCBpdCdzIHN0aWxsIGEgc2luZ2xlLWhlYWRlciBzdGF0aWMgbGli cmFyeS4KK0xpY2Vuc2U6ICAgICAgICBabGliIEFORCAoQlNMLTEuMCBPUiBNSVQpCisKK1NvdXJj ZTA6ICAgICAgICBodHRwczovL2dpdGh1Yi5jb20vbGlic2RsLW9yZy9NYWVsc3Ryb20vYXJjaGl2 ZS9yZWxlYXNlLSV7dmVyc2lvbn0vTWFlbHN0cm9tLXJlbGVhc2UtJXt2ZXJzaW9ufS50YXIuZ3oK KworIyBFdmVuIHdoZW4gYnVpbGRpbmcgYWdhaW5zdCBzeXN0ZW0gUGh5c0ZTLCB0aGUgdmVuZG9y ZWQgUGh5c0ZTIHBhY2thZ2UKKyMgaXMgcmVxdWlyZWQsIGFzIGl0IGNvbnRhaW5zIHNvbWUgZXh0 cmEgUGh5c0ZTPC0+U0RMMyBnbHVlIGNvZGUuCislZ2xvYmFsIHBoeXNmc19jb21taXQgNDljZmQ1 ZmRkNDZmMzhiNGMyNjExNTU2YjQ0ZWU5YjBkMzA4ZTE2MgorU291cmNlMTogICAgICAgIGh0dHBz Oi8vZ2l0aHViLmNvbS9pY2N1bHVzL3BoeXNmcy9hcmNoaXZlLyV7cGh5c2ZzX2NvbW1pdH0vcGh5 c2ZzLSV7cGh5c2ZzX2NvbW1pdH0udGFyLmd6CisKK1NvdXJjZTEwOiAgICAgICAgTWFlbHN0cm9t LmRlc2t0b3AKK1NvdXJjZTExOiAgICAgICAgTWFlbHN0cm9tLmFwcGRhdGEueG1sCisKK1NvdXJj ZTIwOiAgICAgICAgTWFlbHN0cm9tLUNvbnRlbnQtTGljZW5zZS50eHQKK1NvdXJjZTIxOiAgICAg ICAgQ0MtQlktMy4wLnR4dAogCiAjIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9DaGFu Z2VzL0VuY291cmFnZUk2ODZMZWFmUmVtb3ZhbAogRXhjbHVkZUFyY2g6ICAgICV7aXg4Nn0KIAot QnVpbGRSZXF1aXJlczogICAgICBtYWtlCitCdWlsZFJlcXVpcmVzOiAgICAgIGNtYWtlCitCdWls ZFJlcXVpcmVzOiAgICAgIGRlc2t0b3AtZmlsZS11dGlscwogQnVpbGRSZXF1aXJlczogICAgICBn Y2MtYysrCi1CdWlsZFJlcXVpcmVzOiAgICAgIFNETDJfbmV0LWRldmVsLCBkZXNrdG9wLWZpbGUt dXRpbHMsIGxpYnRvb2wKK0J1aWxkUmVxdWlyZXM6ICAgICAgbGliYXBwc3RyZWFtLWdsaWIKKwor QnVpbGRSZXF1aXJlczogICAgICBjbWFrZShTREwzKQorQnVpbGRSZXF1aXJlczogICAgICBjbWFr ZShTREwzX25ldCkKK0J1aWxkUmVxdWlyZXM6ICAgICAgY21ha2UoUGh5c0ZTKQorQnVpbGRSZXF1 aXJlczogICAgICByYXBpZHhtbC1kZXZlbAorCitSZXF1aXJlczogICAgICAgICAgICV7bmFtZX0t ZGF0YSA9ICV7dmVyc2lvbn0tJXtyZWxlYXNlfQogCiAlZGVzY3JpcHRpb24KIE1hZWxzdHJvbSBp cyBhIHNwYWNlIGNvbWJhdCBnYW1lLCBvcmlnaW5hbGx5IHBvcnRlZCBmcm9tIHRoZSBNYWNpbnRv c2ggCkBAIC0zMiw0NCArNDIsODggQEAgcGxhdGZvcm0uIEJyYXZlIHBpbG90cyBnZXQgdG8gZG9k Z2UgYXN0ZXJvaWRzIGFuZCBmaWdodCBvZmYgb3RoZXIgc2hpcHMKIGF0IHRoZSBzYW1lIHRpbWUu CiAKIAorJXBhY2thZ2UgZGF0YQorU3VtbWFyeTogRGF0YSBmaWxlcyBmb3IgTWFlbHN0cm9tCitM aWNlbnNlOiBDQy1CWS0zLjAKK0J1aWxkQXJjaDogbm9hcmNoCisKK1JlcXVpcmVzOiBoaWNvbG9y LWljb24tdGhlbWUKKworJWRlc2NyaXB0aW9uIGRhdGEKK1RoaXMgcGFja2FnZSBjb250YWlucyBm aWxlcyAoZ3JhcGhpY3MsIHNvdW5kcywgZXQgY2V0ZXJhKQorcmVxdWlyZWQgdG8gcGxheSBNYWVs c3Ryb20uCisKKwogJXByZXAKLSVhdXRvc2V0dXAgLXAxCi1jcCAle1NPVVJDRTN9IC4KKyVhdXRv c2V0dXAgLXAxIC1uICV7bmFtZX0tcmVsZWFzZS0le3ZlcnNpb259CitjcCAtdCAuLyAtYSAle1NP VVJDRTIwfSAle1NPVVJDRTIxfQorCisjIEV4dHJhY3QgUGh5c0ZTPC0+U0RMMyBnbHVlIGNvZGUg ZnJvbSB0aGUgcGh5c2ZzIGFyY2hpdmUKK21rZGlyIC1wIGV4dGVybmFsL3BoeXNmcy9leHRyYXMK K3B1c2hkIGV4dGVybmFsL3BoeXNmcy9leHRyYXMKK3RhciAtLWV4dHJhY3QgLS1ndW56aXAgLS1m aWxlPSV7U09VUkNFMX0gLS1zdHJpcC1jb21wb25lbnRzPTIgLS0gcGh5c2ZzLSV7cGh5c2ZzX2Nv bW1pdH0vZXh0cmFzL3BoeXNmc3NkbDMue2MsaH0KK3BvcGQKKworIyBVbmJ1bmRsZSByYXBpZHht bAorcm0gdXRpbHMvcmFwaWR4bWwue2gsaHBwfQorbG4gLXMgJXtfaW5jbHVkZWRpcn0vcmFwaWR4 bWwuaCB1dGlscy8KK3NlZCAnL3V0aWxzXC9yYXBpZHhtbFwuaHBwL2QnIC1pIENNYWtlTGlzdHMu dHh0CiAKIAogJWJ1aWxkCi1leHBvcnQgQ1hYRkxBR1M9IiRSUE1fT1BUX0ZMQUdTIC1Xbm8td3Jp dGUtc3RyaW5ncyIKLSVjb25maWd1cmUKLW1ha2UgJXs/X3NtcF9tZmxhZ3N9CislY21ha2UgXAor CS1EVVNFX1ZFTkRPUkVEX1BIWVNGUz1GQUxTRSBcCisJLURVU0VfVkVORE9SRURfU0RMPUZBTFNF IFwKKwktRFVTRV9WRU5ET1JFRF9TRExfTkVUPUZBTFNFIFwKKwktRFNURUFNPU9GRiBcCisJLURT VEFOREFMT05FX0lOU1RBTEw9T0ZGCislY21ha2VfYnVpbGQKIAogCiAlaW5zdGFsbAotJW1ha2Vf aW5zdGFsbAorJWNtYWtlX2luc3RhbGwKIAotbWtkaXIgLXAgJXtidWlsZHJvb3R9JXtfZGF0YWRp cn0vYXBwbGljYXRpb25zCi1kZXNrdG9wLWZpbGUtaW5zdGFsbCAtLWRpciAle2J1aWxkcm9vdH0l e19kYXRhZGlyfS9hcHBsaWNhdGlvbnMgJXtTT1VSQ0UyfQorIyBSZXVzZSBpY29ucyBmcm9tIGdh bWUgZGF0YQorZm9yIFNJWkUgaW4gMTYgMjAgMjQgMzIgMzYgNDAgNDggNjQgNzIgOTYgMTI4IDE5 MiAyNTYgNTEyIDEwMjQ7IGRvCisJSUNPTkRJUj0iJXtidWlsZHJvb3R9JXtfZGF0YWRpcn0vaWNv bnMvaGljb2xvci8ke1NJWkV9eCR7U0laRX0vYXBwcy8iCisJaW5zdGFsbCAtbSA3NTUgLWQgIiR7 SUNPTkRJUn0iCisJbG4gIiV7YnVpbGRyb290fS8le19kYXRhZGlyfS8le25hbWV9L0RhdGEvSWNv bnMvaWNvbi0ke1NJWkV9LnBuZyIgIiR7SUNPTkRJUn0vJXtuYW1lfS5wbmciCitkb25lCiAKLSMg cmVtb3ZlIHVucGFja2FnZWQgZmlsZXMgZnJvbSB0aGUgYnVpbGRyb290Ci1ybSAtZiAle2J1aWxk cm9vdH0le19iaW5kaXJ9L3tNYWVsc3Ryb20tbmV0ZCxtYWNyZXMscGxheXdhdmUsc25kMndhdn0K KyMgSW5zdGFsbCBhIGRlc2t0b3AgZmlsZSBhbmQgbWV0YWluZm8gZmlsZQoraW5zdGFsbCAtbSA3 NTUgLWQgJXtidWlsZHJvb3R9JXtfZGF0YWRpcn0vYXBwbGljYXRpb25zCitpbnN0YWxsIC1tIDY0 NCAle1NPVVJDRTEwfSAle2J1aWxkcm9vdH0le19kYXRhZGlyfS9hcHBsaWNhdGlvbnMvJXtuYW1l fS5kZXNrdG9wCiAKLW1rZGlyIC1wIC1tIDc1NSAle2J1aWxkcm9vdH0le19kYXRhZGlyfS9pY29u cy9oaWNvbG9yLzQ4eDQ4L2FwcHMKLWluc3RhbGwgLW0gNjQ0ICV7U09VUkNFMX0gJXtidWlsZHJv b3R9JXtfZGF0YWRpcn0vaWNvbnMvaGljb2xvci80OHg0OC9hcHBzCitpbnN0YWxsIC1tIDc1NSAt ZCAle2J1aWxkcm9vdH0le19tZXRhaW5mb2Rpcn0KK2luc3RhbGwgLW0gNjQ0ICV7U09VUkNFMTF9 ICV7YnVpbGRyb290fSV7X21ldGFpbmZvZGlyfS8le25hbWV9Lm1ldGFpbmZvLnhtbAogCi1ta2Rp ciAtcCAtbSA3NTUgJXtidWlsZHJvb3R9JXtfZGF0YWRpcn0vYXBwZGF0YQotaW5zdGFsbCAtbSA2 NDQgJXtTT1VSQ0U0fSAle2J1aWxkcm9vdH0le19kYXRhZGlyfS9hcHBkYXRhCisjIFJlbW92ZSBw cmUtaW5zdGFsbGVkIGRvY3VtZW50YXRpb24gZmlsZXMgYW5kIGluc3RhbGwgdGhlbSBvbiBvdXIg b3duLgorIyBUaGlzIGlzIGRvbmUgc28gdGhlIGRvY3MgYXJlIGluIE1hZWxzdHJvbS8gZGlyIGRl c3BpdGUgYmVpbmcgaW4gTWFlbHN0cm9tLWRhdGEgcGFja2FnZS4KK3JtICV7YnVpbGRyb290fSV7 X3BrZ2RvY2Rpcn0vQ09QWUlORworaW5zdGFsbCAtbSA3NTUgLWQgJXtidWlsZHJvb3R9JXtfcGtn ZG9jZGlyfQorY3AgLXQgJXtidWlsZHJvb3R9JXtfcGtnZG9jZGlyfSAtYSBDUkVESVRTIFJFQURN RS5tZCBEb2NzCiAKLWZpbmQgJXtidWlsZHJvb3R9IC1uYW1lICJNYWtlZmlsZSoiIC1leGVjIHJt IC1mIHt9IFw7CisjIFJlbW92ZSBTdGVhbS1zcGVjaWZpYyBmaWxlcworcm0gLXJmICV7YnVpbGRy b290fSV7X2RhdGFkaXJ9LyV7bmFtZX0vRGF0YS9TdGVhbQorCisKKyVjaGVjaworZGVza3RvcC1m aWxlLXZhbGlkYXRlICV7YnVpbGRyb290fSV7X2RhdGFkaXJ9L2FwcGxpY2F0aW9ucy8le25hbWV9 LmRlc2t0b3AKK2FwcHN0cmVhbS11dGlsIHZhbGlkYXRlLXJlbGF4IC0tbm9uZXQgJXtidWlsZHJv b3R9JXtfbWV0YWluZm9kaXJ9LyV7bmFtZX0ubWV0YWluZm8ueG1sCiAKIAogJWZpbGVzCi0lZG9j IENSRURJVFMudHh0IFJFQURNRSogQ2hhbmdlbG9nIERvY3MKLSVsaWNlbnNlIE1hZWxzdHJvbS1D b250ZW50LUxpY2Vuc2UudHh0IENPUFlJTkcqCi0lYXR0cigyNzU1LHJvb3QsZ2FtZXMpICV7X2Jp bmRpcn0vTWFlbHN0cm9tCi0le19kYXRhZGlyfS9NYWVsc3Ryb20KLSV7X2RhdGFkaXJ9L2FwcGxp Y2F0aW9ucy8qCi0le19kYXRhZGlyfS9pY29ucy9oaWNvbG9yLzQ4eDQ4L2FwcHMvKgotJXtfZGF0 YWRpcn0vYXBwZGF0YS9NYWVsc3Ryb20uYXBwZGF0YS54bWwKLSVnaG9zdCAlY29uZmlnKG5vcmVw bGFjZSkgJWF0dHIoMDY2NCxyb290LGdhbWVzKSAle19sb2NhbHN0YXRlZGlyfS9saWIvZ2FtZXMv TWFlbHN0cm9tLVNjb3JlcworJWxpY2Vuc2UgQ09QWUlORworJXtfYmluZGlyfS9NYWVsc3Ryb20K KyV7X2RhdGFkaXJ9L2FwcGxpY2F0aW9ucy8le25hbWV9LmRlc2t0b3AKKyV7X21ldGFpbmZvZGly fS9NYWVsc3Ryb20ubWV0YWluZm8ueG1sCisKKworJWZpbGVzIGRhdGEKKyVkb2MgJXtfZG9jZGly fQorJWxpY2Vuc2UgTWFlbHN0cm9tLUNvbnRlbnQtTGljZW5zZS50eHQgQ0MtQlktMy4wLnR4dAor JXtfZGF0YWRpcn0vJXtuYW1lfQorJXtfZGF0YWRpcn0vaWNvbnMvaGljb2xvci8qL2FwcHMvJXtu YW1lfS5wbmcKIAogCiAlY2hhbmdlbG9nCgpkaWZmIC0tZ2l0IGEvTWFrZWZpbGUucGF0Y2ggYi9N YWtlZmlsZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWQxNTRhYS4uMDAw MDAwMAotLS0gYS9NYWtlZmlsZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMyICswLDAgQEAK LWRpZmYgLS1naXQgYS9NYWtlZmlsZS5hbSBiL01ha2VmaWxlLmFtCi1pbmRleCBmYWUyYmQ4Li5m NmY3YzhmIDEwMDY0NAotLS0tIGEvTWFrZWZpbGUuYW0KLSsrKyBiL01ha2VmaWxlLmFtCi1AQCAt NjUsOSArNjUsOSBAQCBESVNUX1NVQkRJUlMgPSAkKFNVQkRJUlMpIEltYWdlcyBEb2NzCi0gIyBT cGVjaWFsIGluc3RhbGwgcnVsZSBmb3IgdGhlIGdhbWUKLSBpbnN0YWxsOgotIAlzaCBta2luc3Rh bGxkaXJzICQoREVTVERJUilAR0FNRV9JTlNUQUxMRElSQAotLQlpbnN0YWxsIC1tIDc1NSBNYWVs c3Ryb20gJChERVNURElSKUBHQU1FX0lOU1RBTExESVJAL01hZWxzdHJvbQotKwlzaCBta2luc3Rh bGxkaXJzICQoREVTVERJUikkKGJpbmRpcikKLSsJaW5zdGFsbCAtbSA3NTUgTWFlbHN0cm9tICQo REVTVERJUikkKGJpbmRpcikvTWFlbHN0cm9tCi0gCW1ha2UgaW5zdGFsbF9nYW1lZGF0YSB0YXJn ZXQ9JChERVNURElSKUBHQU1FX0lOU1RBTExESVJACi0tCW1ha2UgaW5zdGFsbF9nYW1lZG9jcyB0 YXJnZXQ9JChERVNURElSKUBHQU1FX0lOU1RBTExESVJACi0gCi0gaW5zdGFsbF9nYW1lZGF0YToK LSAJc2ggbWtpbnN0YWxsZGlycyAkKHRhcmdldCkvCi1kaWZmIC0tZ2l0IGEvTWFrZWZpbGUuaW4g Yi9NYWtlZmlsZS5pbgotaW5kZXggMDZjOTMyMi4uMTgzOWMyMyAxMDA2NDQKLS0tLSBhL01ha2Vm aWxlLmluCi0rKysgYi9NYWtlZmlsZS5pbgotQEAgLTk4MCw5ICs5ODAsOSBAQCB1bmluc3RhbGwt YW06IHVuaW5zdGFsbC1iaW5QUk9HUkFNUwotICMgU3BlY2lhbCBpbnN0YWxsIHJ1bGUgZm9yIHRo ZSBnYW1lCi0gaW5zdGFsbDoKLSAJc2ggbWtpbnN0YWxsZGlycyAkKERFU1RESVIpQEdBTUVfSU5T VEFMTERJUkAKLS0JaW5zdGFsbCAtbSA3NTUgTWFlbHN0cm9tICQoREVTVERJUilAR0FNRV9JTlNU QUxMRElSQC9NYWVsc3Ryb20KLSsJc2ggbWtpbnN0YWxsZGlycyAkKERFU1RESVIpJChiaW5kaXIp Ci0rCWluc3RhbGwgLW0gNzU1IE1hZWxzdHJvbSAkKERFU1RESVIpJChiaW5kaXIpL01hZWxzdHJv bQotIAltYWtlIGluc3RhbGxfZ2FtZWRhdGEgdGFyZ2V0PSQoREVTVERJUilAR0FNRV9JTlNUQUxM RElSQAotLQltYWtlIGluc3RhbGxfZ2FtZWRvY3MgdGFyZ2V0PSQoREVTVERJUilAR0FNRV9JTlNU QUxMRElSQAotIAotIGluc3RhbGxfZ2FtZWRhdGE6Ci0gCXNoIG1raW5zdGFsbGRpcnMgJCh0YXJn ZXQpLwoKZGlmZiAtLWdpdCBhL2djYzM0LnBhdGNoIGIvZ2NjMzQucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDI3MGE4NTguLjAwMDAwMDAKLS0tIGEvZ2NjMzQucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSw1NiArMCwwIEBACi0tLS0gTWFlbHN0cm9tLTMuMC42L2J1dHRvbmxp c3QuaC5zb3B3aXRoCTIwMDQtMDYtMTggMTU6MzM6NDkuMDAwMDAwMDAwIC0wNDAwCi0rKysgTWFl bHN0cm9tLTMuMC42L2J1dHRvbmxpc3QuaAkyMDA0LTA2LTE4IDE1OjQ3OjM5LjAwMDAwMDAwMCAt MDQwMAotQEAgLTcsNiArNywxMyBAQAotIGNsYXNzIEJ1dHRvbkxpc3QgewotIAotIHB1YmxpYzoK LSsJdHlwZWRlZiBzdHJ1Y3QgX2J1dHRvbiB7Ci0rCQkvKiBTZW5zaXRpdmUgYXJlYSAqLwotKwkJ VWludDE2IHgxLCB5MTsKLSsJCVVpbnQxNiB4MiwgeTI7Ci0rCQl2b2lkICgqY2FsbGJhY2spKHZv aWQpOwotKwkJc3RydWN0IF9idXR0b24gKm5leHQ7Ci0rCX0gYnV0dG9uOwotIAlCdXR0b25MaXN0 KCkgewotIAkJYnV0dG9uX2xpc3QubmV4dCA9IE5VTEw7Ci0gCX0KLUBAIC0xNiw3ICsyMyw3IEBA Ci0gCi0gCXZvaWQgQWRkX0J1dHRvbihVaW50MTYgeCwgVWludDE2IHksIFVpbnQxNiB3aWR0aCwg VWludDE2IGhlaWdodCwgCi0gCQkJCQkJdm9pZCAoKmNhbGxiYWNrKSh2b2lkKSkgewotLQkJc3Ry dWN0IGJ1dHRvbiAqYmVsZW07Ci0rCQlidXR0b24gKmJlbGVtOwotIAkJCi0gCQlmb3IgKCBiZWxl bT0mYnV0dG9uX2xpc3Q7IGJlbGVtLT5uZXh0OyBiZWxlbT1iZWxlbS0+bmV4dCApOwotIAkJYmVs ZW0tPm5leHQgPSBuZXcgYnV0dG9uOwotQEAgLTMwLDcgKzM3LDcgQEAKLSAJfQotIAotIAl2b2lk IEFjdGl2YXRlX0J1dHRvbihVaW50MTYgeCwgVWludDE2IHkpIHsKLS0JCXN0cnVjdCBidXR0b24g KmJlbGVtOwotKwkJYnV0dG9uICpiZWxlbTsKLSAKLSAJCWZvciAoIGJlbGVtPWJ1dHRvbl9saXN0 Lm5leHQ7IGJlbGVtOyBiZWxlbT1iZWxlbS0+bmV4dCApIHsKLSAJCQlpZiAoICh4ID49IGJlbGVt LT54MSkgJiYgKHggPD0gYmVsZW0tPngyKSAmJgotQEAgLTQyLDcgKzQ5LDcgQEAKLSAJfQotIAot IAl2b2lkIERlbGV0ZV9CdXR0b25zKHZvaWQpIHsKLS0JCXN0cnVjdCBidXR0b24gKmJlbGVtLCAq YnRlbXA7Ci0rCQlidXR0b24gKmJlbGVtLCAqYnRlbXA7Ci0gCi0gCQlmb3IgKCBiZWxlbT1idXR0 b25fbGlzdC5uZXh0OyBiZWxlbTsgKSB7Ci0gCQkJYnRlbXAgPSBiZWxlbTsKLUBAIC01MywxMiAr NjAsNSBAQAotIAl9Ci0gCQotIHByaXZhdGU6Ci0tCXR5cGVkZWYgc3RydWN0IGJ1dHRvbiB7Ci0t CQkvKiBTZW5zaXRpdmUgYXJlYSAqLwotLQkJVWludDE2IHgxLCB5MTsKLS0JCVVpbnQxNiB4Miwg eTI7Ci0tCQl2b2lkICgqY2FsbGJhY2spKHZvaWQpOwotLQkJc3RydWN0IGJ1dHRvbiAqbmV4dDsK LS0JfSBidXR0b247Ci0gCWJ1dHRvbiBidXR0b25fbGlzdDsKLSB9OwoKZGlmZiAtLWdpdCBhL2dj YzUucGF0Y2ggYi9nY2M1LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzZjlm OGRkLi4wMDAwMDAwCi0tLSBhL2djYzUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCww IEBACi1kaWZmIC11cCBNYWVsc3Ryb20tMy4wLjYvbmV0bG9naWMvcHJvdG9jb2wuaH4gTWFlbHN0 cm9tLTMuMC42L25ldGxvZ2ljL3Byb3RvY29sLmgKLS0tLSBNYWVsc3Ryb20tMy4wLjYvbmV0bG9n aWMvcHJvdG9jb2wuaH4JMjAwMC0wOS0yNCAxOTo1NTozOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBN YWVsc3Ryb20tMy4wLjYvbmV0bG9naWMvcHJvdG9jb2wuaAkyMDE2LTAyLTAyIDE2OjE2OjI5LjE0 MTg0NDU0MyArMDEwMAotQEAgLTExLDcgKzExLDcgQEAKLSAJVGhpcyBzdHVmZiBpcyBzaGFyZWQg YmV0d2VlbiBuZXRwbGF5LmNjIGFuZCBuZXRwbGF5ZAotICovCi0gLyogVGhlIGRlZmF1bHQgcG9y dCBmb3IgTWFlbHN0cm9tIGdhbWVzLiAgV2hhdCBpcyAweEFFQUU/PyAqc2hydWcqIDopICovCi0t I2RlZmluZSBORVRQTEFZX1BPUlQJMHhBRUFFCQkJLyogcG9ydCA0NDcxOCAqLwotKyNkZWZpbmUg TkVUUExBWV9QT1JUCSgweEFFQUUpCQkvKiBwb3J0IDQ0NzE4ICovCi0gCi0gLyogVGhlIG1pbmlt dW0gbGVuZ3RoIG9mIGEgbmV3IHBhY2tldCBidWZmZXIgKi8KLSAjZGVmaW5lIE5FV19QQUNLRVRM RU4JKDMrMyo0KQoKZGlmZiAtLWdpdCBhL2luc3RhbGwucGF0Y2ggYi9pbnN0YWxsLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NmNlNjMxLi4wMDAwMDAwCi0tLSBhL2luc3Rh bGwucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0tLS0gTWFlbHN0cm9tLTMu MC42L2NvbmZpZ3VyZS5mb28JMjAwNi0wNS0wOSAwMDowODo0My4wMDAwMDAwMDAgLTA0MDAKLSsr KyBNYWVsc3Ryb20tMy4wLjYvY29uZmlndXJlCTIwMDYtMDUtMDkgMDA6MDk6MDAuMDAwMDAwMDAw IC0wNDAwCi1AQCAtMzIzMiw3ICszMjMyLDcgQEAKLSAgICAgICAgIEdBTUVfSU5TVEFMTERJUj0i XCQocHJlZml4KS9nYW1lcy8kUEFDS0FHRSIKLSAgICAgICAgIDs7Ci0gICAgICopCi0tICAgICAg ICBHQU1FX0lOU1RBTExESVI9IlwkKHByZWZpeCkvZ2FtZXMvJFBBQ0tBR0UiCi0rICAgICAgICBH QU1FX0lOU1RBTExESVI9IlwkKGRhdGFkaXIpLyRQQUNLQUdFIgotICAgICAgICAgOzsKLSBlc2Fj Ci0gCgpkaWZmIC0tZ2l0IGEvbWFlbHN0cm9tLnBuZyBiL21hZWxzdHJvbS5wbmcKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA0MGJkN2MuLjAwMDAwMDAKQmluYXJ5IGZpbGVzIGEvbWFl bHN0cm9tLnBuZyBhbmQgL2Rldi9udWxsIGRpZmZlcgoKZGlmZiAtLWdpdCBhL25ldGQtYzk5LnBh dGNoIGIvbmV0ZC1jOTkucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkMDI1 MDkuLjAwMDAwMDAKLS0tIGEvbmV0ZC1jOTkucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyOCAr MCwwIEBACi1kaWZmIC0tZ2l0IGEvTWFlbHN0cm9tLW5ldGQuYyBiL01hZWxzdHJvbS1uZXRkLmMK LWluZGV4IDNlNmU5NDIuLjRlZDQwYWUgMTAwNjQ0Ci0tLS0gYS9NYWVsc3Ryb20tbmV0ZC5jCi0r KysgYi9NYWVsc3Ryb20tbmV0ZC5jCi1AQCAtMiw2ICsyLDcgQEAKLSAvKiBIZXJlIHdlIGdvLi4u ICovCi0gCi0gI2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRlIDx0aW1lLmg+Ci0gI2luY2x1 ZGUgPHN0ZGlvLmg+Ci0gI2luY2x1ZGUgPHN0cmluZy5oPgotICNpbmNsdWRlIDxzaWduYWwuaD4K LUBAIC0xNCw2ICsxNSwxMCBAQAotICNpbmNsdWRlIDxuZXRkYi5oPgotICNpbmNsdWRlIDx1bmlz dGQuaD4KLSAKLSsjaWZkZWYgdW5peAotKyNpbmNsdWRlIDxhcnBhL2luZXQuaD4KLSsjZW5kaWYK LSsKLSAvKiBXZSB3YWl0IGluIGEgbG9vcCBmb3IgcGxheWVycyB0byBjb25uZWN0IGFuZCB0ZWxs IHVzIGhvdyBtYW55IHBlb3BsZQotICAgIGFyZSBwbGF5aW5nLiAgVGhlbiwgb25jZSBhbGwgcGxh eWVycyBoYXZlIGNvbm5lY3RlZCwgdGhlbiB3ZSBicm9hZGNhc3QKLSAgICB0aGUgYWRkcmVzc2Vz IG9mIGFsbCBwbGF5ZXJzLCBhbmQgdGhlbiBzdGFydCBhZ2Fpbi4KLUBAIC0zNzYsNCArMzgxLDMg QEAgcHJpbnRmKCIgIHRoZSByZW1vdGUgYWRkcmVzcyBpcyAlczolaHVcbiIsCi0gCX0KLSAJLyog TmV2ZXIgcmVhY2hlZCAqLwotIH0KLS0KCmRpZmYgLS1naXQgYS9vcGVuLnBhdGNoIGIvb3Blbi5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzEyMTIzYi4uMDAwMDAwMAotLS0g YS9vcGVuLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotZGlmZiAtdXAgTWFl bHN0cm9tLTMuMC42L3Njb3Jlcy5jcHAuZm9vIE1hZWxzdHJvbS0zLjAuNi9zY29yZXMuY3BwCi0t LS0gTWFlbHN0cm9tLTMuMC42L3Njb3Jlcy5jcHAuZm9vCTIwMDctMTAtMTAgMTY6MTA6MTcuMDAw MDAwMDAwIC0wNDAwCi0rKysgTWFlbHN0cm9tLTMuMC42L3Njb3Jlcy5jcHAJMjAwNy0xMC0xMCAx NjoxMTozMy4wMDAwMDAwMDAgLTA0MDAKLUBAIC00MCw3ICs0MCw3IEBAIHZvaWQgR2V0U2NvcmVG aWxlKHZvaWQpCi0gI2lmZGVmIHVuaXgKLSAJb21hc2s9dW1hc2soU0NPUkVTX1BFUk1NQVNLKTsK LSAjZW5kaWYKLS0JZiA9IG9wZW4oTUFFTFNUUk9NX1NDT1JFUyxPX1JEV1J8T19DUkVBVCk7Ci0r CWYgPSBvcGVuKE1BRUxTVFJPTV9TQ09SRVMsT19SRFdSfE9fQ1JFQVQsU19JUlVTUiB8IFNfSVdV U1IgfCBTX0lXR1JQIHwgU19JUkdSUCk7Ci0gCWlmIChmID09IC0xKQotIAkJZiA9IG9wZW4oTUFF TFNUUk9NX1NDT1JFUyxPX1JET05MWSk7Ci0gCWlmIChmID09IC0xKQoKZGlmZiAtLWdpdCBhL3Nl dGdpZC5wYXRjaCBiL3NldGdpZC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg OWMwZmUwNy4uMDAwMDAwMAotLS0gYS9zZXRnaWQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwy MDQgKzAsMCBAQAotZGlmZiAtLWdpdCBhL21haW4uY3BwIGIvbWFpbi5jcHAKLWluZGV4IDA4N2Ew YmYuLjliZWFkYTUgMTAwNjQ0Ci0tLS0gYS9tYWluLmNwcAotKysrIGIvbWFpbi5jcHAKLUBAIC0x NzAsMTIgKzE3MCwyMSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQotIAkvKiBD b21tYW5kIGxpbmUgZmxhZ3MgKi8KLSAJaW50IGRvcHJpbnRoaWdoID0gMDsKLSAJaW50IHNwZWVk dGVzdCA9IDA7Ci0rCWdpZF90IGdpZDsKLSsKLSAJVWludDMyIHZpZGVvX2ZsYWdzID0gU0RMX1dJ TkRPV19GVUxMU0NSRUVOX0RFU0tUT1A7Ci0gCi0gCS8qIE5vcm1hbCB2YXJpYWJsZXMgKi8KLSAJ U0RMX0V2ZW50IGV2ZW50OwotIAlMaWJQYXRoOjpTZXRFeGVQYXRoKGFyZ3ZbMF0pOwotIAotKwlH ZXRTY29yZUZpbGUoKTsKLSsJZ2lkID0gZ2V0Z2lkKCk7Ci0rCWlmIChzZXRyZXNnaWQoLTEsZ2lk LGdpZCkgIT0gMCkgewotKwkJZXJyb3IoIkNvdWxkIG5vdCBkcm9wIHByaXZsZWdlcy4gLS0gRXhp dGluZy5cbiIpOwotKwkJZXhpdCgxKTsKLSsJfQotKwotICNpZm5kZWYgX19XSU45NV9fCi0gCS8q IFRoZSBmaXJzdCB0aGluZyB3ZSBkbyBpcyBjYWxjdWxhdGUgb3VyIGNoZWNrc3VtICovCi0gCSh2 b2lkKSBjaGVja3N1bSgpOwotQEAgLTQ4MSw3ICs0OTAsNyBAQCB2b2lkIERyYXdNYWluU2NyZWVu KHZvaWQpCi0gCWlmICggdGl0bGUgPT0gTlVMTCApIHsKLSAJCWVycm9yKCJDYW4ndCBsb2FkICd0 aXRsZScgdGl0bGUhIChJRD0lZClcbiIsIDEyOSk7Ci0gCQlleGl0KDI1NSk7Ci0tICAgICAgICB9 Ci0rCX0KLSAKLSAJY2xyID0gc2NyZWVuLT5NYXBSR0IoMzAwMDA+PjgsIDMwMDAwPj44LCAweEZG KTsKLSAJbHRDbHIgPSBzY3JlZW4tPk1hcFJHQig0MDAwMD4+OCwgNDAwMDA+PjgsIDB4RkYpOwot QEAgLTY4Miw0ICs2OTEsMyBAQCB2b2lkIE1lc3NhZ2UoY29uc3QgY2hhciAqbWVzc2FnZSkKLSAJ fQotIAlzY3JlZW4tPlVwZGF0ZSgpOwotIH0KLS0KLWRpZmYgLS1naXQgYS9zY29yZXMuY3BwIGIv c2NvcmVzLmNwcAotaW5kZXggNWUwMjNjNi4uOWVjMWU3NiAxMDA2NDQKLS0tLSBhL3Njb3Jlcy5j cHAKLSsrKyBiL3Njb3Jlcy5jcHAKLUBAIC00LDYgKzQsOCBAQAotICovCi0gCi0gI2lmZGVmIHVu aXgKLSsjaW5jbHVkZSA8YXJwYS9pbmV0Lmg+Ci0rI2luY2x1ZGUgPGZjbnRsLmg+Ci0gI2luY2x1 ZGUgPHN5cy90eXBlcy5oPgotICNpbmNsdWRlIDxzeXMvc3RhdC5oPgotICNlbmRpZgotQEAgLTE1 LDExICsxNywxMSBAQAotICNpbmNsdWRlICJsb2FkLmgiCi0gI2luY2x1ZGUgImRpYWxvZy5oIgot IAotLSNkZWZpbmUgTUFFTFNUUk9NX1NDT1JFUwkiTWFlbHN0cm9tLVNjb3JlcyIKLSsjZGVmaW5l IE1BRUxTVFJPTV9TQ09SRVMJIi92YXIvbGliL2dhbWVzL01hZWxzdHJvbS1TY29yZXMiCi0gI2Rl ZmluZSBOVU1fU0NPUkVTCQkxMAkJLy8gRG8gbm90IGNoYW5nZSB0aGlzIQotIAotIC8qIEV2ZXJ5 b25lIGNhbiB3cml0ZSB0byBzY29yZXMgZmlsZSBpZiBkZWZpbmVkIHRvIDAgKi8KLS0jZGVmaW5l IFNDT1JFU19QRVJNTUFTSwkJMDIyCi0rI2RlZmluZSBTQ09SRVNfUEVSTU1BU0sJCTAwMgotIAot ICNkZWZpbmUgQ0xSX0RJQUxPR19XSURUSAkyODEKLSAjZGVmaW5lIENMUl9ESUFMT0dfSEVJR0hU CTExMQotQEAgLTI3LDEwICsyOSwzMSBAQAotIEJvb2wgZ05ldFNjb3JlcyA9IDA7Ci0gU2NvcmVz IGhTY29yZXNbTlVNX1NDT1JFU107Ci0gCi0raW50IGdTY29yZUZpbGUgPSAtMTsKLSsKLSt2b2lk IEdldFNjb3JlRmlsZSh2b2lkKQotK3sKLSsjaWZkZWYgdW5peAotKyAgIGludCBvbWFzazsKLSsj ZW5kaWYKLSsgICBpbnQgZjsKLSsKLSsjaWZkZWYgdW5peAotKyAgIG9tYXNrPXVtYXNrKFNDT1JF U19QRVJNTUFTSyk7Ci0rI2VuZGlmCi0rICAgZiA9IG9wZW4oTUFFTFNUUk9NX1NDT1JFUyxPX1JE V1J8T19DUkVBVCxTX0lSVVNSIHwgU19JV1VTUiB8IFNfSVdHUlAgfCBTX0lSR1JQKTsKLSsgICBp ZiAoZiA9PSAtMSkKLSsJICAgZiA9IG9wZW4oTUFFTFNUUk9NX1NDT1JFUyxPX1JET05MWSk7Ci0r ICAgaWYgKGYgPT0gLTEpCi0rCSAgIGVycm9yKCJDb3VsZG4ndCBvcGVuIHNjb3JlIGZpbGUgJXMu XG4iLE1BRUxTVFJPTV9TQ09SRVMpOwotKyAgIGdTY29yZUZpbGUgPSBmOwotKyNpZmRlZiB1bml4 Ci0rICAgdW1hc2sob21hc2spOwotKyNlbmRpZgotK30KLSsKLSB2b2lkIExvYWRTY29yZXModm9p ZCkKLSB7Ci0tCVNhdmVQYXRoIHBhdGg7Ci0tCVNETF9SV29wcyAqc2NvcmVzX3NyYzsKLSAJaW50 IGk7Ci0gCi0gCS8qIFRyeSB0byBsb2FkIG5ldHdvcmsgc2NvcmVzLCBpZiB3ZSBjYW4gKi8KLUBA IC00NCw1MCArNjcsNDggQEAgdm9pZCBMb2FkU2NvcmVzKHZvaWQpCi0gCX0KLSAJbWVtc2V0KCZo U2NvcmVzLCAwLCBzaXplb2YoaFNjb3JlcykpOwotIAotLQlzY29yZXNfc3JjID0gU0RMX1JXRnJv bUZpbGUocGF0aC5QYXRoKE1BRUxTVFJPTV9TQ09SRVMpLCAicmIiKTsKLS0JaWYgKCBzY29yZXNf c3JjICE9IE5VTEwgKSB7Ci0rCWlmIChnU2NvcmVGaWxlICE9IC0xKSB7Ci0rCQlsc2VlayhnU2Nv cmVGaWxlLDAsU0VFS19TRVQpOwotIAkJZm9yICggaT0wOyBpPE5VTV9TQ09SRVM7ICsraSApIHsK LS0JCQlTRExfUldyZWFkKHNjb3Jlc19zcmMsIGhTY29yZXNbaV0ubmFtZSwKLS0JCQkgICAgICAg ICAgIHNpemVvZihoU2NvcmVzW2ldLm5hbWUpLCAxKTsKLS0JCQloU2NvcmVzW2ldLndhdmUgPSBT RExfUmVhZEJFMzIoc2NvcmVzX3NyYyk7Ci0tCQkJaFNjb3Jlc1tpXS5zY29yZSA9IFNETF9SZWFk QkUzMihzY29yZXNfc3JjKTsKLSsJCQlVaW50MzIgdG1wOwotKwkJCWlmIChyZWFkKGdTY29yZUZp bGUsaFNjb3Jlc1tpXS5uYW1lLHNpemVvZihoU2NvcmVzW2ldLm5hbWUpKSAhPSBzaXplb2YoaFNj b3Jlc1tpXS5uYW1lKSkKLSsJCQkJYnJlYWs7Ci0rCQkJaWYgKHJlYWQoZ1Njb3JlRmlsZSwmdG1w LHNpemVvZihVaW50MzIpKSAhPSBzaXplb2YoVWludDMyKSkKLSsJCQkJYnJlYWs7Ci0rCQkJaFNj b3Jlc1tpXS53YXZlID0gbnRvaGwodG1wKTsKLSsJCQlpZiAocmVhZChnU2NvcmVGaWxlLCZ0bXAs c2l6ZW9mKFVpbnQzMikpICE9IHNpemVvZihVaW50MzIpKQotKwkJCQlicmVhazsKLSsJCQloU2Nv cmVzW2ldLnNjb3JlID0gbnRvaGwodG1wKTsKLSAJCX0KLS0JCVNETF9SV2Nsb3NlKHNjb3Jlc19z cmMpOwotIAl9Ci0gfQotIAotIHZvaWQgU2F2ZVNjb3Jlcyh2b2lkKQotIHsKLS0JU2F2ZVBhdGgg cGF0aDsKLS0JU0RMX1JXb3BzICpzY29yZXNfc3JjOwotIAlpbnQgaTsKLS0jaWZkZWYgdW5peAot LQlpbnQgb21hc2s7Ci0tI2VuZGlmCi0gCi0gCS8qIERvbid0IHNhdmUgbmV0d29yayBzY29yZXMg Ki8KLSAJaWYgKCBnTmV0U2NvcmVzICkKLSAJCXJldHVybjsKLSAKLS0jaWZkZWYgdW5peAotLQlv bWFzaz11bWFzayhTQ09SRVNfUEVSTU1BU0spOwotLSNlbmRpZgotLQlzY29yZXNfc3JjID0gU0RM X1JXRnJvbUZpbGUocGF0aC5QYXRoKE1BRUxTVFJPTV9TQ09SRVMpLCAid2IiKTsKLS0JaWYgKCBz Y29yZXNfc3JjICE9IE5VTEwgKSB7Ci0rCWlmIChnU2NvcmVGaWxlICE9IC0xKSB7Ci0rCQlsc2Vl ayhnU2NvcmVGaWxlLDAsU0VFS19TRVQpOwotIAkJZm9yICggaT0wOyBpPE5VTV9TQ09SRVM7ICsr aSApIHsKLS0JCQlTRExfUld3cml0ZShzY29yZXNfc3JjLCBoU2NvcmVzW2ldLm5hbWUsCi0tCQkJ ICAgICAgICAgICAgc2l6ZW9mKGhTY29yZXNbaV0ubmFtZSksIDEpOwotLQkJCVNETF9Xcml0ZUJF MzIoc2NvcmVzX3NyYywgaFNjb3Jlc1tpXS53YXZlKTsKLS0JCQlTRExfV3JpdGVCRTMyKHNjb3Jl c19zcmMsIGhTY29yZXNbaV0uc2NvcmUpOwotKwkJCVVpbnQzMiB0bXA7Ci0rCQkJaWYgKHdyaXRl KGdTY29yZUZpbGUsIGhTY29yZXNbaV0ubmFtZSwgc2l6ZW9mKGhTY29yZXNbaV0ubmFtZSkpICE9 IHNpemVvZihoU2NvcmVzW2ldLm5hbWUpKQotKwkJCQlnb3RvIG91dF9lcnI7Ci0rCQkJdG1wID0g aHRvbmwoaFNjb3Jlc1tpXS53YXZlKTsKLSsJCQlpZiAod3JpdGUoZ1Njb3JlRmlsZSwgJnRtcCxz aXplb2YoVWludDMyKSkgIT0gc2l6ZW9mKFVpbnQzMikpCi0rCQkJCWdvdG8gb3V0X2VycjsKLSsJ CQl0bXAgPSBodG9ubChoU2NvcmVzW2ldLnNjb3JlKTsKLSsJCQlpZiAod3JpdGUoZ1Njb3JlRmls ZSwgJnRtcCxzaXplb2YoVWludDMyKSkgIT0gc2l6ZW9mKFVpbnQzMikpCi0rCQkJCWdvdG8gb3V0 X2VycjsKLSAJCX0KLS0JCVNETF9SV2Nsb3NlKHNjb3Jlc19zcmMpOwotLQl9IGVsc2UgewotLQkJ ZXJyb3IoIldhcm5pbmc6IENvdWxkbid0IHNhdmUgc2NvcmVzIHRvICVzXG4iLAotLQkJCQkJCXBh dGguUGF0aChNQUVMU1RST01fU0NPUkVTKSk7Ci0rCQlmc3luYyhnU2NvcmVGaWxlKTsKLSsJCXJl dHVybjsKLSAJfQotLSNpZmRlZiB1bml4Ci0tCXVtYXNrKG9tYXNrKTsKLS0jZW5kaWYKLStvdXRf ZXJyOgotKwllcnJvcigiV2FybmluZzogQ291bGRuJ3Qgc2F2ZSBzY29yZXMgdG8gJXNcbiIsIE1B RUxTVFJPTV9TQ09SRVMpOwotIH0KLSAKLSAvKiBKdXN0IHNob3cgdGhlIGhpZ2ggc2NvcmVzICov Ci1AQCAtMTQ4LDcgKzE2OSw3IEBAIGludCBaYXBIaWdoU2NvcmVzKHZvaWQpCi0gCWNsZWFyID0g bmV3IE1hY19CdXR0b24oOTksIDc0LCBCVVRUT05fV0lEVEgsIEJVVFRPTl9IRUlHSFQsCi0gCQkJ CSJDbGVhciIsIGNoaWNhZ28sIGZvbnRzZXJ2LCBDbGVhcl9jYWxsYmFjayk7Ci0gCWRpYWxvZy0+ QWRkX0RpYWxvZyhjbGVhcik7Ci0tCWNhbmNlbCA9IG5ldyBNYWNfRGVmYXVsdEJ1dHRvbig5OStC VVRUT05fV0lEVEgrMTQsIDc0LCAKLSsJY2FuY2VsID0gbmV3IE1hY19EZWZhdWx0QnV0dG9uKDk5 K0JVVFRPTl9XSURUSCsxNCwgNzQsCi0gCQkJCUJVVFRPTl9XSURUSCwgQlVUVE9OX0hFSUdIVCwK LSAJCQkJIkNhbmNlbCIsIGNoaWNhZ28sIGZvbnRzZXJ2LCBDYW5jZWxfY2FsbGJhY2spOwotIAlk aWFsb2ctPkFkZF9EaWFsb2coY2FuY2VsKTsKLUBAIC0yNjgsNCArMjg5LDMgQEAgaW50IEdldFN0 YXJ0TGV2ZWwodm9pZCkKLSAJfQotIAlyZXR1cm4oMCk7Ci0gfQotLQotZGlmZiAtLWdpdCBhL3Nj b3Jlcy5oIGIvc2NvcmVzLmgKLWluZGV4IDQxMjYyNjAuLjQ3MTY3NTEgMTAwNjQ0Ci0tLS0gYS9z Y29yZXMuaAotKysrIGIvc2NvcmVzLmgKLUBAIC0yLDYgKzIsNyBAQAotIC8vIEZ1bmN0aW9ucyBm cm9tIHNjb3Jlcy5jYwotIGV4dGVybiB2b2lkCUxvYWRTY29yZXModm9pZCk7Ci0gZXh0ZXJuIHZv aWQJU2F2ZVNjb3Jlcyh2b2lkKTsKLStleHRlcm4gdm9pZAlHZXRTY29yZUZpbGUodm9pZCk7Ci0g ZXh0ZXJuIGludAlaYXBIaWdoU2NvcmVzKHZvaWQpOwotIGV4dGVybiBpbnQJR2V0U3RhcnRMZXZl bCh2b2lkKTsKLSBleHRlcm4gdm9pZAlQcmludEhpZ2hTY29yZXModm9pZCk7CgpkaWZmIC0tZ2l0 IGEvc291cmNlcyBiL3NvdXJjZXMKaW5kZXggNWFkODg5Ni4uOGNhNjc0OCAxMDA2NDQKLS0tIGEv c291cmNlcworKysgYi9zb3VyY2VzCkBAIC0xICsxLDIgQEAKLVNIQTUxMiAoTWFlbHN0cm9tLTMu MC43LnRhci5neikgPSAyY2M3NWVlMjUyOTMzMTBjN2Y0NzM3NTgzYzVmMWRjMzNmMmM1ZGZjYTI4 ZmRmZTc2ZjUyM2E5NDk5MmQxYWUyMGE5NmI3N2U3OWMyNmFlZTNiMmM3YzFhMjNkMjEzMTI4YTA0 MGEyNDVkMDY3MTMzOWI1Njc2NDZiODgwMDRkMQorU0hBNTEyIChNYWVsc3Ryb20tcmVsZWFzZS00 LjAuMi50YXIuZ3opID0gZmY3MjNiOTA5NGUxYjExZTU0NTFhZTQwODgwMDY4NmM2OWY2ZWViYTYx NTA3YmQzM2RlYzVmYTExODEyY2EwZWQ2YmVmNjJkMjhjYzE0YjRhNDgzYzI1YTUyNjM4YWNkYWY3 MDhiNmQ4MjVhMjFjNWM4MmZhYTNmYjA3YjcyMDcKK1NIQTUxMiAocGh5c2ZzLTQ5Y2ZkNWZkZDQ2 ZjM4YjRjMjYxMTU1NmI0NGVlOWIwZDMwOGUxNjIudGFyLmd6KSA9IDY0YjlkNGIyNDVhMGZkNmNi NGNkMDk5ZWRlYzU5ODA0NGIwODMzYzIxMDA4YzQxYjU4NGUzZTYyMDAwZDI5YzY1ZDBmYjFjODU0 ZWU4ZjI2MWIzZmVlNjE2YzAwMGMwYmY2ZjZhNWQ2MmQ2ZjYzNzY0YTI1M2EyMGVmNTVlZDk1Cg==