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-next: Merge #34 `Use proper python3 print syntax` Date: Fri, 07 Aug 2026 16:05:08 GMT Message-ID: <178611870819.1.9113276067755362647.rpms-chromium-b5a8d8874824@fedoraproject.org> List-ID: X-Git-Repo: rpms/chromium X-Git-Branch: epel9-next X-Git-Rev: b5a8d88748248e48937b326206a6bb9735bb3640 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvY2hyb21pdW0KQnJh bmNoIDogZXBlbDktbmV4dApDb21taXQgOiBiNWE4ZDg4NzQ4MjQ4ZTQ4OTM3YjMyNjIwNmE2YmI5 NzM1YmIzNjQwCkF1dGhvciA6IFRoYW4gTmdvIDx0aGFuQGZlZG9yYXByb2plY3Qub3JnPgpEYXRl ICAgOiAyMDIzLTA0LTI3VDA5OjIzOjU5KzAwOjAwClN0YXRzICA6ICsxMTk3Ly0xOTQgaW4gMTAg ZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2Nocm9t aXVtL2MvYjVhOGQ4ODc0ODI0OGU0ODkzN2IzMjYyMDZhNmJiOTczNWJiMzY0MD9icmFuY2g9ZXBl bDktbmV4dAoKTG9nOgpNZXJnZSAjMzQgYFVzZSBwcm9wZXIgcHl0aG9uMyBwcmludCBzeW50YXhg CgotLS0KZGlmZiAtLWdpdCBhL2Nocm9taXVtLnNwZWMgYi9jaHJvbWl1bS5zcGVjCmluZGV4IDkw OGFiZjIuLjJiOTU4NDEgMTAwNjQ0Ci0tLSBhL2Nocm9taXVtLnNwZWMKKysrIGIvY2hyb21pdW0u c3BlYwpAQCAtMTI1OCw3ICsxMjU4LDcgQEAgYnVpbGQvbGludXgvdW5idW5kbGUvcmVwbGFjZV9n bl9maWxlcy5weSAtLXN5c3RlbS1saWJyYXJpZXMgXAogCWZsYWMKIAogIyBDaGVjayB0aGF0IHRo ZXJlIGlzIG5vIHN5c3RlbSAnZ29vZ2xlJyBtb2R1bGUsIHNoYWRvd2luZyBidW5kbGVkIG9uZXM6 Ci1pZiBweXRob24zIC1jICdpbXBvcnQgZ29vZ2xlIDsgcHJpbnQgZ29vZ2xlLl9fcGF0aF9fJyAy PiAvZGV2L251bGwgOyB0aGVuIFwKK2lmIHB5dGhvbjMgLWMgJ2ltcG9ydCBnb29nbGUgOyBwcmlu dChnb29nbGUuX19wYXRoX18pJyAyPiAvZGV2L251bGwgOyB0aGVuIFwKICAgICBlY2hvICJQeXRo b24gMyAnZ29vZ2xlJyBtb2R1bGUgaXMgZGVmaW5lZCwgdGhpcyB3aWxsIHNoYWRvdyBtb2R1bGVz IG9mIHRoaXMgYnVpbGQiOyBcCiAgICAgZXhpdCAxIDsgXAogZmkKCmRpZmYgLS1naXQgYS9jaHJv bWl1bS0xMTAtZ3RrdGhlbWUucGF0Y2ggYi9jaHJvbWl1bS0xMTAtZ3RrdGhlbWUucGF0Y2gKZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNmY2FhMjYuLjAwMDAwMDAKLS0tIGEvY2hyb21p dW0tMTEwLWd0a3RoZW1lLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzkgKzAsMCBAQAotVXBk YXRlIHdlYl9pbnN0YW5jZSBvbiBHVEsgd2hlbiBjaGVja2luZyBmb3IgZGFyayBtb2RlCi0KLUFk ZHMgc29tZSBleHRyYSBjb2RlIHRvIGNoYW5nZSB0aGUgdGhlbWUgaW4gdGhlIHdlYiBpbnN0YW5j ZSB3aGVuIG9uIEdUSywKLXRvIGZpeCBwcmVmZXJzLWNvbG9yLXNjaGVtZS4KLQotQWxzbyBtYWtl cyBTeXN0ZW1EYXJrTW9kZVN1cHBvcnRlZCByZXR1cm4gdHJ1ZSBvbiBMaW51eCwKLXNpbmNlIHRo ZSBtb3N0IG1vZGVybiBMaW51eCBkaXN0cmlidXRpb25zIHN1cHBvcnQgaXQsCi1hbmQgTGludXgg ZGFyayBtb2RlIGNvZGUgZG9lc27igJl0IGRldGVjdCB3aGV0aGVyIG9yIG5vdCBpdCBpcyBzdXBw b3J0ZWQuCi1UaGlzIGZ1bmN0aW9uIHNlZW1zIHRvIG9ubHkgYmUgdXNlZCBpbiB0ZWxlbWV0cnks IHNvIG1heWJlIGl0IGRvZXNu4oCZdAotbmVlZCB0byBiZSBjaGFuZ2VkLgotCi1CdWc6IDk5ODkw MwotQ2hhbmdlLUlkOiBJMDJhMDg0ZDlmNzMzYjAxYzhlNmFkMGY1Y2E1ZjFlYmNmYjE2ZDQ3NQot ZGlmZiAtLWdpdCBhL0FVVEhPUlMgYi9BVVRIT1JTCi1pbmRleCA3NThkMGJmLi44YzkxMTQ2IDEw MDY0NAotLS0tIGEvQVVUSE9SUwotKysrIGIvQVVUSE9SUwotQEAgLTczNSw2ICs3MzUsNyBAQAot IExlaXRoIEJhZGUgPGxlaXRoQGxlaXRoYWx3ZWFwb24uZ2Vlay5uej4KLSBMZWkgR2FvIDxsZWln YW9AaHVhd2VpLmNvbT4KLSBMZWkgTGkgPGxsaS5rZXJuZWwua3ZtQGdtYWlsLmNvbT4KLStMZW5h IFdpbGRlcnZhbmNrIDxsZW5hLndpbGRlcnZhbmNrQGdtYWlsLmNvbT4KLSBMZW5ueSBLaGF6YW4g PGxlbm55LmtoYXphbkBnbWFpbC5jb20+Ci0gTGVvIFdvbGYgPGpjbHdAeW1haWwuY29tPgotIExl b24gSGFuIDxsZW9uLmhhbkBpbnRlbC5jb20+Ci1kaWZmIC0tZ2l0IGEvY2hyb21lL2NvbW1vbi9j aHJvbWVfZmVhdHVyZXMuY2MgYi9jaHJvbWUvY29tbW9uL2Nocm9tZV9mZWF0dXJlcy5jYwotaW5k ZXggODVjMzkzMS4uMmIwYzJhODQgMTAwNjQ0Ci0tLS0gYS9jaHJvbWUvY29tbW9uL2Nocm9tZV9m ZWF0dXJlcy5jYwotKysrIGIvY2hyb21lL2NvbW1vbi9jaHJvbWVfZmVhdHVyZXMuY2MKLUBAIC0x NDMwLDEyICsxNDMwLDEyIEBACi0gQkFTRV9GRUFUVVJFKGtXZWJVSURhcmtNb2RlLAotICAgICAg ICAgICAgICAiV2ViVUlEYXJrTW9kZSIsCi0gI2lmIEJVSUxERkxBRyhJU19NQUMpIHx8IEJVSUxE RkxBRyhJU19XSU4pIHx8IEJVSUxERkxBRyhJU19BTkRST0lEKSB8fCBcCi0tICAgIEJVSUxERkxB RyhJU19DSFJPTUVPUykKLSsgICAgQlVJTERGTEFHKElTX0NIUk9NRU9TKSB8fCBCVUlMREZMQUco SVNfTElOVVgpCi0gICAgICAgICAgICAgIGJhc2U6OkZFQVRVUkVfRU5BQkxFRF9CWV9ERUZBVUxU Ci0gI2Vsc2UKLSAgICAgICAgICAgICAgYmFzZTo6RkVBVFVSRV9ESVNBQkxFRF9CWV9ERUZBVUxU Ci0gI2VuZGlmICAvLyBCVUlMREZMQUcoSVNfTUFDKSB8fCBCVUlMREZMQUcoSVNfV0lOKSB8fCBC VUlMREZMQUcoSVNfQU5EUk9JRCkgfHwKLS0gICAgICAgIC8vIEJVSUxERkxBRyhJU19DSFJPTUVP UykKLSsgICAgICAgIC8vIEJVSUxERkxBRyhJU19DSFJPTUVPUykgfHwgQlVJTERGTEFHKElTX0xJ TlVYKQotICk7Ci0gCi0gI2lmIEJVSUxERkxBRyhJU19DSFJPTUVPU19BU0gpCi1kaWZmIC0tZ2l0 IGEvdWkvZ3RrL25hdGl2ZV90aGVtZV9ndGsuY2MgYi91aS9ndGsvbmF0aXZlX3RoZW1lX2d0ay5j YwotaW5kZXggYTYwZDZlMy4uMTIwMGE4MCAxMDA2NDQKLS0tLSBhL3VpL2d0ay9uYXRpdmVfdGhl bWVfZ3RrLmNjCi0rKysgYi91aS9ndGsvbmF0aXZlX3RoZW1lX2d0ay5jYwotQEAgLTE2NSw2ICsx NjUsMTQgQEAKLSAgICAgICBVc2VySGFzQ29udHJhc3RQcmVmZXJlbmNlKCkKLSAgICAgICAgICAg PyB1aTo6TmF0aXZlVGhlbWVCYXNlOjpQcmVmZXJyZWRDb250cmFzdDo6a01vcmUKLSAgICAgICAg ICAgOiB1aTo6TmF0aXZlVGhlbWVCYXNlOjpQcmVmZXJyZWRDb250cmFzdDo6a05vUHJlZmVyZW5j ZSk7Ci0rCi0rICAvLyBVcGRhdGUgdGhlIHdlYiBpbnN0YW5jZSB0b28gdG8gZml4IHByZWZlcnMt Y29sb3ItdGhlbWUKLSsgIE5hdGl2ZVRoZW1lKiB3ZWJfaW5zdGFuY2UgPSBOYXRpdmVUaGVtZTo6 R2V0SW5zdGFuY2VGb3JXZWIoKTsKLSsgIHdlYl9pbnN0YW5jZS0+c2V0X3VzZV9kYXJrX2NvbG9y cyhTaG91bGRVc2VEYXJrQ29sb3JzKCkpOwotKyAgd2ViX2luc3RhbmNlLT5zZXRfcHJlZmVycmVk X2NvbG9yX3NjaGVtZShDYWxjdWxhdGVQcmVmZXJyZWRDb2xvclNjaGVtZSgpKTsKLSsgIHdlYl9p bnN0YW5jZS0+U2V0UHJlZmVycmVkQ29udHJhc3QoQ2FsY3VsYXRlUHJlZmVycmVkQ29udHJhc3Qo KSk7Ci0rICB3ZWJfaW5zdGFuY2UtPk5vdGlmeU9uTmF0aXZlVGhlbWVVcGRhdGVkKCk7Ci0rCi0g ICBuYXRpdmVfdGhlbWUtPk5vdGlmeU9uTmF0aXZlVGhlbWVVcGRhdGVkKCk7Ci0gfQotIAotZGlm ZiAtLWdpdCBhL3VpL25hdGl2ZV90aGVtZS9uYXRpdmVfdGhlbWUuY2MgYi91aS9uYXRpdmVfdGhl bWUvbmF0aXZlX3RoZW1lLmNjCi1pbmRleCA4MzVmYTM2Li5mZWVjMTA5IDEwMDY0NAotLS0tIGEv dWkvbmF0aXZlX3RoZW1lL25hdGl2ZV90aGVtZS5jYwotKysrIGIvdWkvbmF0aXZlX3RoZW1lL25h dGl2ZV90aGVtZS5jYwotQEAgLTM2LDcgKzM2LDExIEBACi0gI2lmICFCVUlMREZMQUcoSVNfV0lO KSAmJiAhQlVJTERGTEFHKElTX0FQUExFKQotIC8vIHN0YXRpYwotIGJvb2wgTmF0aXZlVGhlbWU6 OlN5c3RlbURhcmtNb2RlU3VwcG9ydGVkKCkgewotKyNpZiBCVUlMREZMQUcoSVNfTElOVVgpCi0r ICByZXR1cm4gdHJ1ZTsKLSsjZWxzZQotICAgcmV0dXJuIGZhbHNlOwotKyNlbmRpZgotIH0KLSAj ZW5kaWYKLSAKCmRpZmYgLS1naXQgYS9jaHJvbWl1bS0xMTItY2hlY2stcGFzc3Rocm91Z2gtY29t bWFuZC1kZWNvZGVyLnBhdGNoIGIvY2hyb21pdW0tMTEyLWNoZWNrLXBhc3N0aHJvdWdoLWNvbW1h bmQtZGVjb2Rlci5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NWZh MWUwCi0tLSAvZGV2L251bGwKKysrIGIvY2hyb21pdW0tMTEyLWNoZWNrLXBhc3N0aHJvdWdoLWNv bW1hbmQtZGVjb2Rlci5wYXRjaApAQCAtMCwwICsxLDcxIEBACitGcm9tIDA0MWNiMjQ4ZTgxODgy M2NhYWFhYmM2N2RiOTJiMTY0OTlkMDQxNmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiBWYXNpbGl5IFRlbGV6aG5pa292IDx2YXNpbHl0QGNocm9taXVtLm9yZz4KK0RhdGU6IFRodSwg MDIgRmViIDIwMjMgMTU6NDI6MjggKzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gQ0hFQ0sgdGhhdCBw YXNzdGhyb3VnaCBjb21tYW5kIGRlY29kZXIgaXMgdXNlZCBvbiBsYXVuY2hlZCBwbGF0Zm9ybXMK KworVGhpcyBDTCBhZGRzIGVuZm9yY2VzIHRoYXQgdmFsaWRhdGluZyBjb21tYW5kIGRlY29kZXIg aXMgbm90IHVzZWQgb24KK3BsYXRmb3JtcyB3aGVyZSBwYXNzdGhyb3VnaCBpcyBmdWxseSBsYXVu Y2hlZC4gV2Ugc3RpbGwgYWxsb3cgdG8gdXNlIGl0CitieSB0ZXN0cyBvbiBsaW51eAorCitCdWc6 IDE0MDY1ODUKK0NoYW5nZS1JZDogSWQ2YmMxZDc0OGZkZjljOTUzZGRlNzZjOGQ0YjVmNTlkZGVm NjA4NTcKK1Jldmlld2VkLW9uOiBodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVzb3VyY2Uu Y29tL2MvY2hyb21pdW0vc3JjLysvNDIxMjEzNAorUmV2aWV3ZWQtYnk6IEt5bGUgQ2hhcmJvbm5l YXUgPGt5bGVjaGFyQGNocm9taXVtLm9yZz4KK0NvbW1pdC1RdWV1ZTogVmFzaWxpeSBUZWxlemhu aWtvdiA8dmFzaWx5dEBjaHJvbWl1bS5vcmc+CitDci1Db21taXQtUG9zaXRpb246IHJlZnMvaGVh ZHMvbWFpbkB7IzExMDA0NDB9CistLS0KKworZGlmZiAtLWdpdCBhL2dwdS9jb21tYW5kX2J1ZmZl ci9zZXJ2aWNlL2dsZXMyX2NtZF9kZWNvZGVyLmNjIGIvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZp Y2UvZ2xlczJfY21kX2RlY29kZXIuY2MKK2luZGV4IGViNzEwNjk2Li5iMjJkZmZiIDEwMDY0NAor LS0tIGEvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2UvZ2xlczJfY21kX2RlY29kZXIuY2MKKysr KyBiL2dwdS9jb21tYW5kX2J1ZmZlci9zZXJ2aWNlL2dsZXMyX2NtZF9kZWNvZGVyLmNjCitAQCAt MzQ0Nyw3ICszNDQ3LDEzIEBACisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG91dHB1dHRlciwgZ3JvdXApOworICAgfQorIAorKy8vIEFsbG93IGxpbnV4IHRvIHJ1 biBmdXp6ZXJzLgorKyNpZiBCVUlMREZMQUcoRU5BQkxFX1ZBTElEQVRJTkdfQ09NTUFORF9ERUNP REVSKSB8fCBCVUlMREZMQUcoSVNfTElOVVgpCisgICByZXR1cm4gbmV3IEdMRVMyRGVjb2Rlcklt cGwoY2xpZW50LCBjb21tYW5kX2J1ZmZlcl9zZXJ2aWNlLCBvdXRwdXR0ZXIsIGdyb3VwKTsKKysj ZWxzZQorKyAgTE9HKEZBVEFMKSA8PCAiVmFsaWRhdGluZyBjb21tYW5kIGRlY29kZXIgaXMgbm90 IHN1cHBvcnRlZC4iOworKyAgcmV0dXJuIG51bGxwdHI7CisrI2VuZGlmCisgfQorIAorIEdMRVMy RGVjb2RlckltcGw6OkdMRVMyRGVjb2RlckltcGwoCitkaWZmIC0tZ2l0IGEvZ3B1L2lwYy9zZXJ2 aWNlL2dwdV9pbml0LmNjIGIvZ3B1L2lwYy9zZXJ2aWNlL2dwdV9pbml0LmNjCitpbmRleCA0MDk3 N2Q5Yi4uNTAxNzFlMjAgMTAwNjQ0CistLS0gYS9ncHUvaXBjL3NlcnZpY2UvZ3B1X2luaXQuY2MK KysrKyBiL2dwdS9pcGMvc2VydmljZS9ncHVfaW5pdC5jYworQEAgLTUxMCw4ICs1MTAsOSBAQAor IAorICAgYXV0byBpbXBsID0gZ2w6OkdldEdMSW1wbGVtZW50YXRpb25QYXJ0cygpOworICAgYm9v bCBnbF9kaXNhYmxlZCA9IGltcGwgPT0gZ2w6OmtHTEltcGxlbWVudGF0aW9uRGlzYWJsZWQ7Cist ICBib29sIGlzX3N3YW5nbGUgPSBpbXBsID09IGdsOjpBTkdMRUltcGxlbWVudGF0aW9uOjprU3dp ZnRTaGFkZXI7CisgCisrI2lmIEJVSUxERkxBRyhFTkFCTEVfVkFMSURBVElOR19DT01NQU5EX0RF Q09ERVIpCisrICBib29sIGlzX3N3YW5nbGUgPSBpbXBsID09IGdsOjpBTkdMRUltcGxlbWVudGF0 aW9uOjprU3dpZnRTaGFkZXI7CisgICAvLyBDb21wdXRlIHBhc3N0aHJvdWdoIGRlY29kZXIgc3Rh dHVzIGJlZm9yZSBDb21wdXRlR3B1RmVhdHVyZUluZm8gYmVsb3cuCisgICAvLyBEbyB0aGlzIGFm dGVyIEdMIGlzIGluaXRpYWxpemVkIHNvIGV4dGVuc2lvbnMgY2FuIGJlIHF1ZXJpZWQuCisgICAv LyBVc2luZyBTd0FOR0xFIGZvcmNlcyB0aGUgcGFzc3Rocm91Z2ggY29tbWFuZCBkZWNvZGVyLgor QEAgLTUzMyw2ICs1MzQsMjAgQEAKKyAgIH0KKyAgIGdwdV9wcmVmZXJlbmNlc18udXNlX3Bhc3N0 aHJvdWdoX2NtZF9kZWNvZGVyID0KKyAgICAgICBncHVfaW5mb18ucGFzc3Rocm91Z2hfY21kX2Rl Y29kZXI7CisrI2Vsc2UKKysgIC8vIElmIGdsIGlzIGRpc2FibGVkIHBhc3N0aHJvdWdoL3ZhbGlk YXRpbmcgY29tbWFuZCBkZWNvZGVyIGRvZXNuJ3QgbWF0dGVyLiBJZgorKyAgLy8gaXQncyBub3Qg ZW5zdXJlIHRoYXQgcGFzc3Rocm91Z2ggY29tbWFuZCBkZWNvZGVyIGlzIHN1cHBvcnRlZCBhcyBp dCdzIG91cgorKyAgLy8gb25seSBvcHRpb24uCisrICBpZiAoIWdsX2Rpc2FibGVkKSB7CisrICAg IExPR19JRihGQVRBTCwgIWdsZXMyOjpQYXNzdGhyb3VnaENvbW1hbmREZWNvZGVyU3VwcG9ydGVk KCkpCisrICAgICAgICA8PCAiUGFzc3Rocm91Z2ggaXMgbm90IHN1cHBvcnRlZCwgR0wgaXMgIgor KyAgICAgICAgPDwgZ2w6OkdldEdMSW1wbGVtZW50YXRpb25HTE5hbWUoZ2w6OkdldEdMSW1wbGVt ZW50YXRpb25QYXJ0cygpKQorKyAgICAgICAgPDwgIiwgQU5HTEUgaXMgIgorKyAgICAgICAgPDwg Z2w6OkdldEdMSW1wbGVtZW50YXRpb25BTkdMRU5hbWUoZ2w6OkdldEdMSW1wbGVtZW50YXRpb25Q YXJ0cygpKTsKKysgICAgZ3B1X2luZm9fLnBhc3N0aHJvdWdoX2NtZF9kZWNvZGVyID0gdHJ1ZTsK KysgICAgZ3B1X3ByZWZlcmVuY2VzXy51c2VfcGFzc3Rocm91Z2hfY21kX2RlY29kZXIgPSB0cnVl OworKyAgfQorKyNlbmRpZgorIAorICAgLy8gV2UgbmVlZCB0byBjb2xsZWN0IEdMIHN0cmluZ3Mg KFZFTkRPUiwgUkVOREVSRVIpIGZvciBibG9ja2xpc3RpbmcgcHVycG9zZXMuCisgICBpZiAoIWds X2Rpc2FibGVkKSB7CgpkaWZmIC0tZ2l0IGEvY2hyb21pdW0tMTEyLWZlZWRfcHJvdG9zLnBhdGNo IGIvY2hyb21pdW0tMTEyLWZlZWRfcHJvdG9zLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAyMjJkNDM5Li4wMDAwMDAwCi0tLSBhL2Nocm9taXVtLTExMi1mZWVkX3Byb3Rvcy5w YXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLVNwbGl0IG91dCBpb3Mgc2hhcmVk IGZlZWQgcHJvdG9zCi0KLWNocm9tZV9mZWVkX3Jlc3BvbnNlX21ldGFkYXRhLnByb3RvIGlzIG5l ZWRlZCBpbiBpb3Mgc28gc3BsaXQgaXQgb3V0Ci1zbyBpdCBjYW4gYmUgc2VwYXJhdGVseSBjb21w aWxlZCBpbnRvIGlvcy4KLQotQ2hhbmdlLUlkOiBJOWU1ZTUwZjVlMTc0MjI1OGY1YzgxOTdkNTRm MGM2MTBiNTZkYWY0YgotUmV2aWV3ZWQtb246IGh0dHBzOi8vY2hyb21pdW0tcmV2aWV3Lmdvb2ds ZXNvdXJjZS5jb20vYy9jaHJvbWl1bS9zcmMvKy80MjY2MDUwCi1Db21taXQtUXVldWU6IGVkY2hp biA8ZWRjaGluQGdvb2dsZS5jb20+Ci1SZXZpZXdlZC1ieTogRGFuIEggPGhhcnJpbmd0b25kQGNo cm9taXVtLm9yZz4KLUNyLUNvbW1pdC1Qb3NpdGlvbjogcmVmcy9oZWFkcy9tYWluQHsjMTEwNzM1 N30KLWRpZmYgLS1naXQgYS9jb21wb25lbnRzL2ZlZWQvY29yZS9wcm90by9CVUlMRC5nbiBiL2Nv bXBvbmVudHMvZmVlZC9jb3JlL3Byb3RvL0JVSUxELmduCi1pbmRleCA1MTkxNmUwOC4uZjBlYzUz MSAxMDA2NDQKLS0tLSBhL2NvbXBvbmVudHMvZmVlZC9jb3JlL3Byb3RvL0JVSUxELmduCi0rKysg Yi9jb21wb25lbnRzL2ZlZWQvY29yZS9wcm90by9CVUlMRC5nbgotQEAgLTIyLDcgKzIyLDYgQEAK LSAgICAgInYyL3dpcmUvY2FwYWJpbGl0aWVzX2RlYnVnX2RhdGEucHJvdG8iLAotICAgICAidjIv d2lyZS9jYXBhYmlsaXR5LnByb3RvIiwKLSAgICAgInYyL3dpcmUvY2hyb21lX2NsaWVudF9pbmZv LnByb3RvIiwKLS0gICAgInYyL3dpcmUvY2hyb21lX2ZlZWRfcmVzcG9uc2VfbWV0YWRhdGEucHJv dG8iLAotICAgICAidjIvd2lyZS9jaHJvbWVfZnVsZmlsbG1lbnRfaW5mby5wcm90byIsCi0gICAg ICJ2Mi93aXJlL2NsaWVudF9pbmZvLnByb3RvIiwKLSAgICAgInYyL3dpcmUvY2xpZW50X3VzZXJf cHJvZmlsZXMucHJvdG8iLAotQEAgLTY5LDYgKzY4LDEwIEBACi0gICBdCi0gfQotIAotK3Byb3Rv X2xpYnJhcnkoInByb3RvX2lvc19zaGFyZWRfdjIiKSB7Ci0rICBzb3VyY2VzID0gWyAidjIvd2ly ZS9jaHJvbWVfZmVlZF9yZXNwb25zZV9tZXRhZGF0YS5wcm90byIgXQotK30KLSsKLSBpZiAoaXNf YW5kcm9pZCkgewotICAgcHJvdG9famF2YV9saWJyYXJ5KCJwcm90b19qYXZhX3YyIikgewotICAg ICBwcm90b19wYXRoID0gIi4uLy4uLy4uLy4uLyIKLWRpZmYgLS1naXQgYS9jb21wb25lbnRzL2Zl ZWQvY29yZS92Mi9CVUlMRC5nbiBiL2NvbXBvbmVudHMvZmVlZC9jb3JlL3YyL0JVSUxELmduCi1p bmRleCBhYjVlZmNjNC4uYjFkM2ZiNCAxMDA2NDQKLS0tLSBhL2NvbXBvbmVudHMvZmVlZC9jb3Jl L3YyL0JVSUxELmduCi0rKysgYi9jb21wb25lbnRzL2ZlZWQvY29yZS92Mi9CVUlMRC5nbgotQEAg LTE3Miw2ICsxNzIsNyBAQAotICAgICAiOmlvc19zaGFyZWQiLAotICAgICAiLy9iYXNlIiwKLSAg ICAgIi8vY29tcG9uZW50cy9mZWVkL2NvcmUvY29tbW9uOmZlZWRfY29yZV9jb21tb24iLAotKyAg ICAiLy9jb21wb25lbnRzL2ZlZWQvY29yZS9wcm90bzpwcm90b19pb3Nfc2hhcmVkX3YyIiwKLSAg ICAgIi8vY29tcG9uZW50cy9mZWVkL2NvcmUvcHJvdG86cHJvdG9fdjIiLAotICAgXQotIH0KLUBA IC0xODcsNyArMTg4LDcgQEAKLSAgIGRlcHMgPSBbCi0gICAgICIvL2Jhc2UiLAotICAgICAiLy9j b21wb25lbnRzL2ZlZWQvY29yZS9jb21tb246ZmVlZF9jb3JlX2NvbW1vbiIsCi0tICAgICIvL2Nv bXBvbmVudHMvZmVlZC9jb3JlL3Byb3RvOnByb3RvX3YyIiwKLSsgICAgIi8vY29tcG9uZW50cy9m ZWVkL2NvcmUvcHJvdG86cHJvdG9faW9zX3NoYXJlZF92MiIsCi0gICAgICIvL2NvbXBvbmVudHMv cHJlZnMiLAotICAgXQotIH0KLWRpZmYgLS1naXQgYS9jb21wb25lbnRzL2ZlZWQvY29yZS92Mi9w dWJsaWMvaW9zL0JVSUxELmduIGIvY29tcG9uZW50cy9mZWVkL2NvcmUvdjIvcHVibGljL2lvcy9C VUlMRC5nbgotaW5kZXggMTA2ZjA4OWEuLjU5YmRkMmIgMTAwNjQ0Ci0tLS0gYS9jb21wb25lbnRz L2ZlZWQvY29yZS92Mi9wdWJsaWMvaW9zL0JVSUxELmduCi0rKysgYi9jb21wb25lbnRzL2ZlZWQv Y29yZS92Mi9wdWJsaWMvaW9zL0JVSUxELmduCi1AQCAtMjUsNyArMjUsNiBAQAotICAgZGVwcyA9 IFsKLSAgICAgIjpmZWVkX2lvc19wdWJsaWMiLAotICAgICAiLy9iYXNlL3Rlc3Q6dGVzdF9zdXBw b3J0IiwKLS0gICAgIi8vY29tcG9uZW50cy9mZWVkL2NvcmUvdjI6ZmVlZF9jb3JlX3YyIiwKLSAg ICAgIi8vY29tcG9uZW50cy9wcmVmcyIsCi0gICAgICIvL2NvbXBvbmVudHMvcHJlZnM6dGVzdF9z dXBwb3J0IiwKLSAgICAgIi8vdGVzdGluZy9nbW9jayIsCgpkaWZmIC0tZ2l0IGEvY2hyb21pdW0t MTEyLWludmVydF9vZl9HTEltYWdlTmF0aXZlUGl4bWFwX05hdGl2ZVBpeG1hcEVHTEJpbmRpbmcu cGF0Y2ggYi9jaHJvbWl1bS0xMTItaW52ZXJ0X29mX0dMSW1hZ2VOYXRpdmVQaXhtYXBfTmF0aXZl UGl4bWFwRUdMQmluZGluZy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li44MGZlMTU2Ci0tLSAvZGV2L251bGwKKysrIGIvY2hyb21pdW0tMTEyLWludmVydF9vZl9HTElt YWdlTmF0aXZlUGl4bWFwX05hdGl2ZVBpeG1hcEVHTEJpbmRpbmcucGF0Y2gKQEAgLTAsMCArMSw2 MzAgQEAKK2NvbW1pdCA3ZjA4NThjMDhkY2VmNzBjYTI2Y2U4NTI3YmJlZGZjYzVjNTIxOGQzCitB dXRob3I6IENvbGluIEJsdW5kZWxsIDxibHVuZGVsbEBjaHJvbWl1bS5vcmc+CitEYXRlOiAgIFRo dSBGZWIgMjMgMTQ6MTk6MzMgMjAyMyArMDAwMAorCisgICAgW096b25lXSBJbnZlcnQgbGF5ZXJp bmcgb2YgR0xJbWFnZU5hdGl2ZVBpeG1hcCAmIE5hdGl2ZVBpeG1hcEVHTEJpbmRpbmcKKyAgICAK KyAgICBOYXRpdmVQaXhtYXBFR0xCaW5kaW5nIGlzIGN1cnJlbnRseSBhIHRoaW4gbGF5ZXIgb24g dG9wIG9mCisgICAgR0xJbWFnZU5hdGl2ZVBpeG1hcC4gVGhpcyBDTCBpbnZlcnRzIHRoZSBsYXll cmluZyBzbyB0aGF0CisgICAgR0xJbWFnZU5hdGl2ZVBpeG1hcCBpbnN0ZWFkIHNpdHMgb24gdG9w IG9mIE5hdGl2ZVBpeG1hcEVHTEJpbmRpbmcKKyAgICAodmlhIHRoZSBwdWJsaWMgT3pvbmUgSW1w b3J0TmF0aXZlUGl4bWFwKCkgbWV0aG9kLCBmb3Igd2hpY2ggYWxsCisgICAgaW1wbGVtZW50YXRp b25zIHJldHVybiBOYXRpdmVQaXhtYXBFR0xCaW5kaW5nKS4gTm90ZSB0aGF0IHRoaXMgZW50YWls cworICAgIG1vdmluZyBHTEltYWdlTmF0aXZlUGl4bWFwIGludG8gLy9ncHUsIGFzIC8vdWkvZ2wg Y2Fubm90IGRlcGVuZCBvbgorICAgIC8vb3pvbmUvcHVibGljLgorICAgIAorICAgIFRoaXMgaW52 ZXJzaW9uIG1lYW5zIHRoYXQKKyAgICAoYSkgdGhlIFNoYXJlZEltYWdlIE96b25lIGJhY2tpbmcv cmVwcmVzZW50YXRpb25zIG5vIGxvbmdlciB1c2UgR0xJbWFnZQorICAgIChiKSB3aGVuIHdlIG5v IGxvbmdlciBuZWVkIEdMSW1hZ2VOYXRpdmVQaXhtYXAgd2UgY2FuIHNpbXBseSBkaXJlY3RseQor ICAgIGVsaW1pbmF0ZSBpdC4KKyAgICAKKyAgICBGb2xsb3d1cCBDTHMgd2lsbCBmb2xkIE5hdGl2 ZVBpeG1hcEVHTEJpbmRpbmdIZWxwZXIgaW50bworICAgIE5hdGl2ZVBpeG1hcEVHTEJpbmRpbmcg YW5kIG1ha2UgR0xJbWFnZU5hdGl2ZVBpeG1hcCBjcmVhdGlvbiBwcml2YXRlCisgICAgd2l0aCBm cmllbmRpbmcgdG8gZW5zdXJlIHRoYXQgbm8gbW9yZSB1c2FnZSBvZiB0aGUgZGVwcmVjYXRlZCBj bGFzcworICAgIGNyZWVwcyBpbi4KKyAgICAKKyAgICBCdWc6IDE0MTI2OTIKKyAgICBDaGFuZ2Ut SWQ6IEk1ZjAxZTliMWY2MTZkZDk5YjYxY2QyMDM2NjJkMGQwMmQzZGE3YjNlCisgICAgUmV2aWV3 ZWQtb246IGh0dHBzOi8vY2hyb21pdW0tcmV2aWV3Lmdvb2dsZXNvdXJjZS5jb20vYy9jaHJvbWl1 bS9zcmMvKy80MjYyMzkwCisgICAgUmV2aWV3ZWQtYnk6IFZhc2lsaXkgVGVsZXpobmlrb3YgPHZh c2lseXRAY2hyb21pdW0ub3JnPgorICAgIFJldmlld2VkLWJ5OiBjY2FtZXJvbiBjaHJvbWl1bSA8 Y2NhbWVyb25AY2hyb21pdW0ub3JnPgorICAgIFJldmlld2VkLWJ5OiBBbmRyZXMgQ2FsZGVyb24g SmFyYW1pbGxvIDxhbmRyZXNjakBjaHJvbWl1bS5vcmc+CisgICAgQ29tbWl0LVF1ZXVlOiBDb2xp biBCbHVuZGVsbCA8Ymx1bmRlbGxAY2hyb21pdW0ub3JnPgorICAgIENyLUNvbW1pdC1Qb3NpdGlv bjogcmVmcy9oZWFkcy9tYWluQHsjMTEwODkwOX0KKworZGlmZiAtLWdpdCBhL2dwdS9jb21tYW5k X2J1ZmZlci9zZXJ2aWNlL0JVSUxELmduIGIvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2UvQlVJ TEQuZ24KK2luZGV4IGQwOGJlNTk3ZTNlNWQuLjVhZDcyNGRkNTdiYmIgMTAwNjQ0CistLS0gYS9n cHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9CVUlMRC5nbgorKysrIGIvZ3B1L2NvbW1hbmRfYnVm ZmVyL3NlcnZpY2UvQlVJTEQuZ24KK0BAIC0zOTcsNiArMzk3LDggQEAgdGFyZ2V0KGxpbmtfdGFy Z2V0X3R5cGUsICJnbGVzMl9zb3VyY2VzIikgeworIAorICAgaWYgKHVzZV9vem9uZSkgeworICAg ICBzb3VyY2VzICs9IFsKKysgICAgICAic2hhcmVkX2ltYWdlL2dsX2ltYWdlX25hdGl2ZV9waXht YXAuY2MiLAorKyAgICAgICJzaGFyZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIiwK KyAgICAgICAic2hhcmVkX2ltYWdlL2dsX296b25lX2ltYWdlX3JlcHJlc2VudGF0aW9uLmNjIiwK KyAgICAgICAic2hhcmVkX2ltYWdlL2dsX296b25lX2ltYWdlX3JlcHJlc2VudGF0aW9uLmgiLAor ICAgICAgICJzaGFyZWRfaW1hZ2Uvb3pvbmVfaW1hZ2VfYmFja2luZy5jYyIsCitkaWZmIC0tZ2l0 IGEvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2UvZ2xlczJfY21kX2RlY29kZXIuY2MgYi9ncHUv Y29tbWFuZF9idWZmZXIvc2VydmljZS9nbGVzMl9jbWRfZGVjb2Rlci5jYworaW5kZXggZTNmNWIz YzU3MjFjZi4uYTI5NzM0N2MxOTY3MCAxMDA2NDQKKy0tLSBhL2dwdS9jb21tYW5kX2J1ZmZlci9z ZXJ2aWNlL2dsZXMyX2NtZF9kZWNvZGVyLmNjCisrKysgYi9ncHUvY29tbWFuZF9idWZmZXIvc2Vy dmljZS9nbGVzMl9jbWRfZGVjb2Rlci5jYworQEAgLTEyMCwxMCArMTIwLDEwIEBACisgI2VuZGlm CisgCisgI2lmIEJVSUxERkxBRyhJU19PWk9ORSkKKysjaW5jbHVkZSAiZ3B1L2NvbW1hbmRfYnVm ZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL2dsX2ltYWdlX25hdGl2ZV9waXhtYXAuaCIKKyAjaW5j bHVkZSAidWkvZ2Z4L2J1ZmZlcl9mb3JtYXRfdXRpbC5oIgorICNpbmNsdWRlICJ1aS9nZngvYnVm ZmVyX3VzYWdlX3V0aWwuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L25hdGl2ZV9waXhtYXAuaCIKKy0j aW5jbHVkZSAidWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorICNpbmNsdWRlICJ1aS9v em9uZS9wdWJsaWMvb3pvbmVfcGxhdGZvcm0uaCIKKyAjaW5jbHVkZSAidWkvb3pvbmUvcHVibGlj L3N1cmZhY2VfZmFjdG9yeV9vem9uZS5oIgorICNlbmRpZgorQEAgLTQ5OSw3ICs0OTksNyBAQCBj bGFzcyBCYWNrVGV4dHVyZSB7CisgI2lmIEJVSUxERkxBRyhJU19PWk9ORSkKKyAgIC8vIFRoZSBp bWFnZSB0aGF0IGJhY2tzIHRoZSB0ZXh0dXJlLCBpZiBpdHMgYmFja2VkIGJ5IGEgbmF0aXZlCisg ICAvLyBHcHVNZW1vcnlCdWZmZXIuCistICBzY29wZWRfcmVmcHRyPGdsOjpHTEltYWdlTmF0aXZl UGl4bWFwPiBpbWFnZV87CisrICBzY29wZWRfcmVmcHRyPEdMSW1hZ2VOYXRpdmVQaXhtYXA+IGlt YWdlXzsKKyAjZW5kaWYKKyB9OworIAorQEAgLTI1MjIsNyArMjUyMiw3IEBAIGNsYXNzIEdMRVMy RGVjb2RlckltcGwgOiBwdWJsaWMgR0xFUzJEZWNvZGVyLAorICAgLy8gTm90ZTogQ3JlYXRpb24g b2YgYW5vbnltb3VzIGltYWdlcyBpcyBwb3NzaWJsZSBvbmx5IG9uIE96b25lLgorICNpZiBCVUlM REZMQUcoSVNfT1pPTkUpCisgICBib29sIFN1cHBvcnRzQ3JlYXRlQW5vbnltb3VzSW1hZ2UoKTsK Ky0gIHNjb3BlZF9yZWZwdHI8Z2w6OkdMSW1hZ2VOYXRpdmVQaXhtYXA+IENyZWF0ZUFub255bW91 c0ltYWdlKAorKyAgc2NvcGVkX3JlZnB0cjxHTEltYWdlTmF0aXZlUGl4bWFwPiBDcmVhdGVBbm9u eW1vdXNJbWFnZSgKKyAgICAgICBjb25zdCBnZng6OlNpemUmIHNpemUsCisgICAgICAgZ2Z4OjpC dWZmZXJGb3JtYXQgZm9ybWF0LAorICAgICAgIGJvb2wqIGlzX2NsZWFyZWQsCitAQCAtMzI0Miw3 ICszMjQyLDcgQEAgYm9vbCBCYWNrVGV4dHVyZTo6QWxsb2NhdGVOYXRpdmVHcHVNZW1vcnlCdWZm ZXIoY29uc3QgZ2Z4OjpTaXplJiBzaXplLAorICAgICAvLyBkdXBsaWNhdGUgQkdSWF84ODg4Lgor ICAgICBidWZmZXJfZm9ybWF0ID0gZ2Z4OjpCdWZmZXJGb3JtYXQ6OkJHUlhfODg4ODsKKyAgIH0K Ky0gIHNjb3BlZF9yZWZwdHI8Z2w6OkdMSW1hZ2VOYXRpdmVQaXhtYXA+IGltYWdlID0gZGVjb2Rl cl8tPkNyZWF0ZUFub255bW91c0ltYWdlKAorKyAgc2NvcGVkX3JlZnB0cjxHTEltYWdlTmF0aXZl UGl4bWFwPiBpbWFnZSA9IGRlY29kZXJfLT5DcmVhdGVBbm9ueW1vdXNJbWFnZSgKKyAgICAgICBz aXplLCBidWZmZXJfZm9ybWF0LCAmaXNfY2xlYXJlZCwgVGFyZ2V0KCksIGlkKCkpOworICAgaWYg KCFpbWFnZSkKKyAgICAgcmV0dXJuIGZhbHNlOworQEAgLTE5NTkyLDcgKzE5NTkyLDcgQEAgYm9v bCBHTEVTMkRlY29kZXJJbXBsOjpTdXBwb3J0c0NyZWF0ZUFub255bW91c0ltYWdlKCkgeworICAg ICAgIC5zdXBwb3J0c19uYXRpdmVfcGl4bWFwczsKKyB9CisgCistc2NvcGVkX3JlZnB0cjxnbDo6 R0xJbWFnZU5hdGl2ZVBpeG1hcD4gR0xFUzJEZWNvZGVySW1wbDo6Q3JlYXRlQW5vbnltb3VzSW1h Z2UoCisrc2NvcGVkX3JlZnB0cjxHTEltYWdlTmF0aXZlUGl4bWFwPiBHTEVTMkRlY29kZXJJbXBs OjpDcmVhdGVBbm9ueW1vdXNJbWFnZSgKKyAgICAgY29uc3QgZ2Z4OjpTaXplJiBzaXplLAorICAg ICBnZng6OkJ1ZmZlckZvcm1hdCBmb3JtYXQsCisgICAgIGJvb2wqIGlzX2NsZWFyZWQsCitAQCAt MTk2MTIsOCArMTk2MTIsOCBAQCBzY29wZWRfcmVmcHRyPGdsOjpHTEltYWdlTmF0aXZlUGl4bWFw PiBHTEVTMkRlY29kZXJJbXBsOjpDcmVhdGVBbm9ueW1vdXNJbWFnZSgKKyAgICAgICAgICAgICAg ICA8PCBnZng6OkJ1ZmZlclVzYWdlVG9TdHJpbmcodXNhZ2UpOworICAgICByZXR1cm4gbnVsbHB0 cjsKKyAgIH0KKy0gIGF1dG8gaW1hZ2UgPSBnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcDo6Q3JlYXRl KHNpemUsIGZvcm1hdCwgc3RkOjptb3ZlKHBpeG1hcCksCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQsIHRleHR1cmVfaWQpOworKyAgYXV0byBp bWFnZSA9IEdMSW1hZ2VOYXRpdmVQaXhtYXA6OkNyZWF0ZShzaXplLCBmb3JtYXQsIHN0ZDo6bW92 ZShwaXhtYXApLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 YXJnZXQsIHRleHR1cmVfaWQpOworICAgaWYgKCFpbWFnZSkgeworICAgICBMT0coRVJST1IpIDw8 ICJGYWlsZWQgdG8gY3JlYXRlIEdMSW1hZ2UgIiA8PCBzaXplLlRvU3RyaW5nKCkgPDwgIiwgIgor ICAgICAgICAgICAgICAgIDw8IGdmeDo6QnVmZmVyRm9ybWF0VG9TdHJpbmcoZm9ybWF0KSA8PCAi LCB1c2FnZSAiCitkaWZmIC0tZ2l0IGEvdWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5jYyBi L2dwdS9jb21tYW5kX2J1ZmZlci9zZXJ2aWNlL3NoYXJlZF9pbWFnZS9nbF9pbWFnZV9uYXRpdmVf cGl4bWFwLmNjCitzaW1pbGFyaXR5IGluZGV4IDczJQorcmVuYW1lIGZyb20gdWkvZ2wvZ2xfaW1h Z2VfbmF0aXZlX3BpeG1hcC5jYworcmVuYW1lIHRvIGdwdS9jb21tYW5kX2J1ZmZlci9zZXJ2aWNl L3NoYXJlZF9pbWFnZS9nbF9pbWFnZV9uYXRpdmVfcGl4bWFwLmNjCitpbmRleCA2Y2JlN2JlMjg5 OWRlLi5kOTEwMWZiZGE4OTNiIDEwMDY0NAorLS0tIGEvdWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3Bp eG1hcC5jYworKysrIGIvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL2ds X2ltYWdlX25hdGl2ZV9waXhtYXAuY2MKK0BAIC0yLDkgKzIsMTMgQEAKKyAvLyBVc2Ugb2YgdGhp cyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2Fu IGJlCisgLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKyAKKy0jaW5jbHVkZSAidWkvZ2wv Z2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorKyNpbmNsdWRlICJncHUvY29tbWFuZF9idWZmZXIv c2VydmljZS9zaGFyZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorIAorLW5hbWVz cGFjZSBnbCB7CisrI2luY2x1ZGUgInVpL296b25lL3B1YmxpYy9uYXRpdmVfcGl4bWFwX2dsX2Jp bmRpbmcuaCIKKysjaW5jbHVkZSAidWkvb3pvbmUvcHVibGljL296b25lX3BsYXRmb3JtLmgiCisr I2luY2x1ZGUgInVpL296b25lL3B1YmxpYy9zdXJmYWNlX2ZhY3Rvcnlfb3pvbmUuaCIKKysKKytu YW1lc3BhY2UgZ3B1IHsKKyAKKyBzY29wZWRfcmVmcHRyPEdMSW1hZ2VOYXRpdmVQaXhtYXA+IEdM SW1hZ2VOYXRpdmVQaXhtYXA6OkNyZWF0ZSgKKyAgICAgY29uc3QgZ2Z4OjpTaXplJiBzaXplLAor QEAgLTQ3LDE4ICs1MSwxOCBAQCBib29sIEdMSW1hZ2VOYXRpdmVQaXhtYXA6OkluaXRpYWxpemVG cm9tTmF0aXZlUGl4bWFwKAorICAgICBjb25zdCBnZng6OkNvbG9yU3BhY2UmIGNvbG9yX3NwYWNl LAorICAgICBHTGVudW0gdGFyZ2V0LAorICAgICBHTHVpbnQgdGV4dHVyZV9pZCkgeworLSAgYmlu ZGluZ19oZWxwZXJfID0gTmF0aXZlUGl4bWFwRUdMQmluZGluZ0hlbHBlcjo6Q3JlYXRlRm9yUGxh bmUoCistICAgICAgc2l6ZV8sIGZvcm1hdCwgcGxhbmUsIHN0ZDo6bW92ZShwaXhtYXApLCBjb2xv cl9zcGFjZSwgdGFyZ2V0LCB0ZXh0dXJlX2lkKTsKKysgIHBpeG1hcF9nbF9iaW5kaW5nXyA9Cisr ICAgICAgdWk6Ok96b25lUGxhdGZvcm06OkdldEluc3RhbmNlKCkKKysgICAgICAgICAgLT5HZXRT dXJmYWNlRmFjdG9yeU96b25lKCkKKysgICAgICAgICAgLT5HZXRDdXJyZW50R0xPem9uZSgpCisr ICAgICAgICAgIC0+SW1wb3J0TmF0aXZlUGl4bWFwKHN0ZDo6bW92ZShwaXhtYXApLCBmb3JtYXQs IHBsYW5lLCBzaXplXywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3Jfc3Bh Y2UsIHRhcmdldCwgdGV4dHVyZV9pZCk7CisgCistICByZXR1cm4gISFiaW5kaW5nX2hlbHBlcl87 CisrICByZXR1cm4gISFwaXhtYXBfZ2xfYmluZGluZ187CisgfQorIAorIGdmeDo6U2l6ZSBHTElt YWdlTmF0aXZlUGl4bWFwOjpHZXRTaXplKCkgeworICAgcmV0dXJuIHNpemVfOworIH0KKyAKKy11 bnNpZ25lZCBHTEltYWdlTmF0aXZlUGl4bWFwOjpHZXRJbnRlcm5hbEZvcm1hdCgpIHsKKy0gIHJl dHVybiBiaW5kaW5nX2hlbHBlcl8tPkdldEludGVybmFsRm9ybWF0KCk7CistfQorLQorLX0gIC8v IG5hbWVzcGFjZSBnbAorK30gIC8vIG5hbWVzcGFjZSBncHUKK2RpZmYgLS1naXQgYS91aS9nbC9n bF9pbWFnZV9uYXRpdmVfcGl4bWFwLmggYi9ncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9zaGFy ZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oCitzaW1pbGFyaXR5IGluZGV4IDcyJQor cmVuYW1lIGZyb20gdWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oCityZW5hbWUgdG8gZ3B1 L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL2dsX2ltYWdlX25hdGl2ZV9waXht YXAuaAoraW5kZXggNWZmNWU5MWIzZWMxOC4uNDA4NzM2MGIwNGI0NSAxMDA2NDQKKy0tLSBhL3Vp L2dsL2dsX2ltYWdlX25hdGl2ZV9waXhtYXAuaAorKysrIGIvZ3B1L2NvbW1hbmRfYnVmZmVyL3Nl cnZpY2Uvc2hhcmVkX2ltYWdlL2dsX2ltYWdlX25hdGl2ZV9waXhtYXAuaAorQEAgLTIsMjEgKzIs MjQgQEAKKyAvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1z dHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisgLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4K KyAKKy0jaWZuZGVmIFVJX0dMX0dMX0lNQUdFX05BVElWRV9QSVhNQVBfSF8KKy0jZGVmaW5lIFVJ X0dMX0dMX0lNQUdFX05BVElWRV9QSVhNQVBfSF8KKysjaWZuZGVmIEdQVV9DT01NQU5EX0JVRkZF Ul9TRVJWSUNFX1NIQVJFRF9JTUFHRV9HTF9JTUFHRV9OQVRJVkVfUElYTUFQX0hfCisrI2RlZmlu ZSBHUFVfQ09NTUFORF9CVUZGRVJfU0VSVklDRV9TSEFSRURfSU1BR0VfR0xfSU1BR0VfTkFUSVZF X1BJWE1BUF9IXworIAorICNpbmNsdWRlIDxzdGRpbnQuaD4KKyAKKysjaW5jbHVkZSAiZ3B1L2dw dV9nbGVzMl9leHBvcnQuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L2NvbG9yX3NwYWNlLmgiCisgI2lu Y2x1ZGUgInVpL2dmeC9uYXRpdmVfcGl4bWFwLmgiCisgI2luY2x1ZGUgInVpL2dsL2dsX2JpbmRp bmdzLmgiCistI2luY2x1ZGUgInVpL2dsL2dsX2V4cG9ydC5oIgorICNpbmNsdWRlICJ1aS9nbC9n bF9pbWFnZS5oIgorLSNpbmNsdWRlICJ1aS9nbC9uYXRpdmVfcGl4bWFwX2VnbF9iaW5kaW5nX2hl bHBlci5oIgorIAorLW5hbWVzcGFjZSBnbCB7CisrbmFtZXNwYWNlIHVpIHsKKytjbGFzcyBOYXRp dmVQaXhtYXBHTEJpbmRpbmc7CisrfQorIAorLWNsYXNzIEdMX0VYUE9SVCBHTEltYWdlTmF0aXZl UGl4bWFwIDogcHVibGljIEdMSW1hZ2UgeworK25hbWVzcGFjZSBncHUgeworKworK2NsYXNzIEdQ VV9HTEVTMl9FWFBPUlQgR0xJbWFnZU5hdGl2ZVBpeG1hcCA6IHB1YmxpYyBnbDo6R0xJbWFnZSB7 CisgIHB1YmxpYzoKKyAgIC8vIENyZWF0ZSBhbiBFR0xJbWFnZSBmcm9tIGEgZ2l2ZW4gTmF0aXZl UGl4bWFwIGFuZCBiaW5kIHx0ZXh0dXJlX2lkfCB0bworICAgLy8gfHRhcmdldHwgZm9sbG93aW5n IGJ5IGJpbmRpbmcgdGhlIGltYWdlIHRvIHx0YXJnZXR8LgorQEAgLTQxLDIyICs0NCwxNSBAQCBj bGFzcyBHTF9FWFBPUlQgR0xJbWFnZU5hdGl2ZVBpeG1hcCA6IHB1YmxpYyBHTEltYWdlIHsKKyAg ICAgICBHTGVudW0gdGFyZ2V0LAorICAgICAgIEdMdWludCB0ZXh0dXJlX2lkKTsKKyAKKy0gIC8v IEdldCB0aGUgR0wgaW50ZXJuYWwgZm9ybWF0IG9mIHRoZSBpbWFnZS4KKy0gIC8vIEl0IGlzIGFs aWduZWQgd2l0aCBnbFRleEltYWdlezJ8M31EJ3MgcGFyYW1ldGVyIHxpbnRlcm5hbGZvcm1hdHwu CistICB1bnNpZ25lZCBHZXRJbnRlcm5hbEZvcm1hdCgpOworLQorICAgLy8gT3ZlcnJpZGRlbiBm cm9tIEdMSW1hZ2U6CisgICBnZng6OlNpemUgR2V0U2l6ZSgpIG92ZXJyaWRlOworIAorLSBwcm90 ZWN0ZWQ6CistICB+R0xJbWFnZU5hdGl2ZVBpeG1hcCgpIG92ZXJyaWRlOworLQorICBwcml2YXRl OgorICAgZXhwbGljaXQgR0xJbWFnZU5hdGl2ZVBpeG1hcChjb25zdCBnZng6OlNpemUmIHNpemUp OworKyAgfkdMSW1hZ2VOYXRpdmVQaXhtYXAoKSBvdmVycmlkZTsKKyAKKy0gIC8vIENyZWF0ZSBh biBFR0xJbWFnZSBmcm9tIGEgZ2l2ZW4gTmF0aXZlUGl4bWFwIGFuZCBiaW5kIHx0ZXh0dXJlX2lk fCB0bworLSAgLy8gfHRhcmdldHwgZm9sbG93ZWQgYnkgYmluZGluZyB0aGUgaW1hZ2UgdG8gfHRh cmdldHwuIFRoaXMgRUdMSW1hZ2UgY2FuIGJlCistICAvLyBjb252ZXJ0ZWQgdG8gYSBHTCB0ZXh0 dXJlLgorKyAgLy8gQ3JlYXRlIGEgTmF0aXZlUGl4bWFwR0xCaW5kaW5nIGZyb20gYSBnaXZlbiBO YXRpdmVQaXhtYXAuIFJldHVybnMgdHJ1ZSBpZmYKKysgIC8vIHRoZSBiaW5kaW5nIHdhcyBzdWNj ZXNzZnVsbHkgY3JlYXRlZC4KKyAgIGJvb2wgSW5pdGlhbGl6ZUZyb21OYXRpdmVQaXhtYXAoZ2Z4 OjpCdWZmZXJGb3JtYXQgZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBnZng6OkJ1ZmZlclBsYW5lIHBsYW5lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzY29wZWRfcmVmcHRyPGdmeDo6TmF0aXZlUGl4bWFwPiBwaXhtYXAsCitAQCAtNjQsMTAg KzYwLDEwIEBAIGNsYXNzIEdMX0VYUE9SVCBHTEltYWdlTmF0aXZlUGl4bWFwIDogcHVibGljIEdM SW1hZ2UgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGVudW0gdGFyZ2V0 LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTHVpbnQgdGV4dHVyZV9pZCk7 CisgCistICBzdGQ6OnVuaXF1ZV9wdHI8TmF0aXZlUGl4bWFwRUdMQmluZGluZ0hlbHBlcj4gYmlu ZGluZ19oZWxwZXJfOworKyAgc3RkOjp1bmlxdWVfcHRyPHVpOjpOYXRpdmVQaXhtYXBHTEJpbmRp bmc+IHBpeG1hcF9nbF9iaW5kaW5nXzsKKyAgIGNvbnN0IGdmeDo6U2l6ZSBzaXplXzsKKyB9Owor IAorLX0gIC8vIG5hbWVzcGFjZSBnbAorK30gIC8vIG5hbWVzcGFjZSBncHUKKyAKKy0jZW5kaWYg IC8vIFVJX0dMX0dMX0lNQUdFX05BVElWRV9QSVhNQVBfSF8KKysjZW5kaWYgIC8vIEdQVV9DT01N QU5EX0JVRkZFUl9TRVJWSUNFX1NIQVJFRF9JTUFHRV9HTF9JTUFHRV9OQVRJVkVfUElYTUFQX0hf CitkaWZmIC0tZ2l0IGEvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL2ds X296b25lX2ltYWdlX3JlcHJlc2VudGF0aW9uLmggYi9ncHUvY29tbWFuZF9idWZmZXIvc2Vydmlj ZS9zaGFyZWRfaW1hZ2UvZ2xfb3pvbmVfaW1hZ2VfcmVwcmVzZW50YXRpb24uaAoraW5kZXggMzE3 MjM4OTQwODhlMS4uYWRlMzM3YmRlOTk2NiAxMDA2NDQKKy0tLSBhL2dwdS9jb21tYW5kX2J1ZmZl ci9zZXJ2aWNlL3NoYXJlZF9pbWFnZS9nbF9vem9uZV9pbWFnZV9yZXByZXNlbnRhdGlvbi5oCisr KysgYi9ncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9zaGFyZWRfaW1hZ2UvZ2xfb3pvbmVfaW1h Z2VfcmVwcmVzZW50YXRpb24uaAorQEAgLTE0LDcgKzE0LDYgQEAKKyAjaW5jbHVkZSAiZ3B1L2Nv bW1hbmRfYnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL3NoYXJlZF9pbWFnZV9yZXByZXNlbnRh dGlvbi5oIgorICNpbmNsdWRlICJncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS90ZXh0dXJlX21h bmFnZXIuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L25hdGl2ZV9waXhtYXAuaCIKKy0jaW5jbHVkZSAi dWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorICNpbmNsdWRlICJ1aS9vem9uZS9wdWJs aWMvbmF0aXZlX3BpeG1hcF9nbF9iaW5kaW5nLmgiCisgCisgbmFtZXNwYWNlIGdwdSB7CitkaWZm IC0tZ2l0IGEvZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL296b25lX2lt YWdlX2JhY2tpbmcuY2MgYi9ncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9zaGFyZWRfaW1hZ2Uv b3pvbmVfaW1hZ2VfYmFja2luZy5jYworaW5kZXggOGQ0YTdkOTMwNmViMS4uN2E2NTJhZTQyNWMw ZSAxMDA2NDQKKy0tLSBhL2dwdS9jb21tYW5kX2J1ZmZlci9zZXJ2aWNlL3NoYXJlZF9pbWFnZS9v em9uZV9pbWFnZV9iYWNraW5nLmNjCisrKysgYi9ncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9z aGFyZWRfaW1hZ2Uvb3pvbmVfaW1hZ2VfYmFja2luZy5jYworQEAgLTM2LDcgKzM2LDYgQEAKKyAj aW5jbHVkZSAidWkvZ2Z4L25hdGl2ZV9waXhtYXAuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L25hdGl2 ZV93aWRnZXRfdHlwZXMuaCIKKyAjaW5jbHVkZSAidWkvZ2wvYnVpbGRmbGFncy5oIgorLSNpbmNs dWRlICJ1aS9nbC9nbF9pbWFnZV9uYXRpdmVfcGl4bWFwLmgiCisgCisgI2lmIEJVSUxERkxBRyhF TkFCTEVfVlVMS0FOKQorICNpbmNsdWRlICJncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9zaGFy ZWRfaW1hZ2Uvc2tpYV92a19vem9uZV9pbWFnZV9yZXByZXNlbnRhdGlvbi5oIgorZGlmZiAtLWdp dCBhL21lZGlhL2dwdS92NGwyL0JVSUxELmduIGIvbWVkaWEvZ3B1L3Y0bDIvQlVJTEQuZ24KK2lu ZGV4IDEyZTZiNjZjZjdiODkuLmZmN2I1YTFhNTBhMzggMTAwNjQ0CistLS0gYS9tZWRpYS9ncHUv djRsMi9CVUlMRC5nbgorKysrIGIvbWVkaWEvZ3B1L3Y0bDIvQlVJTEQuZ24KK0BAIC05OCw2ICs5 OCw3IEBAIHNvdXJjZV9zZXQoInY0bDIiKSB7CisgICAgICI6bGlidjRsMl9zdHVicyIsCisgICAg ICI6djRsMl9zdGF0dXMiLAorICAgICAiLy9iYXNlIiwKKysgICAgIi8vZ3B1L2NvbW1hbmRfYnVm ZmVyL3NlcnZpY2U6Z2xlczIiLAorICAgICAiLy9ncHUvaXBjL2NvbW1vbiIsCisgICAgICIvL2dw dS9pcGMvc2VydmljZSIsCisgICAgICIvL21lZGlhIiwKK2RpZmYgLS1naXQgYS9tZWRpYS9ncHUv djRsMi9nZW5lcmljX3Y0bDJfZGV2aWNlLmNjIGIvbWVkaWEvZ3B1L3Y0bDIvZ2VuZXJpY192NGwy X2RldmljZS5jYworaW5kZXggYmRiYjI1NmVkNTc4Yy4uMzM3ZWMwZTdiMzcyYiAxMDA2NDQKKy0t LSBhL21lZGlhL2dwdS92NGwyL2dlbmVyaWNfdjRsMl9kZXZpY2UuY2MKKysrKyBiL21lZGlhL2dw dS92NGwyL2dlbmVyaWNfdjRsMl9kZXZpY2UuY2MKK0BAIC0yMyw2ICsyMyw3IEBACisgI2luY2x1 ZGUgImJhc2Uvc3RyaW5ncy9zdHJpbmdwcmludGYuaCIKKyAjaW5jbHVkZSAiYmFzZS90cmFjZV9l dmVudC90cmFjZV9ldmVudC5oIgorICNpbmNsdWRlICJidWlsZC9idWlsZF9jb25maWcuaCIKKysj aW5jbHVkZSAiZ3B1L2NvbW1hbmRfYnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL2dsX2ltYWdl X25hdGl2ZV9waXhtYXAuaCIKKyAjaW5jbHVkZSAibWVkaWEvYmFzZS92aWRlb190eXBlcy5oIgor ICNpbmNsdWRlICJtZWRpYS9ncHUvYnVpbGRmbGFncy5oIgorICNpbmNsdWRlICJtZWRpYS9ncHUv Y2hyb21lb3MvZm91cmNjLmgiCitAQCAtMzIsNyArMzMsNiBAQAorICNpbmNsdWRlICJ1aS9nZngv bmF0aXZlX3BpeG1hcF9oYW5kbGUuaCIKKyAjaW5jbHVkZSAidWkvZ2wvZWdsX3V0aWwuaCIKKyAj aW5jbHVkZSAidWkvZ2wvZ2xfYmluZGluZ3MuaCIKKy0jaW5jbHVkZSAidWkvZ2wvZ2xfaW1hZ2Vf bmF0aXZlX3BpeG1hcC5oIgorICNpbmNsdWRlICJ1aS9vem9uZS9wdWJsaWMvb3pvbmVfcGxhdGZv cm0uaCIKKyAjaW5jbHVkZSAidWkvb3pvbmUvcHVibGljL3N1cmZhY2VfZmFjdG9yeV9vem9uZS5o IgorIAorQEAgLTI4MSw3ICsyODEsNyBAQCBFR0xJbWFnZUtIUiBHZW5lcmljVjRMMkRldmljZTo6 Q3JlYXRlRUdMSW1hZ2UoCisgICByZXR1cm4gZWdsX2ltYWdlOworIH0KKyAKKy1zY29wZWRfcmVm cHRyPGdsOjpHTEltYWdlTmF0aXZlUGl4bWFwPiBHZW5lcmljVjRMMkRldmljZTo6Q3JlYXRlR0xJ bWFnZSgKKytzY29wZWRfcmVmcHRyPGdwdTo6R0xJbWFnZU5hdGl2ZVBpeG1hcD4gR2VuZXJpY1Y0 TDJEZXZpY2U6OkNyZWF0ZUdMSW1hZ2UoCisgICAgIGNvbnN0IGdmeDo6U2l6ZSYgc2l6ZSwKKyAg ICAgY29uc3QgRm91cmNjIGZvdXJjYywKKyAgICAgZ2Z4OjpOYXRpdmVQaXhtYXBIYW5kbGUgaGFu ZGxlLAorQEAgLTMxNyw3ICszMTcsNyBAQCBzY29wZWRfcmVmcHRyPGdsOjpHTEltYWdlTmF0aXZl UGl4bWFwPiBHZW5lcmljVjRMMkRldmljZTo6Q3JlYXRlR0xJbWFnZSgKKyAgIERDSEVDSyhwaXht YXApOworIAorICAgLy8gVE9ETyhiLzIyMDMzNjQ2Myk6IHBsdW1iIHRoZSByaWdodCBjb2xvciBz cGFjZS4KKy0gIGF1dG8gaW1hZ2UgPSBnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcDo6Q3JlYXRlKAor KyAgYXV0byBpbWFnZSA9IGdwdTo6R0xJbWFnZU5hdGl2ZVBpeG1hcDo6Q3JlYXRlKAorICAgICAg IHNpemUsIGJ1ZmZlcl9mb3JtYXQsIHN0ZDo6bW92ZShwaXhtYXApLCB0YXJnZXQsIHRleHR1cmVf aWQpOworICAgRENIRUNLKGltYWdlKTsKKyAgIHJldHVybiBpbWFnZTsKK2RpZmYgLS1naXQgYS9t ZWRpYS9ncHUvdjRsMi9nZW5lcmljX3Y0bDJfZGV2aWNlLmggYi9tZWRpYS9ncHUvdjRsMi9nZW5l cmljX3Y0bDJfZGV2aWNlLmgKK2luZGV4IGJiOWNlMzkxYzE1YmQuLmZkODRhZWUyNzA5N2UgMTAw NjQ0CistLS0gYS9tZWRpYS9ncHUvdjRsMi9nZW5lcmljX3Y0bDJfZGV2aWNlLmgKKysrKyBiL21l ZGlhL2dwdS92NGwyL2dlbmVyaWNfdjRsMl9kZXZpY2UuaAorQEAgLTU1LDcgKzU1LDcgQEAgY2xh c3MgR2VuZXJpY1Y0TDJEZXZpY2UgOiBwdWJsaWMgVjRMMkRldmljZSB7CisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBGb3VyY2MgZm91cmNjLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ2Z4OjpOYXRpdmVQaXhtYXBIYW5kbGUgaGFuZGxlKSBjb25zdCBvdmVycmlk ZTsKKyAKKy0gIHNjb3BlZF9yZWZwdHI8Z2w6OkdMSW1hZ2VOYXRpdmVQaXhtYXA+IENyZWF0ZUdM SW1hZ2UoCisrICBzY29wZWRfcmVmcHRyPGdwdTo6R0xJbWFnZU5hdGl2ZVBpeG1hcD4gQ3JlYXRl R0xJbWFnZSgKKyAgICAgICBjb25zdCBnZng6OlNpemUmIHNpemUsCisgICAgICAgY29uc3QgRm91 cmNjIGZvdXJjYywKKyAgICAgICBnZng6Ok5hdGl2ZVBpeG1hcEhhbmRsZSBoYW5kbGUsCitkaWZm IC0tZ2l0IGEvbWVkaWEvZ3B1L3Y0bDIvdjRsMl9kZXZpY2UuaCBiL21lZGlhL2dwdS92NGwyL3Y0 bDJfZGV2aWNlLmgKK2luZGV4IGJkYzM5YmY2NWFlMzguLmVlNzRjYmNkMzk5NTcgMTAwNjQ0Cist LS0gYS9tZWRpYS9ncHUvdjRsMi92NGwyX2RldmljZS5oCisrKysgYi9tZWRpYS9ncHUvdjRsMi92 NGwyX2RldmljZS5oCitAQCAtMjgsNiArMjgsNyBAQAorICNpbmNsdWRlICJiYXNlL2ZpbGVzL3Nj b3BlZF9maWxlLmgiCisgI2luY2x1ZGUgImJhc2UvbWVtb3J5L3JlZl9jb3VudGVkLmgiCisgI2lu Y2x1ZGUgImJhc2Uvc2VxdWVuY2VfY2hlY2tlci5oIgorKyNpbmNsdWRlICJncHUvY29tbWFuZF9i dWZmZXIvc2VydmljZS9zaGFyZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorICNp bmNsdWRlICJtZWRpYS9iYXNlL3ZpZGVvX2NvZGVjcy5oIgorICNpbmNsdWRlICJtZWRpYS9iYXNl L3ZpZGVvX2RlY29kZXJfY29uZmlnLmgiCisgI2luY2x1ZGUgIm1lZGlhL2Jhc2UvdmlkZW9fZnJh bWUuaCIKK0BAIC00Miw3ICs0Myw2IEBACisgI2luY2x1ZGUgInVpL2dmeC9nZW9tZXRyeS9zaXpl LmgiCisgI2luY2x1ZGUgInVpL2dmeC9uYXRpdmVfcGl4bWFwX2hhbmRsZS5oIgorICNpbmNsdWRl ICJ1aS9nbC9nbF9iaW5kaW5ncy5oIgorLSNpbmNsdWRlICJ1aS9nbC9nbF9pbWFnZV9uYXRpdmVf cGl4bWFwLmgiCisgCisgLy8gVE9ETyhtb2phaHN1KTogcmVtb3ZlIHRoaXMgb25jZSBWNEwyIGhl YWRlcnMgYXJlIHVwZGF0ZWQuCisgI2lmbmRlZiBWNEwyX1BJWF9GTVRfSlBFR19SQVcKK0BAIC03 NzcsNyArNzc3LDcgQEAgY2xhc3MgTUVESUFfR1BVX0VYUE9SVCBWNEwyRGV2aWNlCisgCisgICAv LyBDcmVhdGUgYSBHTEltYWdlTmF0aXZlUGl4bWFwIGZyb20gcHJvdmlkZWQgfGhhbmRsZXwsIHRh a2luZyBmdWxsIG93bmVyc2hpcAorICAgLy8gb2YgaXQuCistICB2aXJ0dWFsIHNjb3BlZF9yZWZw dHI8Z2w6OkdMSW1hZ2VOYXRpdmVQaXhtYXA+IENyZWF0ZUdMSW1hZ2UoCisrICB2aXJ0dWFsIHNj b3BlZF9yZWZwdHI8Z3B1OjpHTEltYWdlTmF0aXZlUGl4bWFwPiBDcmVhdGVHTEltYWdlKAorICAg ICAgIGNvbnN0IGdmeDo6U2l6ZSYgc2l6ZSwKKyAgICAgICBjb25zdCBGb3VyY2MgZm91cmNjLAor ICAgICAgIGdmeDo6TmF0aXZlUGl4bWFwSGFuZGxlIGhhbmRsZSwKK2RpZmYgLS1naXQgYS9tZWRp YS9ncHUvdjRsMi92NGwyX3NsaWNlX3ZpZGVvX2RlY29kZV9hY2NlbGVyYXRvci5jYyBiL21lZGlh L2dwdS92NGwyL3Y0bDJfc2xpY2VfdmlkZW9fZGVjb2RlX2FjY2VsZXJhdG9yLmNjCitpbmRleCBh NTFhY2VkYzEwNWI3Li43OGNjNjA1ZTk4NmU2IDEwMDY0NAorLS0tIGEvbWVkaWEvZ3B1L3Y0bDIv djRsMl9zbGljZV92aWRlb19kZWNvZGVfYWNjZWxlcmF0b3IuY2MKKysrKyBiL21lZGlhL2dwdS92 NGwyL3Y0bDJfc2xpY2VfdmlkZW9fZGVjb2RlX2FjY2VsZXJhdG9yLmNjCitAQCAtMzAsNiArMzAs NyBAQAorICNpbmNsdWRlICJiYXNlL3RpbWUvdGltZS5oIgorICNpbmNsdWRlICJiYXNlL3RyYWNl X2V2ZW50L21lbW9yeV9kdW1wX21hbmFnZXIuaCIKKyAjaW5jbHVkZSAiYmFzZS90cmFjZV9ldmVu dC90cmFjZV9ldmVudC5oIgorKyNpbmNsdWRlICJncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9z aGFyZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorICNpbmNsdWRlICJtZWRpYS9i YXNlL2JpbmRfdG9fY3VycmVudF9sb29wLmgiCisgI2luY2x1ZGUgIm1lZGlhL2Jhc2UvbWVkaWFf c3dpdGNoZXMuaCIKKyAjaW5jbHVkZSAibWVkaWEvYmFzZS9zY29wZWRmZF9oZWxwZXIuaCIKK0BA IC00OSw3ICs1MCw2IEBACisgI2luY2x1ZGUgInVpL2dsL2dsX2JpbmRpbmdzLmgiCisgI2luY2x1 ZGUgInVpL2dsL2dsX2NvbnRleHQuaCIKKyAjaW5jbHVkZSAidWkvZ2wvZ2xfZGlzcGxheS5oIgor LSNpbmNsdWRlICJ1aS9nbC9nbF9pbWFnZV9uYXRpdmVfcGl4bWFwLmgiCisgI2luY2x1ZGUgInVp L2dsL2dsX3N1cmZhY2VfZWdsLmgiCisgI2luY2x1ZGUgInVpL2dsL3Njb3BlZF9iaW5kZXJzLmgi CisgCitAQCAtMTQ0NCw3ICsxNDQ0LDcgQEAgdm9pZCBWNEwyU2xpY2VWaWRlb0RlY29kZUFjY2Vs ZXJhdG9yOjpDcmVhdGVHTEltYWdlRm9yKAorICAgICByZXR1cm47CisgICB9CisgCistICBzY29w ZWRfcmVmcHRyPGdsOjpHTEltYWdlTmF0aXZlUGl4bWFwPiBnbF9pbWFnZSA9CisrICBzY29wZWRf cmVmcHRyPGdwdTo6R0xJbWFnZU5hdGl2ZVBpeG1hcD4gZ2xfaW1hZ2UgPQorICAgICAgIGdsX2Rl dmljZS0+Q3JlYXRlR0xJbWFnZSh2aXNpYmxlX3NpemUsIGZvdXJjYywgc3RkOjptb3ZlKGhhbmRs ZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsX2RldmljZS0+R2V0VGV4dHVy ZVRhcmdldCgpLCB0ZXh0dXJlX2lkKTsKKyAgIGlmICghZ2xfaW1hZ2UpIHsKK2RpZmYgLS1naXQg YS9tZWRpYS9ncHUvdmFhcGkvQlVJTEQuZ24gYi9tZWRpYS9ncHUvdmFhcGkvQlVJTEQuZ24KK2lu ZGV4IDFlY2Y4ODU0ZDAyZTcuLjc2ODczODQ1NTM4MDYgMTAwNjQ0CistLS0gYS9tZWRpYS9ncHUv dmFhcGkvQlVJTEQuZ24KKysrKyBiL21lZGlhL2dwdS92YWFwaS9CVUlMRC5nbgorQEAgLTk2LDYg Kzk2LDcgQEAgc291cmNlX3NldCgidmFhcGkiKSB7CisgICAgICI6dmFhcGlfc3RhdHVzIiwKKyAg ICAgIi8vYmFzZSIsCisgICAgICIvL2J1aWxkOmNocm9tZW9zX2J1aWxkZmxhZ3MiLAorKyAgICAi Ly9ncHUvY29tbWFuZF9idWZmZXIvc2VydmljZTpnbGVzMiIsCisgICAgICIvL2dwdS9jb25maWci LAorICAgICAiLy9ncHUvaXBjL2NvbW1vbiIsCisgICAgICIvL2dwdS9pcGMvc2VydmljZSIsCitk aWZmIC0tZ2l0IGEvbWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1cmVfbmF0aXZlX3BpeG1hcF9v em9uZS5jYyBiL21lZGlhL2dwdS92YWFwaS92YWFwaV9waWN0dXJlX25hdGl2ZV9waXhtYXBfb3pv bmUuY2MKK2luZGV4IDA2NjE3ZmZlYzhlNWEuLjYyNmRkYTYzMTIyMTMgMTAwNjQ0CistLS0gYS9t ZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX296b25lLmNjCisrKysg Yi9tZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX296b25lLmNjCitA QCAtNCw2ICs0LDcgQEAKKyAKKyAjaW5jbHVkZSAibWVkaWEvZ3B1L3ZhYXBpL3ZhYXBpX3BpY3R1 cmVfbmF0aXZlX3BpeG1hcF9vem9uZS5oIgorIAorKyNpbmNsdWRlICJncHUvY29tbWFuZF9idWZm ZXIvc2VydmljZS9zaGFyZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorICNpbmNs dWRlICJtZWRpYS9iYXNlL2Zvcm1hdF91dGlscy5oIgorICNpbmNsdWRlICJtZWRpYS9ncHUvYnVm ZmVyX3ZhbGlkYXRpb24uaCIKKyAjaW5jbHVkZSAibWVkaWEvZ3B1L2Nocm9tZW9zL3BsYXRmb3Jt X3ZpZGVvX2ZyYW1lX3V0aWxzLmgiCitAQCAtMTUsNyArMTYsNiBAQAorICNpbmNsdWRlICJ1aS9n ZngvbGludXgvbmF0aXZlX3BpeG1hcF9kbWFidWYuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L25hdGl2 ZV9waXhtYXAuaCIKKyAjaW5jbHVkZSAidWkvZ2wvZ2xfYmluZGluZ3MuaCIKKy0jaW5jbHVkZSAi dWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3BpeG1hcC5oIgorICNpbmNsdWRlICJ1aS9nbC9zY29wZWRf YmluZGVycy5oIgorICNpbmNsdWRlICJ1aS9vem9uZS9wdWJsaWMvb3pvbmVfcGxhdGZvcm0uaCIK KyAjaW5jbHVkZSAidWkvb3pvbmUvcHVibGljL3N1cmZhY2VfZmFjdG9yeV9vem9uZS5oIgorQEAg LTg3LDcgKzg3LDcgQEAgVmFhcGlTdGF0dXMgVmFhcGlQaWN0dXJlTmF0aXZlUGl4bWFwT3pvbmU6 OkluaXRpYWxpemUoCisgICBjb25zdCBnZng6OkJ1ZmZlckZvcm1hdCBmb3JtYXQgPSBwaXhtYXAt PkdldEJ1ZmZlckZvcm1hdCgpOworIAorICAgLy8gVE9ETyhiLzIyMDMzNjQ2Myk6IHBsdW1iIHRo ZSByaWdodCBjb2xvciBzcGFjZS4KKy0gIGF1dG8gaW1hZ2UgPSBnbDo6R0xJbWFnZU5hdGl2ZVBp eG1hcDo6Q3JlYXRlKAorKyAgYXV0byBpbWFnZSA9IGdwdTo6R0xJbWFnZU5hdGl2ZVBpeG1hcDo6 Q3JlYXRlKAorICAgICAgIHZpc2libGVfc2l6ZV8sIGZvcm1hdCwgc3RkOjptb3ZlKHBpeG1hcCks CisgICAgICAgYmFzZTo6c3RyaWN0X2Nhc3Q8R0xlbnVtPih0ZXh0dXJlX3RhcmdldF8pLAorICAg ICAgIGJhc2U6OnN0cmljdF9jYXN0PEdMdWludD4odGV4dHVyZV9pZF8pKTsKK2RpZmYgLS1naXQg YS9tZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX296b25lLmggYi9t ZWRpYS9ncHUvdmFhcGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX296b25lLmgKK2luZGV4 IDEwMTcyOGYzNmMxZTEuLmVhY2VkOWE4Y2NhZGYgMTAwNjQ0CistLS0gYS9tZWRpYS9ncHUvdmFh cGkvdmFhcGlfcGljdHVyZV9uYXRpdmVfcGl4bWFwX296b25lLmgKKysrKyBiL21lZGlhL2dwdS92 YWFwaS92YWFwaV9waWN0dXJlX25hdGl2ZV9waXhtYXBfb3pvbmUuaAorQEAgLTE3LDcgKzE3LDcg QEAgbmFtZXNwYWNlIGdmeCB7CisgY2xhc3MgTmF0aXZlUGl4bWFwOworIH0gIC8vIG5hbWVzcGFj ZSBnZngKKyAKKy1uYW1lc3BhY2UgZ2wgeworK25hbWVzcGFjZSBncHUgeworIGNsYXNzIEdMSW1h Z2VOYXRpdmVQaXhtYXA7CisgfQorIAorQEAgLTU1LDcgKzU1LDcgQEAgY2xhc3MgVmFhcGlQaWN0 dXJlTmF0aXZlUGl4bWFwT3pvbmUgOiBwdWJsaWMgVmFhcGlQaWN0dXJlTmF0aXZlUGl4bWFwIHsK KyAgIFZhYXBpU3RhdHVzIEluaXRpYWxpemUoc2NvcGVkX3JlZnB0cjxnZng6Ok5hdGl2ZVBpeG1h cD4gcGl4bWFwKTsKKyAKKyAgIC8vIEdMSW1hZ2UgYm91bmQgdG8gdGhlIEdMIHRleHR1cmVzIHVz ZWQgYnkgdGhlIFZEQSBjbGllbnQuCistICBzY29wZWRfcmVmcHRyPGdsOjpHTEltYWdlTmF0aXZl UGl4bWFwPiBnbF9pbWFnZV87CisrICBzY29wZWRfcmVmcHRyPGdwdTo6R0xJbWFnZU5hdGl2ZVBp eG1hcD4gZ2xfaW1hZ2VfOworIH07CisgCisgfSAgLy8gbmFtZXNwYWNlIG1lZGlhCitkaWZmIC0t Z2l0IGEvdWkvZ2Z4L2xpbnV4L25hdGl2ZV9waXhtYXBfZG1hYnVmLmggYi91aS9nZngvbGludXgv bmF0aXZlX3BpeG1hcF9kbWFidWYuaAoraW5kZXggN2YxMzQxMTA0MTdlYS4uZjEyZDRmNWVhYzg5 ZCAxMDA2NDQKKy0tLSBhL3VpL2dmeC9saW51eC9uYXRpdmVfcGl4bWFwX2RtYWJ1Zi5oCisrKysg Yi91aS9nZngvbGludXgvbmF0aXZlX3BpeG1hcF9kbWFidWYuaAorQEAgLTE3LDcgKzE3LDcgQEAK KyBuYW1lc3BhY2UgZ2Z4IHsKKyAKKyAvLyBUaGlzIGNsYXNzIGNvbnZlcnRzIGEgZ2Z4OjpOYXRp dmVQaXhtYXBIYW5kbGUgdG8gYSBnZng6Ok5hdGl2ZVBpeG1hcC4KKy0vLyBJdCBpcyB1c2VmdWwg YmVjYXVzZSBnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcDo6SW5pdGlhbGl6ZSBvbmx5IHRha2VzCisr Ly8gSXQgaXMgdXNlZnVsIGJlY2F1c2UgZ3B1OjpHTEltYWdlTmF0aXZlUGl4bWFwOjpJbml0aWFs aXplIG9ubHkgdGFrZXMKKyAvLyBhIGdmeDo6TmF0aXZlUGl4bWFwIGFzIGlucHV0LgorIGNsYXNz IEdGWF9FWFBPUlQgTmF0aXZlUGl4bWFwRG1hQnVmIDogcHVibGljIGdmeDo6TmF0aXZlUGl4bWFw IHsKKyAgcHVibGljOgorZGlmZiAtLWdpdCBhL3VpL2dsL0JVSUxELmduIGIvdWkvZ2wvQlVJTEQu Z24KK2luZGV4IGNjMjNjMGE4YjRjNjQuLjJhMDc4NTljNGRhZDggMTAwNjQ0CistLS0gYS91aS9n bC9CVUlMRC5nbgorKysrIGIvdWkvZ2wvQlVJTEQuZ24KK0BAIC0yMjYsOCArMjI2LDYgQEAgY29t cG9uZW50KCJnbCIpIHsKKyAKKyAgICAgaWYgKGlzX2xpbnV4IHx8IGlzX2Nocm9tZW9zIHx8IHVz ZV9vem9uZSkgeworICAgICAgIHNvdXJjZXMgKz0gWworLSAgICAgICAgImdsX2ltYWdlX25hdGl2 ZV9waXhtYXAuY2MiLAorLSAgICAgICAgImdsX2ltYWdlX25hdGl2ZV9waXhtYXAuaCIsCisgICAg ICAgICAibmF0aXZlX3BpeG1hcF9lZ2xfYmluZGluZ19oZWxwZXIuY2MiLAorICAgICAgICAgIm5h dGl2ZV9waXhtYXBfZWdsX2JpbmRpbmdfaGVscGVyLmgiLAorICAgICAgIF0KK2RpZmYgLS1naXQg YS91aS9vem9uZS9jb21tb24vbmF0aXZlX3BpeG1hcF9lZ2xfYmluZGluZy5jYyBiL3VpL296b25l L2NvbW1vbi9uYXRpdmVfcGl4bWFwX2VnbF9iaW5kaW5nLmNjCitpbmRleCA4ZGNlMDFhNDEyODFl Li4yZTE4ZTczZWI2Y2JiIDEwMDY0NAorLS0tIGEvdWkvb3pvbmUvY29tbW9uL25hdGl2ZV9waXht YXBfZWdsX2JpbmRpbmcuY2MKKysrKyBiL3VpL296b25lL2NvbW1vbi9uYXRpdmVfcGl4bWFwX2Vn bF9iaW5kaW5nLmNjCitAQCAtOCw3ICs4LDcgQEAKKyAjaW5jbHVkZSAiYmFzZS9tZW1vcnkvc2Nv cGVkX3JlZnB0ci5oIgorICNpbmNsdWRlICJiYXNlL25vdHJlYWNoZWQuaCIKKyAjaW5jbHVkZSAi dWkvZ2wvZ2xfYmluZGluZ3MuaCIKKy0jaW5jbHVkZSAidWkvZ2wvZ2xfaW1hZ2VfbmF0aXZlX3Bp eG1hcC5oIgorKyNpbmNsdWRlICJ1aS9nbC9uYXRpdmVfcGl4bWFwX2VnbF9iaW5kaW5nX2hlbHBl ci5oIgorIAorIG5hbWVzcGFjZSB1aSB7CisgCitAQCAtNTAsOSArNTAsOSBAQCB1bnNpZ25lZCBC dWZmZXJGb3JtYXRUb0dMRGF0YVR5cGUoZ2Z4OjpCdWZmZXJGb3JtYXQgZm9ybWF0KSB7CisgfSAg Ly8gbmFtZXNwYWNlCisgCisgTmF0aXZlUGl4bWFwRUdMQmluZGluZzo6TmF0aXZlUGl4bWFwRUdM QmluZGluZygKKy0gICAgc2NvcGVkX3JlZnB0cjxnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcD4gZ2xf aW1hZ2UsCisrICAgIHN0ZDo6dW5pcXVlX3B0cjxnbDo6TmF0aXZlUGl4bWFwRUdMQmluZGluZ0hl bHBlcj4gYmluZGluZ19oZWxwZXIsCisgICAgIGdmeDo6QnVmZmVyRm9ybWF0IGZvcm1hdCkKKy0g ICAgOiBnbF9pbWFnZV8oc3RkOjptb3ZlKGdsX2ltYWdlKSksIGZvcm1hdF8oZm9ybWF0KSB7fQor KyAgICA6IGJpbmRpbmdfaGVscGVyXyhzdGQ6Om1vdmUoYmluZGluZ19oZWxwZXIpKSwgZm9ybWF0 Xyhmb3JtYXQpIHt9CisgTmF0aXZlUGl4bWFwRUdMQmluZGluZzo6fk5hdGl2ZVBpeG1hcEVHTEJp bmRpbmcoKSA9IGRlZmF1bHQ7CisgCisgLy8gc3RhdGljCitAQCAtNjQsMjIgKzY0LDIyIEBAIHN0 ZDo6dW5pcXVlX3B0cjxOYXRpdmVQaXhtYXBHTEJpbmRpbmc+IE5hdGl2ZVBpeG1hcEVHTEJpbmRp bmc6OkNyZWF0ZSgKKyAgICAgY29uc3QgZ2Z4OjpDb2xvclNwYWNlJiBjb2xvcl9zcGFjZSwKKyAg ICAgR0xlbnVtIHRhcmdldCwKKyAgICAgR0x1aW50IHRleHR1cmVfaWQpIHsKKy0gIGF1dG8gZ2xf aW1hZ2UgPSBnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcDo6Q3JlYXRlRm9yUGxhbmUoCisrICBhdXRv IGJpbmRpbmdfaGVscGVyID0gZ2w6Ok5hdGl2ZVBpeG1hcEVHTEJpbmRpbmdIZWxwZXI6OkNyZWF0 ZUZvclBsYW5lKAorICAgICAgIHBsYW5lX3NpemUsIHBsYW5lX2Zvcm1hdCwgcGxhbmUsIHN0ZDo6 bW92ZShwaXhtYXApLCBjb2xvcl9zcGFjZSwgdGFyZ2V0LAorICAgICAgIHRleHR1cmVfaWQpOwor LSAgaWYgKCFnbF9pbWFnZSkgeworLSAgICBMT0coRVJST1IpIDw8ICJVbmFibGUgdG8gaW5pdGlh bGl6ZSBHTCBpbWFnZSBmcm9tIHBpeG1hcCI7CisrICBpZiAoIWJpbmRpbmdfaGVscGVyKSB7Cisr ICAgIExPRyhFUlJPUikgPDwgIlVuYWJsZSB0byBpbml0aWFsaXplIGJpbmRpbmcgZnJvbSBwaXht YXAiOworICAgICByZXR1cm4gbnVsbHB0cjsKKyAgIH0KKyAKKy0gIGF1dG8gYmluZGluZyA9IHN0 ZDo6bWFrZV91bmlxdWU8TmF0aXZlUGl4bWFwRUdMQmluZGluZz4oc3RkOjptb3ZlKGdsX2ltYWdl KSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcGxhbmVfZm9ybWF0KTsKKysgIGF1dG8gYmluZGluZyA9IHN0ZDo6bWFrZV91bmlxdWU8 TmF0aXZlUGl4bWFwRUdMQmluZGluZz4oCisrICAgICAgc3RkOjptb3ZlKGJpbmRpbmdfaGVscGVy KSwgcGxhbmVfZm9ybWF0KTsKKyAKKyAgIHJldHVybiBiaW5kaW5nOworIH0KKyAKKyBHTHVpbnQg TmF0aXZlUGl4bWFwRUdMQmluZGluZzo6R2V0SW50ZXJuYWxGb3JtYXQoKSB7CistICByZXR1cm4g Z2xfaW1hZ2VfLT5HZXRJbnRlcm5hbEZvcm1hdCgpOworKyAgcmV0dXJuIGJpbmRpbmdfaGVscGVy Xy0+R2V0SW50ZXJuYWxGb3JtYXQoKTsKKyB9CisgCisgR0xlbnVtIE5hdGl2ZVBpeG1hcEVHTEJp bmRpbmc6OkdldERhdGFUeXBlKCkgeworZGlmZiAtLWdpdCBhL3VpL296b25lL2NvbW1vbi9uYXRp dmVfcGl4bWFwX2VnbF9iaW5kaW5nLmggYi91aS9vem9uZS9jb21tb24vbmF0aXZlX3BpeG1hcF9l Z2xfYmluZGluZy5oCitpbmRleCA0NGQ2OGJlMzUyN2E0Li5jMDM4MmIxMDY4NDI2IDEwMDY0NAor LS0tIGEvdWkvb3pvbmUvY29tbW9uL25hdGl2ZV9waXhtYXBfZWdsX2JpbmRpbmcuaAorKysrIGIv dWkvb3pvbmUvY29tbW9uL25hdGl2ZV9waXhtYXBfZWdsX2JpbmRpbmcuaAorQEAgLTE1LDE2ICsx NSwxNyBAQCBjbGFzcyBDb2xvclNwYWNlOworIH0KKyAKKyBuYW1lc3BhY2UgZ2wgeworLWNsYXNz IEdMSW1hZ2VOYXRpdmVQaXhtYXA7CisrY2xhc3MgTmF0aXZlUGl4bWFwRUdMQmluZGluZ0hlbHBl cjsKKyB9CisgCisgbmFtZXNwYWNlIHVpIHsKKyAKKy0vLyBBIGJpbmRpbmcgbWFpbnRhaW5lZCBi ZXR3ZWVuIEdMSW1hZ2VOYXRpdmVQaXhtYXAgYW5kIEdMIFRleHR1cmVzIGluIE96b25lLgorKy8v IEEgYmluZGluZyBtYWludGFpbmVkIGJldHdlZW4gTmF0aXZlUGl4bWFwIGFuZCBHTCBUZXh0dXJl cyBpbiBPem9uZS4KKyBjbGFzcyBOYXRpdmVQaXhtYXBFR0xCaW5kaW5nIDogcHVibGljIE5hdGl2 ZVBpeG1hcEdMQmluZGluZyB7CisgIHB1YmxpYzoKKy0gIE5hdGl2ZVBpeG1hcEVHTEJpbmRpbmco c2NvcGVkX3JlZnB0cjxnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcD4gZ2xfaW1hZ2UsCistICAgICAg ICAgICAgICAgICAgICAgICAgIGdmeDo6QnVmZmVyRm9ybWF0IGZvcm1hdCk7CisrICBOYXRpdmVQ aXhtYXBFR0xCaW5kaW5nKAorKyAgICAgIHN0ZDo6dW5pcXVlX3B0cjxnbDo6TmF0aXZlUGl4bWFw RUdMQmluZGluZ0hlbHBlcj4gYmluZGluZ19oZWxwZXIsCisrICAgICAgZ2Z4OjpCdWZmZXJGb3Jt YXQgZm9ybWF0KTsKKyAgIH5OYXRpdmVQaXhtYXBFR0xCaW5kaW5nKCkgb3ZlcnJpZGU7CisgCisg ICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE5hdGl2ZVBpeG1hcEdMQmluZGluZz4gQ3JlYXRlKAor QEAgLTQxLDEwICs0Miw3IEBAIGNsYXNzIE5hdGl2ZVBpeG1hcEVHTEJpbmRpbmcgOiBwdWJsaWMg TmF0aXZlUGl4bWFwR0xCaW5kaW5nIHsKKyAgIEdMZW51bSBHZXREYXRhVHlwZSgpIG92ZXJyaWRl OworIAorICBwcml2YXRlOgorLSAgLy8gVE9ETyhoaXRhd2FsYSk6IE1lcmdlIEJpbmRUZXhJbWFn ZSwgSW5pdGlhbGl6ZSBmcm9tIEdMSW1hZ2UgYW5kIGl0cworLSAgLy8gc3ViY2xhc3MgTmF0aXZl UGl4bWFwIHRvIE5hdGl2ZVBpeG1hcEVHTEJpbmRpbmcgb25jZSB3ZSBzdG9wIHVzaW5nIHRoZW0K Ky0gIC8vIGVsc2V3aGVyZSBlZy4gVkRBIGRlY29kZXJzIGluIG1lZGlhLgorLSAgc2NvcGVkX3Jl ZnB0cjxnbDo6R0xJbWFnZU5hdGl2ZVBpeG1hcD4gZ2xfaW1hZ2VfOworKyAgc3RkOjp1bmlxdWVf cHRyPGdsOjpOYXRpdmVQaXhtYXBFR0xCaW5kaW5nSGVscGVyPiBiaW5kaW5nX2hlbHBlcl87Cisg CisgICBnZng6OkJ1ZmZlckZvcm1hdCBmb3JtYXRfOworIH07CitkaWZmIC0tZ2l0IGEvdWkvb3pv bmUvZ2wvQlVJTEQuZ24gYi91aS9vem9uZS9nbC9CVUlMRC5nbgoraW5kZXggNGZjOTBmMDQ3MTM2 Mi4uNjA2NGViNmY4M2E4YyAxMDA2NDQKKy0tLSBhL3VpL296b25lL2dsL0JVSUxELmduCisrKysg Yi91aS9vem9uZS9nbC9CVUlMRC5nbgorQEAgLTksNiArOSwxNCBAQCB0ZXN0KCJvem9uZV9nbF91 bml0dGVzdHMiKSB7CisgCisgICBkZXBzID0gWworICAgICAiLy9iYXNlL3Rlc3Q6dGVzdF9zdXBw b3J0IiwKKysKKysgICAgIyBOT1RFOiBUaGUgYWJvdmUgdGVzdHMgb2YgZ3B1OjpHTEltYWdlTmF0 aXZlUGl4bWFwIGNhbm5vdCBlYXNpbHkgYmUgbWFkZQorKyAgICAjIHRvIHJ1biBhcyBwYXJ0IG9m IC8vZ3B1J3MgZ2xfdGVzdHMgb3IgZ3B1X3VuaXR0ZXN0czogdGhleSBjcmFzaCB3aGVuIHJ1bgor KyAgICAjIHdpdGggdGhlIGZvcm1lciBkdWUgdG8gZGlmZmVyZW5jZXMgaW4gR0wgY29uZmlndXJh dGlvbiwgYW5kIHRoZXkgYXJlCisrICAgICMgc2tpcHBlZCB3aGVuIHJ1biB3aXRoIHRoZSBsYXR0 ZXIgZHVlIHRvIGRpZmZlcmVuY2VzIGluIE96b25lCisrICAgICMgY29uZmlndXJhdGlvbi4gU2lt cGx5IGxlYXZlIHRoZW0gaGVyZSB3aXRoIHRoaXMgZGVwZW5kZW5jeSBmb3IgdGhlIHNob3J0Cisr ICAgICMgdGltZSByZW1haW5pbmcgdW50aWwgR0xJbWFnZU5hdGl2ZVBpeG1hcCBpcyBlbGltaW5h dGVkIGFsdG9nZXRoZXIuCisrICAgICIvL2dwdS9jb21tYW5kX2J1ZmZlci9zZXJ2aWNlOmdsZXMy IiwKKyAgICAgIi8vdGVzdGluZy9ndGVzdCIsCisgICAgICIvL3VpL2dmeCIsCisgICAgICIvL3Vp L2dsOnJ1bl9hbGxfdW5pdHRlc3RzIiwKK2RpZmYgLS1naXQgYS91aS9vem9uZS9nbC9ERVBTIGIv dWkvb3pvbmUvZ2wvREVQUworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAw MDAuLmU2MTQyZTg1ZDIxNTQKKy0tLSAvZGV2L251bGwKKysrKyBiL3VpL296b25lL2dsL0RFUFMK K0BAIC0wLDAgKzEsNiBAQAorK3NwZWNpZmljX2luY2x1ZGVfcnVsZXMgPSB7CisrICAjIE5PVEU6 IFNlZSBjb21tZW50IGluIC4vQlVJTEQuZ24gd2l0aCByZXNwZWN0IHRvIHRoaXMgZGVwZW5kZW5j eS4KKysgICJnbF9pbWFnZV9vem9uZV9uYXRpdmVfcGl4bWFwX3VuaXR0ZXN0XC5jYyI6IFsKKysg ICAgIitncHUvY29tbWFuZF9idWZmZXIvc2VydmljZS9zaGFyZWRfaW1hZ2UvZ2xfaW1hZ2VfbmF0 aXZlX3BpeG1hcC5oIiwKKysgIF0sCisrfQorZGlmZiAtLWdpdCBhL3VpL296b25lL2dsL2dsX2lt YWdlX296b25lX25hdGl2ZV9waXhtYXBfdW5pdHRlc3QuY2MgYi91aS9vem9uZS9nbC9nbF9pbWFn ZV9vem9uZV9uYXRpdmVfcGl4bWFwX3VuaXR0ZXN0LmNjCitpbmRleCA5YTUzODkwM2M4ZmYwLi4x NTI3ZGY5MWEzMjM4IDEwMDY0NAorLS0tIGEvdWkvb3pvbmUvZ2wvZ2xfaW1hZ2Vfb3pvbmVfbmF0 aXZlX3BpeG1hcF91bml0dGVzdC5jYworKysrIGIvdWkvb3pvbmUvZ2wvZ2xfaW1hZ2Vfb3pvbmVf bmF0aXZlX3BpeG1hcF91bml0dGVzdC5jYworQEAgLTUsMTAgKzUsMTAgQEAKKyAjaW5jbHVkZSA8 c3RkaW50Lmg+CisgI2luY2x1ZGUgPG1lbW9yeT4KKyAKKysjaW5jbHVkZSAiZ3B1L2NvbW1hbmRf YnVmZmVyL3NlcnZpY2Uvc2hhcmVkX2ltYWdlL2dsX2ltYWdlX25hdGl2ZV9waXhtYXAuaCIKKyAj aW5jbHVkZSAidGVzdGluZy9ndGVzdC9pbmNsdWRlL2d0ZXN0L2d0ZXN0LmgiCisgI2luY2x1ZGUg InVpL2dmeC9idWZmZXJfdHlwZXMuaCIKKyAjaW5jbHVkZSAidWkvZ2Z4L2NsaWVudF9uYXRpdmVf cGl4bWFwLmgiCistI2luY2x1ZGUgInVpL2dsL2dsX2ltYWdlX25hdGl2ZV9waXhtYXAuaCIKKyAj aW5jbHVkZSAidWkvZ2wvdGVzdC9nbF9pbWFnZV90ZXN0X3RlbXBsYXRlLmgiCisgI2luY2x1ZGUg InVpL296b25lL3B1YmxpYy9jbGllbnRfbmF0aXZlX3BpeG1hcF9mYWN0b3J5X296b25lLmgiCisg I2luY2x1ZGUgInVpL296b25lL3B1YmxpYy9vem9uZV9wbGF0Zm9ybS5oIgorQEAgLTgzLDcgKzgz LDcgQEAgY2xhc3MgR0xJbWFnZU5hdGl2ZVBpeG1hcFRlc3REZWxlZ2F0ZSA6IHB1YmxpYyBHTElt YWdlVGVzdERlbGVnYXRlQmFzZSB7CisgICAgICAgZ2xHZW5UZXh0dXJlcygxLCAmdGV4dHVyZV9p ZF8pOworICAgICB9CisgCistICAgIGF1dG8gaW1hZ2UgPSBnbDo6R0xJbWFnZU5hdGl2ZVBpeG1h cDo6Q3JlYXRlKAorKyAgICBhdXRvIGltYWdlID0gZ3B1OjpHTEltYWdlTmF0aXZlUGl4bWFwOjpD cmVhdGUoCisgICAgICAgICBzaXplLCBmb3JtYXQsIHN0ZDo6bW92ZShwaXhtYXApLCBHZXRUZXh0 dXJlVGFyZ2V0KCksIHRleHR1cmVfaWRfKTsKKyAgICAgRVhQRUNUX1RSVUUoaW1hZ2UpOworICAg ICByZXR1cm4gaW1hZ2U7CitAQCAtMTAwLDggKzEwMCw5IEBAIGNsYXNzIEdMSW1hZ2VOYXRpdmVQ aXhtYXBUZXN0RGVsZWdhdGUgOiBwdWJsaWMgR0xJbWFnZVRlc3REZWxlZ2F0ZUJhc2UgeworICAg ICAgICAgZm9ybWF0ID09IGdmeDo6QnVmZmVyRm9ybWF0OjpZVVZfNDIwX0JJUExBTkFSKSB7Cisg ICAgICAgcmV0dXJuIDE7CisgICAgIH0KKy0gICAgaWYgKGZvcm1hdCA9PSBnZng6OkJ1ZmZlckZv cm1hdDo6UDAxMCkKKysgICAgaWYgKGZvcm1hdCA9PSBnZng6OkJ1ZmZlckZvcm1hdDo6UDAxMCkg eworICAgICAgIHJldHVybiAzOworKyAgICB9CisgICAgIHJldHVybiAwOworICAgfQorIAoKZGlm ZiAtLWdpdCBhL2Nocm9taXVtLTExMy1XZWJVSURhcmtNb2RlLnBhdGNoIGIvY2hyb21pdW0tMTEz LVdlYlVJRGFya01vZGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u Njg0MWJjYwotLS0gL2Rldi9udWxsCisrKyBiL2Nocm9taXVtLTExMy1XZWJVSURhcmtNb2RlLnBh dGNoCkBAIC0wLDAgKzEsNDU0IEBACitkaWZmIC0tZ2l0IGEvY2hyb21lL2Jyb3dzZXIvdWkvQlVJ TEQuZ24gYi9jaHJvbWUvYnJvd3Nlci91aS9CVUlMRC5nbgoraW5kZXggMzQ3MGRhMS4uZmYzOTg1 MWIgMTAwNjQ0CistLS0gYS9jaHJvbWUvYnJvd3Nlci91aS9CVUlMRC5nbgorKysrIGIvY2hyb21l L2Jyb3dzZXIvdWkvQlVJTEQuZ24KK0BAIC01NjI4LDggKzU2MjgsMTIgQEAKKyAgICAgICAgIHNv dXJjZXMgKz0gWworICAgICAgICAgICAidmlld3MvY2hyb21lX2Jyb3dzZXJfbWFpbl9leHRyYV9w YXJ0c192aWV3c19saW51eC5jYyIsCisgICAgICAgICAgICJ2aWV3cy9jaHJvbWVfYnJvd3Nlcl9t YWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmgiLAorKyAgICAgICAgICAidmlld3MvZGFya19t b2RlX21hbmFnZXJfbGludXguY2MiLAorKyAgICAgICAgICAidmlld3MvZGFya19tb2RlX21hbmFn ZXJfbGludXguaCIsCisgICAgICAgICBdCisgICAgICAgICBkZXBzICs9IFsKKysgICAgICAgICAg Ii8vY29tcG9uZW50cy9kYnVzL3RocmVhZF9saW51eCIsCisrICAgICAgICAgICIvL2RidXMiLAor ICAgICAgICAgICAiLy91aS9iYXNlL2N1cnNvciIsCisgICAgICAgICAgICIvL3VpL296b25lIiwK KyAgICAgICAgIF0KK2RpZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nlci91aS9ERVBTIGIvY2hyb21l L2Jyb3dzZXIvdWkvREVQUworaW5kZXggZmMzZmFiMjMuLmI1NmE3MDRlIDEwMDY0NAorLS0tIGEv Y2hyb21lL2Jyb3dzZXIvdWkvREVQUworKysrIGIvY2hyb21lL2Jyb3dzZXIvdWkvREVQUworQEAg LTQyLDYgKzQyLDkgQEAKKyAgICJicm93c2VyX25hdmlnYXRvcl9icm93c2VydGVzdFwuY2MiOiBb CisgICAgICIrYXNoL3NoZWxsLmgiLAorICAgXSwKKysgICJkYXJrX21vZGVfbWFuYWdlcl9saW51 eFwuY2MiOiBbCisrICAgICIrZGJ1cyIsCisrICBdLAorICAgImZ1bGxzY3JlZW5fY29udHJvbGxl cl9pbnRlcmFjdGl2ZV9icm93c2VydGVzdFwuY2MiOiBbCisgICAgICIrYXNoL3NoZWxsLmgiLAor ICAgXSwKK2RpZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9jaHJvbWVfYnJvd3Nl cl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmNjIGIvY2hyb21lL2Jyb3dzZXIvdWkvdmll d3MvY2hyb21lX2Jyb3dzZXJfbWFpbl9leHRyYV9wYXJ0c192aWV3c19saW51eC5jYworaW5kZXgg ZGJjOWNjNGUuLmQ3ZmFkNWIgMTAwNjQ0CistLS0gYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9j aHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmNjCisrKysgYi9jaHJv bWUvYnJvd3Nlci91aS92aWV3cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdz X2xpbnV4LmNjCitAQCAtNyw2ICs3LDcgQEAKKyAjaW5jbHVkZSAiYmFzZS9tZXRyaWNzL2hpc3Rv Z3JhbV9tYWNyb3MuaCIKKyAjaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdGhlbWVzL3RoZW1lX3Nl cnZpY2VfYXVyYV9saW51eC5oIgorICNpbmNsdWRlICJjaHJvbWUvYnJvd3Nlci91aS9icm93c2Vy X2xpc3QuaCIKKysjaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvZGFya19tb2RlX21h bmFnZXJfbGludXguaCIKKyAjaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvdGhlbWVf cHJvZmlsZV9rZXkuaCIKKyAjaW5jbHVkZSAidWkvYmFzZS9idWlsZGZsYWdzLmgiCisgI2luY2x1 ZGUgInVpL2Jhc2UvY3Vyc29yL2N1cnNvcl9mYWN0b3J5LmgiCitAQCAtNTYsNiArNTcsOCBAQAor ICAgICBVTUFfSElTVE9HUkFNX0VOVU1FUkFUSU9OKCJMaW51eC5TeXN0ZW1UaGVtZS5EZWZhdWx0 IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW51eF91aV90aGVtZS0+R2V0TmF0 aXZlVGhlbWUoKS0+c3lzdGVtX3RoZW1lKCkpOworICAgfQorKworKyAgZGFya19tb2RlX21hbmFn ZXJfID0gc3RkOjptYWtlX3VuaXF1ZTx1aTo6RGFya01vZGVNYW5hZ2VyTGludXg+KCk7CisgfQor IAorIHZvaWQgQ2hyb21lQnJvd3Nlck1haW5FeHRyYVBhcnRzVmlld3NMaW51eDo6UHJlQ3JlYXRl VGhyZWFkcygpIHsKK2RpZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9jaHJvbWVf YnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmggYi9jaHJvbWUvYnJvd3Nlci91 aS92aWV3cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmgKK2lu ZGV4IDM5MmQxNGMuLjZkZWI1MjAgMTAwNjQ0CistLS0gYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3 cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmgKKysrKyBiL2No cm9tZS9icm93c2VyL3VpL3ZpZXdzL2Nocm9tZV9icm93c2VyX21haW5fZXh0cmFfcGFydHNfdmll d3NfbGludXguaAorQEAgLTEzLDYgKzEzLDcgQEAKKyAKKyBuYW1lc3BhY2UgdWkgeworIGNsYXNz IExpbnV4VWlHZXR0ZXI7CisrY2xhc3MgRGFya01vZGVNYW5hZ2VyTGludXg7CisgfQorIAorIC8v IEV4dHJhIHBhcnRzLCB3aGljaCBhcmUgdXNlZCBieSBib3RoIE96b25lL1gxMS9XYXlsYW5kIGFu ZCBpbmhlcml0ZWQgYnkgdGhlCitAQCAtNDEsNiArNDIsOCBAQAorICAgYWJzbDo6b3B0aW9uYWw8 ZGlzcGxheTo6U2NvcGVkRGlzcGxheU9ic2VydmVyPiBkaXNwbGF5X29ic2VydmVyXzsKKyAKKyAg IHN0ZDo6dW5pcXVlX3B0cjx1aTo6TGludXhVaUdldHRlcj4gbGludXhfdWlfZ2V0dGVyXzsKKysK KysgIHN0ZDo6dW5pcXVlX3B0cjx1aTo6RGFya01vZGVNYW5hZ2VyTGludXg+IGRhcmtfbW9kZV9t YW5hZ2VyXzsKKyB9OworIAorICNlbmRpZiAgLy8gQ0hST01FX0JST1dTRVJfVUlfVklFV1NfQ0hS T01FX0JST1dTRVJfTUFJTl9FWFRSQV9QQVJUU19WSUVXU19MSU5VWF9IXworZGlmZiAtLWdpdCBh L2Nocm9tZS9icm93c2VyL3VpL3ZpZXdzL2RhcmtfbW9kZV9tYW5hZ2VyX2xpbnV4LmNjIGIvY2hy b21lL2Jyb3dzZXIvdWkvdmlld3MvZGFya19tb2RlX21hbmFnZXJfbGludXguY2MKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwLi5iYjYzOGY3CistLS0gL2Rldi9udWxsCisrKysg Yi9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9kYXJrX21vZGVfbWFuYWdlcl9saW51eC5jYworQEAg LTAsMCArMSwxNjAgQEAKKysvLyBDb3B5cmlnaHQgMjAyMyBUaGUgQ2hyb21pdW0gQXV0aG9ycwor Ky8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxp Y2Vuc2UgdGhhdCBjYW4gYmUKKysvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorKworKyNp bmNsdWRlICJjaHJvbWUvYnJvd3Nlci91aS92aWV3cy9kYXJrX21vZGVfbWFuYWdlcl9saW51eC5o IgorKworKyNpbmNsdWRlICJiYXNlL2Z1bmN0aW9uYWwvYmluZC5oIgorKyNpbmNsdWRlICJiYXNl L2xvZ2dpbmcuaCIKKysjaW5jbHVkZSAiY29tcG9uZW50cy9kYnVzL3RocmVhZF9saW51eC9kYnVz X3RocmVhZF9saW51eC5oIgorKyNpbmNsdWRlICJkYnVzL2J1cy5oIgorKyNpbmNsdWRlICJkYnVz L21lc3NhZ2UuaCIKKysjaW5jbHVkZSAiZGJ1cy9vYmplY3RfcHJveHkuaCIKKysjaW5jbHVkZSAi dWkvbGludXgvbGludXhfdWkuaCIKKysjaW5jbHVkZSAidWkvbGludXgvbGludXhfdWlfZmFjdG9y eS5oIgorKyNpbmNsdWRlICJ1aS9uYXRpdmVfdGhlbWUvbmF0aXZlX3RoZW1lLmgiCisrCisrbmFt ZXNwYWNlIHsKKysKKytjb25zdGV4cHIgY2hhciBrRnJlZWRlc2t0b3BTZXR0aW5nc1NlcnZpY2Vb XSA9ICJvcmcuZnJlZWRlc2t0b3AucG9ydGFsLkRlc2t0b3AiOworK2NvbnN0ZXhwciBjaGFyIGtG cmVlZGVza3RvcFNldHRpbmdzT2JqZWN0UGF0aFtdID0KKysgICAgIi9vcmcvZnJlZWRlc2t0b3Av cG9ydGFsL2Rlc2t0b3AiOworK2NvbnN0ZXhwciBjaGFyIGtGcmVlZGVza3RvcFNldHRpbmdzSW50 ZXJmYWNlW10gPQorKyAgICAib3JnLmZyZWVkZXNrdG9wLnBvcnRhbC5TZXR0aW5ncyI7CisrY29u c3RleHByIGNoYXIga1NldHRpbmdDaGFuZ2VkU2lnbmFsW10gPSAiU2V0dGluZ0NoYW5nZWQiOwor K2NvbnN0ZXhwciBjaGFyIGtSZWFkTWV0aG9kW10gPSAiUmVhZCI7CisrY29uc3RleHByIGNoYXIg a1NldHRpbmdzTmFtZXNwYWNlW10gPSAib3JnLmZyZWVkZXNrdG9wLmFwcGVhcmFuY2UiOworK2Nv bnN0ZXhwciBjaGFyIGtDb2xvclNjaGVtZUtleVtdID0gImNvbG9yLXNjaGVtZSI7CisrY29uc3Rl eHByIGludCBrRnJlZWRlc2t0b3BDb2xvclNjaGVtZURhcmsgPSAxOworKworK3Njb3BlZF9yZWZw dHI8ZGJ1czo6QnVzPiBDcmVhdGVCdXMoKSB7CisrICBkYnVzOjpCdXM6Ok9wdGlvbnMgb3B0aW9u czsKKysgIG9wdGlvbnMuYnVzX3R5cGUgPSBkYnVzOjpCdXM6OlNFU1NJT047CisrICBvcHRpb25z LmNvbm5lY3Rpb25fdHlwZSA9IGRidXM6OkJ1czo6UFJJVkFURTsKKysgIG9wdGlvbnMuZGJ1c190 YXNrX3J1bm5lciA9IGRidXNfdGhyZWFkX2xpbnV4OjpHZXRUYXNrUnVubmVyKCk7CisrICByZXR1 cm4gYmFzZTo6TWFrZVJlZkNvdW50ZWQ8ZGJ1czo6QnVzPihvcHRpb25zKTsKKyt9CisrCisrfSAg Ly8gbmFtZXNwYWNlCisrCisrbmFtZXNwYWNlIHVpIHsKKysKKytEYXJrTW9kZU1hbmFnZXJMaW51 eDo6RGFya01vZGVNYW5hZ2VyTGludXgoKQorKyAgICA6IGJ1c18oQ3JlYXRlQnVzKCkpLAorKyAg ICAgIHNldHRpbmdzX3Byb3h5XyhidXNfLT5HZXRPYmplY3RQcm94eSgKKysgICAgICAgICAga0Zy ZWVkZXNrdG9wU2V0dGluZ3NTZXJ2aWNlLAorKyAgICAgICAgICBkYnVzOjpPYmplY3RQYXRoKGtG cmVlZGVza3RvcFNldHRpbmdzT2JqZWN0UGF0aCkpKSB7CisrICAvLyBTdWJzY3JpYmUgdG8gY2hh bmdlcyBpbiB0aGUgY29sb3Igc2NoZW1lIHByZWZlcmVuY2UuCisrICBzZXR0aW5nc19wcm94eV8t PkNvbm5lY3RUb1NpZ25hbCgKKysgICAgICBrRnJlZWRlc2t0b3BTZXR0aW5nc0ludGVyZmFjZSwg a1NldHRpbmdDaGFuZ2VkU2lnbmFsLAorKyAgICAgIGJhc2U6OkJpbmRSZXBlYXRpbmcoJkRhcmtN b2RlTWFuYWdlckxpbnV4OjpPblBvcnRhbFNldHRpbmdDaGFuZ2VkLAorKyAgICAgICAgICAgICAg ICAgICAgICAgICAgd2Vha19wdHJfZmFjdG9yeV8uR2V0V2Vha1B0cigpKSwKKysgICAgICBiYXNl OjpCaW5kT25jZSgmRGFya01vZGVNYW5hZ2VyTGludXg6Ok9uU2lnbmFsQ29ubmVjdGVkLAorKyAg ICAgICAgICAgICAgICAgICAgIHdlYWtfcHRyX2ZhY3RvcnlfLkdldFdlYWtQdHIoKSkpOworKwor KyAgLy8gUmVhZCBpbml0aWFsIGNvbG9yIHNjaGVtZSBwcmVmZXJlbmNlLgorKyAgZGJ1czo6TWV0 aG9kQ2FsbCBtZXRob2RfY2FsbChrRnJlZWRlc2t0b3BTZXR0aW5nc0ludGVyZmFjZSwga1JlYWRN ZXRob2QpOworKyAgZGJ1czo6TWVzc2FnZVdyaXRlciB3cml0ZXIoJm1ldGhvZF9jYWxsKTsKKysg IHdyaXRlci5BcHBlbmRTdHJpbmcoa1NldHRpbmdzTmFtZXNwYWNlKTsKKysgIHdyaXRlci5BcHBl bmRTdHJpbmcoa0NvbG9yU2NoZW1lS2V5KTsKKysgIHNldHRpbmdzX3Byb3h5Xy0+Q2FsbE1ldGhv ZCgKKysgICAgICAmbWV0aG9kX2NhbGwsIGRidXM6Ok9iamVjdFByb3h5OjpUSU1FT1VUX1VTRV9E RUZBVUxULAorKyAgICAgIGJhc2U6OkJpbmRPbmNlKCZEYXJrTW9kZU1hbmFnZXJMaW51eDo6T25S ZWFkQ29sb3JTY2hlbWVSZXNwb25zZSwKKysgICAgICAgICAgICAgICAgICAgICB3ZWFrX3B0cl9m YWN0b3J5Xy5HZXRXZWFrUHRyKCkpKTsKKysKKysgIC8vIFJlYWQgdGhlIHRvb2xraXQgcHJlZmVy ZW5jZSB3aGlsZSBhc3luY2hyb25vdXNseSBmZXRjaGluZyB0aGUKKysgIC8vIHBvcnRhbCBwcmVm ZXJlbmNlLgorKyAgaWYgKGF1dG8qIGxpbnV4X3VpX3RoZW1lID0gdWk6OkdldERlZmF1bHRMaW51 eFVpVGhlbWUoKSkgeworKyAgICBhdXRvKiBuYXRpdmVfdGhlbWUgPSBsaW51eF91aV90aGVtZS0+ R2V0TmF0aXZlVGhlbWUoKTsKKysgICAgbmF0aXZlX3RoZW1lX29ic2VydmVyXy5PYnNlcnZlKG5h dGl2ZV90aGVtZSk7CisrICAgIFNldENvbG9yU2NoZW1lKG5hdGl2ZV90aGVtZS0+U2hvdWxkVXNl RGFya0NvbG9ycygpKTsKKysgIH0KKyt9CisrCisrRGFya01vZGVNYW5hZ2VyTGludXg6On5EYXJr TW9kZU1hbmFnZXJMaW51eCgpIHsKKysgIHNldHRpbmdzX3Byb3h5XyA9IG51bGxwdHI7CisrICBk YnVzOjpCdXMqIGNvbnN0IGJ1c19wdHIgPSBidXNfLmdldCgpOworKyAgYnVzX3B0ci0+R2V0REJ1 c1Rhc2tSdW5uZXIoKS0+UG9zdFRhc2soCisrICAgICAgRlJPTV9IRVJFLCBiYXNlOjpCaW5kT25j ZSgmZGJ1czo6QnVzOjpTaHV0ZG93bkFuZEJsb2NrLCBzdGQ6Om1vdmUoYnVzXykpKTsKKyt9Cisr Cisrdm9pZCBEYXJrTW9kZU1hbmFnZXJMaW51eDo6T25OYXRpdmVUaGVtZVVwZGF0ZWQoCisrICAg IHVpOjpOYXRpdmVUaGVtZSogb2JzZXJ2ZWRfdGhlbWUpIHsKKysgIFNldENvbG9yU2NoZW1lKG9i c2VydmVkX3RoZW1lLT5TaG91bGRVc2VEYXJrQ29sb3JzKCkpOworK30KKysKKyt2b2lkIERhcmtN b2RlTWFuYWdlckxpbnV4OjpPblNpZ25hbENvbm5lY3RlZChjb25zdCBzdGQ6OnN0cmluZyYgaW50 ZXJmYWNlX25hbWUsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3Qgc3RkOjpzdHJpbmcmIHNpZ25hbF9uYW1lLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgY29ubmVjdGVkKSB7CisrICAvLyBOb3RoaW5n IHRvIGRvLiAgQ29udGludWUgdXNpbmcgdGhlIHRvb2xraXQgc2V0dGluZyBpZiAhY29ubmVjdGVk LgorK30KKysKKyt2b2lkIERhcmtNb2RlTWFuYWdlckxpbnV4OjpPblBvcnRhbFNldHRpbmdDaGFu Z2VkKGRidXM6OlNpZ25hbCogc2lnbmFsKSB7CisrICBkYnVzOjpNZXNzYWdlUmVhZGVyIHJlYWRl cihzaWduYWwpOworKworKyAgc3RkOjpzdHJpbmcgbmFtZXNwYWNlX2NoYW5nZWQ7CisrICBzdGQ6 OnN0cmluZyBrZXlfY2hhbmdlZDsKKysgIGRidXM6Ok1lc3NhZ2VSZWFkZXIgdmFyaWFudF9yZWFk ZXIobnVsbHB0cik7CisrICBpZiAoIXJlYWRlci5Qb3BTdHJpbmcoJm5hbWVzcGFjZV9jaGFuZ2Vk KSB8fAorKyAgICAgICFyZWFkZXIuUG9wU3RyaW5nKCZrZXlfY2hhbmdlZCkgfHwgIXJlYWRlci5Q b3BWYXJpYW50KCZ2YXJpYW50X3JlYWRlcikpIHsKKysgICAgTE9HKEVSUk9SKSA8PCAiUmVjZWl2 ZWQgbWFsZm9ybWVkIFNldHRpbmcgQ2hhbmdlZCBzaWduYWwgZnJvbSAiCisrICAgICAgICAgICAg ICAgICAgIm9yZy5mcmVlZGVza3RvcC5wb3J0YWwuU2V0dGluZ3MiOworKyAgICByZXR1cm47Cisr ICB9CisrCisrICBpZiAobmFtZXNwYWNlX2NoYW5nZWQgIT0ga1NldHRpbmdzTmFtZXNwYWNlIHx8 CisrICAgICAga2V5X2NoYW5nZWQgIT0ga0NvbG9yU2NoZW1lS2V5KSB7CisrICAgIHJldHVybjsK KysgIH0KKysKKysgIHVpbnQzMl90IG5ld19jb2xvcl9zY2hlbWU7CisrICBpZiAoIXZhcmlhbnRf cmVhZGVyLlBvcFVpbnQzMigmbmV3X2NvbG9yX3NjaGVtZSkpIHsKKysgICAgTE9HKEVSUk9SKQor KyAgICAgICAgPDwgIkZhaWxlZCB0byByZWFkIGNvbG9yLXNjaGVtZSB2YWx1ZSBmcm9tIFNldHRp bmdDaGFuZ2VkIHNpZ25hbCI7CisrICAgIHJldHVybjsKKysgIH0KKysKKysgIFNldENvbG9yU2No ZW1lKG5ld19jb2xvcl9zY2hlbWUgPT0ga0ZyZWVkZXNrdG9wQ29sb3JTY2hlbWVEYXJrKTsKKyt9 CisrCisrdm9pZCBEYXJrTW9kZU1hbmFnZXJMaW51eDo6T25SZWFkQ29sb3JTY2hlbWVSZXNwb25z ZShkYnVzOjpSZXNwb25zZSogcmVzcG9uc2UpIHsKKysgIGlmICghcmVzcG9uc2UpIHsKKysgICAg Ly8gQ29udGludWUgdXNpbmcgdGhlIHRvb2xraXQgc2V0dGluZy4KKysgICAgcmV0dXJuOworKyAg fQorKworKyAgZGJ1czo6TWVzc2FnZVJlYWRlciByZWFkZXIocmVzcG9uc2UpOworKyAgZGJ1czo6 TWVzc2FnZVJlYWRlciB2YXJpYW50X3JlYWRlcihudWxscHRyKTsKKysgIGlmICghcmVhZGVyLlBv cFZhcmlhbnQoJnZhcmlhbnRfcmVhZGVyKSkgeworKyAgICBMT0coRVJST1IpIDw8ICJGYWlsZWQg dG8gcmVhZCB2YXJpYW50IGZyb20gUmVhZCBtZXRob2QgcmVzcG9uc2UiOworKyAgICByZXR1cm47 CisrICB9CisrCisrICB1aW50MzJfdCBuZXdfY29sb3Jfc2NoZW1lOworKyAgaWYgKCF2YXJpYW50 X3JlYWRlci5Qb3BWYXJpYW50T2ZVaW50MzIoJm5ld19jb2xvcl9zY2hlbWUpKSB7CisrICAgIExP RyhFUlJPUikgPDwgIkZhaWxlZCB0byByZWFkIGNvbG9yLXNjaGVtZSB2YWx1ZSBmcm9tIFJlYWQg IgorKyAgICAgICAgICAgICAgICAgICJtZXRob2QgcmVzcG9uc2UiOworKyAgICByZXR1cm47Cisr ICB9CisrCisrICAvLyBJZ25vcmUgZnV0dXJlIHVwZGF0ZXMgZnJvbSB0aGUgdG9vbGtpdCB0aGVt ZS4KKysgIG5hdGl2ZV90aGVtZV9vYnNlcnZlcl8uUmVzZXQoKTsKKysKKysgIFNldENvbG9yU2No ZW1lKG5ld19jb2xvcl9zY2hlbWUgPT0ga0ZyZWVkZXNrdG9wQ29sb3JTY2hlbWVEYXJrKTsKKyt9 CisrCisrdm9pZCBEYXJrTW9kZU1hbmFnZXJMaW51eDo6U2V0Q29sb3JTY2hlbWUoYm9vbCBwcmVm ZXJfZGFya190aGVtZSkgeworKyAgaWYgKHByZWZlcl9kYXJrX3RoZW1lXyA9PSBwcmVmZXJfZGFy a190aGVtZSkgeworKyAgICByZXR1cm47CisrICB9CisrICBwcmVmZXJfZGFya190aGVtZV8gPSBw cmVmZXJfZGFya190aGVtZTsKKysKKysgIE5hdGl2ZVRoZW1lKiB3ZWJfdGhlbWUgPSBOYXRpdmVU aGVtZTo6R2V0SW5zdGFuY2VGb3JXZWIoKTsKKysgIHdlYl90aGVtZS0+c2V0X3VzZV9kYXJrX2Nv bG9ycyhwcmVmZXJfZGFya190aGVtZV8pOworKyAgd2ViX3RoZW1lLT5zZXRfcHJlZmVycmVkX2Nv bG9yX3NjaGVtZSgKKysgICAgICBwcmVmZXJfZGFya190aGVtZV8gPyBOYXRpdmVUaGVtZTo6UHJl ZmVycmVkQ29sb3JTY2hlbWU6OmtEYXJrCisrICAgICAgICAgICAgICAgICAgICAgICAgIDogTmF0 aXZlVGhlbWU6OlByZWZlcnJlZENvbG9yU2NoZW1lOjprTGlnaHQpOworKyAgd2ViX3RoZW1lLT5O b3RpZnlPbk5hdGl2ZVRoZW1lVXBkYXRlZCgpOworK30KKysKKyt9ICAvLyBuYW1lc3BhY2UgdWkK K2RpZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9kYXJrX21vZGVfbWFuYWdlcl9s aW51eC5oIGIvY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvZGFya19tb2RlX21hbmFnZXJfbGludXgu aAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAuLjM0YjA3ZmYKKy0tLSAvZGV2 L251bGwKKysrKyBiL2Nocm9tZS9icm93c2VyL3VpL3ZpZXdzL2RhcmtfbW9kZV9tYW5hZ2VyX2xp bnV4LmgKK0BAIC0wLDAgKzEsNjIgQEAKKysvLyBDb3B5cmlnaHQgMjAyMyBUaGUgQ2hyb21pdW0g QXV0aG9ycworKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNE LXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKysvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxl LgorKworKyNpZm5kZWYgQ0hST01FX0JST1dTRVJfVUlfVklFV1NfREFSS19NT0RFX01BTkFHRVJf TElOVVhfSF8KKysjZGVmaW5lIENIUk9NRV9CUk9XU0VSX1VJX1ZJRVdTX0RBUktfTU9ERV9NQU5B R0VSX0xJTlVYX0hfCisrCisrI2luY2x1ZGUgPHN0cmluZz4KKysKKysjaW5jbHVkZSAiYmFzZS9t ZW1vcnkvc2NvcGVkX3JlZnB0ci5oIgorKyNpbmNsdWRlICJiYXNlL21lbW9yeS93ZWFrX3B0ci5o IgorKyNpbmNsdWRlICJiYXNlL3Njb3BlZF9vYnNlcnZhdGlvbi5oIgorKyNpbmNsdWRlICJ1aS9u YXRpdmVfdGhlbWUvbmF0aXZlX3RoZW1lX29ic2VydmVyLmgiCisrCisrbmFtZXNwYWNlIGRidXMg eworK2NsYXNzIEJ1czsKKytjbGFzcyBPYmplY3RQcm94eTsKKytjbGFzcyBSZXNwb25zZTsKKytj bGFzcyBTaWduYWw7CisrfSAgLy8gbmFtZXNwYWNlIGRidXMKKysKKytuYW1lc3BhY2UgdWkgewor KworKy8vIE9ic2VydmVzIHRoZSBzeXN0ZW0gY29sb3Igc2NoZW1lIHByZWZlcmVuY2UgdXNpbmcK KysvLyBvcmcuZnJlZWRlc2t0b3AucG9ydGFsLlNldHRpbmdzLiBGYWxscyBiYWNrIHRvIHRoZSB0 b29sa2l0IHByZWZlcmVuY2UgaWYKKysvLyBvcmcuZnJlZWRlc2t0b3AucG9ydGFsLlNldHRpbmdz IGlzIHVuYXZhaWxhYmxlLiAgUHJvcGFnYXRlcyB0aGUgZGFyayBtb2RlCisrLy8gcHJlZmVyZW5j ZSB0byB0aGUgd2ViIHRoZW1lLgorK2NsYXNzIERhcmtNb2RlTWFuYWdlckxpbnV4IDogcHVibGlj IE5hdGl2ZVRoZW1lT2JzZXJ2ZXIgeworKyBwdWJsaWM6CisrICBEYXJrTW9kZU1hbmFnZXJMaW51 eCgpOworKyAgRGFya01vZGVNYW5hZ2VyTGludXgoY29uc3QgRGFya01vZGVNYW5hZ2VyTGludXgm KSA9IGRlbGV0ZTsKKysgIERhcmtNb2RlTWFuYWdlckxpbnV4JiBvcGVyYXRvcj0oY29uc3QgRGFy a01vZGVNYW5hZ2VyTGludXgmKSA9IGRlbGV0ZTsKKysgIH5EYXJrTW9kZU1hbmFnZXJMaW51eCgp IG92ZXJyaWRlOworKworKyBwcml2YXRlOgorKyAgLy8gdWk6Ok5hdGl2ZVRoZW1lT2JzZXJ2ZXI6 CisrICB2b2lkIE9uTmF0aXZlVGhlbWVVcGRhdGVkKHVpOjpOYXRpdmVUaGVtZSogb2JzZXJ2ZWRf dGhlbWUpIG92ZXJyaWRlOworKworKyAgLy8gRC1CdXMgYXN5bmMgaGFuZGxlcnMKKysgIHZvaWQg T25TaWduYWxDb25uZWN0ZWQoY29uc3Qgc3RkOjpzdHJpbmcmIGludGVyZmFjZV9uYW1lLAorKyAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmluZyYgc2lnbmFsX25hbWUsCisr ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgY29ubmVjdGVkKTsKKysgIHZvaWQgT25Qb3J0 YWxTZXR0aW5nQ2hhbmdlZChkYnVzOjpTaWduYWwqIHNpZ25hbCk7CisrICB2b2lkIE9uUmVhZENv bG9yU2NoZW1lUmVzcG9uc2UoZGJ1czo6UmVzcG9uc2UqIHJlc3BvbnNlKTsKKysKKysgIC8vIFNl dHMgYHByZWZlcl9kYXJrX3RoZW1lX2AgYW5kIHByb3BhZ2F0ZXMgdG8gdGhlIHdlYiB0aGVtZS4K KysgIHZvaWQgU2V0Q29sb3JTY2hlbWUoYm9vbCBwcmVmZXJfZGFya190aGVtZSk7CisrCisrICBz Y29wZWRfcmVmcHRyPGRidXM6OkJ1cz4gYnVzXzsKKysgIHJhd19wdHI8ZGJ1czo6T2JqZWN0UHJv eHk+IHNldHRpbmdzX3Byb3h5XzsKKysKKysgIGJvb2wgcHJlZmVyX2RhcmtfdGhlbWVfID0gZmFs c2U7CisrCisrICBiYXNlOjpTY29wZWRPYnNlcnZhdGlvbjxOYXRpdmVUaGVtZSwgTmF0aXZlVGhl bWVPYnNlcnZlcj4KKysgICAgICBuYXRpdmVfdGhlbWVfb2JzZXJ2ZXJfe3RoaXN9OworKworKyAg YmFzZTo6V2Vha1B0ckZhY3Rvcnk8RGFya01vZGVNYW5hZ2VyTGludXg+IHdlYWtfcHRyX2ZhY3Rv cnlfe3RoaXN9OworK307CisrCisrfSAgLy8gbmFtZXNwYWNlIHVpCisrCisrI2VuZGlmICAvLyBD SFJPTUVfQlJPV1NFUl9VSV9WSUVXU19EQVJLX01PREVfTUFOQUdFUl9MSU5VWF9IXworZGlmZiAt LWdpdCBhL2Nocm9tZS9jb21tb24vY2hyb21lX2ZlYXR1cmVzLmNjIGIvY2hyb21lL2NvbW1vbi9j aHJvbWVfZmVhdHVyZXMuY2MKK2luZGV4IDkxYjFlOTguLjdhZGRkYmQgMTAwNjQ0CistLS0gYS9j aHJvbWUvY29tbW9uL2Nocm9tZV9mZWF0dXJlcy5jYworKysrIGIvY2hyb21lL2NvbW1vbi9jaHJv bWVfZmVhdHVyZXMuY2MKK0BAIC0xNDQ4LDE3ICsxNDQ4LDE3IEBACisgQkFTRV9GRUFUVVJFKGtX ZWJTaGFyZSwgIldlYlNoYXJlIiwgYmFzZTo6RkVBVFVSRV9ESVNBQkxFRF9CWV9ERUZBVUxUKTsK KyAjZW5kaWYKKyAKKy0vLyBXaGV0aGVyIHRvIGVuYWJsZSAiZGFyayBtb2RlIiBlbmhhbmNlbWVu dHMgaW4gTWFjIE1vamF2ZSBvciBXaW5kb3dzIDEwIGZvcgorLS8vIFVJcyBpbXBsZW1lbnRlZCB3 aXRoIHdlYiB0ZWNobm9sb2dpZXMuCisrLy8gV2hldGhlciB0byBlbmFibGUgImRhcmsgbW9kZSIg ZW5oYW5jZW1lbnRzIGluIE1hYyBNb2phdmUsIFdpbmRvd3MgMTAsIG9yCisrLy8gTGludXggZm9y IFVJcyBpbXBsZW1lbnRlZCB3aXRoIHdlYiB0ZWNobm9sb2dpZXMuCisgQkFTRV9GRUFUVVJFKGtX ZWJVSURhcmtNb2RlLAorICAgICAgICAgICAgICAiV2ViVUlEYXJrTW9kZSIsCisgI2lmIEJVSUxE RkxBRyhJU19NQUMpIHx8IEJVSUxERkxBRyhJU19XSU4pIHx8IEJVSUxERkxBRyhJU19BTkRST0lE KSB8fCBcCistICAgIEJVSUxERkxBRyhJU19DSFJPTUVPUykKKysgICAgQlVJTERGTEFHKElTX0NI Uk9NRU9TKSB8fCBCVUlMREZMQUcoSVNfTElOVVgpCisgICAgICAgICAgICAgIGJhc2U6OkZFQVRV UkVfRU5BQkxFRF9CWV9ERUZBVUxUCisgI2Vsc2UKKyAgICAgICAgICAgICAgYmFzZTo6RkVBVFVS RV9ESVNBQkxFRF9CWV9ERUZBVUxUCisgI2VuZGlmICAvLyBCVUlMREZMQUcoSVNfTUFDKSB8fCBC VUlMREZMQUcoSVNfV0lOKSB8fCBCVUlMREZMQUcoSVNfQU5EUk9JRCkgfHwKKy0gICAgICAgIC8v IEJVSUxERkxBRyhJU19DSFJPTUVPUykKKysgICAgICAgIC8vIEJVSUxERkxBRyhJU19DSFJPTUVP UykgfHwgQlVJTERGTEFHKElTX0xJTlVYKQorICk7CisgCisgI2lmIEJVSUxERkxBRyhJU19DSFJP TUVPU19BU0gpCitkaWZmIC0tZ2l0IGEvdWkvcXQvcXRfdWkuY2MgYi91aS9xdC9xdF91aS5jYwor aW5kZXggYjE4OGFkMC4uNmMwZDJjZCAxMDA2NDQKKy0tLSBhL3VpL3F0L3F0X3VpLmNjCisrKysg Yi91aS9xdC9xdF91aS5jYworQEAgLTk4LDYgKzk4LDEzIEBACisgICBRdE5hdGl2ZVRoZW1lJiBv cGVyYXRvcj0oY29uc3QgUXROYXRpdmVUaGVtZSYpID0gZGVsZXRlOworICAgflF0TmF0aXZlVGhl bWUoKSBvdmVycmlkZSA9IGRlZmF1bHQ7CisgCisrICB2b2lkIFRoZW1lQ2hhbmdlZChib29sIHBy ZWZlcl9kYXJrX3RoZW1lKSB7CisrICAgIHNldF91c2VfZGFya19jb2xvcnMoSXNGb3JjZWREYXJr TW9kZSgpIHx8IHByZWZlcl9kYXJrX3RoZW1lKTsKKysgICAgc2V0X3ByZWZlcnJlZF9jb2xvcl9z Y2hlbWUoQ2FsY3VsYXRlUHJlZmVycmVkQ29sb3JTY2hlbWUoKSk7CisrCisrICAgIE5vdGlmeU9u TmF0aXZlVGhlbWVVcGRhdGVkKCk7CisrICB9CisrCisgICAvLyB1aTo6TmF0aXZlVGhlbWU6Cisg ICBESVNBQkxFX0NGSV9WQ0FMTAorICAgdm9pZCBQYWludEZyYW1lVG9wQXJlYShjYzo6UGFpbnRD YW52YXMqIGNhbnZhcywKK0BAIC0zODcsNyArMzk0LDcgQEAKKyB9CisgCisgdm9pZCBRdFVpOjpU aGVtZUNoYW5nZWQoKSB7CistICBuYXRpdmVfdGhlbWVfLT5Ob3RpZnlPbk5hdGl2ZVRoZW1lVXBk YXRlZCgpOworKyAgbmF0aXZlX3RoZW1lXy0+VGhlbWVDaGFuZ2VkKFByZWZlckRhcmtUaGVtZSgp KTsKKyB9CisgCisgRElTQUJMRV9DRklfVkNBTEwKK2RpZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nl ci91aS9CVUlMRC5nbiBiL2Nocm9tZS9icm93c2VyL3VpL0JVSUxELmduCitpbmRleCBkZWNmYjAy YjY4MTdlLi4xMDhlMmFmOTA3ZTI1IDEwMDY0NAorLS0tIGEvY2hyb21lL2Jyb3dzZXIvdWkvQlVJ TEQuZ24KKysrKyBiL2Nocm9tZS9icm93c2VyL3VpL0JVSUxELmduCitAQCAtNTYzMiwyMCArNTYz MiwyNCBAQCBzdGF0aWNfbGlicmFyeSgidWkiKSB7CisgICAgICAgXQorICAgICB9CisgCistICAg IGlmICh1c2VfYXVyYSkgeworKyAgICBpZiAodXNlX2F1cmEgJiYgKGlzX2xpbnV4IHx8IGlzX2No cm9tZW9zX2xhY3JvcykpIHsKKyAgICAgICAjIFRoZXNlIGZpbGVzIGNhbiBkbyBHdGsrLWJhc2Vk IHRoZW1pbmcgZm9yIGJ1aWxkcyB3aXRoIGd0ayBlbmFibGVkLgorLSAgICAgIGlmIChpc19saW51 eCB8fCBpc19jaHJvbWVvc19sYWNyb3MpIHsKKysgICAgICBzb3VyY2VzICs9IFsKKysgICAgICAg ICJ2aWV3cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmNjIiwK KysgICAgICAgICJ2aWV3cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xp bnV4LmgiLAorKyAgICAgIF0KKysgICAgICBkZXBzICs9IFsKKysgICAgICAgICIvL3VpL2Jhc2Uv Y3Vyc29yIiwKKysgICAgICAgICIvL3VpL296b25lIiwKKysgICAgICBdCisrICAgICAgaWYgKHVz ZV9kYnVzKSB7CisgICAgICAgICBzb3VyY2VzICs9IFsKKy0gICAgICAgICAgInZpZXdzL2Nocm9t ZV9icm93c2VyX21haW5fZXh0cmFfcGFydHNfdmlld3NfbGludXguY2MiLAorLSAgICAgICAgICAi dmlld3MvY2hyb21lX2Jyb3dzZXJfbWFpbl9leHRyYV9wYXJ0c192aWV3c19saW51eC5oIiwKKyAg ICAgICAgICAgInZpZXdzL2RhcmtfbW9kZV9tYW5hZ2VyX2xpbnV4LmNjIiwKKyAgICAgICAgICAg InZpZXdzL2RhcmtfbW9kZV9tYW5hZ2VyX2xpbnV4LmgiLAorICAgICAgICAgXQorICAgICAgICAg ZGVwcyArPSBbCisgICAgICAgICAgICIvL2NvbXBvbmVudHMvZGJ1cy90aHJlYWRfbGludXgiLAor ICAgICAgICAgICAiLy9kYnVzIiwKKy0gICAgICAgICAgIi8vdWkvYmFzZS9jdXJzb3IiLAorLSAg ICAgICAgICAiLy91aS9vem9uZSIsCisgICAgICAgICBdCisgICAgICAgfQorICAgICB9CitkaWZm IC0tZ2l0IGEvY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvY2hyb21lX2Jyb3dzZXJfbWFpbl9leHRy YV9wYXJ0c192aWV3c19saW51eC5jYyBiL2Nocm9tZS9icm93c2VyL3VpL3ZpZXdzL2Nocm9tZV9i cm93c2VyX21haW5fZXh0cmFfcGFydHNfdmlld3NfbGludXguY2MKK2luZGV4IGQ3ZmFkNWI1Yjkw MDcuLjIzZDA2MTFmZGIyYjUgMTAwNjQ0CistLS0gYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9j aHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmNjCisrKysgYi9jaHJv bWUvYnJvd3Nlci91aS92aWV3cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdz X2xpbnV4LmNjCitAQCAtNyw3ICs3LDYgQEAKKyAjaW5jbHVkZSAiYmFzZS9tZXRyaWNzL2hpc3Rv Z3JhbV9tYWNyb3MuaCIKKyAjaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdGhlbWVzL3RoZW1lX3Nl cnZpY2VfYXVyYV9saW51eC5oIgorICNpbmNsdWRlICJjaHJvbWUvYnJvd3Nlci91aS9icm93c2Vy X2xpc3QuaCIKKy0jaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvZGFya19tb2RlX21h bmFnZXJfbGludXguaCIKKyAjaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvdGhlbWVf cHJvZmlsZV9rZXkuaCIKKyAjaW5jbHVkZSAidWkvYmFzZS9idWlsZGZsYWdzLmgiCisgI2luY2x1 ZGUgInVpL2Jhc2UvY3Vyc29yL2N1cnNvcl9mYWN0b3J5LmgiCitAQCAtMTksNiArMTgsMTAgQEAK KyAjaW5jbHVkZSAidWkvbmF0aXZlX3RoZW1lL25hdGl2ZV90aGVtZS5oIgorICNpbmNsdWRlICJ1 aS9vem9uZS9wdWJsaWMvb3pvbmVfcGxhdGZvcm0uaCIKKyAKKysjaWYgZGVmaW5lZChVU0VfREJV UykKKysjaW5jbHVkZSAiY2hyb21lL2Jyb3dzZXIvdWkvdmlld3MvZGFya19tb2RlX21hbmFnZXJf bGludXguaCIKKysjZW5kaWYKKysKKyBuYW1lc3BhY2UgeworIAorIGNsYXNzIExpbnV4VWlHZXR0 ZXJJbXBsIDogcHVibGljIHVpOjpMaW51eFVpR2V0dGVyIHsKK0BAIC01Nyw4ICs2MCw5IEBAIHZv aWQgQ2hyb21lQnJvd3Nlck1haW5FeHRyYVBhcnRzVmlld3NMaW51eDo6VG9vbGtpdEluaXRpYWxp emVkKCkgeworICAgICBVTUFfSElTVE9HUkFNX0VOVU1FUkFUSU9OKCJMaW51eC5TeXN0ZW1UaGVt ZS5EZWZhdWx0IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW51eF91aV90aGVt ZS0+R2V0TmF0aXZlVGhlbWUoKS0+c3lzdGVtX3RoZW1lKCkpOworICAgfQorLQorKyNpZiBkZWZp bmVkKFVTRV9EQlVTKQorICAgZGFya19tb2RlX21hbmFnZXJfID0gc3RkOjptYWtlX3VuaXF1ZTx1 aTo6RGFya01vZGVNYW5hZ2VyTGludXg+KCk7CisrI2VuZGlmCisgfQorIAorIHZvaWQgQ2hyb21l QnJvd3Nlck1haW5FeHRyYVBhcnRzVmlld3NMaW51eDo6UHJlQ3JlYXRlVGhyZWFkcygpIHsKK2Rp ZmYgLS1naXQgYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9jaHJvbWVfYnJvd3Nlcl9tYWluX2V4 dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmggYi9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9jaHJvbWVf YnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmgKK2luZGV4IDZkZWI1MjA1ZDE5 OGEuLmJjOTE2N2JkYTFmYzMgMTAwNjQ0CistLS0gYS9jaHJvbWUvYnJvd3Nlci91aS92aWV3cy9j aHJvbWVfYnJvd3Nlcl9tYWluX2V4dHJhX3BhcnRzX3ZpZXdzX2xpbnV4LmgKKysrKyBiL2Nocm9t ZS9icm93c2VyL3VpL3ZpZXdzL2Nocm9tZV9icm93c2VyX21haW5fZXh0cmFfcGFydHNfdmlld3Nf bGludXguaAorQEAgLTEzLDcgKzEzLDkgQEAKKyAKKyBuYW1lc3BhY2UgdWkgeworIGNsYXNzIExp bnV4VWlHZXR0ZXI7CisrI2lmIGRlZmluZWQoVVNFX0RCVVMpCisgY2xhc3MgRGFya01vZGVNYW5h Z2VyTGludXg7CisrI2VuZGlmCisgfQorIAorIC8vIEV4dHJhIHBhcnRzLCB3aGljaCBhcmUgdXNl ZCBieSBib3RoIE96b25lL1gxMS9XYXlsYW5kIGFuZCBpbmhlcml0ZWQgYnkgdGhlCitAQCAtNDIs OCArNDQsOSBAQCBjbGFzcyBDaHJvbWVCcm93c2VyTWFpbkV4dHJhUGFydHNWaWV3c0xpbnV4Cisg ICBhYnNsOjpvcHRpb25hbDxkaXNwbGF5OjpTY29wZWREaXNwbGF5T2JzZXJ2ZXI+IGRpc3BsYXlf b2JzZXJ2ZXJfOworIAorICAgc3RkOjp1bmlxdWVfcHRyPHVpOjpMaW51eFVpR2V0dGVyPiBsaW51 eF91aV9nZXR0ZXJfOworLQorKyNpZiBkZWZpbmVkKFVTRV9EQlVTKQorICAgc3RkOjp1bmlxdWVf cHRyPHVpOjpEYXJrTW9kZU1hbmFnZXJMaW51eD4gZGFya19tb2RlX21hbmFnZXJfOworKyNlbmRp ZgorIH07CisgCisgI2VuZGlmICAvLyBDSFJPTUVfQlJPV1NFUl9VSV9WSUVXU19DSFJPTUVfQlJP V1NFUl9NQUlOX0VYVFJBX1BBUlRTX1ZJRVdTX0xJTlVYX0hfCgpkaWZmIC0tZ2l0IGEvY2hyb21p dW0tOTIuMC40NTE1LjEwNy1weTItYm9vdHN0cmFwLnBhdGNoIGIvY2hyb21pdW0tOTIuMC40NTE1 LjEwNy1weTItYm9vdHN0cmFwLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBl YTA5MDMzLi4wMDAwMDAwCi0tLSBhL2Nocm9taXVtLTkyLjAuNDUxNS4xMDctcHkyLWJvb3RzdHJh cC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI0ICswLDAgQEAKLWRpZmYgLXVwIGNocm9taXVt LTkyLjAuNDUxNS4xMDcvdGhpcmRfcGFydHkvY2F0YXB1bHQvY29tbW9uL3B5X3Z1bGNhbml6ZS9w eV92dWxjYW5pemUvZ2VuZXJhdGUucHkucHkyIGNocm9taXVtLTkyLjAuNDUxNS4xMDcvdGhpcmRf cGFydHkvY2F0YXB1bHQvY29tbW9uL3B5X3Z1bGNhbml6ZS9weV92dWxjYW5pemUvZ2VuZXJhdGUu cHkKLS0tLSBjaHJvbWl1bS05Mi4wLjQ1MTUuMTA3L3RoaXJkX3BhcnR5L2NhdGFwdWx0L2NvbW1v bi9weV92dWxjYW5pemUvcHlfdnVsY2FuaXplL2dlbmVyYXRlLnB5LnB5MgkyMDIxLTA3LTE5IDE0 OjQ3OjE5LjAwMDAwMDAwMCAtMDQwMAotKysrIGNocm9taXVtLTkyLjAuNDUxNS4xMDcvdGhpcmRf cGFydHkvY2F0YXB1bHQvY29tbW9uL3B5X3Z1bGNhbml6ZS9weV92dWxjYW5pemUvZ2VuZXJhdGUu cHkJMjAyMS0wNy0yNiAxNzowMjoyMy4xNjA3NTA0NzIgLTA0MDAKLUBAIC04Myw3ICs4Myw3IEBA IGRlZiBfTWluaWZ5SlMoaW5wdXRfanMpOgotIAotICAgd2l0aCB0ZW1wZmlsZS5OYW1lZFRlbXBv cmFyeUZpbGUoKSBhcyBfOgotICAgICBhcmdzID0gWwotLSAgICAgICAgJ3B5dGhvbicsCi0rICAg ICAgICAncHl0aG9uMicsCi0gICAgICAgICByanNtaW5fcGF0aAotICAgICBdCi0gICAgIHAgPSBz dWJwcm9jZXNzLlBvcGVuKGFyZ3MsCi1kaWZmIC11cCBjaHJvbWl1bS05Mi4wLjQ1MTUuMTA3L3Rv b2xzL2duL2Jvb3RzdHJhcC9ib290c3RyYXAucHkucHkyIGNocm9taXVtLTkyLjAuNDUxNS4xMDcv dG9vbHMvZ24vYm9vdHN0cmFwL2Jvb3RzdHJhcC5weQotLS0tIGNocm9taXVtLTkyLjAuNDUxNS4x MDcvdG9vbHMvZ24vYm9vdHN0cmFwL2Jvb3RzdHJhcC5weS5weTIJMjAyMS0wNy0xOSAxNDo0NTo0 My4wMDAwMDAwMDAgLTA0MDAKLSsrKyBjaHJvbWl1bS05Mi4wLjQ1MTUuMTA3L3Rvb2xzL2duL2Jv b3RzdHJhcC9ib290c3RyYXAucHkJMjAyMS0wNy0yNiAxNzowMjoyMy4xNjA3NTA0NzIgLTA0MDAK LUBAIC0xMzAsNyArMTMwLDcgQEAgZGVmIG1haW4oYXJndik6Ci0gICAgIGlmIG5vdCBvcHRpb25z LmRlYnVnOgotICAgICAgIGduX2dlbl9hcmdzICs9ICcgaXNfZGVidWc9ZmFsc2UnCi0gICAgIHN1 YnByb2Nlc3MuY2hlY2tfY2FsbChbCi0tICAgICAgICBnbl9wYXRoLCAnZ2VuJywgb3V0X2RpciwK LSsgICAgICAgIGduX3BhdGgsICdnZW4nLCBvdXRfZGlyLCAnIC0tc2NyaXB0LWV4ZWN1dGFibGU9 L3Vzci9iaW4vcHl0aG9uMicsCi0gICAgICAgICAnLS1hcmdzPSVzJyAlIGduX2dlbl9hcmdzLCAi LS1yb290PSIgKyBTUkNfUk9PVAotICAgICBdKQotIAoKZGlmZiAtLWdpdCBhL2Nocm9taXVtLWJy b3dzZXIuc2ggYi9jaHJvbWl1bS1icm93c2VyLnNoCmluZGV4IDVjOTVlZjguLjQ5MmE0OTYgMTAw NzU1Ci0tLSBhL2Nocm9taXVtLWJyb3dzZXIuc2gKKysrIGIvY2hyb21pdW0tYnJvd3Nlci5zaApA QCAtNTIsNCArNTIsMTAgQEAgQ0hST01JVU1fRElTVFJPX0ZMQUdTPSIgLS1lbmFibGUtcGx1Z2lu cyBcCiAgICAgICAgICAgICAgICAgICAgICAgICAtLWVuYWJsZS1zeW5jIFwKICAgICAgICAgICAg ICAgICAgICAgICAgIC0tYXV0by1zc2wtY2xpZW50LWF1dGggQEBFWFRSQV9GTEFHU0BAIgogCisj IFNhbml0aXplIHN0ZHtpbixvdXQsZXJyfSBiZWNhdXNlIHRoZXknbGwgYmUgc2hhcmVkIHdpdGgg dW50cnVzdGVkIGNoaWxkCisjIHByb2Nlc3NlcyAoaHR0cDovL2NyYnVnLmNvbS8zNzY1NjcpLgor ZXhlYyA8IC9kZXYvbnVsbAorZXhlYyA+ID4oZXhlYyBjYXQpCitleGVjIDI+ID4oZXhlYyBjYXQg PiYyKQorCiBleGVjIC1hICIkMCIgIiRIRVJFL0BAQ0hST01JVU1fQlJPV1NFUl9DSEFOTkVMQEAi ICRDSFJPTUlVTV9GTEFHUyAkQ0hST01JVU1fRElTVFJPX0ZMQUdTICIkQCIKCmRpZmYgLS1naXQg YS9jaHJvbWl1bS5jb25mIGIvY2hyb21pdW0uY29uZgppbmRleCBiZjQ2ZTJjLi5kY2FhNzk4IDEw MDY0NAotLS0gYS9jaHJvbWl1bS5jb25mCisrKyBiL2Nocm9taXVtLmNvbmYKQEAgLTEsOCArMSw1 IEBACiAjIHN5c3RlbSB3aWRlIGNocm9taXVtIGZsYWdzCiBDSFJPTUlVTV9GTEFHUz0iIgotQ0hS T01JVU1fRkxBR1MrPSIgLS1kaXNhYmxlLWZlYXR1cmVzPUF1ZGlvU2VydmljZVNhbmRib3gsVXNl Q2hyb21lT1NEaXJlY3RWaWRlb0RlY29kZXIsQWxsb3dRdCIKK0NIUk9NSVVNX0ZMQUdTKz0iIC0t ZGlzYWJsZS1mZWF0dXJlcz1BdWRpb1NlcnZpY2VTYW5kYm94LFVzZUNocm9tZU9TRGlyZWN0Vmlk ZW9EZWNvZGVyIgogQ0hST01JVU1fRkxBR1MrPSIgLS1lbmFibGUtZmVhdHVyZXM9VmFhcGlWaWRl b0RlY29kZXIsVmFhcGlWaWRlb0VuY29kZXIiCi0KLWlmIFsgIiRYREdfU0VTU0lPTl9UWVBFIiA9 PSAid2F5bGFuZCIgXSB8fCBbWyAkV0FZTEFORF9ESVNQTEFZIF1dIDsgdGhlbgotICBDSFJPTUlV TV9GTEFHUys9IiAtLXVzZS1nbD1lZ2wiCi1maQorQ0hST01JVU1fRkxBR1MrPSIgLS11c2UtZ2w9 ZWdsIgoKZGlmZiAtLWdpdCBhL2Nocm9taXVtLnNwZWMgYi9jaHJvbWl1bS5zcGVjCmluZGV4IGQy M2ZhMWIuLjJiOTU4NDEgMTAwNjQ0Ci0tLSBhL2Nocm9taXVtLnNwZWMKKysrIGIvY2hyb21pdW0u c3BlYwpAQCAtMjQxLDggKzI0MSw4IEBACiAlZW5kaWYKIAogTmFtZToJY2hyb21pdW0le2Nocm9t aXVtX2NoYW5uZWx9Ci1WZXJzaW9uOiAxMTIuMC41NjE1LjEyMQotUmVsZWFzZTogMSV7P2Rpc3R9 CitWZXJzaW9uOiAxMTIuMC41NjE1LjE2NQorUmVsZWFzZTogMiV7P2Rpc3R9CiBTdW1tYXJ5OiBB IFdlYktpdCAoQmxpbmspIHBvd2VyZWQgd2ViIGJyb3dzZXIgdGhhdCBHb29nbGUgZG9lc24ndCB3 YW50IHlvdSB0byB1c2UKIFVybDogaHR0cDovL3d3dy5jaHJvbWl1bS5vcmcvSG9tZQogTGljZW5z ZTogQlNELTMtQ2xhdXNlIEFORCBMR1BMLTIuMS1vci1sYXRlciBBTkQgQXBhY2hlLTIuMCBBTkQg SUpHIEFORCBNSVQgQU5EIEdQTC0yLjAtb3ItbGF0ZXIgQU5EIElTQyBBTkQgT3BlblNTTCBBTkQg KE1QTC0xLjEgT1IgR1BMLTIuMC1vbmx5IE9SIExHUEwtMi4wLW9ubHkpCkBAIC0zMTksOCArMzE5 LDggQEAgUGF0Y2g5MDogY2hyb21pdW0tMTA5LWRpc2FibGUtR2xvYmFsTWVkaWFDb250cm9sc0Nh c3RTdGFydFN0b3AucGF0Y2gKICMgcGF0Y2ggZm9yIHVzaW5nIHN5c3RlbSBvcHVzCiBQYXRjaDkx OiBjaHJvbWl1bS0xMDgtc3lzdGVtLW9wdXMucGF0Y2gKIAotIyBmaXggcHJlZmVycy1jb2xvci1z Y2hlbWUKLVBhdGNoOTI6IGNocm9taXVtLTExMC1ndGt0aGVtZS5wYXRjaAorIyBlbmFibGUgV2Vi VUlEYXJrTW9kZQorUGF0Y2g5MjogY2hyb21pdW0tMTEzLVdlYlVJRGFya01vZGUucGF0Y2gKIAog IyBuZWVkIHRvIGV4cGxpY2l0bHkgaW5jbHVkZSBhIGtlcm5lbCBoZWFkZXIgb24gRUw3IHRvIHN1 cHBvcnQgTUZEX0NMT0VYRUMsIEZfU0VBTF9TSFJJTkssIEZfQUREX1NFQUxTLCBGX1NFQUxfU0VB TAogUGF0Y2gxMDA6IGNocm9taXVtLTEwOC1lbDctaW5jbHVkZS1mY250bC1tZW1mZC5wYXRjaApA QCAtMzQ3LDkgKzM0Nyw2IEBAIFBhdGNoMTA2OiBjaHJvbWl1bS05OC4wLjQ3NTguODAtZXBlbDct ZXJhc2UtZml4LnBhdGNoCiAjIEFkZCBhZGRpdGlvbmFsIG9wZXJhdG9yPT0gdG8gbWFrZSBlbDcg aGFwcHkuCiBQYXRjaDEwNzogY2hyb21pdW0tOTkuMC40ODQ0LjUxLWVsNy1leHRyYS1vcGVyYXRv cj09LnBhdGNoCiAKLSMgU3BsaXQgb3V0IGlvcyBzaGFyZWQgZmVlZCBwcm90b3MKLVBhdGNoMTA4 OiBjaHJvbWl1bS0xMTItZmVlZF9wcm90b3MucGF0Y2gKLQogIyBzeXN0ZW0gZmZtcGVnCiBQYXRj aDExNDogY2hyb21pdW0tMTA3LWZmbXBlZy1kdXJhdGlvbi5wYXRjaAogUGF0Y2gxMTU6IGNocm9t aXVtLTEwNy1wcm9wcmlldGFyeS1jb2RlY3MucGF0Y2gKQEAgLTM3MCw2ICszNjcsOCBAQCBQYXRj aDE0NjogY2hyb21pdW0tMTEwLUxhcmdlclRoYW40ay5wYXRjaAogIyBWQUFQSQogIyBVcHN0cmVh bSB0dXJuZWQgVkFBUEkgb24gaW4gTGludXggaW4gODYKIFBhdGNoMjAyOiBjaHJvbWl1bS0xMDQu MC41MTEyLjEwMS1lbmFibGUtaGFyZHdhcmUtYWNjZWxlcmF0ZWQtbWpwZWcucGF0Y2gKK1BhdGNo MjAzOiBjaHJvbWl1bS0xMTItY2hlY2stcGFzc3Rocm91Z2gtY29tbWFuZC1kZWNvZGVyLnBhdGNo CitQYXRjaDIwNDogY2hyb21pdW0tMTEyLWludmVydF9vZl9HTEltYWdlTmF0aXZlUGl4bWFwX05h dGl2ZVBpeG1hcEVHTEJpbmRpbmcucGF0Y2gKIFBhdGNoMjA1OiBjaHJvbWl1bS04Ni4wLjQyNDAu NzUtZml4LXZhYXBpLW9uLWludGVsLnBhdGNoCiBQYXRjaDIwNjogY2hyb21pdW0tMTEyLW96b25l LXdheWxhbmQtdmFhcGktc3VwcG9ydC5wYXRjaAogUGF0Y2gyMDc6IGNocm9taXVtLTExMi1lbmFi bGUtdmFhcGktb3pvbmUtd2F5bGFuZC5wYXRjaApAQCAtNDI1LDcgKzQyNCw3IEBAIEJ1aWxkUmVx dWlyZXM6ICV7dG9vbHNldH0tJXtkdHNfdmVyc2lvbn0tbGliYXRvbWljLWRldmVsCiAlaWYgMCV7 P3JoZWx9ID09IDcgfHwgMCV7P3JoZWx9ID09IDgKIEJ1aWxkUmVxdWlyZXM6ICV7dG9vbHNldH0t JXtkdHNfdmVyc2lvbn0tdG9vbGNoYWluLCAle3Rvb2xzZXR9LSV7ZHRzX3ZlcnNpb259LWxpYmF0 b21pYy1kZXZlbAogJWVuZGlmCi0laWYgMHs/ZmVkb3JhfSB8fCAwJXs/cmhlbH0gPiA4CislaWYg MCV7P2ZlZG9yYX0gfHwgMCV7P3JoZWx9ID4gOAogQnVpbGRSZXF1aXJlczogZ2NjLWMrKwogQnVp bGRSZXF1aXJlczogZ2NjCiBCdWlsZFJlcXVpcmVzOiBiaW51dGlscwpAQCAtOTMxLDcgKzkzMCw3 IEBAIHVkZXYuCiAlcGF0Y2ggLVA5MSAtcDEgLWIgLnN5c3RlbS1vcHVzCiAlZW5kaWYKIAotJXBh dGNoIC1QOTIgLXAxIC1iIC5ndGstcHJlZmVycy1jb2xvci1zY2hlbWUKKyVwYXRjaCAtUDkyIC1w MSAtYiAuV2ViVUlEYXJrTW9kCiAKICMgRmVkb3JhIGJyYW5kZWQgdXNlciBhZ2VudAogJWlmIDAl ez9mZWRvcmF9CkBAIC05NTgsMTAgKzk1Nyw2IEBAIHVkZXYuCiAlcGF0Y2ggLVAxMDcgLXAxIC1i IC5lbDctZXh0cmEtb3BlcmF0b3ItZXF1YWxlcXVhbAogJWVuZGlmCiAKLSVpZiAwJXs/ZmVkb3Jh fSA9PSAzNwotJXBhdGNoIC1QMTA4IC1wMSAtUiAtYiAuY2hyb21lX2ZlZWRfcmVzcG9uc2VfbWV0 YWRhdGEKLSVlbmRpZgotCiAlcGF0Y2ggLVAxMzAgLXAxIC1iIC5WaXJ0dWFsQ3Vyc29yLXN0ZC1s YXlvdXQKIAogJXBhdGNoIC1QMTQ2IC1wMSAtYiAuTGFyZ2VyVGhhbjRrCkBAIC05NzEsNiArOTY2 LDggQEAgdWRldi4KICMgRmVhdHVyZSBzcGVjaWZpYyBwYXRjaGVzCiAlaWYgJXt1c2VfdmFhcGl9 CiAlcGF0Y2ggLVAyMDIgLXAxIC1iIC5hY2NlbC1tanBlZworJXBhdGNoIC1QMjAzIC1wMSAtUiAt YiAucmV2ZXJ0CislcGF0Y2ggLVAyMDQgLXAxIC1SIC1iIC5yZXZlcnQKICVwYXRjaCAtUDIwNSAt cDEgLWIgLnZhYXBpLWludGVsLWZpeAogJXBhdGNoIC1QMjA2IC1wMSAtYiAud2F5bGFuZC12YWFw aQogJXBhdGNoIC1QMjA3IC1wMSAtYiAuZW5hYmxlLXdheWxhbmQtdmFhcGkKQEAgLTk4MCw3ICs5 NzcsNyBAQCB1ZGV2LgogJXBhdGNoIC1QMzAwIC1wMSAtYiAuZGlzYmxlZ25vbWVrZXlyaW5nCiAl ZW5kaWYKIAotJWlmIDAlez9yaGVsfSA9PSA4CislaWYgJXtjbGFuZ30gJiYgMCV7P3JoZWx9ID09 IDgKICVwYXRjaCAtUDMwMSAtcDEgLWIgLmNsYW5nMTRfYysrMjAKICVlbmRpZgogCkBAIC0xMDQw LDkgKzEwMzcsMTEgQEAgc2VkIC1pICdzfG1vY3xtb2MtcXQ1fGcnIHVpL3F0L21vY193cmFwcGVy LnB5CiBleHBvcnQgTEFORz1lbl9VUy5VVEYtOAogCiAjIHJlZHVjZSB3YXJuaW5ncworJWlmICV7 Y2xhbmd9CiBGTEFHUz0nIC1Xbm8tZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnMgLVduby11bmtub3du LXdhcm5pbmctb3B0aW9uIC1Xbm8tdW51c2VkLWNvbW1hbmQtbGluZS1hcmd1bWVudCcKIEZMQUdT Kz0nIC1Xbm8tdW51c2VkLWJ1dC1zZXQtdmFyaWFibGUgLVduby11bnVzZWQtcmVzdWx0IC1Xbm8t dW51c2VkLWZ1bmN0aW9uIC1Xbm8tdW51c2VkLXZhcmlhYmxlJwogRkxBR1MrPScgLVduby11bnVz ZWQtY29uc3QtdmFyaWFibGUgLVduby11bm5lZWRlZC1pbnRlcm5hbC1kZWNsYXJhdGlvbicKKyVl bmRpZgogCiAlaWYgJXtzeXN0ZW1fYnVpbGRfZmxhZ3N9CiBDRkxBR1M9JHtDRkxBR1MvLWcgfQpA QCAtMTA2MSwxNiArMTA2MCwxOCBAQCBDWFhGTEFHUz0iJEZMQUdTIgogJWlmICV7Y2xhbmd9CiBl eHBvcnQgQ0M9Y2xhbmcKIGV4cG9ydCBDWFg9Y2xhbmcrKworZXhwb3J0IEFSPWxsdm0tYXIKK2V4 cG9ydCBOTT1sbHZtLW5tCitleHBvcnQgUkVBREVMRj1sbHZtLXJlYWRlbGYKICVlbHNlCiBleHBv cnQgQ0M9Z2NjCiBleHBvcnQgQ1hYPWcrKyAKK2V4cG9ydCBBUj1hcgorZXhwb3J0IE5NPW5tCitl eHBvcnQgUkVBREVMRj1yZWFkZWxmCiAlZW5kaWYKIGV4cG9ydCBDRkxBR1MKIGV4cG9ydCBDWFhG TEFHUwotZXhwb3J0IExERkxBR1M9IiRMREZMQUdTIC1XbCwtLXRocmVhZHM9NCIKLWV4cG9ydCBB Uj0ibGx2bS1hciIKLWV4cG9ydCBOTT0ibGx2bS1ubSIKLWV4cG9ydCBSRUFERUxGPSJsbHZtLXJl YWRlbGYiCiAKICMgZW5hYmxlIHRvb2xzZXQgb24gZWw3CiAlaWYgMCV7P3JoZWx9ID09IDcKQEAg LTExNDIsNiArMTE0Myw3IEBAIENIUk9NSVVNX0NPUkVfR05fREVGSU5FUys9JyBlbmFibGVfdnI9 ZmFsc2UnCiBDSFJPTUlVTV9DT1JFX0dOX0RFRklORVMrPScgYnVpbGRfZGF3bl90ZXN0cz1mYWxz ZSBlbmFibGVfcGVyZmV0dG9fdW5pdHRlc3RzPWZhbHNlJwogQ0hST01JVU1fQ09SRV9HTl9ERUZJ TkVTKz0nIGRpc2FibGVfZmllbGR0cmlhbF90ZXN0aW5nX2NvbmZpZz10cnVlJwogQ0hST01JVU1f Q09SRV9HTl9ERUZJTkVTKz0nIGJsaW5rX3N5bWJvbF9sZXZlbD0wIHN5bWJvbF9sZXZlbD0wIHY4 X3N5bWJvbF9sZXZlbD0wJworQ0hST01JVU1fQ09SRV9HTl9ERUZJTkVTKz0nIGJsaW5rX2VuYWJs ZV9nZW5lcmF0ZWRfY29kZV9mb3JtYXR0aW5nPWZhbHNlJwogZXhwb3J0IENIUk9NSVVNX0NPUkVf R05fREVGSU5FUwogCiAjIGJyb3dzZXIgZ24gZGVmaW5lcwpAQCAtMTY1Myw2ICsxNjU1LDE4IEBA IGdldGVudCBncm91cCBjaHJvbWUtcmVtb3RlLWRlc2t0b3AgPi9kZXYvbnVsbCB8fCBncm91cGFk ZCAtciBjaHJvbWUtcmVtb3RlLWRlc2t0CiAle2Nocm9taXVtX3BhdGh9L2Nocm9tZWRyaXZlcgog CiAlY2hhbmdlbG9nCisqIFN1biBBcHIgMjMgMjAyMyBUaGFuIE5nbyA8dGhhbkByZWRoYXQuY29t PiAtIDExMi4wLjU2MTUuMTY1LTIKKy0gbWFrZSAtLXVzZS1nbD1lZ2wgZGVmYXVsdCBmb3IgeDEx L3dheWxhbmQKKy0gZW5hYmxlIFdlYlVJRGFya01vZGUKKworKiBUaHUgQXByIDIwIDIwMjMgVGhh biBOZ28gPHRoYW5AcmVkaGF0LmNvbT4gLSAxMTIuMC41NjE1LjE2NS0xCistIHVwZGF0ZSB0byAx MTIuMC41NjE1LjE2NQorCisqIE1vbiBBcHIgMTcgMjAyMyBUaGFuIE5nbyA8dGhhbkByZWRoYXQu Y29tPiAtIDExMi4wLjU2MTUuMTIxLTIKKy0gZml4IHZhYXBpIGlzc3VlIG9uIHh3YXlsYW5kCist IGZpeCB0aGUgYnVpbGQgb3JkZXIsIGNocm9tZV9mZWVkX3Jlc3BvbnNlX21ldGFkYXRhLnBiLmgg ZmlsZSBub3QgZm91bmQKKy0gZml4IGNvbXBpbGVyIGZsYWdzIGFuZCB0eXBvCisKICogU2F0IEFw ciAxNSAyMDIzIFRoYW4gTmdvIDx0aGFuQHJlZGhhdC5jb20+IC0gMTEyLjAuNTYxNS4xMjEtMQog LSB1cGRhdGUgdG8gMTEyLjAuNTYxNS4xMjEKIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3Vy Y2VzCmluZGV4IDI4NzEwNzcuLjI0MjVjYTcgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291 cmNlcwpAQCAtMSwzICsxLDMgQEAKIFNIQTUxMiAobm9kZS12MTkuOC4xLWxpbnV4LWFybTY0LnRh ci54eikgPSA4NmZmMTkwODU2NjllOTJjZTdhZmUyZmQ3ZDRkZjBjNTQ0MWRmMmQ4OGMwMGYyOWQ1 NDYzYjgwNWYzY2Y1NjI1NjI2ZGI4YWViZjk4MzQ5YzlhNDk1Yjc3MmRhMWNlNmQ2ODI2MzczMDAx ODIwN2VhOTg4MTUwNThhMWM4MTM5NwogU0hBNTEyIChub2RlLXYxOS44LjEtbGludXgteDY0LnRh ci54eikgPSA5MjVjMDAzN2M2YjcwNzRkMGIwMjQ1YmNlZDIwZDBhMGQ5YjEzMDBmNTNiODA4MTA2 ZjE2YjUwMThkNzYzZjVmNWIwMGJjMzIxYjMzZmExMDMzZDczNmIxZTEwNzY2MDhkYTliN2ZjYWU2 NmFlZDUzZDI3YjEwMGIxMTg2ZTJjNgotU0hBNTEyIChjaHJvbWl1bS0xMTIuMC41NjE1LjEyMS1j bGVhbi50YXIueHopID0gNGRmYjhhYmI1YWU0NzVmMDY5ZmYxOGQ5OGM2YjhjNWEyNDExODdjZTJl ZDVkODVkNmJjNmFjMzNlZmRjY2E2YTY1NzUzOWRmNTBiMzgzNmJhY2E5MzE5MGFmZjk2Njc2ZDY2 NzNhMWE1NTRiNDgzOTRjYjQ2MjVhYWVhMDI3NWQKK1NIQTUxMiAoY2hyb21pdW0tMTEyLjAuNTYx NS4xNjUtY2xlYW4udGFyLnh6KSA9IDY4ZjhmNGYwZThhZGQwNGU2MDhjMWQyODUzNTFiMzhkZTAx OTlhYzU2MzViMjlkY2NlNjUzYjMwNDM1ZTY4NDMxZjkyZWE3YjM4MWQ2ZmU2Y2I0ZmZkNWIxOTEw ZTY2ZWQ2ZjgyYWFiNjJhOGZhYjk1MmNiOTY5YTQwZjc0NTZhCg==