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: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] gdb-17.2-rebase-f44: Fix babeltrace errors (Yao Qi). Date: Sat, 27 Jun 2026 23:56:48 GMT Message-ID: <178260460807.1.7124121986921394422.rpms-gdb-263b58000df2@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: gdb-17.2-rebase-f44 X-Git-Rev: 263b58000df2463e643e04d8833ee3f3e0413d1c ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZ2RiCiAgICAgICAgICAgIEJyYW5jaCA6IGdkYi0xNy4yLXJlYmFzZS1mNDQK ICAgICAgICAgICAgQ29tbWl0IDogMjYzYjU4MDAwZGYyNDYzZTY0M2UwNGQ4ODMzZWUzZjNlMDQx M2QxYwogICAgICAgICAgICBBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxA cmVkaGF0LmNvbT4KICAgICAgICAgICAgRGF0ZSAgIDogMjAxNC0wOC0yMFQyMTowMzo0NCswMjow MAogICAgICAgICAgICBTdGF0cyAgOiArODQ1Ly0xIGluIDMgZmlsZShzKQogICAgICAgICAgICBV UkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2dkYi9jLzI2M2I1ODAw MGRmMjQ2M2U2NDNlMDRkODgzM2VlM2YzZTA0MTNkMWM/YnJhbmNoPWdkYi0xNy4yLXJlYmFzZS1m NDQKCiAgICAgICAgICAgIExvZzoKICAgICAgICAgICAgRml4IGJhYmVsdHJhY2UgZXJyb3JzIChZ YW8gUWkpLgoKLSBGaXggY3Jhc2ggb24gUHl0aG9uIGZyYW1lIGZpbHRlcnMgd2l0aCB1bnJlYWRh YmxlIGFyZyAoQlogMTEyNjE3NykuCgotLS0KZGlmZiAtLWdpdCBhL2dkYi1iYWJlbHRyYWNlLW1p bnNpemUucGF0Y2ggYi9nZGItYmFiZWx0cmFjZS1taW5zaXplLnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQyNjEyNzcKLS0tIC9kZXYvbnVsbAorKysgYi9nZGItYmFi ZWx0cmFjZS1taW5zaXplLnBhdGNoCkBAIC0wLDAgKzEsMjM3IEBACitodHRwOi8vc291cmNld2Fy ZS5vcmcvbWwvZ2RiLXBhdGNoZXMvMjAxNC0wOC9tc2cwMDM3Ni5odG1sCitTdWJqZWN0OiBSZTog LS13aXRoLWJhYmVsdHJhY2UgZ2VuZXJhdGVzIG1hbnkgRkFJTHMKKworT24gMDgvMTkvMjAxNCAx MDowNyBQTSwgSmFuIEtyYXRvY2h2aWwgd3JvdGU6Cis+ICAqICcjaWYgSEFWRV9MSUJCQUJFTFRS QUNFMV8xXzAnIGNvdWxkIGhhdmUgYSBjb21tZW50IHRoYXQgPj0xLjEuMSByZWplY3RzIHRoZQor PiAgICBmYWtlZCBwYWNrZXQgKHdoYXQgeW91IGRlc2NyaWJlZCBpbiB0aGUgbWFpbCBidXQgbm90 IGluIHRoZSBwYXRjaCkuCisKK0ZpeGVkLiAgVG8gYmUgcHJlY2lzZSwgPj0gMS4xLjIgcmVqZWN0 cyB0aGUgZmFrZWQgcGFja2V0LCAxLjEuMQorZG9lc24ndC4gIFNlZSB0aGUgdGFibGUgSSBwb3N0 ZWQuCisKKz4gICogSXQgaXMgYWx3YXlzIGJldHRlciB0byBjaGVjayBmb3IgZmVhdHVyZS9kZWZl Y3QgdGhhbiB0byBjaGVjayBmb3IgdmVyc2lvbi4KKz4gICAgRm9yIGV4YW1wbGUgYmVjYXVzZSB2 YXJpb3VzIGRpc3Ryb3MgYmFja3BvcnQgdmFyaW91cyBmaXhlcyAodW5mb3J0dW5hdGVseQorPiAg ICBpbmNsdWRpbmcgdGhlaXIgcG9zc2libGUgcmVncmVzc2lvbnMvZGVmZWN0cykgYW5kIHNvIHZl cnNpb24gY2hlY2tzIG1heSBiZQorPiAgICBtaXNsZWFkaW5nIHRoZW4uICBBdCBsZWFzdCBpbiB0 aGlzIGNhc2UgaXQgc2VlbXMgdG8gbWUgYXMgcG9zc2libGUgdG8gY2hlY2sKKz4gICAgaG93IGxp YmJhY2t0cmFjZSBiZWhhdmVzIGZyb20gY29uZmlndXJlOyBhbHRob3VnaCBtYXliZSBpdCBpcyBu b3QgZWFzeQorPiAgICBlbm91Z2gsIG5vdCBzdXJlLgorCitJbiBvcmRlciB0byBjaGVjayBsaWJi YWJlbHRyYWNlJ3MgYmVoYXZpb3VyIGluIGNvbmZpZ3VyZSwgd2UgaGF2ZSB0byB3cml0ZQorYSBj IHByb2dyYW0gdG8gZ2VuZXJhdGUgQ1RGIGRhdGEgYW5kIHJlYWQgdGhlIHRyYWNlIGRhdGEgdmlh CitiYWJlbHRyYWNlIG9yIGFueSBwcm9ncmFtICh1c2luZyBsaWJiYWJlbHRyYWNlKSB3cml0dGVu IGJ5IG91cnNlbHZlcy4KK0l0IGlzIG5vdCBlYXN5IHRvIGRvIHNvLgorCitUaGUgcGF0Y2ggaXMg dXBkYXRlZC4gIE9LIHRvIGFwcGx5PworCistLSAKK1lhbyAo6b2Q5bCnKQorCitTdWJqZWN0OiBb UEFUQ0hdIENoZWNrIGJhYmVsdHJhY2UgMS4xLjAKK1N1YmplY3Q6IFtQQVRDSF0gQ2hlY2sgYmFi ZWx0cmFjZSAxLjEuMAorCitXaGVuIEdEQiB1c2VzIHJlY2VudCB2ZXJzaW9uIG9mIGJhYmVsdHJh Y2UsIHN1Y2ggYXMgMS4yLngsIHdlJ2xsIHNlZQorc3VjaCBlcnJvciBlbWl0dGVkIGZyb20gYmFi ZWx0cmFjZSBsaWJyYXJ5LAorCisgKGdkYikgdGFyZ2V0IGN0ZiAuLi4vZ2RiL3Rlc3RzdWl0ZS9n ZGIudHJhY2UvYWN0aW9ucy5jdGYKKyBbZXJyb3JdIEludmFsaWQgQ1RGIHN0cmVhbTogY29udGVu dCBzaXplIGlzIHNtYWxsZXIgdGhhbgorcGFja2V0IGhlYWRlcnMuCisgW2Vycm9yXSBTdHJlYW0g aW5kZXggY3JlYXRpb24gZXJyb3IuCisgW2Vycm9yXSBPcGVuIGZpbGUgc3RyZWFtIGVycm9yLgor CitUaGUgcHJvYmxlbSBjYW4gYmUgcmVwcm9kdWNlIG91dCBvZiBHREIgdG9vLCB1c2luZyBiYWJl bHRyYWNlLAorCisgJCBiYWJlbHRyYWNlIC4vZmFrZS1wYWNrZXQuY3RmLworIFtlcnJvcl0gSW52 YWxpZCBDVEYgc3RyZWFtOiBjb250ZW50IHNpemUgaXMgc21hbGxlciB0aGFuIHBhY2tldCBoZWFk ZXJzLgorIFtlcnJvcl0gU3RyZWFtIGluZGV4IGNyZWF0aW9uIGVycm9yLgorIFtlcnJvcl0gT3Bl biBmaWxlIHN0cmVhbSBlcnJvci4KKworUmVjZW50IGJhYmVsdHJhY2UgbGlicmFyeSBiZWNvbWVz IG1vcmUgc3RyaWN0IG9uIENURiwgYW5kIGNvbXBsYWlucworYWJvdXQgb25lICJmYWtlZCBwYWNr ZXQiIEdEQiBhZGRzLCB3aGVuIHNhdmluZyB0cmFjZSBkYXRhIGluIGN0ZgorZm9ybWF0IGZyb20g R0RCLiAgYmFiZWx0cmFjZSAxLjEuMCBoYXMgYSBidWcgdGhhdCBpdCBjYW4ndCByZWFkIHRyYWNl CitkYXRhIHNtYWxsZXIgdGhhbiBhIGNlcnRhaW4gc2l6ZSAoc2VlIGh0dHBzOi8vYnVncy5sdHRu Zy5vcmcvaXNzdWVzLzQ1MCkuCitXZSB3b3JrYXJvdW5kIGl0IGluIEdEQiB0byBhcHBlbmQgc29t ZSBtZWFuaW5nbGVzcyBkYXRhIGluIGEgZmFrZWQKK3BhY2tldCB0byBtYWtlIHN1cmUgdHJhY2Ug ZmlsZSBpcyBsYXJnZSBlbm91Z2ggKHNlZSBjdGYuYzpjdGZfZW5kKS4KK1RoZSBiYWJlbHRyYWNl IGlzc3VlIHdhcyBmaXhlZCBpbiAxLjEuMSByZWxlYXNlLiAgSG93ZXZlciwgYmFiZWx0cmFjZQor cmVjZW50IHJlbGVhc2UgKHNpbmNlIDEuMS4yKSBzdGFydHMgdG8gY29tcGxhaW4gYWJvdXQgc3Vj aCBmYWtlZAorcGFja2V0LiAgSGVyZSBpcyBhIHRhYmxlIHNob3dzIHRoYXQgd2hldGhlciBmYWtl ZCBwYWNrZXQgb3Igbm8gZmFrZWQKK3BhY2tldCBpcyBzdXBwb3J0ZWQgYnkgdmFyaW91cyBiYWJl bHRyYWNlIHJlbGVhc2VzLAorCisgICAgICAgIGZha2VkIHBhY2tldCAgICAgIG5vIGZha2VkIHBh Y2tldAorMS4xLjAgICAgICBZZXMgICAgICAgICAgICAgICAgIE5vCisxLjEuMSAgICAgIFllcyAg ICAgICAgICAgICAgICAgWWVzCisxLjEuMiAgICAgIE5vICAgICAgICAgICAgICAgICAgWWVzCisx LjIuMCAgICAgIE5vICAgICAgICAgICAgICAgICAgWWVzCisKK1dlIGRlY2lkZSB0byBpbmNsdWRl IHRoZSBjb2RlIHRvIHdvcmthcm91bmQgMS4xLjAgaXNzdWUgb25seSBpZiAxLjEuMAoraXMgdXNl ZC4gIFdlIGNob29zZSBwa2ctY29uZmlnIHRvIGNoZWNrIGJhYmVsdHJhY2UncyB2ZXJzaW9uIGlu Citjb25maWd1cmUuCisKK2dkYjoKKworMjAxNC0wOC0yMCAgWWFvIFFpICA8eWFvQGNvZGVzb3Vy Y2VyeS5jb20+CisKKwkqIGNvbmZpZ3VyZS5hYzogRGlzYWJsZSBiYWJlbHRyYWNlIHN1cHBvcnQg aWYgcGtnLWNvbmZpZyBpcworCW1pc3NpbmcuICBVc2UgcGtnLWNvbmZpZyB0byBjaGVjayB3aGV0 aGVyIGxpYmJhYmVsdHJhY2UgaXMKKwkxLjEuMC4KKwkqIGNvbmZpZy5pbjogUmVnZW5lcmF0ZS4K KwkqIGNvbmZpZ3VyZTogUmVnZW5lcmF0ZS4KKwkqIGN0Zi5jIChDVEZfRklMRV9NSU5fU0laRSk6 IFJlbW92ZS4KKwkoY3RmX2VuZCk6IFdyYXAgdGhlIGNvZGUgd2l0aAorCSNpZiBIQVZFX0xJQkJB QkVMVFJBQ0UxXzFfMCAjZW5kaWYuCisJW0hBVkVfTElCQkFCRUxUUkFDRTFfMV8wXSAoQ1RGX0ZJ TEVfTUlOX1NJWkUpOiBOZXcgbWFjcm8uCistLS0KKyBnZGIvY29uZmlnLmluICAgIHwgIDMgKysr CisgZ2RiL2NvbmZpZ3VyZSAgICB8IDI1ICsrKysrKysrKysrKysrKysrKysrKysrKysKKyBnZGIv Y29uZmlndXJlLmFjIHwgMjIgKysrKysrKysrKysrKysrKysrKysrKworIGdkYi9jdGYuYyAgICAg ICAgfCAyNSArKysrKysrKysrKysrKysrLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCA2NiBp bnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvZ2RiL2NvbmZpZy5p biBiL2dkYi9jb25maWcuaW4KK2luZGV4IGI4NTM0MTIuLjU0MTUyY2QgMTAwNjQ0CistLS0gYS9n ZGIvY29uZmlnLmluCisrKysgYi9nZGIvY29uZmlnLmluCitAQCAtMTgzLDYgKzE4Myw5IEBACisg LyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSBiYWJlbHRyYWNlIGxpYnJhcnkuICovCisgI3VuZGVm IEhBVkVfTElCQkFCRUxUUkFDRQorIAorKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIGxpYmJh YmVsdHJhY2UgMS4xLjAgKi8KKysjdW5kZWYgSEFWRV9MSUJCQUJFTFRSQUNFMV8xXzAKKysKKyAv KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGRsJyBsaWJyYXJ5ICgtbGRsKS4gKi8KKyAj dW5kZWYgSEFWRV9MSUJETAorIAorZGlmZiAtLWdpdCBhL2dkYi9jb25maWd1cmUgYi9nZGIvY29u ZmlndXJlCitpbmRleCA5MjUzZTI4Li5kNGUyYzZlIDEwMDc1NQorLS0tIGEvZ2RiL2NvbmZpZ3Vy ZQorKysrIGIvZ2RiL2NvbmZpZ3VyZQorQEAgLTE0ODE3LDYgKzE0ODE3LDExIEBAICRhc19lY2hv ICIkd2l0aF9iYWJlbHRyYWNlIiA+JjY7IH0KKyBpZiB0ZXN0ICJ4JHdpdGhfYmFiZWx0cmFjZSIg PSAieG5vIjsgdGhlbgorICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99 OiBXQVJOSU5HOiBiYWJsZXRyYWNlIHN1cHBvcnQgZGlzYWJsZWQ7IEdEQiBpcyB1bmFibGUgdG8g cmVhZCBDVEYgZGF0YS4iID4mNQorICRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IGJhYmxldHJh Y2Ugc3VwcG9ydCBkaXNhYmxlZDsgR0RCIGlzIHVuYWJsZSB0byByZWFkIENURiBkYXRhLiIgPiYy O30KKytlbGlmIHRlc3QgIiR7cGtnX2NvbmZpZ19wcm9nX3BhdGh9IiA9ICJtaXNzaW5nIjsgdGhl bgorKyAgIyBwa2ctY29uZmlnIGlzIHVzZWQgdG8gY2hlY2sgdGhlIHZlcnNpb24gb2YgbGliYmFi ZWx0cmFjZS4gIElmIHBrZy1jb25maWcKKysgICMgaXMgbWlzc2luZywgd2UgaGF2ZSB0byBkaXNh YmxlIGJhYmVsdHJhY2Ugc3VwcG9ydC4KKysgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVu by0kTElORU5PfTogV0FSTklORzogcGtnLWNvbmZpZyBub3QgZm91bmQsIGJhYmxldHJhY2Ugc3Vw cG9ydCBkaXNhYmxlZCIgPiY1CisrJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogcGtnLWNvbmZp ZyBub3QgZm91bmQsIGJhYmxldHJhY2Ugc3VwcG9ydCBkaXNhYmxlZCIgPiYyO30KKyBlbHNlCisg ICAjIEFwcGVuZCAtV2Vycm9yIHRvIENGTEFHUyBzbyB0aGF0IGNvbmZpZ3VyZSBjYW4gY2F0Y2gg dGhlIHdhcm5pbmcKKyAgICMgImFzc2lnbm1lbnQgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0 eXBlIiwgd2hpY2ggaXMgcmVsYXRlZCB0bworQEAgLTE1MzA3LDYgKzE1MzEyLDI2IEBAICRhc19l Y2hvICIkTElCQkFCRUxUUkFDRSIgPiY2OyB9CisgICAgICAgIHsgJGFzX2VjaG8gIiRhc19tZTok e2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogYmFiZWx0cmFjZSBpcyBtaXNzaW5nIG9yIHVu dXNhYmxlOyBHREIgaXMgdW5hYmxlIHRvIHJlYWQgQ1RGIGRhdGEuIiA+JjUKKyAkYXNfZWNobyAi JGFzX21lOiBXQVJOSU5HOiBiYWJlbHRyYWNlIGlzIG1pc3Npbmcgb3IgdW51c2FibGU7IEdEQiBp cyB1bmFibGUgdG8gcmVhZCBDVEYgZGF0YS4iID4mMjt9CisgICAgICBmaQorKyAgZWxzZQorKyAg ICAgIyBOZWVkIHRvIGtub3cgd2hldGhlciBsaWJiYWJlbHRyYWNlIGlzIDEuMS4wLgorKyAgICAg cGtnX2NvbmZpZ19wYXRoPQorKyAgICAgZm9yIHggaW4gJExUTElCQkFCRUxUUkFDRTsgZG8KKysg ICAgICAgY2FzZSAiJHgiIGluCisrICAgICAgICAgLUwqKQorKwkgICBkaXI9YGVjaG8gIlgkeCIg fCBzZWQgLWUgJ3MvXlgtTC8vJ2AKKysJICAgaWYgdGVzdCAtZCAiJGRpci9wa2djb25maWciOyB0 aGVuCisrCSAgICAgcGtnX2NvbmZpZ19wYXRoPSIke3BrZ19jb25maWdfcGF0aH0ke3BrZ19jb25m aWdfcGF0aDorOn0kZGlyL3BrZ2NvbmZpZyIKKysJICAgZmkKKysJICAgOzsKKysgICAgICAgZXNh YworKyAgICAgZG9uZQorKworKyAgICAgYFBLR19DT05GSUdfUEFUSD0kUEtHX0NPTkZJR19QQVRI OiRwa2dfY29uZmlnX3BhdGggJHtwa2dfY29uZmlnX3Byb2dfcGF0aH0gYmFiZWx0cmFjZSA9IDEu MS4wYAorKyAgICAgaWYgdGVzdCAiJD8iIC1lcSAwIDsgdGhlbgorKworKyRhc19lY2hvICIjZGVm aW5lIEhBVkVfTElCQkFCRUxUUkFDRTFfMV8wIDEiID4+Y29uZmRlZnMuaAorKworKyAgICAgZmkK KyAgIGZpCisgZmkKKyAKK2RpZmYgLS1naXQgYS9nZGIvY29uZmlndXJlLmFjIGIvZ2RiL2NvbmZp Z3VyZS5hYworaW5kZXggNjE5MTliNC4uMWQ4ZDQwMCAxMDA2NDQKKy0tLSBhL2dkYi9jb25maWd1 cmUuYWMKKysrKyBiL2dkYi9jb25maWd1cmUuYWMKK0BAIC0yNDIwLDYgKzI0MjAsMTAgQEAgQUNf TVNHX1JFU1VMVChbJHdpdGhfYmFiZWx0cmFjZV0pCisgCisgaWYgdGVzdCAieCR3aXRoX2JhYmVs dHJhY2UiID0gInhubyI7IHRoZW4KKyAgIEFDX01TR19XQVJOKFtiYWJsZXRyYWNlIHN1cHBvcnQg ZGlzYWJsZWQ7IEdEQiBpcyB1bmFibGUgdG8gcmVhZCBDVEYgZGF0YS5dKQorK2VsaWYgdGVzdCAi JHtwa2dfY29uZmlnX3Byb2dfcGF0aH0iID0gIm1pc3NpbmciOyB0aGVuCisrICAjIHBrZy1jb25m aWcgaXMgdXNlZCB0byBjaGVjayB0aGUgdmVyc2lvbiBvZiBsaWJiYWJlbHRyYWNlLiAgSWYgcGtn LWNvbmZpZworKyAgIyBpcyBtaXNzaW5nLCB3ZSBoYXZlIHRvIGRpc2FibGUgYmFiZWx0cmFjZSBz dXBwb3J0LgorKyAgQUNfTVNHX1dBUk4oW3BrZy1jb25maWcgbm90IGZvdW5kLCBiYWJsZXRyYWNl IHN1cHBvcnQgZGlzYWJsZWRdKQorIGVsc2UKKyAgICMgQXBwZW5kIC1XZXJyb3IgdG8gQ0ZMQUdT IHNvIHRoYXQgY29uZmlndXJlIGNhbiBjYXRjaCB0aGUgd2FybmluZworICAgIyAiYXNzaWdubWVu dCBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUiLCB3aGljaCBpcyByZWxhdGVkIHRvCitA QCAtMjQ1MCw2ICsyNDU0LDI0IEBAIGVsc2UKKyAgICAgIGVsc2UKKyAgICAgICAgQUNfTVNHX1dB Uk4oW2JhYmVsdHJhY2UgaXMgbWlzc2luZyBvciB1bnVzYWJsZTsgR0RCIGlzIHVuYWJsZSB0byBy ZWFkIENURiBkYXRhLl0pCisgICAgICBmaQorKyAgZWxzZQorKyAgICAgIyBOZWVkIHRvIGtub3cg d2hldGhlciBsaWJiYWJlbHRyYWNlIGlzIDEuMS4wLgorKyAgICAgcGtnX2NvbmZpZ19wYXRoPQor KyAgICAgZm9yIHggaW4gJExUTElCQkFCRUxUUkFDRTsgZG8KKysgICAgICAgY2FzZSAiJHgiIGlu CisrICAgICAgICAgLUwqKQorKwkgICBkaXI9YGVjaG8gIlgkeCIgfCBzZWQgLWUgJ3MvXlgtTC8v J2AKKysJICAgaWYgdGVzdCAtZCAiJGRpci9wa2djb25maWciOyB0aGVuCisrCSAgICAgcGtnX2Nv bmZpZ19wYXRoPSIke3BrZ19jb25maWdfcGF0aH0ke3BrZ19jb25maWdfcGF0aDorOn0kZGlyL3Br Z2NvbmZpZyIKKysJICAgZmkKKysJICAgOzsKKysgICAgICAgZXNhYworKyAgICAgZG9uZQorKwor KyAgICAgYFBLR19DT05GSUdfUEFUSD0kUEtHX0NPTkZJR19QQVRIOiRwa2dfY29uZmlnX3BhdGgg JHtwa2dfY29uZmlnX3Byb2dfcGF0aH0gYmFiZWx0cmFjZSA9IDEuMS4wYAorKyAgICAgaWYgdGVz dCAiJD8iIC1lcSAwIDsgdGhlbgorKyAgICAgICBBQ19ERUZJTkUoW0hBVkVfTElCQkFCRUxUUkFD RTFfMV8wXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgbGliYmFiZWx0cmFjZSAxLjEu MF0pCisrICAgICBmaQorICAgZmkKKyBmaQorIAorZGlmZiAtLWdpdCBhL2dkYi9jdGYuYyBiL2dk Yi9jdGYuYworaW5kZXggZGY2NDVjMC4uNjg0ZGE1MCAxMDA2NDQKKy0tLSBhL2dkYi9jdGYuYwor KysrIGIvZ2RiL2N0Zi5jCitAQCAtNjIzLDExICs2MjMsNiBAQCBjdGZfd3JpdGVfZGVmaW5pdGlv bl9lbmQgKHN0cnVjdCB0cmFjZV9maWxlX3dyaXRlciAqc2VsZikKKyAgIHNlbGYtPm9wcy0+ZnJh bWVfb3BzLT5lbmQgKHNlbGYpOworIH0KKyAKKy0vKiBUaGUgbWluaW1hbCBmaWxlIHNpemUgb2Yg ZGF0YSBzdHJlYW0uICBJdCBpcyByZXF1aXJlZCBieQorLSAgIGJhYmVsdHJhY2UuICAqLworLQor LSNkZWZpbmUgQ1RGX0ZJTEVfTUlOX1NJWkUJCTQwOTYKKy0KKyAvKiBUaGlzIGlzIHRoZSBpbXBs ZW1lbnRhdGlvbiBvZiB0cmFjZV9maWxlX3dyaXRlX29wcyBtZXRob2QKKyAgICBlbmQuICAqLwor IAorQEAgLTYzNywxMCArNjMyLDIxIEBAIGN0Zl9lbmQgKHN0cnVjdCB0cmFjZV9maWxlX3dyaXRl ciAqc2VsZikKKyAgIHN0cnVjdCBjdGZfdHJhY2VfZmlsZV93cml0ZXIgKndyaXRlciA9IChzdHJ1 Y3QgY3RmX3RyYWNlX2ZpbGVfd3JpdGVyICopIHNlbGY7CisgCisgICBnZGJfYXNzZXJ0ICh3cml0 ZXItPnRjcy5jb250ZW50X3NpemUgPT0gMCk7CistICAvKiBUaGUgYmFiZWx0cmFjZSByZXF1aXJl cyBvciBhc3N1bWVzIHRoYXQgdGhlIHNpemUgb2YgZGF0YXN0cmVhbQorLSAgICAgZmlsZSBpcyBn cmVhdGVyIHRoYW4gNDA5NiBieXRlcy4gIElmIHdlIGRvbid0IGdlbmVyYXRlIGVub3VnaAorLSAg ICAgcGFja2V0cyBhbmQgZXZlbnRzLCBjcmVhdGUgYSBmYWtlIHBhY2tldCB3aGljaCBoYXMgemVy byBldmVudCwKKy0gICAgICB0byB1c2UgdXAgdGhlIHNwYWNlLiAgKi8KKysKKysjaWYgSEFWRV9M SUJCQUJFTFRSQUNFMV8xXzAKKysgIC8qIFRoZSBiYWJlbHRyYWNlLTEuMS4wIHJlcXVpcmVzIG9y IGFzc3VtZXMgdGhhdCB0aGUgc2l6ZSBvZiBkYXRhc3RyZWFtCisrICAgICBmaWxlIGlzIGdyZWF0 ZXIgdGhhbiA0MDk2IGJ5dGVzLiAgVGhpcyB3YXMgZml4ZWQgYWZ0ZXIgMS4xLjAgcmVsZWFzZS4K KysgICAgIFNlZSBodHRwczovL2J1Z3MubHR0bmcub3JnL2lzc3Vlcy80NTAKKysgICAgIElmIHdl IGRvbid0IGdlbmVyYXRlIGVub3VnaCBwYWNrZXRzIGFuZCBldmVudHMsIGNyZWF0ZSBhIGZha2Ug cGFja2V0CisrICAgICB3aGljaCBoYXMgemVybyBldmVudCwgdG8gdXNlIHVwIHRoZSBzcGFjZS4g IEhvd2V2ZXIsIGJhYmVsdHJhY2UKKysgICAgIHJlbGVhc2UgKHNpbmNlIDEuMS4yKSBzdGFydHMg dG8gY29tcGxhaW4gYWJvdXQgc3VjaCBmYWtlZCBwYWNrZXQsCisrICAgICB3ZSBpbmNsdWRlIHRo aXMgd29ya2Fyb3VuZCBvbmx5IGZvciBiYWJlbHRyYWNlIDEuMS4wLiAgKi8KKysKKysgIC8qIFRo ZSBtaW5pbWFsIGZpbGUgc2l6ZSBvZiBkYXRhIHN0cmVhbS4gIEl0IGlzIHJlcXVpcmVkIGJ5Cisr ICAgICBiYWJlbHRyYWNlLiAgKi8KKysKKysjZGVmaW5lIENURl9GSUxFX01JTl9TSVpFCQk0MDk2 CisrCisgICBpZiAod3JpdGVyLT50Y3MucGFja2V0X3N0YXJ0IDwgQ1RGX0ZJTEVfTUlOX1NJWkUp CisgICAgIHsKKyAgICAgICB1aW50MzJfdCB1MzI7CitAQCAtNjgxLDYgKzY4Nyw3IEBAIGN0Zl9l bmQgKHN0cnVjdCB0cmFjZV9maWxlX3dyaXRlciAqc2VsZikKKyAJICBjdGZfc2F2ZV93cml0ZSAo JndyaXRlci0+dGNzLCAmYiwgMSk7CisgCX0KKyAgICAgfQorKyNlbmRpZiAvKiBIQVZFX0xJQkJB QkVMVFJBQ0UxXzFfMCAqLworIH0KKyAKKyAvKiBUaGlzIGlzIHRoZSBpbXBsZW1lbnRhdGlvbiBv ZiB0cmFjZV9mcmFtZV93cml0ZV9vcHMgbWV0aG9kCistLSAKKzEuOS4zCisKCmRpZmYgLS1naXQg YS9nZGIuc3BlYyBiL2dkYi5zcGVjCmluZGV4IDcyOGQ5NWYuLmViYWIxNjkgMTAwNjQ0Ci0tLSBh L2dkYi5zcGVjCisrKyBiL2dkYi5zcGVjCkBAIC0yNiw3ICsyNiw3IEBAIFZlcnNpb246IDcuOAog CiAjIFRoZSByZWxlYXNlIGFsd2F5cyBjb250YWlucyBhIGxlYWRpbmcgcmVzZXJ2ZWQgbnVtYmVy LCBzdGFydCBpdCBhdCAxLgogIyBgdXBzdHJlYW0nIGlzIG5vdCBhIHBhcnQgb2YgYG5hbWUnIHRv IHN0YXkgZnVsbHkgcnBtIGRlcGVuZGVuY2llcyBjb21wYXRpYmxlIGZvciB0aGUgdGVzdGluZy4K LVJlbGVhc2U6IDE5JXs/ZGlzdH0KK1JlbGVhc2U6IDIwJXs/ZGlzdH0KIAogTGljZW5zZTogR1BM djMrIGFuZCBHUEx2Mysgd2l0aCBleGNlcHRpb25zIGFuZCBHUEx2MisgYW5kIEdQTHYyKyB3aXRo IGV4Y2VwdGlvbnMgYW5kIEdQTCsgYW5kIExHUEx2MisgYW5kIEJTRCBhbmQgUHVibGljIERvbWFp biBhbmQgR0ZETAogR3JvdXA6IERldmVsb3BtZW50L0RlYnVnZ2VycwpAQCAtNTI1LDExICs1MjUs MTYgQEAgUGF0Y2g5MjE6IGdkYi1weXRob24tY29tcGxldGVyLTJvZjIucGF0Y2gKIFBhdGNoOTI1 OiBnZGItZm9ydHJhbi1mcmFtZS1zdHJpbmcucGF0Y2gKIAogIyBGaXggLVdlcnJvcj11bnVzZWQt dmFyaWFibGUgZXJyb3IgY29uZmlndXJpbmcgYmFiZWx0cmFjZS4KKyMgRml4IGJhYmVsdHJhY2Ug ZXJyb3JzIChZYW8gUWkpLgogUGF0Y2g5MjY6IGdkYi1iYWJlbHRyYWNlLWNvbmZpZ3VyZS5wYXRj aAorUGF0Y2g5Mjg6IGdkYi1iYWJlbHRyYWNlLW1pbnNpemUucGF0Y2gKIAogIyBGaXggUHl0aG9u IEdJTCB3aXRoIGdkYi5leGVjdXRlKCJjb250aW51ZSIpIChQaGlsIE11bGRvb24sIEJaIDExMTY5 NTcpLgogUGF0Y2g5Mjc6IGdkYi1weXRob24tZ2lsLnBhdGNoCiAKKyMgRml4IGNyYXNoIG9uIFB5 dGhvbiBmcmFtZSBmaWx0ZXJzIHdpdGggdW5yZWFkYWJsZSBhcmcgKEJaIDExMjYxNzcpLgorUGF0 Y2g5Mjk6IHB5dGhvbi1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLnBhdGNoCisKICVpZiAwJXshP3Jo ZWw6MX0gfHwgMCV7P3JoZWx9ID4gNgogIyBSTF9TVEFURV9GRURPUkFfR0RCIHdvdWxkIG5vdCBi ZSBmb3VuZCBmb3I6CiAjIFBhdGNoNjQyOiBnZGItcmVhZGxpbmU2Mi1hc2stbW9yZS1yaC5wYXRj aApAQCAtODE0LDcgKzgxOSw5IEBAIGZpbmQgLW5hbWUgIiouaW5mbyoifHhhcmdzIHJtIC1mCiAl cGF0Y2g5MjEgLXAxCiAlcGF0Y2g5MjUgLXAxCiAlcGF0Y2g5MjYgLXAxCislcGF0Y2g5MjggLXAx CiAlcGF0Y2g5MjcgLXAxCislcGF0Y2g5MjkgLXAxCiAKICVwYXRjaDg0OCAtcDEKICVpZiAwJXsh P2VsNjoxfQpAQCAtMTMxMCw2ICsxMzE3LDEwIEBAIHRoZW4KIGZpCiAKICVjaGFuZ2Vsb2cKKyog V2VkIEF1ZyAyMCAyMDE0IEphbiBLcmF0b2NodmlsIDxqYW4ua3JhdG9jaHZpbEByZWRoYXQuY29t PiAtIDcuOC0yMC5mYzIxCistIEZpeCBiYWJlbHRyYWNlIGVycm9ycyAoWWFvIFFpKS4KKy0gRml4 IGNyYXNoIG9uIFB5dGhvbiBmcmFtZSBmaWx0ZXJzIHdpdGggdW5yZWFkYWJsZSBhcmcgKEJaIDEx MjYxNzcpLgorCiAqIFNhdCBBdWcgMTYgMjAxNCBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8 cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSA3LjgtMTkKIC0gUmVidWlsdCBmb3Ig aHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yMV8yMl9NYXNzX1JlYnVpbGQK IAoKZGlmZiAtLWdpdCBhL3B5dGhvbi1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLnBhdGNoIGIvcHl0 aG9uLWZyYW1lZmlsdGVyLWludmFsaWRhcmcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMC4uNGMxZjE2YgotLS0gL2Rldi9udWxsCisrKyBiL3B5dGhvbi1mcmFtZWZpbHRl ci1pbnZhbGlkYXJnLnBhdGNoCkBAIC0wLDAgKzEsNTk2IEBACitodHRwOi8vc291cmNld2FyZS5v cmcvbWwvZ2RiLXBhdGNoZXMvMjAxNC0wOC9tc2cwMDM2NC5odG1sCitTdWJqZWN0OiBbcGF0Y2gr Ny44P10gRml4IGNyYXNoIG9uIFB5dGhvbiBmcmFtZSBmaWx0ZXJzIHdpdGggdW5yZWFkYWJsZSBh cmcKKworCistLWQ2R200RWRjYWR6QmpkTkQKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh cnNldD11cy1hc2NpaQorQ29udGVudC1EaXNwb3NpdGlvbjogaW5saW5lCisKK0hpLAorCitodHRw czovL2J1Z3ppbGxhLnJlZGhhdC5jb20vc2hvd19idWcuY2dpP2lkPTExMjYxNzcKKworRVJST1I6 IEFkZHJlc3NTYW5pdGl6ZXI6IFNFR1Ygb24gdW5rbm93biBhZGRyZXNzIDB4MDAwMDAwMDAwMDUw IChwYyAweDAwMDAwMDk5MmJlZiBzcCAweDdmZmZmOTAzOTUzMCBicCAweDdmZmZmOTAzOTU0MCBU MCkKKyAgICAjMCAweDk5MmJlZSBpbiB2YWx1ZV90eXBlIC4uLi9nZGIvdmFsdWUuYzo5MjUKKyAg ICAjMSAweDg3Yzk1MSBpbiBweV9wcmludF9zaW5nbGVfYXJnIHB5dGhvbi9weS1mcmFtZWZpbHRl ci5jOjQ0NQorICAgICMyIDB4ODdjZmFlIGluIGVudW1lcmF0ZV9hcmdzIHB5dGhvbi9weS1mcmFt ZWZpbHRlci5jOjU5NgorICAgICMzIDB4ODdlMGIwIGluIHB5X3ByaW50X2FyZ3MgcHl0aG9uL3B5 LWZyYW1lZmlsdGVyLmM6OTY4CisKK0l0IGNyYXNoZXMgYmVjYXVzZSBmcmFtZV9hcmc6OnZhbCBp cyBkb2N1bWVudGVkIGl0IG1heSBjb250YWluIE5VTEwKKyhmcmFtZV9hcmc6OmVycm9yIGlzIHRo ZW4gbm9uLU5VTEwpIGJ1dCB0aGUgY29kZSBkb2VzIG5vdCBoYW5kbGUgaXQuCisKK0Fub3RoZXIg YnVnIGlzIHRoYXQgcHlfcHJpbnRfc2luZ2xlX2FyZygpIGNhbGxzIGdvdG8gb3V0IG9mIGl0cyBU UllfQ0FUQ0gKK3doaWNoIG1lc3NlcyB1cCBHREIgY2xlYW51cCBjaGFpbiBjcmFzaGluZyBHREIg bGF0ZXIuCisKK0kgdHJpZWQgdG8gc29tZWhvdyBzZXBhcmF0ZSBpdCB0byB0d28gcGF0Y2hlcyBm aXJzdCBidXQgaXQgaW4gdGhlIGVuZCBrZXB0Cit0aGVtIG1lcmdlZC4KKworTm8gcmVncmVzc2lv bnMgb24ge3g4Nl82NCx4ODZfNjQtbTMyLGk2ODZ9LWZlZG9yYXJhd2hpZGUtbGludXgtZ251Lgor CitJdCBpcyBwcm9iYWJseSA3LjcgcmVncmVzc2lvbiAoSSBoYXZlIG5vdCB2ZXJpZmllZCBpdCkg ZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24KK29mIFB5dGhvbiBmcmFtZSBmaWx0ZXJzLgorCitJIGFt IG5vdCBzdXJlIGlmIGl0IGlzIG1vcmUgc3VpdGFibGUgZm9yIGdkYi5hcmNoLyBvciBnZGIucHl0 aG9uLyAsIHVzZWQgdGhlCitsYXR0ZXIuCisKKworVGhhbmtzLAorSmFuCisKKy0tZDZHbTRFZGNh ZHpCamRORAorQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PXVzLWFzY2lpCitDb250 ZW50LURpc3Bvc2l0aW9uOiBpbmxpbmU7IGZpbGVuYW1lPSJweWludmFsaWRhcmcucGF0Y2giCisK K2dkYi8KKzIwMTQtMDgtMTkgIEphbiBLcmF0b2NodmlsICA8amFuLmtyYXRvY2h2aWxAcmVkaGF0 LmNvbT4KKworCSogcHl0aG9uL3B5LWZyYW1lZmlsdGVyLmMgKHB5X3ByaW50X3NpbmdsZV9hcmcp OiBIYW5kbGUgTlVMTCBGQS0+VkFMLgorCUZpeCBnb3RvIG91dCBvZiBUUllfQ0FUQ0guCisKK2dk Yi90ZXN0c3VpdGUvCisyMDE0LTA4LTE5ICBKYW4gS3JhdG9jaHZpbCAgPGphbi5rcmF0b2Nodmls QHJlZGhhdC5jb20+CisKKwkqIGdkYi5weXRob24vYW1kNjQtcHktZnJhbWVmaWx0ZXItaW52YWxp ZGFyZy5TOiBOZXcgZmlsZS4KKwkqIGdkYi5weXRob24vcHktZnJhbWVmaWx0ZXItaW52YWxpZGFy Zy1nZGIucHkuaW46IE5ldyBmaWxlLgorCSogZ2RiLnB5dGhvbi9weS1mcmFtZWZpbHRlci1pbnZh bGlkYXJnLmV4cDogTmV3IGZpbGUuCisJKiBnZGIucHl0aG9uL3B5LWZyYW1lZmlsdGVyLWludmFs aWRhcmcucHk6IE5ldyBmaWxlLgorCitkaWZmIC0tZ2l0IGEvZ2RiL3B5dGhvbi9weS1mcmFtZWZp bHRlci5jIGIvZ2RiL3B5dGhvbi9weS1mcmFtZWZpbHRlci5jCitpbmRleCA5ZGI4M2M3Li5kNTMy ODJmIDEwMDY0NAorLS0tIGEvZ2RiL3B5dGhvbi9weS1mcmFtZWZpbHRlci5jCisrKysgYi9nZGIv cHl0aG9uL3B5LWZyYW1lZmlsdGVyLmMKK0BAIC0zNjUsOSArMzY1LDEyIEBAIHB5X3ByaW50X3Np bmdsZV9hcmcgKHN0cnVjdCB1aV9vdXQgKm91dCwKKyB7CisgICBzdHJ1Y3QgdmFsdWUgKnZhbDsK KyAgIHZvbGF0aWxlIHN0cnVjdCBnZGJfZXhjZXB0aW9uIGV4Y2VwdDsKKysgIGVudW0gZXh0X2xh bmdfYnRfc3RhdHVzIHJldHZhbCA9IEVYVF9MQU5HX0JUX09LOworIAorICAgaWYgKGZhICE9IE5V TEwpCisgICAgIHsKKysgICAgICBpZiAoZmEtPnZhbCA9PSBOVUxMICYmIGZhLT5lcnJvciA9PSBO VUxMKQorKwlyZXR1cm4gRVhUX0xBTkdfQlRfT0s7CisgICAgICAgbGFuZ3VhZ2UgPSBsYW5ndWFn ZV9kZWYgKFNZTUJPTF9MQU5HVUFHRSAoZmEtPnN5bSkpOworICAgICAgIHZhbCA9IGZhLT52YWw7 CisgICAgIH0KK0BAIC00MzMsMTYgKzQzNiwxOCBAQCBweV9wcmludF9zaW5nbGVfYXJnIChzdHJ1 Y3QgdWlfb3V0ICpvdXQsCisgICAgICAgLyogRm9yIE1JIHByaW50IHRoZSB0eXBlLCBidXQgb25s eSBmb3Igc2ltcGxlIHZhbHVlcy4gIFRoaXMgc2VlbXMKKyAJIHdlaXJkLCBidXQgdGhpcyBpcyBo b3cgTUkgY2hvb3NlIHRvIGZvcm1hdCB0aGUgdmFyaW91cyBvdXRwdXQKKyAJIHR5cGVzLiAgKi8K Ky0gICAgICBpZiAoYXJnc190eXBlID09IE1JX1BSSU5UX1NJTVBMRV9WQUxVRVMpCisrICAgICAg aWYgKGFyZ3NfdHlwZSA9PSBNSV9QUklOVF9TSU1QTEVfVkFMVUVTICYmIHZhbCAhPSBOVUxMKQor IAl7CisgCSAgaWYgKHB5X3ByaW50X3R5cGUgKG91dCwgdmFsKSA9PSBFWFRfTEFOR19CVF9FUlJP UikKKyAJICAgIHsKKysJICAgICAgcmV0dmFsID0gRVhUX0xBTkdfQlRfRVJST1I7CisgCSAgICAg IGRvX2NsZWFudXBzIChjbGVhbnVwcyk7CistCSAgICAgIGdvdG8gZXJyb3I7CisrCSAgICAgIGNv bnRpbnVlOworIAkgICAgfQorIAl9CisgCistICAgICAgYW5ub3RhdGVfYXJnX3ZhbHVlICh2YWx1 ZV90eXBlICh2YWwpKTsKKysgICAgICBpZiAodmFsICE9IE5VTEwpCisrCWFubm90YXRlX2FyZ192 YWx1ZSAodmFsdWVfdHlwZSAodmFsKSk7CisgCisgICAgICAgLyogSWYgdGhlIG91dHB1dCBpcyB0 byB0aGUgQ0xJLCBhbmQgdGhlIHVzZXIgb3B0aW9uICJzZXQgcHJpbnQKKyAJIGZyYW1lLWFyZ3Vt ZW50cyIgaXMgc2V0IHRvIG5vbmUsIGp1c3Qgb3V0cHV0ICIuLi4iLiAgKi8KK0BAIC00NTQsMjcg KzQ1OSwyNSBAQCBweV9wcmludF9zaW5nbGVfYXJnIChzdHJ1Y3QgdWlfb3V0ICpvdXQsCisgCSAg ICAgZm9yIHRoZSBjYXNlIG9mIE1JX1BSSU5UX05PX1ZBTFVFUy4gICovCisgCSAgaWYgKGFyZ3Nf dHlwZSAhPSBOT19WQUxVRVMpCisgCSAgICB7CistCSAgICAgIGlmIChweV9wcmludF92YWx1ZSAo b3V0LCB2YWwsIG9wdHMsIDAsIGFyZ3NfdHlwZSwgbGFuZ3VhZ2UpCistCQkgID09IEVYVF9MQU5H X0JUX0VSUk9SKQorKwkgICAgICBpZiAodmFsID09IE5VTEwpCisgCQl7CistCQkgIGRvX2NsZWFu dXBzIChjbGVhbnVwcyk7CistCQkgIGdvdG8gZXJyb3I7CisrCQkgIGdkYl9hc3NlcnQgKGZhICE9 IE5VTEwgJiYgZmEtPmVycm9yICE9IE5VTEwpOworKwkJICB1aV9vdXRfZmllbGRfZm10IChvdXQs ICJ2YWx1ZSIsCisrCQkJCSAgICBfKCI8ZXJyb3IgcmVhZGluZyB2YXJpYWJsZTogJXM+IiksCisr CQkJCSAgICBmYS0+ZXJyb3IpOworIAkJfQorKwkgICAgICBlbHNlIGlmIChweV9wcmludF92YWx1 ZSAob3V0LCB2YWwsIG9wdHMsIDAsIGFyZ3NfdHlwZSwgbGFuZ3VhZ2UpCisrCQkgICAgICAgPT0g RVhUX0xBTkdfQlRfRVJST1IpCisrCQlyZXR2YWwgPSBFWFRfTEFOR19CVF9FUlJPUjsKKyAJICAg IH0KKyAJfQorIAorICAgICAgIGRvX2NsZWFudXBzIChjbGVhbnVwcyk7CisgICAgIH0KKyAgIGlm IChleGNlcHQucmVhc29uIDwgMCkKKy0gICAgeworLSAgICAgIGdkYnB5X2NvbnZlcnRfZXhjZXB0 aW9uIChleGNlcHQpOworLSAgICAgIGdvdG8gZXJyb3I7CistICAgIH0KKy0KKy0gIHJldHVybiBF WFRfTEFOR19CVF9PSzsKKysgICAgZ2RicHlfY29udmVydF9leGNlcHRpb24gKGV4Y2VwdCk7Cisg CistIGVycm9yOgorLSAgcmV0dXJuIEVYVF9MQU5HX0JUX0VSUk9SOworKyAgcmV0dXJuIHJldHZh bDsKKyB9CisgCisgLyogSGVscGVyIGZ1bmN0aW9uIHRvIGxvb3Agb3ZlciBmcmFtZSBhcmd1bWVu dHMgcHJvdmlkZWQgYnkgdGhlCitkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9u L2FtZDY0LXB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcuUyBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5 dGhvbi9hbWQ2NC1weS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLlMKK25ldyBmaWxlIG1vZGUgMTAw NzU1CitpbmRleCAwMDAwMDAwLi4zYWMxYjIzCistLS0gL2Rldi9udWxsCisrKysgYi9nZGIvdGVz dHN1aXRlL2dkYi5weXRob24vYW1kNjQtcHktZnJhbWVmaWx0ZXItaW52YWxpZGFyZy5TCitAQCAt MCwwICsxLDI2MSBAQAorKy8qIFRoaXMgdGVzdGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUg ZGVidWdnZXIuCisrCisrICAgQ29weXJpZ2h0IDIwMTQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuCisrCisrICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKysgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyAgIHRoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y CisrICAgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKysKKysgICBUaGlzIHBy b2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK KysgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgorKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4gIFNlZSB0aGUKKysgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig bW9yZSBkZXRhaWxzLgorKworKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisrICAgYWxvbmcgd2l0aCB0aGlzIHByb2dy YW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLworKwor Ky8qIFRoaXMgZmlsZSBpcyBjb21waWxlZCBmcm9tIGEgc2luZ2xlIGxpbmUKKysgICBpbnQgbWFp biAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7IHJldHVybiAwOyB9CisrICAgdXNpbmcgLWcgLWRB IC1TIC1PMiBhbmQgcGF0Y2hlZCBhcyAjaWYtZWQgYmVsb3cuICAqLworKworKwkuZmlsZQkicHkt ZnJhbWVmaWx0ZXItaW52YWxpZGFyZy5jIgorKwkudGV4dAorKy5MdGV4dDA6CisrCS5nbG9ibAlt YWluCisrCS50eXBlCW1haW4sIEBmdW5jdGlvbgorK21haW46CisrLkxGQjA6CisrCS5maWxlIDEg InB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcuYyIKKysJIyBweS1mcmFtZWZpbHRlci1pbnZhbGlk YXJnLmM6MQorKwkubG9jIDEgMSAwCisrCS5jZmlfc3RhcnRwcm9jCisrIyBCTE9DSyAyIHNlcTow CisrIyBQUkVEOiBFTlRSWSAoRkFMTFRIUlUpCisrCXB1c2hxCSVyYnAKKysJLmNmaV9kZWZfY2Zh X29mZnNldCAxNgorKwkuY2ZpX29mZnNldCA2LCAtMTYKKysJbW92cQklcnNwLCAlcmJwCisrCS5j ZmlfZGVmX2NmYV9yZWdpc3RlciA2CisrCW1vdmwJJWVkaSwgLTQoJXJicCkKKysJbW92cQklcnNp LCAtMTYoJXJicCkKKysJIyBweS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLmM6MgorKwkubG9jIDEg MiAwCisrCW1vdmwJJDAsICVlYXgKKysJIyBweS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLmM6Mwor KwkubG9jIDEgMyAwCisrCXBvcHEJJXJicAorKwkuY2ZpX2RlZl9jZmEgNywgOAorKyMgU1VDQzog RVhJVCBbMTAwLjAlXSAKKysJcmV0CisrCS5jZmlfZW5kcHJvYworKy5MRkUwOgorKwkuc2l6ZQlt YWluLCAuLW1haW4KKysuTGV0ZXh0MDoKKysJLnNlY3Rpb24JLmRlYnVnX2luZm8sIiIsQHByb2di aXRzCisrLkxkZWJ1Z19pbmZvMDoKKysJLmxvbmcJLkxlIC0gLkxzCSMgTGVuZ3RoIG9mIENvbXBp bGF0aW9uIFVuaXQgSW5mbworKy5MczoKKysJLnZhbHVlCTB4NAkjIERXQVJGIHZlcnNpb24gbnVt YmVyCisrCS5sb25nCS5MZGVidWdfYWJicmV2MAkjIE9mZnNldCBJbnRvIEFiYnJldi4gU2VjdGlv bgorKwkuYnl0ZQkweDgJIyBQb2ludGVyIFNpemUgKGluIGJ5dGVzKQorKwkudWxlYjEyOCAweDEJ IyAoRElFICgweGIpIERXX1RBR19jb21waWxlX3VuaXQpCisrCS5sb25nCS5MQVNGMwkjIERXX0FU X3Byb2R1Y2VyOiAiR05VIEMgNC45LjEgMjAxNDA4MTMgKFJlZCBIYXQgNC45LjEtNykgLW10dW5l PWdlbmVyaWMgLW1hcmNoPXg4Ni02NCAtZyIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfbGFuZ3VhZ2UK KysJLmxvbmcJLkxBU0Y0CSMgRFdfQVRfbmFtZTogInB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcu YyIKKysJLmxvbmcJLkxBU0Y1CSMgRFdfQVRfY29tcF9kaXI6ICIiCisrCS5xdWFkCS5MdGV4dDAJ IyBEV19BVF9sb3dfcGMKKysJLnF1YWQJLkxldGV4dDAtLkx0ZXh0MAkjIERXX0FUX2hpZ2hfcGMK KysJLmxvbmcJLkxkZWJ1Z19saW5lMAkjIERXX0FUX3N0bXRfbGlzdAorK2RpZTJkOgorKwkudWxl YjEyOCAweDIJIyAoRElFICgweDJkKSBEV19UQUdfc3VicHJvZ3JhbSkKKysJCQkjIERXX0FUX2V4 dGVybmFsCisrCS5sb25nCS5MQVNGNgkjIERXX0FUX25hbWU6ICJtYWluIgorKwkuYnl0ZQkweDEJ IyBEV19BVF9kZWNsX2ZpbGUgKHB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcuYykKKysJLmJ5dGUJ MHgxCSMgRFdfQVRfZGVjbF9saW5lCisrCQkJIyBEV19BVF9wcm90b3R5cGVkCisrCS5sb25nCWRp ZTZiLS5MZGVidWdfaW5mbzAJIyBEV19BVF90eXBlCisrCS5xdWFkCS5MRkIwCSMgRFdfQVRfbG93 X3BjCisrCS5xdWFkCS5MRkUwLS5MRkIwCSMgRFdfQVRfaGlnaF9wYworKwkudWxlYjEyOCAweDEJ IyBEV19BVF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJIyBEV19PUF9jYWxsX2ZyYW1lX2NmYQor KwkJCSMgRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzCisrZGllNGU6CisrCS51bGViMTI4IDB4Mwkj IChESUUgKDB4NGUpIERXX1RBR19mb3JtYWxfcGFyYW1ldGVyKQorKwkubG9uZwkuTEFTRjAJIyBE V19BVF9uYW1lOiAiYXJnYyIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfZGVjbF9maWxlIChweS1mcmFt ZWZpbHRlci1pbnZhbGlkYXJnLmMpCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfbGluZQorKwku bG9uZwlkaWU2Yi0uTGRlYnVnX2luZm8wCSMgRFdfQVRfdHlwZQorKyNpZiAwCisrCS51bGViMTI4 IDB4MgkjIERXX0FUX2xvY2F0aW9uCisrCS5ieXRlCTB4OTEJIyBEV19PUF9mYnJlZworKwkuc2xl YjEyOCAtMjAKKysjZW5kaWYKKysjaWYgMAorKwkudWxlYjEyOCAxZiAtIDJmCSMgRFdfQVRfbG9j YXRpb24KKysyOgorKwkuYnl0ZQkweDAzCSMgRFdfT1BfYWRkcgorKwkucXVhZCAwCisrMToKKysj ZW5kaWYKKysjaWYgMQorKwkudWxlYjEyOCAxZiAtIDJmCSMgRFdfQVRfbG9jYXRpb24KKysyOgor KwkuYnl0ZQkweDEzCSMgRFdfT1BfZHJvcAorKwkucXVhZCAwCisrMToKKysjZW5kaWYKKytkaWU1 YzoKKysJLnVsZWIxMjggMHgzCSMgKERJRSAoMHg1YykgRFdfVEFHX2Zvcm1hbF9wYXJhbWV0ZXIp CisrCS5sb25nCS5MQVNGMQkjIERXX0FUX25hbWU6ICJhcmd2IgorKwkuYnl0ZQkweDEJIyBEV19B VF9kZWNsX2ZpbGUgKHB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcuYykKKysJLmJ5dGUJMHgxCSMg RFdfQVRfZGVjbF9saW5lCisrCS5sb25nCWRpZTcyLS5MZGVidWdfaW5mbzAJIyBEV19BVF90eXBl CisrCS51bGViMTI4IDB4MgkjIERXX0FUX2xvY2F0aW9uCisrCS5ieXRlCTB4OTEJIyBEV19PUF9m YnJlZworKwkuc2xlYjEyOCAtMzIKKysJLmJ5dGUJMAkjIGVuZCBvZiBjaGlsZHJlbiBvZiBESUUg MHgyZAorK2RpZTZiOgorKwkudWxlYjEyOCAweDQJIyAoRElFICgweDZiKSBEV19UQUdfYmFzZV90 eXBlKQorKwkuYnl0ZQkweDQJIyBEV19BVF9ieXRlX3NpemUKKysJLmJ5dGUJMHg1CSMgRFdfQVRf ZW5jb2RpbmcKKysJLmFzY2lpICJpbnRcMCIJIyBEV19BVF9uYW1lCisrZGllNzI6CisrCS51bGVi MTI4IDB4NQkjIChESUUgKDB4NzIpIERXX1RBR19wb2ludGVyX3R5cGUpCisrCS5ieXRlCTB4OAkj IERXX0FUX2J5dGVfc2l6ZQorKwkubG9uZwlkaWU3OC0uTGRlYnVnX2luZm8wCSMgRFdfQVRfdHlw ZQorK2RpZTc4OgorKwkudWxlYjEyOCAweDUJIyAoRElFICgweDc4KSBEV19UQUdfcG9pbnRlcl90 eXBlKQorKwkuYnl0ZQkweDgJIyBEV19BVF9ieXRlX3NpemUKKysJLmxvbmcJZGllN2UtLkxkZWJ1 Z19pbmZvMAkjIERXX0FUX3R5cGUKKytkaWU3ZToKKysJLnVsZWIxMjggMHg2CSMgKERJRSAoMHg3 ZSkgRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMHgxCSMgRFdfQVRfYnl0ZV9zaXplCisrCS5i eXRlCTB4NgkjIERXX0FUX2VuY29kaW5nCisrCS5sb25nCS5MQVNGMgkjIERXX0FUX25hbWU6ICJj aGFyIgorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweGIKKysuTGU6CisrCS5z ZWN0aW9uCS5kZWJ1Z19hYmJyZXYsIiIsQHByb2diaXRzCisrLkxkZWJ1Z19hYmJyZXYwOgorKwku dWxlYjEyOCAweDEJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MTEJIyAoVEFHOiBEV19U QUdfY29tcGlsZV91bml0KQorKwkuYnl0ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIx MjggMHgyNQkjIChEV19BVF9wcm9kdWNlcikKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3Ry cCkKKysJLnVsZWIxMjggMHgxMwkjIChEV19BVF9sYW5ndWFnZSkKKysJLnVsZWIxMjggMHhiCSMg KERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEy OCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDFiCSMgKERXX0FUX2NvbXBfZGly KQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDExCSMgKERX X0FUX2xvd19wYykKKysJLnVsZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjgg MHgxMgkjIChEV19BVF9oaWdoX3BjKQorKwkudWxlYjEyOCAweDcJIyAoRFdfRk9STV9kYXRhOCkK KysJLnVsZWIxMjggMHgxMAkjIChEV19BVF9zdG10X2xpc3QpCisrCS51bGViMTI4IDB4MTcJIyAo RFdfRk9STV9zZWNfb2Zmc2V0KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHgy CSMgKGFiYnJldiBjb2RlKQorKwkudWxlYjEyOCAweDJlCSMgKFRBRzogRFdfVEFHX3N1YnByb2dy YW0pCisrCS5ieXRlCTB4MQkjIERXX2NoaWxkcmVuX3llcworKwkudWxlYjEyOCAweDNmCSMgKERX X0FUX2V4dGVybmFsKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQor KwkudWxlYjEyOCAweDMJIyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1f c3RycCkKKysJLnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUpCisrCS51bGViMTI4IDB4 YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMgKERXX0FUX2RlY2xfbGluZSkK KysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4MjcJIyAoRFdf QVRfcHJvdG90eXBlZCkKKysJLnVsZWIxMjggMHgxOQkjIChEV19GT1JNX2ZsYWdfcHJlc2VudCkK KysJLnVsZWIxMjggMHg0OQkjIChEV19BVF90eXBlKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZP Uk1fcmVmNCkKKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51bGViMTI4IDB4 MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MTIJIyAoRFdfQVRfaGlnaF9wYykKKysJ LnVsZWIxMjggMHg3CSMgKERXX0ZPUk1fZGF0YTgpCisrCS51bGViMTI4IDB4NDAJIyAoRFdfQVRf ZnJhbWVfYmFzZSkKKysJLnVsZWIxMjggMHgxOAkjIChEV19GT1JNX2V4cHJsb2MpCisrCS51bGVi MTI4IDB4MjExNwkjIChEV19BVF9HTlVfYWxsX2NhbGxfc2l0ZXMpCisrCS51bGViMTI4IDB4MTkJ IyAoRFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEy OCAweDMJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4NQkjIChUQUc6IERXX1RBR19mb3Jt YWxfcGFyYW1ldGVyKQorKwkuYnl0ZQkwCSMgRFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgz CSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4ZQkjIChEV19GT1JNX3N0cnApCisrCS51bGVi MTI4IDB4M2EJIyAoRFdfQVRfZGVjbF9maWxlKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9k YXRhMSkKKysJLnVsZWIxMjggMHgzYgkjIChEV19BVF9kZWNsX2xpbmUpCisrCS51bGViMTI4IDB4 YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisrCS51 bGViMTI4IDB4MTMJIyAoRFdfRk9STV9yZWY0KQorKwkudWxlYjEyOCAweDIJIyAoRFdfQVRfbG9j YXRpb24pCisrCS51bGViMTI4IDB4MTgJIyAoRFdfRk9STV9leHBybG9jKQorKwkuYnl0ZQkwCisr CS5ieXRlCTAKKysJLnVsZWIxMjggMHg0CSMgKGFiYnJldiBjb2RlKQorKwkudWxlYjEyOCAweDI0 CSMgKFRBRzogRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisr CS51bGViMTI4IDB4YgkjIChEV19BVF9ieXRlX3NpemUpCisrCS51bGViMTI4IDB4YgkjIChEV19G T1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNlCSMgKERXX0FUX2VuY29kaW5nKQorKwkudWxlYjEy OCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisr CS51bGViMTI4IDB4OAkjIChEV19GT1JNX3N0cmluZykKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisr CS51bGViMTI4IDB4NQkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHhmCSMgKFRBRzogRFdf VEFHX3BvaW50ZXJfdHlwZSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51bGViMTI4 IDB4YgkjIChEV19BVF9ieXRlX3NpemUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGEx KQorKwkudWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisrCS51bGViMTI4IDB4MTMJIyAoRFdf Rk9STV9yZWY0KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHg2CSMgKGFiYnJl diBjb2RlKQorKwkudWxlYjEyOCAweDI0CSMgKFRBRzogRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5 dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51bGViMTI4IDB4YgkjIChEV19BVF9ieXRlX3NpemUp CisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNlCSMgKERX X0FUX2VuY29kaW5nKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIx MjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4ZQkjIChEV19GT1JNX3N0cnApCisr CS5ieXRlCTAKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS5zZWN0aW9uCS5kZWJ1Z19hcmFuZ2Vz LCIiLEBwcm9nYml0cworKwkubG9uZwkweDJjCSMgTGVuZ3RoIG9mIEFkZHJlc3MgUmFuZ2VzIElu Zm8KKysJLnZhbHVlCTB4MgkjIERXQVJGIFZlcnNpb24KKysJLmxvbmcJLkxkZWJ1Z19pbmZvMAkj IE9mZnNldCBvZiBDb21waWxhdGlvbiBVbml0IEluZm8KKysJLmJ5dGUJMHg4CSMgU2l6ZSBvZiBB ZGRyZXNzCisrCS5ieXRlCTAJIyBTaXplIG9mIFNlZ21lbnQgRGVzY3JpcHRvcgorKwkudmFsdWUJ MAkjIFBhZCB0byAxNiBieXRlIGJvdW5kYXJ5CisrCS52YWx1ZQkwCisrCS5xdWFkCS5MdGV4dDAJ IyBBZGRyZXNzCisrCS5xdWFkCS5MZXRleHQwLS5MdGV4dDAJIyBMZW5ndGgKKysJLnF1YWQJMAor KwkucXVhZAkwCisrCS5zZWN0aW9uCS5kZWJ1Z19saW5lLCIiLEBwcm9nYml0cworKy5MZGVidWdf bGluZTA6CisrCS5zZWN0aW9uCS5kZWJ1Z19zdHIsIk1TIixAcHJvZ2JpdHMsMQorKy5MQVNGMToK KysJLnN0cmluZwkiYXJndiIKKysuTEFTRjQ6CisrCS5zdHJpbmcJInB5LWZyYW1lZmlsdGVyLWlu dmFsaWRhcmcuYyIKKysuTEFTRjU6CisrCS5zdHJpbmcJIiIKKysuTEFTRjA6CisrCS5zdHJpbmcJ ImFyZ2MiCisrLkxBU0YzOgorKwkuc3RyaW5nCSJHTlUgQyA0LjkuMSAyMDE0MDgxMyAoUmVkIEhh dCA0LjkuMS03KSAtbXR1bmU9Z2VuZXJpYyAtbWFyY2g9eDg2LTY0IC1nIgorKy5MQVNGNjoKKysJ LnN0cmluZwkibWFpbiIKKysuTEFTRjI6CisrCS5zdHJpbmcJImNoYXIiCisrCS5pZGVudAkiR0ND OiAoR05VKSA0LjkuMSAyMDE0MDgxMyAoUmVkIEhhdCA0LjkuMS03KSIKKysJLnNlY3Rpb24JLm5v dGUuR05VLXN0YWNrLCIiLEBwcm9nYml0cworZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2Ri LnB5dGhvbi9weS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLWdkYi5weS5pbiBiL2dkYi90ZXN0c3Vp dGUvZ2RiLnB5dGhvbi9weS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLWdkYi5weS5pbgorbmV3IGZp bGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAuLjFmYTZmZmMKKy0tLSAvZGV2L251bGwKKysr KyBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLWdk Yi5weS5pbgorQEAgLTAsMCArMSw0OCBAQAorKyMgQ29weXJpZ2h0IChDKSAyMDE0IEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLgorKworKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdh cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKysjIGl0IHVuZGVyIHRo ZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5 CisrIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgorKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKysj CisrIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwKKysjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisrIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1Ig QSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisrIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorKyMKKysjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh IGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisrIyBhbG9uZyB3aXRoIHRo aXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4K KysKKysjIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBHREIgdGVzdHN1aXRlLiAgSXQgdGVzdHMg UHl0aG9uLWJhc2VkCisrIyBmcmFtZS1maWx0ZXJzLgorK2ltcG9ydCBnZGIKKytpbXBvcnQgaXRl cnRvb2xzCisrZnJvbSBnZGIuRnJhbWVEZWNvcmF0b3IgaW1wb3J0IEZyYW1lRGVjb3JhdG9yCisr CisrCisrY2xhc3MgRnJhbWVPYmpGaWxlICgpOgorKworKyAgICBkZWYgX19pbml0X18gKHNlbGYp OgorKyAgICAgICAgc2VsZi5uYW1lID0gIkZpbHRlcjEiCisrICAgICAgICBzZWxmLnByaW9yaXR5 ID0gMQorKyAgICAgICAgc2VsZi5lbmFibGVkID0gRmFsc2UKKysgICAgICAgIGdkYi5jdXJyZW50 X3Byb2dzcGFjZSgpLmZyYW1lX2ZpbHRlcnMgWyJQcm9nc3BhY2UiICsgc2VsZi5uYW1lXSA9IHNl bGYKKysgICAgICAgIGdkYi5jdXJyZW50X29iamZpbGUoKS5mcmFtZV9maWx0ZXJzIFsiT2JqZWN0 RmlsZSIgKyBzZWxmLm5hbWVdID0gc2VsZgorKworKyAgICBkZWYgZmlsdGVyIChzZWxmLCBmcmFt ZV9pdGVyKToKKysgICAgICAgIHJldHVybiBmcmFtZV9pdGVyCisrCisrY2xhc3MgRnJhbWVPYmpG aWxlMiAoKToKKysKKysgICAgZGVmIF9faW5pdF9fIChzZWxmKToKKysgICAgICAgIHNlbGYubmFt ZSA9ICJGaWx0ZXIyIgorKyAgICAgICAgc2VsZi5wcmlvcml0eSA9IDEwMAorKyAgICAgICAgc2Vs Zi5lbmFibGVkID0gVHJ1ZQorKyAgICAgICAgZ2RiLmN1cnJlbnRfcHJvZ3NwYWNlKCkuZnJhbWVf ZmlsdGVycyBbIlByb2dzcGFjZSIgKyBzZWxmLm5hbWVdID0gc2VsZgorKyAgICAgICAgZ2RiLmN1 cnJlbnRfb2JqZmlsZSgpLmZyYW1lX2ZpbHRlcnMgWyJPYmplY3RGaWxlIiArIHNlbGYubmFtZV0g PSBzZWxmCisrCisrICAgIGRlZiBmaWx0ZXIgKHNlbGYsIGZyYW1lX2l0ZXIpOgorKyAgICAgICAg cmV0dXJuIGZyYW1lX2l0ZXIKKysKKytGcmFtZU9iakZpbGUoKQorK0ZyYW1lT2JqRmlsZTIoKQor ZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1mcmFtZWZpbHRlci1pbnZh bGlkYXJnLmV4cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1mcmFtZWZpbHRlci1pbnZh bGlkYXJnLmV4cAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAuLmY3MGQxNmUK Ky0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1mcmFtZWZp bHRlci1pbnZhbGlkYXJnLmV4cAorQEAgLTAsMCArMSw2NyBAQAorKyMgQ29weXJpZ2h0IChDKSAy MDE0IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorKworKyMgVGhpcyBwcm9ncmFtIGlz IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKysj IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5CisrIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KKysjCisrIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisrIyBNRVJDSEFOVEFCSUxJVFkgb3Ig RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisrIyBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorKyMKKysjIFlvdSBzaG91bGQgaGF2 ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisrIyBh bG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcv bGljZW5zZXMvPi4KKysKKytsb2FkX2xpYiBnZGItcHl0aG9uLmV4cAorKworK3N0YW5kYXJkX3Rl c3RmaWxlIGFtZDY0LXB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcuUworKworK2lmIHsgIVtpc3Rh cmdldCB4ODZfNjQtKi0qIF0gfHwgIVtpc19scDY0X3RhcmdldF0gfSB7CisrICAgIHZlcmJvc2Ug IlNraXBwaW5nIHB5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcuIgorKyAgICByZXR1cm4KKyt9Cisr CisrIyBXZSBjYW5ub3QgdXNlIHByZXBhcmVfZm9yX3Rlc3RpbmcgYXMgd2UgaGF2ZSB0byBzZXQg dGhlIHNhZmUtcGF0Y2gKKysjIHRvIGNoZWNrIG9iamZpbGUgYW5kIHByb2dzcGFjZSBwcmludGVy cy4KKytpZiB7W2J1aWxkX2V4ZWN1dGFibGUgJHRlc3RmaWxlLmV4cCAkdGVzdGZpbGUgJHNyY2Zp bGUge31dID09IC0xfSB7CisrICAgIHJldHVybiAtMQorK30KKysKKysjIFN0YXJ0IHdpdGggYSBm cmVzaCBnZGIuCisrZ2RiX2V4aXQKKytnZGJfc3RhcnQKKysKKysjIFNraXAgYWxsIHRlc3RzIGlm IFB5dGhvbiBzY3JpcHRpbmcgaXMgbm90IGVuYWJsZWQuCisraWYgeyBbc2tpcF9weXRob25fdGVz dHNdIH0geyBjb250aW51ZSB9CisrCisrIyBNYWtlIHRoZSAtZ2RiLnB5IHNjcmlwdCBhdmFpbGFi bGUgdG8gZ2RiLCBpdCBpcyBhdXRvbWFnaWNhbGx5IGxvYWRlZCBieSBnZGIuCisrIyBDYXJlIGlz IHRha2VuIHRvIHB1dCBpdCBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlIGJpbmFyeSBzbyB0 aGF0CisrIyBnZGIgd2lsbCBmaW5kIGl0LgorK3NldCByZW1vdGVfb2JqX3B5dGhvbl9maWxlIFwK KysgICAgW3JlbW90ZV9kb3dubG9hZCBcCisrCSBob3N0ICR7c3JjZGlyfS8ke3N1YmRpcn0vJHt0 ZXN0ZmlsZX0tZ2RiLnB5LmluIFwKKysJIFtzdGFuZGFyZF9vdXRwdXRfZmlsZSAke3Rlc3RmaWxl fS1nZGIucHldXQorKworK2dkYl9yZWluaXRpYWxpemVfZGlyICRzcmNkaXIvJHN1YmRpcgorK2dk Yl90ZXN0X25vX291dHB1dCAic2V0IGF1dG8tbG9hZCBzYWZlLXBhdGggJHtyZW1vdGVfb2JqX3B5 dGhvbl9maWxlfSIgXAorKyAgICAic2V0IGF1dG8tbG9hZCBzYWZlLXBhdGgiCisrZ2RiX2xvYWQg JHtiaW5maWxlfQorKyMgVmVyaWZ5IGdkYiBsb2FkZWQgdGhlIHNjcmlwdC4KKytnZGJfdGVzdCAi aW5mbyBhdXRvLWxvYWQgcHl0aG9uLXNjcmlwdHMiICJZZXMuKi8ke3Rlc3RmaWxlfS1nZGIucHku KiIgXAorKyAgICAiVGVzdCBhdXRvLWxvYWQgaGFkIGxvYWRlZCBweXRob24gc2NyaXB0cyIKKysK KytpZiAhW3J1bnRvX21haW5dIHRoZW4geworKyAgICBwZXJyb3IgImNvdWxkbid0IHJ1biB0byBi cmVha3BvaW50IgorKyAgICByZXR1cm4KKyt9CisrZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgcHl0 aG9uIHByaW50LXN0YWNrIGZ1bGwiIFwKKysgICAgIlNldCBweXRob24gcHJpbnQtc3RhY2sgdG8g ZnVsbCIKKysKKysjIExvYWQgZ2xvYmFsIGZyYW1lLWZpbHRlcnMKKytzZXQgcmVtb3RlX3B5dGhv bl9maWxlIFtnZGJfcmVtb3RlX2Rvd25sb2FkIGhvc3QgXAorKwkJCSAgICAke3NyY2Rpcn0vJHtz dWJkaXJ9LyR7dGVzdGZpbGV9LnB5XQorK2dkYl90ZXN0X25vX291dHB1dCAicHl0aG9uIGV4ZWMg KG9wZW4gKCcke3JlbW90ZV9weXRob25fZmlsZX0nKS5yZWFkICgpKSIgXAorKyAgICAiTG9hZCBw eXRob24gZmlsZSIKKysKKytnZGJfdGVzdCAiYnQiICIgaW4gbmlhbSBcXChhcmdjPTxlcnJvciBy ZWFkaW5nIHZhcmlhYmxlOiBkd2FyZiBleHByZXNzaW9uIHN0YWNrIHVuZGVyZmxvdz4sIGFyZ3Y9 MHhcWzAtOWEtZlxdK1xcKSBhdCBweS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLmM6XFswLTlcXSsi ICJidCBmdWxsIHdpdGggZmlsdGVycyIKK2RpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5w eXRob24vcHktZnJhbWVmaWx0ZXItaW52YWxpZGFyZy5weSBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5 dGhvbi9weS1mcmFtZWZpbHRlci1pbnZhbGlkYXJnLnB5CituZXcgZmlsZSBtb2RlIDEwMDY0NAor aW5kZXggMDAwMDAwMC4uZDVmOTJjYgorLS0tIC9kZXYvbnVsbAorKysrIGIvZ2RiL3Rlc3RzdWl0 ZS9nZGIucHl0aG9uL3B5LWZyYW1lZmlsdGVyLWludmFsaWRhcmcucHkKK0BAIC0wLDAgKzEsNTkg QEAKKysjIENvcHlyaWdodCAoQykgMjAxNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4K KysKKysjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0 ZSBpdCBhbmQvb3IgbW9kaWZ5CisrIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyMgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKysjIChhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisrIworKyMgVGhpcyBwcm9ncmFtIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisrIyBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor KyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg U2VlIHRoZQorKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K KysjCisrIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZQorKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNl ZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisrCisrIyBUaGlzIGZpbGUgaXMgcGFy dCBvZiB0aGUgR0RCIHRlc3RzdWl0ZS4gIEl0IHRlc3RzIFB5dGhvbi1iYXNlZAorKyMgZnJhbWUt ZmlsdGVycy4KKytpbXBvcnQgZ2RiCisraW1wb3J0IGl0ZXJ0b29scworK2Zyb20gZ2RiLkZyYW1l RGVjb3JhdG9yIGltcG9ydCBGcmFtZURlY29yYXRvcgorK2ltcG9ydCBjb3B5CisrCisrY2xhc3Mg UmV2ZXJzZV9GdW5jdGlvbiAoRnJhbWVEZWNvcmF0b3IpOgorKworKyAgICBkZWYgX19pbml0X18o c2VsZiwgZm9iaik6CisrICAgICAgICBzdXBlcihSZXZlcnNlX0Z1bmN0aW9uLCBzZWxmKS5fX2lu aXRfXyhmb2JqKQorKyAgICAgICAgc2VsZi5mb2JqID0gZm9iagorKworKyAgICBkZWYgZnVuY3Rp b24gKHNlbGYpOgorKyAgICAgICAgZm5hbWUgPSBzdHIgKHNlbGYuZm9iai5mdW5jdGlvbigpKQor KyAgICAgICAgaWYgKGZuYW1lID09IE5vbmUgb3IgZm5hbWUgPT0gIiIpOgorKyAgICAgICAgICAg IHJldHVybiBOb25lCisrICAgICAgICBpZiBmbmFtZSA9PSAnZW5kX2Z1bmMnOgorKyAgICAgICAg ICAgIGV4dHJhID0gc2VsZi5mb2JqLmluZmVyaW9yX2ZyYW1lKCkucmVhZF92YXIoJ3N0cicpLnN0 cmluZygpCisrICAgICAgICBlbHNlOgorKyAgICAgICAgICAgIGV4dHJhID0gJycKKysgICAgICAg IGZuYW1lID0gZm5hbWVbOjotMV0gKyBleHRyYQorKyAgICAgICAgcmV0dXJuIGZuYW1lCisrCisr Y2xhc3MgRnJhbWVGaWx0ZXIgKCk6CisrCisrICAgIGRlZiBfX2luaXRfXyAoc2VsZik6CisrICAg ICAgICBzZWxmLm5hbWUgPSAiUmV2ZXJzZSIKKysgICAgICAgIHNlbGYucHJpb3JpdHkgPSAxMDAK KysgICAgICAgIHNlbGYuZW5hYmxlZCA9IFRydWUKKysgICAgICAgIGdkYi5mcmFtZV9maWx0ZXJz IFtzZWxmLm5hbWVdID0gc2VsZgorKworKyAgICBkZWYgZmlsdGVyIChzZWxmLCBmcmFtZV9pdGVy KToKKysgICAgICAgICMgUHl0aG9uIDMueCBtb3ZlZCB0aGUgaXRlcnRvb2xzLmltYXAgZnVuY3Rp b25hbGl0eSB0byBtYXAoKSwKKysgICAgICAgICMgc28gY2hlY2sgaWYgaXQgaXMgYXZhaWxhYmxl LgorKyAgICAgICAgaWYgaGFzYXR0cihpdGVydG9vbHMsICJpbWFwIik6CisrICAgICAgICAgICAg ZnJhbWVfaXRlciA9IGl0ZXJ0b29scy5pbWFwIChSZXZlcnNlX0Z1bmN0aW9uLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfaXRlcikKKysgICAgICAgIGVs c2U6CisrICAgICAgICAgICAgZnJhbWVfaXRlciA9IG1hcChSZXZlcnNlX0Z1bmN0aW9uLCBmcmFt ZV9pdGVyKQorKworKyAgICAgICAgcmV0dXJuIGZyYW1lX2l0ZXIKKysKKytGcmFtZUZpbHRlcigp CisKKy0tZDZHbTRFZGNhZHpCamRORC0tCisK