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: Than Ngo To: git-commits@fedoraproject.org Subject: [rpms/chromium] epel9: - Update to 150.0.7871.124 Date: Thu, 16 Jul 2026 07:37:39 GMT Message-ID: <178418745948.1.8939532877959117402.rpms-chromium-6a33b22870b5@fedoraproject.org> List-ID: X-Git-Repo: rpms/chromium X-Git-Branch: epel9 X-Git-Rev: 6a33b22870b5602a6538a2631f730138a4418fb1 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvY2hyb21pdW0KICAgICAgICAgICAgQnJhbmNoIDogZXBlbDkKICAgICAgICAg ICAgQ29tbWl0IDogNmEzM2IyMjg3MGI1NjAyYTY1MzhhMjYzMWY3MzAxMzhhNDQxOGZiMQogICAg ICAgICAgICBBdXRob3IgOiBUaGFuIE5nbyA8dGhhbkByZWRoYXQuY29tPgogICAgICAgICAgICBE YXRlICAgOiAyMDI2LTA3LTE1VDE0OjU2OjUyKzAyOjAwCiAgICAgICAgICAgIFN0YXRzICA6ICs4 ODUvLTMgaW4gNiBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9y YXByb2plY3Qub3JnL3JwbXMvY2hyb21pdW0vYy82YTMzYjIyODcwYjU2MDJhNjUzOGEyNjMxZjcz MDEzOGE0NDE4ZmIxP2JyYW5jaD1lcGVsOQoKICAgICAgICAgICAgTG9nOgogICAgICAgICAgICAt IFVwZGF0ZSB0byAxNTAuMC43ODcxLjEyNAogICogQ1ZFLTIwMjYtMTU3NjQ6IFVzZSBhZnRlciBm cmVlIGluIE96b25lCiAgKiBDVkUtMjAyNi0xNTc2NTogVXNlIGFmdGVyIGZyZWUgaW4gT3pvbmUK ICAqIENWRS0yMDI2LTE1NzY2OiBVbmluaXRpYWxpemVkIFVzZSBpbiBTa2lhCiAgKiBDVkUtMjAy Ni0xNTc2NzogSGVhcCBidWZmZXIgb3ZlcmZsb3cgaW4gbGlieXV2CiAgKiBDVkUtMjAyNi0xNTc2 ODogSW5zdWZmaWNpZW50IHBvbGljeSBlbmZvcmNlbWVudCBpbiBIVE1MLWluLUNhbnZhcwogICog Q1ZFLTIwMjYtMTU3Njk6IEluc3VmZmljaWVudCB2YWxpZGF0aW9uIG9mIHVudHJ1c3RlZCBpbnB1 dCBpbiBMaW51eCBUb29sa2l0IFRoZW1pbmcKICAqIENWRS0yMDI2LTE1NzcwOiBVbmluaXRpYWxp emVkIFVzZSBpbiBWOAogICogQ1ZFLTIwMjYtMTU3NzE6IEluc3VmZmljaWVudCB2YWxpZGF0aW9u IG9mIHVudHJ1c3RlZCBpbnB1dCBpbiBNZWRpYQogICogQ1ZFLTIwMjYtMTU3NzI6IFVzZSBhZnRl ciBmcmVlIGluIEdQVQogICogQ1ZFLTIwMjYtMTU3NzM6IFVzZSBhZnRlciBmcmVlIGluIENvcmUK ICAqIENWRS0yMDI2LTE1Nzc0OiBVc2UgYWZ0ZXIgZnJlZSBpbiBTa2lhCiAgKiBDVkUtMjAyNi0x NTc3NTogSW5zdWZmaWNpZW50IHBvbGljeSBlbmZvcmNlbWVudCBpbiBWOAogICogQ1ZFLTIwMjYt MTU3NzY6IFR5cGUgQ29uZnVzaW9uIGluIFY4CiAgKiBDVkUtMjAyNi0xNTc3NzogVXNlIGFmdGVy IGZyZWUgaW4gVUkKICAqIENWRS0yMDI2LTE1Nzc4OiBJbnN1ZmZpY2llbnQgdmFsaWRhdGlvbiBv ZiB1bnRydXN0ZWQgaW5wdXQgaW4gTmF2aWdhdGlvbgoKLSBCYWNrcG9ydCBwYXRjaGVzIHRvIGlt cHJvdmUgYXV0byBkYXJrbW9kZQoKLS0tCmRpZmYgLS1naXQgYS9jaHJvbWl1bS0xNTAtQWRkLXNp emUtdGhyZXNob2xkLWZvci1jbGFzc2lmeWluZy1TVkctZG9jdW1lbnRzLWZvci1hdXRvLWRhcmst bW9kZS5wYXRjaCBiL2Nocm9taXVtLTE1MC1BZGQtc2l6ZS10aHJlc2hvbGQtZm9yLWNsYXNzaWZ5 aW5nLVNWRy1kb2N1bWVudHMtZm9yLWF1dG8tZGFyay1tb2RlLnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhZGFkYmIKLS0tIC9kZXYvbnVsbAorKysgYi9jaHJvbWl1 bS0xNTAtQWRkLXNpemUtdGhyZXNob2xkLWZvci1jbGFzc2lmeWluZy1TVkctZG9jdW1lbnRzLWZv ci1hdXRvLWRhcmstbW9kZS5wYXRjaApAQCAtMCwwICsxLDM3MiBAQAorY29tbWl0IGI1OTM0YjEx Y2ZjMjk0OGY4Yjk3ZWJiMDk5N2FhYjVmNzdlMmZlMmMKK0F1dGhvcjogUHJhc2hhbnQgTmV2YXNl IDxwbmV2YXNlQG1pY3Jvc29mdC5jb20+CitEYXRlOiAgIE1vbiBKdWwgMTMgMDQ6MTA6MDAgMjAy NiAtMDcwMAorCisgICAgQWRkIHNpemUgdGhyZXNob2xkIGZvciBjbGFzc2lmeWluZyBTVkcgZG9j dW1lbnRzIGZvciBhdXRvIGRhcmsgbW9kZS4KKyAgICAKKyAgICBMYXJnZSBzdGFuZGFsb25lIFNW RyBkb2N1bWVudHMgYXJlIHRyZWF0ZWQgYXMgY29udGVudCAoaWxsdXN0cmF0aW9ucy8KKyAgICBw aG90b3MpIGFuZCBsZWZ0IHVudG91Y2hlZCBieSBhdXRvIGRhcmsgbW9kZSwgd2hpbGUgc21hbGwg b25lcyBsaWtlCisgICAgaWNvbnMgYXJlIGNvbnNpZGVyZWQgZm9yIGF1dG8gZGFyayBtb2RlLgor ICAgIAorICAgIE5lc3RlZCBTVkdzIGFyZSBoYW5kbGVkIHZpYSBhIHN0YWNrIG9mIGF1dG8gZGFy ayBtb2RlIHBhdXNlZCBzdGF0ZXMgb24KKyAgICBHcmFwaGljc0NvbnRleHQsIG1hbmFnZWQgYnkg U2NvcGVkQXV0b0RhcmtNb2RlU3RhdGUuIEFuIGljb24tc2l6ZWQKKyAgICBpbm5lciBTVkcgcmUt ZW5hYmxlcyBpbnZlcnNpb24gZXZlbiBpbnNpZGUgYSBwYXVzZWQgKGxhcmdlKSBjb250YWluZXIs CisgICAgYW5kIHRoZSBvdXRlciBzdGF0ZSBpcyByZXN0b3JlZCBvbiBzY29wZSBleGl0LiBJbWFn ZXMgcmVtYWluIGdhdGVkIGJ5CisgICAgdGhlaXIgb3duIHNpemUgY2xhc3NpZmljYXRpb24gcmF0 aGVyIHRoYW4gdGhlIHBhdXNlZCBzdGF0ZS4KKyAgICAKKyAgICBCdWc6IDQ0OTkwOTUyNAorICAg IENoYW5nZS1JZDogSWZkOGI2OGVjOWEzMGFkNjZjMTE2Y2Y0MWQ1MTBlZWFkNDk5ZDNiZDYKKyAg ICBSZXZpZXdlZC1vbjogaHR0cHM6Ly9jaHJvbWl1bS1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbS9j L2Nocm9taXVtL3NyYy8rLzgwMzYxMjAKKyAgICBSZXZpZXdlZC1ieTogU3RlcGhlbiBDaGVubmV5 IDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CisgICAgQ29tbWl0LVF1ZXVlOiBQcmFzaGFudCBOZXZh c2UgPHBuZXZhc2VAbWljcm9zb2Z0LmNvbT4KKyAgICBDci1Db21taXQtUG9zaXRpb246IHJlZnMv aGVhZHMvbWFpbkB7IzE2NjEwNDR9CisKK2RpZmYgLS1naXQgYS90aGlyZF9wYXJ0eS9ibGluay9y ZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlLmNjIGIvdGhpcmRfcGFydHkv YmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9hdXRvX2RhcmtfbW9kZS5jYworaW5kZXgg NjU4ZjZhNGU0ZjZmLi5lNGI1YTgxNTUxNDggMTAwNjQ0CistLS0gYS90aGlyZF9wYXJ0eS9ibGlu ay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlLmNjCisrKysgYi90aGly ZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlLmNj CitAQCAtNjksNiArNjksMjUgQEAgSW1hZ2VBdXRvRGFya01vZGUgSW1hZ2VDbGFzc2lmaWVySGVs cGVyOjpHZXRJbWFnZUF1dG9EYXJrTW9kZSgKKyAgICAgICBHZXRJbWFnZVR5cGVXaXRoWm9vbShs YXlvdXRfem9vbSwgZGVzdF9yZWN0LCBzcmNfcmVjdCkpOworIH0KKyAKKysvLyBzdGF0aWMKKytE YXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0U1ZHRG9j dW1lbnRUeXBlKAorKyAgICBMb2NhbEZyYW1lJiBsb2NhbF9mcmFtZSwKKysgICAgY29uc3QgZ2Z4 OjpSZWN0JiBzaXplKSB7CisrICAvLyB8c2l6ZXwgaW5jbHVkZXMgdGhlIGxheW91dCB6b29tIGZh Y3RvciAocGFnZSB6b29tIGFuZCBEU0YpLiBVbmRvIGl0IHNvIHRoZQorKyAgLy8gc2l6ZSB0aHJl c2hvbGQgbWF0Y2hlcyBiaXRtYXAgaW1hZ2VzLCB3aG9zZSBjbGFzc2lmaWNhdGlvbiBpcyB1bmFm ZmVjdGVkIGJ5CisrICAvLyBwYWdlIHpvb20gYW5kIERTRi4KKysgIGNvbnN0IGZsb2F0IGxheW91 dF96b29tID0gbG9jYWxfZnJhbWUuTGF5b3V0Wm9vbUZhY3RvcigpOworKyAgY29uc3QgZmxvYXQg dW56b29tZWRfd2lkdGggPQorKyAgICAgIGxheW91dF96b29tID4gMC5mID8gc2l6ZS53aWR0aCgp IC8gbGF5b3V0X3pvb20gOiBzaXplLndpZHRoKCk7CisrICBjb25zdCBmbG9hdCB1bnpvb21lZF9o ZWlnaHQgPQorKyAgICAgIGxheW91dF96b29tID4gMC5mID8gc2l6ZS5oZWlnaHQoKSAvIGxheW91 dF96b29tIDogc2l6ZS5oZWlnaHQoKTsKKysgIGlmICh1bnpvb21lZF93aWR0aCA8PSBrTWF4SW1h Z2VMZW5ndGggJiYgdW56b29tZWRfaGVpZ2h0IDw9IGtNYXhJbWFnZUxlbmd0aCkgeworKyAgICBy ZXR1cm4gRGFya01vZGVGaWx0ZXI6OkltYWdlVHlwZTo6a0ljb247CisrICB9CisrCisrICByZXR1 cm4gRGFya01vZGVGaWx0ZXI6OkltYWdlVHlwZTo6a1Bob3RvOworK30KKysKKyAvLyBzdGF0aWMK KyBEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1h Z2VUeXBlRm9yVGVzdGluZygKKyAgICAgY29uc3QgZ2Z4OjpSZWN0RiYgZGVzdF9yZWN0LAorZGlm ZiAtLWdpdCBhL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0 b19kYXJrX21vZGUuaCBiL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFp bnRfYXV0b19kYXJrX21vZGUuaAoraW5kZXggYWZkNTdlZWUyYjQ1Li5hMjFkMTQ3MmNkZTYgMTAw NjQ0CistLS0gYS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1 dG9fZGFya19tb2RlLmgKKysrKyBiL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFp bnQvcGFpbnRfYXV0b19kYXJrX21vZGUuaAorQEAgLTM5LDYgKzM5LDEwIEBAIGNsYXNzIEltYWdl Q2xhc3NpZmllckhlbHBlciB7CisgICAgICAgRGFya01vZGVGaWx0ZXI6OkVsZW1lbnRSb2xlIHJv bGUgPQorICAgICAgICAgICBEYXJrTW9kZUZpbHRlcjo6RWxlbWVudFJvbGU6OmtCYWNrZ3JvdW5k KTsKKyAKKysgIENPUkVfRVhQT1JUIHN0YXRpYyBEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEdl dFNWR0RvY3VtZW50VHlwZSgKKysgICAgICBMb2NhbEZyYW1lJiBsb2NhbF9mcmFtZSwKKysgICAg ICBjb25zdCBnZng6OlJlY3QmIHNpemUpOworKworICAgQ09SRV9FWFBPUlQgc3RhdGljIERhcmtN b2RlRmlsdGVyOjpJbWFnZVR5cGUgR2V0SW1hZ2VUeXBlRm9yVGVzdGluZygKKyAgICAgICBjb25z dCBnZng6OlJlY3RGJiBkZXN0X3JlY3QsCisgICAgICAgY29uc3QgZ2Z4OjpSZWN0RiYgc3JjX3Jl Y3QsCitkaWZmIC0tZ2l0IGEvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9w YWludF9hdXRvX2RhcmtfbW9kZV90ZXN0LmNjIGIvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIv Y29yZS9wYWludC9wYWludF9hdXRvX2RhcmtfbW9kZV90ZXN0LmNjCitpbmRleCBjZjA1ZWExYTll OGEuLjMzN2FmZjhmZTk5NiAxMDA2NDQKKy0tLSBhL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVy L2NvcmUvcGFpbnQvcGFpbnRfYXV0b19kYXJrX21vZGVfdGVzdC5jYworKysrIGIvdGhpcmRfcGFy dHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9hdXRvX2RhcmtfbW9kZV90ZXN0LmNj CitAQCAtNCw4ICs0LDEzIEBACisgCisgI2luY2x1ZGUgInRoaXJkX3BhcnR5L2JsaW5rL3JlbmRl cmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0b19kYXJrX21vZGUuaCIKKyAKKysjaW5jbHVkZSA8bWVt b3J5PgorKworICNpbmNsdWRlICJ0ZXN0aW5nL2d0ZXN0L2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QuaCIK KysjaW5jbHVkZSAidGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9mcmFtZS9sb2NhbF9m cmFtZS5oIgorKyNpbmNsdWRlICJ0aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3Rlc3Rp bmcvZHVtbXlfcGFnZV9ob2xkZXIuaCIKKyAjaW5jbHVkZSAidGhpcmRfcGFydHkvYmxpbmsvcmVu ZGVyZXIvcGxhdGZvcm0vZ3JhcGhpY3MvZGFya19tb2RlX3NldHRpbmdzLmgiCisrI2luY2x1ZGUg InRoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL3BsYXRmb3JtL3Rlc3RpbmcvdGFza19lbnZpcm9u bWVudC5oIgorICNpbmNsdWRlICJ1aS9nZngvZ2VvbWV0cnkvcmVjdC5oIgorIAorIG5hbWVzcGFj ZSBibGluayB7CitAQCAtNzIsNiArNzcsMTggQEAgY2xhc3MgUGFpbnRBdXRvRGFya01vZGVUZXN0 IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgeworICAgICAgICAgSW1hZ2VDbGFzc2lmaWVySGVscGVy OjpHZXRJbWFnZVR5cGVGb3JUZXN0aW5nKGRlc3RfcmVjdCwgc3JjX3JlY3QsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0X3pvb20p KSk7CisgICB9CisrCisrICBEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEdldFNWR0RvY3VtZW50 VHlwZShmbG9hdCBsYXlvdXRfem9vbSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGdmeDo6UmVjdCYgc2l6ZSkgeworKyAgICBMb2NhbEZyYW1l JiBmcmFtZSA9IHBhZ2VfaG9sZGVyXy0+R2V0RnJhbWUoKTsKKysgICAgZnJhbWUuU2V0TGF5b3V0 Wm9vbUZhY3RvcihsYXlvdXRfem9vbSk7CisrICAgIHJldHVybiBJbWFnZUNsYXNzaWZpZXJIZWxw ZXI6OkdldFNWR0RvY3VtZW50VHlwZShmcmFtZSwgc2l6ZSk7CisrICB9CisrCisrIHByaXZhdGU6 CisrICB0ZXN0OjpUYXNrRW52aXJvbm1lbnQgdGFza19lbnZpcm9ubWVudF87CisrICBzdGQ6OnVu aXF1ZV9wdHI8RHVtbXlQYWdlSG9sZGVyPiBwYWdlX2hvbGRlcl8gPQorKyAgICAgIHN0ZDo6bWFr ZV91bmlxdWU8RHVtbXlQYWdlSG9sZGVyPihnZng6OlNpemUoODAwLCA2MDApKTsKKyB9OworIAor IFRFU1RfRihQYWludEF1dG9EYXJrTW9kZVRlc3QsIFNob3VsZEFwcGx5RmlsdGVyVG9JbWFnZSkg eworQEAgLTE1NCw0ICsxNzEsMzAgQEAgVEVTVF9GKFBhaW50QXV0b0RhcmtNb2RlVGVzdCwKKyAg IFRlc3RBcHBseUZpbHRlclRvSW1hZ2VJcnJlc3BlY3RpdmVPZlBhZ2Vab29tKHNjcmVlbl9pbmZv KTsKKyB9CisgCisrVEVTVF9GKFBhaW50QXV0b0RhcmtNb2RlVGVzdCwgU1ZHRG9jdW1lbnRJbWFn ZSkgeworKyAgLy8gQm90aCBkaW1lbnNpb25zIGFyZSBhdCBvciBiZWxvdyB0aGUgaWNvbiB0aHJl c2hvbGQgKGtNYXhJbWFnZUxlbmd0aCA9PSA2NCkuCisrICBFWFBFQ1RfRVEoRGFya01vZGVGaWx0 ZXI6OkltYWdlVHlwZTo6a0ljb24sCisrICAgICAgICAgICAgR2V0U1ZHRG9jdW1lbnRUeXBlKDEu MGYsIGdmeDo6UmVjdCg1MCwgNTApKSk7CisrCisrICAvLyBFaXRoZXIgZGltZW5zaW9uIGFib3Zl IHRoZSB0aHJlc2hvbGQgY2xhc3NpZmllcyB0aGUgZG9jdW1lbnQgYXMgYSBwaG90by4KKysgIEVY UEVDVF9FUShEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlOjprUGhvdG8sCisrICAgICAgICAgICAg R2V0U1ZHRG9jdW1lbnRUeXBlKDEuMGYsIGdmeDo6UmVjdCgyMDAsIDIwMCkpKTsKKysgIC8vIE9u bHkgdGhlIHdpZHRoIGV4Y2VlZHMgdGhlIHRocmVzaG9sZC4KKysgIEVYUEVDVF9FUShEYXJrTW9k ZUZpbHRlcjo6SW1hZ2VUeXBlOjprUGhvdG8sCisrICAgICAgICAgICAgR2V0U1ZHRG9jdW1lbnRU eXBlKDEuMGYsIGdmeDo6UmVjdCgxMDAsIDUwKSkpOworKyAgLy8gT25seSB0aGUgaGVpZ2h0IGV4 Y2VlZHMgdGhlIHRocmVzaG9sZC4KKysgIEVYUEVDVF9FUShEYXJrTW9kZUZpbHRlcjo6SW1hZ2VU eXBlOjprUGhvdG8sCisrICAgICAgICAgICAgR2V0U1ZHRG9jdW1lbnRUeXBlKDEuMGYsIGdmeDo6 UmVjdCg1MCwgMTAwKSkpOworKworKyAgLy8gQSA0MHg0MCBDU1Mtc2l6ZWQgU1ZHIHNjYWxlZCB1 cCBieSBhIDV4IGxheW91dCB6b29tIGlzIHN0aWxsIGFuIGljb24gYWZ0ZXIKKysgIC8vIHRoZSB6 b29tIGlzIHVuZG9uZS4KKysgIEVYUEVDVF9FUShEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlOjpr SWNvbiwKKysgICAgICAgICAgICBHZXRTVkdEb2N1bWVudFR5cGUoNS4wZiwgZ2Z4OjpSZWN0KDIw MCwgMjAwKSkpOworKworKyAgLy8gQSA0MDB4NDAwIENTUy1zaXplZCBTVkcgc2NhbGVkIGRvd24g YnkgYSAwLjI1eCBsYXlvdXQgem9vbSBpcyBzdGlsbCBhIHBob3RvCisrICAvLyBhZnRlciB0aGUg em9vbSBpcyB1bmRvbmUuCisrICBFWFBFQ1RfRVEoRGFya01vZGVGaWx0ZXI6OkltYWdlVHlwZTo6 a1Bob3RvLAorKyAgICAgICAgICAgIEdldFNWR0RvY3VtZW50VHlwZSgwLjI1ZiwgZ2Z4OjpSZWN0 KDEwMCwgMTAwKSkpOworK30KKysKKyB9ICAvLyBuYW1lc3BhY2UgYmxpbmsKK2RpZmYgLS1naXQg YS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3N2Z19yb290X3BhaW50ZXIu Y2MgYi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3N2Z19yb290X3BhaW50 ZXIuY2MKK2luZGV4IDE0NjQwMGU5NmE2OS4uYTkzZTllOGE5NmFiIDEwMDY0NAorLS0tIGEvdGhp cmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9zdmdfcm9vdF9wYWludGVyLmNjCisr KysgYi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3N2Z19yb290X3BhaW50 ZXIuY2MKK0BAIC00LDEyICs0LDE3IEBACisgCisgI2luY2x1ZGUgInRoaXJkX3BhcnR5L2JsaW5r L3JlbmRlcmVyL2NvcmUvcGFpbnQvc3ZnX3Jvb3RfcGFpbnRlci5oIgorIAorKyNpbmNsdWRlIDxv cHRpb25hbD4KKysKKysjaW5jbHVkZSAidGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9m cmFtZS9sb2NhbF9mcmFtZS5oIgorICNpbmNsdWRlICJ0aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJl ci9jb3JlL2xheW91dC9zdmcvbGF5b3V0X3N2Z19mb3JlaWduX29iamVjdC5oIgorICNpbmNsdWRl ICJ0aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL2xheW91dC9zdmcvbGF5b3V0X3N2Z19y b290LmgiCisrI2luY2x1ZGUgInRoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQv cGFpbnRfYXV0b19kYXJrX21vZGUuaCIKKyAjaW5jbHVkZSAidGhpcmRfcGFydHkvYmxpbmsvcmVu ZGVyZXIvY29yZS9wYWludC9wYWludF9pbmZvLmgiCisgI2luY2x1ZGUgInRoaXJkX3BhcnR5L2Js aW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfbGF5ZXIuaCIKKyAjaW5jbHVkZSAidGhpcmRf cGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9sYXllcl9wYWludGVyLmgiCisg I2luY2x1ZGUgInRoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvc3ZnL3N2Z19zdmdfZWxl bWVudC5oIgorKyNpbmNsdWRlICJ0aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9wbGF0Zm9ybS9n cmFwaGljcy9ncmFwaGljc19jb250ZXh0LmgiCisgI2luY2x1ZGUgInRoaXJkX3BhcnR5L2JsaW5r L3JlbmRlcmVyL3BsYXRmb3JtL3J1bnRpbWVfZW5hYmxlZF9mZWF0dXJlcy5oIgorIAorIG5hbWVz cGFjZSBibGluayB7CitAQCAtNjQsOCArNjksMTAgQEAgQWZmaW5lVHJhbnNmb3JtIFNWR1Jvb3RQ YWludGVyOjpUcmFuc2Zvcm1Ub1BpeGVsU25hcHBlZEJvcmRlckJveCgKKyB2b2lkIFNWR1Jvb3RQ YWludGVyOjpQYWludFJlcGxhY2VkKGNvbnN0IFBhaW50SW5mbyYgcGFpbnRfaW5mbywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFBoeXNpY2FsT2Zmc2V0JiBwYWlu dF9vZmZzZXQpIHsKKyAgIC8vIEFuIGVtcHR5IHZpZXdwb3J0IGRpc2FibGVzIHJlbmRlcmluZy4K Ky0gIGlmIChQaXhlbFNuYXBwZWRTaXplKHBhaW50X29mZnNldCkuSXNFbXB0eSgpKQorKyAgY29u c3QgZ2Z4OjpSZWN0IHNuYXBwZWRfc2l6ZSA9IFBpeGVsU25hcHBlZFNpemUocGFpbnRfb2Zmc2V0 KTsKKysgIGlmIChzbmFwcGVkX3NpemUuSXNFbXB0eSgpKSB7CisgICAgIHJldHVybjsKKysgIH0K KyAKKyAgIC8vIEFuIGVtcHR5IHZpZXdCb3ggYWxzbyBkaXNhYmxlcyByZW5kZXJpbmcuCisgICAv LyAoaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHL2Nvb3Jkcy5odG1sI1ZpZXdCb3hBdHRyaWJ1dGUp CitAQCAtNzgsNiArODUsMjMgQEAgdm9pZCBTVkdSb290UGFpbnRlcjo6UGFpbnRSZXBsYWNlZChj b25zdCBQYWludEluZm8mIHBhaW50X2luZm8sCisgICAgIHJldHVybjsKKyAgIH0KKyAKKysgIHN0 ZDo6b3B0aW9uYWw8R3JhcGhpY3NDb250ZXh0OjpTY29wZWRBdXRvRGFya01vZGVTdGF0ZT4gZGFy a19tb2RlX3N0YXRlOworKyAgaWYgKGxheW91dF9zdmdfcm9vdF8uU3R5bGVSZWYoKS5Gb3JjZURh cmsoKSkgeworKyAgICAvLyBPbmx5IHRyZWF0IGljb24vc2VwYXJhdG9yLXNpemVkIFNWRyBkb2N1 bWVudHMgYXMgY2FuZGlkYXRlcyBmb3IgZGFyaworKyAgICAvLyBtb2RlIGludmVyc2lvbi4gTGFy Z2VyIFNWR3MgYXJlIGxpa2VseSBjb250ZW50IChpbGx1c3RyYXRpb25zL3Bob3RvcykKKysgICAg Ly8gYW5kIHNob3VsZCBub3QgYmUgZm9yY2UtZGFya2VuZWQuIFRoaXMgbWlycm9ycyB0aGUgc2l6 ZS1iYXNlZCBpbWFnZQorKyAgICAvLyBjbGFzc2lmaWNhdGlvbiB1c2VkIGZvciBiaXRtYXBzIChr TWF4SW1hZ2VMZW5ndGgpLiBTVkdzIGNhbiBiZSBuZXN0ZWQsCisrICAgIC8vIHNvIHBhdXNlIHRo aXMgU1ZHJ3MgZGFyayBtb2RlIHN0YXRlIHdoaWxlIHBhaW50aW5nIGl0cyBjaGlsZHJlbjsgdGhl CisrICAgIC8vIHNjb3BlciByZXN0b3JlcyB0aGUgb3V0ZXIgc3RhdGUgd2hlbiBpdCBnb2VzIG91 dCBvZiBzY29wZS4gVGhpcyBsZXRzIGFuCisrICAgIC8vIGljb24tc2l6ZWQgU1ZHIGVtYmVkZGVk IGluc2lkZSBhIGxhcmdlciAocGF1c2VkKSBTVkcgcmUtZW5hYmxlIGludmVyc2lvbgorKyAgICAv LyBmb3IgaXRzZWxmLgorKyAgICBjb25zdCBib29sIHBhdXNlX2RhcmtfbW9kZSA9CisrICAgICAg ICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldFNWR0RvY3VtZW50VHlwZSgqbGF5b3V0X3N2Z19y b290Xy5HZXRGcmFtZSgpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc25hcHBlZF9zaXplKSAhPQorKyAgICAgICAgRGFya01vZGVGaWx0ZXI6Oklt YWdlVHlwZTo6a0ljb247CisrICAgIGRhcmtfbW9kZV9zdGF0ZS5lbXBsYWNlKHBhaW50X2luZm8u Y29udGV4dCwgcGF1c2VfZGFya19tb2RlKTsKKysgIH0KKysKKyAgIGZvciAoTGF5b3V0T2JqZWN0 KiBjaGlsZCA9IGxheW91dF9zdmdfcm9vdF8uRmlyc3RDaGlsZCgpOyBjaGlsZDsKKyAgICAgICAg Y2hpbGQgPSBjaGlsZC0+TmV4dFNpYmxpbmcoKSkgeworICAgICBpZiAoYXV0byogZm9yZWlnbl9v YmplY3QgPSBEeW5hbWljVG88TGF5b3V0U1ZHRm9yZWlnbk9iamVjdD4oY2hpbGQpKSB7CitkaWZm IC0tZ2l0IGEvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvcGxhdGZvcm0vZ3JhcGhpY3MvZ3Jh cGhpY3NfY29udGV4dC5jYyBiL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL3BsYXRmb3JtL2dy YXBoaWNzL2dyYXBoaWNzX2NvbnRleHQuY2MKK2luZGV4IDkyZDU5YWYwODFlZC4uZGYzOTVmYzI0 M2ZlIDEwMDY0NAorLS0tIGEvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvcGxhdGZvcm0vZ3Jh cGhpY3MvZ3JhcGhpY3NfY29udGV4dC5jYworKysrIGIvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVy ZXIvcGxhdGZvcm0vZ3JhcGhpY3MvZ3JhcGhpY3NfY29udGV4dC5jYworQEAgLTc3LDcgKzc3LDcg QEAgbmFtZXNwYWNlIHsKKyBTa0NvbG9yNGYgRGFya01vZGVDb2xvcihHcmFwaGljc0NvbnRleHQm IGNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU2tDb2xvcjRmJiBjb2xv ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBBdXRvRGFya01vZGUmIGF1dG9fZGFy a19tb2RlKSB7CistICBpZiAoYXV0b19kYXJrX21vZGUuZW5hYmxlZCkgeworKyAgaWYgKGF1dG9f ZGFya19tb2RlLmVuYWJsZWQgJiYgIWNvbnRleHQuSXNBdXRvRGFya01vZGVQYXVzZWQoKSkgewor ICAgICByZXR1cm4gY29udGV4dC5HZXREYXJrTW9kZUZpbHRlcigpLT5JbnZlcnRDb2xvcklmTmVl ZGVkKAorICAgICAgICAgY29sb3IsIGF1dG9fZGFya19tb2RlLnJvbGUsCisgICAgICAgICBTa0Nv bG9yNGY6OkZyb21Db2xvcihhdXRvX2RhcmtfbW9kZS5jb250cmFzdF9jb2xvcikpOworQEAgLTE4 OSw3ICsxODksNyBAQCBjbGFzcyBHcmFwaGljc0NvbnRleHQ6OkRhcmtNb2RlRmxhZ3MgZmluYWwg eworICAgRGFya01vZGVGbGFncyhHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsCisgICAgICAgICAg ICAgICAgIGNvbnN0IEF1dG9EYXJrTW9kZSYgYXV0b19kYXJrX21vZGUsCisgICAgICAgICAgICAg ICAgIGNvbnN0IGNjOjpQYWludEZsYWdzJiBmbGFncykgeworLSAgICBpZiAoYXV0b19kYXJrX21v ZGUuZW5hYmxlZCkgeworKyAgICBpZiAoYXV0b19kYXJrX21vZGUuZW5hYmxlZCAmJiAhY29udGV4 dC0+SXNBdXRvRGFya01vZGVQYXVzZWQoKSkgeworICAgICAgIGRhcmtfbW9kZV9mbGFnc18gPSBj b250ZXh0LT5HZXREYXJrTW9kZUZpbHRlcigpLT5BcHBseVRvRmxhZ3NJZk5lZWRlZCgKKyAgICAg ICAgICAgZmxhZ3MsIGF1dG9fZGFya19tb2RlLnJvbGUsCisgICAgICAgICAgIFNrQ29sb3I0Zjo6 RnJvbUNvbG9yKGF1dG9fZGFya19tb2RlLmNvbnRyYXN0X2NvbG9yKSk7CitAQCAtMjQ4LDYgKzI0 OCw5IEBAIERhcmtNb2RlRmlsdGVyKiBHcmFwaGljc0NvbnRleHQ6OkdldERhcmtNb2RlRmlsdGVy Rm9ySW1hZ2UoCisgICAgIGNvbnN0IEltYWdlQXV0b0RhcmtNb2RlJiBhdXRvX2RhcmtfbW9kZSkg eworICAgaWYgKCFhdXRvX2RhcmtfbW9kZS5lbmFibGVkKQorICAgICByZXR1cm4gbnVsbHB0cjsK KysgIC8vIEltYWdlcyBhcmUgZ2F0ZWQgYnkgdGhlaXIgb3duIHNpemUgY2xhc3NpZmljYXRpb24s IG5vdCBieSB0aGUgY29udGV4dCdzCisrICAvLyBhdXRvIGRhcmsgbW9kZSBwYXVzZWQgc3RhdGUs IHNvIGFuIGljb24tc2l6ZWQgaW1hZ2UgaXMgc3RpbGwgaW52ZXJ0ZWQgZXZlbgorKyAgLy8gd2hp bGUgZGFyayBtb2RlIGlzIHBhdXNlZCBmb3IgaXRzIGNvbnRhaW5lci4KKyAgIERhcmtNb2RlRmls dGVyKiBkYXJrX21vZGVfZmlsdGVyID0gR2V0RGFya01vZGVGaWx0ZXIoKTsKKyAgIGlmICghZGFy a19tb2RlX2ZpbHRlci0+U2hvdWxkQXBwbHlGaWx0ZXJUb0ltYWdlKGF1dG9fZGFya19tb2RlLmlt YWdlX3R5cGUpKQorICAgICByZXR1cm4gbnVsbHB0cjsKK2RpZmYgLS1naXQgYS90aGlyZF9wYXJ0 eS9ibGluay9yZW5kZXJlci9wbGF0Zm9ybS9ncmFwaGljcy9ncmFwaGljc19jb250ZXh0LmggYi90 aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9wbGF0Zm9ybS9ncmFwaGljcy9ncmFwaGljc19jb250 ZXh0LmgKK2luZGV4IDA0NjA5OGU3OTU3OC4uZjA3MmUyNGIxZTIyIDEwMDY0NAorLS0tIGEvdGhp cmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvcGxhdGZvcm0vZ3JhcGhpY3MvZ3JhcGhpY3NfY29udGV4 dC5oCisrKysgYi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9wbGF0Zm9ybS9ncmFwaGljcy9n cmFwaGljc19jb250ZXh0LmgKK0BAIC0yMTMsNiArMjEzLDM0IEBAIGNsYXNzIFBMQVRGT1JNX0VY UE9SVCBHcmFwaGljc0NvbnRleHQgeworICAgRGFya01vZGVGaWx0ZXIqIEdldERhcmtNb2RlRmls dGVyRm9ySW1hZ2UoCisgICAgICAgY29uc3QgSW1hZ2VBdXRvRGFya01vZGUmIGF1dG9fZGFya19t b2RlKTsKKyAKKysgIC8vIFB1c2hlcyBhIGRhcmsgbW9kZSBpbnZlcnNpb24gcGF1c2Ugc3RhdGUg b24gY29uc3RydWN0aW9uIGFuZCBwb3BzIGl0IG9uCisrICAvLyBkZXN0cnVjdGlvbiwgZ3VhcmFu dGVlaW5nIHB1c2hlcyBhbmQgcG9wcyBhcmUgYWx3YXlzIGJhbGFuY2VkLiBTZWUgdGhlCisrICAv LyBjb21tZW50IG9uIElzQXV0b0RhcmtNb2RlUGF1c2VkKCkgZm9yIHRoZSBzZW1hbnRpY3Mgb2Yg dGhlIHBhdXNlIHN0YXRlcy4KKysgIGNsYXNzIFNjb3BlZEF1dG9EYXJrTW9kZVN0YXRlIHsKKysg ICAgU1RBQ0tfQUxMT0NBVEVEKCk7CisrCisrICAgcHVibGljOgorKyAgICBTY29wZWRBdXRvRGFy a01vZGVTdGF0ZShHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGJvb2wgcGF1c2VkKQorKyAgICAg ICAgOiBjb250ZXh0Xyhjb250ZXh0KSB7CisrICAgICAgY29udGV4dF8uUHVzaEF1dG9EYXJrTW9k ZVN0YXRlKHBhdXNlZCk7CisrICAgIH0KKysgICAgU2NvcGVkQXV0b0RhcmtNb2RlU3RhdGUoY29u c3QgU2NvcGVkQXV0b0RhcmtNb2RlU3RhdGUmKSA9IGRlbGV0ZTsKKysgICAgU2NvcGVkQXV0b0Rh cmtNb2RlU3RhdGUmIG9wZXJhdG9yPShjb25zdCBTY29wZWRBdXRvRGFya01vZGVTdGF0ZSYpID0g ZGVsZXRlOworKyAgICB+U2NvcGVkQXV0b0RhcmtNb2RlU3RhdGUoKSB7IGNvbnRleHRfLlBvcEF1 dG9EYXJrTW9kZVN0YXRlKCk7IH0KKysKKysgICBwcml2YXRlOgorKyAgICBHcmFwaGljc0NvbnRl eHQmIGNvbnRleHRfOworKyAgfTsKKysKKysgIC8vIERhcmsgbW9kZSBjb2xvci9mbGFncyBpbnZl cnNpb24gcGF1c2Ugc3RhdGUuIFdoaWxlIHRoZSBsYXRlc3QgcHVzaGVkIHN0YXRlCisrICAvLyBp cyB0cnVlLCBpbnZlcnNpb24gaXMgcGF1c2VkIHJlZ2FyZGxlc3Mgb2YgdGhlIHBlci1kcmF3IHxl bmFibGVkfCBmbGFnLgorKyAgLy8gTmVzdGVkIHNjb3BlcyBjYW4gb3ZlcnJpZGUgdGhlIHBhdXNl IHN0YXRlIG9mIHRoZWlyIGFuY2VzdG9yczogdGhlIHB1c2hlZAorKyAgLy8gc3RhdGUgYXBwbGll cyB1bnRpbCBpdCBpcyBwb3BwZWQsIGFmdGVyIHdoaWNoIHRoZSBwcmV2aW91cyBzdGF0ZSB0YWtl cworKyAgLy8gZWZmZWN0IGFnYWluLiBVc2UgU2NvcGVkQXV0b0RhcmtNb2RlU3RhdGUgdG8gbWFu YWdlIHRoZSBzdGF0ZXMuCisrICBib29sIElzQXV0b0RhcmtNb2RlUGF1c2VkKCkgY29uc3Qgewor KyAgICByZXR1cm4gIWF1dG9fZGFya19tb2RlX3N0YXRlc18uZW1wdHkoKSAmJiBhdXRvX2Rhcmtf bW9kZV9zdGF0ZXNfLmJhY2soKTsKKysgIH0KKysKKyAgIHZvaWQgU2V0RGFya01vZGVGaWx0ZXJG b3JUZXN0KHN0ZDo6dW5pcXVlX3B0cjxEYXJrTW9kZUZpbHRlcj4pOworIAorICAgLy8gLS0tLS0t LS0tLSBTdGF0ZSBtYW5hZ2VtZW50IG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0KK0BAIC01MTEs NiArNTM5LDE2IEBAIGNsYXNzIFBMQVRGT1JNX0VYUE9SVCBHcmFwaGljc0NvbnRleHQgeworICAg ICByZXR1cm4gcGFpbnRfc3RhdGVfOworICAgfQorIAorKyAgLy8gTWFuYWdlZCBleGNsdXNpdmVs eSB0aHJvdWdoIFNjb3BlZEF1dG9EYXJrTW9kZVN0YXRlIHRvIGtlZXAgcHVzaGVzIGFuZCBwb3Bz CisrICAvLyBiYWxhbmNlZC4KKysgIHZvaWQgUHVzaEF1dG9EYXJrTW9kZVN0YXRlKGJvb2wgcGF1 c2VkKSB7CisrICAgIGF1dG9fZGFya19tb2RlX3N0YXRlc18ucHVzaF9iYWNrKHBhdXNlZCk7Cisr ICB9CisrICB2b2lkIFBvcEF1dG9EYXJrTW9kZVN0YXRlKCkgeworKyAgICBEQ0hFQ0soIWF1dG9f ZGFya19tb2RlX3N0YXRlc18uZW1wdHkoKSk7CisrICAgIGF1dG9fZGFya19tb2RlX3N0YXRlc18u cG9wX2JhY2soKTsKKysgIH0KKysKKyAgIHRlbXBsYXRlIDx0eXBlbmFtZSBEcmF3VGV4dEZ1bmM+ CisgICB2b2lkIERyYXdUZXh0UGFzc2VzKGNvbnN0IERyYXdUZXh0RnVuYyYpOworIAorQEAgLTU3 MSw2ICs2MDksNyBAQCBjbGFzcyBQTEFURk9STV9FWFBPUlQgR3JhcGhpY3NDb250ZXh0IHsKKyAK KyAgIHN0ZDo6dW5pcXVlX3B0cjxEYXJrTW9kZUZpbHRlcj4gZGFya19tb2RlX2ZpbHRlcl87Cisg CisrICBWZWN0b3I8Ym9vbD4gYXV0b19kYXJrX21vZGVfc3RhdGVzXzsKKyAgIGJvb2wgcHJpbnRp bmdfID0gZmFsc2U7CisgICBib29sIHByaW50aW5nX2ludGVybmFsX2hlYWRlcnNfYW5kX2Zvb3Rl cnNfID0gZmFsc2U7CisgICBib29sIGluX2RyYXdpbmdfcmVjb3JkZXJfID0gZmFsc2U7CitkaWZm IC0tZ2l0IGEvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvcGxhdGZvcm0vZ3JhcGhpY3MvZ3Jh cGhpY3NfY29udGV4dF90ZXN0LmNjIGIvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvcGxhdGZv cm0vZ3JhcGhpY3MvZ3JhcGhpY3NfY29udGV4dF90ZXN0LmNjCitpbmRleCBkMDk2NzZiYjkyYWQu LmU4NTA0Y2I1NDEwNiAxMDA2NDQKKy0tLSBhL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL3Bs YXRmb3JtL2dyYXBoaWNzL2dyYXBoaWNzX2NvbnRleHRfdGVzdC5jYworKysrIGIvdGhpcmRfcGFy dHkvYmxpbmsvcmVuZGVyZXIvcGxhdGZvcm0vZ3JhcGhpY3MvZ3JhcGhpY3NfY29udGV4dF90ZXN0 LmNjCitAQCAtMTk4LDUgKzE5OCw3NyBAQCBURVNUX0YoR3JhcGhpY3NDb250ZXh0RGFya01vZGVU ZXN0LCBJbnZlcnRMaWdodG5lc3NMQUIpIHsKKyAgIEVYUEVDVF9FUSgweGZmN2Y3ZjdmLCBiaXRt YXBfLmdldENvbG9yKDMsIDApKTsKKyB9CisgCisrVEVTVF9GKEdyYXBoaWNzQ29udGV4dERhcmtN b2RlVGVzdCwgU2NvcGVkQXV0b0RhcmtNb2RlU3RhdGVQYXVzZWQpIHsKKysgIFBhaW50Q29udHJv bGxlciBwYWludF9jb250cm9sbGVyOworKyAgR3JhcGhpY3NDb250ZXh0IGNvbnRleHQocGFpbnRf Y29udHJvbGxlcik7CisrICBEYXJrTW9kZVNldHRpbmdzIHNldHRpbmdzOworKyAgY29udGV4dC5T ZXREYXJrTW9kZUZpbHRlckZvclRlc3Qoc3RkOjptYWtlX3VuaXF1ZTxEYXJrTW9kZUZpbHRlcj4o c2V0dGluZ3MpKTsKKysgIEF1dG9EYXJrTW9kZSBhdXRvX2RhcmtfbW9kZShEYXJrTW9kZUZpbHRl cjo6RWxlbWVudFJvbGU6OmtCYWNrZ3JvdW5kLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC8qZW5hYmxlZD0qL3RydWUpOworKworKyAgRVhQRUNUX0ZBTFNFKGNvbnRleHQuSXNBdXRv RGFya01vZGVQYXVzZWQoKSk7CisrCisrICBjb250ZXh0LkJlZ2luUmVjb3JkaW5nKCk7CisrICB7 CisrICAgIC8vIFBhdXNpbmcgc3VwcHJlc3NlcyBpbnZlcnNpb24sIHNvIGJsYWNrIHN0YXlzIGJs YWNrLgorKyAgICBHcmFwaGljc0NvbnRleHQ6OlNjb3BlZEF1dG9EYXJrTW9kZVN0YXRlIHBhdXNl ZChjb250ZXh0LCAvKnBhdXNlZD0qL3RydWUpOworKyAgICBFWFBFQ1RfVFJVRShjb250ZXh0Lklz QXV0b0RhcmtNb2RlUGF1c2VkKCkpOworKyAgICBjb250ZXh0LkZpbGxSZWN0KGdmeDo6UmVjdEYo MCwgMCwgMSwgMSksIENvbG9yOjprQmxhY2ssIGF1dG9fZGFya19tb2RlKTsKKysKKysgICAgewor KyAgICAgIC8vIEEgbmVzdGVkIHNjb3BlIG92ZXJyaWRlcyB0aGUgYW5jZXN0b3IsIHJlLWVuYWJs aW5nIGludmVyc2lvbiBzbyBibGFjaworKyAgICAgIC8vIGJlY29tZXMgd2hpdGUuCisrICAgICAg R3JhcGhpY3NDb250ZXh0OjpTY29wZWRBdXRvRGFya01vZGVTdGF0ZSByZXN1bWVkKGNvbnRleHQs CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC8qcGF1c2VkPSovZmFsc2UpOworKyAgICAgIEVYUEVDVF9GQUxTRShjb250ZXh0LklzQXV0b0Rh cmtNb2RlUGF1c2VkKCkpOworKyAgICAgIGNvbnRleHQuRmlsbFJlY3QoZ2Z4OjpSZWN0RigxLCAw LCAxLCAxKSwgQ29sb3I6OmtCbGFjaywgYXV0b19kYXJrX21vZGUpOworKyAgICB9CisrCisrICAg IC8vIFRoZSBvdXRlciBwYXVzZWQgc3RhdGUgaXMgcmVzdG9yZWQgd2hlbiB0aGUgbmVzdGVkIHNj b3BlIGV4aXRzLgorKyAgICBFWFBFQ1RfVFJVRShjb250ZXh0LklzQXV0b0RhcmtNb2RlUGF1c2Vk KCkpOworKyAgfQorKworKyAgLy8gQmFjayB0byB0aGUgZGVmYXVsdCAobm90IHBhdXNlZCkgc3Rh dGUgYWZ0ZXIgYWxsIHNjb3BlcyBleGl0OyBpbnZlcnNpb24KKysgIC8vIGFwcGxpZXMgYWdhaW4s IHNvIGJsYWNrIGJlY29tZXMgd2hpdGUuCisrICBFWFBFQ1RfRkFMU0UoY29udGV4dC5Jc0F1dG9E YXJrTW9kZVBhdXNlZCgpKTsKKysgIGNvbnRleHQuRmlsbFJlY3QoZ2Z4OjpSZWN0RigyLCAwLCAx LCAxKSwgQ29sb3I6OmtCbGFjaywgYXV0b19kYXJrX21vZGUpOworKworKyAgY2FudmFzXy0+ZHJh d1BpY3R1cmUoY29udGV4dC5FbmRSZWNvcmRpbmcoKSk7CisrCisrICBFWFBFQ1RfRVEoU0tfQ29s b3JCTEFDSywgYml0bWFwXy5nZXRDb2xvcigwLCAwKSk7CisrICBFWFBFQ1RfRVEoU0tfQ29sb3JX SElURSwgYml0bWFwXy5nZXRDb2xvcigxLCAwKSk7CisrICBFWFBFQ1RfRVEoU0tfQ29sb3JXSElU RSwgYml0bWFwXy5nZXRDb2xvcigyLCAwKSk7CisrfQorKworK1RFU1RfRihHcmFwaGljc0NvbnRl eHREYXJrTW9kZVRlc3QsCisrICAgICAgIEJpdG1hcEltYWdlSWdub3Jlc0F1dG9EYXJrTW9kZVBh dXNlZFN0YXRlcykgeworKyAgUGFpbnRDb250cm9sbGVyIHBhaW50X2NvbnRyb2xsZXI7CisrICBH cmFwaGljc0NvbnRleHQgY29udGV4dChwYWludF9jb250cm9sbGVyKTsKKysgIERhcmtNb2RlU2V0 dGluZ3Mgc2V0dGluZ3M7CisrICBjb250ZXh0LlNldERhcmtNb2RlRmlsdGVyRm9yVGVzdChzdGQ6 Om1ha2VfdW5pcXVlPERhcmtNb2RlRmlsdGVyPihzZXR0aW5ncykpOworKworKyAgSW1hZ2VBdXRv RGFya01vZGUgaWNvbihEYXJrTW9kZUZpbHRlcjo6RWxlbWVudFJvbGU6OmtCYWNrZ3JvdW5kLAor KyAgICAgICAgICAgICAgICAgICAgICAgICAvKmVuYWJsZWQ9Ki90cnVlLCBEYXJrTW9kZUZpbHRl cjo6SW1hZ2VUeXBlOjprSWNvbik7CisrICBJbWFnZUF1dG9EYXJrTW9kZSBwaG90byhEYXJrTW9k ZUZpbHRlcjo6RWxlbWVudFJvbGU6OmtCYWNrZ3JvdW5kLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgLyplbmFibGVkPSovdHJ1ZSwgRGFya01vZGVGaWx0ZXI6OkltYWdlVHlwZTo6a1Bob3Rv KTsKKysKKysgIC8vIE5vdCBwYXVzZWQ6IGljb25zIGFyZSBpbnZlcnRlZCwgcGhvdG9zIGFyZSBu b3QuCisrICBFWFBFQ1RfRkFMU0UoY29udGV4dC5Jc0F1dG9EYXJrTW9kZVBhdXNlZCgpKTsKKysg IEVYUEVDVF9ORShudWxscHRyLCBjb250ZXh0LkdldERhcmtNb2RlRmlsdGVyRm9ySW1hZ2UoaWNv bikpOworKyAgRVhQRUNUX0VRKG51bGxwdHIsIGNvbnRleHQuR2V0RGFya01vZGVGaWx0ZXJGb3JJ bWFnZShwaG90bykpOworKworKyAgeworKyAgICAvLyBQYXVzZWQ6IHRoZSBpY29uIGlzIHN0aWxs IGludmVydGVkLCBhbmQgdGhlIHBob3RvIGlzIHN0aWxsIHVudG91Y2hlZC4KKysgICAgR3JhcGhp Y3NDb250ZXh0OjpTY29wZWRBdXRvRGFya01vZGVTdGF0ZSBwYXVzZWQoY29udGV4dCwgLypwYXVz ZWQ9Ki90cnVlKTsKKysgICAgRVhQRUNUX1RSVUUoY29udGV4dC5Jc0F1dG9EYXJrTW9kZVBhdXNl ZCgpKTsKKysgICAgRVhQRUNUX05FKG51bGxwdHIsIGNvbnRleHQuR2V0RGFya01vZGVGaWx0ZXJG b3JJbWFnZShpY29uKSk7CisrICAgIEVYUEVDVF9FUShudWxscHRyLCBjb250ZXh0LkdldERhcmtN b2RlRmlsdGVyRm9ySW1hZ2UocGhvdG8pKTsKKysgIH0KKysKKysgIC8vIEEgZGlzYWJsZWQgaW1h Z2UgYXV0byBkYXJrIG1vZGUgbmV2ZXIgcmV0dXJucyBhIGZpbHRlci4KKysgIEVYUEVDVF9FUShu dWxscHRyLAorKyAgICAgICAgICAgIGNvbnRleHQuR2V0RGFya01vZGVGaWx0ZXJGb3JJbWFnZShJ bWFnZUF1dG9EYXJrTW9kZTo6RGlzYWJsZWQoKSkpOworK30KKysKKyB9ICAvLyBuYW1lc3BhY2UK KyB9ICAvLyBuYW1lc3BhY2UgYmxpbmsKCmRpZmYgLS1naXQgYS9jaHJvbWl1bS0xNTAtTWFrZS1k YXJrLW1vZGUtYXBwbHktZmlsdGVyLXRvLWltYWdlcy1pcnJlc3BlY3RpdmUtb2YtbGF5b3V0LXpv b20ucGF0Y2ggYi9jaHJvbWl1bS0xNTAtTWFrZS1kYXJrLW1vZGUtYXBwbHktZmlsdGVyLXRvLWlt YWdlcy1pcnJlc3BlY3RpdmUtb2YtbGF5b3V0LXpvb20ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMC4uOGVjYWVkMAotLS0gL2Rldi9udWxsCisrKyBiL2Nocm9taXVtLTE1 MC1NYWtlLWRhcmstbW9kZS1hcHBseS1maWx0ZXItdG8taW1hZ2VzLWlycmVzcGVjdGl2ZS1vZi1s YXlvdXQtem9vbS5wYXRjaApAQCAtMCwwICsxLDIwNCBAQAorY29tbWl0IGNmOTU4OGUwNjU1NjYz ZTMwMTkxNWU1M2VjNWE4ZGY4YWU4NzRjZTQKK0F1dGhvcjogUHJhc2hhbnQgTmV2YXNlIDxwbmV2 YXNlQG1pY3Jvc29mdC5jb20+CitEYXRlOiAgIEZyaSBKdW4gMTkgMDY6MTk6NDcgMjAyNiAtMDcw MAorCisgICAgTWFrZSBkYXJrIG1vZGUgYXBwbHkgZmlsdGVyIHRvIGltYWdlcyBpcnJlc3BlY3Rp dmUgb2YgbGF5b3V0IHpvb20KKyAgICAKKyAgICBUaGUgbGF5b3V0IHpvb20gZmFjdG9yIGNvbWJp bmVzIHBhZ2Ugem9vbSB3aXRoIHRoZSBkZXZpY2Ugc2NhbGUgZmFjdG9yLgorICAgIFdoZW4gem9v bSBpcyBhcHBsaWVkLCB0aGUgcGFnZSBzaXplIHNjYWxlcyBhY2NvcmRpbmdseSwgYW5kIGltYWdl cyBhcmUKKyAgICBkcmF3biByZWxhdGl2ZSB0byB0aGUgbmV3IHBhZ2Ugc2l6ZS4gVGhpcyBzaG91 bGQgYWNjb3VudCBmb3IgdGhlIGhpZ2hlcgorICAgIGljb24gdGhyZXNob2xkIHJhdGlvIGNvbXBh cmVkIHdpdGggdGhlIDF4IHNjYWxlLiBPdGhlcndpc2UsIHRoZSBzYW1lCisgICAgaW1hZ2UgbWF5 IHJlY2VpdmUgZGlmZmVyZW50IGRhcmsgbW9kZSBmaWx0ZXJzIGF0IGRpZmZlcmVudCBzY2FsZXMs CisgICAgY3JlYXRpbmcgYSBwb29yIHVzZXIgZXhwZXJpZW5jZS4gVG8gYXZvaWQgdGhpcywgZGFy ayBtb2RlIGltYWdlCisgICAgY2xhc3NpZmljYXRpb24gc2hvdWxkIHJlbWFpbiBjb25zaXN0ZW50 IGFjcm9zcyBsYXlvdXQgem9vbSBmYWN0b3JzLgorICAgIAorICAgIENTUyB6b29tIGlzIHN0aWxs IGNvbnNpZGVyZWQsIGJlY2F1c2UgaXQgY2hhbmdlcyB0aGUgcmF0aW8gb2YgZHJhd24KKyAgICBp bWFnZSBzaXplIHRvIGRpc3BsYXkgc2l6ZSBpbiAxeCBzY2FsZS4KKyAgICAKKyAgICBCdWc6IDQ0 OTkwOTUyNAorICAgIENoYW5nZS1JZDogSWE0MjAwMDdiMjc4YTFmNTkyYzM1MzU1N2Q0Y2JmNjZh N2M1NzVjNDIKKyAgICBSZXZpZXdlZC1vbjogaHR0cHM6Ly9jaHJvbWl1bS1yZXZpZXcuZ29vZ2xl c291cmNlLmNvbS9jL2Nocm9taXVtL3NyYy8rLzc5NjE2NjAKKyAgICBSZXZpZXdlZC1ieTogU3Rl cGhlbiBDaGVubmV5IDxzY2hlbm5leUBjaHJvbWl1bS5vcmc+CisgICAgQ29tbWl0LVF1ZXVlOiBQ cmFzaGFudCBOZXZhc2UgPHBuZXZhc2VAbWljcm9zb2Z0LmNvbT4KKyAgICBBdXRvLVN1Ym1pdDog UHJhc2hhbnQgTmV2YXNlIDxwbmV2YXNlQG1pY3Jvc29mdC5jb20+CisgICAgQ3ItQ29tbWl0LVBv c2l0aW9uOiByZWZzL2hlYWRzL21haW5AeyMxNjQ5NjM4fQorCitkaWZmIC0tZ2l0IGEvdGhpcmRf cGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9hdXRvX2RhcmtfbW9kZS5jYyBi L3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0b19kYXJrX21v ZGUuY2MKK2luZGV4IDEyNDZmMTc5ZjliMTkuLjViMzQyODNkN2E1NTYgMTAwNjQ0CistLS0gYS90 aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2Rl LmNjCisrKysgYi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1 dG9fZGFya19tb2RlLmNjCitAQCAtNDEsNiArNDEsNyBAQCBEYXJrTW9kZUZpbHRlcjo6SW1hZ2VU eXBlIEdldEltYWdlVHlwZShmbG9hdCBkZXN0X3RvX2RldmljZV9yYXRpbywKKyAKKyBmbG9hdCBH ZXRSYXRpbyhjb25zdCBkaXNwbGF5OjpTY3JlZW5JbmZvJiBzY3JlZW5faW5mbywKKyAgICAgICAg ICAgICAgICBjb25zdCBnZng6OlJlY3RGJiBkZXN0X3JlY3QpIHsKKysgIC8vIENvbXB1dGUgZGV2 aWNlIHJlY3QgaW4gZGV2aWNlIHBpeGVscy4KKyAgIGNvbnN0IGdmeDo6U2l6ZUYmIGRldmljZV9y ZWN0ID0gZ2Z4OjpTY2FsZVNpemUoCisgICAgICAgZ2Z4OjpTaXplRihzY3JlZW5faW5mby5yZWN0 LnNpemUoKSksIHNjcmVlbl9pbmZvLmRldmljZV9zY2FsZV9mYWN0b3IpOworIAorQEAgLTQ4LDYg KzQ5LDI3IEBAIGZsb2F0IEdldFJhdGlvKGNvbnN0IGRpc3BsYXk6OlNjcmVlbkluZm8mIHNjcmVl bl9pbmZvLAorICAgICAgICAgICAgICAgICAgIGRlc3RfcmVjdC5oZWlnaHQoKSAvIGRldmljZV9y ZWN0LmhlaWdodCgpKTsKKyB9CisgCisrLy8gQ2xhc3NpZmllcyBhbiBpbWFnZSBhZnRlciB1bmRv aW5nIHRoZSBmcmFtZSdzIGxheW91dCB6b29tIGZhY3Rvci4KKysvLyB8ZGVzdF9yZWN0fCBjb21l cyBmcm9tIGxheW91dCBnZW9tZXRyeSBhbmQgaW5jbHVkZXMgbGF5b3V0IHpvb20gKHBhZ2Ugem9v bQorKy8vIGFuZCBwb3RlbnRpYWxseSBEU0YpIGFuZCBDU1Mgem9vbS4gVW5kbyBvbmx5IGxheW91 dCB6b29tIHNvIHBhZ2Ugem9vbSBhbmQKKysvLyBEU0YgZG8gbm90IGFmZmVjdCBjbGFzc2lmaWNh dGlvbiwgd2hpbGUgQ1NTIHpvb20gc3RpbGwgZG9lcy4gfHNyY19yZWN0fCBpcworKy8vIGRlcml2 ZWQgZnJvbSB0aGUgaW1hZ2UncyBpbnRyaW5zaWMgcGl4ZWwgc2l6ZSBhbmQgaXMgYWxyZWFkeQor Ky8vIHpvb20taW5kZXBlbmRlbnQsIHNvIGl0IG11c3QgYmUgbGVmdCB1bnRvdWNoZWQuCisrRGFy a01vZGVGaWx0ZXI6OkltYWdlVHlwZSBHZXRJbWFnZVR5cGVXaXRoWm9vbSgKKysgICAgY29uc3Qg ZGlzcGxheTo6U2NyZWVuSW5mbyYgc2NyZWVuX2luZm8sCisrICAgIGZsb2F0IHpvb20sCisrICAg IGNvbnN0IGdmeDo6UmVjdEYmIGRlc3RfcmVjdCwKKysgICAgY29uc3QgZ2Z4OjpSZWN0RiYgc3Jj X3JlY3QpIHsKKysgIGdmeDo6UmVjdEYgdW56b29tZWRfZGVzdF9yZWN0ID0gZGVzdF9yZWN0Owor KyAgaWYgKHpvb20gPiAwLmYgJiYgem9vbSAhPSAxLmYpIHsKKysgICAgdW56b29tZWRfZGVzdF9y ZWN0LlNjYWxlKDEuZiAvIHpvb20pOworKyAgfQorKworKyAgcmV0dXJuIEdldEltYWdlVHlwZShH ZXRSYXRpbyhzY3JlZW5faW5mbywgdW56b29tZWRfZGVzdF9yZWN0KSwKKysgICAgICAgICAgICAg ICAgICAgICAgZ2Z4OjpUb0VuY2xvc2luZ1JlY3QodW56b29tZWRfZGVzdF9yZWN0KSwKKysgICAg ICAgICAgICAgICAgICAgICAgZ2Z4OjpUb0VuY2xvc2luZ1JlY3Qoc3JjX3JlY3QpKTsKKyt9Cisr CisgfSAgLy8gbmFtZXNwYWNlCisgCisgLy8gc3RhdGljCitAQCAtNjMsMjAgKzg1LDE5IEBAIElt YWdlQXV0b0RhcmtNb2RlIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VBdXRvRGFya01v ZGUoCisgICBjb25zdCBkaXNwbGF5OjpTY3JlZW5JbmZvJiBzY3JlZW5faW5mbyA9CisgICAgICAg bG9jYWxfZnJhbWUuR2V0Q2hyb21lQ2xpZW50KCkuR2V0U2NyZWVuSW5mbyhsb2NhbF9mcmFtZSk7 CisgCistICByZXR1cm4gSW1hZ2VBdXRvRGFya01vZGUocm9sZSwgc3R5bGUuRm9yY2VEYXJrKCks CistICAgICAgICAgICAgICAgICAgICAgICAgICAgR2V0SW1hZ2VUeXBlKEdldFJhdGlvKHNjcmVl bl9pbmZvLCBkZXN0X3JlY3QpLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBnZng6OlRvRW5jbG9zaW5nUmVjdChkZXN0X3JlY3QpLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBnZng6OlRvRW5jbG9zaW5nUmVjdChzcmNfcmVjdCkpKTsK KysgIGNvbnN0IGZsb2F0IGxheW91dF96b29tID0gbG9jYWxfZnJhbWUuTGF5b3V0Wm9vbUZhY3Rv cigpOworKyAgcmV0dXJuIEltYWdlQXV0b0RhcmtNb2RlKAorKyAgICAgIHJvbGUsIHN0eWxlLkZv cmNlRGFyaygpLAorKyAgICAgIEdldEltYWdlVHlwZVdpdGhab29tKHNjcmVlbl9pbmZvLCBsYXlv dXRfem9vbSwgZGVzdF9yZWN0LCBzcmNfcmVjdCkpOworIH0KKyAKKyAvLyBzdGF0aWMKKyBEYXJr TW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBl Rm9yVGVzdGluZygKKyAgICAgZGlzcGxheTo6U2NyZWVuSW5mbyYgc2NyZWVuX2luZm8sCisgICAg IGNvbnN0IGdmeDo6UmVjdEYmIGRlc3RfcmVjdCwKKy0gICAgY29uc3QgZ2Z4OjpSZWN0RiYgc3Jj X3JlY3QpIHsKKy0gIHJldHVybiBHZXRJbWFnZVR5cGUoR2V0UmF0aW8oc2NyZWVuX2luZm8sIGRl c3RfcmVjdCksCistICAgICAgICAgICAgICAgICAgICAgIGdmeDo6VG9FbmNsb3NpbmdSZWN0KGRl c3RfcmVjdCksCistICAgICAgICAgICAgICAgICAgICAgIGdmeDo6VG9FbmNsb3NpbmdSZWN0KHNy Y19yZWN0KSk7CisrICAgIGNvbnN0IGdmeDo6UmVjdEYmIHNyY19yZWN0LAorKyAgICBmbG9hdCB6 b29tKSB7CisrICByZXR1cm4gR2V0SW1hZ2VUeXBlV2l0aFpvb20oc2NyZWVuX2luZm8sIHpvb20s IGRlc3RfcmVjdCwgc3JjX3JlY3QpOworIH0KKyAKKyB9ICAvLyBuYW1lc3BhY2UgYmxpbmsKK2Rp ZmYgLS1naXQgYS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1 dG9fZGFya19tb2RlLmggYi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3Bh aW50X2F1dG9fZGFya19tb2RlLmgKK2luZGV4IGYzZWRhMDExMzM5MWEuLjliZjhkZjFjMzNhODQg MTAwNjQ0CistLS0gYS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50 X2F1dG9fZGFya19tb2RlLmgKKysrKyBiL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUv cGFpbnQvcGFpbnRfYXV0b19kYXJrX21vZGUuaAorQEAgLTQyLDcgKzQyLDggQEAgY2xhc3MgSW1h Z2VDbGFzc2lmaWVySGVscGVyIHsKKyAgIENPUkVfRVhQT1JUIHN0YXRpYyBEYXJrTW9kZUZpbHRl cjo6SW1hZ2VUeXBlIEdldEltYWdlVHlwZUZvclRlc3RpbmcoCisgICAgICAgZGlzcGxheTo6U2Ny ZWVuSW5mbyYgc2NyZWVuX2luZm8sCisgICAgICAgY29uc3QgZ2Z4OjpSZWN0RiYgZGVzdF9yZWN0 LAorLSAgICAgIGNvbnN0IGdmeDo6UmVjdEYmIHNyY19yZWN0KTsKKysgICAgICBjb25zdCBnZng6 OlJlY3RGJiBzcmNfcmVjdCwKKysgICAgICBmbG9hdCB6b29tID0gMS4wZik7CisgfTsKKyAKKyB9 ICAvLyBuYW1lc3BhY2UgYmxpbmsKK2RpZmYgLS1naXQgYS90aGlyZF9wYXJ0eS9ibGluay9yZW5k ZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlX3Rlc3QuY2MgYi90aGlyZF9wYXJ0 eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlX3Rlc3QuY2MK K2luZGV4IDcwNWEzMDRkZTFjZTcuLjc3ZmYwZjA2OTE4OGUgMTAwNjQ0CistLS0gYS90aGlyZF9w YXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlX3Rlc3Qu Y2MKKysrKyBiL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0 b19kYXJrX21vZGVfdGVzdC5jYworQEAgLTEwLDcgKzEwLDY5IEBACisgCisgbmFtZXNwYWNlIGJs aW5rIHsKKyAKKy1jbGFzcyBQYWludEF1dG9EYXJrTW9kZVRlc3QgOiBwdWJsaWMgdGVzdGluZzo6 VGVzdCB7fTsKKytjbGFzcyBQYWludEF1dG9EYXJrTW9kZVRlc3QgOiBwdWJsaWMgdGVzdGluZzo6 VGVzdCB7CisrIHB1YmxpYzoKKysgIHZvaWQgVGVzdEFwcGx5RmlsdGVyVG9JbWFnZUlycmVzcGVj dGl2ZU9mUGFnZVpvb20oCisrICAgICAgZGlzcGxheTo6U2NyZWVuSW5mbyBzY3JlZW5faW5mbykg eworKyAgICBEYXJrTW9kZVNldHRpbmdzIHNldHRpbmdzOworKyAgICBEYXJrTW9kZUZpbHRlciBm aWx0ZXIoc2V0dGluZ3MpOworKworKyAgICBmbG9hdCBwYWdlX3pvb20gPSAxLjBmOworKyAgICBm bG9hdCBsYXlvdXRfem9vbSA9IDEuMGY7CisrICAgIGZsb2F0IGNzc196b29tID0gMS4wZjsKKysg ICAgZ2Z4OjpSZWN0RiBzcmNfcmVjdDsKKysgICAgZ2Z4OjpSZWN0RiBkZXN0X3JlY3Q7CisrCisr ICAgIC8vIEEgNTB4NTAgQ1NTIGljb24gZ2V0cyBmaWx0ZXJlZCBldmVuIGlmIHxkZXN0X3JlY3R8 IGJlY29tZXMgbGFyZ2VyIDI1MHgyNTAKKysgICAgLy8gdGhhbiB0aHJlc2hvbGQgc2l6ZSBpbiBs YXJnZXIgem9vbSBsZXZlbHMuCisrICAgIHNyY19yZWN0ID0gZ2Z4OjpSZWN0Rig1MCwgNTApOwor KyAgICBwYWdlX3pvb20gPSA1LjBmOworKyAgICBjc3Nfem9vbSA9IDEuMGY7CisrICAgIGxheW91 dF96b29tID0gcGFnZV96b29tICogc2NyZWVuX2luZm8uZGV2aWNlX3NjYWxlX2ZhY3RvcjsKKysg ICAgZGVzdF9yZWN0ID0KKysgICAgICAgIGdmeDo6UmVjdEYoNTAgKiBsYXlvdXRfem9vbSAqIGNz c196b29tLCA1MCAqIGxheW91dF96b29tICogY3NzX3pvb20pOworKyAgICBFWFBFQ1RfVFJVRShm aWx0ZXIuU2hvdWxkQXBwbHlGaWx0ZXJUb0ltYWdlKAorKyAgICAgICAgSW1hZ2VDbGFzc2lmaWVy SGVscGVyOjpHZXRJbWFnZVR5cGVGb3JUZXN0aW5nKHNjcmVlbl9pbmZvLCBkZXN0X3JlY3QsCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Jj X3JlY3QsIGxheW91dF96b29tKSkpOworKworKyAgICAvLyBBIDUweDUwIENTUyBpY29uIHdpdGgg Y3NzIHpvb20gNS4wZiBiZWNvbWVzIDI1MHgyNTAgYW5kIGRvZXMgbm90IGdldAorKyAgICAvLyBm aWx0ZXJyZWQgYXMgfGRlc3RfcmVjdHwgaXMgbGFyZ2VyIHRoYW4gdGhyZXNob2xkIHNpemUuCisr ICAgIHNyY19yZWN0ID0gZ2Z4OjpSZWN0Rig1MCwgNTApOworKyAgICBwYWdlX3pvb20gPSA1LjBm OworKyAgICBjc3Nfem9vbSA9IDUuMGY7CisrICAgIGxheW91dF96b29tID0gcGFnZV96b29tICog c2NyZWVuX2luZm8uZGV2aWNlX3NjYWxlX2ZhY3RvcjsKKysgICAgZGVzdF9yZWN0ID0KKysgICAg ICAgIGdmeDo6UmVjdEYoNTAgKiBsYXlvdXRfem9vbSAqIGNzc196b29tLCA1MCAqIGxheW91dF96 b29tICogY3NzX3pvb20pOworKyAgICBFWFBFQ1RfRkFMU0UoZmlsdGVyLlNob3VsZEFwcGx5Rmls dGVyVG9JbWFnZSgKKysgICAgICAgIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBl Rm9yVGVzdGluZyhzY3JlZW5faW5mbywgZGVzdF9yZWN0LAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyY19yZWN0LCBsYXlvdXRfem9vbSkp KTsKKysKKysgICAgLy8gQW4gaW1hZ2Ugd2l0aCAyMDB4MjAwIENTUyBzaXplIGdldHMgY2xhc3Np ZmllZCBhcyBwaG90byBhbmQgZG9lcyBub3QgZ2V0CisrICAgIC8vIGZpbHRlcmVkLCBldmVuIGlm IHxkZXN0X3JlY3R8IGJlY29tZXMgc21hbGxlciA1MHg1MCB0aGFuIHRocmVzaG9sZCBzaXplCisr ICAgIC8vIGluIHNtYWxsZXIgem9vbSBsZXZlbHMuCisrICAgIHNyY19yZWN0ID0gZ2Z4OjpSZWN0 RigyMDAsIDIwMCk7CisrICAgIHBhZ2Vfem9vbSA9IDAuMjVmOworKyAgICBjc3Nfem9vbSA9IDEu MGY7CisrICAgIGxheW91dF96b29tID0gcGFnZV96b29tICogc2NyZWVuX2luZm8uZGV2aWNlX3Nj YWxlX2ZhY3RvcjsKKysgICAgZGVzdF9yZWN0ID0KKysgICAgICAgIGdmeDo6UmVjdEYoMjAwICog bGF5b3V0X3pvb20gKiBjc3Nfem9vbSwgMjAwICogbGF5b3V0X3pvb20gKiBjc3Nfem9vbSk7Cisr ICAgIEVYUEVDVF9GQUxTRShmaWx0ZXIuU2hvdWxkQXBwbHlGaWx0ZXJUb0ltYWdlKAorKyAgICAg ICAgSW1hZ2VDbGFzc2lmaWVySGVscGVyOjpHZXRJbWFnZVR5cGVGb3JUZXN0aW5nKHNjcmVlbl9p bmZvLCBkZXN0X3JlY3QsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc3JjX3JlY3QsIGxheW91dF96b29tKSkpOworKworKyAgICAvLyBBbiBp bWFnZSB3aXRoIDIwMHgyMDAgQ1NTIHNpemUgYmVjb21lcyAyMHgyMCBDU1Mgc2l6ZSBhbmQgZ2V0 cyBjbGFzc2lmaWVkCisrICAgIC8vIGFzIGljb24gYXMgdGhlIENTUyBzaXplIGlzIGJlbG93IHRo ZSB0aHJlc2hvbGQuCisrICAgIHNyY19yZWN0ID0gZ2Z4OjpSZWN0RigyMDAsIDIwMCk7CisrICAg IHBhZ2Vfem9vbSA9IDAuMjVmOworKyAgICBjc3Nfem9vbSA9IDAuMWY7CisrICAgIGxheW91dF96 b29tID0gcGFnZV96b29tICogc2NyZWVuX2luZm8uZGV2aWNlX3NjYWxlX2ZhY3RvcjsKKysgICAg ZGVzdF9yZWN0ID0KKysgICAgICAgIGdmeDo6UmVjdEYoMjAwICogbGF5b3V0X3pvb20gKiBjc3Nf em9vbSwgMjAwICogbGF5b3V0X3pvb20gKiBjc3Nfem9vbSk7CisrICAgIEVYUEVDVF9UUlVFKGZp bHRlci5TaG91bGRBcHBseUZpbHRlclRvSW1hZ2UoCisrICAgICAgICBJbWFnZUNsYXNzaWZpZXJI ZWxwZXI6OkdldEltYWdlVHlwZUZvclRlc3Rpbmcoc2NyZWVuX2luZm8sIGRlc3RfcmVjdCwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmNf cmVjdCwgbGF5b3V0X3pvb20pKSk7CisrICB9CisrfTsKKyAKKyBURVNUX0YoUGFpbnRBdXRvRGFy a01vZGVUZXN0LCBTaG91bGRBcHBseUZpbHRlclRvSW1hZ2UpIHsKKyAgIERhcmtNb2RlU2V0dGlu Z3Mgc2V0dGluZ3M7CitAQCAtNzcsNCArMTM5LDIxIEBAIFRFU1RfRihQYWludEF1dG9EYXJrTW9k ZVRlc3QsIFNob3VsZEFwcGx5RmlsdGVyVG9JbWFnZU9uTW9iaWxlKSB7CisgICAgICAgICAgIHNj cmVlbl9pbmZvLCBnZng6OlJlY3RGKDE4MCwgMTgwKSwgZ2Z4OjpSZWN0RigxODAsIDE4MCkpKSk7 CisgfQorIAorK1RFU1RfRihQYWludEF1dG9EYXJrTW9kZVRlc3QsIFNob3VsZEFwcGx5RmlsdGVy VG9JbWFnZUlycmVzcGVjdGl2ZU9mUGFnZVpvb20pIHsKKysgIGRpc3BsYXk6OlNjcmVlbkluZm8g c2NyZWVuX2luZm87CisrICBzY3JlZW5faW5mby5yZWN0ID0gZ2Z4OjpSZWN0KDE5MjAsIDEwODAp OworKyAgc2NyZWVuX2luZm8uZGV2aWNlX3NjYWxlX2ZhY3RvciA9IDEuMGY7CisrCisrICBUZXN0 QXBwbHlGaWx0ZXJUb0ltYWdlSXJyZXNwZWN0aXZlT2ZQYWdlWm9vbShzY3JlZW5faW5mbyk7Cisr fQorKworK1RFU1RfRihQYWludEF1dG9EYXJrTW9kZVRlc3QsCisrICAgICAgIFNob3VsZEFwcGx5 RmlsdGVyVG9JbWFnZUlycmVzcGVjdGl2ZU9mUGFnZVpvb21Pbk1vYmlsZSkgeworKyAgZGlzcGxh eTo6U2NyZWVuSW5mbyBzY3JlZW5faW5mbzsKKysgIHNjcmVlbl9pbmZvLnJlY3QgPSBnZng6OlJl Y3QoMzYwLCA3ODApOworKyAgc2NyZWVuX2luZm8uZGV2aWNlX3NjYWxlX2ZhY3RvciA9IDMuMGY7 CisrCisrICBUZXN0QXBwbHlGaWx0ZXJUb0ltYWdlSXJyZXNwZWN0aXZlT2ZQYWdlWm9vbShzY3Jl ZW5faW5mbyk7CisrfQorKworIH0gIC8vIG5hbWVzcGFjZSBibGluawoKZGlmZiAtLWdpdCBhL2No cm9taXVtLTE1MC1Vc2UtNjRweC1jc3MtcGl4ZWxzLWFic29sdXRlLXRocmVzaG9sZC1mb3ItZGFy ay1pbWFnZS1jbGFzc2lmaWNhdGlvbi5wYXRjaCBiL2Nocm9taXVtLTE1MC1Vc2UtNjRweC1jc3Mt cGl4ZWxzLWFic29sdXRlLXRocmVzaG9sZC1mb3ItZGFyay1pbWFnZS1jbGFzc2lmaWNhdGlvbi5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZGM5YjE3Ci0tLSAvZGV2 L251bGwKKysrIGIvY2hyb21pdW0tMTUwLVVzZS02NHB4LWNzcy1waXhlbHMtYWJzb2x1dGUtdGhy ZXNob2xkLWZvci1kYXJrLWltYWdlLWNsYXNzaWZpY2F0aW9uLnBhdGNoCkBAIC0wLDAgKzEsMjgx IEBACitjb21taXQgMmMwYjc5YzU3YzE3MjZmMzU5YmNkODcxMzc0NzRlODU0YjFhZWIzOAorQXV0 aG9yOiBQcmFzaGFudCBOZXZhc2UgPHBuZXZhc2VAbWljcm9zb2Z0LmNvbT4KK0RhdGU6ICAgVGh1 IEp1biAyNSAwODoxMTozNCAyMDI2IC0wNzAwCisKKyAgICBVc2UgNjRweCBjc3MgcGl4ZWxzIGFi c29sdXRlIHRocmVzaG9sZCBmb3IgZGFyayBpbWFnZSBjbGFzc2lmaWNhdGlvbi4KKyAgICAKKyAg ICBUaGUgcHJldmlvdXMgcmF0aW8tYmFzZWQgdGhyZXNob2xkIHNjYWxlZCB3aXRoIHRoZSBzY3Jl ZW4gc2l6ZSBhbmQKKyAgICBkZXZpY2Ugc2NhbGUgZmFjdG9yLCBzbyB0aGUgc2FtZSBpbWFnZSBj b3VsZCBiZSBjbGFzc2lmaWVkIGRpZmZlcmVudGx5CisgICAgZGVwZW5kaW5nIG9uIHRoZSBkaXNw bGF5IGl0IHdhcyBzaG93biBvbi4gVGhpcyBwcm9kdWNlZCBpbmNvbnNpc3RlbnQKKyAgICBkYXJr IG1vZGUgcmVzdWx0cyBhY3Jvc3MgZGlzcGxheXMgb2YgZGlmZmVyZW50IHNpemVzIGFuZCBkZXZp Y2Ugc2NhbGUKKyAgICBmYWN0b3JzLgorICAgIAorICAgIFJlcGxhY2UgdGhlIHNjcmVlbi1zaXpl IHJhdGlvIGhldXJpc3RpYyAoa01heEljb25SYXRpbykgd2l0aCBhIHNpbmdsZQorICAgIGFic29s dXRlIHNpemUgdGhyZXNob2xkIG9mIDY0IENTUyBwaXhlbHMgZm9yIGNsYXNzaWZ5aW5nIGltYWdl cyBhcyBpY29ucworICAgIGluIGF1dG8gZGFyayBtb2RlLiBUaGUgdGhyZXNob2xkIGlzIGNvbXBh cmVkIGFmdGVyIHVuZG9pbmcgdGhlIGZyYW1lJ3MKKyAgICBsYXlvdXQgem9vbSBmYWN0b3IgKHBh Z2Ugem9vbSBhbmQgZGV2aWNlIHNjYWxlIGZhY3RvciksIHNvCisgICAgY2xhc3NpZmljYXRpb24g aXMgc3RhYmxlIGFjcm9zcyBkZXZpY2VzIGFuZCBwYWdlIHpvb20gbGV2ZWxzIHdoaWxlIENTUwor ICAgIHpvb20gc3RpbGwgYWZmZWN0cyB0aGUgZHJhd24gc2l6ZSBhbmQgdGhlcmVmb3JlIHRoZSBy ZXN1bHQuCisgICAgCisgICAgVGhpcyByZW1vdmVzIHRoZSBkZXBlbmRlbmN5IG9uIGRpc3BsYXk6 OlNjcmVlbkluZm8gZnJvbSB0aGUKKyAgICBjbGFzc2lmaWNhdGlvbiBwYXRoIGFuZCBzaW1wbGlm aWVzIEdldEltYWdlVHlwZSgpIHRvIGEgcHVyZSBzaXplIGNoZWNrLgorICAgIAorICAgIEJ1Zzog NDQ5OTA5NTI0CisgICAgQ2hhbmdlLUlkOiBJNDQ3ZWM3YTFmOTRmZWQzMDA0ODg5ZGZlMmJkNzhi ZjgzOTJkZGQ2MQorICAgIFJldmlld2VkLW9uOiBodHRwczovL2Nocm9taXVtLXJldmlldy5nb29n bGVzb3VyY2UuY29tL2MvY2hyb21pdW0vc3JjLysvODAwNTE3NgorICAgIFJldmlld2VkLWJ5OiBT dGVwaGVuIENoZW5uZXkgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KKyAgICBDb21taXQtUXVldWU6 IFByYXNoYW50IE5ldmFzZSA8cG5ldmFzZUBtaWNyb3NvZnQuY29tPgorICAgIENyLUNvbW1pdC1Q b3NpdGlvbjogcmVmcy9oZWFkcy9tYWluQHsjMTY1MjQzNH0KKworZGlmZiAtLWdpdCBhL3RoaXJk X3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0b19kYXJrX21vZGUuY2Mg Yi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19t b2RlLmNjCitpbmRleCA1YjM0MjgzZDdhNTU2Li42NThmNmE0ZTRmNmZkIDEwMDY0NAorLS0tIGEv dGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9hdXRvX2RhcmtfbW9k ZS5jYworKysrIGIvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9h dXRvX2RhcmtfbW9kZS5jYworQEAgLTUsMzIgKzUsMjYgQEAKKyAjaW5jbHVkZSAidGhpcmRfcGFy dHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWludC9wYWludF9hdXRvX2RhcmtfbW9kZS5oIgorIAor ICNpbmNsdWRlICJ0aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL2ZyYW1lL2xvY2FsX2Zy YW1lLmgiCistI2luY2x1ZGUgInRoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFnZS9j aHJvbWVfY2xpZW50LmgiCistI2luY2x1ZGUgInVpL2Rpc3BsYXkvc2NyZWVuX2luZm8uaCIKKyAj aW5jbHVkZSAidWkvZ2Z4L2dlb21ldHJ5L3JlY3QuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L2dlb21l dHJ5L3JlY3RfY29udmVyc2lvbnMuaCIKKyAKKyBuYW1lc3BhY2UgYmxpbmsgeworIAorIG5hbWVz cGFjZSB7CistCistLy8gVGhlIG1heGltdW0gcmF0aW8gb2YgaW1hZ2Ugc2l6ZSB0byBzY3JlZW4g c2l6ZSB0aGF0IGlzIGNvbnNpZGVyZWQgYW4gaWNvbi4KKy1jb25zdGV4cHIgZmxvYXQga01heElj b25SYXRpbyA9IDAuMTNmOworLWNvbnN0ZXhwciBpbnQga01heEltYWdlTGVuZ3RoID0gNTA7Cisr Ly8gSW1hZ2VzIHdpdGggYm90aCB3aWR0aCBhbmQgaGVpZ2h0IHNtYWxsZXIgdGhhbiB0aGlzIHZh bHVlIGFyZSBjb25zaWRlcmVkCisrLy8gaWNvbnMuCisrY29uc3RleHByIGludCBrTWF4SW1hZ2VM ZW5ndGggPSA2NDsKKyAvLyBJbWFnZXMgd2l0aCBlaXRoZXIgZGltZW5zaW9uIGxlc3MgdGhhbiB0 aGlzIHZhbHVlIGFyZSBjb25zaWRlcmVkIHNlcGFyYXRvcnMuCisgY29uc3RleHByIGludCBrTWF4 SW1hZ2VTZXBhcmF0b3JMZW5ndGggPSA4OworIAorIC8vIFdlIG5lZWQgdG8gZG8gaW1hZ2UgY2xh c3NpZmljYXRpb24gZmlyc3QgYmVmb3JlIGNhbGxpbmcKKyAvLyBEYXJrTW9kZUZpbHRlcjo6R2Vu ZXJhdGVJbWFnZUZpbHRlci4KKy1EYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEdldEltYWdlVHlw ZShmbG9hdCBkZXN0X3RvX2RldmljZV9yYXRpbywKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBnZng6OlJlY3QmIGRlc3RfcmVjdCwKKytEYXJrTW9kZUZpbHRl cjo6SW1hZ2VUeXBlIEdldEltYWdlVHlwZShjb25zdCBnZng6OlJlY3QmIGRlc3RfcmVjdCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnZng6OlJlY3QmIHNy Y19yZWN0KSB7CistICAvLyBUT0RPOiBVc2UgYSB2aWV3cG9ydCByZWxhdGl2ZSB0aHJlc2hvbGQg Zm9yIHRoZSBzaXplIGNoZWNrIGluc3RlYWQgb2YKKy0gIC8vIGFic29sdXRlIHRocmVzaG9sZC4K Ky0gIGlmIChkZXN0X3RvX2RldmljZV9yYXRpbyA8PSBrTWF4SWNvblJhdGlvIHx8CistICAgICAg KGRlc3RfcmVjdC53aWR0aCgpIDw9IGtNYXhJbWFnZUxlbmd0aCAmJgorLSAgICAgICBkZXN0X3Jl Y3QuaGVpZ2h0KCkgPD0ga01heEltYWdlTGVuZ3RoKSkKKysgIGlmIChkZXN0X3JlY3Qud2lkdGgo KSA8PSBrTWF4SW1hZ2VMZW5ndGggJiYKKysgICAgICBkZXN0X3JlY3QuaGVpZ2h0KCkgPD0ga01h eEltYWdlTGVuZ3RoKSB7CisgICAgIHJldHVybiBEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlOjpr SWNvbjsKKysgIH0KKyAKKyAgIGlmIChzcmNfcmVjdC53aWR0aCgpIDw9IGtNYXhJbWFnZVNlcGFy YXRvckxlbmd0aCB8fAorICAgICAgIHNyY19yZWN0LmhlaWdodCgpIDw9IGtNYXhJbWFnZVNlcGFy YXRvckxlbmd0aCkKK0BAIC0zOSwzNCArMzMsMjEgQEAgRGFya01vZGVGaWx0ZXI6OkltYWdlVHlw ZSBHZXRJbWFnZVR5cGUoZmxvYXQgZGVzdF90b19kZXZpY2VfcmF0aW8sCisgICByZXR1cm4gRGFy a01vZGVGaWx0ZXI6OkltYWdlVHlwZTo6a1Bob3RvOworIH0KKyAKKy1mbG9hdCBHZXRSYXRpbyhj b25zdCBkaXNwbGF5OjpTY3JlZW5JbmZvJiBzY3JlZW5faW5mbywKKy0gICAgICAgICAgICAgICBj b25zdCBnZng6OlJlY3RGJiBkZXN0X3JlY3QpIHsKKy0gIC8vIENvbXB1dGUgZGV2aWNlIHJlY3Qg aW4gZGV2aWNlIHBpeGVscy4KKy0gIGNvbnN0IGdmeDo6U2l6ZUYmIGRldmljZV9yZWN0ID0gZ2Z4 OjpTY2FsZVNpemUoCistICAgICAgZ2Z4OjpTaXplRihzY3JlZW5faW5mby5yZWN0LnNpemUoKSks IHNjcmVlbl9pbmZvLmRldmljZV9zY2FsZV9mYWN0b3IpOworLQorLSAgcmV0dXJuIHN0ZDo6bWF4 KGRlc3RfcmVjdC53aWR0aCgpIC8gZGV2aWNlX3JlY3Qud2lkdGgoKSwKKy0gICAgICAgICAgICAg ICAgICBkZXN0X3JlY3QuaGVpZ2h0KCkgLyBkZXZpY2VfcmVjdC5oZWlnaHQoKSk7CistfQorLQor IC8vIENsYXNzaWZpZXMgYW4gaW1hZ2UgYWZ0ZXIgdW5kb2luZyB0aGUgZnJhbWUncyBsYXlvdXQg em9vbSBmYWN0b3IuCisgLy8gfGRlc3RfcmVjdHwgY29tZXMgZnJvbSBsYXlvdXQgZ2VvbWV0cnkg YW5kIGluY2x1ZGVzIGxheW91dCB6b29tIChwYWdlIHpvb20KKyAvLyBhbmQgcG90ZW50aWFsbHkg RFNGKSBhbmQgQ1NTIHpvb20uIFVuZG8gb25seSBsYXlvdXQgem9vbSBzbyBwYWdlIHpvb20gYW5k CisgLy8gRFNGIGRvIG5vdCBhZmZlY3QgY2xhc3NpZmljYXRpb24sIHdoaWxlIENTUyB6b29tIHN0 aWxsIGRvZXMuIHxzcmNfcmVjdHwgaXMKKyAvLyBkZXJpdmVkIGZyb20gdGhlIGltYWdlJ3MgaW50 cmluc2ljIHBpeGVsIHNpemUgYW5kIGlzIGFscmVhZHkKKyAvLyB6b29tLWluZGVwZW5kZW50LCBz byBpdCBtdXN0IGJlIGxlZnQgdW50b3VjaGVkLgorLURhcmtNb2RlRmlsdGVyOjpJbWFnZVR5cGUg R2V0SW1hZ2VUeXBlV2l0aFpvb20oCistICAgIGNvbnN0IGRpc3BsYXk6OlNjcmVlbkluZm8mIHNj cmVlbl9pbmZvLAorLSAgICBmbG9hdCB6b29tLAorLSAgICBjb25zdCBnZng6OlJlY3RGJiBkZXN0 X3JlY3QsCistICAgIGNvbnN0IGdmeDo6UmVjdEYmIHNyY19yZWN0KSB7CisrRGFya01vZGVGaWx0 ZXI6OkltYWdlVHlwZSBHZXRJbWFnZVR5cGVXaXRoWm9vbShmbG9hdCB6b29tLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2Z4OjpSZWN0RiYg ZGVzdF9yZWN0LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgZ2Z4OjpSZWN0RiYgc3JjX3JlY3QpIHsKKyAgIGdmeDo6UmVjdEYgdW56b29tZWRf ZGVzdF9yZWN0ID0gZGVzdF9yZWN0OworICAgaWYgKHpvb20gPiAwLmYgJiYgem9vbSAhPSAxLmYp IHsKKyAgICAgdW56b29tZWRfZGVzdF9yZWN0LlNjYWxlKDEuZiAvIHpvb20pOworICAgfQorIAor LSAgcmV0dXJuIEdldEltYWdlVHlwZShHZXRSYXRpbyhzY3JlZW5faW5mbywgdW56b29tZWRfZGVz dF9yZWN0KSwKKy0gICAgICAgICAgICAgICAgICAgICAgZ2Z4OjpUb0VuY2xvc2luZ1JlY3QodW56 b29tZWRfZGVzdF9yZWN0KSwKKysgIHJldHVybiBHZXRJbWFnZVR5cGUoZ2Z4OjpUb0VuY2xvc2lu Z1JlY3QodW56b29tZWRfZGVzdF9yZWN0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgZ2Z4OjpU b0VuY2xvc2luZ1JlY3Qoc3JjX3JlY3QpKTsKKyB9CisgCitAQCAtODIsMjIgKzYzLDE4IEBAIElt YWdlQXV0b0RhcmtNb2RlIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VBdXRvRGFya01v ZGUoCisgICBpZiAoIXN0eWxlLkZvcmNlRGFyaygpKQorICAgICByZXR1cm4gSW1hZ2VBdXRvRGFy a01vZGU6OkRpc2FibGVkKCk7CisgCistICBjb25zdCBkaXNwbGF5OjpTY3JlZW5JbmZvJiBzY3Jl ZW5faW5mbyA9CistICAgICAgbG9jYWxfZnJhbWUuR2V0Q2hyb21lQ2xpZW50KCkuR2V0U2NyZWVu SW5mbyhsb2NhbF9mcmFtZSk7CistCisgICBjb25zdCBmbG9hdCBsYXlvdXRfem9vbSA9IGxvY2Fs X2ZyYW1lLkxheW91dFpvb21GYWN0b3IoKTsKKyAgIHJldHVybiBJbWFnZUF1dG9EYXJrTW9kZSgK KyAgICAgICByb2xlLCBzdHlsZS5Gb3JjZURhcmsoKSwKKy0gICAgICBHZXRJbWFnZVR5cGVXaXRo Wm9vbShzY3JlZW5faW5mbywgbGF5b3V0X3pvb20sIGRlc3RfcmVjdCwgc3JjX3JlY3QpKTsKKysg ICAgICBHZXRJbWFnZVR5cGVXaXRoWm9vbShsYXlvdXRfem9vbSwgZGVzdF9yZWN0LCBzcmNfcmVj dCkpOworIH0KKyAKKyAvLyBzdGF0aWMKKyBEYXJrTW9kZUZpbHRlcjo6SW1hZ2VUeXBlIEltYWdl Q2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBlRm9yVGVzdGluZygKKy0gICAgZGlzcGxheTo6 U2NyZWVuSW5mbyYgc2NyZWVuX2luZm8sCisgICAgIGNvbnN0IGdmeDo6UmVjdEYmIGRlc3RfcmVj dCwKKyAgICAgY29uc3QgZ2Z4OjpSZWN0RiYgc3JjX3JlY3QsCisgICAgIGZsb2F0IHpvb20pIHsK Ky0gIHJldHVybiBHZXRJbWFnZVR5cGVXaXRoWm9vbShzY3JlZW5faW5mbywgem9vbSwgZGVzdF9y ZWN0LCBzcmNfcmVjdCk7CisrICByZXR1cm4gR2V0SW1hZ2VUeXBlV2l0aFpvb20oem9vbSwgZGVz dF9yZWN0LCBzcmNfcmVjdCk7CisgfQorIAorIH0gIC8vIG5hbWVzcGFjZSBibGluaworZGlmZiAt LWdpdCBhL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0b19k YXJrX21vZGUuaCBiL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRf YXV0b19kYXJrX21vZGUuaAoraW5kZXggOWJmOGRmMWMzM2E4NC4uYWZkNTdlZWUyYjQ1NiAxMDA2 NDQKKy0tLSBhL3RoaXJkX3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0 b19kYXJrX21vZGUuaAorKysrIGIvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9wYWlu dC9wYWludF9hdXRvX2RhcmtfbW9kZS5oCitAQCAtNDAsNyArNDAsNiBAQCBjbGFzcyBJbWFnZUNs YXNzaWZpZXJIZWxwZXIgeworICAgICAgICAgICBEYXJrTW9kZUZpbHRlcjo6RWxlbWVudFJvbGU6 OmtCYWNrZ3JvdW5kKTsKKyAKKyAgIENPUkVfRVhQT1JUIHN0YXRpYyBEYXJrTW9kZUZpbHRlcjo6 SW1hZ2VUeXBlIEdldEltYWdlVHlwZUZvclRlc3RpbmcoCistICAgICAgZGlzcGxheTo6U2NyZWVu SW5mbyYgc2NyZWVuX2luZm8sCisgICAgICAgY29uc3QgZ2Z4OjpSZWN0RiYgZGVzdF9yZWN0LAor ICAgICAgIGNvbnN0IGdmeDo6UmVjdEYmIHNyY19yZWN0LAorICAgICAgIGZsb2F0IHpvb20gPSAx LjBmKTsKK2RpZmYgLS1naXQgYS90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJlci9jb3JlL3BhaW50 L3BhaW50X2F1dG9fZGFya19tb2RlX3Rlc3QuY2MgYi90aGlyZF9wYXJ0eS9ibGluay9yZW5kZXJl ci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlX3Rlc3QuY2MKK2luZGV4IDc3ZmYwZjA2 OTE4OGUuLmNmMDVlYTFhOWU4YWYgMTAwNjQ0CistLS0gYS90aGlyZF9wYXJ0eS9ibGluay9yZW5k ZXJlci9jb3JlL3BhaW50L3BhaW50X2F1dG9fZGFya19tb2RlX3Rlc3QuY2MKKysrKyBiL3RoaXJk X3BhcnR5L2JsaW5rL3JlbmRlcmVyL2NvcmUvcGFpbnQvcGFpbnRfYXV0b19kYXJrX21vZGVfdGVz dC5jYworQEAgLTMyLDggKzMyLDggQEAgY2xhc3MgUGFpbnRBdXRvRGFya01vZGVUZXN0IDogcHVi bGljIHRlc3Rpbmc6OlRlc3QgeworICAgICBkZXN0X3JlY3QgPQorICAgICAgICAgZ2Z4OjpSZWN0 Rig1MCAqIGxheW91dF96b29tICogY3NzX3pvb20sIDUwICogbGF5b3V0X3pvb20gKiBjc3Nfem9v bSk7CisgICAgIEVYUEVDVF9UUlVFKGZpbHRlci5TaG91bGRBcHBseUZpbHRlclRvSW1hZ2UoCist ICAgICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZvclRlc3Rpbmcoc2Ny ZWVuX2luZm8sIGRlc3RfcmVjdCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzcmNfcmVjdCwgbGF5b3V0X3pvb20pKSk7CisrICAgICAgICBJ bWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZvclRlc3RpbmcoZGVzdF9yZWN0LCBz cmNfcmVjdCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBsYXlvdXRfem9vbSkpKTsKKyAKKyAgICAgLy8gQSA1MHg1MCBDU1MgaWNvbiB3aXRo IGNzcyB6b29tIDUuMGYgYmVjb21lcyAyNTB4MjUwIGFuZCBkb2VzIG5vdCBnZXQKKyAgICAgLy8g ZmlsdGVycmVkIGFzIHxkZXN0X3JlY3R8IGlzIGxhcmdlciB0aGFuIHRocmVzaG9sZCBzaXplLgor QEAgLTQ0LDggKzQ0LDggQEAgY2xhc3MgUGFpbnRBdXRvRGFya01vZGVUZXN0IDogcHVibGljIHRl c3Rpbmc6OlRlc3QgeworICAgICBkZXN0X3JlY3QgPQorICAgICAgICAgZ2Z4OjpSZWN0Rig1MCAq IGxheW91dF96b29tICogY3NzX3pvb20sIDUwICogbGF5b3V0X3pvb20gKiBjc3Nfem9vbSk7Cisg ICAgIEVYUEVDVF9GQUxTRShmaWx0ZXIuU2hvdWxkQXBwbHlGaWx0ZXJUb0ltYWdlKAorLSAgICAg ICAgSW1hZ2VDbGFzc2lmaWVySGVscGVyOjpHZXRJbWFnZVR5cGVGb3JUZXN0aW5nKHNjcmVlbl9p bmZvLCBkZXN0X3JlY3QsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc3JjX3JlY3QsIGxheW91dF96b29tKSkpOworKyAgICAgICAgSW1hZ2VD bGFzc2lmaWVySGVscGVyOjpHZXRJbWFnZVR5cGVGb3JUZXN0aW5nKGRlc3RfcmVjdCwgc3JjX3Jl Y3QsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgbGF5b3V0X3pvb20pKSk7CisgCisgICAgIC8vIEFuIGltYWdlIHdpdGggMjAweDIwMCBDU1Mg c2l6ZSBnZXRzIGNsYXNzaWZpZWQgYXMgcGhvdG8gYW5kIGRvZXMgbm90IGdldAorICAgICAvLyBm aWx0ZXJlZCwgZXZlbiBpZiB8ZGVzdF9yZWN0fCBiZWNvbWVzIHNtYWxsZXIgNTB4NTAgdGhhbiB0 aHJlc2hvbGQgc2l6ZQorQEAgLTU3LDggKzU3LDggQEAgY2xhc3MgUGFpbnRBdXRvRGFya01vZGVU ZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgeworICAgICBkZXN0X3JlY3QgPQorICAgICAgICAg Z2Z4OjpSZWN0RigyMDAgKiBsYXlvdXRfem9vbSAqIGNzc196b29tLCAyMDAgKiBsYXlvdXRfem9v bSAqIGNzc196b29tKTsKKyAgICAgRVhQRUNUX0ZBTFNFKGZpbHRlci5TaG91bGRBcHBseUZpbHRl clRvSW1hZ2UoCistICAgICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZv clRlc3Rpbmcoc2NyZWVuX2luZm8sIGRlc3RfcmVjdCwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmNfcmVjdCwgbGF5b3V0X3pvb20pKSk7 CisrICAgICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZvclRlc3Rpbmco ZGVzdF9yZWN0LCBzcmNfcmVjdCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBsYXlvdXRfem9vbSkpKTsKKyAKKyAgICAgLy8gQW4gaW1hZ2Ug d2l0aCAyMDB4MjAwIENTUyBzaXplIGJlY29tZXMgMjB4MjAgQ1NTIHNpemUgYW5kIGdldHMgY2xh c3NpZmllZAorICAgICAvLyBhcyBpY29uIGFzIHRoZSBDU1Mgc2l6ZSBpcyBiZWxvdyB0aGUgdGhy ZXNob2xkLgorQEAgLTY5LDggKzY5LDggQEAgY2xhc3MgUGFpbnRBdXRvRGFya01vZGVUZXN0IDog cHVibGljIHRlc3Rpbmc6OlRlc3QgeworICAgICBkZXN0X3JlY3QgPQorICAgICAgICAgZ2Z4OjpS ZWN0RigyMDAgKiBsYXlvdXRfem9vbSAqIGNzc196b29tLCAyMDAgKiBsYXlvdXRfem9vbSAqIGNz c196b29tKTsKKyAgICAgRVhQRUNUX1RSVUUoZmlsdGVyLlNob3VsZEFwcGx5RmlsdGVyVG9JbWFn ZSgKKy0gICAgICAgIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBlRm9yVGVzdGlu ZyhzY3JlZW5faW5mbywgZGVzdF9yZWN0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHNyY19yZWN0LCBsYXlvdXRfem9vbSkpKTsKKysgICAg ICAgIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBlRm9yVGVzdGluZyhkZXN0X3Jl Y3QsIHNyY19yZWN0LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGxheW91dF96b29tKSkpOworICAgfQorIH07CisgCitAQCAtNzgsNDQgKzc4 LDQwIEBAIFRFU1RfRihQYWludEF1dG9EYXJrTW9kZVRlc3QsIFNob3VsZEFwcGx5RmlsdGVyVG9J bWFnZSkgeworICAgRGFya01vZGVTZXR0aW5ncyBzZXR0aW5nczsKKyAgIERhcmtNb2RlRmlsdGVy IGZpbHRlcihzZXR0aW5ncyk7CisgCistICBkaXNwbGF5OjpTY3JlZW5JbmZvIHNjcmVlbl9pbmZv OworLSAgc2NyZWVuX2luZm8ucmVjdCA9IGdmeDo6UmVjdCgxOTIwLCAxMDgwKTsKKy0gIHNjcmVl bl9pbmZvLmRldmljZV9zY2FsZV9mYWN0b3IgPSAxLjBmOworLQorICAgLy8gfGRzdHwgaXMgc21h bGxlciB0aGFuIHRocmVzaG9sZCBzaXplLgorICAgRVhQRUNUX1RSVUUoZmlsdGVyLlNob3VsZEFw cGx5RmlsdGVyVG9JbWFnZSgKKy0gICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdl VHlwZUZvclRlc3RpbmcoCistICAgICAgICAgIHNjcmVlbl9pbmZvLCBnZng6OlJlY3RGKDUwLCA1 MCksIGdmeDo6UmVjdEYoNTAsIDUwKSkpKTsKKysgICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6 OkdldEltYWdlVHlwZUZvclRlc3RpbmcoZ2Z4OjpSZWN0Rig1MCwgNTApLAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZng6OlJlY3RGKDUwLCA1 MCkpKSk7CisgCisgICAvLyB8ZHN0fCBpcyBzbWFsbGVyIHRoYW4gdGhyZXNob2xkIHNpemUsIGV2 ZW4gfHNyY3wgaXMgbGFyZ2VyLgorICAgRVhQRUNUX1RSVUUoZmlsdGVyLlNob3VsZEFwcGx5Rmls dGVyVG9JbWFnZSgKKy0gICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZv clRlc3RpbmcoCistICAgICAgICAgIHNjcmVlbl9pbmZvLCBnZng6OlJlY3RGKDUwLCA1MCksIGdm eDo6UmVjdEYoMjAwLCAyMDApKSkpOworKyAgICAgIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0 SW1hZ2VUeXBlRm9yVGVzdGluZyhnZng6OlJlY3RGKDUwLCA1MCksCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdmeDo6UmVjdEYoMjAwLCAyMDAp KSkpOworIAorICAgLy8gfGRzdHwgaXMgc21hbGxlciB0aGFuIHRocmVzaG9sZCBzaXplLCB8c3Jj fCBpcyBzbWFsbGVyLgorICAgRVhQRUNUX1RSVUUoZmlsdGVyLlNob3VsZEFwcGx5RmlsdGVyVG9J bWFnZSgKKy0gICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZvclRlc3Rp bmcoCistICAgICAgICAgIHNjcmVlbl9pbmZvLCBnZng6OlJlY3RGKDUwLCA1MCksIGdmeDo6UmVj dEYoMjAsIDIwKSkpKTsKKysgICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlw ZUZvclRlc3RpbmcoZ2Z4OjpSZWN0Rig1MCwgNTApLAorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZng6OlJlY3RGKDIwLCAyMCkpKSk7CisgCisg ICAvLyB8c3JjfCBoYXZpbmcgdmVyeSBzbWFsbGVyIHdpZHRoLCBldmVuIHxkc3R8IGlzIGxhcmdl ciB0aGFuIHRocmVzaG9sZCBzaXplLgorICAgRVhQRUNUX1RSVUUoZmlsdGVyLlNob3VsZEFwcGx5 RmlsdGVyVG9JbWFnZSgKKy0gICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlw ZUZvclRlc3RpbmcoCistICAgICAgICAgIHNjcmVlbl9pbmZvLCBnZng6OlJlY3RGKDIwMCwgNSks IGdmeDo6UmVjdEYoMjAwLCA1KSkpKTsKKysgICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6Okdl dEltYWdlVHlwZUZvclRlc3RpbmcoZ2Z4OjpSZWN0RigyMDAsIDUpLAorKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZng6OlJlY3RGKDIwMCwgNSkp KSk7CisgCisgICAvLyB8c3JjfCBoYXZpbmcgdmVyeSBzbWFsbGVyIGhlaWdodCwgZXZlbiB8ZHN0 fCBpcyBsYXJnZXIgdGhhbiB0aHJlc2hvbGQgc2l6ZS4KKyAgIEVYUEVDVF9UUlVFKGZpbHRlci5T aG91bGRBcHBseUZpbHRlclRvSW1hZ2UoCistICAgICAgSW1hZ2VDbGFzc2lmaWVySGVscGVyOjpH ZXRJbWFnZVR5cGVGb3JUZXN0aW5nKAorLSAgICAgICAgICBzY3JlZW5faW5mbywgZ2Z4OjpSZWN0 Rig1LCAyMDApLCBnZng6OlJlY3RGKDUsIDIwMCkpKSk7CisrICAgICAgSW1hZ2VDbGFzc2lmaWVy SGVscGVyOjpHZXRJbWFnZVR5cGVGb3JUZXN0aW5nKGdmeDo6UmVjdEYoNSwgMjAwKSwKKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2Z4OjpSZWN0 Rig1LCAyMDApKSkpOworIAorICAgLy8gfGRzdHwgaXMgbGFyZ2VyIHRoYW4gdGhyZXNob2xkIHNp emUuCisgICBFWFBFQ1RfRkFMU0UoZmlsdGVyLlNob3VsZEFwcGx5RmlsdGVyVG9JbWFnZSgKKy0g ICAgICBJbWFnZUNsYXNzaWZpZXJIZWxwZXI6OkdldEltYWdlVHlwZUZvclRlc3RpbmcoCistICAg ICAgICAgIHNjcmVlbl9pbmZvLCBnZng6OlJlY3RGKDIwMCwgMjAwKSwgZ2Z4OjpSZWN0RigyMCwg MjApKSkpOworKyAgICAgIEltYWdlQ2xhc3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBlRm9yVGVz dGluZyhnZng6OlJlY3RGKDIwMCwgMjAwKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZ2Z4OjpSZWN0RigyMCwgMjApKSkpOworIAorICAgLy8g fGRzdHwgaXMgbGFyZ2VyIHRoYW4gdGhyZXNob2xkIHNpemUuCisgICBFWFBFQ1RfRkFMU0UoZmls dGVyLlNob3VsZEFwcGx5RmlsdGVyVG9JbWFnZSgKKy0gICAgICBJbWFnZUNsYXNzaWZpZXJIZWxw ZXI6OkdldEltYWdlVHlwZUZvclRlc3RpbmcoCistICAgICAgICAgIHNjcmVlbl9pbmZvLCBnZng6 OlJlY3RGKDIwLCAyMDApLCBnZng6OlJlY3RGKDIwLCAyMDApKSkpOworKyAgICAgIEltYWdlQ2xh c3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBlRm9yVGVzdGluZyhnZng6OlJlY3RGKDIwLCAyMDAp LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBn Zng6OlJlY3RGKDIwLCAyMDApKSkpOworIH0KKyAKKyAvLyBUZXN0IGZvciBtb2JpbGUgZGlzcGxh eSBjb25maWd1cmF0aW9uCitAQCAtMTI2LDE3ICsxMjIsMTkgQEAgVEVTVF9GKFBhaW50QXV0b0Rh cmtNb2RlVGVzdCwgU2hvdWxkQXBwbHlGaWx0ZXJUb0ltYWdlT25Nb2JpbGUpIHsKKyAgIGRpc3Bs YXk6OlNjcmVlbkluZm8gc2NyZWVuX2luZm87CisgICBzY3JlZW5faW5mby5yZWN0ID0gZ2Z4OjpS ZWN0KDM2MCwgNzgwKTsKKyAgIHNjcmVlbl9pbmZvLmRldmljZV9zY2FsZV9mYWN0b3IgPSAzLjBm OworKyAgY29uc3QgZmxvYXQgbGF5b3V0X3pvb20gPSBzY3JlZW5faW5mby5kZXZpY2Vfc2NhbGVf ZmFjdG9yOworIAorLSAgLy8gNDR4NDQgY3NzIGltYWdlIHdoaWNoIGlzIGFib3ZlIHRoZSBwaHlz aWNhbCBzaXplIHRocmVzaG9sZAorLSAgLy8gYnV0IHdpdGggaW4gdGhlIGRldmljZSByYXRpbyB0 aHJlc2hvbGQKKysgIC8vIDQ0eDQ0IENTUyBpY29uICgxMzJ4MTMyIGRldmljZSBwaXhlbHMpIGlz IGJlbG93IHRoZSB0aHJlc2hvbGQgYW5kIGZpbHRlcmVkCisrICAvLyBhZnRlciB1bmRvaW5nIHRo ZSBsYXlvdXQgem9vbSAoRFNGKS4KKyAgIEVYUEVDVF9UUlVFKGZpbHRlci5TaG91bGRBcHBseUZp bHRlclRvSW1hZ2UoCisgICAgICAgSW1hZ2VDbGFzc2lmaWVySGVscGVyOjpHZXRJbWFnZVR5cGVG b3JUZXN0aW5nKAorLSAgICAgICAgICBzY3JlZW5faW5mbywgZ2Z4OjpSZWN0RigxMzIsIDEzMiks IGdmeDo6UmVjdEYoMTMyLCAxMzIpKSkpOworKyAgICAgICAgICBnZng6OlJlY3RGKDEzMiwgMTMy KSwgZ2Z4OjpSZWN0RigxMzIsIDEzMiksIGxheW91dF96b29tKSkpOworIAorLSAgLy8gNjB4NjAg Y3NzIGltYWdlCisrICAvLyA3MHg3MCBDU1MgaW1hZ2UgKDIxMHgyMTAgZGV2aWNlIHBpeGVscykg aXMgYWJvdmUgdGhlIHRocmVzaG9sZCBhbmQgbm90CisrICAvLyBmaWx0ZXJlZC4KKyAgIEVYUEVD VF9GQUxTRShmaWx0ZXIuU2hvdWxkQXBwbHlGaWx0ZXJUb0ltYWdlKAorICAgICAgIEltYWdlQ2xh c3NpZmllckhlbHBlcjo6R2V0SW1hZ2VUeXBlRm9yVGVzdGluZygKKy0gICAgICAgICAgc2NyZWVu X2luZm8sIGdmeDo6UmVjdEYoMTgwLCAxODApLCBnZng6OlJlY3RGKDE4MCwgMTgwKSkpKTsKKysg ICAgICAgICAgZ2Z4OjpSZWN0RigyMTAsIDIxMCksIGdmeDo6UmVjdEYoMjEwLCAyMTApLCBsYXlv dXRfem9vbSkpKTsKKyB9CisgCisgVEVTVF9GKFBhaW50QXV0b0RhcmtNb2RlVGVzdCwgU2hvdWxk QXBwbHlGaWx0ZXJUb0ltYWdlSXJyZXNwZWN0aXZlT2ZQYWdlWm9vbSkgewoKZGlmZiAtLWdpdCBh L2Nocm9taXVtLmNvbmYgYi9jaHJvbWl1bS5jb25mCmluZGV4IGY3Nzk3NWUuLjQ2ZTAwMmQgMTAw NjQ0Ci0tLSBhL2Nocm9taXVtLmNvbmYKKysrIGIvY2hyb21pdW0uY29uZgpAQCAtNjAsNyArNjAs NyBAQCBmaQogCiAjIFdlYiBEYXJrIG1vZGUKIGlmIFsgIiRXRUJfQVVUT19EQVJLTU9ERV9XRUJD T05URU5UIiA9PSAib24iIF0gOyB0aGVuCi0gICBkYXJrdHlwZT0iV2ViQ29udGVudHNGb3JjZURh cmssQXV0b0RhcmtNb2RlU2tpcEltYWdlcyIKKyAgIGRhcmt0eXBlPSJXZWJDb250ZW50c0ZvcmNl RGFyayIKICAgIGlmIFsgLXogIiRFTkFCTEVfRkVBVFVSRVMiIF0gOyB0aGVuCiAgICAgICAgRU5B QkxFX0ZFQVRVUkVTKz0iJGRhcmt0eXBlIgogICAgZWxzZQoKZGlmZiAtLWdpdCBhL2Nocm9taXVt LnNwZWMgYi9jaHJvbWl1bS5zcGVjCmluZGV4IDg3YWM1NjkuLmZhMzE4MmEgMTAwNjQ0Ci0tLSBh L2Nocm9taXVtLnNwZWMKKysrIGIvY2hyb21pdW0uc3BlYwpAQCAtMjcxLDcgKzI3MSw3IEBACiAl ZW5kaWYKIAogTmFtZToJY2hyb21pdW0KLVZlcnNpb246IDE1MC4wLjc4NzEuMTE0CitWZXJzaW9u OiAxNTAuMC43ODcxLjEyNAogUmVsZWFzZTogMSV7P2Rpc3R9CiBTdW1tYXJ5OiBBIFdlYktpdCAo QmxpbmspIHBvd2VyZWQgd2ViIGJyb3dzZXIgdGhhdCBHb29nbGUgZG9lc24ndCB3YW50IHlvdSB0 byB1c2UKIFVybDogaHR0cDovL3d3dy5jaHJvbWl1bS5vcmcvSG9tZQpAQCAtNTI3LDYgKzUyNyw5 IEBAIFBhdGNoNjAxOiBjaHJvbWl1bS0xNTAtT21pdC1hci1mcm9tLWlucHV0cy13aGVuLXJlc29s dmVkLXZpYS1QQVRILnBhdGNoCiBQYXRjaDYwMjogY2hyb21pdW0tMTUwLUZpeC1nZXRfcGF0aF9p bmZvLW9uLWVtcHR5LWFyLWluLXVuYnVuZGxlLXRvb2xjaGFpbi5wYXRjaAogIyBEYXJrbW9kZQog UGF0Y2g2MDM6IGNocm9taXVtLTE1MC1BZGQtQXV0b0RhcmtNb2RlU2tpcEltYWdlcy1mbGFnLXRv LWJ5cGFzcy1pbWFnZS1kYXJrLW1vZGUucGF0Y2gKK1BhdGNoNjA0OiBjaHJvbWl1bS0xNTAtTWFr ZS1kYXJrLW1vZGUtYXBwbHktZmlsdGVyLXRvLWltYWdlcy1pcnJlc3BlY3RpdmUtb2YtbGF5b3V0 LXpvb20ucGF0Y2gKK1BhdGNoNjA1OiBjaHJvbWl1bS0xNTAtVXNlLTY0cHgtY3NzLXBpeGVscy1h YnNvbHV0ZS10aHJlc2hvbGQtZm9yLWRhcmstaW1hZ2UtY2xhc3NpZmljYXRpb24ucGF0Y2gKK1Bh dGNoNjA2OiBjaHJvbWl1bS0xNTAtQWRkLXNpemUtdGhyZXNob2xkLWZvci1jbGFzc2lmeWluZy1T VkctZG9jdW1lbnRzLWZvci1hdXRvLWRhcmstbW9kZS5wYXRjaAogCiAjIFVzZSBjaHJvbWl1bS1s YXRlc3QucHkgdG8gZ2VuZXJhdGUgY2xlYW4gdGFyYmFsbCBmcm9tIHJlbGVhc2VkIGJ1aWxkIHRh cmJhbGxzLCBmb3VuZCBoZXJlOgogIyBodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2J1aWxkYm90 L29mZmljaWFsLwpAQCAtMTI0OCw2ICsxMjUxLDkgQEAgUXQ2IFVJIGZvciBjaHJvbWl1bS4KICVw YXRjaCAtUDYwMiAtcDEgLWIgLkZpeC1nZXRfcGF0aF9pbmZvLW9uLWVtcHR5LWFyLWluLXVuYnVu ZGxlLXRvb2xjaGFpbgogIyBEYXJrbW9kZQogJXBhdGNoIC1QNjAzIC1wMSAtYiAuQWRkLUF1dG9E YXJrTW9kZVNraXBJbWFnZXMtZmxhZy10by1ieXBhc3MtaW1hZ2UtZGFyay1tb2RlCislcGF0Y2gg LVA2MDQgLXAxIC1iIC5NYWtlLWRhcmstbW9kZS1hcHBseS1maWx0ZXItdG8taW1hZ2VzLWlycmVz cGVjdGl2ZS1vZi1sYXlvdXQtem9vbQorJXBhdGNoIC1QNjA1IC1wMSAtYiAuVXNlLTY0cHgtY3Nz LXBpeGVscy1hYnNvbHV0ZS10aHJlc2hvbGQtZm9yLWRhcmstaW1hZ2UtY2xhc3NpZmljYXRpb24K KyVwYXRjaCAtUDYwNiAtcDEgLWIgLkFkZC1zaXplLXRocmVzaG9sZC1mb3ItY2xhc3NpZnlpbmct U1ZHLWRvY3VtZW50cy1mb3ItYXV0by1kYXJrLW1vZGUKIAogIyBDaGFuZ2Ugc2hlYmFuZyBpbiBh bGwgcmVsZXZhbnQgZmlsZXMgaW4gdGhpcyBkaXJlY3RvcnkgYW5kIGFsbCBzdWJkaXJlY3Rvcmll cwogIyBTZWUgYG1hbiBmaW5kYCBmb3IgaG93IHRoZSBgLWV4ZWMgY29tbWFuZCB7fSArYCBzeW50 YXggd29ya3MKQEAgLTE5MjIsNiArMTkyOCwyNSBAQCBmaQogJWVuZGlmCiAKICVjaGFuZ2Vsb2cK KyogV2VkIEp1bCAxNSAyMDI2IFRoYW4gTmdvIDx0aGFuQHJlZGhhdC5jb20+IC0gMTUwLjAuNzg3 MS4xMjQtMQorLSBVcGRhdGUgdG8gMTUwLjAuNzg3MS4xMjQKKyAgKiBDVkUtMjAyNi0xNTc2NDog VXNlIGFmdGVyIGZyZWUgaW4gT3pvbmUKKyAgKiBDVkUtMjAyNi0xNTc2NTogVXNlIGFmdGVyIGZy ZWUgaW4gT3pvbmUKKyAgKiBDVkUtMjAyNi0xNTc2NjogVW5pbml0aWFsaXplZCBVc2UgaW4gU2tp YQorICAqIENWRS0yMDI2LTE1NzY3OiBIZWFwIGJ1ZmZlciBvdmVyZmxvdyBpbiBsaWJ5dXYKKyAg KiBDVkUtMjAyNi0xNTc2ODogSW5zdWZmaWNpZW50IHBvbGljeSBlbmZvcmNlbWVudCBpbiBIVE1M LWluLUNhbnZhcworICAqIENWRS0yMDI2LTE1NzY5OiBJbnN1ZmZpY2llbnQgdmFsaWRhdGlvbiBv ZiB1bnRydXN0ZWQgaW5wdXQgaW4gTGludXggVG9vbGtpdCBUaGVtaW5nCisgICogQ1ZFLTIwMjYt MTU3NzA6IFVuaW5pdGlhbGl6ZWQgVXNlIGluIFY4CisgICogQ1ZFLTIwMjYtMTU3NzE6IEluc3Vm ZmljaWVudCB2YWxpZGF0aW9uIG9mIHVudHJ1c3RlZCBpbnB1dCBpbiBNZWRpYQorICAqIENWRS0y MDI2LTE1NzcyOiBVc2UgYWZ0ZXIgZnJlZSBpbiBHUFUKKyAgKiBDVkUtMjAyNi0xNTc3MzogVXNl IGFmdGVyIGZyZWUgaW4gQ29yZQorICAqIENWRS0yMDI2LTE1Nzc0OiBVc2UgYWZ0ZXIgZnJlZSBp biBTa2lhCisgICogQ1ZFLTIwMjYtMTU3NzU6IEluc3VmZmljaWVudCBwb2xpY3kgZW5mb3JjZW1l bnQgaW4gVjgKKyAgKiBDVkUtMjAyNi0xNTc3NjogVHlwZSBDb25mdXNpb24gaW4gVjgKKyAgKiBD VkUtMjAyNi0xNTc3NzogVXNlIGFmdGVyIGZyZWUgaW4gVUkKKyAgKiBDVkUtMjAyNi0xNTc3ODog SW5zdWZmaWNpZW50IHZhbGlkYXRpb24gb2YgdW50cnVzdGVkIGlucHV0IGluIE5hdmlnYXRpb24K Ky0gQmFja3BvcnQgcGF0Y2hlcyB0byBpbXByb3ZlIGF1dG8gZGFya21vZGUKKwogKiBUaHUgSnVs IDA5IDIwMjYgVGhhbiBOZ28gPHRoYW5AcmVkaGF0LmNvbT4gLSAxNTAuMC43ODcxLjExNC0xCiAt IFVwZGF0ZSB0byAxNTAuMC43ODcxLjExNAogICAqIENWRS0yMDI2LTE1MTEyOiBVc2UgYWZ0ZXIg ZnJlZSBpbiBPem9uZQoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IDU3YTY1 MWYuLjZhOTZlZjQgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSwyICsx LDIgQEAKIFNIQTUxMiAobm9kZS12MjIuMjIuMC1zdHJpcHBlZC50YXIuZ3opID0gZjMyYThhNzMw NjNiM2M3OGNiYWNmOTQxZTExZGQ1MjllYmNmMjYxOGIzYmE2NjE5NjYzMTJlNDllZTk4NzBjNDNh M2FjZjI1NmU4ZDMzMWE0YjBiNjIxYjE2YTUwMTgxMGMwMmEzYWQ3NjNjNzU4ODRjYzI1MGFkZGNh OGUxMDYKLVNIQTUxMiAoY2hyb21pdW0tMTUwLjAuNzg3MS4xMTQtY2xlYW4udGFyLnh6KSA9IDY5 NTkyODRhMTk4ZjQ2OTBlNzljMDQ3ZDM2MjA5ZjA4MDlhMGExZWNlYTNlYjBmYTBkOWZiOGM1NGIz YmQ3NzU2ZTU1NjNkZTNkMDExYzI5OGM0NWMzNjE5ZGRmMzZkNGUxNDFmODFjZWI3ZjZmZjFhMDg0 ZDJhZmU4M2M1YmIxCitTSEE1MTIgKGNocm9taXVtLTE1MC4wLjc4NzEuMTI0LWNsZWFuLnRhci54 eikgPSBmN2QwYzUyOTdmNjRiYzEzMDk4ZjZmNzkxMDUwNTBiZjM4YmI4NGM3NjQxNDNmNWQzYzQy NWNlNzMyMzQxODljZmUzYzIwMWIyYjkzM2NkMWI3NDIzZWE4YzE2Y2NkN2MwYjRjMzI5NzhmMDNk OGZlMjYxMzI2NDUzZDc3ZGU1ZAo=