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: Adam Williamson To: git-commits@fedoraproject.org Subject: [rpms/fedfind] test-pr-branch-2: Modernize spec (autorelease, autochangelog, pyproject-rpm-macros) Date: Fri, 19 Jun 2026 22:31:16 GMT Message-ID: <178190827660.1.13570717324039402201.rpms-fedfind-a612779430c0@fedoraproject.org> List-ID: X-Git-Repo: rpms/fedfind X-Git-Branch: test-pr-branch-2 X-Git-Rev: a612779430c031da9e2afccba7c9e1ac86388728 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZmVkZmluZAogICAgICAgICAgICBCcmFuY2ggOiB0ZXN0LXByLWJyYW5jaC0y CiAgICAgICAgICAgIENvbW1pdCA6IGE2MTI3Nzk0MzBjMDMxZGE5ZTJhZmNjYmE3YzllMWFjODYz ODg3MjgKICAgICAgICAgICAgQXV0aG9yIDogQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRo YXQuY29tPgogICAgICAgICAgICBEYXRlICAgOiAyMDIxLTEyLTA4VDEzOjUxOjM0LTA4OjAwCiAg ICAgICAgICAgIFN0YXRzICA6ICszOTEvLTQ2MiBpbiAyIGZpbGUocykKICAgICAgICAgICAgVVJM ICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9mZWRmaW5kL2MvYTYxMjc3 OTQzMGMwMzFkYTllMmFmY2NiYTdjOWUxYWM4NjM4ODcyOD9icmFuY2g9dGVzdC1wci1icmFuY2gt MgoKICAgICAgICAgICAgTG9nOgogICAgICAgICAgICBNb2Rlcm5pemUgc3BlYyAoYXV0b3JlbGVh c2UsIGF1dG9jaGFuZ2Vsb2csIHB5cHJvamVjdC1ycG0tbWFjcm9zKQoKVXNlIHRoZSBuZXcgYXV0 b3JlbGVhc2UsIGF1dG9jaGFuZ2Vsb2cgYW5kIHB5cHJvamVjdC1ycG0tbWFjcm9zCm1hY3JvcyB0 byBzdWJzdGFudGlhbGx5IHNpbXBsaWZ5IHRoZSBzcGVjIGZpbGUuIFRoZXNlIGFyZSBub3QKYXZh aWxhYmxlIG9uIEVQRUwgNyBhbmQgOCwgc28gdGhvc2UgYnJhbmNoZXMgd2lsbCBiZSBtYWludGFp bmVkCnNlcGFyYXRlbHkgZ29pbmcgZm9yd2FyZC4KCi0tLQpkaWZmIC0tZ2l0IGEvY2hhbmdlbG9n IGIvY2hhbmdlbG9nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxYmU4NjAK LS0tIC9kZXYvbnVsbAorKysgYi9jaGFuZ2Vsb2cKQEAgLTAsMCArMSwzNzQgQEAKKyogV2VkIEp1 bCAyMSAyMDIxIEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVj dC5vcmc+IC0gNC40LjQtNAorLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3Jn L3dpa2kvRmVkb3JhXzM1X01hc3NfUmVidWlsZAorCisqIEZyaSBKdW4gMDQgMjAyMSBQeXRob24g TWFpbnQgPHB5dGhvbi1tYWludEByZWRoYXQuY29tPiAtIDQuNC40LTMKKy0gUmVidWlsdCBmb3Ig UHl0aG9uIDMuMTAKKworKiBUdWUgSmFuIDI2IDIwMjEgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJp bmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA0LjQuNC0yCistIFJlYnVpbHQgZm9yIGh0 dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMzRfTWFzc19SZWJ1aWxkCisKKyog U2F0IE9jdCAyNCAyMDIwIEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0 LjQuNC0xCistIE5ldyByZWxlYXNlIDQuNC40OiB1c2UgYmVzcG9rZSByZWxlYXNlIG1ldGFkYXRh IGluc3RlYWQgb2YgQm9kaGkKKworKiBNb24gSnVsIDI3IDIwMjAgRmVkb3JhIFJlbGVhc2UgRW5n aW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA0LjQuMy0yCistIFJlYnVpbHQg Zm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMzNfTWFzc19SZWJ1aWxk CisKKyogV2VkIEp1bCAyMiAyMDIwIEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNv bT4gLSA0LjQuMy0xCistIE5ldyByZWxlYXNlIDQuNC4zOiBkb24ndCBkZWxldGUgX3BkY2NpZCBw cm9wZXJ0eSwganVzdCB1bnNldCBpdAorCisqIFR1ZSBNYXkgMjYgMjAyMCBNaXJvIEhyb27EjW9r IDxtaHJvbmNva0ByZWRoYXQuY29tPiAtIDQuNC4yLTIKKy0gUmVidWlsdCBmb3IgUHl0aG9uIDMu OQorCisqIEZyaSBNYXkgMDEgMjAyMCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5j b20+IC0gNC40LjItMQorLSBOZXcgcmVsZWFzZSA0LjQuMjogRml4IGdldF9jdXJyZW50X3JlbGVh c2UgZm9yIG5ldyAnRUxOJyByZWxlYXNlCisKKyogRnJpIEZlYiAyMSAyMDIwIEFkYW0gV2lsbGlh bXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0LjQuMS0xCistIE5ldyByZWxlYXNlIDQuNC4x OiBkcm9wIFB5dGhvbiAyLjYgc3VwcG9ydCwgdXBkYXRlIHRlc3RzLCB1c2UgQm9kaGkgbm90IHBr Z2RiCistIFNpbXBsaWZ5IHNwZWMgYnkgZHJvcHBpbmcgRUwgNiBzdXBwb3J0IChjYW4ndCBidWls ZCBvbiBFTCA2IG5vdyBhbnl3YXkpCisKKyogVHVlIEphbiAyOCAyMDIwIEZlZG9yYSBSZWxlYXNl IEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNC4zLjAtMgorLSBSZWJ1 aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzMyX01hc3NfUmVi dWlsZAorCisqIFR1ZSBKYW4gMDcgMjAyMCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhh dC5jb20+IC0gNC4zLjAtMQorLSBOZXcgcmVsZWFzZSA0LjMuMDogZW5oYW5jZSBtZXRhZGF0YSBm b3IgY29tcG9zZXMgd2l0aG91dCBpdAorICArIFJldHJpZXZlIG1ldGFkYXRhIGZyb20gUERDIGZv ciBvbGRlciBuaWdodGx5IGFuZCBjYW5kaWRhdGVzCisgICsgUmV0cmlldmUgaW1hZ2Ugc2l6ZXMg ZnJvbSBpbWFnZWxpc3QgZmlsZXMgZm9yIHN0YWJsZSByZWxlYXNlcworCisqIFR1ZSBPY3QgMDEg MjAxOSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4yLjgtMQorLSBO ZXcgcmVsZWFzZSA0LjIuODogZXhwaXJlIGNvbGxlY3Rpb25zIGNhY2hlIGFmdGVyIGEgZGF5CisK KyogTW9uIEF1ZyAxOSAyMDE5IE1pcm8gSHJvbsSNb2sgPG1ocm9uY29rQHJlZGhhdC5jb20+IC0g NC4yLjctMworLSBSZWJ1aWx0IGZvciBQeXRob24gMy44CisKKyogVGh1IEp1bCAyNSAyMDE5IEZl ZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNC4y LjctMgorLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3Jh XzMxX01hc3NfUmVidWlsZAorCisqIFdlZCBKdWwgMTAgMjAxOSBBZGFtIFdpbGxpYW1zb24gPGF3 aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4yLjctMQorLSBOZXcgcmVsZWFzZSA0LjIuNzogZml4ICd2 ZXJzaW9uJyBmb3IgdXBkYXRlIGNvbXBvc2VzCisKKyogVHVlIEp1bCAwOSAyMDE5IEFkYW0gV2ls bGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0LjIuNi0xCistIE5ldyByZWxlYXNlIDQu Mi42OiB1cGRhdGUgdGhlIHJlc3BpbiBpbWFnZSByZWdleCwgYWdhaW4KKworKiBUdWUgSnVuIDI1 IDIwMTkgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMi41LTEKKy0g TmV3IHJlbGVhc2UgNC4yLjU6CisgICogRml4IGV4cGVjdGVkIGltYWdlcyBmb3IgRjMwKyBCcmFu Y2hlZCAvIFJhd2hpZGUgbmlnaHRsaWVzIHRvbworICAqIFJlc3VycmVjdCBvbGQgcHJldmlvdXNf cmVsZWFzZSBkdWUgdG8gUERDIGltcG9ydCBidWcKKworKiBNb24gSnVuIDI0IDIwMTkgQWRhbSBX aWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMi4zLTEKKy0gTmV3IHJlbGVhc2Ug NC4yLjM6IGZpeCBleHBlY3RlZCBpbWFnZXMgZm9yIEYzMCsgdXBkYXRlIGNvbXBvc2VzCisKKyog RnJpIE1hciAwOCAyMDE5IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0 LjIuMi0xCistIE5ldyByZWxlYXNlIDQuMi4yOiB3b3JrIGNvcnJlY3RseSB3aXRoIHByb2R1Y3Rt ZCAxLjIwCisKKyogVGh1IEphbiAzMSAyMDE5IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxy ZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNC4yLjEtMgorLSBSZWJ1aWx0IGZvciBodHRwczov L2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzMwX01hc3NfUmVidWlsZAorCisqIFRodSBO b3YgMjIgMjAxOCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4yLjEt MQorLSBOZXcgcmVsZWFzZSA0LjIuMTogbWFrZSB0ZXN0IHN1aXRlIHdvcmsgd2l0aG91dCBQeXRo b24gMgorLSBEaXNhYmxlIFB5dGhvbiAyIGJ1aWxkIG9uIEYzMCssIEVMOCsKKworKiBGcmkgSnVs IDEzIDIwMTggRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0 Lm9yZz4gLSA0LjIuMC0zCistIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcv d2lraS9GZWRvcmFfMjlfTWFzc19SZWJ1aWxkCisKKyogVHVlIEp1biAxOSAyMDE4IE1pcm8gSHJv bsSNb2sgPG1ocm9uY29rQHJlZGhhdC5jb20+IC0gNC4yLjAtMgorLSBSZWJ1aWx0IGZvciBQeXRo b24gMy43CisKKyogVHVlIEp1biAwNSAyMDE4IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVk aGF0LmNvbT4gLSA0LjIuMC0xCistIE5ldyByZWxlYXNlIDQuMi4wOiBzdXBwb3J0IHNldmVyYWwg bmV3IGNvbXBvc2UgdHlwZXMKKworKiBNb24gTWF5IDI4IDIwMTggQWRhbSBXaWxsaWFtc29uIDxh d2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMS4zLTEKKy0gTmV3IHJlbGVhc2UgNC4xLjM6IGhhbmRs ZSB1bmV4cGVjdGVkIG5pZ2h0bHkgY29tcG9zZSBtb3ZlCisKKyogTW9uIE1heSAyMSAyMDE4IEFk YW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0LjEuMi0xCistIE5ldyByZWxl YXNlIDQuMS4yOiBmaXhlcyBmb3IgbGl2ZS1yZXNwaW5zIHJlbGVhc2VzCisKKyogVHVlIE1hciAw NiAyMDE4IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0LjEuMS0xCist IE5ldyByZWxlYXNlIDQuMS4xOiBhZGp1c3RtZW50cyBmb3IgQXRvbWljIGNvbXBvc2UgdmFyaWFu dCByZW5hbWVzCisKKyogVHVlIEZlYiAyMCAyMDE4IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1A cmVkaGF0LmNvbT4gLSA0LjEuMC0xCistIE5ldyByZWxlYXNlIDQuMS4wOiBhZGQgYGdldF9wYWNr YWdlX25ldnJhc19wZGNgCistIFVwZGF0ZSBhbGwgUHl0aG9uIDIgZGVwZW5kZW5jaWVzIHRvICdw eXRob24yLWZvbycgZm9ybWF0CisKKyogV2VkIEZlYiAwNyAyMDE4IEZlZG9yYSBSZWxlYXNlIEVu Z2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNC4wLjAtMgorLSBSZWJ1aWx0 IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzI4X01hc3NfUmVidWls ZAorCisqIEZyaSBKYW4gMTkgMjAxOCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5j b20+IC0gNC4wLjAtMQorLSBOZXcgcmVsZWFzZSA0LjAuMDogbXVsdGlwbGUgY2hhbmdlcywgc2Vl IENIQU5HRUxPRworCisqIFR1ZSBOb3YgMjEgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFt QHJlZGhhdC5jb20+IC0gMy44LjMtMQorLSBOZXcgcmVsZWFzZSAzLjguMzogZml4IG1vZHVsYXIg Z2V0X3BhY2thZ2VfbnZyYXMgaGFyZGVyCisKKyogV2VkIE5vdiAxNSAyMDE3IEFkYW0gV2lsbGlh bXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjguMi0xCistIE5ldyByZWxlYXNlIDMuOC4y OiBmaXggbW9kdWxhciBnZXRfcGFja2FnZV9udnJhcyBhbmQgaHR0cHNfZ2VuZXJpY191cmwKKwor KiBUdWUgTm92IDE0IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAt IDMuOC4xLTEKKy0gTmV3IHJlbGVhc2UgMy44LjE6IGdldCByZWxlYXNlIGluZm8gZnJvbSBwa2dk YiBjb2xsZWN0aW9ucyBhZ2FpbgorCisqIFR1ZSBOb3YgMDcgMjAxNyBBZGFtIFdpbGxpYW1zb24g PGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy44LjAtMQorLSBOZXcgcmVsZWFzZSAzLjguMDogaGFu ZGxlIG1vZHVsYXIgY2FuZGlkYXRlIGNvbXBvc2VzCisKKyogRnJpIE9jdCAyNyAyMDE3IEFkYW0g V2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjcuMS0xCistIE5ldyByZWxlYXNl IDMuNy4xOiBoYW5kbGUgbWlzc2luZyAndXBkYXRlcy10ZXN0aW5nJyByZWxlYXNlIHR5cGUKKwor KiBGcmkgT2N0IDI3IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAt IDMuNy4wLTEKKy0gTmV3IHJlbGVhc2UgMy43LjA6IG5ldyBDSUQgcGFyc2VyLCB1cGRhdGUgc3Vw cG9ydGVkIGNvbXBvc2UgdHlwZXMKKworKiBNb24gT2N0IDE2IDIwMTcgQWRhbSBXaWxsaWFtc29u IDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNi40LTEKKy0gTmV3IHJlbGVhc2UgMy42LjQ6IHVw ZGF0ZSBDSEFOR0VMT0cgZm9yIDMuNi4zIGFuZCAzLjYuNAorCisqIEZyaSBPY3QgMTMgMjAxNyBB ZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy42LjMtMQorLSBOZXcgcmVs ZWFzZSAzLjYuMzogZml4IGV4cGVjdGVkIGltYWdlcyBmb3IgbW9kdWxhciBjb21wb3NlcworCisq IE1vbiBTZXAgMTEgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0g My42LjItMQorLSBOZXcgcmVsZWFzZSAzLjYuMjogZml4IFBEQyBxdWVyaWVzIGFuZCB1cGRhdGUg c3VidmFyaWFudCBsaXN0CisKKyogRnJpIEF1ZyAxOCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdp bGxpYW1AcmVkaGF0LmNvbT4gLSAzLjYuMS0xCistIE5ldyByZWxlYXNlIDMuNi4xOiBoYXJkIGNv ZGUgJ2N1cnJlbnQgcmVsZWFzZScgaW5mbyBmb3Igbm93CisKKyogV2VkIEF1ZyAxNiAyMDE3IEFk YW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjYuMC0xCistIE5ldyByZWxl YXNlIDMuNi4wOiBtb2R1bGFyIGNvbXBvc2Ugc3VwcG9ydAorCisqIFdlZCBKdWwgMjYgMjAxNyBG ZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDMu NS40LTMKKy0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9y YV8yN19NYXNzX1JlYnVpbGQKKworKiBUdWUgSnVsIDI1IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxh d2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNS40LTIKKy0gQnVtcCByZWxlYXNlIGFzIDMuNS40LTEg Zm9yIEVQRUwgNyBnb3QgdHJhc2hjYW5uZWQKKworKiBUdWUgQXByIDE4IDIwMTcgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNS40LTEKKy0gTmV3IHJlbGVhc2UgMy41 LjQ6IGhhbmRsZSBjYWNoZSBkaXJlY3RvcnkgdmFuaXNoaW5nCisKKyogVGh1IEFwciAwNiAyMDE3 IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjUuMy0xCistIE5ldyBy ZWxlYXNlIDMuNS4zOiBBbGxvdyAnRkFDRCcgYXMgYSBjb21wb3NlIHNob3J0IG5hbWUKKworKiBT dW4gTWFyIDI2IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMu NS4yLTEKKy0gTmV3IHJlbGVhc2UgMy41LjI6IGFkZCBvdGhlciBzZWNvbmRhcnkgYXJjaCBVUkxz IHRvIHdoaXRlbGlzdAorCisqIFN1biBNYXIgMjYgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxs aWFtQHJlZGhhdC5jb20+IC0gMy41LjEtMQorLSBOZXcgcmVsZWFzZSAzLjUuMTogYWRkIFBQQyBj b21wb3NlIFVSTCB0byBVUkwgd2hpdGVsaXN0IChSSEJaICMxNDM1OTUzKQorCisqIEZyaSBGZWIg MTcgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy41LjAtMQor LSBOZXcgcmVsZWFzZSAzLjUuMDogc3VwcG9ydCBmb3IgQ2xvdWQgbmlnaHRsaWVzLCBQeVBJIGFz IHVwc3RyZWFtCisKKyogRnJpIEZlYiAxMCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1A cmVkaGF0LmNvbT4gLSAzLjQuMy0xCistIE5ldyByZWxlYXNlIDMuNC4zOiBpbmNsdWRlIGBkaXNj X251bWJlcmAgaW4gc3ludGhlc2l6ZWQgaW1hZ2UgZGljdHMKKworKiBGcmkgRmViIDEwIDIwMTcg QWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNC4xLTIKKy0gRW5hYmxl IFB5dGhvbiAzIGJ1aWxkIGZvciBFUEVMIDcKKy0gU3BsaXQgQ0xJIGFuZCBsaWJyYXJ5IHBhY2th Z2VzCistIFVzZSBQeXRob24gMyBleGVjdXRhYmxlIG9uIGRpc3Ryb3Mgd2hlcmUgUHl0aG9uIDMg YnVpbGQgaXMgZW5hYmxlZAorLSBEcm9wIHRoZSBvbGQgZmVkZmluZDMgcHJvdmlkZXMvb2Jzb2xl dGVzLCBpdCdzIGJlZW4gbG9uZyBlbm91Z2gKKworKiBGcmkgRmViIDEwIDIwMTcgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNC4xLTEKKy0gTmV3IHJlbGVhc2UgMy40 LjE6CistICogSW5jbHVkZSBgY29tcG9zZWluZm9gIGRpY3QgaW4gc3ludGhlc2l6ZWQgbWV0YWRh dGEKKy0gKiBEb24ndCByZXR1cm4gUHVuZ2k0UmVsZWFzZSBmb3IgdW5rbm93biBVUkxzCisKKyog RnJpIEZlYiAxMCAyMDE3IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3Jh cHJvamVjdC5vcmc+IC0gMy40LjAtMgorLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2pl Y3Qub3JnL3dpa2kvRmVkb3JhXzI2X01hc3NfUmVidWlsZAorCisqIFRodSBKYW4gMjYgMjAxNyBB ZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy40LjAtMQorLSBuZXcgcmVs ZWFzZSAzLjQuMDogZml4IGBSZXNwaW5SZWxlYXNlYCBieSBVUkwsIHJlbW92ZSBgcmVsZWFzZV9u dW1iZXJgCisKKyogV2VkIEphbiAxOCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVk aGF0LmNvbT4gLSAzLjMuMC0xCistIG5ldyByZWxlYXNlIDMuMy4wOgorLSAqIEFkZCBgaGVscGVy cy5nZXRfY3VycmVudF9zdGFibGVzKClgIGZvciBmaW5kaW5nIGN1cnJlbnQgc3RhYmxlIHJlbGVh c2VzCistICogQWRkIGBSZWxlYXNlLnJlbGVhc2VfbnVtYmVyYCBmb3IgZ2V0dGluZyBSYXdoaWRl IGNvbXBvc2UgcmVsZWFzZSBudW1iZXJzCistICogQWRkIGB1cmxgIGFuZCBgZGlyZWN0X3VybGAg VVJMIGVudHJpZXMgdG8gaW1hZ2UgZGljdHMKKworKiBGcmkgSmFuIDEzIDIwMTcgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuMi41LTEKKy0gbmV3IHJlbGVhc2UgMy4y LjU6IHN1cHBvcnQgRG9ja2VyIHN0YWJsZSBuaWdodGx5IGNvbXBvc2VzCisKKyogVHVlIEphbiAx MCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjIuMy0zCist IENvbmRpdGlvbmFsaXplIGFyZ3BhcnNlIGRlcGVuZGVuY3kgc2luY2UgaXQgZGlzYXBwZWFyZWQg ZnJvbSBSYXdoaWRlCisKKyogV2VkIERlYyAyMSAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxp YW1AcmVkaGF0LmNvbT4gLSAzLjIuMy0yCistIHJlYnVpbGQgZm9yIFB5dGhvbiAzLjYKKworKiBX ZWQgRGVjIDE0IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMu Mi4zLTEKKy0gbmV3IHJlbGVhc2UgMy4yLjM6IHN1cHBvcnQgbGl2ZS1yZXNwaW5zIHBvc3QtcmVs ZWFzZSBsaXZlIHJlc3BpbiBjb21wb3NlcworCisqIE1vbiBEZWMgMDUgMjAxNiBBZGFtIFdpbGxp YW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy4xLjMtMgorLSBkb24ndCBpbmNsdWRlIHB5 dGhvbi1hcmdwYXJzZSBpbiBQeXRob24gMyBwYWNrYWdlIHJlcXVpcmVtZW50cworCisqIFdlZCBO b3YgMzAgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy4xLjMt MQorLSBuZXcgcmVsZWFzZSAzLjEuMzogZml4IHNvbWUgcmVsZWFzZSBudW1iZXIgY2hlY2sgcHJv YmxlbXMgKGluYy4gYSBjcmFzaCkKKworKiBXZWQgTm92IDMwIDIwMTYgQWRhbSBXaWxsaWFtc29u IDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuMS4yLTEKKy0gbmV3IHJlbGVhc2UgMy4xLjI6IGlt cHJvdmUgY2FjaGluZyB0byBoYW5kbGUgbm9uLXdyaXRhYmxlIGhvbWUKKworKiBUdWUgTm92IDI5 IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuMS4xLTEKKy0g bmV3IHJlbGVhc2UgMy4xLjE6IG9yaWdpbmFsIG1ldGFkYXRhIGZvciBzcGxpdCBjb21wb3Nlcywg Y2FjaGUgUERDIHF1ZXJpZXMKKworKiBXZWQgTm92IDIzIDIwMTYgQWRhbSBXaWxsaWFtc29uIDxh d2lsbGlhbUByZWRoYXQuY29tPiAtIDMuMC40LTEKKy0gbmV3IHJlbGVhc2UgMy4wLjQ6IHVzZSBg aW1hZ2VsaXN0YCBmaWxlcyBub3QgcnN5bmMgc2NyYXBpbmcKKworKiBTdW4gTm92IDIwIDIwMTYg QWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNy4yLTEKKy0gbmV3IHJl bGVhc2UgMi43LjI6IG9wdGlvbmFsbHkgcHJvdmlkZSBkaXN0cm8gaW4gYHBhcnNlX2NpZGAKKwor KiBXZWQgTm92IDA5IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAt IDIuNy4xLTEKKy0gbmV3IHJlbGVhc2UgMi43LjE6IGhhbmRsZSAnUkMnIGNvbXBvc2VzIGNvcnJl Y3RseQorCisqIE1vbiBPY3QgMTAgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhh dC5jb20+IC0gMi43LjAtMQorLSBuZXcgcmVsZWFzZSAyLjcuMDogbW9yZSBvc3RyZWUgc3R1ZmYs IGhhbmRsZSAnYWx0JyBzcGxpdAorCisqIE1vbiBPY3QgMTAgMjAxNiBBZGFtIFdpbGxpYW1zb24g PGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi42LjMtMQorLSBuZXcgcmVsZWFzZSAyLjYuMzogaGFu ZGxlIC1vc3RyZWUtIGFzIHdlbGwgYXMgLWR2ZC0gaW4gb3N0cmVlIGZpbGVuYW1lcworCisqIFRo dSBPY3QgMDYgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi42 LjItMQorLSBuZXcgcmVsZWFzZSAyLjYuMjogdXNlIGR2ZC1vc3RyZWUgdHlwZSB3aGVuIHN5bnRo ZXNpemluZyBtZXRhZGF0YQorCisqIFRodSBPY3QgMDYgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3 aWxsaWFtQHJlZGhhdC5jb20+IC0gMi42LjAtMQorLSBuZXcgcmVsZWFzZSAyLjYuMDogZHJvcCBQ b3N0UmVsZWFzZSBjbGFzcywgdHdlYWsgZXhwZWN0ZWQgaW1hZ2VzCisKKyogV2VkIE9jdCAwNSAy MDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjUuMC0xCistIG5l dyByZWxlYXNlIDIuNS4wOiB3b3JrYXJvdW5kIGEgcHVuZ2kgbWV0YWRhdGEgaXNzdWUsIGFkZCBp bWFnZSBpZGVudGlmaWVyCisKKyogRnJpIEF1ZyAyNiAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdp bGxpYW1AcmVkaGF0LmNvbT4gLSAyLjQuMTEtMQorLSBuZXcgcmVsZWFzZSAyLjQuMTE6IGNsaSBl eGl0cyBjbGVhbmx5IGlmIG5vIGNvbXBsZXRlIGNvbXBvc2UgZm91bmQKKworKiBUdWUgSnVsIDE5 IDIwMTYgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdAbGlzdHMuZmVkb3JhcHJv amVjdC5vcmc+IC0gMi40LjEwLTIKKy0gaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0No YW5nZXMvQXV0b21hdGljX1Byb3ZpZGVzX2Zvcl9QeXRob25fUlBNX1BhY2thZ2VzCisKKyogVHVl IEp1biAyOCAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjQu MTAtMQorLSBuZXcgcmVsZWFzZSAyLjQuMTA6IHN1cHBvcnQgZm9yIFB1bmdpIDQgMiBXZWVrIEF0 b21pYyBjb21wb3NlcworCisqIE1vbiBNYXkgMzAgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxs aWFtQHJlZGhhdC5jb20+IC0gMi40LjktMQorLSBuZXcgcmVsZWFzZSAyLjQuOTogaGVscGVycy5w YXJzZV9jaWQgcmFpc2VzIFZhbHVlRXJyb3IgaWYgY2lkIGlzIGludmFsaWQKKworKiBNb24gTWF5 IDMwIDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNC44LTEK Ky0gbmV3IHJlbGVhc2UgMi40Ljg6IGVuc3VyZSBSZWxlYXNlcyBhbHdheXMgaGF2ZSBhIGBsYWJl bGAKKworKiBXZWQgTWF5IDA0IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQu Y29tPiAtIDIuNC43LTEKKy0gbmV3IHJlbGVhc2UgMi40LjcgKHJlbW92ZSBhIHN0cmF5IGRlYnVn IHByaW50KQorCisqIFRodSBBcHIgMjggMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJl ZGhhdC5jb20+IC0gMi40LjYtMQorLSBuZXcgcmVsZWFzZSAyLjQuNiAoaGFuZGxlIDItd2VlayBB dG9taWMgQ0lEcyBpbiBnZXRfcmVsZWFzZSkKKworKiBUaHUgQXByIDE0IDIwMTYgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNC41LTEKKy0gbmV3IHJlbGVhc2UgMi40 LjUgKGFsbG93IGlnbm9yaW5nIGFyY2ggZm9yIGhlbHBlcnMuZ2V0X3dlaWdodCkKKworKiBTdW4g QXByIDEwIDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNC40 LTEKKy0gbmV3IHJlbGVhc2UgMi40LjQgKGNvdXBsZSBvZiBmaXhlcy9pbXByb3ZlbWVudHMgZm9y IGZlZG9yYV9uaWdodGxpZXMpCisKKyogV2VkIE1hciAzMCAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8 YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjQuMy0xCistIG5ldyByZWxlYXNlIDIuNC4zIChyZS1h ZGQgbWlsZXN0b25lIHJlbGVhc2Ugc3VwcG9ydCkKKworKiBXZWQgTWFyIDMwIDIwMTYgQWRhbSBX aWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNC4yLTEKKy0gbmV3IHJlbGVhc2Ug Mi40LjIgKHRlbXAgZ2V0X3BhY2thZ2VfbnZyYXMgd29ya2Fyb3VuZCBmb3IgUERDIHByb2JsZW0p CisKKyogTW9uIE1hciAyMSAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNv bT4gLSAyLjQuMS0xCistIG5ldyByZWxlYXNlIDIuNC4xIChDTEkgc2VhcmNoIGJ5IGNpZCAvIGxh YmVsLCBnZXRfcGFja2FnZV9udnJhcykKKy0gZW5hYmxlIHRlc3RzCisKKyogVGh1IE1hciAxNyAy MDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjMuMC0xCistIG5l dyByZWxlYXNlIDIuMy4wIChkcm9wICdwYXlsb2FkJywgc3VwcG9ydCBjYW5kaWRhdGVzIHN5bmNl ZCB0byBhbHQpCisKKyogVGh1IE1hciAxNyAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1A cmVkaGF0LmNvbT4gLSAyLjIuMy0xCistIG5ldyByZWxlYXNlIDIuMi4zIChmaXggYSBnZXRfcmVs ZWFzZSBidWcgd2hpY2ggYnJva2UgY2hlY2stY29tcG9zZSkKKworKiBXZWQgTWFyIDE2IDIwMTYg QWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuMi4yLTEKKy0gbmV3IHJl bGVhc2UgMi4yLjIgKGZpeCBnZXRfc2l6ZSBmb3IgUHl0aG9uIDMpCisgICAgCisqIFdlZCBNYXIg MTYgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi4yLjEtMQor LSBuZXcgcmVsZWFzZSAyLjIuMSAocXVpdGUgYmlnIGNoYW5nZXMgdG8gUHVuZ2kgNCBjb21wb3Nl IGhhbmRsaW5nKQorCisqIFRodSBNYXIgMDMgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFt QHJlZGhhdC5jb20+IC0gMi4xLjEtMQorLSBuZXcgcmVsZWFzZSAyLjEuMSAoZml4IGNoZWNrX2V4 cGVjdGVkKQorCisqIFRodSBNYXIgMDMgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJl ZGhhdC5jb20+IC0gMi4xLjAtMgorLSB2ZXJzaW9uIHRoZSBweXRob24yLWZlZGZpbmQgYW5kIHB5 dGhvbi1mZWRmaW5kIHByb3ZpZGVzCisKKyogV2VkIE1hciAwMiAyMDE2IEFkYW0gV2lsbGlhbXNv biA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjEuMC0xCistIG5ldyByZWxlYXNlIDIuMS4wICh2 YXJpb3VzIGJ1Z2ZpeGVzKQorLSB0d2lkZGxlIGRlc2NyaXB0aW9uIGEgYml0CisKKyogTW9uIEZl YiAyOSAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjAuMC0x CistIG5ldyByZWxlYXNlIDIuMC4wIChtYWpvciByZXdyaXRlIGZvciBQdW5naSA0KQorLSBhZGQg cHJvZHVjdG1kIHJlcXVpcmVtZW50CisKKyogV2VkIEZlYiAwMyAyMDE2IEZlZG9yYSBSZWxlYXNl IEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gMS42LjItMworLSBSZWJ1 aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzI0X01hc3NfUmVi dWlsZAorCisqIFR1ZSBOb3YgMTAgMjAxNSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVs LWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSAxLjYuMi0yCistIFJlYnVpbHQgZm9yIGh0 dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9DaGFuZ2VzL3B5dGhvbjMuNQorCisqIEZyaSBP Y3QgMDIgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS42LjIt MQorLSBuZXcgcmVsZWFzZSAxLjYuMjogYWRqdXN0IGZvciBuZXcgUG9zdHJlbGVhc2UgbmlnaHRs eSBsb2NhdGlvbgorCisqIFR1ZSBTZXAgMjkgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFt QHJlZGhhdC5jb20+IC0gMS42LjEtMQorLSBuZXcgcmVsZWFzZSAxLjYuMTogYmVoaW5kIHRoZSBz Y2VuZXMgc3R1ZmYsIGRvY3MgY2hhbmdlcworCisqIFNhdCBTZXAgMTkgMjAxNSBBZGFtIFdpbGxp YW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS42LTEKKy0gbmV3IHJlbGVhc2UgMS42OiBp bWFnZSB0d2Vha3MsIHBvc3QtcmVsZWFzZSBkYWlseSBoYW5kbGluZworCisqIFRodSBTZXAgMDMg MjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS41LjEtMQorLSBu ZXcgcmVsZWFzZSAxLjUuMTogaW1hZ2UgJ3NpemUnIHByb3BlcnR5LCBtb3JlIGltYWdlIHBhcnNp bmcgdHdlYWtzCisKKyogVGh1IEF1ZyAyNyAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1A cmVkaGF0LmNvbT4gLSAxLjUtMQorLSBuZXcgcmVsZWFzZSAxLjU6IHJzeW5jIHJldHJpZXMsIHJl bGVhc2Ugd2FpdCwgdGVzdHMsIGV4cGVjdGVkIGltYWdlIGNoYW5nZXMKKworKiBGcmkgQXVnIDIx IDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuNC4yLTEKKy0g bmV3IHJlbGVhc2UgMS40LjI6IHB5MyBmaXgKKworKiBGcmkgQXVnIDIxIDIwMTUgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuNC4xLTEKKy0gbmV3IHJlbGVhc2UgMS40 LjE6IGJyYW5jaGVkIGd1ZXNzaW5nLCByc3luYyBjbGVhbnVwcywgYnVnZml4ZXMKKworKiBUaHUg QXVnIDIwIDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuNC0x CistIG5ldyByZWxlYXNlIDEuNDogdXNlIG11bHRpY2FsbCBpbnN0ZWFkIG9mIG11bHRpcHJvY2Vz cywgaW1wcm92ZSBjYWNoaW5nCisKKyogVGh1IEF1ZyAyMCAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8 YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjMtMQorLSBuZXcgcmVsZWFzZSAxLjM6IGNoZWNrIGNv bXBvc2Ugc3RhdHVzLCBpbWFnZSBwYXJzaW5nIGltcHJvdmVtZW50cywgc3BlZWR1cHMKKworKiBU aHUgSnVsIDIzIDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEu Mi0xCistIG5ldyByZWxlYXNlIDEuMjogcHJvcGVyIGxvZ2dpbmcsIHNvbWUgc21hbGwgZml4ZXMK KworKiBXZWQgSnVuIDE3IDIwMTUgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdA bGlzdHMuZmVkb3JhcHJvamVjdC5vcmc+IC0gMS4xLjUtMgorLSBSZWJ1aWx0IGZvciBodHRwczov L2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzIzX01hc3NfUmVidWlsZAorCisqIFRodSBB cHIgMzAgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4xLjUt MQorLSBuZXcgcmVsZWFzZTogYWRkIGEgJ2dlbmVyaWMgVVJMJyBvdXRwdXQsIGFsbG93IC0tbWls ZXN0b25lIEJyYW5jaGVkL1Jhd2hpZGUKKworKiBUaHUgQXByIDIzIDIwMTUgQWRhbSBXaWxsaWFt c29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuMS40LTEKKy0gbmV3IHJlbGVhc2U6IGRyb3Ag c2hlYmFuZ3MgZnJvbSBub24tZXhlYyBmaWxlcywgZml4IHRoZW0gaW4gZXhlYyBmaWxlcworLSBy ZW5hbWUgJ2ZlZGZpbmQzJyB0byAncHl0aG9uMy1mZWRmaW5kJworLSBkcm9wIHRoZSBleGVjdXRh YmxlcyBmcm9tIHRoZSBweXRob24zIHBhY2thZ2UgKG5vdCByZWFsbHkgbmVlZGVkKQorCisqIFRo dSBBcHIgMTYgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4x LjMtMQorLSBuZXcgcmVsZWFzZTogZHJvcCBidW5kbGVkIGNhY2hlZF9wcm9wZXJ0eQorCisqIFR1 ZSBNYXIgMTAgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4x LjItMQorLSBuZXcgcmVsZWFzZTogZml4IHBhdGggZm9yIG1pbGVzdG9uZSByZWxlYXNlcworCisq IFRodSBGZWIgMjYgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0g MS4xLjEtMQorLSAxLjEuMTogaGFuZGxlIGEgcHl0aG9uMyBhcmdwYXJzZSBidWcgY2F1c2luZyBh IGNyYXNoIHdoZW4gbm8gc3ViY21kIGdpdmVuCisKKyogVGh1IEZlYiAyNiAyMDE1IEFkYW0gV2ls bGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjEuMC0xCistIG5ldyByZWxlYXNlIDEu MS4wOiBjbGVhbmVyIFVSTCBwcmVmIGltcGxlbWVudGF0aW9uLCBQeXRob24gMyBzdXBwb3J0Cist IGFkZCBhIGZlZGZpbmQzIHBhY2thZ2UgZm9yIFB5dGhvbiAzCisKKyogV2VkIEZlYiAyNSAyMDE1 IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjAuOC0xCistIDEuMC44 OiB1c2UgZGwuZnAubyBub3QgZG93bmxvYWQuZnAubyBVUkxzIGZvciBUQy9SQyBpbWFnZXMKKwor KiBXZWQgRmViIDI1IDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAt IDEuMC43LTEKKy0gMS4wLjc6IGZpeCBhIGJ1ZyBpbiBmaW5kaW5nIG5pZ2h0bHkgaW1hZ2VzIGJ5 IHR5cGUKKworKiBXZWQgRmViIDE4IDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRo YXQuY29tPiAtIDEuMC42LTEKKy0gY29uc29saWRhdGUgaW1hZ2UgdmVyc2lvbmluZyB3aXRoIHB5 dGhvbi13aWtpdGNtcy9yZWx2YWwsIGJ1Z2ZpeGVzCisKKyogVGh1IEZlYiAxMiAyMDE1IEFkYW0g V2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjAuNS0xCistIG5ldyByZWxlYXNl IDEuMC41OiBpbWFnZSBkZXRlY3Rpb24gYnVnZml4ZXMsIG5vIGtvamkgZGVwLCBjbGVhbnVwcwor CisqIE1vbiBGZWIgMDkgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+ IC0gMS4wLjQtMQorLSBuZXcgcmVsZWFzZSAxLjAuNDogZml4IEVMIDYgY29tcGF0CisKKyogTW9u IEZlYiAwOSAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjAu My0xCistIG5ldyByZWxlYXNlIDEuMC4zOiBidWdmaXhlcywgUHl0aG9uIDIuNiAvIFJIRUwgNiBj b21wYXRpYmlsaXR5CisKKyogRnJpIEZlYiAwNiAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxp YW1AcmVkaGF0LmNvbT4gLSAxLjAuMi0xCistIG5ldyByZWxlYXNlIDEuMC4yOiBtaXNjLiBidWdm aXhlcyBhbmQgQ0xJIHJlb3JnCisKKyogRnJpIEZlYiAwNiAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8 YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjAuMS0xCistIGFkZCBwcGMgdG8gYXJjaGVzCisKKyog VGh1IEZlYiAwNSAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAx LjAtMQorLSBmaXJzdCBwYWNrYWdlIGJ1aWxkIG9mIGZlZGZpbmQKCmRpZmYgLS1naXQgYS9mZWRm aW5kLnNwZWMgYi9mZWRmaW5kLnNwZWMKaW5kZXggNzFlZGI2Mi4uMWIzMGQyYiAxMDA2NDQKLS0t IGEvZmVkZmluZC5zcGVjCisrKyBiL2ZlZGZpbmQuc3BlYwpAQCAtMSw0NSArMSwxNiBAQAotIyBJ ZiB0aGUgZGVmaW5pdGlvbiBpc24ndCBhdmFpbGFibGUgZm9yIHB5dGhvbjNfcGtndmVyc2lvbiwg ZGVmaW5lIGl0Ci0lez8hcHl0aG9uM19wa2d2ZXJzaW9uOiVnbG9iYWwgcHl0aG9uM19wa2d2ZXJz aW9uIDN9Ci0KLSMgRGlzYWJsZSBQeXRob24gMiBidWlsZHMgZm9yIEZlZG9yYSA+IDI5LCBFUEVM ID4gNwotJWlmIDAlez9mZWRvcmF9ID4gMjkgfHwgMCV7P3JoZWx9ID4gNwotJWJjb25kX3dpdGgg ICAgICAgICBweXRob24yCi0lZ2xvYmFsIG9ic29sZXRlMiAgIDEKLSVlbHNlCi0lYmNvbmRfd2l0 aG91dCAgICAgIHB5dGhvbjIKLSVnbG9iYWwgb2Jzb2xldGUyICAgMAotJWVuZGlmCi0KLSMgcGFj a2FnZXMgcmVxdWlyZWQgYXQgYm90aCB0ZXN0IHRpbWUgYW5kIHJ1biB0aW1lCi0lZ2xvYmFsIHRl c3RfcmVxdWlyZXMyIHB5dGhvbjItY2FjaGVkX3Byb3BlcnR5IHB5dGhvbjItcHJvZHVjdG1kIHB5 dGhvbjItc2l4IHB5dGhvbjItc2V0dXB0b29scwotJWdsb2JhbCB0ZXN0X3JlcXVpcmVzMyBweXRo b24le3B5dGhvbjNfcGtndmVyc2lvbn0tY2FjaGVkX3Byb3BlcnR5IHB5dGhvbiV7cHl0aG9uM19w a2d2ZXJzaW9ufS1wcm9kdWN0bWQgcHl0aG9uJXtweXRob24zX3BrZ3ZlcnNpb259LXNpeCBweXRo b24le3B5dGhvbjNfcGtndmVyc2lvbn0tc2V0dXB0b29scwotCiAlZ2xvYmFsIHNyY25hbWUgZmVk ZmluZAogCiBOYW1lOiAgICAgICAgICAgZmVkZmluZAogVmVyc2lvbjogICAgICAgIDQuNC40Ci1S ZWxlYXNlOiAgICAgICAgNCV7P2Rpc3R9CitSZWxlYXNlOiAgICAgICAgJWF1dG9yZWxlYXNlCiBT dW1tYXJ5OiAgICAgICAgRmVkb3JhIGNvbXBvc2UgYW5kIGltYWdlIGZpbmRlcgogCiBMaWNlbnNl OiAgICAgICAgR1BMdjMrCiBVUkw6ICAgICAgICAgICAgaHR0cHM6Ly9wYWd1cmUuaW8vZmVkb3Jh LXFhL2ZlZGZpbmQKIFNvdXJjZTA6ICAgICAgICBodHRwczovL2ZpbGVzLnB5dGhvbmhvc3RlZC5v cmcvcGFja2FnZXMvc291cmNlL2YvJXtzcmNuYW1lfS8le3NyY25hbWV9LSV7dmVyc2lvbn0udGFy Lmd6CiBCdWlsZEFyY2g6ICAgICAgbm9hcmNoCi0KLSVpZiAwJXs/d2l0aF9weXRob24yfQotQnVp bGRSZXF1aXJlczogIHB5dGhvbjItZGV2ZWwKLUJ1aWxkUmVxdWlyZXM6ICBweXRob24yLWZyZWV6 ZWd1bgotQnVpbGRSZXF1aXJlczogIHB5dGhvbjItcHl0ZXN0Ci1CdWlsZFJlcXVpcmVzOiAgcHl0 aG9uMi1tb2NrCi1CdWlsZFJlcXVpcmVzOiAgJXt0ZXN0X3JlcXVpcmVzMn0KLSVlbmRpZiAjIGlm IHdpdGhfcHl0aG9uMgotQnVpbGRSZXF1aXJlczogIHB5dGhvbiV7cHl0aG9uM19wa2d2ZXJzaW9u fS1kZXZlbAotQnVpbGRSZXF1aXJlczogIHB5dGhvbiV7cHl0aG9uM19wa2d2ZXJzaW9ufS1mcmVl emVndW4KLUJ1aWxkUmVxdWlyZXM6ICBweXRob24le3B5dGhvbjNfcGtndmVyc2lvbn0tc2V0dXB0 b29scwotQnVpbGRSZXF1aXJlczogIHB5dGhvbiV7cHl0aG9uM19wa2d2ZXJzaW9ufS1weXRlc3QK LUJ1aWxkUmVxdWlyZXM6ICBweXRob24le3B5dGhvbjNfcGtndmVyc2lvbn0tbW9jawotQnVpbGRS ZXF1aXJlczogICV7dGVzdF9yZXF1aXJlczN9Ci1SZXF1aXJlczogIHB5dGhvbiV7cHl0aG9uM19w a2d2ZXJzaW9ufS1mZWRmaW5kCitCdWlsZFJlcXVpcmVzOiAgcHlwcm9qZWN0LXJwbS1tYWNyb3MK K1JlcXVpcmVzOiAgICAgICBweXRob24le3B5dGhvbjNfcGtndmVyc2lvbn0tZmVkZmluZAogCiAl ZGVzY3JpcHRpb24KIEZlZG9yYSBGaW5kZXIgZmluZHMgRmVkb3JhLiBGb3Igbm93LCB0aGF0IG1l YW5zIGl0IGZpbmRzIEZlZG9yYSBpbWFnZXMKQEAgLTQ3LDMwICsxOCw5IEBAIEZlZG9yYSBGaW5k ZXIgZmluZHMgRmVkb3JhLiBGb3Igbm93LCB0aGF0IG1lYW5zIGl0IGZpbmRzIEZlZG9yYSBpbWFn ZXMKIG5pZ2h0bHkgY29tcG9zZXMuIFRoZSBmZWRmaW5kIHBhY2thZ2UgcHJvdmlkZXMgYSBzaW1w bGUgQ0xJIGZvciBzaG93aW5nCiBpbWFnZSBVUkxzLgogCi0laWYgMCV7P3dpdGhfcHl0aG9uMn0K LSVwYWNrYWdlIC1uIHB5dGhvbjItZmVkZmluZAotU3VtbWFyeTogICAgICAgIEZlZG9yYSBjb21w b3NlIGFuZCBpbWFnZSBmaW5kZXIgbGlicmFyeQotJXs/cHl0aG9uX3Byb3ZpZGU6JXB5dGhvbl9w cm92aWRlIHB5dGhvbjItZmVkZmluZH0KLVJlcXVpcmVzOiAgICAgICAle3Rlc3RfcmVxdWlyZXMy fQotIyBOb3QgYXZhaWxhYmxlIG9uIEVQRUwsIHNvIG1hZGUgb3B0aW9uYWwgaW4gY29kZQotIyBS ZWNvbW1lbmRzOiAgIHB5dGhvbi1zdWJwcm9jZXNzMzIKLQotJWRlc2NyaXB0aW9uIC1uIHB5dGhv bjItZmVkZmluZAotRmVkb3JhIEZpbmRlciBmaW5kcyBGZWRvcmEuIEZvciBub3csIHRoYXQgbWVh bnMgaXQgZmluZHMgRmVkb3JhIGltYWdlcwotLSBmb3Igc3RhYmxlIHJlbGVhc2VzLCBtaWxlc3Rv bmUgcHJlLXJlbGVhc2VzLCBjYW5kaWRhdGUgY29tcG9zZXMsIGFuZAotbmlnaHRseSBjb21wb3Nl cy4gVGhlIGZlZGZpbmQgbGlicmFyeSBwcm92aWRlcyBhIGhhbmR5IGludGVyZmFjZSBmb3IKLWlu dGVyYWN0aW5nIHdpdGggRmVkb3JhIGNvbXBvc2VzIGFuZCBkaXNjb3ZlcmluZyB2YXJpb3VzIHBy b3BlcnRpZXMgb2YKLXRoZW0sIGFsb25nIHdpdGggc29tZSBtaXNjZWxsYW5lb3VzIGhlbHBlciBm dW5jdGlvbnMuIFRoaXMgaXMgdGhlCi1QeXRob24gMiBsaWJyYXJ5IHBhY2thZ2UuCi0lZW5kaWYg IyBpZiB3aXRoX3B5dGhvbjIKLQogJXBhY2thZ2UgLW4gcHl0aG9uJXtweXRob24zX3BrZ3ZlcnNp b259LWZlZGZpbmQKIFN1bW1hcnk6ICAgICAgICBGZWRvcmEgRmluZGVyIGZpbmRzIEZlZG9yYSAo dXNpbmcgUHl0aG9uIDMpCiAlez9weXRob25fcHJvdmlkZTolcHl0aG9uX3Byb3ZpZGUgcHl0aG9u JXtweXRob24zX3BrZ3ZlcnNpb259LWZlZGZpbmR9Ci0laWYgMCV7P29ic29sZXRlMn0KLU9ic29s ZXRlczogICAgICBweXRob24yLWZlZGZpbmQgPCAle3ZlcnNpb259LSV7cmVsZWFzZX0KLSVlbmRp ZiAjIG9ic29sZXRlMgotUmVxdWlyZXM6ICAgICAgICV7dGVzdF9yZXF1aXJlczN9CiAKICVkZXNj cmlwdGlvbiAtbiBweXRob24le3B5dGhvbjNfcGtndmVyc2lvbn0tZmVkZmluZAogRmVkb3JhIEZp bmRlciBmaW5kcyBGZWRvcmEuIEZvciBub3csIHRoYXQgbWVhbnMgaXQgZmluZHMgRmVkb3JhIGlt YWdlcwpAQCAtODMsNDMwICszMywzNSBAQCBQeXRob24gMyBsaWJyYXJ5IHBhY2thZ2UuCiAKICVw cmVwCiAlYXV0b3NldHVwIC1uICV7c3JjbmFtZX0tJXt2ZXJzaW9ufSAtcDEKLSMgdGhpcyBpcyBu ZWVkZWQgZm9yIGRvaW5nIHNkaXN0LCBidXQgbm90IGZvciBhbnl0aGluZyBlbHNlCi1zZWQgLWkg LWUgJy9zZXR1cHRvb2xzX2dpdC9kJyBzZXR1cC5weQotcm0gLXJmICV7cHkzZGlyfQotY3AgLWEg LiAle3B5M2Rpcn0KLWZpbmQgJXtweTNkaXJ9IC1uYW1lICcqLnB5JyB8IHhhcmdzIHNlZCAtaSAn MXN8XiMhLipweXRob24yfCMhJXtfX3B5dGhvbjN9fCcKKyMgc2V0dXB0b29scy1zY20gaXMgbmVl ZGVkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uLCBidXQgbm90CisjIGZvciBwYWNr YWdpbmcsIHdoaWNoICpzdGFydHMqIGZyb20gdGhlIHNvdXJjZSBkaXN0cmlidXRpb24KK3NlZCAt aSAtZSAncy4sICJzZXR1cHRvb2xzLXNjbSIuLmcnIHB5cHJvamVjdC50b21sCisjIEJlZm9yZSBG MzUsIHRoZXJlJ3Mgbm8gJ2NvdmVyYWdlW3RvbWxdJywganVzdCAnY292ZXJhZ2UnIGNhbiByZWFk IFRPTUwKKyVpZiAwJXs/ZmVkb3JhfSA8IDM1CitzZWQgLWkgLWUgJ3MsY292ZXJhZ2VcW3RvbWxc XSxjb3ZlcmFnZSxnJyB0ZXN0cy5yZXF1aXJlcyB0b3gucmVxdWlyZXMKKyVlbmRpZgorCislZ2Vu ZXJhdGVfYnVpbGRyZXF1aXJlcworJXB5cHJvamVjdF9idWlsZHJlcXVpcmVzIC10CiAKICVidWls ZAotJWlmIDAlez93aXRoX3B5dGhvbjJ9Ci0lcHkyX2J1aWxkCi0lZW5kaWYgIyB3aXRoX3B5dGhv bjIKLXB1c2hkICV7cHkzZGlyfQotJXB5M19idWlsZAotcG9wZAorJXB5cHJvamVjdF93aGVlbAog CiAlaW5zdGFsbAotcm0gLXJmICV7YnVpbGRyb290fQotCi0jIFdlIHdhbnQgdGhlIFB5dGhvbiAz IGV4ZWN1dGFibGUgdG8gYmUgZGVmYXVsdCB3aGVyZSBpdCBidWlsZHMsIHNvCi0jIGdvIHdpdGgg dGhpcyBpbnN0YWxsIG9yZGVyCi0laWYgMCV7P3dpdGhfcHl0aG9uMn0KLSVweTJfaW5zdGFsbAot JWVuZGlmICMgd2l0aF9weXRob24yCi1wdXNoZCAle3B5M2Rpcn0KLSVweTNfaW5zdGFsbAotcG9w ZAorJXB5cHJvamVjdF9pbnN0YWxsCiAKICVjaGVjawotJWlmIDAlez93aXRoX3B5dGhvbjJ9Ci0l e19fcHl0aG9uMn0gc2V0dXAucHkgdGVzdAotJWVuZGlmICMgd2l0aF9weXRob24yCi1wdXNoZCAl e3B5M2Rpcn0KLSV7X19weXRob24zfSBzZXR1cC5weSB0ZXN0Ci1wb3BkCisldG94CiAKICVmaWxl cwogJWRvYyBSRUFETUUubWQgQ0hBTkdFTE9HLm1kCiAlbGljZW5zZSBDT1BZSU5HCiAle19iaW5k aXJ9L2ZlZGZpbmQKIAotJWlmIDAlez93aXRoX3B5dGhvbjJ9Ci0lZmlsZXMgLW4gcHl0aG9uMi1m ZWRmaW5kCi0lZG9jIFJFQURNRS5tZCBDSEFOR0VMT0cubWQKLSVsaWNlbnNlIENPUFlJTkcKLSV7 cHl0aG9uMl9zaXRlbGlifS8le3NyY25hbWV9KgotJWVuZGlmICMgd2l0aF9weXRob24yCi0KICVm aWxlcyAtbiBweXRob24le3B5dGhvbjNfcGtndmVyc2lvbn0tZmVkZmluZAogJWRvYyBSRUFETUUu bWQgQ0hBTkdFTE9HLm1kCiAlbGljZW5zZSBDT1BZSU5HCiAle3B5dGhvbjNfc2l0ZWxpYn0vJXtz cmNuYW1lfSoKIAotCiAlY2hhbmdlbG9nCi0qIFdlZCBKdWwgMjEgMjAyMSBGZWRvcmEgUmVsZWFz ZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDQuNC40LTQKLS0gUmVi dWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8zNV9NYXNzX1Jl YnVpbGQKLQotKiBGcmkgSnVuIDA0IDIwMjEgUHl0aG9uIE1haW50IDxweXRob24tbWFpbnRAcmVk aGF0LmNvbT4gLSA0LjQuNC0zCi0tIFJlYnVpbHQgZm9yIFB5dGhvbiAzLjEwCi0KLSogVHVlIEph biAyNiAyMDIxIEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVj dC5vcmc+IC0gNC40LjQtMgotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3Jn L3dpa2kvRmVkb3JhXzM0X01hc3NfUmVidWlsZAotCi0qIFNhdCBPY3QgMjQgMjAyMCBBZGFtIFdp bGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC40LjQtMQotLSBOZXcgcmVsZWFzZSA0 LjQuNDogdXNlIGJlc3Bva2UgcmVsZWFzZSBtZXRhZGF0YSBpbnN0ZWFkIG9mIEJvZGhpCi0KLSog TW9uIEp1bCAyNyAyMDIwIEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3Jh cHJvamVjdC5vcmc+IC0gNC40LjMtMgotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2pl Y3Qub3JnL3dpa2kvRmVkb3JhXzMzX01hc3NfUmVidWlsZAotCi0qIFdlZCBKdWwgMjIgMjAyMCBB ZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC40LjMtMQotLSBOZXcgcmVs ZWFzZSA0LjQuMzogZG9uJ3QgZGVsZXRlIF9wZGNjaWQgcHJvcGVydHksIGp1c3QgdW5zZXQgaXQK LQotKiBUdWUgTWF5IDI2IDIwMjAgTWlybyBIcm9uxI1vayA8bWhyb25jb2tAcmVkaGF0LmNvbT4g LSA0LjQuMi0yCi0tIFJlYnVpbHQgZm9yIFB5dGhvbiAzLjkKLQotKiBGcmkgTWF5IDAxIDIwMjAg QWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQuNC4yLTEKLS0gTmV3IHJl bGVhc2UgNC40LjI6IEZpeCBnZXRfY3VycmVudF9yZWxlYXNlIGZvciBuZXcgJ0VMTicgcmVsZWFz ZQotCi0qIEZyaSBGZWIgMjEgMjAyMCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5j b20+IC0gNC40LjEtMQotLSBOZXcgcmVsZWFzZSA0LjQuMTogZHJvcCBQeXRob24gMi42IHN1cHBv cnQsIHVwZGF0ZSB0ZXN0cywgdXNlIEJvZGhpIG5vdCBwa2dkYgotLSBTaW1wbGlmeSBzcGVjIGJ5 IGRyb3BwaW5nIEVMIDYgc3VwcG9ydCAoY2FuJ3QgYnVpbGQgb24gRUwgNiBub3cgYW55d2F5KQot Ci0qIFR1ZSBKYW4gMjggMjAyMCBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZl ZG9yYXByb2plY3Qub3JnPiAtIDQuMy4wLTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFw cm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8zMl9NYXNzX1JlYnVpbGQKLQotKiBUdWUgSmFuIDA3IDIw MjAgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMy4wLTEKLS0gTmV3 IHJlbGVhc2UgNC4zLjA6IGVuaGFuY2UgbWV0YWRhdGEgZm9yIGNvbXBvc2VzIHdpdGhvdXQgaXQK LSAgKyBSZXRyaWV2ZSBtZXRhZGF0YSBmcm9tIFBEQyBmb3Igb2xkZXIgbmlnaHRseSBhbmQgY2Fu ZGlkYXRlcwotICArIFJldHJpZXZlIGltYWdlIHNpemVzIGZyb20gaW1hZ2VsaXN0IGZpbGVzIGZv ciBzdGFibGUgcmVsZWFzZXMKLQotKiBUdWUgT2N0IDAxIDIwMTkgQWRhbSBXaWxsaWFtc29uIDxh d2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMi44LTEKLS0gTmV3IHJlbGVhc2UgNC4yLjg6IGV4cGly ZSBjb2xsZWN0aW9ucyBjYWNoZSBhZnRlciBhIGRheQotCi0qIE1vbiBBdWcgMTkgMjAxOSBNaXJv IEhyb27EjW9rIDxtaHJvbmNva0ByZWRoYXQuY29tPiAtIDQuMi43LTMKLS0gUmVidWlsdCBmb3Ig UHl0aG9uIDMuOAotCi0qIFRodSBKdWwgMjUgMjAxOSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmlu ZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDQuMi43LTIKLS0gUmVidWlsdCBmb3IgaHR0 cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8zMV9NYXNzX1JlYnVpbGQKLQotKiBX ZWQgSnVsIDEwIDIwMTkgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQu Mi43LTEKLS0gTmV3IHJlbGVhc2UgNC4yLjc6IGZpeCAndmVyc2lvbicgZm9yIHVwZGF0ZSBjb21w b3NlcwotCi0qIFR1ZSBKdWwgMDkgMjAxOSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhh dC5jb20+IC0gNC4yLjYtMQotLSBOZXcgcmVsZWFzZSA0LjIuNjogdXBkYXRlIHRoZSByZXNwaW4g aW1hZ2UgcmVnZXgsIGFnYWluCi0KLSogVHVlIEp1biAyNSAyMDE5IEFkYW0gV2lsbGlhbXNvbiA8 YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0LjIuNS0xCi0tIE5ldyByZWxlYXNlIDQuMi41OgotICAq IEZpeCBleHBlY3RlZCBpbWFnZXMgZm9yIEYzMCsgQnJhbmNoZWQgLyBSYXdoaWRlIG5pZ2h0bGll cyB0b28KLSAgKiBSZXN1cnJlY3Qgb2xkIHByZXZpb3VzX3JlbGVhc2UgZHVlIHRvIFBEQyBpbXBv cnQgYnVnCi0KLSogTW9uIEp1biAyNCAyMDE5IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVk aGF0LmNvbT4gLSA0LjIuMy0xCi0tIE5ldyByZWxlYXNlIDQuMi4zOiBmaXggZXhwZWN0ZWQgaW1h Z2VzIGZvciBGMzArIHVwZGF0ZSBjb21wb3NlcwotCi0qIEZyaSBNYXIgMDggMjAxOSBBZGFtIFdp bGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4yLjItMQotLSBOZXcgcmVsZWFzZSA0 LjIuMjogd29yayBjb3JyZWN0bHkgd2l0aCBwcm9kdWN0bWQgMS4yMAotCi0qIFRodSBKYW4gMzEg MjAxOSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3Jn PiAtIDQuMi4xLTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtp L0ZlZG9yYV8zMF9NYXNzX1JlYnVpbGQKLQotKiBUaHUgTm92IDIyIDIwMTggQWRhbSBXaWxsaWFt c29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMi4xLTEKLS0gTmV3IHJlbGVhc2UgNC4yLjE6 IG1ha2UgdGVzdCBzdWl0ZSB3b3JrIHdpdGhvdXQgUHl0aG9uIDIKLS0gRGlzYWJsZSBQeXRob24g MiBidWlsZCBvbiBGMzArLCBFTDgrCi0KLSogRnJpIEp1bCAxMyAyMDE4IEZlZG9yYSBSZWxlYXNl IEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNC4yLjAtMwotLSBSZWJ1 aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzI5X01hc3NfUmVi dWlsZAotCi0qIFR1ZSBKdW4gMTkgMjAxOCBNaXJvIEhyb27EjW9rIDxtaHJvbmNva0ByZWRoYXQu Y29tPiAtIDQuMi4wLTIKLS0gUmVidWlsdCBmb3IgUHl0aG9uIDMuNwotCi0qIFR1ZSBKdW4gMDUg MjAxOCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4yLjAtMQotLSBO ZXcgcmVsZWFzZSA0LjIuMDogc3VwcG9ydCBzZXZlcmFsIG5ldyBjb21wb3NlIHR5cGVzCi0KLSog TW9uIE1heSAyOCAyMDE4IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSA0 LjEuMy0xCi0tIE5ldyByZWxlYXNlIDQuMS4zOiBoYW5kbGUgdW5leHBlY3RlZCBuaWdodGx5IGNv bXBvc2UgbW92ZQotCi0qIE1vbiBNYXkgMjEgMjAxOCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFt QHJlZGhhdC5jb20+IC0gNC4xLjItMQotLSBOZXcgcmVsZWFzZSA0LjEuMjogZml4ZXMgZm9yIGxp dmUtcmVzcGlucyByZWxlYXNlcwotCi0qIFR1ZSBNYXIgMDYgMjAxOCBBZGFtIFdpbGxpYW1zb24g PGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4xLjEtMQotLSBOZXcgcmVsZWFzZSA0LjEuMTogYWRq dXN0bWVudHMgZm9yIEF0b21pYyBjb21wb3NlIHZhcmlhbnQgcmVuYW1lcwotCi0qIFR1ZSBGZWIg MjAgMjAxOCBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gNC4xLjAtMQot LSBOZXcgcmVsZWFzZSA0LjEuMDogYWRkIGBnZXRfcGFja2FnZV9uZXZyYXNfcGRjYAotLSBVcGRh dGUgYWxsIFB5dGhvbiAyIGRlcGVuZGVuY2llcyB0byAncHl0aG9uMi1mb28nIGZvcm1hdAotCi0q IFdlZCBGZWIgMDcgMjAxOCBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9y YXByb2plY3Qub3JnPiAtIDQuMC4wLTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9q ZWN0Lm9yZy93aWtpL0ZlZG9yYV8yOF9NYXNzX1JlYnVpbGQKLQotKiBGcmkgSmFuIDE5IDIwMTgg QWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDQuMC4wLTEKLS0gTmV3IHJl bGVhc2UgNC4wLjA6IG11bHRpcGxlIGNoYW5nZXMsIHNlZSBDSEFOR0VMT0cKLQotKiBUdWUgTm92 IDIxIDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuOC4zLTEK LS0gTmV3IHJlbGVhc2UgMy44LjM6IGZpeCBtb2R1bGFyIGdldF9wYWNrYWdlX252cmFzIGhhcmRl cgotCi0qIFdlZCBOb3YgMTUgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5j b20+IC0gMy44LjItMQotLSBOZXcgcmVsZWFzZSAzLjguMjogZml4IG1vZHVsYXIgZ2V0X3BhY2th Z2VfbnZyYXMgYW5kIGh0dHBzX2dlbmVyaWNfdXJsCi0KLSogVHVlIE5vdiAxNCAyMDE3IEFkYW0g V2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjguMS0xCi0tIE5ldyByZWxlYXNl IDMuOC4xOiBnZXQgcmVsZWFzZSBpbmZvIGZyb20gcGtnZGIgY29sbGVjdGlvbnMgYWdhaW4KLQot KiBUdWUgTm92IDA3IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAt IDMuOC4wLTEKLS0gTmV3IHJlbGVhc2UgMy44LjA6IGhhbmRsZSBtb2R1bGFyIGNhbmRpZGF0ZSBj b21wb3NlcwotCi0qIEZyaSBPY3QgMjcgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJl ZGhhdC5jb20+IC0gMy43LjEtMQotLSBOZXcgcmVsZWFzZSAzLjcuMTogaGFuZGxlIG1pc3Npbmcg J3VwZGF0ZXMtdGVzdGluZycgcmVsZWFzZSB0eXBlCi0KLSogRnJpIE9jdCAyNyAyMDE3IEFkYW0g V2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjcuMC0xCi0tIE5ldyByZWxlYXNl IDMuNy4wOiBuZXcgQ0lEIHBhcnNlciwgdXBkYXRlIHN1cHBvcnRlZCBjb21wb3NlIHR5cGVzCi0K LSogTW9uIE9jdCAxNiAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4g LSAzLjYuNC0xCi0tIE5ldyByZWxlYXNlIDMuNi40OiB1cGRhdGUgQ0hBTkdFTE9HIGZvciAzLjYu MyBhbmQgMy42LjQKLQotKiBGcmkgT2N0IDEzIDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlh bUByZWRoYXQuY29tPiAtIDMuNi4zLTEKLS0gTmV3IHJlbGVhc2UgMy42LjM6IGZpeCBleHBlY3Rl ZCBpbWFnZXMgZm9yIG1vZHVsYXIgY29tcG9zZXMKLQotKiBNb24gU2VwIDExIDIwMTcgQWRhbSBX aWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNi4yLTEKLS0gTmV3IHJlbGVhc2Ug My42LjI6IGZpeCBQREMgcXVlcmllcyBhbmQgdXBkYXRlIHN1YnZhcmlhbnQgbGlzdAotCi0qIEZy aSBBdWcgMTggMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy42 LjEtMQotLSBOZXcgcmVsZWFzZSAzLjYuMTogaGFyZCBjb2RlICdjdXJyZW50IHJlbGVhc2UnIGlu Zm8gZm9yIG5vdwotCi0qIFdlZCBBdWcgMTYgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFt QHJlZGhhdC5jb20+IC0gMy42LjAtMQotLSBOZXcgcmVsZWFzZSAzLjYuMDogbW9kdWxhciBjb21w b3NlIHN1cHBvcnQKLQotKiBXZWQgSnVsIDI2IDIwMTcgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJp bmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSAzLjUuNC0zCi0tIFJlYnVpbHQgZm9yIGh0 dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMjdfTWFzc19SZWJ1aWxkCi0KLSog VHVlIEp1bCAyNSAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAz LjUuNC0yCi0tIEJ1bXAgcmVsZWFzZSBhcyAzLjUuNC0xIGZvciBFUEVMIDcgZ290IHRyYXNoY2Fu bmVkCi0KLSogVHVlIEFwciAxOCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0 LmNvbT4gLSAzLjUuNC0xCi0tIE5ldyByZWxlYXNlIDMuNS40OiBoYW5kbGUgY2FjaGUgZGlyZWN0 b3J5IHZhbmlzaGluZwotCi0qIFRodSBBcHIgMDYgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxs aWFtQHJlZGhhdC5jb20+IC0gMy41LjMtMQotLSBOZXcgcmVsZWFzZSAzLjUuMzogQWxsb3cgJ0ZB Q0QnIGFzIGEgY29tcG9zZSBzaG9ydCBuYW1lCi0KLSogU3VuIE1hciAyNiAyMDE3IEFkYW0gV2ls bGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjUuMi0xCi0tIE5ldyByZWxlYXNlIDMu NS4yOiBhZGQgb3RoZXIgc2Vjb25kYXJ5IGFyY2ggVVJMcyB0byB3aGl0ZWxpc3QKLQotKiBTdW4g TWFyIDI2IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNS4x LTEKLS0gTmV3IHJlbGVhc2UgMy41LjE6IGFkZCBQUEMgY29tcG9zZSBVUkwgdG8gVVJMIHdoaXRl bGlzdCAoUkhCWiAjMTQzNTk1MykKLQotKiBGcmkgRmViIDE3IDIwMTcgQWRhbSBXaWxsaWFtc29u IDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuNS4wLTEKLS0gTmV3IHJlbGVhc2UgMy41LjA6IHN1 cHBvcnQgZm9yIENsb3VkIG5pZ2h0bGllcywgUHlQSSBhcyB1cHN0cmVhbQotCi0qIEZyaSBGZWIg MTAgMjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy40LjMtMQot LSBOZXcgcmVsZWFzZSAzLjQuMzogaW5jbHVkZSBgZGlzY19udW1iZXJgIGluIHN5bnRoZXNpemVk IGltYWdlIGRpY3RzCi0KLSogRnJpIEZlYiAxMCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxp YW1AcmVkaGF0LmNvbT4gLSAzLjQuMS0yCi0tIEVuYWJsZSBQeXRob24gMyBidWlsZCBmb3IgRVBF TCA3Ci0tIFNwbGl0IENMSSBhbmQgbGlicmFyeSBwYWNrYWdlcwotLSBVc2UgUHl0aG9uIDMgZXhl Y3V0YWJsZSBvbiBkaXN0cm9zIHdoZXJlIFB5dGhvbiAzIGJ1aWxkIGlzIGVuYWJsZWQKLS0gRHJv cCB0aGUgb2xkIGZlZGZpbmQzIHByb3ZpZGVzL29ic29sZXRlcywgaXQncyBiZWVuIGxvbmcgZW5v dWdoCi0KLSogRnJpIEZlYiAxMCAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0 LmNvbT4gLSAzLjQuMS0xCi0tIE5ldyByZWxlYXNlIDMuNC4xOgotLSAqIEluY2x1ZGUgYGNvbXBv c2VpbmZvYCBkaWN0IGluIHN5bnRoZXNpemVkIG1ldGFkYXRhCi0tICogRG9uJ3QgcmV0dXJuIFB1 bmdpNFJlbGVhc2UgZm9yIHVua25vd24gVVJMcwotCi0qIEZyaSBGZWIgMTAgMjAxNyBGZWRvcmEg UmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDMuNC4wLTIK LS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yNl9N YXNzX1JlYnVpbGQKLQotKiBUaHUgSmFuIDI2IDIwMTcgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlh bUByZWRoYXQuY29tPiAtIDMuNC4wLTEKLS0gbmV3IHJlbGVhc2UgMy40LjA6IGZpeCBgUmVzcGlu UmVsZWFzZWAgYnkgVVJMLCByZW1vdmUgYHJlbGVhc2VfbnVtYmVyYAotCi0qIFdlZCBKYW4gMTgg MjAxNyBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy4zLjAtMQotLSBu ZXcgcmVsZWFzZSAzLjMuMDoKLS0gKiBBZGQgYGhlbHBlcnMuZ2V0X2N1cnJlbnRfc3RhYmxlcygp YCBmb3IgZmluZGluZyBjdXJyZW50IHN0YWJsZSByZWxlYXNlcwotLSAqIEFkZCBgUmVsZWFzZS5y ZWxlYXNlX251bWJlcmAgZm9yIGdldHRpbmcgUmF3aGlkZSBjb21wb3NlIHJlbGVhc2UgbnVtYmVy cwotLSAqIEFkZCBgdXJsYCBhbmQgYGRpcmVjdF91cmxgIFVSTCBlbnRyaWVzIHRvIGltYWdlIGRp Y3RzCi0KLSogRnJpIEphbiAxMyAyMDE3IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0 LmNvbT4gLSAzLjIuNS0xCi0tIG5ldyByZWxlYXNlIDMuMi41OiBzdXBwb3J0IERvY2tlciBzdGFi bGUgbmlnaHRseSBjb21wb3NlcwotCi0qIFR1ZSBKYW4gMTAgMjAxNyBBZGFtIFdpbGxpYW1zb24g PGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy4yLjMtMwotLSBDb25kaXRpb25hbGl6ZSBhcmdwYXJz ZSBkZXBlbmRlbmN5IHNpbmNlIGl0IGRpc2FwcGVhcmVkIGZyb20gUmF3aGlkZQotCi0qIFdlZCBE ZWMgMjEgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMy4yLjMt MgotLSByZWJ1aWxkIGZvciBQeXRob24gMy42Ci0KLSogV2VkIERlYyAxNCAyMDE2IEFkYW0gV2ls bGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjIuMy0xCi0tIG5ldyByZWxlYXNlIDMu Mi4zOiBzdXBwb3J0IGxpdmUtcmVzcGlucyBwb3N0LXJlbGVhc2UgbGl2ZSByZXNwaW4gY29tcG9z ZXMKLQotKiBNb24gRGVjIDA1IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQu Y29tPiAtIDMuMS4zLTIKLS0gZG9uJ3QgaW5jbHVkZSBweXRob24tYXJncGFyc2UgaW4gUHl0aG9u IDMgcGFja2FnZSByZXF1aXJlbWVudHMKLQotKiBXZWQgTm92IDMwIDIwMTYgQWRhbSBXaWxsaWFt c29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDMuMS4zLTEKLS0gbmV3IHJlbGVhc2UgMy4xLjM6 IGZpeCBzb21lIHJlbGVhc2UgbnVtYmVyIGNoZWNrIHByb2JsZW1zIChpbmMuIGEgY3Jhc2gpCi0K LSogV2VkIE5vdiAzMCAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4g LSAzLjEuMi0xCi0tIG5ldyByZWxlYXNlIDMuMS4yOiBpbXByb3ZlIGNhY2hpbmcgdG8gaGFuZGxl IG5vbi13cml0YWJsZSBob21lCi0KLSogVHVlIE5vdiAyOSAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8 YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAzLjEuMS0xCi0tIG5ldyByZWxlYXNlIDMuMS4xOiBvcmln aW5hbCBtZXRhZGF0YSBmb3Igc3BsaXQgY29tcG9zZXMsIGNhY2hlIFBEQyBxdWVyaWVzCi0KLSog V2VkIE5vdiAyMyAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAz LjAuNC0xCi0tIG5ldyByZWxlYXNlIDMuMC40OiB1c2UgYGltYWdlbGlzdGAgZmlsZXMgbm90IHJz eW5jIHNjcmFwaW5nCi0KLSogU3VuIE5vdiAyMCAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxp YW1AcmVkaGF0LmNvbT4gLSAyLjcuMi0xCi0tIG5ldyByZWxlYXNlIDIuNy4yOiBvcHRpb25hbGx5 IHByb3ZpZGUgZGlzdHJvIGluIGBwYXJzZV9jaWRgCi0KLSogV2VkIE5vdiAwOSAyMDE2IEFkYW0g V2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjcuMS0xCi0tIG5ldyByZWxlYXNl IDIuNy4xOiBoYW5kbGUgJ1JDJyBjb21wb3NlcyBjb3JyZWN0bHkKLQotKiBNb24gT2N0IDEwIDIw MTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNy4wLTEKLS0gbmV3 IHJlbGVhc2UgMi43LjA6IG1vcmUgb3N0cmVlIHN0dWZmLCBoYW5kbGUgJ2FsdCcgc3BsaXQKLQot KiBNb24gT2N0IDEwIDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAt IDIuNi4zLTEKLS0gbmV3IHJlbGVhc2UgMi42LjM6IGhhbmRsZSAtb3N0cmVlLSBhcyB3ZWxsIGFz IC1kdmQtIGluIG9zdHJlZSBmaWxlbmFtZXMKLQotKiBUaHUgT2N0IDA2IDIwMTYgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNi4yLTEKLS0gbmV3IHJlbGVhc2UgMi42 LjI6IHVzZSBkdmQtb3N0cmVlIHR5cGUgd2hlbiBzeW50aGVzaXppbmcgbWV0YWRhdGEKLQotKiBU aHUgT2N0IDA2IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIu Ni4wLTEKLS0gbmV3IHJlbGVhc2UgMi42LjA6IGRyb3AgUG9zdFJlbGVhc2UgY2xhc3MsIHR3ZWFr IGV4cGVjdGVkIGltYWdlcwotCi0qIFdlZCBPY3QgMDUgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3 aWxsaWFtQHJlZGhhdC5jb20+IC0gMi41LjAtMQotLSBuZXcgcmVsZWFzZSAyLjUuMDogd29ya2Fy b3VuZCBhIHB1bmdpIG1ldGFkYXRhIGlzc3VlLCBhZGQgaW1hZ2UgaWRlbnRpZmllcgotCi0qIEZy aSBBdWcgMjYgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi40 LjExLTEKLS0gbmV3IHJlbGVhc2UgMi40LjExOiBjbGkgZXhpdHMgY2xlYW5seSBpZiBubyBjb21w bGV0ZSBjb21wb3NlIGZvdW5kCi0KLSogVHVlIEp1bCAxOSAyMDE2IEZlZG9yYSBSZWxlYXNlIEVu Z2luZWVyaW5nIDxyZWwtZW5nQGxpc3RzLmZlZG9yYXByb2plY3Qub3JnPiAtIDIuNC4xMC0yCi0t IGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9DaGFuZ2VzL0F1dG9tYXRpY19Qcm92aWRl c19mb3JfUHl0aG9uX1JQTV9QYWNrYWdlcwotCi0qIFR1ZSBKdW4gMjggMjAxNiBBZGFtIFdpbGxp YW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi40LjEwLTEKLS0gbmV3IHJlbGVhc2UgMi40 LjEwOiBzdXBwb3J0IGZvciBQdW5naSA0IDIgV2VlayBBdG9taWMgY29tcG9zZXMKLQotKiBNb24g TWF5IDMwIDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNC45 LTEKLS0gbmV3IHJlbGVhc2UgMi40Ljk6IGhlbHBlcnMucGFyc2VfY2lkIHJhaXNlcyBWYWx1ZUVy cm9yIGlmIGNpZCBpcyBpbnZhbGlkCi0KLSogTW9uIE1heSAzMCAyMDE2IEFkYW0gV2lsbGlhbXNv biA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjQuOC0xCi0tIG5ldyByZWxlYXNlIDIuNC44OiBl bnN1cmUgUmVsZWFzZXMgYWx3YXlzIGhhdmUgYSBgbGFiZWxgCi0KLSogV2VkIE1heSAwNCAyMDE2 IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjQuNy0xCi0tIG5ldyBy ZWxlYXNlIDIuNC43IChyZW1vdmUgYSBzdHJheSBkZWJ1ZyBwcmludCkKLQotKiBUaHUgQXByIDI4 IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuNC42LTEKLS0g bmV3IHJlbGVhc2UgMi40LjYgKGhhbmRsZSAyLXdlZWsgQXRvbWljIENJRHMgaW4gZ2V0X3JlbGVh c2UpCi0KLSogVGh1IEFwciAxNCAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0 LmNvbT4gLSAyLjQuNS0xCi0tIG5ldyByZWxlYXNlIDIuNC41IChhbGxvdyBpZ25vcmluZyBhcmNo IGZvciBoZWxwZXJzLmdldF93ZWlnaHQpCi0KLSogU3VuIEFwciAxMCAyMDE2IEFkYW0gV2lsbGlh bXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAyLjQuNC0xCi0tIG5ldyByZWxlYXNlIDIuNC40 IChjb3VwbGUgb2YgZml4ZXMvaW1wcm92ZW1lbnRzIGZvciBmZWRvcmFfbmlnaHRsaWVzKQotCi0q IFdlZCBNYXIgMzAgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0g Mi40LjMtMQotLSBuZXcgcmVsZWFzZSAyLjQuMyAocmUtYWRkIG1pbGVzdG9uZSByZWxlYXNlIHN1 cHBvcnQpCi0KLSogV2VkIE1hciAzMCAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVk aGF0LmNvbT4gLSAyLjQuMi0xCi0tIG5ldyByZWxlYXNlIDIuNC4yICh0ZW1wIGdldF9wYWNrYWdl X252cmFzIHdvcmthcm91bmQgZm9yIFBEQyBwcm9ibGVtKQotCi0qIE1vbiBNYXIgMjEgMjAxNiBB ZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi40LjEtMQotLSBuZXcgcmVs ZWFzZSAyLjQuMSAoQ0xJIHNlYXJjaCBieSBjaWQgLyBsYWJlbCwgZ2V0X3BhY2thZ2VfbnZyYXMp Ci0tIGVuYWJsZSB0ZXN0cwotCi0qIFRodSBNYXIgMTcgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3 aWxsaWFtQHJlZGhhdC5jb20+IC0gMi4zLjAtMQotLSBuZXcgcmVsZWFzZSAyLjMuMCAoZHJvcCAn cGF5bG9hZCcsIHN1cHBvcnQgY2FuZGlkYXRlcyBzeW5jZWQgdG8gYWx0KQotCi0qIFRodSBNYXIg MTcgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi4yLjMtMQot LSBuZXcgcmVsZWFzZSAyLjIuMyAoZml4IGEgZ2V0X3JlbGVhc2UgYnVnIHdoaWNoIGJyb2tlIGNo ZWNrLWNvbXBvc2UpCi0KLSogV2VkIE1hciAxNiAyMDE2IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxp YW1AcmVkaGF0LmNvbT4gLSAyLjIuMi0xCi0tIG5ldyByZWxlYXNlIDIuMi4yIChmaXggZ2V0X3Np emUgZm9yIFB5dGhvbiAzKQotICAgIAotKiBXZWQgTWFyIDE2IDIwMTYgQWRhbSBXaWxsaWFtc29u IDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuMi4xLTEKLS0gbmV3IHJlbGVhc2UgMi4yLjEgKHF1 aXRlIGJpZyBjaGFuZ2VzIHRvIFB1bmdpIDQgY29tcG9zZSBoYW5kbGluZykKLQotKiBUaHUgTWFy IDAzIDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuMS4xLTEK LS0gbmV3IHJlbGVhc2UgMi4xLjEgKGZpeCBjaGVja19leHBlY3RlZCkKLQotKiBUaHUgTWFyIDAz IDIwMTYgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDIuMS4wLTIKLS0g dmVyc2lvbiB0aGUgcHl0aG9uMi1mZWRmaW5kIGFuZCBweXRob24tZmVkZmluZCBwcm92aWRlcwot Ci0qIFdlZCBNYXIgMDIgMjAxNiBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+ IC0gMi4xLjAtMQotLSBuZXcgcmVsZWFzZSAyLjEuMCAodmFyaW91cyBidWdmaXhlcykKLS0gdHdp ZGRsZSBkZXNjcmlwdGlvbiBhIGJpdAotCi0qIE1vbiBGZWIgMjkgMjAxNiBBZGFtIFdpbGxpYW1z b24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMi4wLjAtMQotLSBuZXcgcmVsZWFzZSAyLjAuMCAo bWFqb3IgcmV3cml0ZSBmb3IgUHVuZ2kgNCkKLS0gYWRkIHByb2R1Y3RtZCByZXF1aXJlbWVudAot Ci0qIFdlZCBGZWIgMDMgMjAxNiBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZl ZG9yYXByb2plY3Qub3JnPiAtIDEuNi4yLTMKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFw cm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yNF9NYXNzX1JlYnVpbGQKLQotKiBUdWUgTm92IDEwIDIw MTUgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdAbGlzdHMuZmVkb3JhcHJvamVj dC5vcmc+IC0gMS42LjItMgotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3Jn L3dpa2kvQ2hhbmdlcy9weXRob24zLjUKLQotKiBGcmkgT2N0IDAyIDIwMTUgQWRhbSBXaWxsaWFt c29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuNi4yLTEKLS0gbmV3IHJlbGVhc2UgMS42LjI6 IGFkanVzdCBmb3IgbmV3IFBvc3RyZWxlYXNlIG5pZ2h0bHkgbG9jYXRpb24KLQotKiBUdWUgU2Vw IDI5IDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuNi4xLTEK LS0gbmV3IHJlbGVhc2UgMS42LjE6IGJlaGluZCB0aGUgc2NlbmVzIHN0dWZmLCBkb2NzIGNoYW5n ZXMKLQotKiBTYXQgU2VwIDE5IDIwMTUgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQu Y29tPiAtIDEuNi0xCi0tIG5ldyByZWxlYXNlIDEuNjogaW1hZ2UgdHdlYWtzLCBwb3N0LXJlbGVh c2UgZGFpbHkgaGFuZGxpbmcKLQotKiBUaHUgU2VwIDAzIDIwMTUgQWRhbSBXaWxsaWFtc29uIDxh d2lsbGlhbUByZWRoYXQuY29tPiAtIDEuNS4xLTEKLS0gbmV3IHJlbGVhc2UgMS41LjE6IGltYWdl ICdzaXplJyBwcm9wZXJ0eSwgbW9yZSBpbWFnZSBwYXJzaW5nIHR3ZWFrcwotCi0qIFRodSBBdWcg MjcgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS41LTEKLS0g bmV3IHJlbGVhc2UgMS41OiByc3luYyByZXRyaWVzLCByZWxlYXNlIHdhaXQsIHRlc3RzLCBleHBl Y3RlZCBpbWFnZSBjaGFuZ2VzCi0KLSogRnJpIEF1ZyAyMSAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8 YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjQuMi0xCi0tIG5ldyByZWxlYXNlIDEuNC4yOiBweTMg Zml4Ci0KLSogRnJpIEF1ZyAyMSAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0 LmNvbT4gLSAxLjQuMS0xCi0tIG5ldyByZWxlYXNlIDEuNC4xOiBicmFuY2hlZCBndWVzc2luZywg cnN5bmMgY2xlYW51cHMsIGJ1Z2ZpeGVzCi0KLSogVGh1IEF1ZyAyMCAyMDE1IEFkYW0gV2lsbGlh bXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjQtMQotLSBuZXcgcmVsZWFzZSAxLjQ6IHVz ZSBtdWx0aWNhbGwgaW5zdGVhZCBvZiBtdWx0aXByb2Nlc3MsIGltcHJvdmUgY2FjaGluZwotCi0q IFRodSBBdWcgMjAgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0g MS4zLTEKLS0gbmV3IHJlbGVhc2UgMS4zOiBjaGVjayBjb21wb3NlIHN0YXR1cywgaW1hZ2UgcGFy c2luZyBpbXByb3ZlbWVudHMsIHNwZWVkdXBzCi0KLSogVGh1IEp1bCAyMyAyMDE1IEFkYW0gV2ls bGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjItMQotLSBuZXcgcmVsZWFzZSAxLjI6 IHByb3BlciBsb2dnaW5nLCBzb21lIHNtYWxsIGZpeGVzCi0KLSogV2VkIEp1biAxNyAyMDE1IEZl ZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWwtZW5nQGxpc3RzLmZlZG9yYXByb2plY3Qub3Jn PiAtIDEuMS41LTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtp L0ZlZG9yYV8yM19NYXNzX1JlYnVpbGQKLQotKiBUaHUgQXByIDMwIDIwMTUgQWRhbSBXaWxsaWFt c29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuMS41LTEKLS0gbmV3IHJlbGVhc2U6IGFkZCBh ICdnZW5lcmljIFVSTCcgb3V0cHV0LCBhbGxvdyAtLW1pbGVzdG9uZSBCcmFuY2hlZC9SYXdoaWRl Ci0KLSogVGh1IEFwciAyMyAyMDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNv bT4gLSAxLjEuNC0xCi0tIG5ldyByZWxlYXNlOiBkcm9wIHNoZWJhbmdzIGZyb20gbm9uLWV4ZWMg ZmlsZXMsIGZpeCB0aGVtIGluIGV4ZWMgZmlsZXMKLS0gcmVuYW1lICdmZWRmaW5kMycgdG8gJ3B5 dGhvbjMtZmVkZmluZCcKLS0gZHJvcCB0aGUgZXhlY3V0YWJsZXMgZnJvbSB0aGUgcHl0aG9uMyBw YWNrYWdlIChub3QgcmVhbGx5IG5lZWRlZCkKLQotKiBUaHUgQXByIDE2IDIwMTUgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuMS4zLTEKLS0gbmV3IHJlbGVhc2U6IGRy b3AgYnVuZGxlZCBjYWNoZWRfcHJvcGVydHkKLQotKiBUdWUgTWFyIDEwIDIwMTUgQWRhbSBXaWxs aWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuMS4yLTEKLS0gbmV3IHJlbGVhc2U6IGZp eCBwYXRoIGZvciBtaWxlc3RvbmUgcmVsZWFzZXMKLQotKiBUaHUgRmViIDI2IDIwMTUgQWRhbSBX aWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuMS4xLTEKLS0gMS4xLjE6IGhhbmRs ZSBhIHB5dGhvbjMgYXJncGFyc2UgYnVnIGNhdXNpbmcgYSBjcmFzaCB3aGVuIG5vIHN1YmNtZCBn aXZlbgotCi0qIFRodSBGZWIgMjYgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhh dC5jb20+IC0gMS4xLjAtMQotLSBuZXcgcmVsZWFzZSAxLjEuMDogY2xlYW5lciBVUkwgcHJlZiBp bXBsZW1lbnRhdGlvbiwgUHl0aG9uIDMgc3VwcG9ydAotLSBhZGQgYSBmZWRmaW5kMyBwYWNrYWdl IGZvciBQeXRob24gMwotCi0qIFdlZCBGZWIgMjUgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxs aWFtQHJlZGhhdC5jb20+IC0gMS4wLjgtMQotLSAxLjAuODogdXNlIGRsLmZwLm8gbm90IGRvd25s b2FkLmZwLm8gVVJMcyBmb3IgVEMvUkMgaW1hZ2VzCi0KLSogV2VkIEZlYiAyNSAyMDE1IEFkYW0g V2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjAuNy0xCi0tIDEuMC43OiBmaXgg YSBidWcgaW4gZmluZGluZyBuaWdodGx5IGltYWdlcyBieSB0eXBlCi0KLSogV2VkIEZlYiAxOCAy MDE1IEFkYW0gV2lsbGlhbXNvbiA8YXdpbGxpYW1AcmVkaGF0LmNvbT4gLSAxLjAuNi0xCi0tIGNv bnNvbGlkYXRlIGltYWdlIHZlcnNpb25pbmcgd2l0aCBweXRob24td2lraXRjbXMvcmVsdmFsLCBi dWdmaXhlcwotCi0qIFRodSBGZWIgMTIgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJl ZGhhdC5jb20+IC0gMS4wLjUtMQotLSBuZXcgcmVsZWFzZSAxLjAuNTogaW1hZ2UgZGV0ZWN0aW9u IGJ1Z2ZpeGVzLCBubyBrb2ppIGRlcCwgY2xlYW51cHMKLQotKiBNb24gRmViIDA5IDIwMTUgQWRh bSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQuY29tPiAtIDEuMC40LTEKLS0gbmV3IHJlbGVh c2UgMS4wLjQ6IGZpeCBFTCA2IGNvbXBhdAotCi0qIE1vbiBGZWIgMDkgMjAxNSBBZGFtIFdpbGxp YW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4wLjMtMQotLSBuZXcgcmVsZWFzZSAxLjAu MzogYnVnZml4ZXMsIFB5dGhvbiAyLjYgLyBSSEVMIDYgY29tcGF0aWJpbGl0eQotCi0qIEZyaSBG ZWIgMDYgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4wLjIt MQotLSBuZXcgcmVsZWFzZSAxLjAuMjogbWlzYy4gYnVnZml4ZXMgYW5kIENMSSByZW9yZwotCi0q IEZyaSBGZWIgMDYgMjAxNSBBZGFtIFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0g MS4wLjEtMQotLSBhZGQgcHBjIHRvIGFyY2hlcwotCi0qIFRodSBGZWIgMDUgMjAxNSBBZGFtIFdp bGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4wLTEKLS0gZmlyc3QgcGFja2FnZSBi dWlsZCBvZiBmZWRmaW5kCislYXV0b2NoYW5nZWxvZwo=