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: Michal Schorm To: git-commits@fedoraproject.org Subject: [rpms/mysql8.0] rawhide: Upstream EOL reached on 04/2026; no longer maintained Date: Tue, 21 Jul 2026 19:54:31 GMT Message-ID: <178466367103.1.6741242654763358967.rpms-mysql8.0-d764c53c54b4@fedoraproject.org> List-ID: X-Git-Repo: rpms/mysql8.0 X-Git-Branch: rawhide X-Git-Rev: d764c53c54b4e4b449d31da7bd8e7d33067de72d QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvbXlzcWw4LjAKQnJh bmNoIDogcmF3aGlkZQpDb21taXQgOiBkNzY0YzUzYzU0YjRlNGI0NDlkMzFkYTdiZDhlN2QzMzA2 N2RlNzJkCkF1dGhvciA6IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4KRGF0ZSAg IDogMjAyNi0wNy0yMVQyMTo1NDoyNSswMjowMApTdGF0cyAgOiArMS8tNDUxOSBpbiAzNyBmaWxl KHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvbXlzcWw4LjAv Yy9kNzY0YzUzYzU0YjRlNGI0NDlkMzFkYTdiZDhlN2QzMzA2N2RlNzJkP2JyYW5jaD1yYXdoaWRl CgpMb2c6ClVwc3RyZWFtIEVPTCByZWFjaGVkIG9uIDA0LzIwMjY7IG5vIGxvbmdlciBtYWludGFp bmVkCgotLS0KZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAyMDg3MGJiLi4wMDAwMDAwCi0tLSBhLy5naXRpZ25vcmUKKysr IC9kZXYvbnVsbApAQCAtMSwzICswLDAgQEAKLS8qLwotLyoucnBtCi0vKi50YXIuZ3oKCmRpZmYg LS1naXQgYS9SRUFETUUubXlzcWwtZG9jcyBiL1JFQURNRS5teXNxbC1kb2NzCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCBkZDg5NGE3Li4wMDAwMDAwCi0tLSBhL1JFQURNRS5teXNxbC1k b2NzCisrKyAvZGV2L251bGwKQEAgLTEsNCArMCwwIEBACi1UaGUgb2ZmaWNpYWwgTXlTUUwgZG9j dW1lbnRhdGlvbiBpcyBub3QgZnJlZWx5IHJlZGlzdHJpYnV0YWJsZSwgc28gd2UgY2Fubm90Ci1p bmNsdWRlIGl0IGluIFJIRUwgb3IgRmVkb3JhLiAgWW91IGNhbiBmaW5kIGl0IG9uLWxpbmUgYXQK LQotaHR0cDovL2Rldi5teXNxbC5jb20vZG9jLwoKZGlmZiAtLWdpdCBhL1JFQURNRS5teXNxbC1s aWNlbnNlIGIvUkVBRE1FLm15c3FsLWxpY2Vuc2UKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IGNlYWJiY2YuLjAwMDAwMDAKLS0tIGEvUkVBRE1FLm15c3FsLWxpY2Vuc2UKKysrIC9kZXYv bnVsbApAQCAtMSw5ICswLDAgQEAKLU15U1FMIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIEdQTCB2Miwg YnV0IHRoZXJlIGFyZSBzb21lIGxpY2Vuc2luZyBleGNlcHRpb25zCi10aGF0IGFsbG93IHRoZSBj bGllbnQgbGlicmFyaWVzIHRvIGJlIGxpbmtlZCB3aXRoIGEgbm9uLUdQTCBhcHBsaWNhdGlvbiwK LXNvIGxvbmcgYXMgdGhlIGFwcGxpY2F0aW9uIGlzIHVuZGVyIGEgbGljZW5zZSBhcHByb3ZlZCBi eSBPcmFjbGUuCi1Gb3IgZGV0YWlscyBzZWUKLQotaHR0cDovL3d3dy5teXNxbC5jb20vYWJvdXQv bGVnYWwvbGljZW5zaW5nL2Zvc3MtZXhjZXB0aW9uLwotCi1Tb21lIGlubm9iYXNlIGNvZGUgZnJv bSBQZXJjb25hIGFuZCBHb29nbGUgaXMgdW5kZXIgQlNEIGxpY2Vuc2UuCi1Tb21lIGNvZGUgcmVs YXRlZCB0byB0ZXN0LXN1aXRlIGlzIHVuZGVyIExHUEx2Mi4KCmRpZmYgLS1naXQgYS9ib29zdC0x LjU3LjAtbXBsLXByaW50LnBhdGNoIGIvYm9vc3QtMS41Ny4wLW1wbC1wcmludC5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTYxY2VmMS4uMDAwMDAwMAotLS0gYS9ib29zdC0x LjU3LjAtbXBsLXByaW50LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotZGlm ZiAtdXAgYm9vc3RfMV81N18wL2Jvb3N0L21wbC9wcmludC5ocHBcfiBib29zdF8xXzU3XzAvYm9v c3QvbXBsL3ByaW50LmhwcAotLS0tIGJvb3N0XzFfNTdfMC9ib29zdC9tcGwvcHJpbnQuaHBwfgky MDE0LTA3LTA5IDIzOjEyOjMxLjAwMDAwMDAwMCArMDIwMAotKysrIGJvb3N0XzFfNTdfMC9ib29z dC9tcGwvcHJpbnQuaHBwCTIwMTUtMDEtMjAgMTI6NDQ6NTkuNjIxNDAwOTQ4ICswMTAwCi1AQCAt NTIsMTYgKzUyLDE1IEBAIHN0cnVjdCBwcmludAotICAgICBlbnVtIHsgbiA9IHNpemVvZihUKSAr IC0xIH07Ci0gI2VsaWYgZGVmaW5lZChfX01XRVJLU19fKQotICAgICB2b2lkIGYoaW50KTsKLS0j ZWxzZSAKLS0gICAgZW51bSB7Ci0tICAgICAgICBuID0KLS0jIGlmIGRlZmluZWQoX19FREdfVkVS U0lPTl9fKQotLSAgICAgICAgICAgYXV4OjpkZXBlbmRlbnRfdW5zaWduZWQ8VD46OnZhbHVlID4g LTEKLS0jIGVsc2UgCi0tICAgICAgICAgICBzaXplb2YoVCkgPiAtMQotLSMgZW5kaWYgCi0tICAg ICAgICB9OwotLSNlbmRpZiAKLSsjZWxpZiBkZWZpbmVkKF9fRURHX1ZFUlNJT05fXykKLSsgICAg ZW51bSB7IG4gPSBhdXg6OmRlcGVuZGVudF91bnNpZ25lZDxUPjo6dmFsdWUgPiAtMSB9OwotKyNl bGlmIGRlZmluZWQoQk9PU1RfR0NDKQotKyAgICBlbnVtIHsgbjEgfTsKLSsgICAgZW51bSB7IG4y IH07Ci0rICAgIGVudW0geyBuID0gbjEgIT0gbjIgfTsKLSsjZWxzZQotKyAgICBlbnVtIHsgbiA9 IHNpemVvZihUKSA+IC0xIH07Ci0rI2VuZGlmCi0gfTsKLSAKLSAjaWYgZGVmaW5lZChCT09TVF9N U1ZDKQotCi1EaWZmIGZpbmlzaGVkLiAgVHVlIEphbiAyMCAxMjo0NTowMyAyMDE1CgpkaWZmIC0t Z2l0IGEvYm9vc3QtMS41OC4wLXBvb2wucGF0Y2ggYi9ib29zdC0xLjU4LjAtcG9vbC5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjFiZTBjYy4uMDAwMDAwMAotLS0gYS9ib29z dC0xLjU4LjAtcG9vbC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDEyMCArMCwwIEBACi1JbmRl eDogYm9vc3QvcG9vbC9wb29sLmhwcAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGEvYm9vc3QvcG9vbC9wb29s LmhwcAkocmV2aXNpb24gNzgzMTcpCi0rKysgYi9ib29zdC9wb29sL3Bvb2wuaHBwCShyZXZpc2lv biA3ODMyNikKLUBAIC0yNyw0ICsyNyw2IEBACi0gI2luY2x1ZGUgPGJvb3N0L3Bvb2wvcG9vbGZ3 ZC5ocHA+Ci0gCi0rLy8gc3RkOjpudW1lcmljX2xpbWl0cwotKyNpbmNsdWRlIDxib29zdC9saW1p dHMuaHBwPgotIC8vIGJvb3N0OjppbnRlZ2VyOjpzdGF0aWNfbGNtCi0gI2luY2x1ZGUgPGJvb3N0 L2ludGVnZXIvY29tbW9uX2ZhY3Rvcl9jdC5ocHA+Ci1AQCAtMzU4LDQgKzM2MCwxMSBAQAotICAg ICB9Ci0gCi0rICAgIHNpemVfdHlwZSBtYXhfY2h1bmtzKCkgY29uc3QKLSsgICAgeyAvLyEgQ2Fs Y3VsYXRlZCBtYXhpbXVtIG51bWJlciBvZiBtZW1vcnkgY2h1bmtzIHRoYXQgY2FuIGJlIGFsbG9j YXRlZCBpbiBhIHNpbmdsZSBjYWxsIGJ5IHRoaXMgUG9vbC4KLSsgICAgICBzaXplX3R5cGUgcGFy dGl0aW9uX3NpemUgPSBhbGxvY19zaXplKCk7Ci0rICAgICAgc2l6ZV90eXBlIFBPRF9zaXplID0g aW50ZWdlcjo6c3RhdGljX2xjbTxzaXplb2Yoc2l6ZV90eXBlKSwgc2l6ZW9mKHZvaWQgKik+Ojp2 YWx1ZSArIHNpemVvZihzaXplX3R5cGUpOwotKyAgICAgIHJldHVybiAoc3RkOjpudW1lcmljX2xp bWl0czxzaXplX3R5cGU+OjptYXgoKSAtIFBPRF9zaXplKSAvIGFsbG9jX3NpemUoKTsKLSsgICAg fQotKwotICAgICBzdGF0aWMgdm9pZCAqICYgbmV4dG9mKHZvaWQgKiBjb25zdCBwdHIpCi0gICAg IHsgLy8hIFxyZXR1cm5zIFBvaW50ZXIgZGVyZWZlcmVuY2VkLgotQEAgLTM3Nyw1ICszODgsNyBA QAotICAgICAgIC8vISAgIHRoZSBmaXJzdCB0aW1lIHRoYXQgb2JqZWN0IG5lZWRzIHRvIGFsbG9j YXRlIHN5c3RlbSBtZW1vcnkuCi0gICAgICAgLy8hICAgVGhlIGRlZmF1bHQgaXMgMzIuIFRoaXMg cGFyYW1ldGVyIG1heSBub3QgYmUgMC4KLS0gICAgICAvLyEgXHBhcmFtIG5tYXhfc2l6ZSBpcyB0 aGUgbWF4aW11bSBudW1iZXIgb2YgY2h1bmtzIHRvIGFsbG9jYXRlIGluIG9uZSBibG9jay4KLSsg ICAgICAvLyEgXHBhcmFtIG5tYXhfc2l6ZSBpcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgY2h1bmtz IHRvIGFsbG9jYXRlIGluIG9uZSBibG9jay4JCQkKLSsgICAgICBzZXRfbmV4dF9zaXplKG5uZXh0 X3NpemUpOwotKyAgICAgIHNldF9tYXhfc2l6ZShubWF4X3NpemUpOwotICAgICB9Ci0gCi1AQCAt NDAwLDcgKzQxMyw3IEBACi0gICAgIH0KLSAgICAgdm9pZCBzZXRfbmV4dF9zaXplKGNvbnN0IHNp emVfdHlwZSBubmV4dF9zaXplKQotLSAgICB7IC8vISBTZXQgbnVtYmVyIG9mIGNodW5rcyB0byBy ZXF1ZXN0IGZyb20gdGhlIHN5c3RlbSB0aGUgbmV4dCB0aW1lIHRoYXQgb2JqZWN0IG5lZWRzIHRv IGFsbG9jYXRlIHN5c3RlbSBtZW1vcnkuIFRoaXMgdmFsdWUgc2hvdWxkIG5ldmVyIGJlIHNldCB0 byAwLgotLSAgICAgIC8vISBccmV0dXJucyBubmV4dF9zaXplLgotLSAgICAgIG5leHRfc2l6ZSA9 IHN0YXJ0X3NpemUgPSBubmV4dF9zaXplOwotKyAgICB7IC8vISBTZXQgbnVtYmVyIG9mIGNodW5r cyB0byByZXF1ZXN0IGZyb20gdGhlIHN5c3RlbSB0aGUgbmV4dCB0aW1lIHRoYXQgb2JqZWN0IG5l ZWRzIHRvIGFsbG9jYXRlIHN5c3RlbSBtZW1vcnkuIFRoaXMgdmFsdWUgc2hvdWxkIG5ldmVyIGJl IHNldCB0byAwLiAgICAgCi0rICAgICAgQk9PU1RfVVNJTkdfU1REX01JTigpOwotKyAgICAgIG5l eHRfc2l6ZSA9IHN0YXJ0X3NpemUgPSBtaW4gQk9PU1RfUFJFVkVOVF9NQUNST19TVUJTVElUVVRJ T04obm5leHRfc2l6ZSwgbWF4X2NodW5rcygpKTsKLSAgICAgfQotICAgICBzaXplX3R5cGUgZ2V0 X21heF9zaXplKCkgY29uc3QKLUBAIC00MTAsNSArNDIzLDYgQEAKLSAgICAgdm9pZCBzZXRfbWF4 X3NpemUoY29uc3Qgc2l6ZV90eXBlIG5tYXhfc2l6ZSkKLSAgICAgeyAvLyEgU2V0IG1heF9zaXpl LgotLSAgICAgIG1heF9zaXplID0gbm1heF9zaXplOwotKyAgICAgIEJPT1NUX1VTSU5HX1NURF9N SU4oKTsKLSsgICAgICBtYXhfc2l6ZSA9IG1pbiBCT09TVF9QUkVWRU5UX01BQ1JPX1NVQlNUSVRV VElPTihubWF4X3NpemUsIG1heF9jaHVua3MoKSk7Ci0gICAgIH0KLSAgICAgc2l6ZV90eXBlIGdl dF9yZXF1ZXN0ZWRfc2l6ZSgpIGNvbnN0Ci1AQCAtNzEzLDcgKzcyNyw3IEBACi0gICBCT09TVF9V U0lOR19TVERfTUlOKCk7Ci0gICBpZighbWF4X3NpemUpCi0tICAgIG5leHRfc2l6ZSA8PD0gMTsK LSsgICAgc2V0X25leHRfc2l6ZShuZXh0X3NpemUgPDwgMSk7Ci0gICBlbHNlIGlmKCBuZXh0X3Np emUqcGFydGl0aW9uX3NpemUvcmVxdWVzdGVkX3NpemUgPCBtYXhfc2l6ZSkKLS0gICAgbmV4dF9z aXplID0gbWluIEJPT1NUX1BSRVZFTlRfTUFDUk9fU1VCU1RJVFVUSU9OKG5leHRfc2l6ZSA8PCAx LCBtYXhfc2l6ZSpyZXF1ZXN0ZWRfc2l6ZS8gcGFydGl0aW9uX3NpemUpOwotKyAgICBzZXRfbmV4 dF9zaXplKG1pbiBCT09TVF9QUkVWRU5UX01BQ1JPX1NVQlNUSVRVVElPTihuZXh0X3NpemUgPDwg MSwgbWF4X3NpemUgKiByZXF1ZXN0ZWRfc2l6ZSAvIHBhcnRpdGlvbl9zaXplKSk7Ci0gCi0gICAv LyAgaW5pdGlhbGl6ZSBpdCwKLUBAIC03NTMsNyArNzY3LDcgQEAKLSAgIEJPT1NUX1VTSU5HX1NU RF9NSU4oKTsKLSAgIGlmKCFtYXhfc2l6ZSkKLS0gICAgbmV4dF9zaXplIDw8PSAxOwotKyAgICBz ZXRfbmV4dF9zaXplKG5leHRfc2l6ZSA8PCAxKTsKLSAgIGVsc2UgaWYoIG5leHRfc2l6ZSpwYXJ0 aXRpb25fc2l6ZS9yZXF1ZXN0ZWRfc2l6ZSA8IG1heF9zaXplKQotLSAgICBuZXh0X3NpemUgPSBt aW4gQk9PU1RfUFJFVkVOVF9NQUNST19TVUJTVElUVVRJT04obmV4dF9zaXplIDw8IDEsIG1heF9z aXplKnJlcXVlc3RlZF9zaXplLyBwYXJ0aXRpb25fc2l6ZSk7Ci0rICAgIHNldF9uZXh0X3NpemUo bWluIEJPT1NUX1BSRVZFTlRfTUFDUk9fU1VCU1RJVFVUSU9OKG5leHRfc2l6ZSA8PCAxLCBtYXhf c2l6ZSAqIHJlcXVlc3RlZF9zaXplIC8gcGFydGl0aW9uX3NpemUpKTsKLSAKLSAgIC8vICBpbml0 aWFsaXplIGl0LAotQEAgLTc5Nyw0ICs4MTEsNiBAQAotICAgLy8hIFxyZXR1cm5zIEFkZHJlc3Mg b2YgY2h1bmsgbiBpZiBhbGxvY2F0ZWQgb2suCi0gICAvLyEgXHJldHVybnMgMCBpZiBub3QgZW5v dWdoIG1lbW9yeSBmb3IgbiBjaHVua3MuCi0rICBpZiAobiA+IG1heF9jaHVua3MoKSkKLSsgICAg cmV0dXJuIDA7Ci0gCi0gICBjb25zdCBzaXplX3R5cGUgcGFydGl0aW9uX3NpemUgPSBhbGxvY19z aXplKCk7Ci1AQCAtODQ1LDcgKzg2MSw3IEBACi0gICBCT09TVF9VU0lOR19TVERfTUlOKCk7Ci0g ICBpZighbWF4X3NpemUpCi0tICAgIG5leHRfc2l6ZSA8PD0gMTsKLSsgICAgc2V0X25leHRfc2l6 ZShuZXh0X3NpemUgPDwgMSk7Ci0gICBlbHNlIGlmKCBuZXh0X3NpemUqcGFydGl0aW9uX3NpemUv cmVxdWVzdGVkX3NpemUgPCBtYXhfc2l6ZSkKLS0gICAgbmV4dF9zaXplID0gbWluIEJPT1NUX1BS RVZFTlRfTUFDUk9fU1VCU1RJVFVUSU9OKG5leHRfc2l6ZSA8PCAxLCBtYXhfc2l6ZSpyZXF1ZXN0 ZWRfc2l6ZS8gcGFydGl0aW9uX3NpemUpOwotKyAgICBzZXRfbmV4dF9zaXplKG1pbiBCT09TVF9Q UkVWRU5UX01BQ1JPX1NVQlNUSVRVVElPTihuZXh0X3NpemUgPDwgMSwgbWF4X3NpemUgKiByZXF1 ZXN0ZWRfc2l6ZSAvIHBhcnRpdGlvbl9zaXplKSk7Ci0gCi0gICAvLyAgaW5zZXJ0IGl0IGludG8g dGhlIGxpc3QsCi1JbmRleDogbGlicy9wb29sL3Rlc3QvdGVzdF9idWdfNjcwMS5jcHAKLT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KLS0tLSBhL2xpYnMvcG9vbC90ZXN0L3Rlc3RfYnVnXzY3MDEuY3BwCShyZXZpc2lvbiA3 ODMyNikKLSsrKyBiL2xpYnMvcG9vbC90ZXN0L3Rlc3RfYnVnXzY3MDEuY3BwCShyZXZpc2lvbiA3 ODMyNikKLUBAIC0wLDAgKzEsMjcgQEAKLSsvKiBDb3B5cmlnaHQgKEMpIDIwMTIgw4l0aWVubmUg RHVwdWlzCi0rKiAKLSsqIFVzZSwgbW9kaWZpY2F0aW9uIGFuZCBkaXN0cmlidXRpb24gaXMgc3Vi amVjdCB0byB0aGUgCi0rKiBCb29zdCBTb2Z0d2FyZSBMaWNlbnNlLCBWZXJzaW9uIDEuMC4gKFNl ZSBhY2NvbXBhbnlpbmcKLSsqIGZpbGUgTElDRU5TRV8xXzAudHh0IG9yIGh0dHA6Ly93d3cuYm9v c3Qub3JnL0xJQ0VOU0VfMV8wLnR4dCkKLSsqLwotKwotKy8vIFRlc3Qgb2YgYnVnICM2NzAxICho dHRwczovL3N2bi5ib29zdC5vcmcvdHJhYy9ib29zdC90aWNrZXQvNjcwMSkKLSsKLSsjaW5jbHVk ZSA8Ym9vc3QvcG9vbC9vYmplY3RfcG9vbC5ocHA+Ci0rI2luY2x1ZGUgPGJvb3N0L2xpbWl0cy5o cHA+Ci0rCi0raW50IG1haW4oKQotK3sKLSsgIGJvb3N0Ojpwb29sPD4gcCgxMDI0LCBzdGQ6Om51 bWVyaWNfbGltaXRzPHNpemVfdD46Om1heCgpIC8gNzY4KTsKLSsKLSsgIHZvaWQgKnggPSBwLm1h bGxvYygpOwotKyAgQk9PU1RfQVNTRVJUKCF4KTsKLSsgIAotKyAgQk9PU1RfQVNTRVJUKHN0ZDo6 bnVtZXJpY19saW1pdHM8c2l6ZV90Pjo6bWF4KCkgLyAxMDI0ID49IHAuZ2V0X25leHRfc2l6ZSgp KTsKLSsgIEJPT1NUX0FTU0VSVChzdGQ6Om51bWVyaWNfbGltaXRzPHNpemVfdD46Om1heCgpIC8g MTAyNCA+PSBwLmdldF9tYXhfc2l6ZSgpKTsKLSsKLSsgIHZvaWQgKnkgPSBwLm9yZGVyZWRfbWFs bG9jKHN0ZDo6bnVtZXJpY19saW1pdHM8c2l6ZV90Pjo6bWF4KCkgLyA3NjgpOwotKyAgQk9PU1Rf QVNTRVJUKCF5KTsKLSsKLSsgIHJldHVybiAwOwotK30KCmRpZmYgLS1naXQgYS9ib29zdC0xLjc2 LjAtZml4X211bHRpcHJlY2lzaW9uX2lzc3VlXzQxOS1wcGM2NGxlLnBhdGNoIGIvYm9vc3QtMS43 Ni4wLWZpeF9tdWx0aXByZWNpc2lvbl9pc3N1ZV80MTktcHBjNjRsZS5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggNzE1NTJiZi4uMDAwMDAwMAotLS0gYS9ib29zdC0xLjc2LjAt Zml4X211bHRpcHJlY2lzaW9uX2lzc3VlXzQxOS1wcGM2NGxlLnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsMjcgKzAsMCBAQAotRnJvbSBkMTM0M2YyOGRjYmUyNWIxMDBiMDgyYjM0Nzc1YmQ5MmVh ZDQ2MDJjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbToganptYWRkb2NrIDxqb2huQGpv aG5tYWRkb2NrLmNvLnVrPgotRGF0ZTogVHVlLCAyNSBKYW4gMjAyMiAwOToyNzo0MCArMDAwMAot U3ViamVjdDogW1BBVENIXSBVcGRhdGUgZ2NjIEludGVsIGludHJpbnNpYyB1c2FnZSBjb25maWcu IEZpeGVzCi0gaHR0cHM6Ly9naXRodWIuY29tL2Jvb3N0b3JnL211bHRpcHJlY2lzaW9uL2lzc3Vl cy80MTkuCi0KLS0tLQotIGluY2x1ZGUvYm9vc3QvbXVsdGlwcmVjaXNpb24vY3BwX2ludC9pbnRl bF9pbnRyaW5zaWNzLmhwcCB8IDYgKysrKystCi0gMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQotCi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9ib29zdC9tdWx0aXBy ZWNpc2lvbi9jcHBfaW50L2ludGVsX2ludHJpbnNpY3MuaHBwIGIvaW5jbHVkZS9ib29zdC9tdWx0 aXByZWNpc2lvbi9jcHBfaW50L2ludGVsX2ludHJpbnNpY3MuaHBwCi1pbmRleCBlYjQ2MjRiYjQu LjM3NzE3Y2Q1MSAxMDA2NDQKLS0tLSBhL2Jvb3N0L211bHRpcHJlY2lzaW9uL2NwcF9pbnQvaW50 ZWxfaW50cmluc2ljcy5ocHAKLSsrKyBiL2Jvb3N0L211bHRpcHJlY2lzaW9uL2NwcF9pbnQvaW50 ZWxfaW50cmluc2ljcy5ocHAKLUBAIC0xOSw3ICsxOSwxMSBAQAotIC8vIElmIHRoaXMgaXMgR0ND L2NsYW5nLCB0aGVuIGNoZWNrIHRoYXQgdGhlIGFjdHVhbCBpbnRyaW5zaWMgZXhpc3RzOgotIC8v Ci0gI2lmIGRlZmluZWQoX19oYXNfYnVpbHRpbikgJiYgZGVmaW5lZChfX0dOVUNfXykKLS0jaWYg IV9faGFzX2J1aWx0aW4oX19idWlsdGluX2lhMzJfYWRkY2Fycnl4X3U2NCkgJiYgZGVmaW5lZChC T09TVF9NUF9IQVNfSU1NSU5UUklOX0gpICYmICEoZGVmaW5lZChCT09TVF9HQ0MpICYmIChfX0dO VUNfXyA+PSA5KSkKLSsjaWYgIV9faGFzX2J1aWx0aW4oX19idWlsdGluX2lhMzJfYWRkY2Fycnl4 X3U2NCkgJiYgZGVmaW5lZChCT09TVF9NUF9IQVNfSU1NSU5UUklOX0gpIFwKLSsgICAmJiAhKGRl ZmluZWQoQk9PU1RfR0NDKSAmJiAoX19HTlVDX18gPj0gOSkgXAotKyAgICAgICYmIChkZWZpbmVk KF9fYW1kNjRfXykgfHwgZGVmaW5lZChfX2FtZDY0KSB8fCBkZWZpbmVkKF9feDg2XzY0X18pIHx8 IGRlZmluZWQoX194ODZfNjQpXAotKyAgICAgICAgICB8fCBkZWZpbmVkKGkzODYpIHx8IGRlZmlu ZWQoX19pMzg2KSB8fCBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9NX0FNRDY0KSBcCi0r ICAgICAgICAgIHx8IGRlZmluZWQoX01fWDY0KSB8fCBkZWZpbmVkKF9fYW1kNjRfXykgfHwgZGVm aW5lZChfTV9YNjQpKSkKLSAjdW5kZWYgQk9PU1RfTVBfSEFTX0lNTUlOVFJJTl9ICi0gI2VuZGlm Ci0gI2VsaWYgZGVmaW5lZChCT09TVF9NUF9IQVNfSU1NSU5UUklOX0gpICYmIGRlZmluZWQoX19H TlVDX18pICYmICEoZGVmaW5lZChCT09TVF9HQ0MpICYmIChfX0dOVUNfXyA+PSA5KSkKCmRpZmYg LS1naXQgYS9kZWFkLnBhY2thZ2UgYi9kZWFkLnBhY2thZ2UKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uYWQ4NDdkMQotLS0gL2Rldi9udWxsCisrKyBiL2RlYWQucGFja2FnZQpA QCAtMCwwICsxIEBACitVcHN0cmVhbSBFT0wgcmVhY2hlZCBvbiAwNC8yMDI2OyBubyBsb25nZXIg bWFpbnRhaW5lZAoKZGlmZiAtLWdpdCBhL2dhdGluZy55YW1sIGIvZ2F0aW5nLnlhbWwKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjY2JhMGEuLjAwMDAwMDAKLS0tIGEvZ2F0aW5nLnlh bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2ICswLDAgQEAKLS0tLSAhUG9saWN5Ci1wcm9kdWN0X3Zl cnNpb25zOgotICAtIHJoZWwtKgotZGVjaXNpb25fY29udGV4dDogb3NjaV9jb21wb3NlX2dhdGUK LXJ1bGVzOgotICAtICFQYXNzaW5nVGVzdENhc2VSdWxlIHt0ZXN0X2Nhc2VfbmFtZTogYmFzZW9z LWNpLmJyZXctYnVpbGQudGllcjEuZnVuY3Rpb25hbH0KCmRpZmYgLS1naXQgYS9teS5jbmYuaW4g Yi9teS5jbmYuaW4KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJiYjllODguLjAwMDAw MDAKLS0tIGEvbXkuY25mLmluCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotIwotIyBU aGlzIGdyb3VwIGlzIHJlYWQgYm90aCBib3RoIGJ5IHRoZSBjbGllbnQgYW5kIHRoZSBzZXJ2ZXIK LSMgdXNlIGl0IGZvciBvcHRpb25zIHRoYXQgYWZmZWN0IGV2ZXJ5dGhpbmcKLSMKLVtjbGllbnQt c2VydmVyXQotCi0jCi0jIFRoaXMgZ3JvdXAgaXMgcmVhZCBieSB0aGUgc2VydmVyCi0jCi1bbXlz cWxkXQotCi0jCi0jIGluY2x1ZGUgYWxsIGZpbGVzIGZyb20gdGhlIGNvbmZpZyBkaXJlY3RvcnkK LSMKLSFpbmNsdWRlZGlyIEBTWVNDT05GMkRJUkAKLQoKZGlmZiAtLWdpdCBhL215c3FsLWM5OS5w YXRjaCBiL215c3FsLWM5OS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTM1 ZTY0Zi4uMDAwMDAwMAotLS0gYS9teXNxbC1jOTkucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwx MiArMCwwIEBACi1kaWZmIC11ciBteXNxbC04LjAuMzUub3JpZy9wbHVnaW4vaW5ub2RiX21lbWNh Y2hlZC9kYWVtb25fbWVtY2FjaGVkL2RhZW1vbi9tZW1jYWNoZWQuYyBteXNxbC04LjAuMzUvcGx1 Z2luL2lubm9kYl9tZW1jYWNoZWQvZGFlbW9uX21lbWNhY2hlZC9kYWVtb24vbWVtY2FjaGVkLmMK LS0tLSBteXNxbC04LjAuMzUub3JpZy9wbHVnaW4vaW5ub2RiX21lbWNhY2hlZC9kYWVtb25fbWVt Y2FjaGVkL2RhZW1vbi9tZW1jYWNoZWQuYwkyMDIzLTEwLTEyIDEzOjQ1OjAxLjAwMDAwMDAwMCAr MDIwMAotKysrIG15c3FsLTguMC4zNS9wbHVnaW4vaW5ub2RiX21lbWNhY2hlZC9kYWVtb25fbWVt Y2FjaGVkL2RhZW1vbi9tZW1jYWNoZWQuYwkyMDIzLTEyLTE5IDEwOjQ4OjQ2LjcxODAwNjYyNCAr MDEwMAotQEAgLTQwNzAsNyArNDA3MCw3IEBACi0gICAgIGRvIHsKLSAgICAgICAgIHdoaWxlKGtl eV90b2tlbi0+bGVuZ3RoICE9IDApIHsKLSAgICAgICAgICAgICAvKiB3aGV0aGVyIHRoZXJlIGFy ZSBtb3JlIGtleXMgdG8gZmV0Y2ggKi8KLS0gICAgICAgICAgICBib29sIG5leHRfZ2V0ID0gKGtl eV90b2tlbiArIDEpLT52YWx1ZTsKLSsgICAgICAgICAgICBib29sIG5leHRfZ2V0ID0gKGtleV90 b2tlbiArIDEpLT52YWx1ZSAhPSBOVUxMOwotIAotICAgICAgICAgICAgIGtleSA9IGtleV90b2tl bi0+dmFsdWU7Ci0gICAgICAgICAgICAgbmtleSA9IGtleV90b2tlbi0+bGVuZ3RoOwoKZGlmZiAt LWdpdCBhL215c3FsLWNoZWNrLXNvY2tldC5zaCBiL215c3FsLWNoZWNrLXNvY2tldC5zaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjE1Y2QzMi4uMDAwMDAwMAotLS0gYS9teXNxbC1j aGVjay1zb2NrZXQuc2gKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBACi0jIS9iaW4vc2gK LQotIyBXZSBjaGVjayBpZiB0aGVyZSBpcyBhbHJlYWR5IGEgcHJvY2VzcyB1c2luZyB0aGUgc29j a2V0IGZpbGUsCi0jIHNpbmNlIG90aGVyd2lzZSB0aGUgc3lzdGVtZCBzZXJ2aWNlIGZpbGUgY291 bGQgcmVwb3J0IGZhbHNlCi0jIHBvc2l0aXZlIHJlc3VsdCB3aGVuIHN0YXJ0aW5nIGFuZCBteXNx bGRfc2FmZSBjb3VsZCByZW1vdmUKLSMgYSBzb2NrZXQgZmlsZSwgd2hpY2ggaXMgYWN0dWFsbHkg YmVpbmcgdXNlZCBieSBhIGRpZmZlcmVudCBkYWVtb24uCi0KLXNvdXJjZSAiYGRpcm5hbWUgJHtC QVNIX1NPVVJDRVswXX1gL215c3FsLXNjcmlwdHMtY29tbW9uIgotCi1pZiB0ZXN0IC1lICIkc29j a2V0ZmlsZSIgOyB0aGVuCi0gICAgZWNobyAiU29ja2V0IGZpbGUgJHNvY2tldGZpbGUgZXhpc3Rz LiIgPiYyCi0KLSAgICAjIG5vIHdyaXRlIHBlcm1pc3Npb25zCi0gICAgaWYgISB0ZXN0IC13ICIk c29ja2V0ZmlsZSIgOyB0aGVuCi0gICAgICAgIGVjaG8gIk5vdCBlbm91Z2ggcGVybWlzc2lvbiB0 byB3cml0ZSB0byB0aGUgc29ja2V0IGZpbGUgJHNvY2tldGZpbGUsIHdoaWNoIGlzIHN1c3BpY2lv dXMuIiA+JjIKLSAgICAgICAgZWNobyAiUGxlYXNlLCByZW1vdmUgJHNvY2tldGZpbGUgbWFudWFs bHkgdG8gc3RhcnQgdGhlIHNlcnZpY2UuIiA+JjIKLSAgICAgICAgZXhpdCAxCi0gICAgZmkKLQot ICAgICMgbm90IGEgc29ja2V0IGZpbGUKLSAgICBpZiAhIHRlc3QgLVMgIiRzb2NrZXRmaWxlIiA7 IHRoZW4KLSAgICAgICAgZWNobyAiVGhlIGZpbGUgJHNvY2tldGZpbGUgaXMgbm90IGEgc29ja2V0 IGZpbGUsIHdoaWNoIGlzIHN1c3BpY2lvdXMuIiA+JjIKLSAgICAgICAgZWNobyAiUGxlYXNlLCBy ZW1vdmUgJHNvY2tldGZpbGUgbWFudWFsbHkgdG8gc3RhcnQgdGhlIHNlcnZpY2UuIiA+JjIKLSAg ICAgICAgZXhpdCAxCi0gICAgZmkKLQotICAgICMgc29tZSBwcm9jZXNzIHVzZXMgdGhlIHNvY2tl dCBmaWxlCi0gICAgaWYgZnVzZXIgIiRzb2NrZXRmaWxlIiAmPi9kZXYvbnVsbCA7IHRoZW4KLSAg ICAgICAgc29ja2V0cGlkPSQoZnVzZXIgIiRzb2NrZXRmaWxlIiAyPi9kZXYvbnVsbCkKLSAgICAg ICAgZWNobyAiSXMgYW5vdGhlciBNeVNRTCBkYWVtb24gYWxyZWFkeSBydW5uaW5nIHdpdGggdGhl IHNhbWUgdW5peCBzb2NrZXQ/IiA+JjIKLSAgICAgICAgZWNobyAiUGxlYXNlLCBzdG9wIHRoZSBw cm9jZXNzICRzb2NrZXRwaWQgb3IgcmVtb3ZlICRzb2NrZXRmaWxlIG1hbnVhbGx5IHRvIHN0YXJ0 IHRoZSBzZXJ2aWNlLiIgPiYyCi0gICAgICAgIGV4aXQgMQotICAgIGZpCi0KLSAgICAjIHNvY2tl dCBmaWxlIGlzIGEgZ2FyYmFnZQotICAgIGVjaG8gIk5vIHByb2Nlc3MgaXMgdXNpbmcgJHNvY2tl dGZpbGUsIHdoaWNoIG1lYW5zIGl0IGlzIGEgZ2FyYmFnZSwgc28gaXQgd2lsbCBiZSByZW1vdmVk IGF1dG9tYXRpY2FsbHkuIiA+JjIKLWZpCi0KLWV4aXQgMAoKZGlmZiAtLWdpdCBhL215c3FsLWZp bGUtY29udGVudHMucGF0Y2ggYi9teXNxbC1maWxlLWNvbnRlbnRzLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwZjFjZGJhLi4wMDAwMDAwCi0tLSBhL215c3FsLWZpbGUtY29u dGVudHMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBACi1VcHN0cmVhbSBjaG9v c2VzIHRvIGluc3RhbGwgSU5GT19TUkMgYW5kIElORk9fQklOIGludG8gdGhlIGRvY3MgZGlyLCB3 aGljaAotYnJlYWtzIGF0IGxlYXN0IHR3byBwYWNrYWdpbmcgY29tbWFuZG1lbnRzLCBzbyB3ZSBw dXQgdGhlbSBpbnRvICRsaWJkaXIKLWluc3RlYWQuICBUaGF0IG1lYW5zIHdlIGhhdmUgdG8gaGFj ayB0aGUgZmlsZV9jb250ZW50cyByZWdyZXNzaW9uIHRlc3QKLXRvIGtub3cgYWJvdXQgdGhpcy4K LQotUmVjb21tZW5kYXRpb24gdGhleSBjaGFuZ2UgaXMgYXQgaHR0cDovL2J1Z3MubXlzcWwuY29t L2J1Zy5waHA/aWQ9NjE0MjUKLQotZGlmZiAtLWdpdCBhL215c3FsLXRlc3QvdC9maWxlX2NvbnRl bnRzLnRlc3QgYi9teXNxbC10ZXN0L3QvZmlsZV9jb250ZW50cy50ZXN0Ci1pbmRleCA3NWY4Yzkz Li45NzMyOTFjIDEwMDY0NAotLS0tIGEvbXlzcWwtdGVzdC90L2ZpbGVfY29udGVudHMudGVzdAot KysrIGIvbXlzcWwtdGVzdC90L2ZpbGVfY29udGVudHMudGVzdAotQEAgLTEyLDcgKzEyLDcgQEAK LSAtLXBlcmwKLSBwcmludCAiXG5DaGVja2luZyAnSU5GT19TUkMnIGFuZCAnSU5GT19CSU4nXG4i OwotICRkaXJfYmluID0gJEVOVnsnTVlTUUxfQklORElSJ307Ci0taWYgKCRkaXJfYmluID1+IG18 Xi91c3IvfCkgewotK2lmICgkZGlyX2JpbiA9fiBtfC4qL3Vzci8kfCkgewotICAgIyBSUE0gcGFj a2FnZQotICAgJGRpcl9kb2NzID0gJGRpcl9iaW47Ci0gICAkZGlyX2RvY3MgPX4gc3wvbGlifC9z aGFyZS9kb2N8OwotQEAgLTM1LDcgKzM1LDcgQEAgaWYgKCRkaXJfYmluID1+IG18Xi91c3IvfCkg ewotICAgICAgIH0KLSAgICAgfQotICAgfQotLX0gZWxzaWYgKCRkaXJfYmluID1+IG18L3VzciR8 KSB7Ci0rfSBlbHNpZiAoJGRpcl9iaW4gPX4gbXwuKi91c3IkfCkgewotICAgIyBSUE0gYnVpbGQg ZHVyaW5nIGRldmVsb3BtZW50Ci0gICAkZGlyX2RvY3MgPSAiJGRpcl9iaW4vc2hhcmUvZG9jIjsK LSAgIGlmKC1kICIkZGlyX2RvY3MvcGFja2FnZXMiKSB7Ci1AQCAtNTUsNiArNTUsMTUgQEAgaWYg KCRkaXJfYmluID1+IG18Xi91c3IvfCkgewotICAgICAgICAgJGRpcl9kb2NzID0gZ2xvYiAiJGRp cl9iaW4vc2hhcmUvbXlzcWwtKi9kb2NzIjsKLSAgICAgICB9Ci0gICAgIH0KLSsKLSsgICAgIyBB bGwgdGhlIGFib3ZlIGlzIGVudGlyZWx5IHdhY2tvLCBiZWNhdXNlIHRoZXNlIGZpbGVzIGFyZSBu b3QgZG9jczsKLSsgICAgIyB0aGV5IHNob3VsZCBiZSBrZXB0IGluIGxpYmRpciBpbnN0ZWFkLiAg bXRyIGRvZXMgbm90IHByb3ZpZGUgYSBuaWNlCi0rICAgICMgd2F5IHRvIGZpbmQgbGliZGlyIHRo b3VnaCwgc28gd2UgaGF2ZSB0byBrbHVnZSBpdCBsaWtlIHRoaXM6Ci0rICAgIGlmICgtZCAiJGRp cl9iaW4vbGliNjQvbXlzcWwiKSB7Ci0rICAgICAgICRkaXJfZG9jcyA9ICIkZGlyX2Jpbi9saWI2 NC9teXNxbCI7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAgICRkaXJfZG9jcyA9ICIkZGlyX2Jpbi9s aWIvbXlzcWwiOwotKyAgICB9Ci0gICB9Ci0gfSBlbHNlIHsKLSAgICMgdGFyLmd6IHBhY2thZ2Us IFdpbmRvd3MsIG9yIGRldmVsb3BlciB3b3JrIChpbiBnaXQpCgpkaWZmIC0tZ2l0IGEvbXlzcWwt Zmx1c2gtbG9ncm90YXRlLnBhdGNoIGIvbXlzcWwtZmx1c2gtbG9ncm90YXRlLnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjOWJmZTYwLi4wMDAwMDAwCi0tLSBhL215c3FsLWZs dXNoLWxvZ3JvdGF0ZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLWRpZmYg LU5hdXIgbXlzcWwtOC4wLjQyL3BhY2thZ2luZy9ycG0tY29tbW9uL215c3FsLmxvZ3JvdGF0ZS5p biBteXNxbC04LjAuNDJfcGF0Y2hlZC9wYWNrYWdpbmcvcnBtLWNvbW1vbi9teXNxbC5sb2dyb3Rh dGUuaW4KLS0tLSBteXNxbC04LjAuNDIvcGFja2FnaW5nL3JwbS1jb21tb24vbXlzcWwubG9ncm90 YXRlLmluCTIwMjUtMDctMTAgMTY6MjA6MjYuMDAwMDAwMDAwICswMjAwCi0rKysgbXlzcWwtOC4w LjQyX3BhdGNoZWQvcGFja2FnaW5nL3JwbS1jb21tb24vbXlzcWwubG9ncm90YXRlLmluCTIwMjUt MDctMjkgMTA6MTY6MzkuNTA5ODg0NzIzICswMjAwCi1AQCAtNSwxOCArNSw2IEBACi0gIyBbbXlz cWxkXQotICMgbG9nLWVycm9yPUBMT0dGSUxFX1JQTUAKLSAjCi0tIyBGb3IgdGhlIG15c3FsYWRt aW4gY29tbWFuZHMgYmVsb3cgdG8gd29yaywgcm9vdCBhY2NvdW50Ci0tIyBwYXNzd29yZCBpcyBy ZXF1aXJlZC4gVXNlIG15c3FsX2NvbmZpZ19lZGl0b3IoMSkgdG8gc3RvcmUKLS0jIGF1dGhlbnRp Y2F0aW9uIGNyZWRlbnRpYWxzIGluIHRoZSBlbmNyeXB0ZWQgbG9naW4gcGF0aCBmaWxlCi0tIyB+ Ly5teWxvZ2luLmNuZgotLSMKLS0jIEV4YW1wbGUgdXNhZ2U6Ci0tIwotLSMgIG15c3FsX2NvbmZp Z19lZGl0b3Igc2V0IC0tbG9naW4tcGF0aD1jbGllbnQgLS11c2VyPXJvb3QgLS1ob3N0PWxvY2Fs aG9zdCAtLXBhc3N3b3JkCi0tIwotLSMgV2hlbiB0aGVzZSBhY3Rpb25zIGhhcyBiZWVuIGRvbmUs IHVuLWNvbW1lbnQgdGhlIGZvbGxvd2luZyB0bwotLSMgZW5hYmxlIHJvdGF0aW9uIG9mIG15c3Fs ZCdzIGxvZyBlcnJvci4KLS0jCi0gCi0gI0BMT0dGSUxFX1JQTUAgewotICMgICAgICAgIGNyZWF0 ZSA2NDAgbXlzcWwgbXlzcWwKLUBAIC0yNiwxMSArMTQsNyBAQAotICMgICAgICAgIG1pc3Npbmdv awotICMgICAgICAgIGNvbXByZXNzCi0gIyAgICBwb3N0cm90YXRlCi0tIyAgICAgICAjIGp1c3Qg aWYgbXlzcWxkIGlzIHJlYWxseSBydW5uaW5nCi0tIyAgICAgICBpZiB0ZXN0IC14IEBiaW5kaXJA L215c3FsYWRtaW4gJiYgXAotLSMgICAgICAgICAgQGJpbmRpckAvbXlzcWxhZG1pbiBwaW5nICY+ L2Rldi9udWxsCi0tIyAgICAgICB0aGVuCi0tIyAgICAgICAgICBAYmluZGlyQC9teXNxbGFkbWlu IGZsdXNoLWxvZ3MKLS0jICAgICAgIGZpCi0rIyAgICAgICAjIFNJR1VTUjEgbWFrZXMgdGhlIGRh ZW1vbiB0byBmbHVzaCB0aGUgbG9ncywgbm8gbmVlZCB0byBjb25uZWN0IHRocm91Z2ggbXlzcWxh ZG1pbgotKyMgICAgICAgQGJpbmRpckAvc3lzdGVtY3RsIGtpbGwgLS1zaWduYWw9VVNSMSAtLWtp bGwtd2hvbT1tYWluIG15c3FsZC5zZXJ2aWNlIDI+L2Rldi9udWxsIHx8IHRydWUKLSAjICAgIGVu ZHNjcmlwdAotICN9CgpkaWZmIC0tZ2l0IGEvbXlzcWwtZ2NjLTE1LnBhdGNoIGIvbXlzcWwtZ2Nj LTE1LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwZDNhMjk2Li4wMDAwMDAw Ci0tLSBhL215c3FsLWdjYy0xNS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAK LUZpeCBjb21waWxhdGlvbiB3aXRoIEdDQyAxNQotCi18IEluIGZpbGUgaW5jbHVkZWQgZnJvbSAv YnVpbGRkaXIvYnVpbGQvQlVJTEQvbXlzcWw4LjAtOC4wLjQwLWJ1aWxkL215c3FsLTguMC40MC9w bHVnaW4veC90ZXN0cy9kcml2ZXIvY29ubmVjdG9yL3dhcm5pbmcuY2M6MjY6Ci18IC9idWlsZGRp ci9idWlsZC9CVUlMRC9teXNxbDguMC04LjAuNDAtYnVpbGQvbXlzcWwtOC4wLjQwL3BsdWdpbi94 L3Rlc3RzL2RyaXZlci9jb25uZWN0b3Ivd2FybmluZy5oOjM3OjQyOiBlcnJvcjog4oCYdWludDMy X3TigJkgZG9lcyBub3QgbmFtZSBhIHR5cGUKLXwgICAgMzcgfCAgIFdhcm5pbmcoY29uc3Qgc3Rk OjpzdHJpbmcgJnRleHQsIGNvbnN0IHVpbnQzMl90IGNvZGUsIGNvbnN0IGJvb2wgaXNfbm90ZSkK LXwgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+Ci18IC9idWlsZGRpci9idWlsZC9CVUlMRC9teXNxbDguMC04LjAuNDAtYnVpbGQvbXlzcWwt OC4wLjQwL3BsdWdpbi94L3Rlc3RzL2RyaXZlci9jb25uZWN0b3Ivd2FybmluZy5oOjM0OjE6IG5v dGU6IOKAmHVpbnQzMl904oCZIGlzIGRlZmluZWQgaW4gaGVhZGVyIOKAmDxjc3RkaW50PuKAmTsg dGhpcyBpcyBwcm9iYWJseSBmaXhhYmxlIGJ5IGFkZGluZyDigJgjaW5jbHVkZSA8Y3N0ZGludD7i gJkKLXwgICAgMzMgfCAjaW5jbHVkZSA8dmVjdG9yPgotfCAgICsrKyB8KyNpbmNsdWRlIDxjc3Rk aW50PgotfCAgICAzNCB8IAotfCAvYnVpbGRkaXIvYnVpbGQvQlVJTEQvbXlzcWw4LjAtOC4wLjQw LWJ1aWxkL215c3FsLTguMC40MC9wbHVnaW4veC90ZXN0cy9kcml2ZXIvY29ubmVjdG9yL3dhcm5p bmcuaDo0MTozOiBlcnJvcjog4oCYdWludDMyX3TigJkgZG9lcyBub3QgbmFtZSBhIHR5cGUKLXwg ICAgNDEgfCAgIHVpbnQzMl90IG1fY29kZTsKLXwgICAgICAgfCAgIF5+fn5+fn5+Ci18IC9idWls ZGRpci9idWlsZC9CVUlMRC9teXNxbDguMC04LjAuNDAtYnVpbGQvbXlzcWwtOC4wLjQwL3BsdWdp bi94L3Rlc3RzL2RyaXZlci9jb25uZWN0b3Ivd2FybmluZy5oOjQxOjM6IG5vdGU6IOKAmHVpbnQz Ml904oCZIGlzIGRlZmluZWQgaW4gaGVhZGVyIOKAmDxjc3RkaW50PuKAmTsgdGhpcyBpcyBwcm9i YWJseSBmaXhhYmxlIGJ5IGFkZGluZyDigJgjaW5jbHVkZSA8Y3N0ZGludD7igJkKLXwgL2J1aWxk ZGlyL2J1aWxkL0JVSUxEL215c3FsOC4wLTguMC40MC1idWlsZC9teXNxbC04LjAuNDAvcGx1Z2lu L3gvdGVzdHMvZHJpdmVyL2Nvbm5lY3Rvci93YXJuaW5nLmg6IEluIGNvbnN0cnVjdG9yIOKAmFdh cm5pbmc6Oldhcm5pbmcoY29uc3Qgc3RkOjpzdHJpbmcmLCBpbnQsIGJvb2wp4oCZOgotfCAvYnVp bGRkaXIvYnVpbGQvQlVJTEQvbXlzcWw4LjAtOC4wLjQwLWJ1aWxkL215c3FsLTguMC40MC9wbHVn aW4veC90ZXN0cy9kcml2ZXIvY29ubmVjdG9yL3dhcm5pbmcuaDozODoyMzogZXJyb3I6IGNsYXNz IOKAmFdhcm5pbmfigJkgZG9lcyBub3QgaGF2ZSBhbnkgZmllbGQgbmFtZWQg4oCYbV9jb2Rl4oCZ Ci18ICAgIDM4IHwgICAgICAgOiBtX3RleHQodGV4dCksIG1fY29kZShjb2RlKSwgbV9pc19ub3Rl KGlzX25vdGUpIHt9Ci18ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fgotfCAv YnVpbGRkaXIvYnVpbGQvQlVJTEQvbXlzcWw4LjAtOC4wLjQwLWJ1aWxkL215c3FsLTguMC40MC9w bHVnaW4veC90ZXN0cy9kcml2ZXIvY29ubmVjdG9yL3dhcm5pbmcuY2M6IEluIGZ1bmN0aW9uIOKA mHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0mLCBjb25zdCBXYXJuaW5nJini gJk6Ci18IC9idWlsZGRpci9idWlsZC9CVUlMRC9teXNxbDguMC04LjAuNDAtYnVpbGQvbXlzcWwt OC4wLjQwL3BsdWdpbi94L3Rlc3RzL2RyaXZlci9jb25uZWN0b3Ivd2FybmluZy5jYzozMzo1ODog ZXJyb3I6IOKAmGNvbnN0IGNsYXNzIFdhcm5pbmfigJkgaGFzIG5vIG1lbWJlciBuYW1lZCDigJht X2NvZGXigJkKLXwgICAgMzMgfCAgIG9zIDw8ICh3Lm1faXNfbm90ZSA/ICJOT1RFIiA6ICJXQVJO SU5HIikgPDwgIiB8ICIgPDwgdy5tX2NvZGUgPDwgIiB8ICIKLXwgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn4KLQot LS0tIG15c3FsLTguMC40MC9wbHVnaW4veC90ZXN0cy9kcml2ZXIvY29ubmVjdG9yL3dhcm5pbmcu aAkyMDI0LTA5LTE4IDEyOjA4OjI0LjAwMDAwMDAwMCArMDIwMAotKysrIG15c3FsLTguMC40MC9w bHVnaW4veC90ZXN0cy9kcml2ZXIvY29ubmVjdG9yL3dhcm5pbmcuaF9wYXRjaGVkCTIwMjUtMDEt MjQgMDE6NDE6NTcuODc5NzUzMTA0ICswMTAwCi1AQCAtMzEsNiArMzEsNyBAQAotICNpbmNsdWRl IDxzdHJpbmc+Ci0gI2luY2x1ZGUgPHV0aWxpdHk+Ci0gI2luY2x1ZGUgPHZlY3Rvcj4KLSsjaW5j bHVkZSA8Y3N0ZGludD4KLSAKLSBjbGFzcyBXYXJuaW5nIHsKLSAgcHVibGljOgoKZGlmZiAtLWdp dCBhL215c3FsLWluc3RhbGwtdGVzdC5wYXRjaCBiL215c3FsLWluc3RhbGwtdGVzdC5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWY2NzEzMi4uMDAwMDAwMAotLS0gYS9teXNx bC1pbnN0YWxsLXRlc3QucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi1JbXBy b3ZlIHRoZSBkb2N1bWVudGF0aW9uIHRoYXQgd2lsbCBiZSBpbnN0YWxsZWQgaW4gdGhlIG15c3Fs LXRlc3QgUlBNLgotCi0KLWRpZmYgLU5hdXIgbXlzcWwtNS41LjIwLm9yaWcvbXlzcWwtdGVzdC9S RUFETUUgbXlzcWwtNS41LjIwL215c3FsLXRlc3QvUkVBRE1FCi0tLS0gbXlzcWwtNS41LjIwLm9y aWcvbXlzcWwtdGVzdC9SRUFETUUJMjAxMS0xMi0xNiAxNDo1MjowNS4wMDAwMDAwMDAgLTA1MDAK LSsrKyBteXNxbC01LjUuMjAvbXlzcWwtdGVzdC9SRUFETUUJMjAxMi0wMi0xMCAxNzowNjoxOS41 MzEwODIyNTMgLTA1MDAKLUBAIC0xLDE0ICsxLDI2IEBACi0gVGhpcyBkaXJlY3RvcnkgY29udGFp bnMgYSB0ZXN0IHN1aXRlIGZvciB0aGUgTXlTUUwgZGFlbW9uLiBUbyBydW4KLS10aGUgY3VycmVu dGx5IGV4aXN0aW5nIHRlc3QgY2FzZXMsIHNpbXBseSBleGVjdXRlIC4vbXlzcWwtdGVzdC1ydW4g aW4KLS10aGlzIGRpcmVjdG9yeS4gSXQgd2lsbCBmaXJlIHVwIHRoZSBuZXdseSBidWlsdCBteXNx bGQgYW5kIHRlc3QgaXQuCi0rdGhlIGN1cnJlbnRseSBleGlzdGluZyB0ZXN0IGNhc2VzLCBleGVj dXRlIC4vbXlzcWwtdGVzdC1ydW4gaW4KLSt0aGlzIGRpcmVjdG9yeS4KLSAKLS1Ob3RlIHRoYXQg eW91IGRvIG5vdCBoYXZlIHRvIGhhdmUgdG8gZG8gIm1ha2UgaW5zdGFsbCIsIGFuZCB5b3UgY291 bGQKLS1hY3R1YWxseSBoYXZlIGEgY28tZXhpc3RpbmcgTXlTUUwgaW5zdGFsbGF0aW9uLiBUaGUg dGVzdHMgd2lsbCBub3QKLS1jb25mbGljdCB3aXRoIGl0LgotLQotLUFsbCB0ZXN0cyBtdXN0IHBh c3MuIElmIG9uZSBvciBtb3JlIG9mIHRoZW0gZmFpbCBvbiB5b3VyIHN5c3RlbSwgcGxlYXNlCi0t cmVhZCB0aGUgZm9sbG93aW5nIG1hbnVhbCBzZWN0aW9uIGZvciBpbnN0cnVjdGlvbnMgb24gaG93 IHRvIHJlcG9ydCB0aGUKLS1wcm9ibGVtOgotK0ZvciB1c2UgaW4gUmVkIEhhdCBkaXN0cmlidXRp b25zLCB5b3Ugc2hvdWxkIHJ1biB0aGUgc2NyaXB0IGFzIHVzZXIgbXlzcWwsCi0rc28gdGhlIGJl c3QgYmV0IGlzIHNvbWV0aGluZyBsaWtlCi0rCWNkIC91c3Ivc2hhcmUvbXlzcWwtdGVzdAotKwlz dWRvIC11IG15c3FsIC4vbXlzcWwtdGVzdC1ydW4gLS1za2lwLXRlc3QtbGlzdD1wbGF0Zm9ybS1z cGVjaWZpYy10ZXN0cy5saXN0Ci0rVGhpcyB3aWxsIHVzZSB0aGUgaW5zdGFsbGVkIG15c3FsIGV4 ZWN1dGFibGVzLCBidXQgd2lsbCBydW4gYSBwcml2YXRlIGNvcHkKLStvZiB0aGUgc2VydmVyIHBy b2Nlc3MgKHVzaW5nIGRhdGEgZmlsZXMgd2l0aGluIC91c3Ivc2hhcmUvbXlzcWwtdGVzdCksCi0r c28geW91IG5lZWQgbm90IHN0YXJ0IHRoZSBteXNxbGQgc2VydmljZSBiZWZvcmVoYW5kLgotKwot K1RoZSAiLS1za2lwLXRlc3QtbGlzdD1wbGF0Zm9ybS1zcGVjaWZpYy10ZXN0cy5saXN0IiBvcHRp b24gZXhjbHVkZXMgdGVzdHMgdGhhdCBhcmUKLStrbm93biB0byBmYWlsIG9uIG9uZSBvciBtb3Jl IFJlZC1IYXQtc3VwcG9ydGVkIHBsYXRmb3Jtcy4gIFlvdSBjYW4gb21pdCBpdAotK2lmIHlvdSB3 YW50IHRvIGNoZWNrIHdoZXRoZXIgc3VjaCBmYWlsdXJlcyBvY2N1ciBmb3IgeW91LiAgRG9jdW1l bnRhdGlvbgotK2Fib3V0IHRoZSByZWFzb25zIGZvciBvbWl0dGluZyBzdWNoIHRlc3RzIGNhbiBi ZSBmb3VuZCBpbiB0aGUgZmlsZQotK3BsYXRmb3JtLXNwZWNpZmljLXRlc3RzLmxpc3QuCi0rCi0r VG8gY2xlYW4gdXAgYWZ0ZXJ3YXJkcywgcmVtb3ZlIHRoZSBjcmVhdGVkICJ2YXIiIHN1YmRpcmVj dG9yeSwgZWcKLSsJc3VkbyAtdSBteXNxbCBybSAtcmYgL3Vzci9zaGFyZS9teXNxbC10ZXN0L3Zh cgotKwotK0lmIG9uZSBvciBtb3JlIHRlc3RzIGZhaWwgb24geW91ciBzeXN0ZW0sIHBsZWFzZSBy ZWFkIHRoZSBmb2xsb3dpbmcgbWFudWFsCi0rc2VjdGlvbiBmb3IgaW5zdHJ1Y3Rpb25zIG9uIGhv dyB0byByZXBvcnQgdGhlIHByb2JsZW06Ci0gCi0gaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL215 c3FsL2VuL215c3FsLXRlc3Qtc3VpdGUuaHRtbAotIAotQEAgLTI1LDcgKzM3LDggQEAKLSAKLSBX aXRoIG5vIHRlc3QgY2FzZXMgbmFtZWQgb24gdGhlIGNvbW1hbmQgbGluZSwgbXlzcWwtdGVzdC1y dW4gZmFsbHMgYmFjawotIHRvIHRoZSBub3JtYWwgIm5vbi1leHRlcm4iIGJlaGF2aW9yLiBUaGUg cmVhc29uIGZvciB0aGlzIGlzIHRoYXQgc29tZQotLXRlc3RzIGNhbm5vdCBydW4gd2l0aCBhbiBl eHRlcm5hbCBzZXJ2ZXIuCi0rdGVzdHMgY2Fubm90IHJ1biB3aXRoIGFuIGV4dGVybmFsIHNlcnZl ciAoYmVjYXVzZSB0aGV5IG5lZWQgdG8gY29udHJvbCB0aGUKLStvcHRpb25zIHdpdGggd2hpY2gg dGhlIHNlcnZlciBpcyBzdGFydGVkKS4KLSAKLSAKLSBZb3UgY2FuIGNyZWF0ZSB5b3VyIG93biB0 ZXN0IGNhc2VzLiBUbyBjcmVhdGUgYSB0ZXN0IGNhc2UsIGNyZWF0ZSBhIG5ldwoKZGlmZiAtLWdp dCBhL215c3FsLW10ci5wYXRjaCBiL215c3FsLW10ci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMThmNzJjOC4uMDAwMDAwMAotLS0gYS9teXNxbC1tdHIucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSwxMDQgKzAsMCBAQAotQXZvaWQgZXJyb3JzIGxpa2U6Ci0KLXwgIFBhdGgg bGVuZ3RoICgxMDkpIGlzIGxvbmdlciB0aGFuIG1heGltdW0gc3VwcG9ydGVkIGxlbmd0aCAoMTA4 KSBhbmQgd2lsbCBiZSB0cnVuY2F0ZWQgYXQgL3Vzci9saWI2NC9wZXJsNS92ZW5kb3JfcGVybC9T b2NrZXQucG0gbGluZSA4ODAsIDxHRU4xNjA5ND4gbGluZSAxLgotfCAgd29ya2VyWzJdIG15c3Fs LXRlc3QtcnVuOiAqKiogRVJST1I6IFNvY2tldCBwYXRoICcvYnVpbGRkaXIvYnVpbGQvQlVJTERS T09UL2NvbW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1LnMzOTB4L3Vzci9zaGFyZS9teXNxbC10 ZXN0L3Zhci90bXAvMicgdG9vIGxvbmcsCi18ICBpdCB3b3VsZCBiZSAgdHJ1bmNhdGVkIGFuZCB0 aHVzIG5vdCBwb3NzaWJsZSB0byB1c2UgZm9yIGNvbm5lY3Rpb24gdG8gIE15U1FMIFNlcnZlci4g U2V0IGEgc2hvcnRlciB3aXRoIC0tdG1wZGlyPTxwYXRoPiBvcHRpb24KLQotPT09Ci0KLU9uIEZl ZG9yYSAzMjoKLQotfCAgJCBncmVwIC1lICJQQVRIIiAvdXNyL2luY2x1ZGUvbGludXgvbGltaXRz LmgKLXwgICNkZWZpbmUgUEFUSF9NQVggICAgICAgIDQwOTYJLyogIyBjaGFycyBpbiBhIHBhdGgg bmFtZSBpbmNsdWRpbmcgbnVsICovCi0KLT09PQotCi1UaHVzIHNldHRpbmcgdGhlIG1heGltdW0g cGF0aCBsZW5ndGggb24gRmVkb3JhIHRvIDEwOCBjaGFyYWN0ZXJzIGlzIGp1c3QgdG9vIHNob3J0 LgotCi1CVFcgb24gdGhlIG1vZGVybiBmaWxlc3lzdGVtcyB5b3UgY2FuIGVhc2lseSBjcmVhdGUg cGF0aCBsb25nZXIgdGhhbiBQQVRIX01BWC4KLVRoZSBQQVRIX01BWCBjb25zdGFudCBpcyB1bnNh ZmUuCi1JbnRlcmVzdGluZyBhcnRpY2xlOiBodHRwczovL2luc2FuZWNvZGluZy5ibG9nc3BvdC5j b20vMjAwNy8xMS9wYXRobWF4LXNpbXBseS1pc250Lmh0bWwKLQotPT09Ci0KLVRoZSBxdWVzdGlv biBpcyB3aHkgaGF2ZW4ndCBJIGVuY291bnRlcmVkIHRoaXMgaXNzdWUgdW50aWwgcmVjZW50bHkg PwotCi1BZnRlciB0aGUgcmVjZW50IHR3ZWFrcyB0byB0aGUgdGVzdHN1aXRlIChiZXR3ZWVuIDgu MC4yNCBhbmQgOC4wLjI1IHJlbGVhc2UpLCB0aGUgZ2VuZXJhdGVkIC0tdG1wZGlyIHBhdGggY2hh bmdlZCBmcm9tCi18ICAtLXRtcGRpcj0vYnVpbGRkaXIvYnVpbGQvQlVJTEQvbXlzcWwtOC4wLjI0 L3g4Nl82NC1yZWRoYXQtbGludXgtZ251L215c3FsLXRlc3QvdmFyL3RtcC8KLXRvCi18ICAtLXRt cGRpcj0vYnVpbGRkaXIvYnVpbGQvQlVJTERST09UL2NvbW11bml0eS1teXNxbC04LjAuMjQtMS5m YzM1Lng4Nl82NC91c3Ivc2hhcmUvbXlzcWwtdGVzdC92YXIvdG1wLwotCi09PT0KLQotVGhlIHdo b2xlIHNldHVwIGNoYW5nZWQgYXMgZm9sbG93czoKLUJFRk9SRToKLQotfCAgSW5zdGFsbGluZyBz eXN0ZW0gZGF0YWJhc2UKLXwgICMjIyBzYWZlX3BhdGg6IC9idWlsZGRpci9idWlsZC9CVUlMRC9t eXNxbC04LjAuMjQveDg2XzY0LXJlZGhhdC1saW51eC1nbnUvcnVudGltZV9vdXRwdXRfZGlyZWN0 b3J5Ly8vbXlzcWx0ZXN0X3NhZmVfcHJvY2VzcyAtLXZlcmJvc2UgLS0gL2J1aWxkZGlyL2J1aWxk L0JVSUxEL215c3FsLTguMC4yNC94ODZfNjQtcmVkaGF0LWxpbnV4LWdudS9ydW50aW1lX291dHB1 dF9kaXJlY3RvcnkvbXlzcWxkIC0tbm8tZGVmYXVsdHMgLS1pbml0aWFsaXplLWluc2VjdXJlIC0t bG9vc2Utc2tpcC1uZGJjbHVzdGVyIC0tdG1wZGlyPS9idWlsZGRpci9idWlsZC9CVUlMRC9teXNx bC04LjAuMjQveDg2XzY0LXJlZGhhdC1saW51eC1nbnUvbXlzcWwtdGVzdC92YXIvdG1wLyAtLWNv cmUtZmlsZSAtLWRhdGFkaXI9L2J1aWxkZGlyL2J1aWxkL0JVSUxEL215c3FsLTguMC4yNC94ODZf NjQtcmVkaGF0LWxpbnV4LWdudS9teXNxbC10ZXN0L3Zhci9kYXRhLyAtLXNlY3VyZS1maWxlLXBy aXY9L2J1aWxkZGlyL2J1aWxkL0JVSUxEL215c3FsLTguMC4yNC94ODZfNjQtcmVkaGF0LWxpbnV4 LWdudS9teXNxbC10ZXN0L3ZhciAtLWlubm9kYl9idWZmZXJfcG9vbF9zaXplPTI0TSAtLWlubm9k Yi1sb2ctZmlsZS1zaXplPTVNIC0taW5ub2RiX2F1dG9leHRlbmRfaW5jcmVtZW50PTggLS1jaGFy YWN0ZXItc2V0cy1kaXI9L2J1aWxkZGlyL2J1aWxkL0JVSUxEL215c3FsLTguMC4yNC9zaGFyZS9j aGFyc2V0cyAtLWxvb3NlLWF1dG9fZ2VuZXJhdGVfY2VydHM9T0ZGIC0tbG9vc2Utc2hhMjU2X3Bh c3N3b3JkX2F1dG9fZ2VuZXJhdGVfcnNhX2tleXM9T0ZGIC0tbG9vc2UtY2FjaGluZ19zaGEyX3Bh c3N3b3JkX2F1dG9fZ2VuZXJhdGVfcnNhX2tleXM9T0ZGIC0taW5pdC1maWxlPS9idWlsZGRpci9i dWlsZC9CVUlMRC9teXNxbC04LjAuMjQveDg2XzY0LXJlZGhhdC1saW51eC1nbnUvbXlzcWwtdGVz dC92YXIvdG1wL2Jvb3RzdHJhcC5zcWwKLQotQUZURVI6Ci0KLXwgIEluc3RhbGxpbmcgc3lzdGVt IGRhdGFiYXNlCi18ICAjIyMgc2FmZV9wYXRoOiAvYnVpbGRkaXIvYnVpbGQvQlVJTERST09UL2Nv bW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3IvYmluLy9teXNxbHRlc3Rfc2Fm ZV9wcm9jZXNzIC0tdmVyYm9zZSAtLSAvYnVpbGRkaXIvYnVpbGQvQlVJTERST09UL2NvbW11bml0 eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3IvbGliZXhlYy9teXNxbGQgLS1uby1kZWZh dWx0cyAtLWluaXRpYWxpemUtaW5zZWN1cmUgLS1sb29zZS1za2lwLW5kYmNsdXN0ZXIgLS10bXBk aXI9L2J1aWxkZGlyL2J1aWxkL0JVSUxEUk9PVC9jb21tdW5pdHktbXlzcWwtOC4wLjI0LTEuZmMz NS54ODZfNjQvdXNyL3NoYXJlL215c3FsLXRlc3QvdmFyL3RtcC8gLS1jb3JlLWZpbGUgLS1kYXRh ZGlyPS9idWlsZGRpci9idWlsZC9CVUlMRFJPT1QvY29tbXVuaXR5LW15c3FsLTguMC4yNC0xLmZj MzUueDg2XzY0L3Vzci9zaGFyZS9teXNxbC10ZXN0L3Zhci9kYXRhLyAtLXNlY3VyZS1maWxlLXBy aXY9L2J1aWxkZGlyL2J1aWxkL0JVSUxEUk9PVC9jb21tdW5pdHktbXlzcWwtOC4wLjI0LTEuZmMz NS54ODZfNjQvdXNyL3NoYXJlL215c3FsLXRlc3QvdmFyIC0taW5ub2RiX2J1ZmZlcl9wb29sX3Np emU9MjRNIC0taW5ub2RiLWxvZy1maWxlLXNpemU9NU0gLS1pbm5vZGJfYXV0b2V4dGVuZF9pbmNy ZW1lbnQ9OCAtLWNoYXJhY3Rlci1zZXRzLWRpcj0vYnVpbGRkaXIvYnVpbGQvQlVJTERST09UL2Nv bW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3Ivc2hhcmUvY29tbXVuaXR5LW15 c3FsL2NoYXJzZXRzIC0tbG9vc2UtYXV0b19nZW5lcmF0ZV9jZXJ0cz1PRkYgLS1sb29zZS1zaGEy NTZfcGFzc3dvcmRfYXV0b19nZW5lcmF0ZV9yc2Ffa2V5cz1PRkYgLS1sb29zZS1jYWNoaW5nX3No YTJfcGFzc3dvcmRfYXV0b19nZW5lcmF0ZV9yc2Ffa2V5cz1PRkYgLS1pbml0LWZpbGU9L2J1aWxk ZGlyL2J1aWxkL0JVSUxEUk9PVC9jb21tdW5pdHktbXlzcWwtOC4wLjI0LTEuZmMzNS54ODZfNjQv dXNyL3NoYXJlL215c3FsLXRlc3QvdmFyL3RtcC9ib290c3RyYXAuc3FsCi0KLT09PQotCi1UaGUg bGlrZWx5IGNhdXNlIGlzIHRoZSBhZGRlZAotCi18ICBjZCAle2J1aWxkcm9vdH0le19kYXRhZGly fS9teXNxbC10ZXN0Ci0KLXdoaWNoIHdhcyBub3Qgb3JpZ2luYWxseSBwcmVzZW50IGluIHRoZSBT UEVDZmlsZS4KLQotSG93ZXZlciB0aGUgTWFyaWFEQiBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBo YXZlIHRoaXMgaXNzdWUsIGV2ZW4gdGhvdWdoIGl0IGhhcyB0aGUgc2FtZSBTUEVDZmlsZSAlY2hl Y2sgcGhhc2UgY29kZS4KLQotCi09PT0KLQotSW4gdGhlIGV4dGVuZGVkIGxvZywgeW91IGNhbiBz ZWUgJy90bXAvWGZURkFpczJKbCcgYmVpbmcgY3JlYXRlZCBhbmQgZGVsZXRlZCBzaG9ydCBhZnRl ci4KLUV2ZW4gdGhvdWdoIHRoZSBzY3JpcHQgd2FybnMgYWJvdXQgdGhlIHBhdGggbGVuZ3RoLCB0 cmllcyB0byB3b3JrYXJvdW5kIGl0OyBpdCBkZXN0cm95ZXMgdGhhdCB3b3JrYXJvdW5kIHNob3J0 IGFmdGVyIGFuZCB1c2UgdGhlIHRvby1sb25nIHBhdGggaW5zdGVhZC4KLQotSSdtIG5vdCBzdXJl IHdoZXRoZXIgdGhlIG91dHB1dCBpcyBzeW5jaHJvbm91cywgYnV0IGV2ZW4gaWYgaXQgd2Fzbid0 aXQgc3RpbGwgbG9va3Mgd2VpcmQuCi0KLXwgKyBjZCAvYnVpbGRkaXIvYnVpbGQvQlVJTERST09U L2NvbW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3Ivc2hhcmUvbXlzcWwtdGVz dAotfCBMb2dnaW5nOiAuL215c3FsLXRlc3QtcnVuLnBsICAtLXZlcmJvc2UgLS1wYXJhbGxlbD1h dXRvIC0tZm9yY2UgLS1yZXRyeT0yIC0tc3VpdGUtdGltZW91dD05MDAgLS10ZXN0Y2FzZS10aW1l b3V0PTMwIC0tbXlzcWxkPS0tYmlubG9nLWZvcm1hdD1taXhlZCAtLW1heC10ZXN0LWZhaWw9NSAt LXJlcG9ydC11bnN0YWJsZS10ZXN0cyAtLWNsZWFuLXZhcmRpciAtLXN1aXRlPW1haW4gLS1tZW0g LS1za2lwLXRlc3QtbGlzdD1wbGF0Zm9ybS1zcGVjaWZpYy10ZXN0cy5saXN0Ci18IFBhdGggbGVu Z3RoICgxMDkpIGlzIGxvbmdlciB0aGFuIG1heGltdW0gc3VwcG9ydGVkIGxlbmd0aCAoMTA4KSBh bmQgd2lsbCBiZSB0cnVuY2F0ZWQgYXQgL3Vzci9saWI2NC9wZXJsNS92ZW5kb3JfcGVybC9Tb2Nr ZXQucG0gbGluZSA4ODAuCi18IFRvbyBsb25nIHRtcGRpciBwYXRoICcvYnVpbGRkaXIvYnVpbGQv QlVJTERST09UL2NvbW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3Ivc2hhcmUv bXlzcWwtdGVzdC92YXIvdG1wJyAgY3JlYXRpbmcgYSBzaG9ydGVyIG9uZQotfCAgLSBVc2luZyB0 bXBkaXI6ICcvdG1wL1hmVEZBaXMySmwnCi18ID4gQ29sbGVjdGluZzogbWFpbgotfCA+IHRlc3Rk aXI6IC9idWlsZGRpci9idWlsZC9CVUlMRFJPT1QvY29tbXVuaXR5LW15c3FsLTguMC4yNC0xLmZj MzUueDg2XzY0L3Vzci9zaGFyZS9teXNxbC10ZXN0L3QKLXwgPiByZXNkaXI6IC9idWlsZGRpci9i dWlsZC9CVUlMRFJPT1QvY29tbXVuaXR5LW15c3FsLTguMC4yNC0xLmZjMzUueDg2XzY0L3Vzci9z aGFyZS9teXNxbC10ZXN0L3IKLXwgPiBDb2xsZWN0aW5nOiBpX21haW4KLXwgUmVtb3Zpbmcgb2xk IHZhciBkaXJlY3RvcnkKLXwgPiBvcHRfdmFyZGlyOiAvYnVpbGRkaXIvYnVpbGQvQlVJTERST09U L2NvbW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3Ivc2hhcmUvbXlzcWwtdGVz dC92YXIKLXwgPiBSZW1vdmluZyAvYnVpbGRkaXIvYnVpbGQvQlVJTERST09UL2NvbW11bml0eS1t eXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3Ivc2hhcmUvbXlzcWwtdGVzdC92YXIvCi18ID4g UmVtb3ZpbmcgL2Rldi9zaG0vdmFyXzkzM19qZlRiCi18ID4gUmVtb3ZpbmcgL3RtcC9YZlRGQWlz MkpsLwotfCBDcmVhdGluZyB2YXIgZGlyZWN0b3J5ICcvYnVpbGRkaXIvYnVpbGQvQlVJTERST09U L2NvbW11bml0eS1teXNxbC04LjAuMjQtMS5mYzM1Lng4Nl82NC91c3Ivc2hhcmUvbXlzcWwtdGVz dC92YXInCi18ID4gQ3JlYXRpbmcgL2Rldi9zaG0vdmFyXzkzM19qZlRiCi18ICAtIHN5bWxpbmtp bmcgJ3ZhcicgdG8gJy9kZXYvc2htL3Zhcl85MzNfamZUYicKLQotCi0KLQotZGlmZiAtLWdpdCBh L215c3FsLXRlc3QvbXlzcWwtdGVzdC1ydW4ucGwgYi9teXNxbC10ZXN0L215c3FsLXRlc3QtcnVu LnBsCi1pbmRleCAyNmU2YzkyYy4uOWQ4NWM2ZDYgMTAwNzU1Ci0tLS0gbXlzcWwtOC4wLjM5L215 c3FsLXRlc3QvbXlzcWwtdGVzdC1ydW4ucGwJMjAyNC0wOC0xMSAwMToyMDoxMi4yMDcyNjA4NjAg KzAyMDAKLSsrKyBteXNxbC04LjAuMzkvbXlzcWwtdGVzdC9teXNxbC10ZXN0LXJ1bi5wbF9wYXRj aGVkCTIwMjQtMDgtMTEgMjA6NDQ6NDIuMjMwMTQ1MTYwICswMjAwCi1AQCAtMzU2MCwxNyArMzU2 MCw2IEBAIHN1YiBzZXR1cF92YXJkaXIoKSB7Ci0gICBta3BhdGgoIiRvcHRfdmFyZGlyL3RtcCIp OwotICAgbWtwYXRoKCRvcHRfdG1wZGlyKSBpZiAoJG9wdF90bXBkaXIgbmUgIiRvcHRfdmFyZGly L3RtcCIpOwotIAotLSAgIyBPbiBzb21lIG9wZXJhdGluZyBzeXN0ZW1zLCB0aGVyZSBpcyBhIGxp bWl0IHRvIHRoZSBsZW5ndGggb2YgYQotLSAgIyBVTklYIGRvbWFpbiBzb2NrZXQncyBwYXRoIGZh ciBiZWxvdyBQQVRIX01BWC4gRG9uJ3QgYWxsb3cgdGhhdAotLSAgIyB0byBoYXBwZW4uCi0tICBt eSAkcmVzID0KLS0gICAgY2hlY2tfc29ja2V0X3BhdGhfbGVuZ3RoKCIkb3B0X3RtcGRpci9teXNx bGQuTk4uc29jayIsICRvcHRfcGFyYWxsZWwsICR0bXBkaXJfcGF0aF91cGRhdGVkKTsKLS0gIGlm ICgkcmVzKSB7Ci0tICAgIG10cl9lcnJvcigiU29ja2V0IHBhdGggJyRvcHRfdG1wZGlyJyB0b28g bG9uZywgaXQgd291bGQgYmUgIiwKLS0gICAgICAgICAgICAgICJ0cnVuY2F0ZWQgYW5kIHRodXMg bm90IHBvc3NpYmxlIHRvIHVzZSBmb3IgY29ubmVjdGlvbiB0byAiLAotLSAgICAgICAgICAgICAg Ik15U1FMIFNlcnZlci4gU2V0IGEgc2hvcnRlciB3aXRoIC0tdG1wZGlyPTxwYXRoPiBvcHRpb24i KTsKLS0gIH0KLS0KLSAgICMgQ29weSBhbGwgZmlsZXMgZnJvbSBzdGRfZGF0YSBpbnRvIHZhci9z dGRfZGF0YQotICAgIyBhbmQgbWFrZSB0aGVtIHdvcmxkIHJlYWRhYmxlCi0gICBjb3B5dHJlZSgi JGdsb2JfbXlzcWxfdGVzdF9kaXIvc3RkX2RhdGEiLCAiJG9wdF92YXJkaXIvc3RkX2RhdGEiLCAi MDAyMiIpCgpkaWZmIC0tZ2l0IGEvbXlzcWwtb3BlbnNzbC1lbmdpbmUucGF0Y2ggYi9teXNxbC1v cGVuc3NsLWVuZ2luZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODQwZmU3 Mi4uMDAwMDAwMAotLS0gYS9teXNxbC1vcGVuc3NsLWVuZ2luZS5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDE0ICswLDAgQEAKLS0tLSBteXNxbC04LjAuNDIvcGx1Z2luL2dyb3VwX3JlcGxpY2F0 aW9uL2xpYm15c3FsZ2NzL3NyYy9iaW5kaW5ncy94Y29tL3hjb20vbmV0d29yay94Y29tX25ldHdv cmtfcHJvdmlkZXJfc3NsX25hdGl2ZV9saWIuY2MJMjAyNS0wMy0zMSAxMDoxOToyNy4wMDAwMDAw MDAgKzAyMDAKLSsrKyBteXNxbC04LjAuNDItcGF0Y2hlZC9wbHVnaW4vZ3JvdXBfcmVwbGljYXRp b24vbGlibXlzcWxnY3Mvc3JjL2JpbmRpbmdzL3hjb20veGNvbS9uZXR3b3JrL3hjb21fbmV0d29y a19wcm92aWRlcl9zc2xfbmF0aXZlX2xpYi5jYwkyMDI1LTA0LTI0IDE1OjI3OjI5LjE1NTI4NzM5 NyArMDIwMAotQEAgLTUwLDkgKzUwLDkgQEAKLSAjaW5jbHVkZSAibXlfY29tcGlsZXIuaCIKLSAj ZW5kaWYKLSAKLS0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMCi0rI2lm ICFkZWZpbmVkKE9QRU5TU0xfTk9fRU5HSU5FKQotICNpbmNsdWRlIDxvcGVuc3NsL2VuZ2luZS5o PgotLSNlbmRpZiAvKiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEwMDAwMEwgKi8KLSsj ZW5kaWYKLSAKLSAjaW5jbHVkZSAieGNvbS9yZXRyeS5oIgotICNpbmNsdWRlICJ4Y29tL3Rhc2tf ZGVidWcuaCIKCmRpZmYgLS1naXQgYS9teXNxbC1wYXRocy5wYXRjaCBiL215c3FsLXBhdGhzLnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MTcwMjVkLi4wMDAwMDAwCi0tLSBh L215c3FsLXBhdGhzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzMgKzAsMCBAQAotU29tZSBo YXJkLWNvZGVkIHBhdGhzIG1ha2UgcHJvYmxlbXMgd2hlbiBwYWNrYWdlIGlzIGJ1aWx0IGludG8g Y2hyb290IGxpa2UKLVNvZnR3YXJlIENvbGxlY3Rpb25zLiBSZW1vdmluZyB0aGVzZSBoYXJkLWNv ZGVkIHBhdGhzIHNob3VsZCBmaXggaXQuCi0KLVVwc3RyZWFtIHJlcG9ydDogaHR0cHM6Ly9tYXJp YWRiLmF0bGFzc2lhbi5uZXQvYnJvd3NlL01ERVYtNjQ4NQotCi1kaWZmIC1OYXVyIG15c3FsLTgu MC40My9jbWFrZS9pbnN0YWxsX2xheW91dC5jbWFrZSBteXNxbC04LjAuNDNfcGF0Y2hlZC9jbWFr ZS9pbnN0YWxsX2xheW91dC5jbWFrZQotLS0tIG15c3FsLTguMC40My9jbWFrZS9pbnN0YWxsX2xh eW91dC5jbWFrZQkyMDI1LTA3LTA5IDEwOjQ1OjAxLjAwMDAwMDAwMCArMDIwMAotKysrIG15c3Fs LTguMC40M19wYXRjaGVkL2NtYWtlL2luc3RhbGxfbGF5b3V0LmNtYWtlCTIwMjUtMDgtMDUgMDk6 MjI6NTQuNTA2NzgyNTg0ICswMjAwCi1AQCAtMTA2LDcgKzEwNiw3IEBACi0gICAgICIgQ2hvb3Nl IGJldHdlZW4gJHtWQUxJRF9JTlNUQUxMX0xBWU9VVFN9IiApCi0gICBFTkRJRigpCi0gCi0tICBT RVQoU1lTQ09ORkRJUiAiJHtDTUFLRV9JTlNUQUxMX1BSRUZJWH0vZXRjIgotKyAgU0VUKFNZU0NP TkZESVIgIi9ldGMiCi0gICAgIENBQ0hFIFBBVEggImNvbmZpZyBkaXJlY3RvcnkgKGZvciBteS5j bmYpIikKLSAgIE1BUktfQVNfQURWQU5DRUQoU1lTQ09ORkRJUikKLSBFTkRJRigpCi1AQCAtMjAy LDYgKzIwMiw3IEBACi0gRUxTRSgpCi0gICBTRVQoSU5TVEFMTF9TQklORElSX1JQTSAgICAgICAg ICAgICAgICAgInNiaW4iKQotIEVORElGKCkKLStTRVQoSU5TVEFMTF9TWVNDT05GRElSX1JQTSAg ICAgICAgICAgICAgIi9ldGMiKQotICMKLSBJRihDTUFLRV9TWVNURU1fUFJPQ0VTU09SIElOX0xJ U1QgS05PV05fNjRCSVRfQVJDSElURUNUVVJFUykKLSAgIFNFVChJTlNUQUxMX0xJQkRJUl9SUE0g ICAgICAgICAgICAgICAgImxpYjY0L215c3FsIikKLWRpZmYgLU5hdXIgbXlzcWwtOC4wLjQzL215 c3lzL215X2RlZmF1bHQuY2MgbXlzcWwtOC4wLjQzX3BhdGNoZWQvbXlzeXMvbXlfZGVmYXVsdC5j YwotLS0tIG15c3FsLTguMC40My9teXN5cy9teV9kZWZhdWx0LmNjCTIwMjUtMDctMDkgMTA6NDU6 MDEuMDAwMDAwMDAwICswMjAwCi0rKysgbXlzcWwtOC4wLjQzX3BhdGNoZWQvbXlzeXMvbXlfZGVm YXVsdC5jYwkyMDI1LTA4LTA1IDA5OjI0OjU5LjUxMDgwNDc5NyArMDIwMAotQEAgLTE2NTIsMTIg KzE2NTIsMTIgQEAKLSAKLSAjZWxzZQotIAotLSAgZXJyb3JzICs9IGFkZF9kaXJlY3RvcnkoYWxs b2MsICIvZXRjLyIsIGRpcnMpOwotLSAgZXJyb3JzICs9IGFkZF9kaXJlY3RvcnkoYWxsb2MsICIv ZXRjL215c3FsLyIsIGRpcnMpOwotLQotICNpZiBkZWZpbmVkKERFRkFVTFRfU1lTQ09ORkRJUikK LSAgIGlmIChERUZBVUxUX1NZU0NPTkZESVJbMF0pCi0rICB7Ci0gICAgIGVycm9ycyArPSBhZGRf ZGlyZWN0b3J5KGFsbG9jLCBERUZBVUxUX1NZU0NPTkZESVIsIGRpcnMpOwotKyAgICBlcnJvcnMg Kz0gYWRkX2RpcmVjdG9yeShhbGxvYywgREVGQVVMVF9TWVNDT05GRElSICIvbXlzcWwiLCBkaXJz KTsKLSsgIH0KLSAjZW5kaWYgLyogREVGQVVMVF9TWVNDT05GRElSICovCi0gCi0gI2VuZGlmCi1k aWZmIC1OYXVyIG15c3FsLTguMC40My9zY3JpcHRzL0NNYWtlTGlzdHMudHh0IG15c3FsLTguMC40 M19wYXRjaGVkL3NjcmlwdHMvQ01ha2VMaXN0cy50eHQKLS0tLSBteXNxbC04LjAuNDMvc2NyaXB0 cy9DTWFrZUxpc3RzLnR4dAkyMDI1LTA3LTA5IDEwOjQ1OjAxLjAwMDAwMDAwMCArMDIwMAotKysr IG15c3FsLTguMC40M19wYXRjaGVkL3NjcmlwdHMvQ01ha2VMaXN0cy50eHQJMjAyNS0wOC0wNSAw OToyNTo1NS4wMTkzNjk2MzAgKzAyMDAKLUBAIC0yNzEsOSArMjcxLDkgQEAKLSBFTkRJRihVTklY KQotIAotIFNFVChwcmVmaXggIiR7Q01BS0VfSU5TVEFMTF9QUkVGSVh9IikKLS1TRVQoc3lzY29u ZmRpciAke3ByZWZpeH0pCi0rU0VUKHN5c2NvbmZkaXIgJHtTWVNDT05GRElSfSkKLSBTRVQoYmlu ZGlyICR7cHJlZml4fS8ke0lOU1RBTExfQklORElSfSkKLS1TRVQobGliZXhlY2RpciAke3ByZWZp eH0vJHtJTlNUQUxMX1NCSU5ESVJ9KQotK1NFVChsaWJleGVjZGlyICR7cHJlZml4fS8ke0lOU1RB TExfTElCRVhFQ0RJUn0pCi0gU0VUKGRhdGFkaXIgJHtwcmVmaXh9LyR7SU5TVEFMTF9NWVNRTFNI QVJFRElSfSkKLSBTRVQobGlic3ViZGlyICAke0lOU1RBTExfTElCRElSfSkKLSBTRVQocGtnaW5j bHVkZWRpciAke3ByZWZpeH0vJHtJTlNUQUxMX0lOQ0xVREVESVJ9KQotZGlmZiAtTmF1ciBteXNx bC04LjAuNDMvc2NyaXB0cy9teXNxbGRfbXVsdGkucGwuaW4gbXlzcWwtOC4wLjQzX3BhdGNoZWQv c2NyaXB0cy9teXNxbGRfbXVsdGkucGwuaW4KLS0tLSBteXNxbC04LjAuNDMvc2NyaXB0cy9teXNx bGRfbXVsdGkucGwuaW4JMjAyNS0wNy0wOSAxMDo0NTowMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBt eXNxbC04LjAuNDNfcGF0Y2hlZC9zY3JpcHRzL215c3FsZF9tdWx0aS5wbC5pbgkyMDI1LTA4LTA1 IDA5OjI2OjU3LjI1MjA3NzY0MCArMDIwMAotQEAgLTU4Nyw5ICs1ODcsNyBAQAotIAotICAgbXkg JXNlZW47ICAjIERvbid0IGxpc3QgdGhlIHNhbWUgZmlsZSBtb3JlIHRoYW4gb25jZQotICAgcmV0 dXJuIGdyZXAgeyBkZWZpbmVkICRfIGFuZCBub3QgJHNlZW57JF99KysgYW5kIC1mICRfIGFuZCAt ciAkXyB9Ci0tICAgICAgICAgICAgICAoJy9ldGMvbXkuY25mJywKLS0gICAgICAgICAgICAgICAn L2V0Yy9teXNxbC9teS5jbmYnLAotLSAgICAgICAgICAgICAgICdAc3lzY29uZmRpckAvbXkuY25m JywKLSsgICAgICAgICAgICAgICgnQHN5c2NvbmZkaXJAL215LmNuZicsCi0gICAgICAgICAgICAg ICAgKCRFTlZ7TVlTUUxfSE9NRX0gPyAiJEVOVntNWVNRTF9IT01FfS9teS5jbmYiIDogdW5kZWYp LAotICAgICAgICAgICAgICAgICRvcHR7J2V4dHJhLWZpbGUnfSwKLSAgICAgICAgICAgICAgICAo JEVOVntIT01FfSA/ICIkRU5We0hPTUV9Ly5teS5jbmYiIDogdW5kZWYpKTsKCmRpZmYgLS1naXQg YS9teXNxbC1wcmVwYXJlLWRiLWRpci5zaCBiL215c3FsLXByZXBhcmUtZGItZGlyLnNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0NmNmNjM2Li4wMDAwMDAwCi0tLSBhL215c3FsLXBy ZXBhcmUtZGItZGlyLnNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEyICswLDAgQEAKLSMhL2Jpbi9z aAotCi0jIFRoaXMgc2NyaXB0IGNyZWF0ZXMgdGhlIG15c3FsIGRhdGEgZGlyZWN0b3J5IGR1cmlu ZyBmaXJzdCBzZXJ2aWNlIHN0YXJ0LgotIyBJbiBzdWJzZXF1ZW50IHN0YXJ0cywgaXQgZG9lcyBu b3RoaW5nIG11Y2guCi0jCi0jIFRoaXMgc2NyaXB0IGlzIG1lYW50IHRvIGJlIHJ1biBhcyBub24t cm9vdCB1c2VyIGVpdGhlciBkdXJpbmcgaW5pdHNjcmlwdAotIyBvciBzeXN0ZW1kIHNlcnZpY2Ug ZXhlY3V0aW9uLCBiZWZvcmUgc3RhcnRpbmcgdGhlIG15c3FsZCBkYWVtb24uCi0jIFJ1bm5pbmcg aXQgYXMgcm9vdCBtYXkgaGF2ZSBzb21lIHNlY3VyaXR5IHJpc2tzLCBiZWNhdXNlIGl0IHRvdWNo ZXMgZmlsZXMKLSMgdGhhdCBjYW4gYmUgc3ltbGlua3MgcG9pbnRpbmcgdG8gdW5leHBlY3RlZCBs b2NhdGlvbnMuCi0jCi0jIE9uIHRoZSBvdGhlciBoYW5kLCB3aGVuIHVzaW5nIG5vbi1zdGFuZGFy ZCBsb2NhdGlvbnMgZm9yIGRhdGFkaXIgYW5kIGxvZ2ZpbGUsCi0jIHRoaXMgc2NyaXB0IG1pZ2h0 IG5vdCBiZSBhYmxlIHRvIGNyZWF0ZSB0aGUgZmlsZXMgYW5kIHRoZSBkYWVtb24gd29uJ3Qgc3Rh cnQKLSMgcHJvcGVybHkuIEEgc29sdXRpb24gZm9yIHRoYXQgaXMgdG8gY3JlYXRlZCB0aGUgbG9j YXRpb25zIGZvciBkYXRhZGlyIGFuZAotIyBsb2dmaWxlIHdpdGggY29ycmVjdCBvd25lcnNoaXAg YmVmb3JlIHN0YXJ0aW5nIHRoZSBkYWVtb24uCi0KLXNvdXJjZSAiYGRpcm5hbWUgJHtCQVNIX1NP VVJDRVswXX1gL215c3FsLXNjcmlwdHMtY29tbW9uIgotCi0jIElmIHR3byBhcmdzIGdpdmVuIGZp cnN0IGlzIHVzZXIsIHNlY29uZCBpcyBncm91cAotIyBvdGhlcndpc2UgdGhlIGFyZyBpcyB0aGUg c3lzdGVtZCBzZXJ2aWNlIGZpbGUKLWlmIFsgIiQjIiAtZXEgMiBdCi10aGVuCi0gICAgbXl1c2Vy PSIkMSIKLSAgICBteWdyb3VwPSIkMiIKLWVsc2UKLSAgICAjIEFic29yYiBjb25maWd1cmF0aW9u IHNldHRpbmdzIGZyb20gdGhlIHNwZWNpZmllZCBzeXN0ZW1kIHNlcnZpY2UgZmlsZSwKLSAgICAj IG9yIHRoZSBkZWZhdWx0IHNlcnZpY2UgaWYgbm90IHNwZWNpZmllZAotICAgIFNFUlZJQ0VfTkFN RT0iJDEiCi0gICAgaWYgWyB4IiRTRVJWSUNFX05BTUUiID0geCBdCi0gICAgdGhlbgotICAgICAg ICBTRVJWSUNFX05BTUU9QERBRU1PTl9OQU1FQC5zZXJ2aWNlCi0gICAgZmkKLQotICAgIG15dXNl cj1gc3lzdGVtY3RsIHNob3cgLXAgVXNlciAiJHtTRVJWSUNFX05BTUV9IiB8Ci0gICAgICBzZWQg J3MvXlVzZXI9Ly8nYAotICAgIGlmIFsgeCIkbXl1c2VyIiA9IHggXQotICAgIHRoZW4KLSAgICAg ICAgbXl1c2VyPW15c3FsCi0gICAgZmkKLQotICAgIG15Z3JvdXA9YHN5c3RlbWN0bCBzaG93IC1w IEdyb3VwICIke1NFUlZJQ0VfTkFNRX0iIHwKLSAgICAgIHNlZCAncy9eR3JvdXA9Ly8nYAotICAg IGlmIFsgeCIkbXlncm91cCIgPSB4IF0KLSAgICB0aGVuCi0gICAgICAgIG15Z3JvdXA9bXlzcWwK LSAgICBmaQotZmkKLQotIyBTZXQgdXAgdGhlIGVycmxvZ2ZpbGUgd2l0aCBhcHByb3ByaWF0ZSBw ZXJtaXNzaW9ucwotaWYgWyAhIC1lICIkZXJybG9nZmlsZSIgLWEgISAtaCAiJGVycmxvZ2ZpbGUi IC1hIHgkKGRpcm5hbWUgIiRlcnJsb2dmaWxlIikgPSAieC92YXIvbG9nIiBdOyB0aGVuCi0gICAg Y2FzZSAkKGJhc2VuYW1lICIkZXJybG9nZmlsZSIpIGluCi0gICAgICAgIG15c3FsKi5sb2d8bWFy aWFkYioubG9nKSBpbnN0YWxsIC9kZXYvbnVsbCAtbTA2NDAgLW8kbXl1c2VyIC1nJG15Z3JvdXAg IiRlcnJsb2dmaWxlIiA7OwotICAgICAgICAqKSA7OwotICAgIGVzYWMKLWVsc2UKLSAgICAjIFBy b3ZpZGUgc29tZSBhZHZpY2UgaWYgdGhlIGxvZyBmaWxlIGNhbm5vdCBiZSBjcmVhdGVkIGJ5IHRo aXMgc2NyaXB0Ci0gICAgZXJybG9nZGlyPSQoZGlybmFtZSAiJGVycmxvZ2ZpbGUiKQotICAgIGlm ICEgWyAtZCAiJGVycmxvZ2RpciIgXSA7IHRoZW4KLSAgICAgICAgZWNobyAiVGhlIGRpcmVjdG9y eSAkZXJybG9nZGlyIGRvZXMgbm90IGV4aXN0LiIKLSAgICAgICAgZXhpdCAxCi0gICAgZWxpZiBb IC1lICIkZXJybG9nZmlsZSIgLWEgISAtdyAiJGVycmxvZ2ZpbGUiIF0gOyB0aGVuCi0gICAgICAg IGVjaG8gIlRoZSBsb2cgZmlsZSAkZXJybG9nZmlsZSBjYW5ub3QgYmUgd3JpdHRlbiwgcGxlYXNl LCBmaXggaXRzIHBlcm1pc3Npb25zLiIKLSAgICAgICAgZWNobyAiVGhlIGRhZW1vbiB3aWxsIGJl IHJ1biB1bmRlciAkbXl1c2VyOiRteWdyb3VwIgotICAgICAgICBleGl0IDEKLSAgICBmaQotZmkK LQotCi0KLWV4cG9ydCBMQ19BTEw9QwotCi0jIFJldHVybnMgY29udGVudCBvZiB0aGUgc3BlY2lm aWVkIGRpcmVjdG9yeQotIyBJZiBsaXN0aW5nIGZpbGVzIGZhaWxzLCBmYWtlLWZpbGUgaXMgcmV0 dXJuZWQgc28gd2hpY2ggbWVhbnMKLSMgd2UnbGwgYmVoYXZlIGxpa2UgdGhlcmUgd2FzIHNvbWUg ZGF0YSBpbml0aWFsaXplZAotIyBTb21lIGZpbGVzIG9yIGRpcmVjdG9yaWVzIGFyZSBmaW5lIHRv IGJlIHRoZXJlLCBzbyB0aG9zZSBhcmUKLSMgZXhwbGljaXRseSByZW1vdmVkIGZyb20gdGhlIGxp c3RpbmcKLSMgQHBhcmFtIDxkaXI+IGRhdGFkaXIKLWxpc3RfZGF0YWRpciAoKQotewotICAgICgg bHMgLTFBICIkMSIgMj4vZGV2L251bGwgfHwgZWNobyAiZmFrZS1maWxlIiApIHwgZ3JlcCAtdiBc Ci0gICAgLWUgJ15sb3N0K2ZvdW5kJCcgXAotICAgIC1lICdcLmVyciQnIFwKLSAgICAtZSAnXlwu YmFzaF9oaXN0b3J5JCcKLX0KLQotIyBDaGVja3Mgd2hldGhlciBkYXRhZGlyIHNob3VsZCBiZSBp bml0aWFsaXplZAotIyBAcGFyYW0gPGRpcj4gZGF0YWRpcgotc2hvdWxkX2luaXRpYWxpemUgKCkK LXsKLSAgICB0ZXN0IC16ICIkKGxpc3RfZGF0YWRpciAiJDEiKSIKLX0KLQotIyBNYWtlIHRoZSBk YXRhIGRpcmVjdG9yeSBpZiBkb2Vzbid0IGV4aXN0IG9yIGVtcHR5Ci1pZiBzaG91bGRfaW5pdGlh bGl6ZSAiJGRhdGFkaXIiIDsgdGhlbgotCi0gICAgIyBOb3cgY3JlYXRlIHRoZSBkYXRhYmFzZQot ICAgIGVjaG8gIkluaXRpYWxpemluZyBATklDRV9QUk9KRUNUX05BTUVAIGRhdGFiYXNlIgotICAg IEBsaWJleGVjZGlyQC9teXNxbGQgLS1pbml0aWFsaXplLWluc2VjdXJlIC0tZGF0YWRpcj0iJGRh dGFkaXIiIC0tdXNlcj0iJG15dXNlciIKLSAgICByZXQ9JD8KLSAgICBpZiBbICRyZXQgLW5lIDAg XSA7IHRoZW4KLSAgICAgICAgZWNobyAiSW5pdGlhbGl6YXRpb24gb2YgQE5JQ0VfUFJPSkVDVF9O QU1FQCBkYXRhYmFzZSBmYWlsZWQuIiA+JjIKLSAgICAgICAgZWNobyAiUGVyaGFwcyBAc3lzY29u ZmRpckAvbXkuY25mIGlzIG1pc2NvbmZpZ3VyZWQuIiA+JjIKLSAgICAgICAgIyBDbGVhbiB1cCBh bnkgcGFydGlhbGx5LWNyZWF0ZWQgZGF0YWJhc2UgZmlsZXMKLSAgICAgICAgaWYgWyAhIC1lICIk ZGF0YWRpci9teXNxbC91c2VyLmZybSIgXSA7IHRoZW4KLSAgICAgICAgICAgIHJtIC1yZiAiJGRh dGFkaXIiLyoKLSAgICAgICAgZmkKLSAgICAgICAgZXhpdCAkcmV0Ci0gICAgZmkKLSAgICAjIHVw Z3JhZGUgZG9lcyBub3QgbmVlZCB0byBiZSBydW4gb24gYSBmcmVzaCBkYXRhZGlyCi0gICAgZWNo byAiQFZFUlNJT05AIiA+IiRkYXRhZGlyL215c3FsX3VwZ3JhZGVfaW5mbyIKLWZpCi0KLWV4aXQg MAoKZGlmZiAtLWdpdCBhL215c3FsLXJwYXRoLnBhdGNoIGIvbXlzcWwtcnBhdGgucGF0Y2gKZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE2ZDViYzQuLjAwMDAwMDAKLS0tIGEvbXlzcWwt cnBhdGgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi1NeVNRTCA4LjAgaW5j bHVkZXMgYSBmZWF0dXJlIHRoYXQgcmVxdWlyZXMgd2Ugc2V0IGxpbnV4IE5JQ0UgY2FwYWJpbGl0 aWVzIHRvCi1teXNxbGQgZGFlbW9uLiBCZWNhdXNlIG9mIHRoYXQsIExEX0xJQlJBUllfUEFUSCBk b2VzIG5vdCB3b3JrIChzZWUKLXNlY3VyZS1leGVjdXRpb24gbW9kZSBpbiBodHRwOi8vbWFuNy5v cmcvbGludXgvbWFuLXBhZ2VzL21hbjgvbGQuc28uOC5odG1sKS4KLQotUmVsYXRlZDogIzE2Mjg4 MTQKLQotZGlmZiAtLWdpdCBhL3NxbC9DTWFrZUxpc3RzLnR4dCBiL3NxbC9DTWFrZUxpc3RzLnR4 dAotaW5kZXggM2YxNzlhN2EuLjIwOWIzZWIyIDEwMDY0NAotLS0tIGEvc3FsL0NNYWtlTGlzdHMu dHh0Ci0rKysgYi9zcWwvQ01ha2VMaXN0cy50eHQKLUBAIC05MTgsNiArOTE4LDggQEAgSUYoVU5J WF9JTlNUQUxMX1JQQVRIX09SSUdJTl9QUklWX0xJQkRJUikKLSAgIEFERF9JTlNUQUxMX1JQQVRI X0ZPUl9QUk9UT0JVRihteXNxbGQpCi0gRU5ESUYoKQotIAotK1NFVF9UQVJHRVRfUFJPUEVSVElF UyhteXNxbGQgUFJPUEVSVElFUyBJTlNUQUxMX1JQQVRIICIke1JQQVRIX0xJQkRJUn0iKQotKwot IE9QVElPTihERUJVR19FWFROQU1FICJCdWlsZCBzZXJ2ZXIgYXMgbXlzcWxkLWRlYnVnIChkZWJ1 ZyBidWlsZHMgb25seSkiIE9GRikKLSBNQVJLX0FTX0FEVkFOQ0VEKERFQlVHX0VYVE5BTUUpCi0g CgpkaWZmIC0tZ2l0IGEvbXlzcWwtc2NyaXB0cy1jb21tb24uc2ggYi9teXNxbC1zY3JpcHRzLWNv bW1vbi5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNThmMDQzNy4uMDAwMDAwMAot LS0gYS9teXNxbC1zY3JpcHRzLWNvbW1vbi5zaAorKysgL2Rldi9udWxsCkBAIC0xLDY4ICswLDAg QEAKLSMhL2Jpbi9zaAotCi0jIFNvbWUgdXNlZnVsIGZ1bmN0aW9ucyB1c2VkIGluIG90aGVyIE15 U1FMIGhlbHBlciBzY3JpcHRzCi0jIFRoaXMgc2NyaXB0cyBkZWZpbmVzIHZhcmlhYmxlcyBkYXRh ZGlyLCBlcnJsb2dmaWxlLCBzb2NrZXRmaWxlCi0KLWV4cG9ydCBMQ19BTEw9QwotCi0jIGV4dHJh Y3QgdmFsdWUgb2YgYSBNeVNRTCBvcHRpb24gZnJvbSBjb25maWcgZmlsZXMKLSMgVXNhZ2U6IGdl dF9teXNxbF9vcHRpb24gVkFSTkFNRSBERUZBVUxUIFNFQ1RJT04gWyBTRUNUSU9OLCAuLi4gXQot IyByZXN1bHQgaXMgcmV0dXJuZWQgaW4gJHJlc3VsdAotIyBXZSB1c2UgbXlfcHJpbnRfZGVmYXVs dHMgd2hpY2ggcHJpbnRzIGFsbCBvcHRpb25zIGZyb20gbXVsdGlwbGUgZmlsZXMsCi0jIHdpdGgg dGhlIG1vcmUgc3BlY2lmaWMgb25lcyBsYXRlcjsgaGVuY2UgdGFrZSB0aGUgbGFzdCBtYXRjaC4K LWdldF9teXNxbF9vcHRpb24oKXsKLQlpZiBbICQjIC1uZSAzIF0gOyB0aGVuCi0JCWVjaG8gImdl dF9teXNxbF9vcHRpb24gcmVxdWlyZXMgMyBhcmd1bWVudHM6IHNlY3Rpb24gb3B0aW9uIGRlZmF1 bHRfdmFsdWUiCi0JCXJldHVybgotCWZpCi0Jc2VjdGlvbnM9IiQxIgotCW9wdGlvbl9uYW1lPSIk MiIKLQlkZWZhdWx0X3ZhbHVlPSIkMyIKLQlyZXN1bHQ9YEBiaW5kaXJAL215X3ByaW50X2RlZmF1 bHRzICRteV9wcmludF9kZWZhdWx0c19leHRyYV9hcmdzICRzZWN0aW9ucyB8IHNlZCAtbiAicy9e LS0ke29wdGlvbl9uYW1lfT0vL3AiIHwgdGFpbCAtbiAxYAotCWlmIFsgLXogIiRyZXN1bHQiIF07 IHRoZW4KLQkgICAgIyBub3QgZm91bmQsIHVzZSBkZWZhdWx0Ci0JICAgIHJlc3VsdD0iJHtkZWZh dWx0X3ZhbHVlfSIKLQlmaQotfQotCi0jIEZvciB0aGUgY2FzZSBvZiBydW5uaW5nIG1vcmUgaW5z dGFuY2VzIHZpYSBzeXN0ZW1kLCBzY3JpdHMgdGhhdCBzb3VyY2UKLSMgdGhpcyBmaWxlIGNhbiBn ZXQgLS1kZWZhdWx0LWdyb3VwLXN1ZmZpeCBvciBzaW1pbGFyIG9wdGlvbiBhcyB0aGUgZmlyc3QK LSMgYXJndW1lbnQuIFRoZSB1dGlsaXR5IG15X3ByaW50X2RlZmF1bHRzIG5lZWRzIHRvIHVzZSBp dCBhcyB3ZWxsLCBzbyB0aGUKLSMgc2NyaXB0cyBzb3VyY2luZyB0aGlzIGZpbGUgd29yayB3aXRo IHRoZSBzYW1lIG9wdGlvbnMgYXMgdGhlIGRhZW1vbi4KLW15X3ByaW50X2RlZmF1bHRzX2V4dHJh X2FyZ3M9JycKLXdoaWxlIGVjaG8gIiQxIiB8IGdyZXAgLXEgJ14tLWRlZmF1bHRzJyA7IGRvCi0J bXlfcHJpbnRfZGVmYXVsdHNfZXh0cmFfYXJncz0iJHtteV9wcmludF9kZWZhdWx0c19leHRyYV9h cmdzfSAkMSIKLQlzaGlmdAotZG9uZQotCi0jIERlZmF1bHRzIGhlcmUgaGFkIGJldHRlciBtYXRj aCB3aGF0IG15c3FsZF9zYWZlIHdpbGwgZGVmYXVsdCB0bwotIyBUaGUgb3B0aW9uIHZhbHVlcyBh cmUgZ2VuZXJhbGx5IGRlZmluZWQgb24gdGhyZWUgaW1wb3J0YW50IHBsYWNlcwotIyBvbiB0aGUg ZGVmYXVsdCBpbnN0YWxsYXRpb246Ci0jICAxKSBkZWZhdWx0IHZhbHVlcyBhcmUgaGFyZGNvZGVk IGluIHRoZSBjb2RlIG9mIG15c3FsZCBkYWVtb24gb3IKLSMgICAgIG15c3FsZF9zYWZlIHNjcmlw dAotIyAgMikgY29uZmlndXJhYmxlIHZhbHVlcyBhcmUgZGVmaW5lZCBpbiBAc3lzY29uZmRpckAv bXkuY25mCi0jICAzKSBkZWZhdWx0IHZhbHVlcyBmb3IgaGVscGVyIHNjcmlwdHMgYXJlIHNwZWNp ZmllZCBiZWxsb3cKLSMgU28sIGluIGNhc2UgdmFsdWVzIGFyZSBkZWZpbmVkIGluIG15LmNuZiwg d2UgbmVlZCB0byBnZXQgdGhhdCB2YWx1ZS4KLSMgSW4gY2FzZSB0aGV5IGFyZSBub3QgZGVmaW5l ZCBpbiBteS5jbmYsIHdlIG5lZWQgdG8gZ2V0IHRoZSBzYW1lIHZhbHVlCi0jIGluIHRoZSBkYWVt b24sIGFzIGluIHRoZSBoZWxwZXIgc2NyaXB0cy4gVGh1cywgZGVmYXVsdCB2YWx1ZXMgaGVyZQot IyBtdXN0IGNvcnJlc3BvbmQgd2l0aCB2YWx1ZXMgZGVmaW5lZCBpbiBteXNxbGRfc2FmZSBzY3Jp cHQgYW5kIHNvdXJjZQotIyBjb2RlIGl0c2VsZi4KLQotc2VydmVyX3NlY3Rpb25zPSJteXNxbGRf c2FmZSBteXNxbGQgc2VydmVyIG15c3FsZC1ATUFKT1JfVkVSU0lPTkAuQE1JTk9SX1ZFUlNJT05A IGNsaWVudC1zZXJ2ZXIiCi0KLWdldF9teXNxbF9vcHRpb24gIiRzZXJ2ZXJfc2VjdGlvbnMiIGRh dGFkaXIgIkBNWVNRTF9EQVRBRElSQCIKLWRhdGFkaXI9IiRyZXN1bHQiCi0KLSMgaWYgdGhlcmUg aXMgbG9nX2Vycm9yIGluIHRoZSBteS5jbmYsIG15X3ByaW50X2RlZmF1bHRzIHN0aWxsCi0jIHJl dHVybnMgbG9nLWVycm9yCi0jIGxvZy1lcnJvciBtaWdodCBiZSBkZWZpbmVkIGluIG15c3FsZF9z YWZlIGFuZCBteXNxbGQgc2VjdGlvbnMsCi0jIHRoZSBmb3JtZXIgaGFzIGJpZ2dlciBwcmlvcml0 eQotZ2V0X215c3FsX29wdGlvbiAiJHNlcnZlcl9zZWN0aW9ucyIgbG9nLWVycm9yICIkZGF0YWRp ci9gaG9zdG5hbWVgLmVyciIKLWVycmxvZ2ZpbGU9IiRyZXN1bHQiCi0KLWdldF9teXNxbF9vcHRp b24gIiRzZXJ2ZXJfc2VjdGlvbnMiIHNvY2tldCAiQE1ZU1FMX1VOSVhfQUREUkAiCi1zb2NrZXRm aWxlPSIkcmVzdWx0IgotCi1nZXRfbXlzcWxfb3B0aW9uICIkc2VydmVyX3NlY3Rpb25zIiBwaWQt ZmlsZSAiJGRhdGFkaXIvYGhvc3RuYW1lYC5waWQiCi1waWRmaWxlPSIkcmVzdWx0IgotCgpkaWZm IC0tZ2l0IGEvbXlzcWwtc2NyaXB0cy5wYXRjaCBiL215c3FsLXNjcmlwdHMucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMyMjU3N2IuLjAwMDAwMDAKLS0tIGEvbXlzcWwtc2Ny aXB0cy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAKLS0tLSBteXNxbC04LjAu MjIvc2NyaXB0cy9DTWFrZUxpc3RzLnR4dC5vbGQJMjAyMC0xMC0yMSAxMTowODo1MC42NTQyNTI1 NjMgKzAyMDAKLSsrKyBteXNxbC04LjAuMjIvc2NyaXB0cy9DTWFrZUxpc3RzLnR4dAkyMDIwLTEw LTIxIDExOjExOjMzLjYzNTkzNTM2NiArMDIwMAotQEAgLTUwNyw0ICs1MDcsMzAgQEAKLSAgICAg ICApCi0gICAgIEVORElGKCkKLSAgIEVORElGKCkKLSsKLSsgICMgZmlsZXMgZm9yIHN5c3RlbWQK LSsgIFNFVChTWVNURU1EX1NDUklQVFMKLSsgICAgbXlzcWwudG1wZmlsZXMuZAotKyAgICBteXNx bC5zZXJ2aWNlCi0rICAgIG15c3FsQC5zZXJ2aWNlCi0rICAgIG15c3FsLXByZXBhcmUtZGItZGly Ci0rICAgIG15c3FsLXdhaXQtc3RvcAotKyAgICBteXNxbC1jaGVjay1zb2NrZXQKLSsgICAgbXlz cWwtc2NyaXB0cy1jb21tb24KLSsgICAgbXlzcWxfY29uZmlnX211bHRpbGliCi0rICAgIG15LmNu ZgotKyAgICBzZXJ2ZXIuY25mCi0rICApCi0rICBGT1JFQUNIKGZpbGUgJHtTWVNURU1EX1NDUklQ VFN9KQotKyAgICBJRihFWElTVFMgJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9LyR7ZmlsZX0u c2gpCi0rICAgICAgQ09ORklHVVJFX0ZJTEUoJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9LyR7 ZmlsZX0uc2gKLSsgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9CSU5BUllfRElSfS8ke2ZpbGV9IEVT Q0FQRV9RVU9URVMgQE9OTFkpCi0rICAgIEVMU0VJRihFWElTVFMgJHtDTUFLRV9DVVJSRU5UX1NP VVJDRV9ESVJ9LyR7ZmlsZX0uaW4pCi0rICAgICAgQ09ORklHVVJFX0ZJTEUoJHtDTUFLRV9DVVJS RU5UX1NPVVJDRV9ESVJ9LyR7ZmlsZX0uaW4KLSsgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9CSU5B UllfRElSfS8ke2ZpbGV9IEVTQ0FQRV9RVU9URVMgQE9OTFkpCi0rICAgIEVMU0UoKQotKyAgICAg IE1FU1NBR0UoRkFUQUxfRVJST1IgIkNhbiBub3QgZmluZCAke2ZpbGV9LnNoIG9yICR7ZmlsZX0u aW4gaW4gIgotKyAgICAgICAgIiR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfSIgKQotKyAgICBF TkRJRigpCi0rICBFTkRGT1JFQUNIKCkKLSBFTkRJRigpCgpkaWZmIC0tZ2l0IGEvbXlzcWwtc2hh cmVkaXIucGF0Y2ggYi9teXNxbC1zaGFyZWRpci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggZmEwZGM3Mi4uMDAwMDAwMAotLS0gYS9teXNxbC1zaGFyZWRpci5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDI3ICswLDAgQEAKLWRpZmYgLS1naXQgYS9teXNxbC10ZXN0L0NNYWtl TGlzdHMudHh0IGIvbXlzcWwtdGVzdC9DTWFrZUxpc3RzLnR4dAotaW5kZXggZjc3YmQwMjIuLmEz YTNiZDlmIDEwMDY0NAotLS0tIGEvbXlzcWwtdGVzdC9DTWFrZUxpc3RzLnR4dAotKysrIGIvbXlz cWwtdGVzdC9DTWFrZUxpc3RzLnR4dAotQEAgLTU3LDYgKzU3LDkgQEAgSUYoSU5TVEFMTF9NWVNR TFRFU1RESVIpCi0gRU5ESUYoKQotIAotIAotKyMgRXhwYW5kIHNvbWUgcGF0aHMgaW4gdGhlIHBl cmwgc2NyaXB0IGNvcnJlY3RseQotK0NPTkZJR1VSRV9GSUxFKCR7Q01BS0VfQ1VSUkVOVF9TT1VS Q0VfRElSfS9teXNxbC10ZXN0LXJ1bi5wbCAke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0vbXlz cWwtdGVzdC1ydW4ucGwgQE9OTFkpCi0rCi0gSUYoTk9UICR7Q01BS0VfU09VUkNFX0RJUn0gU1RS RVFVQUwgJHtDTUFLRV9CSU5BUllfRElSfSkKLSAgICMgRW5hYmxlIHJ1bm5pbmcgbXRyIGZyb20g YnVpbGQgZGlyZWN0b3J5Ci0gICBGSU5EX1BST0dSQU0oUEVSTF9FWEVDVVRBQkxFIHBlcmwKLWRp ZmYgLS1naXQgYS9teXNxbC10ZXN0L215c3FsLXRlc3QtcnVuLnBsIGIvbXlzcWwtdGVzdC9teXNx bC10ZXN0LXJ1bi5wbAotaW5kZXggYjgyNjExZmQuLjdmYzU5ODdlIDEwMDc1NQotLS0tIGEvbXlz cWwtdGVzdC9teXNxbC10ZXN0LXJ1bi5wbAotKysrIGIvbXlzcWwtdGVzdC9teXNxbC10ZXN0LXJ1 bi5wbAotQEAgLTE2NTYsNyArMTY1Niw3IEBAIHN1YiBjb21tYW5kX2xpbmVfc2V0dXAgewotICAg bXkgJHBhdGhfc2hhcmUgPSAkcGF0aF9sYW5ndWFnZTsKLSAKLSAgIEBzaGFyZV9sb2NhdGlvbnMg PQotLSAgICAoInNoYXJlL215c3FsLSIgLiAkbXlzcWxfYmFzZV92ZXJzaW9uLCAic2hhcmUvbXlz cWwiLCAic2hhcmUiKTsKLSsgICAgKCJASU5TVEFMTF9NWVNRTFNIQVJFRElSQCIsICJzaGFyZS9t eXNxbC0iIC4gJG15c3FsX2Jhc2VfdmVyc2lvbiwgInNoYXJlL215c3FsIiwgInNoYXJlIik7Ci0g Ci0gICAkcGF0aF9jaGFyc2V0c2RpciA9IG15X2ZpbmRfZGlyKCRiYXNlZGlyLCBcQHNoYXJlX2xv Y2F0aW9ucywgImNoYXJzZXRzIik7Ci0gCgpkaWZmIC0tZ2l0IGEvbXlzcWwtd2FpdC1zdG9wLnNo IGIvbXlzcWwtd2FpdC1zdG9wLnNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MmJk ZTMwLi4wMDAwMDAwCi0tLSBhL215c3FsLXdhaXQtc3RvcC5zaAorKysgL2Rldi9udWxsCkBAIC0x LDM2ICswLDAgQEAKLSMhL2Jpbi9zaAotCi1zb3VyY2UgImBkaXJuYW1lICR7QkFTSF9TT1VSQ0Vb MF19YC9teXNxbC1zY3JpcHRzLWNvbW1vbiIKLQotIyBUaGlzIHNjcmlwdCB3YWl0cyBmb3IgbXlz cWxkIHRvIGJlIHByb3Blcmx5IHN0b3BwZWQKLSMgKHdoaWNoIGNhbiBiZSBtYW55IHNlY29uZHMg aW4gc29tZSBsYXJnZSBsb2FkKS4KLSMgUnVubmluZyB0aGlzIGFzIEV4ZWNTdG9wUG9zdCBpcyB1 c2VmdWwgc28gdGhhdCBzdGFydGluZyB3aGljaCBpcyBkb25lCi0jIGFzIHBhcnQgb2YgcmVzdGFy dCBkb2Vzbid0IHNlZSB0aGUgZm9ybWVyIHByb2Nlc3Mgc3RpbGwgcnVubmluZy4KLQotIyBXYWl0 IGZvciB0aGUgc2VydmVyIHRvIHByb3Blcmx5IGVuZCB0aGUgbWFpbiBzZXJ2ZXIKLXJldD0wCi1U SU1FT1VUPTYwCi1TRUNPTkRTPTAKLQotaWYgISBbIC1mICIkcGlkZmlsZSIgXTsgdGhlbgotCWV4 aXQgMAotZmkKLQotTVlTUUxQSUQ9YGNhdCAiJHBpZGZpbGUiIDI+L2Rldi9udWxsYAotaWYgWyAt eiAiJE1ZU1FMUElEIiBdIDsgdGhlbgotCWV4aXQgMgotZmkKLQotd2hpbGUgL2Jpbi90cnVlOyBk bwotCSMgQ2hlY2sgcHJvY2VzcyBzdGlsbCBleGlzdHMKLQlpZiAhIFsgLWQgIi9wcm9jLyR7TVlT UUxQSUR9IiBdIDsgdGhlbgotCSAgICBicmVhawotCWZpCi0JaWYgWyAkU0VDT05EUyAtZ3QgJFRJ TUVPVVQgXSA7IHRoZW4KLQkgICAgcmV0PTMKLQkgICAgYnJlYWsKLQlmaQotCXNsZWVwIDEKLWRv bmUKLQotZXhpdCAkcmV0CgpkaWZmIC0tZ2l0IGEvbXlzcWwucnBtbGludHJjIGIvbXlzcWwucnBt bGludHJjCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MDU1MjllLi4wMDAwMDAwCi0t LSBhL215c3FsLnJwbWxpbnRyYworKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLSMgVEhJ UyBGSUxFIFNFUlZFUyBGT1IgV0hJVEVMSVNUSU5HIFJQTUxJTlQgRVJST1JTIEFORCBXQVJOSU5H UyBJTiBUQVNLT1RST04KLSMgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL1Rhc2tvdHJv bi9UYXNrcy9kaXN0LnJwbWxpbnQjV2hpdGVsaXN0aW5nX2Vycm9ycwotCi0jIChzYW1lIGZpbGUg aW4gcHl0aG9uMyBwYWNrYWdlIHNlcnZlZCBhcyBhIGdyZWF0IGV4YW1wbGUpCi0KLQotCi0jIFNw ZWxsaW5nIGVycm9ycwotYWRkRmlsdGVyKHInc3BlbGxpbmctZXJyb3IgLiogZW5fVVMgKGNuZnxt eXNxbGR8c3VicGFja2FnZSkgJykKLQotIyBEZWJ1ZyBzeW1saW5rcwotYWRkRmlsdGVyKHInZGFu Z2xpbmctcmVsYXRpdmUtc3ltbGluayAvdXNyL2xpYi8uYnVpbGQtaWQnKQotCi0jIFRlc3RzdWl0 ZQotIyAgIFNvbWUgZXhwZWN0ZWQgdGVzdHMgcmVzdWx0cyBhcmUgemVyby1sZW5ndGggZmlsZXMK LWFkZEZpbHRlcihyJyh6ZXJvLWxlbmd0aHxwZW0tY2VydGlmaWNhdGV8aGlkZGVuLWZpbGUtb3It ZGlyKSAvdXNyL3NoYXJlL215c3FsLXRlc3QvKicpCi0KLSMgQ2hyb290IGZ1bmN0aW9uCi0jICAg RmFsc2UgcG9zaXRpdmU7IGNoZWNrZWQgYnkgdXBzdHJlYW0KLWFkZEZpbHRlcihyJ21pc3Npbmct Y2FsbC10by1jaGRpci13aXRoLWNocm9vdCcpCi0KLSMgTWlzc2luZyBkb2N1bWVudGF0aW9uCi0j ICAgSSBkb24ndCB0aGluayB0aGF0J3Mgb24gdGhlIHVwc3RyZWFtIHByaW9yaXR5IGxpc3QKLWFk ZEZpbHRlcihyJ25vLWRvY3VtZW50YXRpb24nKQotYWRkRmlsdGVyKHInbm8tbWFudWFsLXBhZ2Ut Zm9yLWJpbmFyeScpCi0KLSMgQ2x1c3RlciBpcyBnb25lCi1hZGRGaWx0ZXIoIlc6IG9ic29sZXRl LW5vdC1wcm92aWRlZCBteXNxbC1jbHVzdGVyIikKLWFkZEZpbHRlcigiVzogb2Jzb2xldGUtbm90 LXByb3ZpZGVkIG15c3FsLWJlbmNoIikKLWFkZEZpbHRlcigiVzogb2Jzb2xldGUtbm90LXByb3Zp ZGVkIGNvbW11bml0eS1teXNxbC1iZW5jaCIpCi0KLSMgQ29uZmlnIGZpbGUgd2l0aG91dCBub3Jl cGxhY2UgZmxhZwotIyAgIERvbid0IHJlcGxhY2UgbG9ncyB0aGF0IG1heSBjb250YWluIG9sZCBl bnRyaWVzCi1hZGRGaWx0ZXIocidjb25mZmlsZS13aXRob3V0LW5vcmVwbGFjZS1mbGFnIC92YXIv bG9nL21hcmlhZGIvbWFyaWFkYi5sb2cnKQotCi0jIFNlZW1zIHByZXR0eSBzdGFuZGFyZCB0byBt ZSAuLi4KLWFkZEZpbHRlcihyJ25vbi1zdGFuZGFyZC1kaXItcGVybSAvdmFyL2xvZy9teXNxbCA3 NTAnKQoKZGlmZiAtLWdpdCBhL215c3FsLnNlcnZpY2UuaW4gYi9teXNxbC5zZXJ2aWNlLmluCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwZTk2Mzc0Li4wMDAwMDAwCi0tLSBhL215c3Fs LnNlcnZpY2UuaW4KKysrIC9kZXYvbnVsbApAQCAtMSw2MiArMCwwIEBACi0jIEl0J3Mgbm90IHJl Y29tbWVuZGVkIHRvIG1vZGlmeSB0aGlzIGZpbGUgaW4tcGxhY2UsIGJlY2F1c2UgaXQgd2lsbCBi ZQotIyBvdmVyd3JpdHRlbiBkdXJpbmcgcGFja2FnZSB1cGdyYWRlcy4gIElmIHlvdSB3YW50IHRv IGN1c3RvbWl6ZSwgdGhlCi0jIGJlc3Qgd2F5IGlzIHRvIHVzZSBzeXN0ZW1jdGwgZWRpdDoKLSMK LSMgJCBzeXN0ZW1jdGwgZWRpdCBAREFFTU9OX05BTUVALnNlcnZpY2UKLSMKLSMgdGhpcyB3aWxs IGNyZWF0ZSBmaWxlCi0jCi0jICAvZXRjL3N5c3RlbWQvc3lzdGVtL0BEQUVNT05fTkFNRUAuc2Vy dmljZS5kL292ZXJyaWRlLmNvbmYKLSMKLSMgd2hpY2ggYmUgcGFyc2VkIGFmdGVyIHRoZSBmaWxl IEBEQUVNT05fTkFNRUAuc2VydmljZSBpdHNlbGYgaXMgcGFyc2VkLgotIwotIyBGb3IgZXhhbXBs ZSwgaWYgeW91IHdhbnQgdG8gaW5jcmVhc2UgbXlzcWwncyBvcGVuLWZpbGVzLWxpbWl0IHRvIDIw MDAwCi0jIGFkZCBmb2xsb3dpbmcgd2hlbiBlZGl0aW5nIHdpdGggY29tbWFuZCBhYm92ZToKLSMK LSMJW1NlcnZpY2VdCi0jCUxpbWl0Tk9GSUxFPTIwMDAwCi0jCi0jIE9yIGlmIHlvdSByZXF1aXJl IHRvIGV4ZWN1dGUgcHJlIGFuZCBwb3N0IHNjcmlwdHMgaW4gdGhlIHVuaXQgZmlsZSBhcyByb290 LCBzZXQKLSMgICAgICAgUGVybWlzc2lvbnNTdGFydE9ubHk9dHJ1ZQotIwotIyBGb3IgbW9yZSBp bmZvIGFib3V0IGN1c3RvbSB1bml0IGZpbGVzLCBzZWUgc3lzdGVtZC51bml0KDUpIG9yCi0jIGh0 dHA6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL1N5c3RlbWQjSG93X2RvX0lfY3VzdG9taXplX2Ff dW5pdF9maWxlLjJGX2FkZF9hX2N1c3RvbV91bml0X2ZpbGUuM0YKLSMKLSMgRG9uJ3QgZm9yZ2V0 IHRvIHJlbG9hZCBzeXN0ZW1kIGRhZW1vbiBhZnRlciB5b3UgY2hhbmdlIHVuaXQgY29uZmlndXJh dGlvbjoKLSMgcm9vdD4gc3lzdGVtY3RsIC0tc3lzdGVtIGRhZW1vbi1yZWxvYWQKLQotW1VuaXRd Ci1EZXNjcmlwdGlvbj1ATklDRV9QUk9KRUNUX05BTUVAIEBNQUpPUl9WRVJTSU9OQC5ATUlOT1Jf VkVSU0lPTkAgZGF0YWJhc2Ugc2VydmVyCi1BZnRlcj1zeXNsb2cudGFyZ2V0Ci1BZnRlcj1uZXR3 b3JrLnRhcmdldAotCi1bU2VydmljZV0KLVR5cGU9bm90aWZ5Ci1Vc2VyPW15c3FsCi1Hcm91cD1t eXNxbAotCi1FeGVjU3RhcnRQcmU9QGxpYmV4ZWNkaXJAL215c3FsLWNoZWNrLXNvY2tldAotRXhl Y1N0YXJ0UHJlPUBsaWJleGVjZGlyQC9teXNxbC1wcmVwYXJlLWRiLWRpciAlbgotIyBOb3RlOiB3 ZSBzZXQgLS1iYXNlZGlyIHRvIHByZXZlbnQgcHJvYmVzIHRoYXQgbWlnaHQgdHJpZ2dlciBTRUxp bnV4IGFsYXJtcywKLSMgcGVyIGJ1ZyAjNTQ3NDg1Ci1FeGVjU3RhcnQ9QGxpYmV4ZWNkaXJAL215 c3FsZCAtLWJhc2VkaXI9QHByZWZpeEAKLUV4ZWNTdG9wUG9zdD1AbGliZXhlY2RpckAvbXlzcWwt d2FpdC1zdG9wCi0KLSMgR2l2ZSBhIHJlYXNvbmFibGUgYW1vdW50IG9mIHRpbWUgZm9yIHRoZSBz ZXJ2ZXIgdG8gc3RhcnQgdXAvc2h1dCBkb3duCi1UaW1lb3V0U2VjPTMwMAotCi0jIFBsYWNlIHRl bXAgZmlsZXMgaW4gYSBzZWN1cmUgZGlyZWN0b3J5LCBub3QgL3RtcAotUHJpdmF0ZVRtcD10cnVl Ci0KLVJlc3RhcnQ9b24tZmFpbHVyZQotCi1SZXN0YXJ0UHJldmVudEV4aXRTdGF0dXM9MQotCi0j IFNldHMgb3Blbl9maWxlc19saW1pdAotTGltaXROT0ZJTEUgPSAxMDAwMAotCi0jIFNldCBlbnZp cm9tZW50IHZhcmlhYmxlIE1ZU1FMRF9QQVJFTlRfUElELiBUaGlzIGlzIHJlcXVpcmVkIGZvciBT UUwgcmVzdGFydCBjb21tYW5kLgotRW52aXJvbm1lbnQ9TVlTUUxEX1BBUkVOVF9QSUQ9MQotCi1b SW5zdGFsbF0KLVdhbnRlZEJ5PW11bHRpLXVzZXIudGFyZ2V0CgpkaWZmIC0tZ2l0IGEvbXlzcWwu dG1wZmlsZXMuZC5pbiBiL215c3FsLnRtcGZpbGVzLmQuaW4KZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDA5NzI5NWMuLjAwMDAwMDAKLS0tIGEvbXlzcWwudG1wZmlsZXMuZC5pbgorKysg L2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotZCBAUElEX0ZJTEVfRElSQCAwNzU1IG15c3FsIG15 c3FsIC0KLQotIyBSdWxlcyBmb3IgZXBoZW1lcmFsIGZpbGUgc3lzdGVtcyAoSW1hZ2VNb2RlKQot ZCAvdmFyL2xpYi9teXNxbCAwNzU1IG15c3FsIG15c3FsIC0KLWQgL3Zhci9sb2cvbXlzcWwgMDc1 MCBteXNxbCBteXNxbCAtCi1mIC92YXIvbG9nL215c3FsL215c3FsLmxvZyAwNjQwIG15c3FsIG15 c3FsIC0KLWQgL3Zhci9saWIvbXlzcWwtZmlsZXMgMDc1MCBteXNxbCBteXNxbCAtCi1kIC92YXIv bGliL215c3FsLWtleXJpbmcgMDcwMCBteXNxbCBteXNxbCAtCgpkaWZmIC0tZ2l0IGEvbXlzcWw4 LjAuc3BlYyBiL215c3FsOC4wLnNwZWMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc0 ZmUyMjguLjAwMDAwMDAKLS0tIGEvbXlzcWw4LjAuc3BlYworKysgL2Rldi9udWxsCkBAIC0xLDMy NDAgKzAsMCBAQAotIyBOYW1lIG9mIHRoZSBwYWNrYWdlIHdpdGhvdXQgYW55IHByZWZpeGVzCi0l Z2xvYmFsIG1ham9ybmFtZSBteXNxbAotJWdsb2JhbCBwYWNrYWdlX3ZlcnNpb24gOC4wLjQ2Ci0l ZGVmaW5lIG1ham9ydmVyc2lvbiAlKGVjaG8gJXtwYWNrYWdlX3ZlcnNpb259IHwgY3V0IC1kJy4n IC1mMS0yICkKLSVnbG9iYWwgcGtnbmFtZXBhdGNoIG15c3FsCi0KLQotIyBTZXQgaWYgdGhpcyBw YWNrYWdlIHdpbGwgYmUgdGhlIGRlZmF1bHQgb25lIGluIGRpc3RyaWJ1dGlvbgotJXshP215c3Fs X2RlZmF1bHQ6JWdsb2JhbCBteXNxbF9kZWZhdWx0IDB9Ci0KLSMgUmVncmVzc2lvbiB0ZXN0cyBt YXkgdGFrZSBhIGxvbmcgdGltZSAobWFueSBjb3JlcyByZWNvbW1lbmRlZCksIHNraXAgdGhlbSBi eQotIyBwYXNzaW5nIC0tbm9jaGVjayB0byBycG1idWlsZCBvciBieSBzZXR0aW5nIHJ1bnNlbGZ0 ZXN0IHRvIDAgaWYgZGVmaW5pbmcKLSMgLS1ub2NoZWNrIGlzIG5vdCBwb3NzaWJsZSAoZS5nLiBp biBrb2ppIGJ1aWxkKQotJXshP3J1bnNlbGZ0ZXN0OiVnbG9iYWwgcnVuc2VsZnRlc3QgMX0KLQot IyBTZXQgdGhpcyB0byAxIHRvIHNlZSB3aGljaCB0ZXN0cyBmYWlsLCBidXQgMCBvbiBwcm9kdWN0 aW9uIHJlYWR5IGJ1aWxkCi0lZ2xvYmFsIGlnbm9yZV90ZXN0c3VpdGVfcmVzdWx0IDAKLQotIyBU aGUgbGFzdCB2ZXJzaW9uIG9uIHdoaWNoIHRoZSBmdWxsIHRlc3RzdWl0ZSBoYXMgYmVlbiBydW4K LSMgSW4gY2FzZSBvZiBmdXJ0aGVyIHJlYnVpbGRzIG9mIHRoYXQgdmVyc2lvbiwgZG9uJ3QgcmVx dWlyZSBmdWxsIHRlc3RzdWl0ZSB0byBiZSBydW4KLSMgcnVuIG9ubHkgIm1haW4iIHN1aXRlCi0l Z2xvYmFsIGxhc3RfdGVzdGVkX3ZlcnNpb24gOC4wLjQ2Ci0jIFNldCB0byAxIHRvIGZvcmNlIHJ1 biB0aGUgdGVzdHN1aXRlIGV2ZW4gaWYgaXQgd2FzIGFscmVhZHkgdGVzdGVkIGluIGN1cnJlbnQg dmVyc2lvbgotJWdsb2JhbCBmb3JjZV9ydW5fdGVzdHN1aXRlIDAKLQotIyBGaWx0ZXJpbmc6IGh0 dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9QYWNrYWdpbmc6QXV0b1Byb3ZpZGVzQW5kUmVx dWlyZXNGaWx0ZXJpbmcKLSVnbG9iYWwgX19yZXF1aXJlc19leGNsdWRlIF5wZXJsXFwoKGhvc3Ru YW1lc3xsaWI6Om10cnxsaWI6OnYxfG10cl98TXk6OikKLSVnbG9iYWwgX19wcm92aWRlc19leGNs dWRlX2Zyb20gXigle19kYXRhZGlyfS8obXlzcWx8bXlzcWwtdGVzdCkvLip8JXtfbGliZGlyfS9t eXNxbC9wbHVnaW4vLipcXC5zbykkCi0KLSVnbG9iYWwgc2tpcGxpc3QgcGxhdGZvcm0tc3BlY2lm aWMtdGVzdHMubGlzdAotCi0lZ2xvYmFsIGJvb3N0X2J1bmRsZWRfdmVyc2lvbiAxLjc3LjAKLQot Ci0jIEZvciBzb21lIHVzZSBjYXNlcyB3ZSBkbyBub3QgbmVlZCBzb21lIHBhcnRzIG9mIHRoZSBw YWNrYWdlCi0lYmNvbmQgY2xpYnJhcnkgMQotJWJjb25kIGRldmVsIDEKLSViY29uZCBjbGllbnQg MQotJWJjb25kIGNvbW1vbiAxCi0lYmNvbmQgZXJybXNnIDEKLSViY29uZCB0ZXN0IDEKLQotIyBX aGVuIHRoZXJlIGlzIGFscmVhZHkgYW5vdGhlciBwYWNrYWdlIHRoYXQgc2hpcHMgL2V0Yy9teS5j bmYsCi0jIHJhdGhlciBpbmNsdWRlIGl0IHRoYW4gc2hpcCB0aGUgZmlsZSBhZ2Fpbiwgc2luY2Ug Y29uZmxpY3RzIGJldHdlZW4KLSMgdGhvc2UgZmlsZXMgbWF5IGNyZWF0ZSBpc3N1ZXMKLSViY29u ZCBjb25maWcgMAotCi0jIFZhcmlvdXMgcGx1Z2lucwotIyBUTy1ETzoKLSMgICBOZWVkIHRvIGNo ZWNrIGFuZCBmaXggdGhlIE9OL09GRiBtYXRyaXggb2YgdGhvc2UgcGx1Z2lucy4KLSMgICBJdCBz ZWVtcyB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBpcyBidWdneSwgZS5nLjoKLSMgICAgIC0g bGRhcCBuZWVkcyBrcmI1LWRldmVsIHRvbwotIyAgICAgLSB3aGVuIGtyNS1kZXZlbCBpcyBwYXJ0 IG9mIHRoZSBidWlsZHJvb3QsIGtlcmJlcm9zIHBsdWdpbiBpcyBjb21waWxlZCBubyBtYXR0ZXIg dGhlIFdJVEhfQVVUSEVOVElDQVRJT05fS0VSQkVST1MgdmFsdWUKLSMgICAgIC0gd2hlbiBmaWRv IGlzIGRpc2FibGVkIGJ1dCBsZGFwIGVuYWJsZWQsIGF1dGhlbnRpY2F0aW9uX29jaV9jbGllbnQu c28gaXMgc3RpbGwgYnVpbHQKLSMgVG8gYXZvaWQgaXNzdWVzLCBsZWF2ZSBlaXRoZXIgYWxsIE9O IG9yIGFsbCBPRkYuCi0laWYgMCV7P2ZlZG9yYX0KLSViY29uZCBmaWRvIDEKLSViY29uZCBrZXJi ZXJvcyAxCi0lYmNvbmQgbGRhcCAxCi0lZWxzZQotJWJjb25kIGZpZG8gMAotJWJjb25kIGtlcmJl cm9zIDAKLSViY29uZCBsZGFwIDAKLSVlbmRpZgotCi0jIEZvciBkZWVwIGRlYnVnZ2luZyB3ZSBu ZWVkIHRvIGJ1aWxkIGJpbmFyaWVzIHdpdGggZXh0cmEgZGVidWcgaW5mbwotJWJjb25kIGRlYnVn IDAKLQotIyBBZGl0aW9uYWwgU0VMaW51eCBydWxlcyBmcm9tIGEgc3RhbmRhbG9uZSBwYWNrYWdl ICdteXNxbC1zZWxpbnV4JyAodGhhdCBob2xkcyBydWxlcyBzaGFyZWQgYmV0d2VlbiBNYXJpYURC IGFuZCBNeVNRTCkKLSViY29uZCByZXF1aXJlX215c3FsX3NlbGludXggMQotCi0KLSMgSW5jbHVk ZSBmaWxlcyBmb3Igc3lzdGVtZAotJWdsb2JhbCBkYWVtb25fbmFtZSAgICAgICBteXNxbGQKLSVn bG9iYWwgZGFlbW9uX25vX3ByZWZpeCAgbXlzcWxkCi0KLSMgV2UgZGVmaW5lIHNvbWUgc3lzdGVt J3Mgd2VsbCBrbm93biBsb2NhdGlvbnMgaGVyZSBzbyB3ZSBjYW4gdXNlIHRoZW0gZWFzaWx5Ci0j IGxhdGVyIHdoZW4gYnVpbGRpbmcgdG8gYW5vdGhlciBsb2NhdGlvbiAobGlrZSBTQ0wpCi0lZ2xv YmFsIGxvZ3JvdGF0ZWRkaXIgICAgICV7X3N5c2NvbmZkaXJ9L2xvZ3JvdGF0ZS5kCi0lZ2xvYmFs IGxvZ2ZpbGVkaXIgICAgICAgICV7X2xvY2Fsc3RhdGVkaXJ9L2xvZy9teXNxbAotJWdsb2JhbCBs b2dmaWxlICAgICAgICAgICAle2xvZ2ZpbGVkaXJ9LyV7ZGFlbW9uX25vX3ByZWZpeH0ubG9nCi0j IERpcmVjdG9yeSBmb3Igc3RvcmluZyBwaWQgZmlsZQotJWdsb2JhbCBwaWRmaWxlZGlyICAgICAg ICAle19ydW5kaXJ9LyV7ZGFlbW9uX25hbWV9Ci0jIERlZmluaW5nIHdoZXJlIGRhdGFiYXNlIGRh dGEgbGl2ZQotJWdsb2JhbCBkYmRhdGFkaXIgICAgICAgICAle19sb2NhbHN0YXRlZGlyfS9saWIv bXlzcWwKLQotCi0jIFNldCBleHBsaWNpdCBjb25mbGljdHMgd2l0aCAnbWFyaWFkYicgcGFja2Fn ZXMKLSViY29uZCBjb25mbGljdHNfbWFyaWFkYiAxCi0KLSMgTWFrZSBsb25nIG1hY3JvcyBzaG9y dGVyCi0lZ2xvYmFsIHNhbWVldnIgICAlez9lcG9jaDole2Vwb2NofTp9JXt2ZXJzaW9ufS0le3Jl bGVhc2V9Ci0KLU5hbWU6ICAgICAgICAgICAgICV7bWFqb3JuYW1lfSV7bWFqb3J2ZXJzaW9ufQot VmVyc2lvbjogICAgICAgICAgJXtwYWNrYWdlX3ZlcnNpb259Ci1SZWxlYXNlOiAgICAgICAgICAz JXs/d2l0aF9kZWJ1ZzouZGVidWd9JXs/ZGlzdH0KLVN1bW1hcnk6ICAgICAgICAgIE15U1FMIGNs aWVudCBwcm9ncmFtcyBhbmQgc2hhcmVkIGxpYnJhcmllcwotVVJMOiAgICAgICAgICAgICAgaHR0 cDovL3d3dy5teXNxbC5jb20KLQotIyBFeGNlcHRpb25zIGFsbG93IGNsaWVudCBsaWJyYXJpZXMg dG8gYmUgbGlua2VkIHdpdGggbW9zdCBvcGVuIHNvdXJjZSBTVywKLSMgbm90IG9ubHkgR1BMIGNv ZGUuICBTZWUgUkVBRE1FLm15c3FsLWxpY2Vuc2UKLUxpY2Vuc2U6ICAgICAgICAgIEdQTC0yLjAt b3ItbGF0ZXIgQU5EIExHUEwtMi4xLW9ubHkgQU5EIEJTTC0xLjAgQU5EIEJTRC0yLUNsYXVzZQot Ci1Tb3VyY2UwOiAgICAgICAgICBodHRwczovL2Nkbi5teXNxbC5jb20vRG93bmxvYWRzL015U1FM LTguMC9teXNxbC1ib29zdC0le3ZlcnNpb259LnRhci5negotU291cmNlMjogICAgICAgICAgbXlz cWxfY29uZmlnX211bHRpbGliLnNoCi1Tb3VyY2UzOiAgICAgICAgICBteS5jbmYuaW4KLVNvdXJj ZTY6ICAgICAgICAgIFJFQURNRS5teXNxbC1kb2NzCi1Tb3VyY2U3OiAgICAgICAgICBSRUFETUUu bXlzcWwtbGljZW5zZQotU291cmNlMTA6ICAgICAgICAgbXlzcWwudG1wZmlsZXMuZC5pbgotU291 cmNlMTE6ICAgICAgICAgbXlzcWwuc2VydmljZS5pbgotU291cmNlMTI6ICAgICAgICAgbXlzcWwt cHJlcGFyZS1kYi1kaXIuc2gKLVNvdXJjZTE0OiAgICAgICAgIG15c3FsLWNoZWNrLXNvY2tldC5z aAotU291cmNlMTU6ICAgICAgICAgbXlzcWwtc2NyaXB0cy1jb21tb24uc2gKLVNvdXJjZTE3OiAg ICAgICAgIG15c3FsLXdhaXQtc3RvcC5zaAotU291cmNlMTg6ICAgICAgICAgbXlzcWxALnNlcnZp Y2UuaW4KLSMgVG8gdHJhY2sgcnBtbGludCB3YXJuaW5ncwotU291cmNlMzA6ICAgICAgICAgJXtw a2duYW1lcGF0Y2h9LnJwbWxpbnRyYwotIyBDb25maWd1cmF0aW9uIGZvciBzZXJ2ZXIKLVNvdXJj ZTMxOiAgICAgICAgIHNlcnZlci5jbmYuaW4KLSMgU2tpcHBlZCB0ZXN0cyBsaXN0cwotU291cmNl NTA6ICAgICAgICAgcmgtc2tpcHBlZC10ZXN0cy1saXN0LWJhc2UubGlzdAotU291cmNlNTE6ICAg ICAgICAgcmgtc2tpcHBlZC10ZXN0cy1saXN0LWFybS5saXN0Ci1Tb3VyY2U1MjogICAgICAgICBy aC1za2lwcGVkLXRlc3RzLWxpc3QtczM5MC5saXN0Ci1Tb3VyY2U1MzogICAgICAgICByaC1za2lw cGVkLXRlc3RzLWxpc3QtcHBjLmxpc3QKLQotIyBDb21tZW50cyBmb3IgdGhlc2UgcGF0Y2hlcyBh cmUgaW4gdGhlIHBhdGNoIGZpbGVzCi0jIFBhdGNoZXMgY29tbW9uIGZvciBtb3JlIG15c3FsLWxp a2UgcGFja2FnZXMKLVBhdGNoMTogICAgICAgICAgICV7cGtnbmFtZXBhdGNofS1pbnN0YWxsLXRl c3QucGF0Y2gKLVBhdGNoMzogICAgICAgICAgICV7cGtnbmFtZXBhdGNofS1maWxlLWNvbnRlbnRz LnBhdGNoCi1QYXRjaDQ6ICAgICAgICAgICAle3BrZ25hbWVwYXRjaH0tc2NyaXB0cy5wYXRjaAot UGF0Y2g1OiAgICAgICAgICAgJXtwa2duYW1lcGF0Y2h9LXBhdGhzLnBhdGNoCi0KLSMgUGF0Y2hl cyBzcGVjaWZpYyBmb3IgdGhpcyBteXNxbCBwYWNrYWdlCi1QYXRjaDUxOiAgICAgICAgICAle3Br Z25hbWVwYXRjaH0tc2hhcmVkaXIucGF0Y2gKLVBhdGNoNTI6ICAgICAgICAgICV7cGtnbmFtZXBh dGNofS1ycGF0aC5wYXRjaAotUGF0Y2g1MzogICAgICAgICAgJXtwa2duYW1lcGF0Y2h9LW10ci5w YXRjaAotUGF0Y2g1NDogICAgICAgICAgJXtwa2duYW1lcGF0Y2h9LWdjYy0xNS5wYXRjaAotUGF0 Y2g1NTogICAgICAgICAgJXtwa2duYW1lcGF0Y2h9LWM5OS5wYXRjaAotUGF0Y2g1NjogICAgICAg ICAgJXtwa2duYW1lcGF0Y2h9LWZsdXNoLWxvZ3JvdGF0ZS5wYXRjaAotUGF0Y2g1NzogICAgICAg ICAgJXtwa2duYW1lcGF0Y2h9LW9wZW5zc2wtZW5naW5lLnBhdGNoCi0KLSMgUGF0Y2hlcyB0YWtl biBmcm9tIGJvb3N0IDEuNTkKLVBhdGNoMTExOiAgICAgICAgIGJvb3N0LTEuNTguMC1wb29sLnBh dGNoCi1QYXRjaDExMjogICAgICAgICBib29zdC0xLjU3LjAtbXBsLXByaW50LnBhdGNoCi0KLSMg UGF0Y2hlcyB0YWtlbiBmcm9tIGJvb3N0IDEuNzYKLVBhdGNoMTEzOiAgICAgICAgIGJvb3N0LTEu NzYuMC1maXhfbXVsdGlwcmVjaXNpb25faXNzdWVfNDE5LXBwYzY0bGUucGF0Y2gKLQotIyBUaGlz IG1hY3JvIGlzIHVzZWQgZm9yIHBhY2thZ2Uvc3ViLXBhY2thZ2UgbmFtZXMgaW4gdGhlIGVudGly ZSBzcGVjZmlsZQotJWlmICU/bXlzcWxfZGVmYXVsdAotJWdsb2JhbCBwa2duYW1lICV7bWFqb3Ju YW1lfQotJXBhY2thZ2UgLW4gJXtwa2duYW1lfQotU3VtbWFyeTogICAgICAgICAgTXlTUUwgY2xp ZW50IHByb2dyYW1zIGFuZCBzaGFyZWQgbGlicmFyaWVzCi0lZWxzZQotJWdsb2JhbCBwa2duYW1l ICV7bmFtZX0KLSVlbmRpZgotCi1CdWlsZFJlcXVpcmVzOiAgICBjbWFrZQotQnVpbGRSZXF1aXJl czogICAgZ2NjLWMrKwotQnVpbGRSZXF1aXJlczogICAgbGliYWlvLWRldmVsCi1CdWlsZFJlcXVp cmVzOiAgICBsaWJlZGl0LWRldmVsCi1CdWlsZFJlcXVpcmVzOiAgICBsaWJldmVudC1kZXZlbAot QnVpbGRSZXF1aXJlczogICAgbGliaWN1LWRldmVsCi1CdWlsZFJlcXVpcmVzOiAgICBsejQtZGV2 ZWwKLUJ1aWxkUmVxdWlyZXM6ICAgIG1lY2FiLWRldmVsCi1CdWlsZFJlcXVpcmVzOiAgICBiaXNv bgotQnVpbGRSZXF1aXJlczogICAgbGlienN0ZC1kZXZlbAotQnVpbGRSZXF1aXJlczogICAgbGli Y3VybC1kZXZlbAotJWlmbmFyY2ggYWFyY2g2NCBzMzkweAotQnVpbGRSZXF1aXJlczogICAgbnVt YWN0bC1kZXZlbAotJWVuZGlmCi1CdWlsZFJlcXVpcmVzOiAgICBvcGVuc3NsCi1CdWlsZFJlcXVp cmVzOiAgICBvcGVuc3NsLWRldmVsCi0laWYgMCV7P2ZlZG9yYX0gPj0gNDEKLSMgQ29tcGxlbWVu dCBvZiBteXNxbC1vcGVuc3NsLWVuZ2luZS5wYXRjaAotQnVpbGRSZXF1aXJlczogICAgb3BlbnNz bC1kZXZlbC1lbmdpbmUKLSVlbmRpZgotCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsLWludGVycHJl dGVyCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsLWdlbmVyYXRvcnMKLUJ1aWxkUmVxdWlyZXM6ICAg IHJwY2dlbgotQnVpbGRSZXF1aXJlczogICAgbGlidGlycGMtZGV2ZWwKLUJ1aWxkUmVxdWlyZXM6 ICAgIHByb3RvYnVmLWxpdGUtZGV2ZWwKLUJ1aWxkUmVxdWlyZXM6ICAgIHpsaWItZGV2ZWwKLUJ1 aWxkUmVxdWlyZXM6ICAgIG11bHRpbGliLXJwbS1jb25maWcKLSMgVGVzdHMgcmVxdWlyZXMgdGlt ZSBhbmQgcHMgYW5kIHNvbWUgcGVybCBtb2R1bGVzCi1CdWlsZFJlcXVpcmVzOiAgICBwcm9jcHMK LUJ1aWxkUmVxdWlyZXM6ICAgIHRpbWUKLUJ1aWxkUmVxdWlyZXM6ICAgIHBlcmwoYmFzZSkKLUJ1 aWxkUmVxdWlyZXM6ICAgIHBlcmwoQ2FycCkKLUJ1aWxkUmVxdWlyZXM6ICAgIHBlcmwoQ3dkKQot QnVpbGRSZXF1aXJlczogICAgcGVybChEaWdlc3Q6OmZpbGUpCi1CdWlsZFJlcXVpcmVzOiAgICBw ZXJsKERpZ2VzdDo6TUQ1KQotQnVpbGRSZXF1aXJlczogICAgcGVybChFbmdsaXNoKQotQnVpbGRS ZXF1aXJlczogICAgcGVybChFbnYpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKEVycm5vKQotQnVp bGRSZXF1aXJlczogICAgcGVybChFeHBvcnRlcikKLUJ1aWxkUmVxdWlyZXM6ICAgIHBlcmwoRmNu dGwpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKEZpbGU6OkJhc2VuYW1lKQotQnVpbGRSZXF1aXJl czogICAgcGVybChGaWxlOjpDb3B5KQotQnVpbGRSZXF1aXJlczogICAgcGVybChGaWxlOjpGaW5k KQotQnVpbGRSZXF1aXJlczogICAgcGVybChGaWxlOjpTcGVjKQotQnVpbGRSZXF1aXJlczogICAg cGVybChGaWxlOjpTcGVjOjpGdW5jdGlvbnMpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKEZpbGU6 OlRlbXApCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKEZpbmRCaW4pCi1CdWlsZFJlcXVpcmVzOiAg ICBwZXJsKERhdGE6OkR1bXBlcikKLUJ1aWxkUmVxdWlyZXM6ICAgIHBlcmwoR2V0b3B0OjpMb25n KQotQnVpbGRSZXF1aXJlczogICAgcGVybChpZikKLUJ1aWxkUmVxdWlyZXM6ICAgIHBlcmwoSU86 OkZpbGUpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKElPOjpIYW5kbGUpCi1CdWlsZFJlcXVpcmVz OiAgICBwZXJsKElPOjpTZWxlY3QpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKElPOjpTb2NrZXQ6 OklORVQpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKElQQzo6T3BlbjMpCi1CdWlsZFJlcXVpcmVz OiAgICBwZXJsKEpTT04pCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKGxpYikKLUJ1aWxkUmVxdWly ZXM6ICAgIHBlcmwoTFdQOjpTaW1wbGUpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKE1lbW9pemUp Ci1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKE5ldDo6UGluZykKLUJ1aWxkUmVxdWlyZXM6ICAgIHBl cmwoUE9TSVgpCi1CdWlsZFJlcXVpcmVzOiAgICBwZXJsKFNvY2tldCkKLUJ1aWxkUmVxdWlyZXM6 ICAgIHBlcmwoc3RyaWN0KQotQnVpbGRSZXF1aXJlczogICAgcGVybChTeXM6Okhvc3RuYW1lKQot QnVpbGRSZXF1aXJlczogICAgcGVybChUZXN0OjpNb3JlKQotQnVpbGRSZXF1aXJlczogICAgcGVy bChUaW1lOjpIaVJlcykKLUJ1aWxkUmVxdWlyZXM6ICAgIHBlcmwoVGltZTo6bG9jYWx0aW1lKQot QnVpbGRSZXF1aXJlczogICAgcGVybCh3YXJuaW5ncykKLUJ1aWxkUmVxdWlyZXM6ICAgIHN5c3Rl bWQKLQotIyBTaW5jZSBNeVNRTCA4LjAuMjgKLSV7P3dpdGhfZmlkbzpCdWlsZFJlcXVpcmVzOiAg ICBsaWJmaWRvMi1kZXZlbH0KLQotJXs/d2l0aF9rZXJiZXJvczpCdWlsZFJlcXVpcmVzOiAgICBr cmI1LWRldmVsfQotJXs/d2l0aF9sZGFwOkJ1aWxkUmVxdWlyZXM6ICAgIG9wZW5sZGFwLWRldmVs IGN5cnVzLXNhc2wtZGV2ZWwgY3lydXMtc2FzbC1zY3JhbX0KLQotCi1SZXF1aXJlczogICAgICAg ICBiYXNoIGNvcmV1dGlscyBncmVwCi1SZXF1aXJlczogICAgICAgICAle3BrZ25hbWV9LWNvbW1v biA9ICV7c2FtZWV2cn0KLQotIyAnYm9vc3QnIGhlYWRlciBmaWxlcyBtdXN0IGJlIGJ1bmRsZWQK LSMgU2VlIGh0dHBzOi8vYnVnemlsbGEucmVkaGF0LmNvbS9zaG93X2J1Zy5jZ2k/aWQ9MjI2MDEz OCNjNyBmb3IgZGV0YWlscwotUHJvdmlkZXM6ICAgICAgICAgYnVuZGxlZChib29zdCkgPSAle2Jv b3N0X2J1bmRsZWRfdmVyc2lvbn0KLQotIyAncmFwaWRqc29uJyBsaWJyYXJ5IG11c3QgYmUgYnVu ZGxlZAotIyBUaGUgcmFwaWRqc29uIHVwc3RyZWFtIG1hZGUgdGhlIGxhc3QgcmVsZWFzZSBpbiAy MDE2LCBldmVuIHRob3VnaCBpdCBoYXMgYW4gYWN0aXZlIGRldmVsb3BtZW50IHRpbGwgdG9kYXkg KDIwMjQsIH43NTAgY29tbWl0cyBzaW5jZSkKLSMgVGhlIE15U1FMIHVwc3RyZWFtIGZvcmtlZCB0 aGUgcHJvamVjdCBmcm9tIGEgc3BlY2lmaWMgY29tbWl0IGFuZCBhZGRlZCBjdXN0b20gcGF0Y2hl cy4gU2VlICJleHRyYS9SQVBJREpTT04tUkVBRE1FIiBmb3IgZGV0YWlscy4KLSMgSW4gdGhlIE15 U1FMIDguMC4zNCwgdGhlIE15U1FMIHVwc3N0cmVhbSBtYWRlIHRoZSAncmFwaWRqc29uJyBsaWJy YXJ5IHRvIGJlIGJ1bmRsZWQgYnkgZGVmYXVsdC4KLVByb3ZpZGVzOiAgICAgICAgIGJ1bmRsZWQo cmFwaWRqc29uKQotCi0jIE5vdCBhdmFpbGFibGUgaW4gRmVkb3JhCi0jIGh0dHBzOi8vZ2l0aHVi LmNvbS9tYXJ0aW51cy91bm9yZGVyZWRfZGVuc2UKLVByb3ZpZGVzOiAgICAgICAgIGJ1bmRsZWQo dW5vcmRlcmVkX2RlbnNlKQotCi0lez93aXRoX2NvbmZsaWN0c19tYXJpYWRiOkNvbmZsaWN0czog bWFyaWFkYi1hbnl9Ci0jIEV4cGxpY2l0bHkgZGlzYWxsb3cgaW5zdGFsbGF0aW9uIG9mIG15c3Fs ICsgbWFyaWFkYi1zZXJ2ZXIKLSV7P3dpdGhfY29uZmxpY3RzX21hcmlhZGI6Q29uZmxpY3RzOiBt YXJpYWRiLXNlcnZlci1hbnl9Ci0KLSVkZWZpbmUgY29uZmxpY3Rfd2l0aF9vdGhlcl9zdHJlYW1z KCkgJXtleHBhbmQ6XAotUHJvdmlkZXM6ICV7bWFqb3JuYW1lfSV7PzE6LSV7MX19LWFueVwKLUNv bmZsaWN0czogJXttYWpvcm5hbWV9JXs/MTotJXsxfX0tYW55XAotfQotCi0jIFByb3ZpZGUgYWxz byBteXNxbFguWCBpZiBkZWZhdWx0Ci0laWYgJT9teXNxbF9kZWZhdWx0Ci0lZGVmaW5lIG15c3Fs WF9pZl9kZWZhdWx0X2FyY2hlZCgpICV7ZXhwYW5kOlwKLU9ic29sZXRlczogbXlzcWwlez8xOi0l ezF9fSA8ICV7c2FtZWV2cn1cCi1PYnNvbGV0ZXM6IG15c3FsJXttYWpvcnZlcnNpb259JXs/MTot JXsxfX0gPCAle3NhbWVldnJ9XAotUHJvdmlkZXM6IG15c3FsJXttYWpvcnZlcnNpb259JXs/MTot JXsxfX0gPSAle3NhbWVldnJ9XAotUHJvdmlkZXM6IG15c3FsJXttYWpvcnZlcnNpb259JXs/MTot JXsxfX0lez9faXNhfSA9ICV7c2FtZWV2cn1cCi19Ci0lZGVmaW5lIG15c3FsWF9pZl9kZWZhdWx0 X25vYXJjaCgpICV7ZXhwYW5kOlwKLU9ic29sZXRlczogbXlzcWwlez8xOi0lezF9fSA8ICV7c2Ft ZWV2cn1cCi1PYnNvbGV0ZXM6IG15c3FsJXttYWpvcnZlcnNpb259JXs/MTotJXsxfX0gPCAle3Nh bWVldnJ9XAotUHJvdmlkZXM6IG15c3FsJXttYWpvcnZlcnNpb259JXs/MTotJXsxfX0gPSAle3Nh bWVldnJ9XAotfQotJWVsc2UKLSVkZWZpbmUgbXlzcWxYX2lmX2RlZmF1bHRfYXJjaGVkKCkgJXtu aWx9Ci0lZGVmaW5lIG15c3FsWF9pZl9kZWZhdWx0X25vYXJjaCgpICV7bmlsfQotJWVuZGlmCi0K LSVkZWZpbmUgYWRkX21ldGFkYXRhX2FyY2hlZCgpICV7ZXhwYW5kOlwKLSVjb25mbGljdF93aXRo X290aGVyX3N0cmVhbXMgJXsqKn1cCi0lbXlzcWxYX2lmX2RlZmF1bHRfYXJjaGVkICV7Kip9XAot fQotJWRlZmluZSBhZGRfbWV0YWRhdGFfbm9hcmNoKCkgJXtleHBhbmQ6XAotJWNvbmZsaWN0X3dp dGhfb3RoZXJfc3RyZWFtcyAleyoqfVwKLSVteXNxbFhfaWZfZGVmYXVsdF9ub2FyY2ggJXsqKn1c Ci19Ci0KLSVhZGRfbWV0YWRhdGFfYXJjaGVkCi0KLSVkZXNjcmlwdGlvbgotTXlTUUwgaXMgYSBt dWx0aS11c2VyLCBtdWx0aS10aHJlYWRlZCBTUUwgZGF0YWJhc2Ugc2VydmVyLiBNeVNRTCBpcyBh Ci1jbGllbnQvc2VydmVyIGltcGxlbWVudGF0aW9uIGNvbnNpc3Rpbmcgb2YgYSBzZXJ2ZXIgZGFl bW9uIChteXNxbGQpCi1hbmQgbWFueSBkaWZmZXJlbnQgY2xpZW50IHByb2dyYW1zIGFuZCBsaWJy YXJpZXMuIFRoZSBiYXNlIHBhY2thZ2UKLWNvbnRhaW5zIHRoZSBzdGFuZGFyZCBNeVNRTCBjbGll bnQgcHJvZ3JhbXMgYW5kIGdlbmVyaWMgTXlTUUwgZmlsZXMuCi0KLSVpZiAlP215c3FsX2RlZmF1 bHQKLSVkZXNjcmlwdGlvbiAtbiAle3BrZ25hbWV9Ci1NeVNRTCBpcyBhIG11bHRpLXVzZXIsIG11 bHRpLXRocmVhZGVkIFNRTCBkYXRhYmFzZSBzZXJ2ZXIuIE15U1FMIGlzIGEKLWNsaWVudC9zZXJ2 ZXIgaW1wbGVtZW50YXRpb24gY29uc2lzdGluZyBvZiBhIHNlcnZlciBkYWVtb24gKG15c3FsZCkK LWFuZCBtYW55IGRpZmZlcmVudCBjbGllbnQgcHJvZ3JhbXMgYW5kIGxpYnJhcmllcy4gVGhlIGJh c2UgcGFja2FnZQotY29udGFpbnMgdGhlIHN0YW5kYXJkIE15U1FMIGNsaWVudCBwcm9ncmFtcyBh bmQgZ2VuZXJpYyBNeVNRTCBmaWxlcy4KLSVlbmRpZgotCi0laWYgJXt3aXRoIGNsaWJyYXJ5fQot JXBhY2thZ2UgICAgICAgICAgLW4gJXtwa2duYW1lfS1saWJzCi1TdW1tYXJ5OiAgICAgICAgICBU aGUgc2hhcmVkIGxpYnJhcmllcyByZXF1aXJlZCBmb3IgTXlTUUwgY2xpZW50cwotUmVxdWlyZXM6 ICAgICAgICAgJXtwa2duYW1lfS1jb21tb24gPSAle3NhbWVldnJ9Ci0KLSVhZGRfbWV0YWRhdGFf YXJjaGVkIGxpYnMKLQotJWRlc2NyaXB0aW9uICAgICAgLW4gJXtwa2duYW1lfS1saWJzCi1UaGUg bXlzcWwtbGlicyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBlc3NlbnRpYWwgc2hhcmVkIGxpYnJhcmll cyBmb3IgYW55Ci1NeVNRTCBjbGllbnQgcHJvZ3JhbSBvciBpbnRlcmZhY2UuIFlvdSB3aWxsIG5l ZWQgdG8gaW5zdGFsbCB0aGlzIHBhY2thZ2UKLXRvIHVzZSBhbnkgb3RoZXIgTXlTUUwgcGFja2Fn ZSBvciBhbnkgY2xpZW50cyB0aGF0IG5lZWQgdG8gY29ubmVjdCB0byBhCi1NeVNRTCBzZXJ2ZXIu Ci0lZW5kaWYKLQotCi0laWYgJXt3aXRoIGNvbmZpZ30KLSVwYWNrYWdlICAgICAgICAgIC1uICV7 cGtnbmFtZX0tY29uZmlnCi1TdW1tYXJ5OiAgICAgICAgICBUaGUgY29uZmlnIGZpbGVzIHJlcXVp cmVkIGJ5IHNlcnZlciBhbmQgY2xpZW50Ci0KLSVhZGRfbWV0YWRhdGFfYXJjaGVkIGNvbmZpZwot Ci0lZGVzY3JpcHRpb24gICAgICAtbiAle3BrZ25hbWV9LWNvbmZpZwotVGhlIHBhY2thZ2UgcHJv dmlkZXMgdGhlIGNvbmZpZyBmaWxlIG15LmNuZiBhbmQgbXkuY25mLmQgZGlyZWN0b3J5IHVzZWQg YnkgYW55Ci1NYXJpYURCIG9yIE15U1FMIHByb2dyYW0uIFlvdSB3aWxsIG5lZWQgdG8gaW5zdGFs bCB0aGlzIHBhY2thZ2UgdG8gdXNlIGFueQotb3RoZXIgTWFyaWFEQiBvciBNeVNRTCBwYWNrYWdl IGlmIHRoZSBjb25maWcgZmlsZXMgYXJlIG5vdCBwcm92aWRlZCBpbiB0aGUKLXBhY2thZ2UgaXRz ZWxmLgotJWVuZGlmCi0KLQotJWlmICV7d2l0aCBjb21tb259Ci0lcGFja2FnZSAgICAgICAgICAt biAle3BrZ25hbWV9LWNvbW1vbgotU3VtbWFyeTogICAgICAgICAgVGhlIHNoYXJlZCBmaWxlcyBy ZXF1aXJlZCBmb3IgTXlTUUwgc2VydmVyIGFuZCBjbGllbnQKLUJ1aWxkQXJjaDogICAgICAgIG5v YXJjaAotJWlmIDAlez9mbGF0cGFrfQotUmVxdWlyZXM6ICAgICAgICAgbWFyaWFkYi1jb25uZWN0 b3ItYy1jb25maWcKLSVlbHNlCi1SZXF1aXJlczogICAgICAgICAle19zeXNjb25mZGlyfS9teS5j bmYKLSVlbmRpZgotCi0jIEFzIHRoaXMgcGFja2FnZSBpcyBub2FyY2gsIGl0IGNhbid0IHVzZSB0 aGUgJSV7P19pc2F9IFJQTSBtYWNybwotJWFkZF9tZXRhZGF0YV9ub2FyY2ggY29tbW9uCi0KLSVk ZXNjcmlwdGlvbiAgICAgIC1uICV7cGtnbmFtZX0tY29tbW9uCi1UaGUgbXlzcWwtY29tbW9uIHBh Y2thZ2UgcHJvdmlkZXMgdGhlIGVzc2VudGlhbCBzaGFyZWQgZmlsZXMgZm9yIGFueQotTXlTUUwg cHJvZ3JhbS4gWW91IHdpbGwgbmVlZCB0byBpbnN0YWxsIHRoaXMgcGFja2FnZSB0byB1c2UgYW55 IG90aGVyCi1NeVNRTCBwYWNrYWdlLgotJWVuZGlmCi0KLQotJWlmICV7d2l0aCBlcnJtc2d9Ci0l cGFja2FnZSAgICAgICAgICAtbiAle3BrZ25hbWV9LWVycm1zZwotU3VtbWFyeTogICAgICAgICAg VGhlIGVycm9yIG1lc3NhZ2VzIGZpbGVzIHJlcXVpcmVkIGJ5IE15U1FMIHNlcnZlcgotQnVpbGRB cmNoOiAgICAgICAgbm9hcmNoCi1SZXF1aXJlczogICAgICAgICAle3BrZ25hbWV9LWNvbW1vbiA9 ICV7c2FtZWV2cn0KLQotIyBBcyB0aGlzIHBhY2thZ2UgaXMgbm9hcmNoLCBpdCBjYW4ndCB1c2Ug dGhlICUlez9faXNhfSBSUE0gbWFjcm8KLSVhZGRfbWV0YWRhdGFfbm9hcmNoIGVycm1zZwotCi0l ZGVzY3JpcHRpb24gICAgICAtbiAle3BrZ25hbWV9LWVycm1zZwotVGhlIHBhY2thZ2UgcHJvdmlk ZXMgZXJyb3IgbWVzc2FnZXMgZmlsZXMgZm9yIHRoZSBNeVNRTCBkYWVtb24KLSVlbmRpZgotCi0K LSVwYWNrYWdlICAgICAgICAgIC1uICV7cGtnbmFtZX0tc2VydmVyCi1TdW1tYXJ5OiAgICAgICAg ICBUaGUgTXlTUUwgc2VydmVyIGFuZCByZWxhdGVkIGZpbGVzCi0KLVJlcXVpcmVzOiAgICAgICAg ICV7cGtnbmFtZX0lez9faXNhfSA9ICV7c2FtZWV2cn0KLQotUmVxdWlyZXM6ICAgICAgICAgJXtw a2duYW1lfS1jb21tb24gPSAle3NhbWVldnJ9Ci0laWYgMCV7P2ZsYXRwYWt9Ci1SZXF1aXJlczog ICAgICAgICBtYXJpYWRiLWNvbm5lY3Rvci1jLWNvbmZpZwotJWVsc2UKLVJlcXVpcmVzOiAgICAg ICAgICV7X3N5c2NvbmZkaXJ9L215LmNuZgotUmVxdWlyZXM6ICAgICAgICAgJXtfc3lzY29uZmRp cn0vbXkuY25mLmQKLSVlbmRpZgotUmVxdWlyZXM6ICAgICAgICAgJXtwa2duYW1lfS1lcnJtc2cg PSAle3NhbWVldnJ9Ci0lez9tZWNhYjpSZXF1aXJlczogbWVjYWItaXBhZGljfQotUmVxdWlyZXM6 ICAgICAgICAgY29yZXV0aWxzCi0jIFdlIHJlcXVpcmUgdGhpcyB0byBiZSBwcmVzZW50IGZvciAl JXtfdG1wZmlsZXNkaXJ9Ci0jIGBzeXN0ZW1kYCBpcyBhbHNvIHJlcXVpcmVkIGZvciBsb2dyb3Rh dGUsIGFzIGl0IHVzZXMgYHN5c3RlbWN0bCBraWxsYAotUmVxdWlyZXM6ICAgICAgICAgc3lzdGVt ZAotIyBNYWtlIHN1cmUgaXQncyB0aGVyZSB3aGVuIHNjcmlwdGxldHMgcnVuLCB0b28KLSV7P3N5 c3RlbWRfcmVxdWlyZXM6ICVzeXN0ZW1kX3JlcXVpcmVzfQotIyBTWVNfTklDRSBjYXBhYmlsaXRp ZXM7ICMxNTQwOTQ2Ci1SZWNvbW1lbmRzOiAgICAgICBsaWJjYXAKLSMgc2VtYW5hZ2UKLVJlcXVp cmVzKHBvc3QpOiAgIHBvbGljeWNvcmV1dGlscy1weXRob24tdXRpbHMKLQotIyBBZGl0aW9uYWwg U0VMaW51eCBydWxlcyAoY29tbW9uIGZvciBNYXJpYURCICYgTXlTUUwpIHNoaXBwZWQgaW4gYSBz ZXBhcmF0ZSBwYWNrYWdlCi0jIEZvciBjYXNlcywgd2hlcmUgd2Ugd2FudCB0byBmaXggYSBTRUxp bnV4IGlzc3VlcyBpbiBNeVNRTCBzb29uZXIgdGhhbiBwYXRjaGVkIHNlbGludXgtcG9saWN5LXRh cmdldGVkIHBhY2thZ2UgaXMgcmVsZWFzZWQKLSVpZiAle3dpdGggcmVxdWlyZV9teXNxbF9zZWxp bnV4fQotUmVxdWlyZXM6ICAgICAgICAgKG15c3FsLXNlbGludXggaWYgc2VsaW51eC1wb2xpY3kt dGFyZ2V0ZWQpCi0lZW5kaWYKLQotJXs/d2l0aF9jb25mbGljdHNfbWFyaWFkYjpDb25mbGljdHM6 IG1hcmlhZGItc2VydmVyLWFueX0KLSV7P3dpdGhfY29uZmxpY3RzX21hcmlhZGI6Q29uZmxpY3Rz OiBtYXJpYWRiLXNlcnZlci11dGlscy1hbnl9Ci0lez93aXRoX2NvbmZsaWN0c19tYXJpYWRiOkNv bmZsaWN0czogbWFyaWFkYi1zZXJ2ZXItZ2FsZXJhLWFueX0KLSMgRXhwbGljaXRseSBkaXNhbGxv dyBpbnN0YWxsYXRpb24gb2YgbXlzcWwgKyBtYXJpYWRiLXNlcnZlcgotJXs/d2l0aF9jb25mbGlj dHNfbWFyaWFkYjpDb25mbGljdHM6IG1hcmlhZGItYW55fQotCi0lYWRkX21ldGFkYXRhX2FyY2hl ZCBzZXJ2ZXIKLQotJWRlc2NyaXB0aW9uICAgICAgLW4gJXtwa2duYW1lfS1zZXJ2ZXIKLU15U1FM IGlzIGEgbXVsdGktdXNlciwgbXVsdGktdGhyZWFkZWQgU1FMIGRhdGFiYXNlIHNlcnZlci4gTXlT UUwgaXMgYQotY2xpZW50L3NlcnZlciBpbXBsZW1lbnRhdGlvbiBjb25zaXN0aW5nIG9mIGEgc2Vy dmVyIGRhZW1vbiAobXlzcWxkKQotYW5kIG1hbnkgZGlmZmVyZW50IGNsaWVudCBwcm9ncmFtcyBh bmQgbGlicmFyaWVzLiBUaGlzIHBhY2thZ2UgY29udGFpbnMKLXRoZSBNeVNRTCBzZXJ2ZXIgYW5k IHNvbWUgYWNjb21wYW55aW5nIGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4KLQotCi0laWYgJXt3aXRo IGRldmVsfQotJXBhY2thZ2UgICAgICAgICAgLW4gJXtwa2duYW1lfS1kZXZlbAotU3VtbWFyeTog ICAgICAgICAgRmlsZXMgZm9yIGRldmVsb3BtZW50IG9mIE15U1FMIGFwcGxpY2F0aW9ucwotJXs/ d2l0aF9jbGlicmFyeTpSZXF1aXJlczogICAgICAgICAle3BrZ25hbWV9LWxpYnMlez9faXNhfSA9 ICV7c2FtZWV2cn19Ci1SZXF1aXJlczogICAgICAgICBvcGVuc3NsLWRldmVsCi1SZXF1aXJlczog ICAgICAgICB6bGliLWRldmVsCi1SZXF1aXJlczogICAgICAgICBsaWJ6c3RkLWRldmVsCi0lez93 aXRoX2NvbmZsaWN0c19tYXJpYWRiOkNvbmZsaWN0czogbWFyaWFkYi1kZXZlbC1hbnl9Ci0lez93 aXRoX2NvbmZsaWN0c19tYXJpYWRiOkNvbmZsaWN0czogbWFyaWFkYi1jb25uZWN0b3ItYy1kZXZl bH0KLQotJWFkZF9tZXRhZGF0YV9hcmNoZWQgZGV2ZWwKLQotJWRlc2NyaXB0aW9uICAgICAgLW4g JXtwa2duYW1lfS1kZXZlbAotTXlTUUwgaXMgYSBtdWx0aS11c2VyLCBtdWx0aS10aHJlYWRlZCBT UUwgZGF0YWJhc2Ugc2VydmVyLiBUaGlzCi1wYWNrYWdlIGNvbnRhaW5zIHRoZSBsaWJyYXJpZXMg YW5kIGhlYWRlciBmaWxlcyB0aGF0IGFyZSBuZWVkZWQgZm9yCi1kZXZlbG9waW5nIE15U1FMIGNs aWVudCBhcHBsaWNhdGlvbnMuCi0lZW5kaWYKLQotJWlmICV7d2l0aCB0ZXN0fQotJXBhY2thZ2Ug ICAgICAgICAgLW4gJXtwa2duYW1lfS10ZXN0Ci1TdW1tYXJ5OiAgICAgICAgICBUaGUgdGVzdCBz dWl0ZSBkaXN0cmlidXRlZCB3aXRoIE15U1FMCi1SZXF1aXJlczogICAgICAgICAle3BrZ25hbWV9 JXs/X2lzYX0gPSAle3NhbWVldnJ9Ci1SZXF1aXJlczogICAgICAgICAle3BrZ25hbWV9LWNvbW1v biA9ICV7c2FtZWV2cn0KLVJlcXVpcmVzOiAgICAgICAgICV7cGtnbmFtZX0tc2VydmVyJXs/X2lz YX0gPSAle3NhbWVldnJ9Ci1SZXF1aXJlczogICAgICAgICBnemlwCi1SZXF1aXJlczogICAgICAg ICBsejQKLVJlcXVpcmVzOiAgICAgICAgIG9wZW5zc2wKLVJlcXVpcmVzOiAgICAgICAgIHBlcmwo RGlnZXN0OjpmaWxlKQotUmVxdWlyZXM6ICAgICAgICAgcGVybChEaWdlc3Q6Ok1ENSkKLVJlcXVp cmVzOiAgICAgICAgIHBlcmwoRW52KQotUmVxdWlyZXM6ICAgICAgICAgcGVybChFeHBvcnRlcikK LVJlcXVpcmVzOiAgICAgICAgIHBlcmwoRmNudGwpCi1SZXF1aXJlczogICAgICAgICBwZXJsKEZp bGU6OlRlbXApCi1SZXF1aXJlczogICAgICAgICBwZXJsKEZpbmRCaW4pCi1SZXF1aXJlczogICAg ICAgICBwZXJsKERhdGE6OkR1bXBlcikKLVJlcXVpcmVzOiAgICAgICAgIHBlcmwoR2V0b3B0OjpM b25nKQotUmVxdWlyZXM6ICAgICAgICAgcGVybChJUEM6Ok9wZW4zKQotUmVxdWlyZXM6ICAgICAg ICAgcGVybChKU09OKQotUmVxdWlyZXM6ICAgICAgICAgcGVybChMV1A6OlNpbXBsZSkKLVJlcXVp cmVzOiAgICAgICAgIHBlcmwoTWVtb2l6ZSkKLVJlcXVpcmVzOiAgICAgICAgIHBlcmwoU29ja2V0 KQotUmVxdWlyZXM6ICAgICAgICAgcGVybChTeXM6Okhvc3RuYW1lKQotUmVxdWlyZXM6ICAgICAg ICAgcGVybChUZXN0OjpNb3JlKQotUmVxdWlyZXM6ICAgICAgICAgcGVybChUaW1lOjpIaVJlcykK LQotJXs/d2l0aF9jb25mbGljdHNfbWFyaWFkYjpDb25mbGljdHM6IG1hcmlhZGItdGVzdC1hbnl9 Ci0KLSVhZGRfbWV0YWRhdGFfYXJjaGVkIHRlc3QKLQotJWRlc2NyaXB0aW9uICAgICAgLW4gJXtw a2duYW1lfS10ZXN0Ci1NeVNRTCBpcyBhIG11bHRpLXVzZXIsIG11bHRpLXRocmVhZGVkIFNRTCBk YXRhYmFzZSBzZXJ2ZXIuIFRoaXMKLXBhY2thZ2UgY29udGFpbnMgdGhlIHJlZ3Jlc3Npb24gdGVz dCBzdWl0ZSBkaXN0cmlidXRlZCB3aXRoCi10aGUgTXlTUUwgc291cmNlcy4KLSVlbmRpZgotCi0K LSVwcmVwCi0lYXV0b3NldHVwIC1OIC1uIG15c3FsLSV7dmVyc2lvbn0KLSVhdXRvcGF0Y2ggLU0g MTAwIC1wMQotCi0jIFBhdGNoIEJvb3N0Ci1wdXNoZCBib29zdC9ib29zdF8kKGVjaG8gJXtib29z dF9idW5kbGVkX3ZlcnNpb259fCB0ciAuIF8pCi0lYXV0b3BhdGNoIC1tIDEwMCAtcDEKLXBvcGQK LQotIyBSZW1vdmUgYnVuZGxlZCBjb2RlIHRoYXQgaXMgdW51c2VkIChhbGwgY2FzZXMgaW4gd2hp Y2ggd2UgdXNlIHRoZSBzeXN0ZW0gdmVyc2lvbiBvZiB0aGUgbGlicmFyeSBpbnN0ZWFkKQotIyBh cyByZXF1aXJlZCBieSBodHRwczovL2RvY3MuZmVkb3JhcHJvamVjdC5vcmcvZW4tVVMvcGFja2Fn aW5nLWd1aWRlbGluZXMvI2J1bmRsaW5nCi1ybSAtciBleHRyYS9jdXJsCi1ybSAtciBleHRyYS9p Y3UKLXJtIC1yIGV4dHJhL2xpYmNib3IKLXJtIC1yIGV4dHJhL2xpYmVkaXQKLXJtIC1yIGV4dHJh L2xpYmV2ZW50Ci1ybSAtciBleHRyYS9saWJmaWRvMgotcm0gLXIgZXh0cmEvcHJvdG9idWYKLXJt IC1yIGV4dHJhL3RpcnBjCi1ybSAtciBleHRyYS96bGliCi1ybSAtciBleHRyYS96c3RkCi0jIFRo cmVlIGZpbGVzIGZyb20gdGhlIGx6NCBidW5kbGUgdHJlZSBhcmUgc3RpbGwgbmVlZGVkLgotIyBU aGV5IGFyZSB0aGUgJ3h4aGFzaCcgbGlicmFyeSB3aXRoIGN1c3RvbSBleHRlbnNpb24gdG8gaXQu Ci1maW5kIGV4dHJhL2x6NCAtdHlwZSBmICEgXCggLW5hbWUgJ3h4aGFzaC5jJyAtbyAtbmFtZSAn eHhoYXNoLmgnIC1vIC1uYW1lICdteV94eGhhc2guaCcgXCkgLWRlbGV0ZQotIyBOZWVkZWQgZm9y IHVuaXQgdGVzdHMgKGRpZmZlcmVudCBmcm9tIE1UUiB0ZXN0cyksIHdoaWNoIHdlIGRvZXNuJ3Qg cnVuLCBhcyB0aGV5IGRvZXNuJ3Qgd29yayBvbiBzb21lIGFyY2hpdGVjdHVyZXM6ICMxOTg5ODQ3 Ci1ybSAtciBleHRyYS9nb29nbGV0ZXN0Ci1ybSAtciBleHRyYS9hYnNlaWwKLQotIyBnZW5lcmF0 ZSBhIGxpc3Qgb2YgdGVzdHMgdGhhdCBmYWlsLCBidXQgYXJlIG5vdCBkaXNhYmxlZCBieSB1cHN0 cmVhbQotY2F0ICV7U09VUkNFNTB9IHwgdGVlIC1hIG15c3FsLXRlc3QvJXtza2lwbGlzdH0KLQot IyBkaXNhYmxlIHNvbWUgdGVzdHMgZmFpbGluZyBvbiBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlcwot JWlmYXJjaCBhYXJjaDY0Ci1jYXQgJXtTT1VSQ0U1MX0gfCB0ZWUgLWEgbXlzcWwtdGVzdC8le3Nr aXBsaXN0fQotJWVuZGlmCi0KLSVpZmFyY2ggczM5MHgKLWNhdCAle1NPVVJDRTUyfSB8IHRlZSAt YSBteXNxbC10ZXN0LyV7c2tpcGxpc3R9Ci0lZW5kaWYKLQotJWlmYXJjaCBwcGM2NGxlCi1jYXQg JXtTT1VSQ0U1M30gfCB0ZWUgLWEgbXlzcWwtdGVzdC8le3NraXBsaXN0fQotJWVuZGlmCi0KLQot Ci1jcCAle1NPVVJDRTJ9ICV7U09VUkNFM30gJXtTT1VSQ0UxMH0gJXtTT1VSQ0UxMX0gJXtTT1VS Q0UxMn0gXAotICAgJXtTT1VSQ0UxNH0gJXtTT1VSQ0UxNX0gJXtTT1VSQ0UxN30gJXtTT1VSQ0Ux OH0gJXtTT1VSQ0UzMX0gc2NyaXB0cwotCi0lYnVpbGQKLSMgZmFpbCBxdWlja2x5IGFuZCBvYnZp b3VzbHkgaWYgdXNlciB0cmllcyB0byBidWlsZCBhcyByb290Ci0laWYgJXJ1bnNlbGZ0ZXN0Ci0g ICAgaWYgWyB4IiQoaWQgLXUpIiA9ICJ4MCIgXTsgdGhlbgotICAgICAgICBlY2hvICJteXNxbCdz IHJlZ3Jlc3Npb24gdGVzdHMgZmFpbCBpZiBydW4gYXMgcm9vdC4iCi0gICAgICAgIGVjaG8gIklm IHlvdSByZWFsbHkgbmVlZCB0byBidWlsZCB0aGUgUlBNIGFzIHJvb3QsIHVzZSIKLSAgICAgICAg ZWNobyAiLS1ub2NoZWNrIHRvIHNraXAgdGhlIHJlZ3Jlc3Npb24gdGVzdHMuIgotICAgICAgICBl eGl0IDEKLSAgICBmaQotJWVuZGlmCi0KLSMgVGhlIElOU1RBTExfeHh4IG1hY3JvcyBoYXZlIHRv IGJlIHNwZWNpZmllZCByZWxhdGl2ZSB0byBDTUFLRV9JTlNUQUxMX1BSRUZJWAotIyBzbyB3ZSBj YW4ndCB1c2UgJSV7X2RhdGFkaXJ9IGFuZCBzbyBmb3J0aCBoZXJlLgotJWNtYWtlIFwKLSAgICAg ICAgIC1EQlVJTERfQ09ORklHPW15c3FsX3JlbGVhc2UgXAotICAgICAgICAgLURJTlNUQUxMX0xB WU9VVD1SUE0gXAotICAgICAgICAgLUREQUVNT05fTkFNRT0iJXtkYWVtb25fbmFtZX0iIFwKLSAg ICAgICAgIC1EREFFTU9OX05PX1BSRUZJWD0iJXtkYWVtb25fbm9fcHJlZml4fSIgXAotICAgICAg ICAgLURMT0dGSUxFX1JQTT0iJXtsb2dmaWxlfSIgXAotICAgICAgICAgLURQSURfRklMRV9ESVI9 IiV7cGlkZmlsZWRpcn0iIFwKLSAgICAgICAgIC1ETklDRV9QUk9KRUNUX05BTUU9Ik15U1FMIiBc Ci0gICAgICAgICAtRENNQUtFX0lOU1RBTExfUFJFRklYPSIle19wcmVmaXh9IiBcCi0gICAgICAg ICAtRFNZU0NPTkZESVI9IiV7X3N5c2NvbmZkaXJ9IiBcCi0gICAgICAgICAtRFNZU0NPTkYyRElS PSIle19zeXNjb25mZGlyfS9teS5jbmYuZCIgXAotICAgICAgICAgLURJTlNUQUxMX0RPQ0RJUj0i c2hhcmUvZG9jLyV7bWFqb3JuYW1lfSIgXAotICAgICAgICAgLURJTlNUQUxMX0RPQ1JFQURNRURJ Uj0ic2hhcmUvZG9jLyV7bWFqb3JuYW1lfSIgXAotICAgICAgICAgLURJTlNUQUxMX0lOQ0xVREVE SVI9aW5jbHVkZS9teXNxbCBcCi0gICAgICAgICAtRElOU1RBTExfSU5GT0RJUj1zaGFyZS9pbmZv IFwKLSAgICAgICAgIC1ESU5TVEFMTF9MSUJFWEVDRElSPWxpYmV4ZWMgXAotICAgICAgICAgLURJ TlNUQUxMX0xJQkRJUj0iJXtfbGlifS9teXNxbCIgXAotICAgICAgICAgLURSUEFUSF9MSUJESVI9 IiV7X2xpYmRpcn0iIFwKLSAgICAgICAgIC1ESU5TVEFMTF9NQU5ESVI9c2hhcmUvbWFuIFwKLSAg ICAgICAgIC1ESU5TVEFMTF9NWVNRTFNIQVJFRElSPXNoYXJlLyV7bWFqb3JuYW1lfSBcCi0gICAg ICAgICAtRElOU1RBTExfTVlTUUxURVNURElSPXNoYXJlL215c3FsLXRlc3QgXAotICAgICAgICAg LURJTlNUQUxMX1BMVUdJTkRJUj0iJXtfbGlifS9teXNxbC9wbHVnaW4iIFwKLSAgICAgICAgIC1E SU5TVEFMTF9TQklORElSPWJpbiBcCi0gICAgICAgICAtRElOU1RBTExfU1VQUE9SVEZJTEVTRElS PXNoYXJlLyV7bWFqb3JuYW1lfSBcCi0gICAgICAgICAtRE1ZU1FMX0RBVEFESVI9IiV7ZGJkYXRh ZGlyfSIgXAotICAgICAgICAgLURNWVNRTF9VTklYX0FERFI9Ii92YXIvbGliL215c3FsL215c3Fs LnNvY2siIFwKLSAgICAgICAgIC1ERU5BQkxFRF9MT0NBTF9JTkZJTEU9T04gXAotICAgICAgICAg LURXSVRIX1NZU1RFTUQ9MSBcCi0gICAgICAgICAtRFNZU1RFTURfU0VSVklDRV9OQU1FPSIle2Rh ZW1vbl9uYW1lfSIgXAotICAgICAgICAgLURTWVNURU1EX1BJRF9ESVI9IiV7cGlkZmlsZWRpcn0i IFwKLSAgICAgICAgIC1EV0lUSF9JTk5PREJfTUVNQ0FDSEVEPU9OIFwKLSVpZm5hcmNoIGFhcmNo NjQgczM5MHgKLSAgICAgICAgIC1EV0lUSF9OVU1BPU9OIFwKLSVlbmRpZgotJWlmYXJjaCBzMzkw eAotICAgICAgICAgLURVU0VfTERfR09MRD1PRkYgXAotJWVuZGlmCi0gICAgICAgICAtRFdJVEhf Uk9VVEVSPU9GRiBcCi0gICAgICAgICAtRFdJVEhfU1lTVEVNX0xJQlM9T04gXAotICAgICAgICAg LURXSVRIX1pMSUI9c3lzdGVtIFwKLSAgICAgICAgIC1EV0lUSF9SQVBJREpTT049YnVuZGxlZCBc Ci0gICAgICAgICAtRFdJVEhfTUVDQUI9c3lzdGVtIFwKLSAgICAgICAgIC1EV0lUSF9GSURPPSV7 P3dpdGhfZmlkbzpzeXN0ZW19JXshP3dpdGhfZmlkbzpub25lfSBcCi0gICAgICAgICAtRFdJVEhf QVVUSEVOVElDQVRJT05fRklETz0lez93aXRoX2ZpZG86T059JXshP3dpdGhfZmlkbzpPRkZ9IFwK LSAgICAgICAgIC1EV0lUSF9BVVRIRU5USUNBVElPTl9LRVJCRVJPUz0lez93aXRoX2tlcmJlcm9z Ok9OfSV7IT93aXRoX2tlcmJlcm9zOk9GRn0gXAotICAgICAgICAgLURXSVRIX0FVVEhFTlRJQ0FU SU9OX0xEQVA9JXs/d2l0aF9sZGFwOk9OfSV7IT93aXRoX2xkYXA6T0ZGfSBcCi0gICAgICAgICAt RFdJVEhfQk9PU1Q9Ym9vc3QgXAotICAgICAgICAgLURSRVBST0RVQ0lCTEVfQlVJTEQ9T0ZGIFwK LSAgICAgICAgIC1EQ01BS0VfQ19GTEFHUz0iJXtvcHRmbGFnc30lez93aXRoX2RlYnVnOiAtZm5v LXN0cmljdC1vdmVyZmxvdyAtV25vLXVudXNlZC1yZXN1bHQgLVduby11bnVzZWQtZnVuY3Rpb24g LVduby11bnVzZWQtYnV0LXNldC12YXJpYWJsZX0iIFwKLSAgICAgICAgIC1EQ01BS0VfQ1hYX0ZM QUdTPSIle29wdGZsYWdzfSV7P3dpdGhfZGVidWc6IC1mbm8tc3RyaWN0LW92ZXJmbG93IC1Xbm8t dW51c2VkLXJlc3VsdCAtV25vLXVudXNlZC1mdW5jdGlvbiAtV25vLXVudXNlZC1idXQtc2V0LXZh cmlhYmxlfSIgXAotICAgICAgICAgLURDTUFLRV9FWEVfTElOS0VSX0ZMQUdTPSItcGllICV7YnVp bGRfbGRmbGFnc30iIFwKLSAgICAgICAgIC1EV0lUSF9MVE89T04gXAotJXs/d2l0aF9kZWJ1Zzog LURXSVRIX0RFQlVHPTF9IFwKLSV7P3dpdGhfZGVidWc6IC1ETVlTUUxfTUFJTlRBSU5FUl9NT0RF PTB9IFwKLSAgICAgICAgIC1EVE1QRElSPS92YXIvdG1wIFwKLSAgICAgICAgIC1EQ01BS0VfQ19M SU5LX0ZMQUdTPSIle2J1aWxkX2xkZmxhZ3N9IiBcCi0gICAgICAgICAtRENNQUtFX0NYWF9MSU5L X0ZMQUdTPSIle2J1aWxkX2xkZmxhZ3N9IiBcCi0gICAgICAgICAtRENNQUtFX1NLSVBfSU5TVEFM TF9SUEFUSD1ZRVMgXAotICAgICAgICAgLURXSVRIX1VOSVRfVEVTVFM9MAotCi0KLSMgTm90ZTog ZGlzYWJsaW5nIGJ1aWxkaW5nIG9mIHVuaXR0ZXN0cyB0byB3b3JrYXJvdW5kICMxOTg5ODQ3Ci0K LSMgUHJpbnQgYWxsIENtYWtlIG9wdGlvbnMgdmFsdWVzOyAiLUxBSCIgbWVhbnMgIkxpc3QgQWR2 YW5jZWQgSGVscCIKLWNtYWtlIC1CICV7X3ZwYXRoX2J1aWxkZGlyfSAtTEFICi0KLSVjbWFrZV9i dWlsZAotCi0laW5zdGFsbAotJWNtYWtlX2luc3RhbGwKLQotIyBtdWx0aWxpYiBzdXBwb3J0IGZv ciBzaGVsbCBzY3JpcHRzCi0jIHdlIG9ubHkgYXBwbHkgdGhpcyB0byBrbm93biBSZWQgSGF0IG11 bHRpbGliIGFyY2hlcywgcGVyIGJ1ZyAjMTgxMzM1Ci1pZiAlbXVsdGlsaWJfY2FwYWJsZTsgdGhl bgotbXYgJXtidWlsZHJvb3R9JXtfYmluZGlyfS9teXNxbF9jb25maWcgJXtidWlsZHJvb3R9JXtf YmluZGlyfS9teXNxbF9jb25maWctJXtfX2lzYV9iaXRzfQotaW5zdGFsbCAtcCAtbSAwNzU1ICV7 X3ZwYXRoX2J1aWxkZGlyfS9zY3JpcHRzL215c3FsX2NvbmZpZ19tdWx0aWxpYiAle2J1aWxkcm9v dH0le19iaW5kaXJ9L215c3FsX2NvbmZpZwotZmkKLQotIyBpbnN0YWxsIElORk9fU1JDLCBJTkZP X0JJTiBpbnRvIGxpYmRpciAodXBzdHJlYW0gdGhpbmtzIHRoZXNlIGFyZSBkb2MgZmlsZXMsCi0j IGJ1dCB0aGF0J3MgcHJldHR5IHdhY2tvIC0tLSBzZWUgYWxzbyAlJXtuYW1lfS1maWxlLWNvbnRl bnRzLnBhdGNoKQotaW5zdGFsbCAtcCAtbSAwNjQ0ICV7X3ZwYXRoX2J1aWxkZGlyfS9Eb2NzL0lO Rk9fU1JDICV7YnVpbGRyb290fSV7X2xpYmRpcn0vbXlzcWwvCi1pbnN0YWxsIC1wIC1tIDA2NDQg JXtfdnBhdGhfYnVpbGRkaXJ9L0RvY3MvSU5GT19CSU4gJXtidWlsZHJvb3R9JXtfbGliZGlyfS9t eXNxbC8KLQotbWtkaXIgLXAgJXtidWlsZHJvb3R9JXtsb2dmaWxlZGlyfQotCi1ta2RpciAtcCAl e2J1aWxkcm9vdH0le3BpZGZpbGVkaXJ9Ci1pbnN0YWxsIC1wIC1tIDA3NTUgLWQgJXtidWlsZHJv b3R9JXtkYmRhdGFkaXJ9Ci1pbnN0YWxsIC1wIC1tIDA3NTAgLWQgJXtidWlsZHJvb3R9JXtfbG9j YWxzdGF0ZWRpcn0vbGliL215c3FsLWZpbGVzCi1pbnN0YWxsIC1wIC1tIDA3MDAgLWQgJXtidWls ZHJvb3R9JXtfbG9jYWxzdGF0ZWRpcn0vbGliL215c3FsLWtleXJpbmcKLQotJWlmICV7d2l0aCBj b25maWd9Ci1pbnN0YWxsIC1EIC1wIC1tIDA2NDQgJXtfdnBhdGhfYnVpbGRkaXJ9L3NjcmlwdHMv bXkuY25mICV7YnVpbGRyb290fSV7X3N5c2NvbmZkaXJ9L215LmNuZgotJWVuZGlmCi0KLSMgaW5z dGFsbCBzeXN0ZW1kIHVuaXQgZmlsZXMgYW5kIHNjcmlwdHMgZm9yIGhhbmRsaW5nIHNlcnZlciBz dGFydHVwCi1pbnN0YWxsIC1EIC1wIC1tIDY0NCAle192cGF0aF9idWlsZGRpcn0vc2NyaXB0cy9t eXNxbC5zZXJ2aWNlICV7YnVpbGRyb290fSV7X3VuaXRkaXJ9LyV7ZGFlbW9uX25hbWV9LnNlcnZp Y2UKLWluc3RhbGwgLUQgLXAgLW0gNjQ0ICV7X3ZwYXRoX2J1aWxkZGlyfS9zY3JpcHRzL215c3Fs QC5zZXJ2aWNlICV7YnVpbGRyb290fSV7X3VuaXRkaXJ9LyV7ZGFlbW9uX25hbWV9QC5zZXJ2aWNl Ci1pbnN0YWxsIC1EIC1wIC1tIDA2NDQgJXtfdnBhdGhfYnVpbGRkaXJ9L3NjcmlwdHMvbXlzcWwu dG1wZmlsZXMuZCAle2J1aWxkcm9vdH0le190bXBmaWxlc2Rpcn0vJXtkYWVtb25fbmFtZX0uY29u Zgotcm0gLXIgJXtidWlsZHJvb3R9JXtfdG1wZmlsZXNkaXJ9L215c3FsLmNvbmYKLQotIyBDcmVh dGUgYSBzeXN1c2Vycy5kIGNvbmZpZyBmaWxlCi0jIFdlIG5vIGxvbmdlciBlbmZvcmNlIHRoZSBo YXJkY29kZWQgVUlEL0dJRCAyNwotbWtkaXIgLXAgJXtidWlsZHJvb3R9JXtfc3lzdXNlcnNkaXJ9 Ci1jYXQgPiAle2J1aWxkcm9vdH0le19zeXN1c2Vyc2Rpcn0vJXtuYW1lfS5jb25mIDw8IEVPRgot dSBteXNxbCAyNyAnTWFyaWFEQiBhbmQgTXlTUUwgU2VydmVyJyAle2RiZGF0YWRpcn0gLQotRU9G Ci0KLSMgaGVscGVyIHNjcmlwdHMgZm9yIHNlcnZpY2Ugc3RhcnRpbmcKLWluc3RhbGwgLUQgLXAg LW0gNzU1ICV7X3ZwYXRoX2J1aWxkZGlyfS9zY3JpcHRzL215c3FsLXByZXBhcmUtZGItZGlyICV7 YnVpbGRyb290fSV7X2xpYmV4ZWNkaXJ9L215c3FsLXByZXBhcmUtZGItZGlyCi1pbnN0YWxsIC1w IC1tIDc1NSAle192cGF0aF9idWlsZGRpcn0vc2NyaXB0cy9teXNxbC13YWl0LXN0b3AgJXtidWls ZHJvb3R9JXtfbGliZXhlY2Rpcn0vbXlzcWwtd2FpdC1zdG9wCi1pbnN0YWxsIC1wIC1tIDc1NSAl e192cGF0aF9idWlsZGRpcn0vc2NyaXB0cy9teXNxbC1jaGVjay1zb2NrZXQgJXtidWlsZHJvb3R9 JXtfbGliZXhlY2Rpcn0vbXlzcWwtY2hlY2stc29ja2V0Ci1pbnN0YWxsIC1wIC1tIDY0NCAle192 cGF0aF9idWlsZGRpcn0vc2NyaXB0cy9teXNxbC1zY3JpcHRzLWNvbW1vbiAle2J1aWxkcm9vdH0l e19saWJleGVjZGlyfS9teXNxbC1zY3JpcHRzLWNvbW1vbgotaW5zdGFsbCAtRCAtcCAtbSAwNjQ0 ICV7X3ZwYXRoX2J1aWxkZGlyfS9zY3JpcHRzL3NlcnZlci5jbmYgJXtidWlsZHJvb3R9JXtfc3lz Y29uZmRpcn0vbXkuY25mLmQvJXttYWpvcm5hbWV9LXNlcnZlci5jbmYKLQotcm0gJXtidWlsZHJv b3R9JXtfbGliZGlyfS9teXNxbC8qLmEKLXJtICV7YnVpbGRyb290fSV7X21hbmRpcn0vbWFuMS9j b21wX2Vyci4xKgotCi0jIFB1dCBsb2dyb3RhdGUgc2NyaXB0IHdoZXJlIGl0IG5lZWRzIHRvIGJl Ci1ta2RpciAtcCAle2J1aWxkcm9vdH0le2xvZ3JvdGF0ZWRkaXJ9Ci0jIFJlbW92ZSB0aGUgd3Jv bmcgZmlsZQotcm0gJXtidWlsZHJvb3R9JXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L215c3FsLWxv Zy1yb3RhdGUKLSMgSW5zdGFsbCB0aGUgY29ycmVjdCBvbmUgKG1lYW50IGZvciBGU0ggbGF5b3V0 IGluIFJQTSBwYWNrYWdlcykKLWluc3RhbGwgLUQgLW0gMDY0NCAle192cGF0aF9idWlsZGRpcn0v cGFja2FnaW5nL3JwbS1jb21tb24vbXlzcWwubG9ncm90YXRlICV7YnVpbGRyb290fSV7bG9ncm90 YXRlZGRpcn0vJXtkYWVtb25fbmFtZX0KLQotbWtkaXIgLXAgJXtidWlsZHJvb3R9JXtfc3lzY29u ZmRpcn0vbGQuc28uY29uZi5kCi1lY2hvICIle19saWJkaXJ9L215c3FsIiA+ICV7YnVpbGRyb290 fSV7X3N5c2NvbmZkaXJ9L2xkLnNvLmNvbmYuZC8le25hbWV9LSV7X2FyY2h9LmNvbmYKLQotIyBm b3IgYmFjay13YXJkIGNvbXBhdGliaWxpdHkgYW5kIFNFTGludXgsIGxldCdzIGtlZXAgdGhlIG15 c3FsZCBpbiBsaWJleGVjCi0jIGFuZCBqdXN0IGNyZWF0ZSBhIHN5bWxpbmsgaW4gL3Vzci9zYmlu Ci1tdiAle2J1aWxkcm9vdH0le19iaW5kaXJ9L215c3FsZCAle2J1aWxkcm9vdH0le19saWJleGVj ZGlyfS9teXNxbGQKLW1rZGlyIC1wICV7YnVpbGRyb290fSV7X3NiaW5kaXJ9Ci1sbiAtcyAuLi9s aWJleGVjL215c3FsZCAle2J1aWxkcm9vdH0le19zYmluZGlyfS9teXNxbGQKLQotJWlmICV7d2l0 aCBkZWJ1Z30KLW12ICV7YnVpbGRyb290fSV7X2JpbmRpcn0vbXlzcWxkLWRlYnVnICV7YnVpbGRy b290fSV7X2xpYmV4ZWNkaXJ9L215c3FsZAotJWVuZGlmCi0KLSMgY29weSBhZGRpdGlvbmFsIGRv Y3MgaW50byBidWlsZCB0cmVlIHNvICUlZG9jIHdpbGwgZmluZCB0aGVtCi1pbnN0YWxsIC1wIC1t IDA2NDQgJXtTT1VSQ0U2fSAle192cGF0aF9zcmNkaXJ9LyV7YmFzZW5hbWU6JXtTT1VSQ0U2fX0K LWluc3RhbGwgLXAgLW0gMDY0NCAle1NPVVJDRTd9ICV7X3ZwYXRoX3NyY2Rpcn0vJXtiYXNlbmFt ZTole1NPVVJDRTd9fQotCi0jIEluc3RhbGwgdGhlIGxpc3Qgb2Ygc2tpcHBlZCB0ZXN0cyB0byBi ZSBhdmFpbGFibGUgZm9yIHVzZXIgcnVucwotaW5zdGFsbCAtcCAtbSAwNjQ0ICV7X3ZwYXRoX3Ny Y2Rpcn0vbXlzcWwtdGVzdC8le3NraXBsaXN0fSAle2J1aWxkcm9vdH0le19kYXRhZGlyfS9teXNx bC10ZXN0Ci0KLSVpZiAhICV7d2l0aCBjbGlicmFyeX0KLXVubGluayAle2J1aWxkcm9vdH0le19s aWJkaXJ9L215c3FsL2xpYm15c3FsY2xpZW50LnNvCi1ybSAtciAle2J1aWxkcm9vdH0le19saWJk aXJ9L215c3FsL2xpYm15c3FsY2xpZW50Ki5zby4qCi1ybSAtciAle2J1aWxkcm9vdH0le19zeXNj b25mZGlyfS9sZC5zby5jb25mLmQKLSVlbmRpZgotCi0laWYgISAle3dpdGggZGV2ZWx9Ci1ybSAl e2J1aWxkcm9vdH0le19iaW5kaXJ9L215c3FsX2NvbmZpZyoKLXJtIC1yICV7YnVpbGRyb290fSV7 X2luY2x1ZGVkaXJ9L215c3FsCi1ybSAle2J1aWxkcm9vdH0le19kYXRhZGlyfS9hY2xvY2FsL215 c3FsLm00Ci1ybSAle2J1aWxkcm9vdH0le19saWJkaXJ9L3BrZ2NvbmZpZy9teXNxbGNsaWVudC5w Ywotcm0gJXtidWlsZHJvb3R9JXtfbGliZGlyfS9teXNxbC9saWJteXNxbGNsaWVudCouc28KLXJt ICV7YnVpbGRyb290fSV7X21hbmRpcn0vbWFuMS9teXNxbF9jb25maWcuMSoKLSVlbmRpZgotCi0l aWYgISAle3dpdGggY2xpZW50fQotcm0gJXtidWlsZHJvb3R9JXtfYmluZGlyfS97bXlzcWwsbXlz cWxfY29uZmlnX2VkaXRvcixcCi1teXNxbF9wbHVnaW4sbXlzcWxhZG1pbixteXNxbGJpbmxvZyxc Ci1teXNxbGNoZWNrLG15c3FsZHVtcCxteXNxbHB1bXAsbXlzcWxpbXBvcnQsbXlzcWxzaG93LG15 c3Fsc2xhcCxteV9wcmludF9kZWZhdWx0c30KLXJtICV7YnVpbGRyb290fSV7X21hbmRpcn0vbWFu MS97bXlzcWwsbXlzcWxfY29uZmlnX2VkaXRvcixcCi1teXNxbF9wbHVnaW4sbXlzcWxhZG1pbixt eXNxbGJpbmxvZyxcCi1teXNxbGNoZWNrLG15c3FsZHVtcCxteXNxbHB1bXAsbXlzcWxpbXBvcnQs bXlzcWxzaG93LG15c3Fsc2xhcCxteV9wcmludF9kZWZhdWx0c30uMSoKLSVlbmRpZgotCi0laWYg JXt3aXRoIGNvbmZpZ30KLW1rZGlyIC1wICV7YnVpbGRyb290fSV7X3N5c2NvbmZkaXJ9L215LmNu Zi5kCi0lZWxzZQotI3JtICV7YnVpbGRyb290fSV7X3N5c2NvbmZkaXJ9L215LmNuZgotJWVuZGlm Ci0KLSVpZiAhICV7d2l0aCBjb21tb259Ci1ybSAtciAle2J1aWxkcm9vdH0le19kYXRhZGlyfS8l e21ham9ybmFtZX0vY2hhcnNldHMKLSVlbmRpZgotCi0laWYgISAle3dpdGggZXJybXNnfQotcm0g JXtidWlsZHJvb3R9JXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L3ttZXNzYWdlc190b19lcnJvcl9s b2cudHh0LG1lc3NhZ2VzX3RvX2NsaWVudHMudHh0fQotcm0gLXIgJXtidWlsZHJvb3R9JXtfZGF0 YWRpcn0vJXttYWpvcm5hbWV9L3tlbmdsaXNoLGJ1bGdhcmlhbixjemVjaCxkYW5pc2gsZHV0Y2gs ZXN0b25pYW4sXAotZnJlbmNoLGdlcm1hbixncmVlayxodW5nYXJpYW4saXRhbGlhbixqYXBhbmVz ZSxrb3JlYW4sbm9yd2VnaWFuLG5vcndlZ2lhbi1ueSxcCi1wb2xpc2gscG9ydHVndWVzZSxyb21h bmlhbixydXNzaWFuLHNlcmJpYW4sc2xvdmFrLHNwYW5pc2gsc3dlZGlzaCx1a3JhaW5pYW59Ci0l ZW5kaWYKLQotJWlmICEgJXt3aXRoIHRlc3R9Ci1ybSAle2J1aWxkcm9vdH0le19iaW5kaXJ9L3tt eXNxbF9jbGllbnRfdGVzdCxteXNxbHh0ZXN0LG15c3FsdGVzdF9zYWZlX3Byb2Nlc3MsemxpYl9k ZWNvbXByZXNzfQotcm0gLXIgJXtidWlsZHJvb3R9JXtfZGF0YWRpcn0vbXlzcWwtdGVzdAotJWVu ZGlmCi0KLQotCi0lY2hlY2sKLSVpZiAle3dpdGggdGVzdH0KLSVpZiAlcnVuc2VsZnRlc3QKLXB1 c2hkICVfdnBhdGhfYnVpbGRkaXIKLSMgTm90ZTogZGlzYWJsaW5nIGJ1aWxkaW5nIG9mIHVuaXR0 ZXN0cyB0byB3b3JrYXJvdW5kICMxOTg5ODQ3Ci0jbWFrZSB0ZXN0IFZFUkJPU0U9MQotcHVzaGQg bXlzcWwtdGVzdAotY3AgLi4vLi4vbXlzcWwtdGVzdC8le3NraXBsaXN0fSAuCi0KLSMgQnVpbGRz IG1pZ2h0IGhhcHBlbiBhdCB0aGUgc2FtZSBob3N0LCBhdm9pZCBjb2xsaXNpb24KLSMgICBUaGUg cG9ydCB1c2VkIGlzIGNhbGN1bGF0ZWQgYXMgMTAgKiBNVFJfQlVJTERfVEhSRUFEICsgMTAwMDAK LSMgICBUaGUgcmVzdWx0aW5nIHBvcnQgbXVzdCBiZSBiZXR3ZWVuIDUwMDAgYW5kIDMyNzY3Ci1l eHBvcnQgTVRSX0JVSUxEX1RIUkVBRD0kKCggJChkYXRlICslcykgJSAyMjAwICkpCi0KLSgKLSAg c2V0IC1leAotICBjZCAle2J1aWxkcm9vdH0le19kYXRhZGlyfS9teXNxbC10ZXN0Ci0KLSAgZXhw b3J0IGNvbW1vbl90ZXN0c3VpdGVfYXJndW1lbnRzPSIgJXs/d2l0aF9kZWJ1ZzotLWRlYnVnLXNl cnZlcn0gLS1wYXJhbGxlbD1hdXRvIC0tZm9yY2UgLS1yZXRyeT0yIC0tc3VpdGUtdGltZW91dD05 MDAgLS10ZXN0Y2FzZS10aW1lb3V0PTMwIC0tc2tpcC1jb21iaW5hdGlvbnMgLS1tYXgtdGVzdC1m YWlsPTUgLS1yZXBvcnQtdW5zdGFibGUtdGVzdHMgLS1jbGVhbi12YXJkaXIgLS1ub2NoZWNrLXRl c3RjYXNlcyAiCi0KLSAgIyBJZiBmdWxsIHRlc3RzdWl0ZSBoYXMgYWxyZWFkeSBiZWVuIHJ1biBv biB0aGlzIHZlcnNpb24gYW5kIHdlIGRvbid0IGV4cGxpY2l0bHkgd2FudCB0aGUgZnVsbCB0ZXN0 c3VpdGUgdG8gYmUgcnVuCi0gIGlmIFtbICIle2xhc3RfdGVzdGVkX3ZlcnNpb259IiA9PSAiJXt2 ZXJzaW9ufSIgXV0gJiYgW1sgJXtmb3JjZV9ydW5fdGVzdHN1aXRlfSAtZXEgMCBdXQotICB0aGVu Ci0gICAgIyBpbiBmdXJ0aGVyIHJlYnVpbGRzIG9ubHkgcnVuIHRoZSBiYXNpYyAibWFpbiIgc3Vp dGUgKH44MDAgdGVzdHMpCi0gICAgZWNobyAicnVubmluZyBvbmx5IGJhc2UgdGVzdHN1aXRlIgot ICAgIHBlcmwgLi9teXNxbC10ZXN0LXJ1bi5wbCAkY29tbW9uX3Rlc3RzdWl0ZV9hcmd1bWVudHMg LS1zdWl0ZT1tYWluIC0tc2tpcC10ZXN0LWxpc3Q9JXtza2lwbGlzdH0KLSAgZmkKLQotICMgSWYg ZWl0aGVyIHRoaXMgdmVyc2lvbiB3YXNuJ3QgbWFya2VkIGFzIHRlc3RlZCB5ZXQgb3IgSSBleHBs aWNpdGx5IHdhbnQgdG8gcnVuIHRoZSB0ZXN0c3VpdGUsIHJ1biBldmVyeXRoaW5nIHdlIGhhdmUg KH40MDAwIHRlc3QpCi0gIGlmIFtbICIle2xhc3RfdGVzdGVkX3ZlcnNpb259IiAhPSAiJXt2ZXJz aW9ufSIgXV0gfHwgW1sgJXtmb3JjZV9ydW5fdGVzdHN1aXRlfSAtbmUgMCBdXQotICB0aGVuCi0g ICAgZWNobyAicnVubmluZyBhZHZhbmNlZCB0ZXN0c3VpdGUiCi0gICAgcGVybCAuL215c3FsLXRl c3QtcnVuLnBsICRjb21tb25fdGVzdHN1aXRlX2FyZ3VtZW50cyBcCi0gICAgJWlmICV7aWdub3Jl X3Rlc3RzdWl0ZV9yZXN1bHR9Ci0gICAgICAtLW1heC10ZXN0LWZhaWw9OTk5OSB8fCA6Ci0gICAg JWVsc2UKLSAgICAgIC0tc2tpcC10ZXN0LWxpc3Q9JXtza2lwbGlzdH0KLSAgICAlZW5kaWYKLSAg ZmkKLQotICAjIFRoZXJlIG1pZ2h0IGJlIGEgZGFuZ2xpbmcgc3ltbGluayBsZWZ0IGZyb20gdGhl IHRlc3RpbmcsIHJlbW92ZSBpdCB0byBub3QgYmUgaW5zdGFsbGVkCi0gIHJtIC1yIHZhciAkKHJl YWRsaW5rIHZhcikKLSkKLQotcG9wZAotcG9wZAotCi0lZW5kaWYKLSVlbmRpZgotCi0KLQotJXBv c3QgLW4gJXtwa2duYW1lfS1zZXJ2ZXIKLSVzeXN0ZW1kX3Bvc3QgJXtkYWVtb25fbmFtZX0uc2Vy dmljZQotCi0lcHJldW4gLW4gJXtwa2duYW1lfS1zZXJ2ZXIKLSVzeXN0ZW1kX3ByZXVuICV7ZGFl bW9uX25hbWV9LnNlcnZpY2UKLQotJXBvc3R1biAtbiAle3BrZ25hbWV9LXNlcnZlcgotJXN5c3Rl bWRfcG9zdHVuX3dpdGhfcmVzdGFydCAle2RhZW1vbl9uYW1lfS5zZXJ2aWNlCi0KLQotCi0laWYg JXt3aXRoIGNsaWVudH0KLSVmaWxlcyAtbiAle3BrZ25hbWV9Ci0le19iaW5kaXJ9L215c3FsCi0l e19iaW5kaXJ9L215c3FsX2NvbmZpZ19lZGl0b3IKLSV7X2JpbmRpcn0vbXlzcWxhZG1pbgotJXtf YmluZGlyfS9teXNxbGJpbmxvZwotJXtfYmluZGlyfS9teXNxbGNoZWNrCi0le19iaW5kaXJ9L215 c3FsZHVtcAotJXtfYmluZGlyfS9teXNxbGltcG9ydAotJXtfYmluZGlyfS9teXNxbHB1bXAKLSV7 X2JpbmRpcn0vbXlzcWxzaG93Ci0le19iaW5kaXJ9L215c3Fsc2xhcAotCi0le19tYW5kaXJ9L21h bjEvbXlzcWwuMSoKLSV7X21hbmRpcn0vbWFuMS9teXNxbF9jb25maWdfZWRpdG9yLjEqCi0le19t YW5kaXJ9L21hbjEvbXlzcWxhZG1pbi4xKgotJXtfbWFuZGlyfS9tYW4xL215c3FsYmlubG9nLjEq Ci0le19tYW5kaXJ9L21hbjEvbXlzcWxjaGVjay4xKgotJXtfbWFuZGlyfS9tYW4xL215c3FsZHVt cC4xKgotJXtfbWFuZGlyfS9tYW4xL215c3FsaW1wb3J0LjEqCi0le19tYW5kaXJ9L21hbjEvbXlz cWxwdW1wLjEqCi0le19tYW5kaXJ9L21hbjEvbXlzcWxzaG93LjEqCi0le19tYW5kaXJ9L21hbjEv bXlzcWxzbGFwLjEqCi0lZW5kaWYKLQotJWlmICV7d2l0aCBjbGlicmFyeX0KLSVmaWxlcyAtbiAl e3BrZ25hbWV9LWxpYnMKLSVkaXIgJXtfbGliZGlyfS9teXNxbAotJXtfbGliZGlyfS9teXNxbC9s aWJteXNxbGNsaWVudCouc28uKgotJWNvbmZpZyhub3JlcGxhY2UpICV7X3N5c2NvbmZkaXJ9L2xk LnNvLmNvbmYuZC8qCi0lZW5kaWYKLQotJWlmICV7d2l0aCBjb25maWd9Ci0lZmlsZXMgLW4gJXtw a2duYW1lfS1jb25maWcKLSMgYWx0aG91Z2ggdGhlIGRlZmF1bHQgbXkuY25mIGNvbnRhaW5zIG9u bHkgc2VydmVyIHNldHRpbmdzLCB3ZSBwdXQgaXQgaW4gdGhlCi0jIGNvbW1vbiBwYWNrYWdlIGJl Y2F1c2UgaXQgY2FuIGJlIHVzZWQgZm9yIGNsaWVudCBzZXR0aW5ncyB0b28uCi0lZGlyICV7X3N5 c2NvbmZkaXJ9L215LmNuZi5kCi0lY29uZmlnKG5vcmVwbGFjZSkgJXtfc3lzY29uZmRpcn0vbXku Y25mCi0lZW5kaWYKLQotJWlmICV7d2l0aCBjb21tb259Ci0lZmlsZXMgLW4gJXtwa2duYW1lfS1j b21tb24KLSVsaWNlbnNlIExJQ0VOU0UKLSVkb2MgUkVBRE1FIFJFQURNRS5teXNxbC1saWNlbnNl IFJFQURNRS5teXNxbC1kb2NzCi0lZG9jIHN0b3JhZ2UvaW5ub2Jhc2UvQ09QWUlORy5QZXJjb25h IHN0b3JhZ2UvaW5ub2Jhc2UvQ09QWUlORy5Hb29nbGUKLSVkaXIgJXtfZGF0YWRpcn0vJXttYWpv cm5hbWV9Ci0le19kYXRhZGlyfS8le21ham9ybmFtZX0vY2hhcnNldHMKLSVlbmRpZgotCi0laWYg JXt3aXRoIGVycm1zZ30KLSVmaWxlcyAtbiAle3BrZ25hbWV9LWVycm1zZwotJXtfZGF0YWRpcn0v JXttYWpvcm5hbWV9L21lc3NhZ2VzX3RvX2Vycm9yX2xvZy50eHQKLSV7X2RhdGFkaXJ9LyV7bWFq b3JuYW1lfS9tZXNzYWdlc190b19jbGllbnRzLnR4dAotJXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9 L2VuZ2xpc2gKLSVsYW5nKGJnKSAle19kYXRhZGlyfS8le21ham9ybmFtZX0vYnVsZ2FyaWFuCi0l bGFuZyhjcykgJXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L2N6ZWNoCi0lbGFuZyhkYSkgJXtfZGF0 YWRpcn0vJXttYWpvcm5hbWV9L2RhbmlzaAotJWxhbmcobmwpICV7X2RhdGFkaXJ9LyV7bWFqb3Ju YW1lfS9kdXRjaAotJWxhbmcoZXQpICV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS9lc3Rvbmlhbgot JWxhbmcoZnIpICV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS9mcmVuY2gKLSVsYW5nKGRlKSAle19k YXRhZGlyfS8le21ham9ybmFtZX0vZ2VybWFuCi0lbGFuZyhlbCkgJXtfZGF0YWRpcn0vJXttYWpv cm5hbWV9L2dyZWVrCi0lbGFuZyhodSkgJXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L2h1bmdhcmlh bgotJWxhbmcoaXQpICV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS9pdGFsaWFuCi0lbGFuZyhqYSkg JXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L2phcGFuZXNlCi0lbGFuZyhrbykgJXtfZGF0YWRpcn0v JXttYWpvcm5hbWV9L2tvcmVhbgotJWxhbmcobm8pICV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS9u b3J3ZWdpYW4KLSVsYW5nKG5vKSAle19kYXRhZGlyfS8le21ham9ybmFtZX0vbm9yd2VnaWFuLW55 Ci0lbGFuZyhwbCkgJXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L3BvbGlzaAotJWxhbmcocHQpICV7 X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS9wb3J0dWd1ZXNlCi0lbGFuZyhybykgJXtfZGF0YWRpcn0v JXttYWpvcm5hbWV9L3JvbWFuaWFuCi0lbGFuZyhydSkgJXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9 L3J1c3NpYW4KLSVsYW5nKHNyKSAle19kYXRhZGlyfS8le21ham9ybmFtZX0vc2VyYmlhbgotJWxh bmcoc2spICV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS9zbG92YWsKLSVsYW5nKGVzKSAle19kYXRh ZGlyfS8le21ham9ybmFtZX0vc3BhbmlzaAotJWxhbmcoc3YpICV7X2RhdGFkaXJ9LyV7bWFqb3Ju YW1lfS9zd2VkaXNoCi0lbGFuZyh1aykgJXtfZGF0YWRpcn0vJXttYWpvcm5hbWV9L3VrcmFpbmlh bgotJWVuZGlmCi0KLSVmaWxlcyAtbiAle3BrZ25hbWV9LXNlcnZlcgotJXtfYmluZGlyfS9pYmQy c2RpCi0le19iaW5kaXJ9L215aXNhbWNoawotJXtfYmluZGlyfS9teWlzYW1fZnRkdW1wCi0le19i aW5kaXJ9L215aXNhbWxvZwotJXtfYmluZGlyfS9teWlzYW1wYWNrCi0le19iaW5kaXJ9L215X3By aW50X2RlZmF1bHRzCi0le19iaW5kaXJ9L215c3FsX21pZ3JhdGVfa2V5cmluZwotJXtfYmluZGly fS9teXNxbF9zZWN1cmVfaW5zdGFsbGF0aW9uCi0le19iaW5kaXJ9L215c3FsX3NzbF9yc2Ffc2V0 dXAKLSV7X2JpbmRpcn0vbXlzcWxfdHppbmZvX3RvX3NxbAotJXtfYmluZGlyfS9teXNxbF91cGdy YWRlCi0le19iaW5kaXJ9L215c3FsZF9wcmVfc3lzdGVtZAotJXtfYmluZGlyfS9teXNxbGR1bXBz bG93Ci0le19iaW5kaXJ9L2lubm9jaGVja3N1bQotJXtfYmluZGlyfS9wZXJyb3IKLQotJWNvbmZp Zyhub3JlcGxhY2UpICV7X3N5c2NvbmZkaXJ9L215LmNuZi5kLyV7bWFqb3JuYW1lfS1zZXJ2ZXIu Y25mCi0KLSV7X3NiaW5kaXJ9L215c3FsZAotIyBzeXNfbmljZSBjYXBhYmlsaXR5IHJlcXVpcmVk IGZvciByaGJ6IzE2Mjg4MTQKLSVjYXBzKGNhcF9zeXNfbmljZT1lcCkgJXtfbGliZXhlY2Rpcn0v bXlzcWxkCi0KLSV7X2xpYmRpcn0vbXlzcWwvSU5GT19TUkMKLSV7X2xpYmRpcn0vbXlzcWwvSU5G T19CSU4KLSVpZiAhICV7d2l0aCBjb21tb259Ci0lZGlyICV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1l fQotJWVuZGlmCi0KLSVkaXIgJXtfbGliZGlyfS9teXNxbAotJWRpciAle19saWJkaXJ9L215c3Fs L3BsdWdpbgotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vYWR0X251bGwuc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL2F1dGhfc29ja2V0LnNvCi0lez93aXRoX2ZpZG86JXtfbGliZGlyfS9teXNx bC9wbHVnaW4vYXV0aGVudGljYXRpb25fZmlkb19jbGllbnQuc299Ci0lez93aXRoX2ZpZG86JXtf bGliZGlyfS9teXNxbC9wbHVnaW4vYXV0aGVudGljYXRpb25fb2NpX2NsaWVudC5zb30KLSV7P3dp dGhfa2VyYmVyb3M6JXtfbGliZGlyfS9teXNxbC9wbHVnaW4vYXV0aGVudGljYXRpb25fa2VyYmVy b3NfY2xpZW50LnNvfQotJXs/d2l0aF9sZGFwOiV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2F1dGhl bnRpY2F0aW9uX2xkYXBfc2FzbF9jbGllbnQuc299Ci0le19saWJkaXJ9L215c3FsL3BsdWdpbi9j b21wb25lbnRfYXVkaXRfYXBpX21lc3NhZ2VfZW1pdC5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vY29tcG9uZW50X2tleXJpbmdfZmlsZS5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29t cG9uZW50X2xvZ19maWx0ZXJfZHJhZ25ldC5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29t cG9uZW50X2xvZ19zaW5rX2pzb24uc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVu dF9sb2dfc2lua19zeXNldmVudGxvZy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9u ZW50X215c3FsYmFja3VwLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfcXVl cnlfYXR0cmlidXRlcy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3JlZmVy ZW5jZV9jYWNoZS5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3ZhbGlkYXRl X3Bhc3N3b3JkLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb25mbGljdGluZ192YXJpYWJs ZXMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2Nvbm5lY3Rpb25fY29udHJvbC5zbwotJXtf bGliZGlyfS9teXNxbC9wbHVnaW4vZGFlbW9uX2V4YW1wbGUuaW5pCi0le19saWJkaXJ9L215c3Fs L3BsdWdpbi9kZGxfcmV3cml0ZXIuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2dyb3VwX3Jl cGxpY2F0aW9uLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9oYV9leGFtcGxlLnNvCi0le19s aWJkaXJ9L215c3FsL3BsdWdpbi9oYV9tb2NrLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9p bm5vZGJfZW5naW5lLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9rZXlyaW5nX2ZpbGUuc28K LSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2tleXJpbmdfdWRmLnNvCi0le19saWJkaXJ9L215c3Fs L3BsdWdpbi9saWJtZW1jYWNoZWQuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2xpYnBsdWdp bm1lY2FiLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9sb2NraW5nX3NlcnZpY2Uuc28KLSV7 X2xpYmRpcn0vbXlzcWwvcGx1Z2luL215cGx1Z2xpYi5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vbXlzcWxfY2xvbmUuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL215c3FsX25vX2xvZ2lu LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9yZXdyaXRlX2V4YW1wbGUuc28KLSV7X2xpYmRp cn0vbXlzcWwvcGx1Z2luL3Jld3JpdGVyLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9zZW1p c3luY19tYXN0ZXIuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL3NlbWlzeW5jX3JlcGxpY2Eu c28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL3NlbWlzeW5jX3NsYXZlLnNvCi0le19saWJkaXJ9 L215c3FsL3BsdWdpbi9zZW1pc3luY19zb3VyY2Uuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2lu L3ZhbGlkYXRlX3Bhc3N3b3JkLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi92ZXJzaW9uX3Rv a2VuLnNvCi0KLSV7X21hbmRpcn0vbWFuMS9pYmQyc2RpLjEqCi0le19tYW5kaXJ9L21hbjEvbXlp c2FtY2hrLjEqCi0le19tYW5kaXJ9L21hbjEvbXlpc2FtbG9nLjEqCi0le19tYW5kaXJ9L21hbjEv bXlpc2FtcGFjay4xKgotJXtfbWFuZGlyfS9tYW4xL215aXNhbV9mdGR1bXAuMSoKLSV7X21hbmRp cn0vbWFuMS9teV9wcmludF9kZWZhdWx0cy4xKgotJXtfbWFuZGlyfS9tYW4xL215c3FsX3NlY3Vy ZV9pbnN0YWxsYXRpb24uMSoKLSV7X21hbmRpcn0vbWFuMS9teXNxbF9zc2xfcnNhX3NldHVwLjEq Ci0le19tYW5kaXJ9L21hbjEvbXlzcWxfdHppbmZvX3RvX3NxbC4xKgotJXtfbWFuZGlyfS9tYW4x L215c3FsX3VwZ3JhZGUuMSoKLSV7X21hbmRpcn0vbWFuMS9teXNxbGR1bXBzbG93LjEqCi0le19t YW5kaXJ9L21hbjEvbXlzcWxtYW4uMSoKLSV7X21hbmRpcn0vbWFuMS9pbm5vY2hlY2tzdW0uMSoK LSV7X21hbmRpcn0vbWFuMS9wZXJyb3IuMSoKLSV7X21hbmRpcn0vbWFuMS9sejRfZGVjb21wcmVz cy4xKgotJXtfbWFuZGlyfS9tYW44L215c3FsZC44KgotCi0le19kYXRhZGlyfS8le21ham9ybmFt ZX0vZGljdGlvbmFyeS50eHQKLSV7X2RhdGFkaXJ9LyV7bWFqb3JuYW1lfS8qLnNxbAotCi0le191 bml0ZGlyfS8le2RhZW1vbl9uYW1lfSoKLSV7X2xpYmV4ZWNkaXJ9L215c3FsLXByZXBhcmUtZGIt ZGlyCi0le19saWJleGVjZGlyfS9teXNxbC13YWl0LXN0b3AKLSV7X2xpYmV4ZWNkaXJ9L215c3Fs LWNoZWNrLXNvY2tldAotJXtfbGliZXhlY2Rpcn0vbXlzcWwtc2NyaXB0cy1jb21tb24KLQotJXtf dG1wZmlsZXNkaXJ9LyV7ZGFlbW9uX25hbWV9LmNvbmYKLSV7X3N5c3VzZXJzZGlyfS8le25hbWV9 LmNvbmYKLQotIyBSZW1lbWJlciB0byBhbHNvIHVwZGF0ZSB0aGUgbXlzcWwudG1wZmlsZXMuZC5p biBmaWxlIHdoZW4gdXBkYXRpbmcgdGhlc2UgcGVybWlzc2lvbnMKLSVhdHRyKDA3NTUsbXlzcWws bXlzcWwpICVkaXIgJXtkYmRhdGFkaXJ9Ci0lYXR0cigwNzUwLG15c3FsLG15c3FsKSAlZGlyICV7 X2xvY2Fsc3RhdGVkaXJ9L2xpYi9teXNxbC1maWxlcwotJWF0dHIoMDcwMCxteXNxbCxteXNxbCkg JWRpciAle19sb2NhbHN0YXRlZGlyfS9saWIvbXlzcWwta2V5cmluZwotJWF0dHIoMDc1NSxteXNx bCxteXNxbCkgJWRpciAle3BpZGZpbGVkaXJ9Ci0lYXR0cigwNzUwLG15c3FsLG15c3FsKSAlZGly ICV7bG9nZmlsZWRpcn0KLQotJWNvbmZpZyhub3JlcGxhY2UpICV7bG9ncm90YXRlZGRpcn0vJXtk YWVtb25fbmFtZX0KLQotJWlmICV7d2l0aCBkZXZlbH0KLSVmaWxlcyAtbiAle3BrZ25hbWV9LWRl dmVsCi0le19iaW5kaXJ9L215c3FsX2NvbmZpZyoKLSVleGNsdWRlICV7X2JpbmRpcn0vbXlzcWxf Y29uZmlnX2VkaXRvcgotJXtfaW5jbHVkZWRpcn0vbXlzcWwKLSV7X2RhdGFkaXJ9L2FjbG9jYWwv bXlzcWwubTQKLSVkaXIgJXtfbGliZGlyfS9teXNxbAotJWlmICV7d2l0aCBjbGlicmFyeX0KLSV7 X2xpYmRpcn0vbXlzcWwvbGlibXlzcWxjbGllbnQuc28KLSVlbmRpZgotJXtfbGliZGlyfS9wa2dj b25maWcvbXlzcWxjbGllbnQucGMKLSV7X21hbmRpcn0vbWFuMS9teXNxbF9jb25maWcuMSoKLSVl bmRpZgotCi0laWYgJXt3aXRoIHRlc3R9Ci0lZmlsZXMgLW4gJXtwa2duYW1lfS10ZXN0Ci0le19i aW5kaXJ9L215c3FsX2NsaWVudF90ZXN0Ci0le19iaW5kaXJ9L215c3FsX2tleXJpbmdfZW5jcnlw dGlvbl90ZXN0Ci0le19iaW5kaXJ9L215c3FsdGVzdAotJXtfYmluZGlyfS9teXNxbHRlc3Rfc2Fm ZV9wcm9jZXNzCi0le19iaW5kaXJ9L215c3FseHRlc3QKLSV7X2JpbmRpcn0vbXlzcWxkX3NhZmUK LSV7X2JpbmRpcn0vY29tcF9lcnIKLSV7X2JpbmRpcn0vemxpYl9kZWNvbXByZXNzCi0lYXR0cigt LG15c3FsLG15c3FsKSAle19kYXRhZGlyfS9teXNxbC10ZXN0Ci0le19tYW5kaXJ9L21hbjEvemxp Yl9kZWNvbXByZXNzLjEqCi0KLSVkaXIgJXtfbGliZGlyfS9teXNxbAotJWRpciAle19saWJkaXJ9 L215c3FsL3BsdWdpbgotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vYXV0aC5zbwotJXtfbGliZGly fS9teXNxbC9wbHVnaW4vYXV0aF90ZXN0X3BsdWdpbi5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vY29tcG9uZW50X2V4YW1wbGVfY29tcG9uZW50MS5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vY29tcG9uZW50X2V4YW1wbGVfY29tcG9uZW50Mi5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vY29tcG9uZW50X2V4YW1wbGVfY29tcG9uZW50My5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vY29tcG9uZW50X2xvZ19zaW5rX3Rlc3Quc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2Nv bXBvbmVudF9teXNxbHhfZ2xvYmFsX3Jlc2V0LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9j b21wb25lbnRfcGZzX2V4YW1wbGVfY29tcG9uZW50X3BvcHVsYXRpb24uc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL2NvbXBvbmVudF9wZnNfZXhhbXBsZS5zbwotJXtfbGliZGlyfS9teXNxbC9w bHVnaW4vY29tcG9uZW50X3Rlc3RfYXVkaXRfYXBpX21lc3NhZ2Uuc28KLSV7X2xpYmRpcn0vbXlz cWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X2JhY2t1cF9sb2NrX3NlcnZpY2Uuc28KLSV7X2xpYmRp cn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X2NvbXBvbmVudF9kZWluaXQuc28KLSV7X2xp YmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X2hvc3RfYXBwbGljYXRpb25fc2lnbmFs LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9teXNxbF9jb21tYW5k X3NlcnZpY2VzLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9teXNx bF9jdXJyZW50X3RocmVhZF9yZWFkZXIuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBv bmVudF90ZXN0X215c3FsX3J1bnRpbWVfZXJyb3Iuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2lu L2NvbXBvbmVudF90ZXN0X215c3FsX3N5c3RlbV92YXJpYWJsZV9zZXQuc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X215c3FsX3RoZF9zdG9yZV9zZXJ2aWNlLnNvCi0l e19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9wZnNfbm90aWZpY2F0aW9uLnNv Ci0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9wZnNfcmVzb3VyY2VfZ3Jv dXAuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X3NlbnNpdGl2ZV9z eXN0ZW1fdmFyaWFibGVzLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVz dF9zZXJ2ZXJfdGVsZW1ldHJ5X3RyYWNlcy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29t cG9uZW50X3Rlc3Rfc3RhdHVzX3Zhcl9yZWFkZXIuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2lu L2NvbXBvbmVudF90ZXN0X3N0YXR1c192YXJfc2VydmljZV9pbnQuc28KLSV7X2xpYmRpcn0vbXlz cWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X3N0YXR1c192YXJfc2VydmljZV9yZWdfb25seS5zbwot JXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3Rlc3Rfc3RhdHVzX3Zhcl9zZXJ2aWNl LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9zdGF0dXNfdmFyX3Nl cnZpY2Vfc3RyLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9zdGF0 dXNfdmFyX3NlcnZpY2VfdW5yZWdfb25seS5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29t cG9uZW50X3Rlc3Rfc3RyaW5nX3NlcnZpY2VfY2hhcnNldC5zbwotJXtfbGliZGlyfS9teXNxbC9w bHVnaW4vY29tcG9uZW50X3Rlc3Rfc3RyaW5nX3NlcnZpY2VfbG9uZy5zbwotJXtfbGliZGlyfS9t eXNxbC9wbHVnaW4vY29tcG9uZW50X3Rlc3Rfc3RyaW5nX3NlcnZpY2Uuc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X3N5c3RlbV92YXJpYWJsZV9zb3VyY2Uuc28KLSV7 X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X3N5c192YXJfc2VydmljZV9pbnQu c28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X3N5c192YXJfc2Vydmlj ZV9zYW1lLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdGVzdF9zeXNfdmFy X3NlcnZpY2Uuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0X3N5c192 YXJfc2VydmljZV9zdHIuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF90ZXN0 X3RhYmxlX2FjY2Vzcy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3Rlc3Rf dWRmX3JlZ2lzdHJhdGlvbi5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3Rl c3RfdWRmX3NlcnZpY2VzLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdWRm X3JlZ18zX2Z1bmMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF91ZGZfcmVn X2F2Z19mdW5jLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9jb21wb25lbnRfdWRmX3JlZ19p bnRfZnVuYy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3VkZl9yZWdfaW50 X3NhbWVfZnVuYy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3VkZl9yZWdf b25seV8zX2Z1bmMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF91ZGZfcmVn X3JlYWxfZnVuYy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vY29tcG9uZW50X3VkZl91bnJl Z18zX2Z1bmMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF91ZGZfdW5yZWdf aW50X2Z1bmMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2NvbXBvbmVudF91ZGZfdW5yZWdf cmVhbF9mdW5jLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJkYWVtb25fZXhhbXBsZS5z bwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vbGlidGVzdF9mcmFtZXdvcmsuc28KLSV7X2xpYmRp cn0vbXlzcWwvcGx1Z2luL2xpYnRlc3Rfc2VydmljZXMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1 Z2luL2xpYnRlc3Rfc2VydmljZXNfdGhyZWFkZWQuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2lu L2xpYnRlc3Rfc2Vzc2lvbl9hdHRhY2guc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2xpYnRl c3Rfc2Vzc2lvbl9kZXRhY2guc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2xpYnRlc3Rfc2Vz c2lvbl9pbmZvLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJ0ZXN0X3Nlc3Npb25faW5f dGhkLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJ0ZXN0X3NxbF8yX3Nlc3Npb25zLnNv Ci0le19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJ0ZXN0X3NxbF9hbGxfY29sX3R5cGVzLnNvCi0l e19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJ0ZXN0X3NxbF9jbWRzXzEuc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL2xpYnRlc3Rfc3FsX2NvbW1pdC5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vbGlidGVzdF9zcWxfY29tcGxleC5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVnaW4vbGlidGVz dF9zcWxfZXJyb3JzLnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJ0ZXN0X3NxbF9sb2Nr LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9saWJ0ZXN0X3NxbF9wcm9jZXNzbGlzdC5zbwot JXtfbGliZGlyfS9teXNxbC9wbHVnaW4vbGlidGVzdF9zcWxfcmVwbGljYXRpb24uc28KLSV7X2xp YmRpcn0vbXlzcWwvcGx1Z2luL2xpYnRlc3Rfc3FsX3Jlc2V0X2Nvbm5lY3Rpb24uc28KLSV7X2xp YmRpcn0vbXlzcWwvcGx1Z2luL2xpYnRlc3Rfc3FsX3NodXRkb3duLnNvCi0le19saWJkaXJ9L215 c3FsL3BsdWdpbi9saWJ0ZXN0X3NxbF9zbGVlcF9pc19jb25uZWN0ZWQuc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL2xpYnRlc3Rfc3FsX3NxbG1vZGUuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1 Z2luL2xpYnRlc3Rfc3FsX3N0bXQuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2xpYnRlc3Rf c3FsX3N0b3JlZF9wcm9jZWR1cmVzX2Z1bmN0aW9ucy5zbwotJXtfbGliZGlyfS9teXNxbC9wbHVn aW4vbGlidGVzdF9zcWxfdmlld3NfdHJpZ2dlcnMuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2lu L2xpYnRlc3RfeF9zZXNzaW9uc19kZWluaXQuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL2xp YnRlc3RfeF9zZXNzaW9uc19pbml0LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9wZnNfZXhh bXBsZV9wbHVnaW5fZW1wbG95ZWUuc28KLSV7X2xpYmRpcn0vbXlzcWwvcGx1Z2luL3FhX2F1dGhf Y2xpZW50LnNvCi0le19saWJkaXJ9L215c3FsL3BsdWdpbi9xYV9hdXRoX2ludGVyZmFjZS5zbwot JXtfbGliZGlyfS9teXNxbC9wbHVnaW4vcWFfYXV0aF9zZXJ2ZXIuc28KLSV7X2xpYmRpcn0vbXlz cWwvcGx1Z2luL3JlcGxpY2F0aW9uX29ic2VydmVyc19leGFtcGxlX3BsdWdpbi5zbwotJXtfbGli ZGlyfS9teXNxbC9wbHVnaW4vdGVzdF9zZWN1cml0eV9jb250ZXh0LnNvCi0le19saWJkaXJ9L215 c3FsL3BsdWdpbi90ZXN0X3NlcnZpY2VzX2NvbW1hbmRfc2VydmljZXMuc28KLSV7X2xpYmRpcn0v bXlzcWwvcGx1Z2luL3Rlc3Rfc2VydmljZXNfaG9zdF9hcHBsaWNhdGlvbl9zaWduYWwuc28KLSV7 X2xpYmRpcn0vbXlzcWwvcGx1Z2luL3Rlc3Rfc2VydmljZXNfcGx1Z2luX3JlZ2lzdHJ5LnNvCi0l e19saWJkaXJ9L215c3FsL3BsdWdpbi90ZXN0X3VkZl9zZXJ2aWNlcy5zbwotJXtfbGliZGlyfS9t eXNxbC9wbHVnaW4vdWRmX2V4YW1wbGUuc28KLSVlbmRpZgotCi0lY2hhbmdlbG9nCi0qIFRodSBK dWwgMTYgMjAyNiBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2pl Y3Qub3JnPiAtIDguMC40Ni0zCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5v cmcvd2lraS9GZWRvcmFfNDVfTWFzc19SZWJ1aWxkCi0KLSogTW9uIEp1biAwOCAyMDI2IEZyYW50 acWhZWsgWmF0bG91a2FsIDxmemF0bG91a0ByZWRoYXQuY29tPiAtIDguMC40Ni0yCi0tIFJlYnVp bHQgZm9yIGljdSA3OC4zCi0KLSogV2VkIEFwciAyMiAyMDI2IE1pY2hhbCBTY2hvcm0gPG1zY2hv cm1AcmVkaGF0LmNvbT4gLSA4LjAuNDYtMQotLSBSZWJhc2UgdG8gOC4wLjQ2Ci0KLSogU2F0IEph biAyNCAyMDI2IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA4LjAuNDUtMgot LSBGZWRvcmEgNDQgY2hhbmdlOiBSZW1vdmUgJ2NvbW11bml0eS1teXNxbCcgbmFtZXMKLQotKiBG cmkgSmFuIDIzIDIwMjYgTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDguMC40 NS0xCi0tIFJlYmFzZSB0byA4LjAuNDUKLQotKiBGcmkgSmFuIDE2IDIwMjYgRmVkb3JhIFJlbGVh c2UgRW5naW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA4LjAuNDQtNQotLSBS ZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzQ0X01hc3Nf UmVidWlsZAotCi0qIFR1ZSBOb3YgMjUgMjAyNSBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhh dC5jb20+IC0gOC4wLjQ0LTQKLS0gQnVtcCByZWxlYXNlIGZvciB0bXBmaWxlcy5kIGZpeHVwCi0K LSogVGh1IE5vdiAyMCAyMDI1IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA4 LjAuNDQtMwotLSBCdW1wIHJlbGVhc2UgZm9yIHRtcGZpbGVzLmQgZml4dXAKLQotKiBNb24gTm92 IDMgMjAyNSBOaWtvbGEgRGF2aWRvdmEgPG5kYXZpZG92QHJlZGhhdC5jb20+IC0gOC4wLjQ0LTIK LS0gQnVtcCByZWxlYXNlIGZvciB0bXBmaWxlcy5kIGNoYW5nZQotCi0qIFRodSBPY3QgMzAgMjAy NSBQYXZvbCBTbG9ib2RhIDxwc2xvYm9kYUByZWRoYXQuY29tPiAtIDguMC40NC0xCi0tIFJlYmFz ZSB0byBNeVNRTCA4LjAuNDQKLQotKiBNb24gT2N0IDI3IDIwMjUgTHVrYXMgSmF2b3Jza3kgPGxq YXZvcnNrQHJlZGhhdC5jb20+IC0gOC4wLjQzLTIKLS0gUmV2ZXJ0IHRvIHNvZnQgc3RhdGljIGFs bG9jYXRpb24gb2YgTWFyaWFEQiBhbmQgTXlTUUwgc3lzdXNlcnMuZCBmaWxlcwotCi0qIFdlZCBB dWcgMDYgMjAyNSBQYXZvbCBTbG9ib2RhIDxwc2xvYm9kYUByZWRoYXQuY29tPiAtIDguMC40My0x Ci0tIFJlYmFzZSB0byBNeVNRTCA4LjAuNDMKLQotKiBXZWQgQXVnIDA2IDIwMjUgRnJhbnRpxaFl ayBaYXRsb3VrYWwgPGZ6YXRsb3VrQHJlZGhhdC5jb20+IC0gOC4wLjQyLTEwMgotLSBSZWJ1aWx0 IGZvciBpY3UgNzcuMQotCi0qIFRodSBKdWwgMjQgMjAyNSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVl cmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC40Mi0xMDEKLS0gUmVidWlsdCBm b3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV80M19NYXNzX1JlYnVpbGQK LQotKiBUdWUgSnVsIDE1IDIwMjUgTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAt IDguMC40Mi0xMDAKLS0gRGlzYWJsZSB0aGUgJ2Rpc3RyaWJ1dGlvbiBkZWZhdWx0JyBpbiBNeVNR TCA4LjAgaW4gdGhpcyBwYWNrYWdlCi0tIEVuYWJsZSB0aGUgJ2Rpc3RyaWJ1dGlvbiBkZWZhdWx0 JyBpbiBNeVNRTCA4LjQgKHBhY2thZ2UgJ215c3FsOC40JykKLQotKiBUaHUgQXByIDI0IDIwMjUg UGF2b2wgU2xvYm9kYSA8cHNsb2JvZGFAcmVkaGF0LmNvbT4gLSA4LjAuNDItMQotLSBSZWJhc2Ug dG8gTXlTUUwgOC4wLjQyCi0KLSogU3VuIEFwciAwNiAyMDI1IE1pY2hhbCBTY2hvcm0gPG1zY2hv cm1AcmVkaGF0LmNvbT4gLSA4LjAuNDEtMgotLSBTd2l0Y2ggZnJvbSB0aGUgUlBNIHNjcmlwdGxl dCB0byB0aGUgc3lzdXNlcnMuZCBjb25maWd1cmF0aW9uCi0gIGZvciAnbXlzcWwnIHVzZXIgLyBn cm91cCBjcmVhdGlvbgotLSBXZSBubyBsb25nZXIgZW5mb3JjZSB0aGUgZml4ZWQgVUlEL0dJRCAy NyAhISEKLQotKiBGcmkgRmViIDI4IDIwMjUgTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQu Y29tPiAtIDguMC40MS0xCi0tIFJlYmFzZSB0byBNeVNRTCA4LjAuNDEKLQotKiBGcmkgSmFuIDE3 IDIwMjUgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9y Zz4gLSA4LjAuNDAtMwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dp a2kvRmVkb3JhXzQyX01hc3NfUmVidWlsZAotCi0qIFN1biBEZWMgMDggMjAyNCBQZXRlIFdhbHRl ciA8cHdhbHRlckBmZWRvcmFwcm9qZWN0Lm9yZz4gLSA4LjAuNDAtMgotLSBSZWJ1aWxkIGZvciBJ Q1UgNzYKLQotKiBNb24gT2N0IDIxIDIwMjQgTGFycyBUYW5ndmFsZCA8bGFycy50YW5ndmFsZEBv cmFjbGUuY29tPiAtIDguMC40MC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA4LjAuNDAKLS0gVXNlIGF1 dG8qIG1hY3JvcyB0byBzaW1wbGlmeSBwYXRjaCBtZ3QKLQotKiBTYXQgQXVnIDEwIDIwMjQgTWlj aGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDguMC4zOS0xCi0tIFJlYmFzZSB0byBN eVNRTCA4LjAuMzkKLQotKiBUaHUgSnVsIDE4IDIwMjQgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJp bmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA4LjAuMzctNAotLSBSZWJ1aWx0IGZvciBo dHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzQxX01hc3NfUmVidWlsZAotCi0q IFdlZCBKdW4gMTIgMjAyNCBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gOC4w LjM3LTMKLS0gQnVtcCByZWxlYXNlIGZvciBwYWNrYWdlIHJlYnVpbGQKLQotKiBTdW4gSnVuIDA5 IDIwMjQgTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDguMC4zNy0yCi0tIEJ1 bXAgcmVsZWFzZSBmb3IgcGFja2FnZSByZWJ1aWxkCi0KLSogVGh1IEFwciAxOCAyMDI0IExhcnMg VGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4gLSA4LjAuMzctMQotLSBVcGRhdGUg dG8gTXlTUUwgOC4wLjM3Ci0tIFJlbW92ZSBzb21lIGxlZ2FjeSBjbWFrZSBvcHRpb25zCi0KLSog VHVlIEFwciAxNiAyMDI0IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA4LjAu MzYtNQotLSBGaXggbXkuY25mIGRlcGVuZGVuY3kgZm9yIEZsYXRwYWsgYnVpbGRzCi0KLSogTW9u IEZlYiAxOSAyMDI0IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA4LjAuMzYtNAot LSBEbyBub3QgcHJvdmlkZSBjb21tdW5pdHktbXlzcWwqIHN5bWJvbHMgaWYgYWx0ZXJuYXRpdmUK LQotKiBNb24gRmViIDA1IDIwMjQgTHVrYXMgSmF2b3Jza3kgPGxqYXZvcnNrQHJlZGhhdC5jb20+ IC0gOC4wLjM2LTMKLS0gQXBwbHkgZGVtb2R1bGFyaXphdGlvbgotLSB0aGUgZGVmYXVsdCBzdHJl YW0gYnVpbGRzIG15c3FsLnJwbQotLSB0aGUgbm9uLWRlZmF1bHQgc3RyZWFtIGJ1aWxkcyBteXNx bFguWFgucnBtCi0KLSogV2VkIEphbiAzMSAyMDI0IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0 LmNvbT4gLSA4LjAuMzYtMgotLSBVc2Ugc2lnbmFsIHRvIGZsdXNoIGxvZ3Mgd2hlbiByb3RhdGlu ZwotCi0qIFdlZCBKYW4gMzEgMjAyNCBMdWthcyBKYXZvcnNreSA8bGphdm9yc2tAcmVkaGF0LmNv bT4gLSA4LjAuMzYtMQotLSBSZWJhc2UgdG8gdmVyc2lvbiA4LjAuMzYKLQotKiBXZWQgSmFuIDMx IDIwMjQgTHVrYXMgSmF2b3Jza3kgPGxqYXZvcnNrQHJlZGhhdC5jb20+IC0gOC4wLjM1LTEwMAot LSBSZW5hbWluZyAnY29tbXVuaXR5LW15c3FsJyB0byAnbXlzcWw4LjAnCi0KLSogV2VkIEphbiAz MSAyMDI0IFBldGUgV2FsdGVyIDxwd2FsdGVyQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4zNS01 Ci0tIFJlYnVpbGQgZm9yIElDVSA3NAotCi0qIFdlZCBKYW4gMjQgMjAyNCBGZWRvcmEgUmVsZWFz ZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4zNS00Ci0tIFJl YnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfNDBfTWFzc19S ZWJ1aWxkCi0KLSogRnJpIEphbiAxOSAyMDI0IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxy ZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gOC4wLjM1LTMKLS0gUmVidWlsdCBmb3IgaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV80MF9NYXNzX1JlYnVpbGQKLQotKiBUdWUg RGVjIDE5IDIwMjMgRmxvcmlhbiBXZWltZXIgPGZ3ZWltZXJAcmVkaGF0LmNvbT4gLSA4LjAuMzUt MgotLSBGaXggaW50LWNvbnZlcnNpb24gdHlwZSBlcnJvciBpbiBtZW1jYWNoZWQKLQotKiBUaHUg U2VwIDIxIDIwMjMgTGFycyBUYW5ndmFsZCA8bGFycy50YW5ndmFsZEBvcmFjbGUuY29tPiAtIDgu MC4zNS0xCi0tIFVwZGF0ZSB0byBNeVNRTCA4LjAuMzUKLS0gUmVtb3ZlIHBhdGNoZXMgbm93IHVw c3RyZWFtCi0KLSogVHVlIEF1ZyAyMiAyMDIzIEx1a2FzIEphdm9yc2t5IDxsamF2b3Jza0ByZWRo YXQuY29tPiAtIDguMC4zNC0yCi0tIE1pZ3JhdGUgbGljZW5zZSB0byBTUERYCi0KLSogV2VkIEF1 ZyAwOSAyMDIzIExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4gLSA4LjAu MzQtMQotLSBVcGRhdGUgdG8gTXlTUUwgOC4wLjM0Ci0tIEFkZCBwYXRjaCBmcm9tIHVwc3RyZWFt IGJ1ZyMxMTA1NjkKLS0gQWRkIHBhdGNoIHRvIGZpeCBiaW5sb2cgZm9ybWF0IGlzc3VlCi0tIFVz ZSAtLXNraXAtY29tYmluYXRpb25zIG92ZXIgLS1iaW5sb2ctZm9ybWF0PW1peGVkCi0tIEFkZCBh bGlnbm1lbnQgcGF0Y2ggdXBzdHJlYW0gYnVnIzExMDc1MgotCi0qIFdlZCBKdWwgMTkgMjAyMyBG ZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDgu MC4zMy00Ci0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRv cmFfMzlfTWFzc19SZWJ1aWxkCi0KLSogVHVlIEp1bCAxMSAyMDIzIEZyYW50acWhZWsgWmF0bG91 a2FsIDxmemF0bG91a0ByZWRoYXQuY29tPiAtIDguMC4zMy0zCi0tIFJlYnVpbHQgZm9yIElDVSA3 My4yCi0KLSogV2VkIEFwciAxMiAyMDIzIExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3Jh Y2xlLmNvbT4gLSA4LjAuMzMtMQotLSBVcGRhdGUgdG8gTXlTUUwgOC4wLjMzCi0KLSogVGh1IEph biAyNiAyMDIzIExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4gLSA4LjAu MzItMQotLSBVcGRhdGUgdG8gTXlTUUwgOC4wLjMyCi0KLSogVGh1IEphbiAxOSAyMDIzIEZlZG9y YSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gOC4wLjMx LTMKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8z OF9NYXNzX1JlYnVpbGQKLQotKiBTYXQgRGVjIDMxIDIwMjIgUGV0ZSBXYWx0ZXIgPHB3YWx0ZXJA ZmVkb3JhcHJvamVjdC5vcmc+IC0gOC4wLjMxLTIKLS0gUmVidWlsZCBmb3IgSUNVIDcyCi0KLSog RnJpIFNlcCAzMCAyMDIyIExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4g LSA4LjAuMzEtMQotLSBVcGRhdGUgdG8gTXlTUUwgOC4wLjMxCi0KLSogTW9uIFNlcCAxMiAyMDIy IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA4LjAuMzAtMwotLSBSZWxlYXNl IGJ1bXAgZm9yIHJlYnVpbGQKLQotKiBUaHUgQXVnIDExIDIwMjIgTWljaGFsIFNjaG9ybSA8bXNj aG9ybUByZWRoYXQuY29tPiAtIDguMC4zMC0yCi0tIFJlbGVhc2UgYnVtcCBmb3IgcmVidWlsZAot Ci0qIE1vbiBBdWcgMDEgMjAyMiBMYXJzIFRhbmd2YWxkIDxsYXJzLnRhbmd2YWxkQG9yYWNsZS5j b20+IC0gOC4wLjMwLTEKLS0gVXBkYXRlIHRvIE15U1FMIDguMC4zMAotLSBSZW1vdmUgcGF0Y2hl cyBub3cgdXBzdHJlYW06Ci0gIGNoYWluIGNlcnRzLCBPcGVuU1NMIDMsIHMzOTAgYW5kIHJvYmlu IGhvb2QKLS0gQWRkIGEgbmV3IHBsdWdpbgotCi0qIE1vbiBBdWcgMDEgMjAyMiBGcmFudGlzZWsg WmF0bG91a2FsIDxmemF0bG91a0ByZWRoYXQuY29tPiAtIDguMC4yOS0zCi0tIFJlYnVpbHQgZm9y IElDVSA3MS4xCi0KLSogV2VkIEp1bCAyMCAyMDIyIEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5n IDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gOC4wLjI5LTIKLS0gUmVidWlsdCBmb3IgaHR0 cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8zN19NYXNzX1JlYnVpbGQKLQotKiBX ZWQgQXByIDIwIDIwMjIgTGFycyBUYW5ndmFsZCA8bGFycy50YW5ndmFsZEBvcmFjbGUuY29tPiAt IDguMC4yOS0xCi0tIFVwZGF0ZSB0byBNeVNRTCA4LjAuMjkKLQotKiBXZWQgSmFuIDE5IDIwMjIg TGFycyBUYW5ndmFsZCA8bGFycy50YW5ndmFsZEBvcmFjbGUuY29tPiAtIDguMC4yOC0xCi0tIFVw ZGF0ZSB0byBNeVNRTCA4LjAuMjgKLQotKiBXZWQgSmFuIDE5IDIwMjIgRmVkb3JhIFJlbGVhc2Ug RW5naW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA4LjAuMjctMwotLSBSZWJ1 aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzM2X01hc3NfUmVi dWlsZAotCi0qIFN1biBOb3YgMDcgMjAyMSBNYW1vcnUgVEFTQUtBIDxtdGFzYWthQGZlZG9yYXBy b2plY3Qub3JnPiAtIDguMC4yNy0yCi0tIHJlYnVpbGQgZm9yIG5ldyBwcm90b2J1ZgotCi0qIFN1 biBPY3QgMzEgMjAyMSBMYXJzIFRhbmd2YWxkIDxsYXJzLnRhbmd2YWxkQG9yYWNsZS5jb20+IC0g OC4wLjI3LTEKLS0gVXBkYXRlIHRvIE15U1FMIDguMC4yNwotCi0qIFNhdCBPY3QgMzAgMjAyMSBI b256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IC0gOC4wLjI2LTQKLS0gTWFrZSBNeVNRTCBj b21waWxlIHdpdGggb3BlbnNzbCAzLnggd2l0aG91dCBGSVBTIHByb3Blcmx5IGltcGxlbWVudGVk Ci0KLSogTW9uIE9jdCAyNSAyMDIxIEFkcmlhbiBSZWJlciA8YWRyaWFuQGxpc2FzLmRlPiAtIDgu MC4yNi0zCi0tIFJlYnVpbHQgZm9yIHByb3RvYnVmIDMuMTguMQotCi0qIFR1ZSBTZXAgMTQgMjAy MSBTYWhhbmEgUHJhc2FkIDxzYWhhbmFAcmVkaGF0LmNvbT4gLSA4LjAuMjYtMgotLSBSZWJ1aWx0 IHdpdGggT3BlblNTTCAzLjAuMAotCi0qIFdlZCBKdWwgMjEgMjAyMSBMYXJzIFRhbmd2YWxkIDxs YXJzLnRhbmd2YWxkQG9yYWNsZS5jb20+IC0gOC4wLjI2LTEKLS0gVXBkYXRlIHRvIE15U1FMIDgu MC4yNgotCi0qIFdlZCBKdWwgMjEgMjAyMSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVs ZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4yNS0yCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8v ZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMzVfTWFzc19SZWJ1aWxkCi0KLSogVHVlIEp1 biAwMSAyMDIxIE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA4LjAuMjUtMQot LSBVcGRhdGUgdG8gTXlTUUwgOC4wLjI1Ci0KLSogV2VkIE1heSAxOSAyMDIxIFBldGUgV2FsdGVy IDxwd2FsdGVyQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4yNC0zCi0tIFJlYnVpbGQgZm9yIElD VSA2OQotCi0qIFdlZCBNYXkgMTkgMjAyMSBQZXRlIFdhbHRlciA8cHdhbHRlckBmZWRvcmFwcm9q ZWN0Lm9yZz4gLSA4LjAuMjQtMgotLSBSZWJ1aWxkIGZvciBJQ1UgNjkKLQotKiBTdW4gQXByIDE4 IDIwMjEgTGFycyBUYW5ndmFsZCA8bGFycy50YW5ndmFsZEBvcmFjbGUuY29tPiAtIDguMC4yNC0x Ci0tIFVwZGF0ZSB0byBNeVNRTCA4LjAuMjQKLQotKiBXZWQgTWFyIDMxIDIwMjEgSm9uYXRoYW4g V2FrZWx5IDxqd2FrZWx5QHJlZGhhdC5jb20+IC0gOC4wLjIzLTMKLS0gUmVidWlsdCBmb3IgcmVt b3ZlZCBsaWJzdGRjKysgc3ltYm9scyAoIzE5Mzc2OTgpCi0KLSogVHVlIE1hciAwMiAyMDIxIFpi aWduaWV3IErEmWRyemVqZXdza2ktU3ptZWsgPHpieXN6ZWtAaW4ud2F3LnBsPiAtIDguMC4yMy0y Ci0tIFJlYnVpbHQgZm9yIHVwZGF0ZWQgc3lzdGVtZC1ycG0tbWFjcm9zCi0gIFNlZSBodHRwczov L3BhZ3VyZS5pby9mZXNjby9pc3N1ZS8yNTgzLgotCi0qIFRodSBGZWIgMDQgMjAyMSBMYXJzIFRh bmd2YWxkIDxsYXJzLnRhbmd2YWxkQG9yYWNsZS5jb20+IC0gOC4wLjIzLTEKLS0gVXBkYXRlIHRv IE15U1FMIDguMC4yMwotLSBDcmVhdGVkIGNvbW11bml0eS1teXNxbC1maXgtaW5jbHVkZXMtcm9i aW4taG9vZC5wYXRjaAotCi0qIFR1ZSBKYW4gMjYgMjAyMSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVl cmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4yMi0zCi0tIFJlYnVpbHQgZm9y IGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMzRfTWFzc19SZWJ1aWxkCi0K LSogVHVlIEphbiAxMiAxNDoyMTo0NyBDRVQgMjAyMSBBZHJpYW4gUmViZXIgPGFkcmlhbkBsaXNh cy5kZT4gLSA4LjAuMjItMgotLSBSZWJ1aWx0IGZvciBwcm90b2J1ZiAzLjE0Ci0KLSogV2VkIE9j dCAyMSAyMDIwIEx1a2FzIEphdm9yc2t5IDxsamF2b3Jza0ByZWRoYXQuY29tPiAtIDguMC4yMi0x Ci0tIFVwZGF0ZSB0byBNeVNRTCA4LjAuMjIKLS0gY29tbXVuaXR5LW15c3FsLWNlcnRzLWV4cGly ZWQucGF0Y2ggcGF0Y2hlZCBieSB1cHN0cmVhbQotLSBjb21tdW5pdHktbXlzcWwtbHRvLnBhdGNo IHBhdGNoZWQgYnkgdXBzdHJlYW0KLQotKiBUdWUgT2N0IDIwIDIwMjAgSmVmZiBMYXcgPGxhd0By ZWRoYXQ+IC0gOC4wLjIxLTE2Ci0tIEZpeCBhbm90aGVyIG1pc3NpbmcgI2luY2x1ZGUgZm9yIGdj Yy0xMQotCi0qIFR1ZSBPY3QgMDYgMjAyMCBKZWZmIExhdyA8bGF3QHJlZGhhdD4gLSA4LjAuMjEt MTUKLS0gQWRkIG1pc3NpbmcgI2luY2x1ZGUgZm9yIGdjYy0xMQotCi0qIFRodSBPY3QgMDEgMTM6 MzM6NDIgQ0VTVCAyMDIwIFpiaWduaWV3IErEmWRyemVqZXdza2ktU3ptZWsgPHpieXN6ZWtAaW4u d2F3LnBsPiAtIDguMC4yMS0xNAotLSBSZWJ1aWx0IGZvciBsaWJldmVudCAyLjEuMTIgKGFnYWlu KQotCi0qIFdlZCBTZXAgMjMgMjAyMCBBZHJpYW4gUmViZXIgPGFkcmlhbkBsaXNhcy5kZT4gLSA4 LjAuMjEtMTMKLS0gUmVidWlsdCBmb3IgcHJvdG9idWYgMy4xMwotCi0qIFR1ZSBTZXAgMTUgMjAy MCBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gOC4wLjIxLTEyCi0tIFJlYnVp bGQgZHVlIHRvIGxpYmV2ZW50IHNvbmFtZSBjaGFuZ2UKLQotKiBUdWUgQXVnIDI1IDIwMjAgTWlj aGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDguMC4yMS0xMQotLSBTdGFydCBidWls ZGluZyB0aGUgTWVDYWIgcGx1Z2luCi0KLSogTW9uIEF1ZyAyNCAyMDIwIE1pY2hhbCBTY2hvcm0g PG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA4LjAuMjEtMTAKLS0gRml4IHRoZSBmaWxlbGlzdC4gQSBu dW1iZXIgb2Ygc2hhcmVkIGxpYnJhcmllcyBpbiB0aGUgcGx1Z2luZGlyCi0gIGFyZSBwYXJ0IG9m IHRoZSB0ZXN0c3VpdGUgYW5kIHRodXMgc2hvdWxkIHJlc2lkZSBpbiAqLXRlc3Qgc3VicGFja2Fn ZQotICBJdCB3aWxsIGJlIGJlc3QgdG8ga2VlcCB0aGUgZmlsZSBsaXN0IGV4cGxpY2l0IHRvIGF2 b2lkIHRoaXMgaW4gdGhlIGZ1dHVyZQotCi0qIFR1ZSBBdWcgMTggMjAyMCBNaWNoYWwgU2Nob3Jt IDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gOC4wLjIxLTkKLS0gSSBlbmNvdW50ZXIgdGhlIEFSTSBt ZW1vcnkgZXhhdXN0aW9uIGluIHRoZSBlbmQKLSAgTG9va3MgbGlrZSBpdCBpcyBvbmx5IGlzc3Vl IG9uIHNvbWUgbWFjaGluZXMKLQotKiBUdWUgQXVnIDE4IDIwMjAgTWljaGFsIFNjaG9ybSA8bXNj aG9ybUByZWRoYXQuY29tPiAtIDguMC4yMS04Ci0tIEkgaGF2ZW4ndCBlbmNvdW50ZXIgdGhlIEFS TSBtZW1vcnkgZXhhdXN0aW9uIG9uIEZlZG9yYSBidWlsZCBpbmZyYXN0cnVjdHVyZQotICBMZXQn cyBlbmFibGUgaXQgYW5kIHNlZSBob3cgaXQgd2lsbCB3b3JrCi0KLSogTW9uIEF1ZyAxNyAyMDIw IExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4gLSA4LjAuMjEtNwotLSBV c2UgdXBzdHJlYW0gcGF0Y2ggdG8gZW5hYmxlIExUTwotLSBTa2lwIExUTyBvbiBBUk0gZHVlIHRv IG91dCBvZiBtZW1vcnkgaXNzdWUKLQotKiBUaHUgQXVnIDEzIDIwMjAgTWljaGFsIFNjaG9ybSA8 bXNjaG9ybUByZWRoYXQuY29tPiAtIDguMC4yMS02Ci0tIERvIGEgcHJvcGVyIG91dC1vZi1zb3Vy Y2UgQ01ha2UgYnVpbGRzCi0tIEZvcmNlIHRoZSBDTWFrZSBjaGFuZ2UgcmVnYXJkaW5nIHRoZSBp bi1zb3VyY2UgYnVpbGRzIGFsc28gdG8gRjMxIGFuZCBGMzIKLS0gVXNlIENNYWtlIG1hY3JvcyBp bnN0ZWFkIG9mIGNtYWtlICYgbWFrZSBkaXJlY3QgY29tbWFuZHMKLS0gJSVjbWFrZSBtYWNybyBj b3ZlcnMgdGhlICUle3NldF9idWlsZF9mbGFnc30sIHNvIHRoZXkgYXJlIG5vdCBuZWVkZWQKLS0g UmVtb3ZlIGFuY2llbnQgb2Jzb2xldGVzCi0KLSogV2VkIEF1ZyAxMiAyMDIwIEhvbnphIEhvcmFr IDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA4LjAuMjEtNQotLSBDaGVjayB0aGF0IHdlIGhhdmUgY29y cmVjdCB2ZXJzaW9ucyBpbiBidW5kbGVkKCopIFByb3ZpZGVzCi0tIFJlbW92ZSByZTIgZGVwZW5k ZW5jeSB0aGF0IGlzIG5vdCBuZWVkZWQgYW55IG1vcmUKLQotKiBUaHUgQXVnIDA2IDIwMjAgSmVm ZiBMYXcgPGxhd0ByZWRoYXQuY29tPiAtIDguMC4yMS00Ci0tIERpc2FibGUgTFRPCi0KLSogU2F0 IEF1ZyAwMSAyMDIwIEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJv amVjdC5vcmc+IC0gOC4wLjIxLTMKLS0gU2Vjb25kIGF0dGVtcHQgLSBSZWJ1aWx0IGZvcgotICBo dHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzMzX01hc3NfUmVidWlsZAotCi0q IE1vbiBKdWwgMjcgMjAyMCBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9y YXByb2plY3Qub3JnPiAtIDguMC4yMS0yCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJv amVjdC5vcmcvd2lraS9GZWRvcmFfMzNfTWFzc19SZWJ1aWxkCi0KLSogRnJpIEp1bCAxNyAyMDIw IExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4gLSA4LjAuMjEtMQotLSBV cGRhdGUgdG8gTXlTUUwgOC4wLjIxCi0KLSogU3VuIEp1biAxNCAyMDIwIEFkcmlhbiBSZWJlciA8 YWRyaWFuQGxpc2FzLmRlPiAtIDguMC4yMC0zCi0tIFJlYnVpbHQgZm9yIHByb3RvYnVmIDMuMTIK LQotKiBGcmkgTWF5IDE1IDIwMjAgUGV0ZSBXYWx0ZXIgPHB3YWx0ZXJAZmVkb3JhcHJvamVjdC5v cmc+IC0gOC4wLjIwLTIKLS0gUmVidWlsZCBmb3IgSUNVIDY3Ci0KLSogU3VuIEFwciAyNiAyMDIw IExhcnMgVGFuZ3ZhbGQgPGxhcnMudGFuZ3ZhbGRAb3JhY2xlLmNvbT4gLSA4LjAuMjAtMQotLSBV cGRhdGUgdG8gTXlTUUwgOC4wLjIwCi0KLSogV2VkIEFwciAwMSAyMDIwIEppdGthIFBsZXNuaWtv dmEgPGpwbGVzbmlrQHJlZGhhdC5jb20+IC0gOC4wLjE5LTMKLS0gU3BlY2lmeSBhbGwgcGVybCBk ZXBlbmRlbmNpZXMKLQotKiBUdWUgSmFuIDI4IDIwMjAgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJp bmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA4LjAuMTktMgotLSBSZWJ1aWx0IGZvciBo dHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzMyX01hc3NfUmVidWlsZAotCi0q IFRodSBKYW4gMDIgMjAyMCBMYXJzIFRhbmd2YWxkIDxsYXJzLnRhbmd2YWxkQG9yYWNsZS5jb20+ IC0gOC4wLjE5LTEKLS0gVXBkYXRlIHRvIE15U1FMIDguMC4xOQotCi0qIFRodSBEZWMgMTkgMjAx OSBBZHJpYW4gUmViZXIgPGFkcmlhbkBsaXNhcy5kZT4gLSA4LjAuMTgtNgotLSBJbmNsdWRlIHBh dGNoIHRvIGJ1aWxkIGFnYWluc3QgcHJvdG9idWYgMy4xMQotCi0qIFRodSBEZWMgMTkgMjAxOSBP cmlvbiBQb3BsYXdza2kgPG9yaW9uQG53cmEuY29tPiAtIDguMC4xOC01Ci0tIFJlYnVpbGQgZm9y IHByb3RvYnVmIDMuMTEKLQotKiBGcmkgTm92IDE1IDIwMTkgTWljaGFsIFNjaG9ybSA8bXNjaG9y bUByZWRoYXQuY29tPiAtIDguMC4xOC00Ci0tIFR5cG8gZml4dXAKLQotKiBNb24gTm92IDExIDIw MTkgTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDguMC4xOC0zCi0tIExldCB0 aGUgZGV2ZWwgcGFja2FnZSByZXF1aXJlIHRoZSBsaWJ6c3RkLWRldmVsCi0KLSogRnJpIE5vdiAw MSAyMDE5IFBldGUgV2FsdGVyIDxwd2FsdGVyQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4xOC0y Ci0tIFJlYnVpbGQgZm9yIElDVSA2NQotCi0qIE1vbiBPY3QgMTQgMjAxOSBMYXJzIFRhbmd2YWxk IDxsYXJzLnRhbmd2YWxkQG9yYWNsZS5jb20+IC0gOC4wLjE4LTEKLS0gVXBkYXRlIHRvIE15U1FM IDguMC4xOAotCi0qIE1vbiBBdWcgMTkgMjAxOSBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhh dC5jb20+IC0gOC4wLjE3LTIKLS0gVXNlIFJFTFJPIGhhcmRlbmluZyBvbiBhbGwgYmluYXJpZXMK LQotKiBXZWQgSnVsIDMxIDIwMTkgTGFycyBUYW5ndmFsZCA8bGFycy50YW5ndmFsZEBvcmFjbGUu Y29tPiAtIDguMC4xNy0xCi0tIFVwZGF0ZSB0byBNeVNRTCA4LjAuMTcKLQotKiBXZWQgSnVsIDI0 IDIwMTkgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9y Zz4gLSA4LjAuMTYtMwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dp a2kvRmVkb3JhXzMxX01hc3NfUmVidWlsZAotCi0qIFdlZCBNYXkgMDEgMjAxOSBNaWNoYWwgU2No b3JtIDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gOC4wLjE2LTIKLS0gUmVtb3ZlIFN5c1ZJbml0IHN0 dWZmLCBubyBsb25nZXIgbmVlZGVkCi0tIENsZWFuIHVwIHRoZSBTUEVDZmlsZQotCi0qIEZyaSBB cHIgMjYgMjAxOSBMYXJzIFRhbmd2YWxkIDxsYXJzLnRhbmd2YWxkQG9yYWNsZS5jb20+IC0gOC4w LjE2LTEKLS0gVXBkYXRlIHRvIE15U1FMIDguMC4xNgotLSBSZWRpZmYgc2hhcmVkaXIgcGF0Y2gK LS0gUmVmcmVzaCBza2lwIGxpc3QgYW5kIHVzZSBuZXcsIHJlcXVpcmVkIGZvcm1hdAotLSBSZW1v dmUgR0NDOSBwYXRjaCBub3cgdXBzdHJlYW0KLS0gVXBzdHJlYW06IG15X3NhZmVfcHJvY2VzcyBy ZW5hbWVkIGFuZCBtb3ZlZCBpbnRvIHByb3BlciBsb2NhdGlvbgotLSBVc2UgdXBzdHJlYW0gb3B0 aW9uIHRvIHNraXAgcm91dGVyIGJ1aWxkCi0tIE9wZW5TU0wgMS4xLjEgYW5kIFRMU3YxLjMgaXMg bm93IHN1cHBvcnRlZCwgZW5hYmxlIHRlc3RzCi0tIFVwZGF0ZSB2ZXJzaW9uIG9mIGJ1bmRsZWQg Qm9vc3QKLS0gU3RhcnQgcmVxdWlyaW5nIG15c3FsLXNlbGludXggcGFja2FnZQotCi0qIE1vbiBG ZWIgMTEgMjAxOSBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gOC4wLjE1LTEK LS0gVXBkYXRlIHRvIE15U1FMIDguMC4xNQotCi0qIFRodSBKYW4gMzEgMjAxOSBGZWRvcmEgUmVs ZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4xNC0zCi0t IFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMzBfTWFz c19SZWJ1aWxkCi0KLSogU3VuIEphbiAyNyAyMDE5IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0 LmNvbT4gLSA4LjAuMTQtMgotLSBVc2UgUlBBVEggZm9yIG15c3FsZCwgc28gd2UgY2FuIGxhdGVy IHNldCBjYXBhYmlsaXRpZXMKLS0gU2V0IGNhcGFiaWxpdGllcyBmb3IgbXlzcWxkIHRoZSBjb3Jy ZWN0IHdheQotCi0qIE1vbiBKYW4gMjEgMjAxOSBMYXJzIFRhbmd2YWxkIDxsYXJzLnRhbmd2YWxk QG9yYWNsZS5jb20+IC0gOC4wLjE0LTEKLS0gVXBkYXRlIHRvIE15U1FMIDguMC4xNAotLSBSZW1v dmUgZmVkb3JhIHZlcnNpb24gY29uZGl0aW9uIHRoYXQgYXJlIG5vIGxvbmdlciByZWxldmFudAot LSBVcGRhdGUgc2tpcHBlZCB0ZXN0cyBsaXN0Ci0tIENWRXMgZml4ZWQ6ICMxNjY2Nzc4Ci0gIENW RS0yMDE5LTI0MjAgQ1ZFLTIwMTktMjQzNCBDVkUtMjAxOS0yNDM2IENWRS0yMDE5LTI0NTUgQ1ZF LTIwMTktMjQ4MQotICBDVkUtMjAxOS0yNDgyIENWRS0yMDE5LTI0ODYgQ1ZFLTIwMTktMjQ5NCBD VkUtMjAxOS0yNDk1IENWRS0yMDE5LTI1MDIKLSAgQ1ZFLTIwMTktMjUwMyBDVkUtMjAxOS0yNTA3 IENWRS0yMDE5LTI1MTAgQ1ZFLTIwMTktMjUyOCBDVkUtMjAxOS0yNTI5Ci0gIENWRS0yMDE5LTI1 MzAgQ1ZFLTIwMTktMjUzMSBDVkUtMjAxOS0yNTMyIENWRS0yMDE5LTI1MzMgQ1ZFLTIwMTktMjUz NAotICBDVkUtMjAxOS0yNTM1IENWRS0yMDE5LTI1MzYgQ1ZFLTIwMTktMjUzNyBDVkUtMjAxOS0y NTM5Ci0KLSogV2VkIEphbiAxNiAyMDE5IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNv bT4gLSA4LjAuMTMtMwotLSBUd2VhayBoYW5kbGluZyBvZiB0aGUgbXlzcWwtc2VsaW51eCByZXF1 aXJlbWVudAotCi0qIE1vbiBKYW4gMTQgMjAxOSBCasO2cm4gRXNzZXIgPGJlc3NlcjgyQGZlZG9y YXByb2plY3Qub3JnPiAtIDguMC4xMy0yCi0tIFJlYnVpbHQgZm9yIGxpYmNyeXB0LnNvLjIgKCMx NjY2MDMzKQotCi0qIFR1ZSBPY3QgMjMgMjAxOCBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhh dC5jb20+IC0gOC4wLjEzLTEKLS0gUmViYXNlIHRvIDguMC4xMwotLSBJQ1UgcGF0Y2ggcmVtb3Zl ZDsgdXBzdHJlYW1lZAotLSBQYXRjaCBmb3IgTXlTUUwgUm91dGVyIGludHJvZHVjZWQuIERvIG5v dCBidWlsZCBpdC4KLS0gQ1ZFcyBmaXhlZDoKLSAgQ1ZFLTIwMTgtMzI3NiBDVkUtMjAxOC0zMjAw IENWRS0yMDE4LTMxMzcgQ1ZFLTIwMTgtMzI4NCBDVkUtMjAxOC0zMTk1Ci0gIENWRS0yMDE4LTMx NzMgQ1ZFLTIwMTgtMzIxMiBDVkUtMjAxOC0zMjc5IENWRS0yMDE4LTMxNjIgQ1ZFLTIwMTgtMzI0 NwotICBDVkUtMjAxOC0zMTU2IENWRS0yMDE4LTMxNjEgQ1ZFLTIwMTgtMzI3OCBDVkUtMjAxOC0z MTc0IENWRS0yMDE4LTMyODIKLSAgQ1ZFLTIwMTgtMzI4NSBDVkUtMjAxOC0zMTg3IENWRS0yMDE4 LTMyNzcgQ1ZFLTIwMTgtMzE0NCBDVkUtMjAxOC0zMTQ1Ci0gIENWRS0yMDE4LTMxNzAgQ1ZFLTIw MTgtMzE4NiBDVkUtMjAxOC0zMTgyIENWRS0yMDE4LTMxMzMgQ1ZFLTIwMTgtMzE0MwotICBDVkUt MjAxOC0zMjgzIENWRS0yMDE4LTMxNzEgQ1ZFLTIwMTgtMzI1MSBDVkUtMjAxOC0zMjg2IENWRS0y MDE4LTMxODUKLSAgQ1ZFLTIwMTgtMzI4MCBDVkUtMjAxOC0zMjAzIENWRS0yMDE4LTMxNTUKLQot KiBUaHUgU2VwIDA2IDIwMTggTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDgu MC4xMi0yCi0tIEZpeCB0aGUgU1lTX05JQ0UgY2FwYWJpbGl0aWVzCi0gIFJlbGF0ZWQ6ICMxNTQw OTQ2Ci0tIEFkZCByZXF1aXJlcyBmb3IgdGhlIHNlbWFuYWdlIGJpbmFyeQotCi0qIFdlZCBBdWcg MDEgMjAxOCBOb3J2YWxkIEguIFJ5ZW5nIDxub3J2YWxkLnJ5ZW5nQG9yYWNsZS5jb20+IC0gOC4w LjEyLTEKLS0gVXBkYXRlIHRvIE15U1FMIDguMC4xMgotCi0qIFR1ZSBKdWwgMTcgMjAxOCBIb256 YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IC0gOC4wLjExLTUKLS0gTW92ZSBsb2cgZmlsZSB0 byBhIGRpcmVjdG9yeSBvd25lZCBieSBteXNxbCB1c2VyCi0gIFJlc29sdmVzOiAjMTU5MDM2OQot LSBVc2UgZXhwbGljaXRseSBvcGVuc3NsLWRldmVsIGFzIGRlcGVuZGVuY3kgZm9yIC1kZXZlbCBz dWItcGFja2FnZQotCi0qIFRodSBKdWwgMTIgMjAxOCBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhh dC5jb20+IC0gOC4wLjExLTQKLS0gTW92ZSBteXNxbGQgYmFjayB0byAvdXNyL2xpYmV4ZWMsIGFu ZCBjcmVhdGUgYSBzeW1saW5rIGluIC91c3Ivc2JpbgotCi0qIFRodSBKdWwgMTIgMjAxOCBGZWRv cmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDguMC4x MS0zCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFf MjlfTWFzc19SZWJ1aWxkCi0KLSogTW9uIE1heSAxNCAyMDE4IE5vcnZhbGQgSC4gUnllbmcgPG5v cnZhbGQucnllbmdAb3JhY2xlLmNvbT4gLSA4LjAuMTEtMgotLSBNeVNRTCA4LjAgaGFzIG5vdGlm eSBzdXBwb3J0Ci0tIFNRTCByZXN0YXJ0IGNvbW1hbmQgbmVlZHMgTVlTUUxEX1BBUkVOVF9QSUQ9 MQotLSBJbmNyZWFzZSBMaW1pdE5PRklMRQotLSBEaXNhYmxlIHN5bWJvbGljIGxpbmtzIGlzIGRl ZmF1bHQgKGFuZCBvcHRpb24gZGVwcmVjYXRlZCkKLS0gTW92ZSBteXNxbGQgdG8gL3Vzci9iaW4s IHdpdGggbXlzcWxkX3NhZmUgZ29uZSB0aGVyZSBubyByZWFzb24KLSAgdG8gaGF2ZSBteXNxbGQg aW4gbGliZXhlYwotLSBGSVBTIG1vZGUgaXMgbm93IHN1cHBvcnRlZDoKLSAgIGh0dHBzOi8vZGV2 Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzguMC9lbi9maXBzLW1vZGUuaHRtbAotLSBSZW1vdmUgbGVn YWN5IGVtYmVkZGVkIHJlZnMgZnJvbSBjbmYgZmlsZXMKLS0gQ2xlYW4gdXAgcGF0Y2hlczogcmUt bnVtYmVyaW5nIGFuZCByZW1vdmluZwotLSBSZWNvbW1lbmQgdG8gdXNlIHN5c3RlbWN0bCBlZGl0 IHRvIG1vZGlmeSBzZXJ2aWNlIGZpbGVzCi0KLSogRnJpIEFwciAyMCAyMDE4IE5vcnZhbGQgSC4g UnllbmcgPG5vcnZhbGQucnllbmdAb3JhY2xlLmNvbT4gLSA4LjAuMTEtMQotLSBVcGRhdGUgdG8g TXlTUUwgOC4wLjExIChHQSkuCi0KLSogVGh1IEFwciAxOSAyMDE4IE1pY2hhbCBTY2hvcm0gPG1z Y2hvcm1AcmVkaGF0LmNvbT4gLSA1LjcuMjItMQotLSBSZWJhc2UgdG8gNS43LjIyIHZlcnNpb24K LS0gQ1ZFIGZpeGVzOiAjMTU2ODk2MwotICAgICAgICAgICAgQ1ZFLTIwMTgtMjc1NSBDVkUtMjAx OC0yNzU4IENWRS0yMDE4LTI3NTkgQ1ZFLTIwMTgtMjc2MSBDVkUtMjAxOC0yNzYyCi0gICAgICAg ICAgICBDVkUtMjAxOC0yNzY2IENWRS0yMDE4LTI3NjkgQ1ZFLTIwMTgtMjc3MSBDVkUtMjAxOC0y NzczIENWRS0yMDE4LTI3NzUKLSAgICAgICAgICAgIENWRS0yMDE4LTI3NzYgQ1ZFLTIwMTgtMjc3 NyBDVkUtMjAxOC0yNzc4IENWRS0yMDE4LTI3NzkgQ1ZFLTIwMTgtMjc4MAotICAgICAgICAgICAg Q1ZFLTIwMTgtMjc4MSBDVkUtMjAxOC0yNzgyIENWRS0yMDE4LTI3ODQgQ1ZFLTIwMTgtMjc4NiBD VkUtMjAxOC0yNzg3Ci0gICAgICAgICAgICBDVkUtMjAxOC0yODEwIENWRS0yMDE4LTI4MTIgQ1ZF LTIwMTgtMjgxMyBDVkUtMjAxOC0yODE2IENWRS0yMDE4LTI4MTcKLSAgICAgICAgICAgIENWRS0y MDE4LTI4MTggQ1ZFLTIwMTgtMjgxOSBDVkUtMjAxOC0yODM5IENWRS0yMDE4LTI4NDYKLQotKiBU dWUgRmViIDI3IDIwMTggTWljaGFsIFNjaG9ybSA8bXNjaG9ybUByZWRoYXQuY29tPiAtIDUuNy4y MS02Ci0tIFJlYnVpbHQgYWZ0ZXIgUmF3aGlkZSAmIGYyOCAmIGYyNyAmIGYyNiBtZXJnZQotCi0q IFN1biBGZWIgMjUgMjAxOCBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gNS43 LjIxLTUKLS0gUmVidWlsdCBmb3IgbGRjb25maWdfcG9zdCBhbmQgbGRjb25maWdfcG9zdHVuIGJ1 ZwotICBSZWxhdGVkOiAjMTU0ODMzMQotCi0qIE1vbiBGZWIgMTkgMjAxOCBNaWNoYWwgU2Nob3Jt IDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gNS43LjIxLTMKLS0gTW92ZSBteV9wcmludF9kZWZhdWx0 cyBiaW5hcnkgdG8gdGhlIHNlcnZlciBwYWNrYWdlIHRvIHJlc29sdmUgY29uZmxpY3Qgd2l0aCBt YXJpYWRiCi0KLSogV2VkIEZlYiAwNyAyMDE4IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxy ZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNS43LjIxLTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yOF9NYXNzX1JlYnVpbGQKLS0gUmVtb3Zl ZCAnc3RhdGljJyBsaWJyYXJ5IHN1YnBhY2thZ2UKLQotKiBTdW4gSmFuIDIxIDIwMTggTm9ydmFs ZCBILiBSeWVuZyA8bm9ydmFsZC5yeWVuZ0BvcmFjbGUuY29tPiAtIDUuNy4yMS0xCi0tIFVwZGF0 ZSB0byBNeVNRTCA1LjcuMjEsIGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRw czovL2Rldi5teXNxbC5jb20vZG9jL3JlbG5vdGVzL215c3FsLzUuNy9lbi9uZXdzLTUtNy0yMS5o dG1sCi0tIEFkZCBycGNnZW4gdG8gYnVpbGRyZXAKLS0gQWRkIHN1cHBvcnQgZm9yIGxpYnRpcnBj Ci0tIEZpeCBmb3IgdmFyaW91cyBDVkVzIGxpc3RlZCBvbgotICBodHRwOi8vd3d3Lm9yYWNsZS5j b20vdGVjaG5ldHdvcmsvc2VjdXJpdHktYWR2aXNvcnkvY3B1amFuMjAxOC0zMjM2NjI4Lmh0bWwK LS0gQWRkIGZpeCBmb3IgbGlieGNyeXB0IC0gZG8gbm90IGFzc3VtZSAiY3J5cHQoKSIgZnVuY3Rp b24gaXMgcHJvdmlkZWQgYnkgZ2xpYmMKLSAgUmVzb2x2ZXM6ICMxNTM2ODgxCi0tIEZpeCBvYnNv bGV0ZXMgdXNpbmcgaXNhIG1hY3JvLCByZW1vdmUgdGhlIGxpbmUgZW50aXJlbHkKLSAgUmVzb2x2 ZXM6ICMxNTM3MjEwCi0KLSogU2F0IEphbiAyMCAyMDE4IEJqw7ZybiBFc3NlciA8YmVzc2VyODJA ZmVkb3JhcHJvamVjdC5vcmc+IC0gNS43LjIwLTUKLS0gUmVidWlsdCBmb3Igc3dpdGNoIHRvIGxp YnhjcnlwdAotCi0qIFR1ZSBKYW4gMDIgMjAxOCBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhh dC5jb20+IC0gNS43LjIwLTQKLS0gUHJvdmlkZSBzdWJhY2thZ2Ugd2l0aCBhIGNsaWVudCBzdGF0 aWMgbGlicmFyeQotICBOZWVkZWQgYnkgbXlzcWwtY29ubmVjdG9yLW9kYmMgcGFja2FnZQotLSBS ZW1vdmUgR3JvdXAgdGFnIGFzIGl0IHNob3VsZG4ndCBiZSB1c2VkIGFueW1vcmUKLQotKiBTYXQg RGVjIDA5IDIwMTcgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiAtIDUuNy4yMC0zCi0t IFBvcnQgZm9yIE9wZW5TU0wgMS4xCi0gIEZpeCB0ZXN0cyB0aGF0IGV4cGVjdCBzb21lIHBhcnRp Y3VsYXIgY2lwaGVycwotCi0qIFR1ZSBOb3YgMjggMjAxNyBNaWNoYWwgU2Nob3JtIDxtc2Nob3Jt QHJlZGhhdC5jb20+IC0gNS43LjIwLTIKLS0gSW4gRj4yNyBzdGljayB0byB1cHN0cmVhbSBsaWJy YXJ5IHZlcnNpb24gbmFtaW5nCi0KLSogV2VkIE9jdCAyNSAyMDE3IE1pY2hhbCBTY2hvcm0gPG1z Y2hvcm1AcmVkaGF0LmNvbT4gLSA1LjcuMjAtMQotLSBGaXggb3duZXIgYW5kIHBlcm1zIG9uIGxv ZyBmaWxlIGluIHBvc3Qgc2NyaXB0Ci0gIFJlbGF0ZWQ6ICMxNDk3Njk0Ci0KLSogTW9uIE9jdCAx NiAyMDE3IE5vcnZhbGQgSC4gUnllbmcgPG5vcnZhbGQucnllbmdAb3JhY2xlLmNvbT4gLSA1Ljcu MjAtMQotLSBVcGRhdGUgdG8gTXlTUUwgNS43LjIwLCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmli ZWQgYXQKLSAgaHR0cHM6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWxub3Rlcy9teXNxbC81LjcvZW4v bmV3cy01LTctMjAuaHRtbAotLSBNb3ZlIGFsbCB0ZXN0IGJpbmFyaWVzIHRvIC10ZXN0IHBhY2th Z2UKLS0gRG9udCBzaGlwIHVubmVlZGVkIG1hbiBwYWdlcyBvbiBzeXN0ZW1kIHBsYXRmb3Jtcwot LSBSZW1vdmUgbXlzcWxfY29uZmlnX2VkaXRvciBmcm9tIC1kZXZlbCBwYWNrYWdlLCBzaGlwcGVk IGluIGNsaWVudAotLSBDVkUgZml4ZXM6ICMxNTAzNzAxCi0gICAgICAgICAgICBDVkUtMjAxNy0x MDE1NSBDVkUtMjAxNy0xMDIyNyBDVkUtMjAxNy0xMDI2OCBDVkUtMjAxNy0xMDI3NiBDVkUtMjAx Ny0xMDI3OQotICAgICAgICAgICAgQ1ZFLTIwMTctMTAyODMgQ1ZFLTIwMTctMTAyODYgQ1ZFLTIw MTctMTAyOTQgQ1ZFLTIwMTctMTAzMTQgQ1ZFLTIwMTctMTAzNzgKLSAgICAgICAgICAgIENWRS0y MDE3LTEwMzc5IENWRS0yMDE3LTEwMzg0Ci0KLSogTW9uIEF1ZyAyOCAyMDE3IEhvbnphIEhvcmFr IDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1LjcuMTktNgotLSBBZGQgYnVuZGxlZChib29zdCkgdmly dHVhbCBwcm92aWRlCi0tIFN1cHBvcnQgLS1kZWZhdWx0cy1ncm91cC1zdWZmaXggb3B0aW9uIGlu IHN5c3RlbWQgdW5pdCBmaWxlCi0gIFJlbGF0ZWQ6ICMxNDAwNzAyCi0KLSogRnJpIEF1ZyAwNCAy MDE3IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1LjcuMTktNQotLSBBbGxvdyB0 byB1c2UgTUQ1IGluIEZJUFMgbW9kZQotICBSZWxhdGVkOiAjMTQ0OTY4OQotLSBSZW1vdmUgc25p cHBldHMgZnJvbSBteXNxbC1wcmVwYXJlcC1kYi1kaXIuc2ggdGhhdCBjb3VsZCBoYXZlIHNlY3Vy aXR5IGltcGFjdAotICBEbyBub3QgcnVuIHBhcnRzIG9mIFN5c1YgaW5pdCBzY3JpcHQgYXMgcm9v dCBpZiBwb3NzaWJsZQotICBSZWxhdGVkOiBDVkUtMjAxNy0zMzEyCi0tIEluY2x1ZGUgbXlzcWxk QC5zZXJ2aWNlIGZpbGUgYW5kIGRvIG5vdCBydW4gc3RhcnQgc2NyaXB0cyBpbiB0aGUgdW5pdCBm aWxlIGFzIHJvb3QKLQotKiBXZWQgQXVnIDAyIDIwMTcgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJp bmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA1LjcuMTktNAotLSBSZWJ1aWx0IGZvciBo dHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzI3X0JpbnV0aWxzX01hc3NfUmVi dWlsZAotCi0qIFdlZCBKdWwgMjYgMjAxNyBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVs ZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDUuNy4xOS0zCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8v ZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMjdfTWFzc19SZWJ1aWxkCi0KLSogVHVlIEp1 bCAyNSAyMDE3IE1pY2hhbCBTY2hvcm0gPG1zY2hvcm1AcmVkaGF0LmNvbT4gLSA1LjcuMTktMgot LSBSZXBsaWNhdGlvbiB0ZXN0cyBpbiB0aGUgdGVzdHN1aXRlIGVuYWJsZWQsIHRoZXkgZG9uJ3Qg ZmFpbCBhbnltb3JlCi0tIFJldHJ5IGNvdW50IGluIHRoZSB0ZXN0c3VpdGUgZHJvcHBlZCB0byAw Ci0KLSogV2VkIEp1bCAxMiAyMDE3IE5vcnZhbGQgSC4gUnllbmcgPG5vcnZhbGQucnllbmdAb3Jh Y2xlLmNvbT4gLSA1LjcuMTktMQotLSBVcGRhdGUgdG8gTXlTUUwgNS43LjE5LCBmb3IgdmFyaW91 cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cHM6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWxub3Rl cy9teXNxbC81LjcvZW4vbmV3cy01LTctMTkuaHRtbAotLSBVc2UgbmV3IC0tcmVwb3J0LXVuc3Rh YmxlLXRlc3RzIHRvIGhhbmRsZSB1bnN0YWJsZSB0ZXN0cwotLSBQcmVmZXIgL3J1biBvdmVyIC92 YXIvcnVuICgjMTQ2MjY4OCkKLS0gUmVzb2x2ZXM6ICMxNDYyNjg4OyAvcnVuCi0gICAgICAgICAg ICAjMTQwNjE3MjsgcmFuZG9tIGZhaWx1cmVzIG9mIHRoZSB0ZXN0c3VpdGUKLSAgICAgICAgICAg ICMxNDE3ODgwLCAjMTQxNzg4MywgIzE0MTc4ODUsICMxNDE3ODg3LCAgIzE0MTc4OTAsICMxNDE3 ODkxLCAjMTQxNzg5MywKLSAgICAgICAgICAgICMxNDE3ODk0LCAjMTQxNzg5NjsgcmVwbGljYXRp b24gdGVzdHMKLS0gQ1ZFIGZpeGVzOiAjMTQ3MjcxNgotICAgICAgICAgICAgQ1ZFLTIwMTctMzYz MywgQ1ZFLTIwMTctMzYzNCwgQ1ZFLTIwMTctMzYzNSwgQ1ZFLTIwMTctMzY0MSwgQ1ZFLTIwMTct MzY0NwotICAgICAgICAgICAgQ1ZFLTIwMTctMzY0OCwgQ1ZFLTIwMTctMzY0OSwgQ1ZFLTIwMTct MzY1MSwgQ1ZFLTIwMTctMzY1MiwgQ1ZFLTIwMTctMzY1MwotCi0qIEZyaSBKdWwgMDcgMjAxNyBJ Z29yIEduYXRlbmtvIDxpZ25hdGVua29AcmVkaGF0LmNvbT4gLSA1LjcuMTgtNAotLSBSZWJ1aWxk IGR1ZSB0byBidWcgaW4gUlBNIChSSEJaICMxNDY4NDc2KQotCi0qIE1vbiBNYXkgMTUgMjAxNyBG ZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9y Zz4gLSA1LjcuMTgtMwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dp a2kvRmVkb3JhXzI2XzI3X01hc3NfUmVidWlsZAotCi0qIFdlZCBBcHIgMTkgMjAxNyBNaWNoYWwg U2Nob3JtIDxtc2Nob3JtQHJlZGhhdC5jb20+IC0gNS43LjE4LTIKLS0gJ2ZvcmNlJyBvcHRpb24g Zm9yICdybScgcmVtb3ZlZCBpbiBzcGVjZmlsZQotLSBDVkVzIGZpeGVkIGJ5IHByZXZpb3VzIGNv bW1pdCwgIzE0NDM0MDc6Ci0gIENWRS0yMDE3LTMzMDggQ1ZFLTIwMTctMzMwOSBDVkUtMjAxNy0z MzI5IENWRS0yMDE3LTM0NTAKLSAgQ1ZFLTIwMTctMzQ1MyBDVkUtMjAxNy0zNDU2IENWRS0yMDE3 LTM0NjEgQ1ZFLTIwMTctMzQ2MgotICBDVkUtMjAxNy0zNDYzIENWRS0yMDE3LTM0NjQgQ1ZFLTIw MTctMzU5OSBDVkUtMjAxNy0zNjAwCi0KLSogTW9uIEFwciAwMyAyMDE3IE5vcnZhbGQgSC4gUnll bmcgPG5vcnZhbGQucnllbmdAb3JhY2xlLmNvbT4gLSA1LjcuMTgtMQotLSBVcGRhdGUgdG8gTXlT UUwgNS43LjE4LCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cHM6Ly9kZXYu bXlzcWwuY29tL2RvYy9yZWxub3Rlcy9teXNxbC81LjcvZW4vbmV3cy01LTctMTguaHRtbAotLSBS ZW1vdmUgcGF0Y2ggZm9yIHRlc3QgZml4IG5vdyB1cHN0cmVhbQotLSBTYW1wbGUgbXktKi5jbmYg aXMgZ29uZQotCi0qIFdlZCBGZWIgMTUgMjAxNyBNaWNoYWwgU2Nob3JtIDxtc2Nob3JtQHJlZGhh dC5jb20+IC0gNS43LjE3LTQKLS0gRml4IG9mIGJyb2tlbiBjcm9zcyBteXNxbC1tYXJpYWRiIGRl cGVuZGVjaWVzCi0tIEZpeCBvZiBjb21tdW5pdHktbXlzcWwgc2VydmVyLWNsaWVudCBkZXBlbmRl Y3kKLS0gVGVzdHN1aXRlIHJldHJ5IGNvdW50IGxpZnRlZCB0byAzIHRyaWVzCi0KLSogRnJpIEZl YiAxMCAyMDE3IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVj dC5vcmc+IC0gNS43LjE3LTMKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9y Zy93aWtpL0ZlZG9yYV8yNl9NYXNzX1JlYnVpbGQKLQotKiBXZWQgSmFuIDA0IDIwMTcgTm9ydmFs ZCBILiBSeWVuZyA8bm9ydmFsZC5yeWVuZ0BvcmFjbGUuY29tPiAtIDUuNy4xNy0yCi0tIEZpeCB0 ZXN0IHRoYXQgdXNlZCBhIGhhcmRjb2RlZCBkYXRlICgyMDE3LTAxLTAxKQotCi0qIE1vbiBEZWMg MTIgMjAxNiBOb3J2YWxkIEguIFJ5ZW5nIDxub3J2YWxkLnJ5ZW5nQG9yYWNsZS5jb20+IC0gNS43 LjE3LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNy4xNywgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3Jp YmVkIGF0Ci0gIGh0dHBzOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVsbm90ZXMvbXlzcWwvNS43L2Vu L25ld3MtNS03LTE3Lmh0bWwKLS0gQWRkIG5ldyBwbHVnaW46IGNvbm5uZWN0aW9uX2NvbnRyb2wu c28KLS0gQWRkIE15U1FMIEdyb3VwIFJlcGxpY2F0aW9uOiBncm91cF9yZXBsaWNhdGlvbi5zbwot LSBBZGQgbnVtYWN0bC1kZXZlbCB0byBidWlsZHJlcSBhbmQgZW5hYmxlIE5VTUEgc3VwcG9ydCAo aWYgYXZhaWxhYmxlKQotLSBTaW1wbGlmeSBib29zdCBwYXRoCi0tIEJ1aWxkIGNvbXBhdC1vcGVu c3NsMTAgaW4gcmF3aGlkZSBmb3Igbm93Ci0tIFJlcXMuIGluIC1kZXZlbCBwYWNrYWdlcyB3YXMg aW5jb21wbGV0ZQotCi0qIFR1ZSBPY3QgMTggMjAxNiBOb3J2YWxkIEguIFJ5ZW5nIDxub3J2YWxk LnJ5ZW5nQG9yYWNsZS5jb20+IC0gNS43LjE2LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNy4xNiwg Zm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHBzOi8vZGV2Lm15c3FsLmNvbS9k b2MvcmVsbm90ZXMvbXlzcWwvNS43L2VuL25ld3MtNS03LTE2Lmh0bWwKLQotKiBUdWUgU2VwIDA2 IDIwMTYgTm9ydmFsZCBILiBSeWVuZyA8bm9ydmFsZC5yeWVuZ0BvcmFjbGUuY29tPiAtIDUuNy4x NS0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjcuMTUsIGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJl ZCBhdAotICBodHRwczovL2Rldi5teXNxbC5jb20vZG9jL3JlbG5vdGVzL215c3FsLzUuNy9lbi9u ZXdzLTUtNy0xNS5odG1sCi0tIFJlbW92ZSBwYXRjaGVzIG5vdyB1cHN0cmVhbSAoYnVmX2Jsb2Nr X2FsaWduLCAgbHo0KQotLSBwZXJsKEpTT04pIG5lZWRlZCBmb3IgdGVzdHMKLS0gQWRqdXN0IGxp c3Qgb2YgcHJvYmxlbWF0aWMgdGVzdHMKLQotKiBXZWQgQXVnIDEwIDIwMTYgTm9ydmFsZCBILiBS eWVuZyA8bm9ydmFsZC5yeWVuZ0BvcmFjbGUuY29tPiAtIDUuNy4xNC0yCi0tIFNraXAgcnBsIHRl c3RzLCB1bnN0YWJsZSBpbiBGZWRvcmEgYnVpbGQgZW52aXJvbm1lbnQKLQotKiBUdWUgQXVnIDA5 IDIwMTYgTm9ydmFsZCBILiBSeWVuZyA8bm9ydmFsZC5yeWVuZ0BvcmFjbGUuY29tPiAtIDUuNy4x NC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjcuMTQsIGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJl ZCBhdAotICBodHRwczovL2Rldi5teXNxbC5jb20vZG9jL3JlbG5vdGVzL215c3FsLzUuNy9lbi9u ZXdzLTUtNy0xNC5odG1sCi0tIFJlbW92ZSBwYXRjaGVzIGZvciBidWdzIGZpeGVkIHVwc3RyZWFt Ci0tIEZpeCBmb3IgYnVnICM3OTM3OCAoYnVmX2Jsb2NrX2FsaWduKQotLSBGaXggZm9yIGJ1ZyAj ODI0MjYgKGJ1aWxkIGZhaWx1cmUgd2l0aCBzeXN0ZW0gbGlibHo0KQotLSBGdXJ0aGVyIHJlZHVj ZSBsaXN0IG9mIHRlc3RzIGtub3duIHRvIGZhaWwgb24gY2VydGFpbiBwbGF0Zm9ybXMKLS0gU2V0 IGNoZWNrX3Rlc3RzdWl0ZSB0byAwIHRvIG1ha2Ugc3VyZSB0aGUgYnVpbGQgZmFpbHMgaWYgYW55 IHRlc3RzIGZhaWwKLQotKiBXZWQgSnVsIDEzIDIwMTYgTm9ydmFsZCBILiBSeWVuZyA8bm9ydmFs ZC5yeWVuZ0BvcmFjbGUuY29tPiAtIDUuNy4xMy0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjcuMTMs IGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwczovL2Rldi5teXNxbC5jb20v ZG9jL3JlbG5vdGVzL215c3FsLzUuNy9lbi9uZXdzLTUtNy0xMy5odG1sCi0KLSogTW9uIEp1biAy NyAyMDE2IFBhdmVsIFJhaXNrdXAgPHByYWlza3VwQHJlZGhhdC5jb20+IC0gNS43LjEyLTIKLS0g QlIgbXVsdGlsaWItcnBtLWNvbmZpZyBhbmQgdXNlIGl0IGZvciBtdWx0aWxpYiB3b3JrYXJvdW5k cwotCi0qIFR1ZSBNYXkgMjQgMjAxNiBKYWt1YiBEb3LFiMOhayA8amRvcm5ha0ByZWRoYXQuY29t PiAtIDUuNy4xMi0xCi0tIFVwZGF0ZSB0byA1LjcuMTIKLSAgVGhhbmtzIHRvIE5vcnZhbGQgSC4g UnllbmcKLQotKiBTdW4gRmViIDE0IDIwMTYgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29t PiAtIDUuNy4xMS0yCi0tIFJlbW92ZSBkdXBsaWNhdGUgdG1wZmlsZXMuZCBmaWxlCi0gIFJlc29s dmVzOiAjMTI4ODIxNgotCi0qIFRodSBGZWIgMTEgMjAxNiBIb256YSBIb3JhayA8aGhvcmFrQHJl ZGhhdC5jb20+IC0gNS43LjExLTEKLS0gVXBkYXRlIHRvIDUuNy4xMQotICBUaGFua3MgdG8gTm9y dmFsZCBILiBSeWVuZwotICBSZW1vdmluZyB0YXIgYmFsbCB3aXRoIGJvb3N0IGFuZCB1c2luZyBt eXNxbCB0YXIgYmFsbCB3aXRoIGJvb3N0IGJ1bmRsZWQKLQotKiBXZWQgRmViIDAzIDIwMTYgRmVk b3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbGVuZ0BmZWRvcmFwcm9qZWN0Lm9yZz4gLSA1Ljcu MTAtMwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3Jh XzI0X01hc3NfUmVidWlsZAotCi0qIFdlZCBKYW4gMjcgMjAxNiBIb256YSBIb3JhayA8aGhvcmFr QHJlZGhhdC5jb20+IC0gNS43LjEwLTIKLS0gVXNlIG15c3FsZCBpbnN0ZWFkIG9mIG15c3FsZF9z YWZlIChteXNxbGRfc2FmZSBub3QgbmVjZXNzYXJ5IGZvciA1LjcpCi0gIFVzZSBteXNxbGQgLS1p bml0aWFsaXplLWluc2VjdXJlIGluc3RlYWQgb2YgbXlzcWxfaW5zdGFsbF9kYgotICBDcmVhdGUg L3Zhci9saWIvbXlzcWwtZmlsZXMgKHVzZWQgYnkgc2VjdXJlLWZpbGUtcHJpdikKLSAgICBodHRw Oi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuNy9lbi9zZXJ2ZXItc3lzdGVtLXZhcmlhYmxl cy5odG1sI3N5c3Zhcl9zZWN1cmVfZmlsZV9wcml2Ci0gIFJlbW92ZSB1bm5lY2Vzc2FyeSBQZXJs IGRlcGVuZGVuY2llcyAobXlzcWxob3Rjb3B5IHdhcyByZW1vdmVkIGluIDUuNykKLSAgVGhhbmtz IE5vcnZhbGQgSC4gUnllbmcKLQotKiBXZWQgRGVjIDE2IDIwMTUgSmFrdWIgRG9yxYjDoWsgPGpk b3JuYWtAcmVkaGF0LmNvbT4gLSA1LjcuMTAtMQotLSBVcGRhdGUgdG8gNS43LjEwCi0KLSogRnJp IE9jdCAgMiAyMDE1IEpha3ViIERvcsWIw6FrIDxqZG9ybmFrQHJlZGhhdC5jb20+IC0gNS43Ljkt MQotLSBVcGRhdGUgdG8gNS43LjkKLQotKiBUaHUgT2N0ICAxIDIwMTUgSmFrdWIgRG9yxYjDoWsg PGpkb3JuYWtAcmVkaGF0LmNvbT4gLSA1LjYuMjctMQotLSBVcGRhdGUgdG8gNS42LjI3Ci0KLSog VGh1IEp1bCAzMCAyMDE1IEpha3ViIERvcsWIw6FrIDxqZG9ybmFrQHJlZGhhdC5jb20+IC0gNS42 LjI2LTEKLS0gVXBkYXRlIHRvIDUuNi4yNgotCi0qIFR1ZSBKdWwgMjEgMjAxNSBKYWt1YiBEb3LF iMOhayA8amRvcm5ha0ByZWRoYXQuY29tPiAtIDUuNi4yNS0xCi0tIFVwZGF0ZSB0byA1LjYuMjUK LQotKiBXZWQgSnVuIDE3IDIwMTUgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdA bGlzdHMuZmVkb3JhcHJvamVjdC5vcmc+IC0gNS42LjI0LTQKLS0gUmVidWlsdCBmb3IgaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yM19NYXNzX1JlYnVpbGQKLQotKiBUaHUg QXByIDIzIDIwMTUgQmpvcm4gTXVuY2ggPGJqb3JuLm11bmNoQG9yYWNsZS5jb20+IC0gNS42LjI0 LTMKLS0gZ2NjNSBtYWtlcyBnY2M0OS1hYXJjaDY0IHBhdGNoIG9ic29sZXRlIChhbmQgd3Jvbmcp Ci0KLSogRnJpIEFwciAxMCAyMDE1IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1 LjYuMjQtMgotLSBGaXggZm9yIGJpZyBpbnRlZ2VycyBvbiBnY2M1Ci0KLSogVGh1IEFwciAwOSAy MDE1IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1LjYuMjQtMQotLSBVcGRhdGUg dG8gNS42LjI0Ci0KLSogVHVlIE1hciAwMyAyMDE1IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0 LmNvbT4gLSA1LjYuMjMtNAotLSBEbyBub3QgdXNlIHNjbCBwcmVmaXggbW9yZSB0aGFuIG9uY2Ug aW4gcGF0aHMKLSAgQmFzZWQgb24gaHR0cHM6Ly93d3cucmVkaGF0LmNvbS9hcmNoaXZlcy9zY2xv cmcvMjAxNS1GZWJydWFyeS9tc2cwMDAzOC5odG1sCi0tIENoZWNrIHBlcm1pc3Npb25zIHdoZW4g c3RhcnRpbmcgc2VydmljZSBvbiBSSEVMLTYKLSAgUmVzb2x2ZXM6ICMxMTk0Njk5Ci0tIFdhaXQg Zm9yIGRhZW1vbiBlbmRzCi0gIFJlbGF0ZWQ6ICMxMDcyOTU4Ci0KLSogTW9uIEZlYiAyMyAyMDE1 IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1LjYuMjMtMwotLSBFeHBhbmQgcGF0 aHMgaW4gcGVybCBzY3JpcHRzIGluIG15c3FsLXRlc3QKLS0gVXNlIGNvcnJlY3QgcGF0aCBpbiBp bnN0YWxsX2RiIHNjcmlwdCB3YXJuaW5nCi0tIFVzZSAtLW5vLWRlZmF1bHRzIHdoZW4gY2hlY2tp bmcgc2VydmVyIHN0YXR1cyBiZWZvcmUgc3RhcnRpbmcKLQotKiBUaHUgSmFuIDI5IDIwMTUgQmpv cm4gTXVuY2ggPGJqb3JuLm11bmNoQG9yYWNsZS5jb20+IC0gNS42LjIzLTEKLS0gVXBkYXRlIHRv IE15U1FMIDUuNi4yMywgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHBzOi8v ZGV2Lm15c3FsLmNvbS9kb2MvcmVsbm90ZXMvbXlzcWwvNS42L2VuL25ld3MtNS02LTIzLmh0bWwK LS0gRXhwaXJlZCBjZXJ0cyBwYXRjaCBub3cgb2Jzb2xldGUKLS0gRml4ZWQgY2hhbmdlbG9nCi0t IFJlZnJlc2hlZCBmaWxlIGNvbnRlbnRzIHBhdGNoCi0tIE1hbiBwYWdlcyBmaXhlZCB1cHN0cmVh bQotLSBGaXggdHlwbyBpbiBzZXJ2ZXIuY25mLmluCi0KLSogTW9uIEphbiAyNiAyMDE1IEhvbnph IEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1LjYuMjItNgotLSBEbyBub3Qgb3duIC92YXIv bG9nCi0KLSogU3VuIEphbiAyNSAyMDE1IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4g LSA1LjYuMjItNQotLSBVc2UgY29ycmVjdCBkaXIgZm9yIGNvbmZpZyBmaWxlcwotCi0qIFNhdCBK YW4gMjQgMjAxNSBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IC0gNS42LjIyLTQKLS0g TW92ZSBzZXJ2ZXIgc2V0dGluZ3MgdG8gcmVuYW1lZCBjb25maWcgZmlsZSB1bmRlciBteS5jbmYu ZCBkaXIKLQotKiBTYXQgSmFuIDI0IDIwMTUgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29t PiAtIDUuNi4yMi0zCi0tIEZpeCBwYXRoIGZvciBzeXNjb25maWcgZmlsZQotICBGaWx0ZXIgcHJv dmlkZXMgaW4gZWw2IHByb3Blcmx5Ci0gIEZpeCBpbml0c2NyaXB0IGZpbGUgbG9jYXRpb24KLQot KiBNb24gSmFuIDEyIDIwMTUgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiAtIDUuNi4y Mi0yCi0tIEFkZCBjb25maWd1cmF0aW9uIGZpbGUgZm9yIHNlcnZlcgotCi0qIFdlZCBEZWMgIDMg MjAxNCBKYWt1YiBEb3LFiMOhayA8amRvcm5ha0ByZWRoYXQuY29tPiAtIDUuNi4yMi0xCi0tIFVw ZGF0ZSB0byBNeVNRTCA1LjYuMjIKLQotKiBXZWQgT2N0IDA4IDIwMTQgQmpvcm4gTXVuY2ggPGJq b3JuLm11bmNoQG9yYWNsZS5jb20+IC0gNS42LjIxLTUKLS0gRml4IHJoYnogIzExNDk5ODYKLQot KiBXZWQgT2N0IDAxIDIwMTQgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiAtIDUuNi4y MS00Ci0tIEFkZCBiY29uZF93aXRob3V0IG15c3FsX25hbWVzCi0KLSogTW9uIFNlcCAyOSAyMDE0 IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gLSA1LjYuMjEtMwotLSBDaGVjayB1cGdy YWRlIHNjcmlwdCBhZGRlZCB0byB3YXJuIGFib3V0IG5lZWQgZm9yIG15c3FsX3VwZ3JhZGUKLS0g TW92ZSBteXNxbF9wbHVnaW4gaW50byBiYXNlIGFuZCBlcnJtc2ctdXRmOC50eHQgaW50byAtZXJy bXNnIHRvIGNvcnJlc3BvbmQKLSAgd2l0aCBNYXJpYURCIHVwc3RyZWFtIHBhY2thZ2VzCi0tIEFk ZCB3aXRoX2RlYnVnIG9wdGlvbgotCi0qIFRodSBTZXAgMjUgMjAxNCBCam9ybiBNdW5jaCA8Ympv cm4ubXVuY2hAb3JhY2xlLmNvbT4gLSA1LjYuMjEtMgotLSBVc2luZyAlJWNtYWtlIG1hY3JvIGJy ZWFrIHNvbWUgdGVzdHMsIHJldmVydGVkCi0tIFVud2FudGVkIGR0cmFjZSBkZXAgZml4ZWQgdXBz dHJlYW0KLQotKiBXZWQgU2VwIDI0IDIwMTQgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29t PiAtIDUuNi4yMC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjYuMjEsIGZvciB2YXJpb3VzIGZpeGVz IGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVsbm90ZXMvbXlzcWwv NS42L2VuL25ld3MtNS02LTIxLmh0bWwKLQotKiBUaHUgU2VwIDA0IDIwMTQgSG9uemEgSG9yYWsg PGhob3Jha0ByZWRoYXQuY29tPiAtIDUuNi4yMC01Ci0tIEZpeCBwYXRocyBpbiBteXNxbF9pbnN0 YWxsX2RiIHNjcmlwdAotICBSZWxhdGVkOiAjMTEzNDMyOAotLSBVc2UgJSVjbWFrZSBtYWNybwot LSBJbnN0YWxsIHN5c3RlbWQgc2VydmljZSBmaWxlIG9uIFJIRUwtNysKLSAgU2VydmVyIHJlcXVp cmVzIGFueSBteXNxbCBwYWNrYWdlLCBzbyBpdCBzaG91bGQgYmUgZmluZSB3aXRoIG9sZGVyIGNs aWVudAotCi0qIFNhdCBBdWcgMTYgMjAxNCBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVs LWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSA1LjYuMjAtNAotLSBSZWJ1aWx0IGZvciBo dHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzIxXzIyX01hc3NfUmVidWlsZAot Ci0qIFR1ZSBBdWcgMTIgMjAxNCBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IC0gNS42 LjIwLTMKLS0gSW50cm9kdWNlIC1jb25maWcgc3VicGFja2FnZSBhbmQgc2hpcCBiYXNlIGNvbmZp ZyBmaWxlcyBoZXJlCi0KLSogVHVlIEF1ZyAwNSAyMDE0IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVk aGF0LmNvbT4gLSA1LjYuMjAtMgotLSBBZG9wdCBjaGFuZ2VzIGZyb20gbWFyaWFkYiB0byBzeW5j IHNwZWMgZmlsZXMKLQotKiBUaHUgSnVsIDMxIDIwMTQgQmpvcm4gTXVuY2ggPGJqb3JuLm11bmNo QG9yYWNsZS5jb20+IC0gNS42LjIwLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNi4yMCwgZm9yIHZh cmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHBzOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVs bm90ZXMvbXlzcWwvNS42L2VuL25ld3MtNS02LTIwLmh0bWwKLS0gUmViYXNlIGluc3RhbGwgYW5k IHBsdWdpbmVycm1zZyBwYXRjaAotLSBEcm9wIGRvczJ1bml4IGZyb20gYnVpbGRyZXEsIGZpbGVz IGZpeGVkIHVwc3RyZWFtCi0tIE5vIG5lZWQgdG8gYWRkIC1PMywgaXQncyBkZWZhdWx0Ci0tIExE RkxBR1MgaXMgcGFzc2VkIGJ5IGNtYWtlIG9wdGlvbiwgbm90IGZyb20gZW52aXJvbm1lbnQKLS0g VXNpbmcgX19yZXF1aXJlc19leGNsdWRlIGluIGNvbmRpdGlvbmFsIGRvbid0IHNlZW1zIHRvIHdv cmssIHN3YXAKLSAgdG8gZGlzdCBtYWNyb3MKLS0gQXZvaWQgdW53YW50ZWQgZHRyYWNlIGRlcAot LSBGaXggbXlzcWwuaW5pdCBhbmQgbXlzcWwtcHJlcGFyZS1kYi1kaXIKLS0gTG9nZmlsZSBuYW1l IG11c3QgbWF0Y2ggdmFsdWUgZnJvbSAvZXRjL215LmNuZiAoYW5kIGJlIGtub3duCi0gIGJ5IFNF TGludXggcG9saWN5KQotCi0qIFR1ZSBKdWwgMjIgMjAxNCBIb256YSBIb3JhayA8aGhvcmFrQHJl ZGhhdC5jb20+IC0gNS42LjE5LTUKLS0gSGFyZGNvZGVkIHBhdGhzIHJlbW92ZWQgdG8gd29yayBm aW5lIGluIGNocm9vdAotLSBTcGVjIHJld3JpdGUgdG8gYmUgbW9yZSBzaW1pbGFyIHRvIG90ZXJo IE15U1FMIGltcGxlbWVudGF0aW9ucwotLSBJbmNsdWRlIFN5c1YgaW5pdCBzY3JpcHQgaWYgYnVp bHQgb24gb2xkZXIgc3lzdGVtCi0tIEFkZCBwb3NzaWJpbGl0eSB0byBub3Qgc2hpcCBzb21lIHN1 Yi1wYWNrYWdlcwotLSBQb3J0IHNjcmlwdHMgZm9yIHN5c3RlbWQgdW5pdCBmcm9tIE1hcmlhREIK LQotKiBNb24gSnVsIDIxIDIwMTQgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiAtIDUu Ni4xOS00Ci0tIFBvcnQgc29tZSBsYXRlc3QgY2hhbmdlcyBmcm9tIE1hcmlhREIgcGFja2FnZSB0 byBzeW5jIHRob3NlIHBhY2thZ2VzCi0tIEVycm9yIG1lc3NhZ2VzIG5vdyBwcm92aWRlZCBieSBh IHNlcGFyYXRlIHBhY2thZ2UgKHRoYW5rcyBBbGV4YW5kZXIgQmFya292KQotCi0qIEZyaSBKdW4g MjcgMjAxNCBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IC0gNS42LjE5LTMKLS0gQWRk IG15c3FsLWNvbXBhdC1zZXJ2ZXIgc3ltYm9sLCBjb21tb24gc3ltYm9sIGZvciBhcmJpdHJhcnkg TXlTUUwKLSAgaW1wbGVtZW50YXRpb24KLS0gUmVxdWlyZSAvZXRjL215LmNuZiBpbnN0ZWFkIG9m IHNoaXBwaW5nIGl0Ci0tIFNlcnZlciByZXF1aXJlcyBhbnkgY29tcGF0aWJsZSBteXNxbC1jb21w YXQtY2xpZW50IHBhY2thZ2UKLQotKiBUaHUgSnVuIDEyIDIwMTQgQmpvcm4gTXVuY2ggPGJqb3Ju Lm11bmNoQG9yYWNsZS5jb20+IC0gNS42LjE5LTIKLS0gRml4IGJ1aWxkIG9uIGFhcmNoNjQKLS0g UmViYXNlIGNpcGhlcnNwZWMgcGF0Y2gKLQotKiBXZWQgSnVuIDExIDIwMTQgQmpvcm4gTXVuY2gg PGJqb3JuLm11bmNoQG9yYWNsZS5jb20+IC0gNS42LjE5LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUu Ni4xOSwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHBzOi8vZGV2Lm15c3Fs LmNvbS9kb2MvcmVsbm90ZXMvbXlzcWwvNS42L2VuL25ld3MtNS02LTE5Lmh0bWwKLS0gb3V0Zmls ZV9sb2FkZGF0YSByZXNvbHZlZCBvbiBhbGwgYXJjaHMKLS0gU29sYXJpcyBmaWxlcyBub3QgaW5z dGFsbGVkLCBubyBuZWVkIHRvIHJlbW92ZQotLSBTaW1wbGlmeSBtdWx0aWxpYiBpbnN0YWxsCi0t IFVzZSBpbnN0YWxsJ3MgLUQgb3B0aW9uIHNvbWUgcGxhY2VzCi0tIEFkZCBleHBsaWNpdCBjb25m bGljdCB3aXRoIG1hcmlhZGItZ2FsZXJhLXNlcnZlcgotCi0qIFNhdCBKdW4gMDcgMjAxNCBGZWRv cmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4g LSA1LjYuMTctMwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kv RmVkb3JhXzIxX01hc3NfUmVidWlsZAotCi0qIEZyaSBBcHIgMTggMjAxNCBCam9ybiBNdW5jaCA8 Ympvcm4ubXVuY2hAb3JhY2xlLmNvbT4gNS42LjE3LTIKLS0gRml4IG11bHRpcGxlIG10ciBzZXNz aW9ucwotCi0qIEZyaSBBcHIgMDQgMjAxNCBCam9ybiBNdW5jaCA8Ympvcm4ubXVuY2hAb3JhY2xl LmNvbT4gNS42LjE3LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNi4xNywgZm9yIHZhcmlvdXMgZml4 ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHBzOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVsbm90ZXMvbXlz cWwvNS42L2VuL25ld3MtNS02LTE3Lmh0bWwKLS0gbGlibXlzcWxkIGJ1aWx0IGFzIHNoYXJlZCBs aWIgbm93IHN1cHBvcnRlZCB1cHN0cmVhbQotLSBSZW1vdmUgcGF0Y2hlcyBub3cgdXBzdHJlYW06 IHRydW5jYXRlLWZpbGUsIHJoYnoxMDU5NTQ1LCBzc2x0ZXN0Ci0gIGFuZCByZWdleC13ZXJyb3IK LS0gVXNlIG1vcmUgc3RhbmRhcmQgKGFuZCB0ZXN0ZWQpIGJ1aWxkIGZsYWdzLCB3aGlsZSBzdGls bCByZXNwZWN0Ci0gIG9wdGZsYWdzIGFuZCBoYXJkZW5lZF9idWlsZAotLSBsaWJteXNxbGNsaWVu dF9yKiBzeW1saW5rcyBhcmUgZml4ZWQgdXBzdHJlYW0KLS0gUmVtb3ZlIHN5c3YgdG8gc3lzdGVt ZCBsb2dpYwotLSBSZXdvcmsgc2tpcHBpbmcgb2YgYXJjaCBzcGVjaWZpYyB0ZXN0cwotLSBNdWx0 aXBsZSBtdHIgc2Vzc2lvbnMgYXJlIHN1cHBvcnRlZCBieSBkZWZhdWx0Ci0KLSogTW9uIEZlYiAg MyAyMDE0IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS42LjE2LTIKLS0gUmVidWls ZCAtbWFuLXBhZ2VzLnBhdGNoIHRvIGFwcGx5IHNtb290aGx5Ci0KLSogRnJpIEphbiAzMSAyMDE0 IEJqb3JuIE11bmNoIDxiam9ybi5tdW5jaEBvcmFjbGUuY29tPiA1LjYuMTYtMQotLSBVcGRhdGUg dG8gTXlTUUwgNS42LjE2LCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cHM6 Ly9kZXYubXlzcWwuY29tL2RvYy9yZWxub3Rlcy9teXNxbC81LjYvZW4vbmV3cy01LTYtMTYuaHRt bAotLSBQYXRjaGVzIG5vdyB1cHN0cmVhbTogdG1wZGlyLCBjdmUtMjAxMy0xODYxLCBjb3ZzY2Fu LXNpZ25leHByLAotICBjb3ZzY2FuLXN0cm92ZXJmbG93Ci0tIEZpeGVkIHVwc3RyZWFtOiBpbm5v ZGJ3YXJuCi0tIGxkY29uZmlnIG5lZWRlZCBpbiBlbWJlZGRlZCBzdWJwYWNrYWdlCi0tIFJlbW92 ZSB1bnVzZWQgZ2VuZXJhdGUtdGFyYmFsbC5zaCBmcm9tIHRyZWUKLS0gUmVkaWZmIG15c3FsLWlu c3RhbGwgcGF0Y2gKLS0gTWFrZSBzeW12ZXJzIDE4IGRlZmF1bHQsIHByb3ZpZGUgc3ltdmVycyAx NiBmb3IgYmFja3dhcmQgY29tcGF0Ci0gIChieiAjMTA0NTAxMykKLS0gTWFuIHBhZ2UgcGF0Y2gg ZGlzYWJsZWQgZHVlIHRvbyBtYW55IGNvbmZsaWN0cwotLSBNZW1jYWNoZWQgYnVpbGQgcGF0Y2hl ZCB0byBub3QgcmVtb3ZlIC1XZXJyb3I9PHNvbWV0aGluZz4gaW4gQ0ZMQUdTCi0KLSogVGh1IEph biAzMCAyMDE0IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS42LjE1LTQKLSAgRml4 IGZvciBDVkUtMjAxNC0wMDAxCi0gIFJlc29sdmVzOiAjMTA1OTU0NQotLSBEb24ndCB0ZXN0IEVE SC1SU0EtREVTLUNCQy1TSEEgY2lwaGVyLCBpdCBzZWVtcyB0byBiZSByZW1vdmVkIGZyb20gb3Bl bnNzbAotICB3aGljaCBub3cgbWFrZXMgbWFyaWFkYi9teXNxbCBGVEJGUyBiZWNhdXNlIG9wZW5z c2xfMSB0ZXN0IGZhaWxzCi0gIFJlbGF0ZWQ6ICMxMDQ0NTY1Ci0KLSogRnJpIEphbiAyNCAyMDE0 IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS42LjE1LTMKLS0gRGlzYWJsZSB0ZXN0 cyBmb3IgcHBjKDY0KSBhbmQgczM5MCh4KToKLSAgaW5ub2RiLmlubm9kYl9jdHlwZV9sZG1sIG1h aW4uY3R5cGVfbGRtbCBtYWluLnBzX2RkbCBtYWluLnBzX2RkbDEKLSAgUmVsYXRlZDogIzEwNTY5 NzIKLQotKiBNb24gRGVjIDE2IDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1 LjYuMTUtMgotLSBTb21lIHNwZWMgZmlsZSBjbGVhbi11cCBiYXNlZCBvbiBCam9ybiBNdW5jaCdz IHN1Z2dlc3Rpb25zCi0tIEVuYWJsZSBJbm5vREIgTWVtY2FjaGVkIHBsdWdpbgotCi0qIE1vbiBE ZWMgIDkgMjAxMyBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IDUuNi4xNS0xCi0tIFVw ZGF0ZSB0byBNeVNRTCA1LjYuMTUsIGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBo dHRwczovL2Rldi5teXNxbC5jb20vZG9jL3JlbG5vdGVzL215c3FsLzUuNi9lbi9uZXdzLTUtNi0x NS5odG1sCi0KLSogRnJpIE9jdCAxMSAyMDEzIEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNv bT4gNS42LjE0LTIKLS0gRml4IG15LmNuZiB0byBub3QgY29uZmxpY3Qgd2l0aCBtYXJpYWRiCi0g IFJlc29sdmVzOiAjMTAwMzExNQotCi0qIFdlZCBPY3QgIDkgMjAxMyBIb256YSBIb3JhayA8aGhv cmFrQHJlZGhhdC5jb20+IDUuNi4xNC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjYuMTQsIGZvciB2 YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwczovL2Rldi5teXNxbC5jb20vZG9jL3Jl bG5vdGVzL215c3FsLzUuNi9lbi9uZXdzLTUtNi0xNC5odG1sCi0tIEluY29ycG9yYXRlIGNoYW5n ZXMgZG9uZSBieSBCam9ybiBNdW5jaCA8Ympvcm4ubXVuY2hAb3JhY2xlLmNvbT4KLQotKiBNb24g U2VwICAyIDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUuMzMtMgotLSBF bmhhbmNlZCBteS5jbmYgdG8gYmUgdGhlIHNhbWUgYXMgaW4gbWFyaWFkYgotICBSZXNvbHZlczog IzEwMDMxMTUKLQotKiBUdWUgQXVnIDIwIDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQu Y29tPiA1LjUuMzMtMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjMzLCBmb3IgdmFyaW91cyBmaXhl cyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlbG5vdGVzL215c3Fs LzUuNS9lbi9uZXdzLTUtNS0zMy5odG1sCi0KLSogVHVlIEF1ZyAyMCAyMDEzIEhvbnphIEhvcmFr IDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMyLTEyCi0tIEZpeCBtdWx0aWxpYiBoZWFkZXIgbG9j YXRpb24gZm9yIGFybQotCi0qIFNhdCBBdWcgMDMgMjAxMyBQZXRyIFBpc2FyIDxwcGlzYXJAcmVk aGF0LmNvbT4gLSA1LjUuMzItMTEKLS0gUGVybCA1LjE4IHJlYnVpbGQKLQotKiBGcmkgSnVsIDI2 IDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUuMzItMTAKLS0gQ29weSBz b21lIGdlbmVyYXRlZCBmaWxlcyBpbiBvcmRlciBmaW5kLWRlYnVnaW5mby5zaCBmaW5kcyB0aGVt Ci0gIFJlbGF0ZWQ6ICM3MjkwNDAKLS0gRml4IHN5c3RlbWQgYW5kIHBlcmwgcmVxdWlyZW1lbnRz Ci0KLSogV2VkIEp1bCAxNyAyMDEzIFBldHIgUGlzYXIgPHBwaXNhckByZWRoYXQuY29tPiAtIDUu NS4zMi05Ci0tIFBlcmwgNS4xOCByZWJ1aWxkCi0KLSogTW9uIEp1bCAxNSAyMDEzIEhvbnphIEhv cmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMyLTgKLS0gUmV2ZXJ0IHBhdGggY2hhbmdlIHRv IGxkY29uZmlnLCBVc3JNb3ZlIGlzIG5vdCBjb21wbGV0ZSB5ZXQKLQotKiBXZWQgSnVsIDEwIDIw MTMgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUuMzItNwotLSBBcm0gc3VwcG9y dCBmb3IgbXVsdGlsaWIgaGFja3MKLQotKiBUdWUgSnVsICA5IDIwMTMgSG9uemEgSG9yYWsgPGho b3Jha0ByZWRoYXQuY29tPiA1LjUuMzItNgotLSBVc2UgcHJvcGVyIHBhdGggdG8gbGRjb25maWcK LS0gVXNlIHh6IGluc3RlYWQgb2YgZ3ppcAotICBSZXNvbHZlczogIzk4MjM4NwotCi0qIE1vbiBK dWwgIDEgMjAxMyBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IDUuNS4zMi01Ci0tIEZp eCBtaXNsZWFkaW5nIGVycm9yIG1lc3NhZ2Ugd2hlbiB1bmluc3RhbGxpbmcgYnVpbHQtaW4gcGx1 Z2lucwotICBSZWxhdGVkOiAjOTY2NjQ1Ci0KLSogVGh1IEp1biAyNyAyMDEzIEhvbnphIEhvcmFr IDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMyLTQKLS0gUmVtb3ZlIGV4dGVybmFsIG1hbiBwYWdl cywgdXBzdHJlYW0gZml4ZWQgbWFuIHBhZ2VzIGxpY2Vuc2UKLS0gQXBwbHkgZml4ZXMgZm91bmQg YnkgQ292ZXJpdHkgc3RhdGljIGFuYWx5c2lzIHRvb2wKLQotKiBGcmkgSnVuIDE0IDIwMTMgSG9u emEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUuMzItMwotLSBVc2UgbWFuIHBhZ2VzIGZy b20gNS41LjMwLCBiZWNhdXNlIHRoZWlyIGxpY2Vuc2UgZG8gbm90Ci0gIGFsbG93IHVzIHRvIHNo aXAgdGhlbSBzaW5jZSA1LjUuMzEKLQotKiBGcmkgSnVuICA3IDIwMTMgSG9uemEgSG9yYWsgPGho b3Jha0ByZWRoYXQuY29tPiA1LjUuMzItMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjMyLCBmb3Ig dmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3Jl bG5vdGVzL215c3FsLzUuNS9lbi9uZXdzLTUtNS0zMi5odG1sCi0KLSogTW9uIEp1biAgMyAyMDEz IEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMxLTcKLS0gVXNlIC92YXIvdG1w IGFzIGRlZmF1bHQgdG1wZGlyIHRvIHByZXZlbnQgcG90ZW50aWFsIGlzc3VlcwotICBSZXNvbHZl czogIzkwNTYzNQotLSBGaXggdGVzdCBzdWl0ZSByZXF1aXJlbWVudHMKLS0gRml4IGZvciBDVkUt MjAxMy0xODYxIGJhY2twb3J0ZWQgZnJvbSBNYXJpYURCCi0gIFJlc29sdmVzOiAjOTIxODM2Ci0K LSogV2VkIE1heSAyOSAyMDEzIEphbiBTdGFuZWsgPGpzdGFuZWtAcmVkaGF0LmNvbT4gNS41LjMx LTYKLS0gQWRkZWQgbWlzc2luZyBjb21tYW5kLWxpbmUgb3B0aW9ucyB0byBtYW4tcGFnZXMgKCM5 NDg5MzApCi0KLSogVHVlIEFwciAzMCAyMDEzIEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNv bT4gNS41LjMxLTUKLS0gUmVtb3ZlIG15c3FsIHByb3ZpZGVzIGZyb20gZGV2ZWwgc3ViLXBhY2th Z2VzIHRvIG5vdCBidWlsZCBhZ2FpbnN0Ci0gIGNvbW11bml0eS1teXNxbCBpZiBteXNxbC1kZXZl bCBpcyBzcGVjaWZpZWQKLQotKiBGcmkgQXByIDI2IDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0By ZWRoYXQuY29tPiA1LjUuMzEtNAotLSBGaXggYnVpbGRpbmcgd2l0aCByZWxybyBhbmQgUElFCi0K LSogVGh1IEFwciAyNSAyMDEzIEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMx LTMKLS0gRml4IHBhdGhzIGluIC1wbHVnaW4tdGVzdCBwYXRjaAotCi0qIE1vbiBBcHIgMjIgMjAx MyBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IDUuNS4zMS0yCi0tIEJ1aWxkIHdpdGgg X2hhcmRlbmVkX2J1aWxkCi0tIEZpeCBzb21lIHBhdGhzIGFuZCByZXF1aXJlIHBlcmwoRW52KSwg d2hpY2ggaXMgbmVlZGVkIGJ5IHRlc3RzCi0KLSogRnJpIEFwciAxOSAyMDEzIEhvbnphIEhvcmFr IDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMxLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNS4zMSwg Zm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29tL2Rv Yy9yZWxub3Rlcy9teXNxbC81LjUvZW4vbmV3cy01LTUtMzEuaHRtbAotCi0qIFdlZCBNYXIgMjAg MjAxMyBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IDUuNS4zMC01Ci0tIFJlbmFtaW5n IHBhY2thZ2UgTXlTUUwgdG8gY29tbXVuaXR5LW15c3FsIHRvIGhhbmRsZSBpc3N1ZXMKLSAgaW50 cm9kdWNlZCBieSBjYXNlLWluc2Vuc2l0aXZlIG9wZXJhdGlvbnMgb2YgeXVtIGFuZCBmb3IgcHJv cGVyCi0gIHByaW9yaXRpemluZyBtYXJpYWRiIG92ZXIgY29tbXVuaXR5LW15c3FsCi0KLSogVHVl IE1hciAxMiAyMDEzIEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjMwLTQKLS0g QWxsb3cgc2VydmVyIHRvIGJlIGluc3RhbGxlZCB3aXRob3V0IGNsaWVudCBzaWRlCi0tIFNlcGFy YXRlIC1saWIgYW5kIC1jb21tb24gc3ViLXBhY2thZ2VzCi0tIEZpeCBzb21lIHBhdGggaXNzdWVz IGluIHRlc3RzCi0KLSogTW9uIE1hciAxMSAyMDEzIEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0 LmNvbT4gNS41LjMwLTMKLS0gQWRqdXN0aW5nIG1ham9yIHNvbmFtZSBudW1iZXIgb2YgbGlibXlz cWxjbGllbnQgdG8gYXZvaWQKLSAgbGlicmFyeSBuYW1lIGNvbmZsaWN0cyB3aXRoIG1hcmlhZGIK LQotKiBUdWUgRmViIDEyIDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUu MzAtMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjMwLCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmli ZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlbG5vdGVzL215c3FsLzUuNS9lbi9u ZXdzLTUtNS0zMC5odG1sCi0KLSogVHVlIEZlYiAxMiAyMDEzIEhvbnphIEhvcmFrIDxoaG9yYWtA cmVkaGF0LmNvbT4gNS41LjI5LTMKLS0gVXNlIHJlYWwtIHByZWZpeCBmb3IgY3Jvc3MtcGFja2Fn ZSByZXF1aXJlbWVudHMKLQotKiBNb24gRmViIDExIDIwMTMgSG9uemEgSG9yYWsgPGhob3Jha0By ZWRoYXQuY29tPiA1LjUuMjktMgotLSBQcm92aWRlIG93biBzeW1ib2xzIHdpdGggcmVhbC0gcHJl Zml4IHRvIGRpc3Rpbmd1aXNoIHBhY2thZ2VzIGZyb20gb3RoZXIKLSAgTXlTUUwgaW1wbGVtZW50 YXRpb25zIHVuYW1iaWd1b3VzbHkKLQotKiBXZWQgSmFuICAyIDIwMTMgVG9tIExhbmUgPHRnbEBy ZWRoYXQuY29tPiA1LjUuMjktMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjI5LCBmb3IgdmFyaW91 cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81 LjUvZW4vbmV3cy01LTUtMjkuaHRtbAotLSBGaXggaW5hY2N1cmF0ZSBkZWZhdWx0IGZvciBzb2Nr ZXQgbG9jYXRpb24gaW4gbXlzcWxkLXdhaXQtcmVhZHkKLVJlc29sdmVzOiAjODkwNTM1Ci0KLSog VGh1IERlYyAgNiAyMDEyIEhvbnphIEhvcmFrIDxoaG9yYWtAcmVkaGF0LmNvbT4gNS41LjI4LTMK LS0gUmViYXNlIHBhdGNoZXMgdG8gbm90IGxlYXZlIGJhY2t1cCBmaWxlcyB3aGVuIG5vdCBhcHBs aWVkIHNtb290aGx5Ci0tIFVzZSAtLW5vLWJhY2t1cC1pZi1taXNtYXRjaCB0byBwcmV2ZW50IGlu Y2x1ZGluZyBiYWNrdXAgZmlsZXMKLQotKiBXZWQgRGVjICA1IDIwMTIgVG9tIExhbmUgPHRnbEBy ZWRoYXQuY29tPiA1LjUuMjgtMgotLSBBZGQgcGF0Y2ggZm9yIENWRS0yMDEyLTU2MTEKLVJlc29s dmVzOiAjODgzNjQyCi0tIFdpZGVuIERIIGtleSBsZW5ndGggZnJvbSA1MTIgdG8gMTAyNCBiaXRz IHRvIG1lZXQgbWluaW11bSByZXF1aXJlbWVudHMKLSAgb2YgRklQUyAxNDAtMgotUmVsYXRlZDog Izg3NzEyNAotCi0qIFNhdCBTZXAgMjkgMjAxMiBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUu NS4yOC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjUuMjgsIGZvciB2YXJpb3VzIGZpeGVzIGRlc2Ny aWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuNS9lbi9uZXdzLTUt NS0yOC5odG1sCi0tIENsZWFuIHVwIHBhcnRpYWxseS1jcmVhdGVkIGRhdGFiYXNlIGZpbGVzIHdo ZW4gbXlzcWxfaW5zdGFsbF9kYiBmYWlscwotUmVsYXRlZDogIzgzNTEzMQotLSBIb25vciB1c2Vy IGFuZCBncm91cCBzZXR0aW5ncyBmcm9tIHNlcnZpY2UgZmlsZSBpbiBteXNxbGQtcHJlcGFyZS1k Yi1kaXIKLVJlc29sdmVzOiAjODQwNDMxCi0tIEV4cG9ydCBUSFJfS0VZX215c3lzIGFzIGEgd29y a2Fyb3VuZCBmb3IgaW5hZGVxdWF0ZSB0aHJlYWRpbmcgc3VwcG9ydAotUmVzb2x2ZXM6ICM4NDY2 MDIKLS0gQWRvcHQgbmV3IHN5c3RlbWQgbWFjcm9zIGZvciBzZXJ2ZXIgcGFja2FnZSBpbnN0YWxs L3VuaW5zdGFsbCB0cmlnZ2VycwotUmVzb2x2ZXM6ICM4NTAyMjIKLS0gVXNlIC0tbm8tZGVmYXVs dHMgd2hlbiBpbnZva2luZyBteXNxbGFkbWluIHRvIHdhaXQgZm9yIHRoZSBzZXJ2ZXIgdG8gc3Rh cnQKLVJlbGF0ZWQ6ICM4NTU3MDQKLQotKiBTdW4gQXVnICA1IDIwMTIgVG9tIExhbmUgPHRnbEBy ZWRoYXQuY29tPiA1LjUuMjctMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjI3LCBmb3IgdmFyaW91 cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81 LjUvZW4vbmV3cy01LTUtMjcuaHRtbAotCi0qIEZyaSBKdWwgMjAgMjAxMiBGZWRvcmEgUmVsZWFz ZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSA1LjUuMjVh LTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8x OF9NYXNzX1JlYnVpbGQKLQotKiBGcmkgSnVsICA2IDIwMTIgVG9tIExhbmUgPHRnbEByZWRoYXQu Y29tPiA1LjUuMjVhLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNS4yNWEsIGZvciB2YXJpb3VzIGZp eGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuNS9l bi9uZXdzLTUtNS0yNWEuaHRtbAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUu NS9lbi9uZXdzLTUtNS0yNS5odG1sCi0tIERvbid0IHVzZSBzeXN0ZW1kJ3MgUmVzdGFydCBmZWF0 dXJlOyByZWx5IG9uIG15c3FsZF9zYWZlIGluc3RlYWQKLVJlc29sdmVzOiAjODMyMDI5Ci0KLSog TW9uIEp1biAxMSAyMDEyIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS41LjI0LTEKLS0gVXBk YXRlIHRvIE15U1FMIDUuNS4yNCwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0 dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS41L2VuL25ld3MtNS01LTI0Lmh0bWwKLSAg aW5jbHVkaW5nIHRoZSBmaXggZm9yIENWRS0yMDEyLTIxMjIKLVJlc29sdmVzOiAjODMwNjgwCi0t IFR3ZWFrIGxvZ3JvdGF0ZSBzY3JpcHQgdG8gcHV0IHRoZSByaWdodCBwZXJtaXNzaW9ucyBvbiBt eXNxbGQubG9nCi0tIE1pbm9yIHNwZWNmaWxlIGZpeGVzIGZvciByZWNlbnQgcGFja2FnaW5nIGd1 aWRlbGluZXMgY2hhbmdlcwotCi0qIFNhdCBBcHIgMjggMjAxMiBUb20gTGFuZSA8dGdsQHJlZGhh dC5jb20+IDUuNS4yMy0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjUuMjMsIGZvciB2YXJpb3VzIGZp eGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuNS9l bi9uZXdzLTUtNS0yMy5odG1sCi0KLSogU2F0IE1hciAyNCAyMDEyIFRvbSBMYW5lIDx0Z2xAcmVk aGF0LmNvbT4gNS41LjIyLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNS4yMiwgZm9yIHZhcmlvdXMg Zml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS41 L2VuL25ld3MtNS01LTIyLmh0bWwKLS0gVHVybiBvbiBQcml2YXRlVG1wIGluIHNlcnZpY2UgZmls ZQotUmVzb2x2ZXM6ICM3ODI1MTMKLS0gQ29tbWVudCBvdXQgdGhlIGNvbnRlbnRzIG9mIC9ldGMv bG9ncm90YXRlLmQvbXlzcWxkLCBzbyB0aGF0IG1hbnVhbAotICBhY3Rpb24gaXMgbmVlZGVkIHRv IGVuYWJsZSBsb2cgcm90YXRpb24uICBHaXZlbiB0aGUgbXVsdGlwbGUgd2F5cyBpbgotICB3aGlj aCB0aGUgcm90YXRpb24gc2NyaXB0IGNhbiBmYWlsLCBpdCBzZWVtcyBpbXBydWRlbnQgdG8gdHJ5 IHRvIG1ha2UKLSAgaXQgcnVuIGJ5IGRlZmF1bHQuCi1SZXNvbHZlczogIzc5OTczNQotCi0qIFR1 ZSBNYXIgMjAgMjAxMiBIb256YSBIb3JhayA8aGhvcmFrQHJlZGhhdC5jb20+IDUuNS4yMS0zCi0t IFJldmlzZSBteXNxbF9wbHVnaW4gdGVzdCBwYXRjaCBzbyBpdCBtb3ZlcyBwbHVnaW4gZmlsZXMg dG8KLSAgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5IChiZXR0ZXIgc29sdXRpb24gdG8gIzc4OTUzMCkK LQotKiBUdWUgTWFyIDEzIDIwMTIgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUu MjEtMgotLSBGaXggc3NsLXJlbGF0ZWQgdGVzdHMgdG8gc3BlY2lmeSBleHBlY3RlZCBjaXBoZXIg ZXhwbGljaXRseQotUmVsYXRlZDogIzc4OTYwMAotLSBGaXggc2V2ZXJhbCBzdHJjcHkgY2FsbHMg dG8gY2hlY2sgZGVzdGluYXRpb24gc2l6ZQotCi0qIE1vbiBGZWIgMjcgMjAxMiBUb20gTGFuZSA8 dGdsQHJlZGhhdC5jb20+IDUuNS4yMS0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjUuMjEsIGZvciB2 YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVm bWFuLzUuNS9lbi9uZXdzLTUtNS0yMS5odG1sCi0tIEhhY2sgb3BlbnNzbCByZWdyZXNzaW9uIHRl c3QgdG8gc3RpbGwgd29yayB3aXRoIHJhd2hpZGUncyBvcGVuc3NsCi0tIEZpeCBhc3NvcnRlZCBm YWlsdXJlcyBpbiBwb3N0LWluc3RhbGwgcmVncmVzc2lvbiB0ZXN0cyAobXlzcWwtdGVzdCBSUE0p Ci1SZXNvbHZlczogIzc4OTUzMAotCi0qIEZyaSBGZWIgMTAgMjAxMiBUb20gTGFuZSA8dGdsQHJl ZGhhdC5jb20+IDUuNS4yMC0yCi0tIFJldmlzZSBvdXIgdGVzdC1kaXNhYmxpbmcgbWV0aG9kIHRv IG1ha2UgaXQgcG9zc2libGUgdG8gZGlzYWJsZSB0ZXN0cyBvbiBhCi0gIHBsYXRmb3JtLXNwZWNp ZmljIGJhc2lzLCBhbmQgYWxzbyB0byBnZXQgcmlkIG9mIG15c3FsLWRpc2FibGUtdGVzdC5wYXRj aCwKLSAgd2hpY2ggYnJva2UgaW4ganVzdCBhYm91dCBldmVyeSB1cHN0cmVhbSB1cGRhdGUgKEhv bnphIEhvcmFrKQotLSBEaXNhYmxlIGN5Y2xlLWNvdW50ZXItZGVwZW5kZW50IHJlZ3Jlc3Npb24g dGVzdHMgb24gQVJNLCBzaW5jZSB0aGVyZSBpcwotICBub3QgY3VycmVudGx5IGFueSBzdXBwb3J0 IGZvciB0aGF0IGluIEZlZG9yYSBBUk0ga2VybmVscwotUmVzb2x2ZXM6ICM3NzMxMTYKLS0gQWRk IHNvbWUgY29tbWVudHMgdG8gbXlzcWxkLnNlcnZpY2UgZG9jdW1lbnRpbmcgaG93IHRvIGN1c3Rv bWl6ZSBpdAotUmVzb2x2ZXM6ICM3ODUyNDMKLQotKiBGcmkgSmFuIDI3IDIwMTIgVG9tIExhbmUg PHRnbEByZWRoYXQuY29tPiA1LjUuMjAtMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjIwLCBmb3Ig dmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3Jl Zm1hbi81LjUvZW4vbmV3cy01LTUtMjAuaHRtbAotICBhcyB3ZWxsIGFzIHNlY3VyaXR5IGZpeGVz IGRlc2NyaWJlZCBhdAotICBodHRwOi8vd3d3Lm9yYWNsZS5jb20vdGVjaG5ldHdvcmsvdG9waWNz L3NlY3VyaXR5L2NwdWphbjIwMTItMzY2MzA0Lmh0bWwKLVJlc29sdmVzOiAjNzgzODI4Ci0tIFJl LWluY2x1ZGUgdGhlIG15c3FsZCBsb2dyb3RhdGUgc2NyaXB0LCBub3cgdGhhdCBpdCdzIG5vdCBz byBib2d1cwotUmVzb2x2ZXM6ICM1NDcwMDcKLQotKiBXZWQgSmFuICA0IDIwMTIgVG9tIExhbmUg PHRnbEByZWRoYXQuY29tPiA1LjUuMTktMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjE5LCBmb3Ig dmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3Jl Zm1hbi81LjUvZW4vbmV3cy01LTUtMTkuaHRtbAotCi0qIFN1biBOb3YgMjAgMjAxMSBUb20gTGFu ZSA8dGdsQHJlZGhhdC5jb20+IDUuNS4xOC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjUuMTgsIGZv ciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2Mv cmVmbWFuLzUuNS9lbi9uZXdzLTUtNS0xOC5odG1sCi0KLSogU2F0IE5vdiAxMiAyMDExIFRvbSBM YW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS41LjE3LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNS4xNywg Zm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29tL2Rv Yy9yZWZtYW4vNS41L2VuL25ld3MtNS01LTE3Lmh0bWwKLS0gR2V0IHJpZCBvZiB2ZXJzaW9uLW51 bWJlciBhc3N1bXB0aW9uIGluIHN5c3YtdG8tc3lzdGVtZCBjb252ZXJzaW9uIHRyaWdnZXIKLQot KiBXZWQgTm92IDAyIDIwMTEgSG9uemEgSG9yYWsgPGhob3Jha0ByZWRoYXQuY29tPiA1LjUuMTYt NAotLSBEb24ndCBhc3N1bWUgYWxsIGV0aGVybmV0IGRldmljZXMgYXJlIG5hbWVkIGV0aFgKLVJl c29sdmVzOiAjNjgyMzY1Ci0tIEV4Y2x1ZGUgdXNlciBkZWZpbml0aW9uIGZyb20gbXkuY25mLCB1 c2VyIGlzIGRlZmluZWQgaW4gbXlzcWxkLnNlcnZpY2Ugbm93Ci1SZXNvbHZlczogIzY2MTI2NQot Ci0qIFN1biBPY3QgMTYgMjAxMSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuNS4xNi0zCi0t IEZpeCB1bnBvcnRhYmxlIHVzYWdlIGFzc29jaWF0ZWQgd2l0aCB2YV9saXN0IGFyZ3VtZW50cwot UmVzb2x2ZXM6ICM3NDQ3MDcKLQotKiBTdW4gT2N0IDE2IDIwMTEgVG9tIExhbmUgPHRnbEByZWRo YXQuY29tPiA1LjUuMTYtMgotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjE2LCBmb3IgdmFyaW91cyBm aXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81LjUv ZW4vbmV3cy01LTUtMTYuaHRtbAotCi0qIEZyaSBKdWwgMjkgMjAxMSBUb20gTGFuZSA8dGdsQHJl ZGhhdC5jb20+IDUuNS4xNS0yCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjUuMTUsIGZvciB2YXJpb3Vz IGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUu NS9lbi9uZXdzLTUtNS0xNS5odG1sCi0KLSogV2VkIEp1bCAyNyAyMDExIFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNS41LjE0LTMKLS0gQ29udmVydCB0byBzeXN0ZW1kIHN0YXJ0dXAgc3VwcG9y dCAobm8gc29ja2V0IGFjdGl2YXRpb24sIGZvciBub3cgYW55d2F5KQotUmVsYXRlZDogIzcxNDQy NgotCi0qIFR1ZSBKdWwgMTIgMjAxMSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuNS4xNC0y Ci0tIFJlbW92ZSBtYWtlX3NjcmFtYmxlZF9wYXNzd29yZCBhbmQgbWFrZV9zY3JhbWJsZWRfcGFz c3dvcmRfMzIzIGZyb20gbXlzcWwuaCwKLSAgc2luY2Ugd2UncmUgbm90IGFsbG93aW5nIGNsaWVu dHMgdG8gY2FsbCB0aG9zZSBmdW5jdGlvbnMgYW55d2F5Ci1SZWxhdGVkOiAjNjkwMzQ2Ci0KLSog TW9uIEp1bCAxMSAyMDExIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS41LjE0LTEKLS0gVXBk YXRlIHRvIE15U1FMIDUuNS4xNCwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0 dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS41L2VuL25ld3MtNS01LTE0Lmh0bWwKLQot KiBXZWQgSnVsICA2IDIwMTEgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjUuMTMtMgotLSBS ZW1vdmUgZXJyb25lb3VzbHktaW5jbHVkZWQgRGVmYXVsdC1TdGFydCBsaW5lIGZyb20gTFNCIGlu aXQgYmxvY2sKLVJlc29sdmVzOiAjNzE3MDI0Ci0KLSogVGh1IEp1biAgMiAyMDExIFRvbSBMYW5l IDx0Z2xAcmVkaGF0LmNvbT4gNS41LjEzLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuNS4xMywgZm9y IHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9y ZWZtYW4vNS41L2VuL25ld3MtNS01LTEzLmh0bWwKLQotKiBUdWUgTWF5IDEwIDIwMTEgVG9tIExh bmUgPHRnbEByZWRoYXQuY29tPiA1LjUuMTItMQotLSBVcGRhdGUgdG8gTXlTUUwgNS41LjEyLCBm b3IgdmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9j L3JlZm1hbi81LjUvZW4vbmV3cy01LTUtMTIuaHRtbAotCi0qIFR1ZSBNYXkgMTAgMjAxMSBUb20g TGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuNS4xMC0zCi0tIEFkZCBMU0IgaW5pdCBibG9jayB0byBp bml0c2NyaXB0LCB0byBlbnN1cmUgc2FuZSBvcmRlcmluZyBhdCBzeXN0ZW0gYm9vdAotUmVzb2x2 ZXM6ICM3MDMyMTQKLS0gSW1wcm92ZSBpbml0c2NyaXB0IHN0YXJ0IGFjdGlvbiB0byBub3RpY2Ug d2hlbiBteXNxbGFkbWluIGlzIGZhaWxpbmcKLSAgYmVjYXVzZSBvZiBjb25maWd1cmF0aW9uIHBy b2JsZW1zCi1SZWxhdGVkOiAjNzAzNDc2Ci0tIFJlbW92ZSBleGNsdXNpb24gb2YgImdpcyIgcmVn cmVzc2lvbiB0ZXN0LCBzaW5jZSB1cHN0cmVhbSBidWcgNTk5MDgKLSAgaXMgZml4ZWQgKGZvciBz b21lIHZhbHVlIG9mICJmaXhlZCIpIGFzIG9mIDUuNS4xMC4KLQotKiBXZWQgTWFyIDIzIDIwMTEg VG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjUuMTAtMgotLSBBZGQgbXlfbWFrZV9zY3JhbWJs ZWRfcGFzc3dvcmQgdG8gdGhlIGxpc3Qgb2Ygc3ltYm9scyBleHBvcnRlZCBieQotICBsaWJteXNx bGNsaWVudC5zby4gIE5lZWRlZCBhdCBsZWFzdCBieSBwdXJlLWZ0cGQuCi0KLSogTW9uIE1hciAy MSAyMDExIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS41LjEwLTEKLS0gVXBkYXRlIHRvIE15 U1FMIDUuNS4xMCwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYu bXlzcWwuY29tL2RvYy9yZWZtYW4vNS41L2VuL25ld3MtNS01LTEwLmh0bWwKLSAgTm90ZSB0aGF0 IHRoaXMgaW5jbHVkZXMgYSByYXRoZXIgYmVsYXRlZCBzb25hbWUgdmVyc2lvbiBidW1wIGZvcgot ICBsaWJteXNxbGNsaWVudC5zbywgZnJvbSAuMTYgdG8gLjE4Ci0tIEFkZCB0bXBmaWxlcy5kIGNv bmZpZyBmaWxlIHNvIHRoYXQgL3Zhci9ydW4vbXlzcWxkIGlzIHJlY3JlYXRlZCBhdCBib290Ci0g IChvbmx5IG5lZWRlZCBpbiBGZWRvcmEgMTUgYW5kIGxhdGVyKQotUmVzb2x2ZXM6ICM2NTg5MzgK LQotKiBXZWQgRmViIDE2IDIwMTEgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjUuOS0yCi0t IERpc2FibGUgYSByZWdyZXNzaW9uIHRlc3QgdGhhdCBpcyBub3cgc2hvd2luZyBwbGF0Zm9ybS1k ZXBlbmRlbnQgcmVzdWx0cwotUmVzb2x2ZXM6ICM2NzQyNTMKLQotKiBTYXQgRmViIDEyIDIwMTEg VG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjUuOS0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjUu OSwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29t L2RvYy9yZWZtYW4vNS41L2VuL25ld3MtNS01LTkuaHRtbAotLSBBZGQgJSV7P19pc2F9IHRvIGNy b3NzLXN1YnBhY2thZ2UgUmVxdWlyZXMsIHBlciBsYXRlc3QgcGFja2FnaW5nIGd1aWRlbGluZXMK LQotKiBUdWUgRmViIDA4IDIwMTEgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdA bGlzdHMuZmVkb3JhcHJvamVjdC5vcmc+IC0gNS41LjgtMTAKLS0gUmVidWlsdCBmb3IgaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8xNV9NYXNzX1JlYnVpbGQKLQotKiBGcmkg RmViICA0IDIwMTEgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjUuOC05Ci0tIFN1cHBvcnQg czM5MC9zMzkweCBpbiBwZXJmb3JtYW5jZSBzY2hlbWEncyBjeWNsZS1jb3VudGluZyBmdW5jdGlv bnMKLSAgKG5lZWRlZCB0byBtYWtlIHJlZ3Jlc3Npb24gdGVzdHMgcGFzcyBvbiB0aGVzZSBwbGF0 Zm9ybXMpCi0KLSogVGh1IEZlYiAgMyAyMDExIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS41 LjgtOAotLSBQUEM2NCBmbG9hdGluZy1wb2ludCBkaWZmZXJlbmNlcyBhcmUgbm90IG1hc2tlZCBi eSAtZmZsb2F0LXN0b3JlIGFmdGVyIGFsbCwKLSAgc28gbGV0J3MganVzdCBkaXNhYmxlIGdpcyBy ZWdyZXNzaW9uIHRlc3QgdGlsbCB1cHN0cmVhbSBtYWtlcyBpdCBsZXNzIHBpY2t5Ci1SZXNvbHZl czogIzY3NDI1MwotLSBBZGQgX19wZXJsbGliX3JlcXVpcmVzIHNldHRpbmcgdG8gbWFrZSBycG0g NC45IGRvIHdoYXQgd2UgbmVlZAotCi0qIFdlZCBGZWIgIDIgMjAxMSBUb20gTGFuZSA8dGdsQHJl ZGhhdC5jb20+IDUuNS44LTcKLS0gV29yayBhcm91bmQgc29tZSBwb3J0YWJpbGl0eSBpc3N1ZXMg b24gUFBDNjQKLVJlc29sdmVzOiAjNjc0MjUzCi0KLSogVGh1IEphbiAyMCAyMDExIFRvbSBMYW5l IDx0Z2xAcmVkaGF0LmNvbT4gNS41LjgtNgotLSBSZW1vdmUgbm8tbG9uZ2VyLW5lZWRlZCBzcGVj aWFsIHN3aXRjaGVzIGluIENYWEZMQUdTLCBwZXIgeWVzdGVyZGF5J3MKLSAgZGlzY3Vzc2lvbiBp biBmZWRvcmEtZGV2ZWwgYWJvdXQgLWZleGNlcHRpb25zLgotLSBSZWJ1aWxkIG5lZWRlZCBhbnl3 YXkgdG8gY2hlY2sgY29tcGF0aWJpbGl0eSB3aXRoIGxhdGVzdCBzeXN0ZW10YXAuCi0KLSogVGh1 IEphbiAxMyAyMDExIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS41LjgtNQotLSBGaXggZmFp bHVyZSB0byBob25vciBNWVNRTF9IT01FIGVudmlyb25tZW50IHZhcmlhYmxlCi1SZXNvbHZlczog IzY2OTM2NAotCi0qIFRodSBKYW4gMTMgMjAxMSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUu NS44LTQKLS0gRml4IGNyYXNoIGR1cmluZyBzdGFydHVwIG9mIGVtYmVkZGVkIG15c3FsZCBsaWJy YXJ5Ci1SZXNvbHZlczogIzY2NzM2NQotCi0qIE1vbiBKYW4gIDMgMjAxMSBUb20gTGFuZSA8dGds QHJlZGhhdC5jb20+IDUuNS44LTMKLS0gbXlfcHJpbnRfaGVscCwgbG9hZF9kZWZhdWx0cywgZnJl ZV9kZWZhdWx0cywgYW5kIGhhbmRsZV9vcHRpb25zIGFsbCB0dXJuCi0gIG91dCB0byBiZSBkb2N1 bWVudGVkL3JlY29tbWVuZGVkIGluIFBhdWwgRHVCb2lzJyBNeVNRTCBib29rLCBzbyB3ZSdkIGJl dHRlcgotICBjb25zaWRlciB0aGVtIHBhcnQgb2YgdGhlIGRlLWZhY3RvIEFQSS4KLVJlc29sdmVz OiAjNjY2NzI4Ci0KLSogTW9uIERlYyAyNyAyMDEwIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4g NS41LjgtMgotLSBBZGQgbXlzcWxfY2xpZW50X2Vycm9yc1tdIHRvIHRoZSBzZXQgb2YgZXhwb3J0 ZWQgbGlibXlzcWxjbGllbnQgc3ltYm9sczsKLSAgbmVlZGVkIGJ5IFBIUC4KLQotKiBUaHUgRGVj IDIzIDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjUuOC0xCi0tIFVwZGF0ZSB0byBN eVNRTCA1LjUuOCAobWFqb3IgdmVyc2lvbiBidW1wKS4gIE5vdGUgdGhpcyBpbmNsdWRlcyByZW1v dmFsCi0gIG9mIGxpYm15c3FsY2xpZW50X3Iuc28uCi0tIEFkZCBhIGxpbmtlciB2ZXJzaW9uIHNj cmlwdCB0byBoaWRlIGxpYm15c3FsY2xpZW50IGZ1bmN0aW9ucyB0aGF0IGFyZW4ndAotICBwYXJ0 IG9mIHRoZSBkb2N1bWVudGVkIEFQSS4KLQotKiBNb24gTm92ICAxIDIwMTAgVG9tIExhbmUgPHRn bEByZWRoYXQuY29tPiA1LjEuNTItMQotLSBVcGRhdGUgdG8gTXlTUUwgNS4xLjUyLCBmb3IgdmFy aW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlZm1h bi81LjEvZW4vbmV3cy01LTEtNTIuaHRtbAotUmVzb2x2ZXM6ICM2NDY1NjkKLQotKiBUaHUgT2N0 ICA3IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNTEtMgotLSBSZS1kaXNhYmxl IHRoZSBvdXRmaWxlX2xvYWRkYXRhIHRlc3QsIHBlciByZXBvcnQgZnJvbSBEYW4gSG9yYWsuCi0K LSogV2VkIE9jdCAgNiAyMDEwIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4xLjUxLTEKLS0g VXBkYXRlIHRvIE15U1FMIDUuMS41MSwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0g IGh0dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS4xL2VuL25ld3MtNS0xLTUxLmh0bWwK LQotKiBTYXQgQXVnIDI4IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNTAtMgot LSBJbmNsdWRlIG15X2NvbXBpbGVyLmggaW4gZGlzdHJpYnV0aW9uLCBwZXIgdXBzdHJlYW0gYnVn ICM1NTg0Ni4KLSAgT3RoZXJ3aXNlIFBIUCwgZm9yIGV4YW1wbGUsIHdvbid0IGJ1aWxkLgotCi0q IFNhdCBBdWcgMjggMjAxMCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS41MC0xCi0tIFVw ZGF0ZSB0byBNeVNRTCA1LjEuNTAsIGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBo dHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuMS9lbi9uZXdzLTUtMS01MC5odG1sCi0g IGh0dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS4xL2VuL25ld3MtNS0xLTQ5Lmh0bWwK LQotKiBXZWQgSnVsIDE0IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNDgtMwot LSBGaXggRlRCRlMgd2l0aCBnY2MgNC41LgotUmVsYXRlZDogIzYxNDI5MwotCi0qIFR1ZSBKdWwg MTMgMjAxMCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS40OC0yCi0tIER1cGxpY2F0ZSBD T1BZSU5HIGFuZCBFWENFUFRJT05TLUNMSUVOVCBpbiAtbGlicyBhbmQgLWVtYmVkZGVkIHN1YnBh Y2thZ2VzLAotICB0byBlbnN1cmUgdGhleSBhcmUgYXZhaWxhYmxlIHdoZW4gYW55IHN1YnNldCBv ZiBteXNxbCBSUE1zIGFyZSBpbnN0YWxsZWQsCi0gIHBlciByZXZpc2VkIHBhY2thZ2luZyBndWlk ZWxpbmVzCi0tIEFsbG93IGluaXQgc2NyaXB0J3MgU1RBUlRUSU1FT1VUL1NUT1BUSU1FT1VUIHRv IGJlIG92ZXJyaWRkZW4gZnJvbSBzeXNjb25maWcKLVJlbGF0ZWQ6ICM2MDk3MzQKLQotKiBNb24g SnVuIDIxIDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNDgtMQotLSBVcGRhdGUg dG8gTXlTUUwgNS4xLjQ4LCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDov L2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81LjEvZW4vbmV3cy01LTEtNDguaHRtbAotICBpbmNs dWRpbmcgYSBmaXggZm9yIENWRS0yMDEwLTIwMDgKLVJlbGF0ZWQ6ICM2MTQyMTQKLQotKiBGcmkg SnVuICA0IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNDctMgotLSBBZGQgYmFj ayAicGFydGl0aW9uIiBzdG9yYWdlIGVuZ2luZQotUmVzb2x2ZXM6ICM1OTczOTAKLS0gRml4IGJy b2tlbiAiZmVkZXJhdGVkIiBzdG9yYWdlIGVuZ2luZSBwbHVnaW4KLVJlbGF0ZWQ6ICM1ODcxNzAK LS0gUmVhZCBhbGwgY2VydGlmaWNhdGVzIGluIFNTTCBjZXJ0aWZpY2F0ZSBmaWxlcywgdG8gc3Vw cG9ydCBjaGFpbmVkIGNlcnRzCi1SZWxhdGVkOiAjNTk4NjU2Ci0KLSogTW9uIE1heSAyNCAyMDEw IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4xLjQ3LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUu MS40NywgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwu Y29tL2RvYy9yZWZtYW4vNS4xL2VuL25ld3MtNS0xLTQ3Lmh0bWwKLSAgaW5jbHVkaW5nIGZpeGVz IGZvciBDVkUtMjAxMC0xODQ4LCBDVkUtMjAxMC0xODQ5LCBDVkUtMjAxMC0xODUwCi1SZXNvbHZl czogIzU5Mjg2MgotUmVzb2x2ZXM6ICM1ODM3MTcKLS0gQ3JlYXRlIG15c3FsIGdyb3VwIGV4cGxp Y2l0bHkgaW4gcHJlLXNlcnZlciBzY3JpcHQsIHRvIGVuc3VyZSBjb3JyZWN0IEdJRAotUmVsYXRl ZDogIzU5NDE1NQotCi0qIFNhdCBBcHIgMjQgMjAxMCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+ IDUuMS40Ni0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjEuNDYsIGZvciB2YXJpb3VzIGZpeGVzIGRl c2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuMS9lbi9uZXdz LTUtMS00Ni5odG1sCi0KLSogVGh1IE1hciAyNSAyMDEwIFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNv bT4gNS4xLjQ1LTIKLS0gRml4IG11bHRpcGxlIHByb2JsZW1zIGRlc2NyaWJlZCBpbiB1cHN0cmVh bSBidWcgNTIwMTksIGJlY2F1c2UgcmVncmVzc2lvbgotICB0ZXN0cyBmYWlsIG9uIFBQQyBpZiB3 ZSBkb24ndC4KLQotKiBXZWQgTWFyIDI0IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1 LjEuNDUtMQotLSBVcGRhdGUgdG8gTXlTUUwgNS4xLjQ1LCBmb3IgdmFyaW91cyBmaXhlcyBkZXNj cmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81LjEvZW4vbmV3cy01 LTEtNDUuaHRtbAotCi0qIFN1biBGZWIgMjEgMjAxMCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+ IDUuMS40NC0yCi0tIEFkZCAiT2Jzb2xldGVzOiBteXNxbC1jbHVzdGVyIiB0byBmaXggdXBncmFk ZS1pbi1wbGFjZSBmcm9tIEYtMTIKLS0gQnJpbmcgaW5pdCBzY3JpcHQgaW50byBzb21lIG1vZGlj dW0gb2YgY29tcGxpYW5jZSB3aXRoIEZlZG9yYS9MU0Igc3RhbmRhcmRzCi1SZWxhdGVkOiAjNTU3 NzExCi1SZWxhdGVkOiAjNTYyNzQ5Ci0KLSogU2F0IEZlYiAyMCAyMDEwIFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNS4xLjQ0LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuMS40NCwgZm9yIHZhcmlv dXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4v NS4xL2VuL25ld3MtNS0xLTQ0Lmh0bWwKLS0gUmVtb3ZlIG15c3FsLmluZm8sIHdoaWNoIGlzIG5v dCBmcmVlbHkgcmVkaXN0cmlidXRhYmxlCi1SZXNvbHZlczogIzU2MDE4MQotLSBSZXZlcnQgYnJv a2VuIHVwc3RyZWFtIGZpeCBmb3IgdGhlaXIgYnVnIDQ1MDU4Ci1SZXNvbHZlczogIzU2NjU0Nwot Ci0qIFNhdCBGZWIgMTMgMjAxMCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS40My0yCi0t IFJlbW92ZSBteXNxbC1jbHVzdGVyLCB3aGljaCBpcyBubyBsb25nZXIgc3VwcG9ydGVkIGJ5IHVw c3RyZWFtIGluIHRoaXMKLSAgc291cmNlIGRpc3RyaWJ1dGlvbi4gIElmIHdlIHdhbnQgaXQgd2Un bGwgbmVlZCBhIHNlcGFyYXRlIFNSUE0gZm9yIGl0LgotCi0qIEZyaSBGZWIgMTIgMjAxMCBUb20g TGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS40My0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjEuNDMs IGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9k b2MvcmVmbWFuLzUuMS9lbi9uZXdzLTUtMS00My5odG1sCi0KLSogRnJpIEphbiAyOSAyMDEwIFRv bSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4xLjQyLTcKLS0gQWRkIGJhY2twb3J0ZWQgcGF0Y2gg Zm9yIENWRS0yMDA4LTcyNDcgKHVwc3RyZWFtIGJ1ZyAzOTI3NykKLVJlbGF0ZWQ6ICM1NDM2MTkK LS0gVXNlIG5vbi1leHBpcmVkIGNlcnRpZmljYXRlcyBmb3IgU1NMIHRlc3RpbmcgKHVwc3RyZWFt IGJ1ZyA1MDcwMikKLQotKiBUdWUgSmFuIDI2IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29t PiA1LjEuNDItNgotLSBFbWl0IGV4cGxpY2l0IGVycm9yIG1lc3NhZ2UgaWYgdXNlciB0cmllcyB0 byBidWlsZCBSUE0gYXMgcm9vdAotUmVsYXRlZDogIzU1ODkxNQotCi0qIFdlZCBKYW4gMjAgMjAx MCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS40Mi01Ci0tIENvcnJlY3QgU291cmNlMDog dGFnIGFuZCBjb21tZW50IHRvIHJlZmxlY3QgaG93IHRvIGdldCB0aGUgdGFyYmFsbAotCi0qIEZy aSBKYW4gIDggMjAxMCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS40Mi00Ci0tIERpc2Fi bGUgc3ltYm9saWMgbGlua3MgYnkgZGVmYXVsdCBpbiAvZXRjL215LmNuZgotUmVzb2x2ZXM6ICM1 NTM2NTIKLQotKiBUdWUgSmFuICA1IDIwMTAgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEu NDItMwotLSBSZW1vdmUgc3RhdGljIGxpYnJhcmllcyAoLmEgZmlsZXMpIGZyb20gcGFja2FnZSwg cGVyIHBhY2thZ2luZyBndWlkZWxpbmVzCi0tIENoYW5nZSAlJWRlZmluZSB0byAlJWdsb2JhbCwg cGVyIHBhY2thZ2luZyBndWlkZWxpbmVzCi0KLSogU2F0IEphbiAgMiAyMDEwIFRvbSBMYW5lIDx0 Z2xAcmVkaGF0LmNvbT4gNS4xLjQyLTIKLS0gRGlzYWJsZSBidWlsZGluZyB0aGUgaW5ub2RiIHBs dWdpbjsgaXQgdGlja2xlcyBhc3NvcnRlZCBnY2MgYnVncyBhbmQKLSAgZG9lc24ndCBzZWVtIGVu dGlyZWx5IHJlYWR5IGZvciBwcmltZSB0aW1lIGFueXdheS4KLQotKiBGcmkgSmFuICAxIDIwMTAg VG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNDItMQotLSBVcGRhdGUgdG8gTXlTUUwgNS4x LjQyLCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5j b20vZG9jL3JlZm1hbi81LjEvZW4vbmV3cy01LTEtNDIuaHRtbAotLSBTdGFydCBteXNxbGRfc2Fm ZSB3aXRoIC0tYmFzZWRpcj0vdXNyLCB0byBhdm9pZCB1bndhbnRlZCBTRUxpbnV4IG1lc3NhZ2Vz Ci1SZXNvbHZlczogIzU0NzQ4NQotCi0qIFRodSBEZWMgMTcgMjAwOSBUb20gTGFuZSA8dGdsQHJl ZGhhdC5jb20+IDUuMS40MS0yCi0tIFN0b3Agd2FpdGluZyBkdXJpbmcgInNlcnZpY2UgbXlzcWxk IHN0YXJ0IiBpZiBteXNxbGRfc2FmZSBleGl0cwotUmVzb2x2ZXM6ICM1NDQwOTUKLQotKiBNb24g Tm92IDIzIDIwMDkgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuNDEtMQotLSBVcGRhdGUg dG8gTXlTUUwgNS4xLjQxLCBmb3IgdmFyaW91cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDov L2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81LjEvZW4vbmV3cy01LTEtNDEuaHRtbAotICBpbmNs dWRpbmcgZml4ZXMgZm9yIENWRS0yMDA5LTQwMTkKLVJlbGF0ZWQ6ICM1NDA5MDYKLS0gRG9uJ3Qg c2V0IG9sZF9wYXNzd29yZHM9MTsgd2UgYXJlbid0IGJlaW5nIGJ1Zy1jb21wYXRpYmxlIHdpdGgg My4yMyBhbnltb3JlCi1SZXNvbHZlczogIzU0MDczNQotCi0qIFR1ZSBOb3YgMTAgMjAwOSBUb20g TGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS40MC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjEuNDAs IGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9k b2MvcmVmbWFuLzUuMS9lbi9uZXdzLTUtMS00MC5odG1sCi0tIERvIG5vdCBmb3JjZSB0aGUgLS1s b2ctZXJyb3Igc2V0dGluZyBpbiBteXNxbGQgaW5pdCBzY3JpcHQKLVJlc29sdmVzOiAjNTMzNzM2 Ci0KLSogU2F0IE9jdCAxNyAyMDA5IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4xLjM5LTQK LS0gUmVwbGFjZSBrbHVnZSBmaXggZm9yIG5kYmQgc3BhcmMgY3Jhc2ggd2l0aCBhIHJlYWwgZml4 IChteXNxbCBidWcgNDgxMzIpCi0KLSogVGh1IE9jdCAxNSAyMDA5IFRvbSBMYW5lIDx0Z2xAcmVk aGF0LmNvbT4gNS4xLjM5LTMKLS0gV29yayBhcm91bmQgdHdvIGRpZmZlcmVudCBjb21waWxlciBi dWdzIG9uIHNwYXJjLCBvbmUgYnkgYmFja2luZyBvZmYKLSAgb3B0aW1pemF0aW9uIGZyb20gLU8y IHRvIC1PMSwgYW5kIHRoZSBvdGhlciB3aXRoIGEga2x1Z3kgcGF0Y2gKLVJlbGF0ZWQ6ICM1Mjky OTgsICM1MjkyOTkKLS0gQ2xlYW4gdXAgYm9nb3NpdHkgaW4gbXVsdGlsaWIgc3R1YiBoZWFkZXIg c3VwcG9ydDogaWE2NCBzaG91bGQgbm90IGJlCi0gIGxpc3RlZCAoaXQncyBub3QgbXVsdGlsaWIp LCBzcGFyYyBhbmQgc3BhcmM2NCBzaG91bGQgYmUKLQotKiBXZWQgU2VwIDIzIDIwMDkgVG9tIExh bmUgPHRnbEByZWRoYXQuY29tPiA1LjEuMzktMgotLSBXb3JrIGFyb3VuZCB1cHN0cmVhbSBidWcg NDY4OTUgYnkgZGlzYWJsaW5nIG91dGZpbGVfbG9hZGRhdGEgdGVzdAotCi0qIFR1ZSBTZXAgMjIg MjAwOSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS4zOS0xCi0tIFVwZGF0ZSB0byBNeVNR TCA1LjEuMzksIGZvciB2YXJpb3VzIGZpeGVzIGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15 c3FsLmNvbS9kb2MvcmVmbWFuLzUuMS9lbi9uZXdzLTUtMS0zOS5odG1sCi0KLSogTW9uIEF1ZyAz MSAyMDA5IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4xLjM3LTUKLS0gV29yayBhcm91bmQg dW5wb3J0YWJsZSBhc3N1bXB0aW9ucyBhYm91dCBzdHBjcHkoKTsgcmUtZW5hYmxlIG1haW4ubXlz cWwgdGVzdAotLSBDbGVhbiB1cCBzb21lIG9ic29sZXRlIHBhcmFtZXRlcnMgdG8gdGhlIGNvbmZp Z3VyZSBzY3JpcHQKLQotKiBTYXQgQXVnIDI5IDIwMDkgVG9tIExhbmUgPHRnbEByZWRoYXQuY29t PiA1LjEuMzctNAotLSBSZW1vdmUgb25lIG1pc2d1aWRlZCBwYXRjaDsgdHVybnMgb3V0IEkgd2Fz IGNoYXNpbmcgYSBnbGliYyBidWcKLS0gVGVtcG9yYXJpbHkgZGlzYWJsZSAibWFpbi5teXNxbCIg dGVzdDsgdGhlcmUncyBzb21ldGhpbmcgYnJva2VuIHRoZXJlIHRvbywKLSAgYnV0IHdlIG5lZWQg dG8gZ2V0IG15c3FsIGJ1aWx0IGluIHJhd2hpZGUgZm9yIGRlcGVuZGVuY3kgcmVhc29ucwotCi0q IEZyaSBBdWcgMjEgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAtIDUuMS4zNy0z Ci0tIHJlYnVpbHQgd2l0aCBuZXcgb3BlbnNzbAotCi0qIEZyaSBBdWcgMTQgMjAwOSBUb20gTGFu ZSA8dGdsQHJlZGhhdC5jb20+IDUuMS4zNy0yCi0tIEFkZCBhIGNvdXBsZSBvZiBwYXRjaGVzIHRv IGltcHJvdmUgdGhlIHByb2JhYmlsaXR5IG9mIHRoZSByZWdyZXNzaW9uIHRlc3RzCi0gIGNvbXBs ZXRpbmcgaW4ga29qaSBidWlsZHMKLQotKiBTdW4gQXVnICAyIDIwMDkgVG9tIExhbmUgPHRnbEBy ZWRoYXQuY29tPiA1LjEuMzctMQotLSBVcGRhdGUgdG8gTXlTUUwgNS4xLjM3LCBmb3IgdmFyaW91 cyBmaXhlcyBkZXNjcmliZWQgYXQKLSAgaHR0cDovL2Rldi5teXNxbC5jb20vZG9jL3JlZm1hbi81 LjEvZW4vbmV3cy01LTEtMzcuaHRtbAotCi0qIFNhdCBKdWwgMjUgMjAwOSBGZWRvcmEgUmVsZWFz ZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSA1LjEuMzYt MgotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzEy X01hc3NfUmVidWlsZAotCi0qIEZyaSBKdWwgMTAgMjAwOSBUb20gTGFuZSA8dGdsQHJlZGhhdC5j b20+IDUuMS4zNi0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjEuMzYsIGZvciB2YXJpb3VzIGZpeGVz IGRlc2NyaWJlZCBhdAotICBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLzUuMS9lbi9u ZXdzLTUtMS0zNi5odG1sCi0KLSogU2F0IEp1biAgNiAyMDA5IFRvbSBMYW5lIDx0Z2xAcmVkaGF0 LmNvbT4gNS4xLjM1LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuMS4zNSwgZm9yIHZhcmlvdXMgZml4 ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS4xL2Vu L25ld3MtNS0xLTM1Lmh0bWwKLS0gRW5zdXJlIHRoYXQgL3Zhci9saWIvbXlzcWwgaXMgY3JlYXRl ZCB3aXRoIHRoZSByaWdodCBTRUxpbnV4IGNvbnRleHQKLVJlc29sdmVzOiAjNTAyOTY2Ci0KLSog RnJpIE1heSAxNSAyMDA5IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4xLjM0LTEKLS0gVXBk YXRlIHRvIE15U1FMIDUuMS4zNCwgZm9yIHZhcmlvdXMgZml4ZXMgZGVzY3JpYmVkIGF0Ci0gIGh0 dHA6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vNS4xL2VuL25ld3MtNS0xLTM0Lmh0bWwKLS0g SW5jcmVhc2Ugc3RhcnR1cCB0aW1lb3V0IHBlciBidWcgIzQ3MjIyMgotCi0qIFdlZCBBcHIgMTUg MjAwOSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS4zMy0yCi0tIEluY3JlYXNlIHN0YWNr IHNpemUgb2YgbmRiZCB0aHJlYWRzIGZvciBzYWZldHkncyBzYWtlLgotUmVsYXRlZDogIzQ5NDYz MQotCi0qIFR1ZSBBcHIgIDcgMjAwOSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS4zMy0x Ci0tIFVwZGF0ZSB0byBNeVNRTCA1LjEuMzMuCi0tIERpc2FibGUgdXNlIG9mIHB0aHJlYWRfc2V0 c2NoZWRwYXJhbTsgZG9lc24ndCB3b3JrIHRoZSB3YXkgY29kZSBleHBlY3RzLgotUmVsYXRlZDog IzQ3NzYyNAotCi0qIFdlZCBNYXIgIDQgMjAwOSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUu MS4zMi0xCi0tIFVwZGF0ZSB0byBNeVNRTCA1LjEuMzIuCi0KLSogV2VkIEZlYiAyNSAyMDA5IEZl ZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWwtZW5nQGxpc3RzLmZlZG9yYXByb2plY3Qub3Jn PiAtIDUuMS4zMS0yCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lr aS9GZWRvcmFfMTFfTWFzc19SZWJ1aWxkCi0KLSogRnJpIEZlYiAxMyAyMDA5IFRvbSBMYW5lIDx0 Z2xAcmVkaGF0LmNvbT4gNS4xLjMxLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuMS4zMS4KLQotKiBU aHUgSmFuIDIyIDIwMDkgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjEuMzAtMgotLSBobSwg YXBwYXJlbnRseSAtLXdpdGgtaW5ub2RiIGFuZCAtLXdpdGgtbmRiY2x1c3RlciBhcmUgc3RpbGwg bmVlZGVkCi0gIGV2ZW4gdGhvdWdoIG5vIGxvbmdlciBkb2N1bWVudGVkIC4uLgotCi0qIFRodSBK YW4gMjIgMjAwOSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMS4zMC0xCi0tIFVwZGF0ZSB0 byBNeVNRTCA1LjEuMzAuICBOb3RlIHRoYXQgdGhpcyBpbmNsdWRlcyBhbiBBQkkgYnJlYWsgZm9y Ci0gIGxpYm15c3FsY2xpZW50IChpdCdzIG5vdyBnb3QgLnNvIG1ham9yIHZlcnNpb24gMTYpLgot LSBUaGlzIGFsc28gdXBkYXRlcyBteXNxbCBmb3IgbmV3IG9wZW5zc2wgYnVpbGQKLQotKiBXZWQg T2N0ICAxIDIwMDggVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuNjctMgotLSBCdWlsZCB0 aGUgImVtYmVkZGVkIHNlcnZlciIgbGlicmFyeSwgYW5kIHBhY2thZ2UgaXQgaW4gYSBuZXcgc3Vi LVJQTQotICBteXNxbC1lbWJlZGRlZCwgYWxvbmcgd2l0aCBteXNxbC1lbWJlZGRlZC1kZXZlbCBm b3IgZGV2ZWwgc3VwcG9ydCBmaWxlcy4KLVJlc29sdmVzOiAjMTQ5ODI5Ci0KLSogU2F0IEF1ZyAy MyAyMDA4IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4wLjY3LTEKLS0gVXBkYXRlIHRvIG15 c3FsIHZlcnNpb24gNS4wLjY3Ci0tIE1vdmUgbXlzcWxfY29uZmlnJ3MgbWFuIHBhZ2UgdG8gYmFz ZSBwYWNrYWdlLCBhZ2FpbiAoYXBwYXJlbnRseSBJIHN5bmNlZAotICB0aGF0IGNoYW5nZSB0aGUg d3Jvbmcgd2F5IHdoaWxlIGltcG9ydGluZyBzcGVjZmlsZSBjaGFuZ2VzIGZvciBuZGJjbHVzdGVy KQotCi0qIFN1biBKdWwgMjcgMjAwOCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMC41MWEt MgotLSBFbmFibGUgbmRiY2x1c3RlciBzdXBwb3J0Ci1SZXNvbHZlczogIzE2Mzc1OAotLSBTdXBw cmVzcyBvZGQgY3Jhc2ggbWVzc2FnZXMgZHVyaW5nIHBhY2thZ2UgYnVpbGQsIGNhdXNlZCBieSB0 cnlpbmcgdG8KLSAgYnVpbGQgZGJ1ZyBtYW51YWwgKHdoaWNoIHdlIGRvbid0IGluc3RhbGwgYW55 d2F5KSB3aXRoIGRidWcgZGlzYWJsZWQKLVJlc29sdmVzOiAjNDM3MDUzCi0tIEltcHJvdmUgbXlz cWwuaW5pdCB0byBwYXNzIGNvbmZpZ3VyZWQgZGF0YWRpciB0byBteXNxbF9pbnN0YWxsX2RiLAot ICBhbmQgdG8gZm9yY2UgdXNlcj1teXNxbCBmb3IgYm90aCBteXNxbF9pbnN0YWxsX2RiIGFuZCBt eXNxbGRfc2FmZS4KLVJlbGF0ZWQ6ICM0NTAxNzgKLQotKiBNb24gTWFyICAzIDIwMDggVG9tIExh bmUgPHRnbEByZWRoYXQuY29tPiA1LjAuNTFhLTEKLS0gVXBkYXRlIHRvIG15c3FsIHZlcnNpb24g NS4wLjUxYQotCi0qIE1vbiBNYXIgIDMgMjAwOCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUu MC40NS0xMQotLSBGaXggbXlzcWwtc3RhY2stZ3VhcmQgcGF0Y2ggdG8gd29yayBjb3JyZWN0bHkg b24gSUE2NAotLSBGaXggbXlzcWwuaW5pdCB0byB3YWl0IGNvcnJlY3RseSB3aGVuIHNvY2tldCBp cyBub3QgaW4gZGVmYXVsdCBwbGFjZQotUmVsYXRlZDogIzQzNTQ5NAotCi0qIE1vbiBNYXIgMDMg MjAwOCBEZW5uaXMgR2lsbW9yZSA8ZGVubmlzQGF1c2lsLnVzPiA1LjAuNDUtMTAKLS0gYWRkIHNw YXJjNjQgdG8gNjQgYml0IGFyY2hlcyBmb3IgdGVzdCBzdWl0ZSBjaGVja2luZwotLSBhZGQgc3Bh cmMsIHNwYXJjdjkgYW5kIHNwYXJjNjQgdG8gbXVsdGlsaWIgaGFuZGxpbmcKLQotKiBUaHUgRmVi IDI4IDIwMDggVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuNDUtOQotLSBGaXggdGhlIHN0 YWNrIG92ZXJmbG93IHByb2JsZW0gZW5jb3VudGVyZWQgaW4gSmFudWFyeS4gIEl0IHNlZW1zIHRo ZSByZWFsCi1pc3N1ZSBpcyB0aGF0IHRoZSBidWlsZGZhcm0gbWFjaGluZXMgd2VyZSBtb3ZlZCB0 byBSSEVMNSwgd2hpY2ggdXNlcyA2NEsgbm90Ci00SyBwYWdlcyBvbiBQUEMsIGFuZCBiZWNhdXNl IFJIRUw1IHRha2VzIHRoZSBndWFyZCBhcmVhIG91dCBvZiB0aGUgcmVxdWVzdGVkCi10aHJlYWQg c3RhY2sgc2l6ZSB3ZSBubyBsb25nZXIgaGFkIGVub3VnaCBoZWFkcm9vbS4KLVJlbGF0ZWQ6ICM0 MzUzMzcKLQotKiBUdWUgRmViIDE5IDIwMDggRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJl bC1lbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gNS4wLjQ1LTgKLS0gQXV0b3JlYnVpbGQgZm9yIEdD QyA0LjMKLQotKiBUdWUgSmFuICA4IDIwMDggVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAu NDUtNwotLSBVbmJlbGlldmFibGUgLi4uIHVwc3RyZWFtIHN0aWxsIHRoaW5rcyB0aGF0IGl0J3Mg YSBnb29kIGlkZWEgdG8gaGF2ZSBhCi0gIHJlZ3Jlc3Npb24gdGVzdCB0aGF0IGlzIGd1YXJhbnRl ZWQgdG8gYmVnaW4gZmFpbGluZyBjb21lIEphbnVhcnkgMS4KLS0gLi4uIGFuZCBpdCBzZWVtcyB3 ZSBuZWVkIHRvIHJhaXNlIFNUQUNLX01JTl9TSVpFIGFnYWluIHRvby4KLQotKiBUaHUgRGVjIDEz IDIwMDcgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuNDUtNgotLSBCYWNrLXBvcnQgdXBz dHJlYW0gZml4ZXMgZm9yIENWRS0yMDA3LTU5MjUsIENWRS0yMDA3LTU5NjksIENWRS0yMDA3LTYz MDMuCi1SZWxhdGVkOiAjNDIyMjExCi0KLSogV2VkIERlYyAgNSAyMDA3IFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNS4wLjQ1LTUKLS0gUmVidWlsZCBmb3IgbmV3IG9wZW5zc2wKLQotKiBTYXQg QXVnIDI1IDIwMDcgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuNDUtNAotLSBTZWVtcyB3 ZSBuZWVkIGV4cGxpY2l0IEJ1aWxkUmVxdWlyZXMgb24gZ2F3ayBhbmQgcHJvY3BzIG5vdwotLSBS ZWJ1aWxkIHRvIGZpeCBGZWRvcmEgdG9vbGNoYWluIGlzc3VlcwotCi0qIFN1biBBdWcgMTIgMjAw NyBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMC40NS0zCi0tIFJlY2VudCBwZXJsIGNoYW5n ZXMgaW4gcmF3aGlkZSBtZWFuIHdlIG5lZWQgYSBtb3JlIHNwZWNpZmljIEJ1aWxkUmVxdWlyZXMK LQotKiBUaHUgQXVnICAyIDIwMDcgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuNDUtMgot LSBVcGRhdGUgTGljZW5zZSB0YWcgdG8gbWF0Y2ggY29kZS4KLS0gV29yayBhcm91bmQgcmVjZW50 IEZlZG9yYSBjaGFuZ2UgdGhhdCBtYWtlcyAib3BlbiIgYSBtYWNybyBuYW1lLgotCi0qIFN1biBK dWwgMjIgMjAwNyBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMC40NS0xCi0tIFVwZGF0ZSB0 byBNeVNRTCA1LjAuNDUKLVJlc29sdmVzOiAjMjQ2NTM1Ci0tIE1vdmUgbXlzcWxfY29uZmlnJ3Mg bWFuIHBhZ2UgdG8gYmFzZSBwYWNrYWdlCi1SZXNvbHZlczogIzI0NTc3MAotLSBtb3ZlIG15X3By aW50X2RlZmF1bHRzIHRvIGJhc2UgUlBNLCBmb3IgY29uc2lzdGVuY3kgd2l0aCBTdGFja3MgcGFj a2FnaW5nCi0tIG15c3FsIHVzZXIgaXMgbm8gbG9uZ2VyIGRlbGV0ZWQgYXQgUlBNIHVuaW5zdGFs bAotUmVzb2x2ZXM6ICMyNDE5MTIKLQotKiBUaHUgTWFyIDI5IDIwMDcgVG9tIExhbmUgPHRnbEBy ZWRoYXQuY29tPiA1LjAuMzctMgotLSBVc2UgYSBsZXNzIGhhY2t5IG1ldGhvZCBvZiBnZXR0aW5n IGRlZmF1bHQgdmFsdWVzIGluIGluaXRzY3JpcHQKLVJlbGF0ZWQ6ICMyMzM3NzEsICMxOTQ1OTYK LS0gSW1wcm92ZSBwYWNrYWdpbmcgb2YgbXlzcWwtbGlicyBwZXIgc3VnZ2VzdGlvbnMgZnJvbSBS ZW1pIENvbGxldAotUmVzb2x2ZXM6ICMyMzM3MzEKLS0gVXBkYXRlIGRlZmF1bHQgL2V0Yy9teS5j bmYgKFtteXNxbC5zZXJ2ZXJdIGhhcyBiZWVuIGJvZ3VzIGZvciBhIGxvbmcgdGltZSkKLQotKiBN b24gTWFyIDEyIDIwMDcgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuMzctMQotLSBVcGRh dGUgdG8gTXlTUUwgNS4wLjM3Ci1SZXNvbHZlczogIzIzMTgzOAotLSBQdXQgY2xpZW50IGxpYnJh cnkgaW50byBhIHNlcGFyYXRlIG15c3FsLWxpYnMgUlBNIHRvIHJlZHVjZSBkZXBlbmRlbmNpZXMK LVJlc29sdmVzOiAjMjA1NjMwCi0KLSogRnJpIEZlYiAgOSAyMDA3IFRvbSBMYW5lIDx0Z2xAcmVk aGF0LmNvbT4gNS4wLjMzLTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuMC4zMwotLSBJbnN0YWxsIGJh bmQtYWlkIGZpeCBmb3IgInZpZXciIHJlZ3Jlc3Npb24gdGVzdCBkZXNpZ25lZCB0byBmYWlsIGFm dGVyIDIwMDYKLS0gRG9uJ3QgY2htb2QgLVIgdGhlIGVudGlyZSBkYXRhYmFzZSBkaXJlY3Rvcnkg dHJlZSBvbiBldmVyeSBzdGFydHVwCi1SZWxhdGVkOiAjMjIxMDg1Ci0tIEZpeCB1bnNhZmUgdXNl IG9mIGluc3RhbGwtaW5mbwotUmVzb2x2ZXM6ICMyMjM3MTMKLS0gQ29wZSB3aXRoIG5ldyBhdXRv bWFrZSBpbiBGNwotUmVzb2x2ZXM6ICMyMjQxNzEKLQotKiBUaHUgTm92ICA5IDIwMDYgVG9tIExh bmUgPHRnbEByZWRoYXQuY29tPiA1LjAuMjctMQotLSBVcGRhdGUgdG8gTXlTUUwgNS4wLjI3IChz ZWUgQ1ZFLTIwMDYtNDAzMSwgQ1ZFLTIwMDYtNDIyNiwgQ1ZFLTIwMDYtNDIyNykKLVJlc29sdmVz OiAjMjAyMjQ3LCAjMjAyNjc1LCAjMjAzNDI3LCAjMjAzNDI4LCAjMjAzNDMyLCAjMjAzNDM0LCAj MjA4NjQxCi0tIEZpeCBpbml0IHNjcmlwdCB0byByZXR1cm4gc3RhdHVzIDEgb24gc2VydmVyIHN0 YXJ0IHRpbWVvdXQKLVJlc29sdmVzOiAjMjAzOTEwCi0tIE1vdmUgbXlzcWxkdW1wc2xvdyBmcm9t IGJhc2UgcGFja2FnZSB0byBteXNxbC1zZXJ2ZXIKLVJlc29sdmVzOiAjMTkzNTU5Ci0tIEFkanVz dCBsaW5rIG9wdGlvbnMgZm9yIEJEQiBtb2R1bGUKLVJlc29sdmVzOiAjMTk5MzY4Ci0KLSogV2Vk IEp1bCAxMiAyMDA2IEplc3NlIEtlYXRpbmcgPGprZWF0aW5nQHJlZGhhdC5jb20+IC0gNS4wLjIy LTIuMQotLSByZWJ1aWxkCi0KLSogU2F0IEp1biAxMCAyMDA2IFRvbSBMYW5lIDx0Z2xAcmVkaGF0 LmNvbT4gNS4wLjIyLTIKLS0gV29yayBhcm91bmQgYnJldydzIHRlbmRlbmN5IG5vdCB0byBjbGVh biB1cCBmYWlsZWQgYnVpbGRzIGNvbXBsZXRlbHksCi0gIGJ5IGFkZGluZyBjb2RlIGluIG15c3Fs LXRlc3RpbmcucGF0Y2ggdG8ga2lsbCBsZWZ0b3ZlciBteXNxbCBkYWVtb25zLgotCi0qIFRodSBK dW4gIDggMjAwNiBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMC4yMi0xCi0tIFVwZGF0ZSB0 byBNeVNRTCA1LjAuMjIgKGZpeGVzIENWRS0yMDA2LTI3NTMpCi0tIEluc3RhbGwgdGVtcG9yYXJ5 IHdvcmthcm91bmQgZm9yIGdjYyBidWcgb24gczM5MHggKGJ6ICMxOTM5MTIpCi0KLSogVHVlIE1h eSAgMiAyMDA2IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4wLjIxLTIKLS0gRml4IGJvZ3Vz IHBlcmwgUmVxdWlyZXMgZm9yIG15c3FsLXRlc3QKLQotKiBNb24gTWF5ICAxIDIwMDYgVG9tIExh bmUgPHRnbEByZWRoYXQuY29tPiA1LjAuMjEtMQotLSBVcGRhdGUgdG8gTXlTUUwgNS4wLjIxCi0K LSogTW9uIE1hciAyNyAyMDA2IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4wLjE4LTQKLS0g TW9kaWZ5IG11bHRpbGliIGhlYWRlciBoYWNrIHRvIG5vdCBicmVhayBub24tUkggYXJjaGVzLCBw ZXIgYnVnICMxODEzMzUKLS0gUmVtb3ZlIGxvZ3JvdGF0ZSBzY3JpcHQsIHBlciBidWcgIzE4MDYz OS4KLS0gQWRkIGEgbmV3IG15c3FsLXRlc3QgUlBNIHRvIGNhcnJ5IHRoZSByZWdyZXNzaW9uIHRl c3QgZmlsZXM7Ci0gIGhhY2sgdXAgdGVzdCBzY3JpcHRzIGFzIG5lZWRlZCB0byBtYWtlIHRoZW0g cnVuIGluIC91c3Ivc2hhcmUvbXlzcWwtdGVzdC4KLQotKiBGcmkgRmViIDEwIDIwMDYgSmVzc2Ug S2VhdGluZyA8amtlYXRpbmdAcmVkaGF0LmNvbT4gLSA1LjAuMTgtMi4xCi0tIGJ1bXAgYWdhaW4g Zm9yIGRvdWJsZS1sb25nIGJ1ZyBvbiBwcGMoNjQpCi0KLSogVGh1IEZlYiAgOSAyMDA2IFRvbSBM YW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4wLjE4LTIKLS0gZXJyLWxvZyBvcHRpb24gaGFzIGJlZW4g cmVuYW1lZCB0byBsb2ctZXJyb3IsIGZpeCBteS5jbmYgYW5kIGluaXRzY3JpcHQKLQotKiBUdWUg RmViIDA3IDIwMDYgSmVzc2UgS2VhdGluZyA8amtlYXRpbmdAcmVkaGF0LmNvbT4gLSA1LjAuMTgt MS4xCi0tIHJlYnVpbHQgZm9yIG5ldyBnY2M0LjEgc25hcHNob3QgYW5kIGdsaWJjIGNoYW5nZXMK LQotKiBUaHUgSmFuICA1IDIwMDYgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuMTgtMQot LSBVcGRhdGUgdG8gTXlTUUwgNS4wLjE4Ci0KLSogVGh1IERlYyAxNSAyMDA1IFRvbSBMYW5lIDx0 Z2xAcmVkaGF0LmNvbT4gNS4wLjE2LTQKLS0gZml4IG15X2NvbmZpZy5oIGZvciBwcGMgcGxhdGZv cm1zCi0KLSogVGh1IERlYyAxNSAyMDA1IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4wLjE2 LTMKLS0gbXlfY29uZmlnLmggbmVlZHMgdG8gZ3VhcmQgYWdhaW5zdCA2NC1iaXQgcGxhdGZvcm1z IHRoYXQgYWxzbyBkZWZpbmUgdGhlCi0gIDMyLWJpdCBzeW1ib2wKLQotKiBXZWQgRGVjIDE0IDIw MDUgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA1LjAuMTYtMgotLSBvb3BzLCBsb29rcyBsaWtl IHdlIHdhbnQgdW5hbWUgLWkgbm90IHVuYW1lIC1tCi0KLSogTW9uIERlYyAxMiAyMDA1IFRvbSBM YW5lIDx0Z2xAcmVkaGF0LmNvbT4gNS4wLjE2LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuMC4xNgot LSBBZGQgRVhDRVBUSU9OUy1DTElFTlQgbGljZW5zZSBpbmZvIHRvIHRoZSBzaGlwcGVkIGRvY3Vt ZW50YXRpb24KLS0gTWFrZSBteV9jb25maWcuaCBhcmNoaXRlY3R1cmUtaW5kZXBlbmRlbnQgZm9y IG11bHRpbGliIGluc3RhbGxzOwotICBwdXQgdGhlIG9yaWdpbmFsIG15X2NvbmZpZy5oIGludG8g bXlfY29uZmlnXyRBUkNILmgKLS0gQWRkIC1md3JhcHYgdG8gQ0ZMQUdTIHNvIHRoYXQgZ2NjIDQu MSBkb2Vzbid0IGJyZWFrIGl0Ci0KLSogRnJpIERlYyAwOSAyMDA1IEplc3NlIEtlYXRpbmcgPGpr ZWF0aW5nQHJlZGhhdC5jb20+Ci0tIHJlYnVpbHQKLQotKiBNb24gTm92IDE0IDIwMDUgVG9tIExh bmUgPHRnbEByZWRoYXQuY29tPiA1LjAuMTUtMwotLSBNYWtlIHN0b3Agc2NyaXB0IHdhaXQgZm9y IGRhZW1vbiBwcm9jZXNzIHRvIGRpc2FwcGVhciAoYnojMTcyNDI2KQotCi0qIFdlZCBOb3YgIDkg MjAwNSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDUuMC4xNS0yCi0tIFJlYnVpbGQgZHVlIHRv IG9wZW5zc2wgbGlicmFyeSB1cGRhdGUuCi0KLSogVGh1IE5vdiAgMyAyMDA1IFRvbSBMYW5lIDx0 Z2xAcmVkaGF0LmNvbT4gNS4wLjE1LTEKLS0gVXBkYXRlIHRvIE15U1FMIDUuMC4xNSAoc2NyYXRj aCBidWlsZCBmb3Igbm93KQotCi0qIFdlZCBPY3QgIDUgMjAwNSBUb20gTGFuZSA8dGdsQHJlZGhh dC5jb20+IDQuMS4xNC0xCi0tIFVwZGF0ZSB0byBNeVNRTCA0LjEuMTQKLQotKiBUdWUgQXVnIDIz IDIwMDUgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA0LjEuMTItMwotLSBVc2UgcG9saXRpY2Fs bHkgY29ycmVjdCBwYXRjaCBuYW1lLgotCi0qIFR1ZSBKdWwgMTIgMjAwNSBUb20gTGFuZSA8dGds QHJlZGhhdC5jb20+IDQuMS4xMi0yCi0tIEZpeCBidWZmZXIgb3ZlcmZsb3cgbmV3bHkgZXhwb3Nl ZCBpbiBpc2FtIGNvZGU7IGl0J3MgdGhlIHNhbWUgaXNzdWUKLSAgcHJldmlvdXNseSBmb3VuZCBp biBteWlzYW0sIGFuZCBub3QgdmVyeSBleGNpdGluZywgYnV0IEknbSB0aXJlZCBvZgotICBzZWVp bmcgYnVpbGQgd2FybmluZ3MuCi0KLSogTW9uIEp1bCAxMSAyMDA1IFRvbSBMYW5lIDx0Z2xAcmVk aGF0LmNvbT4gNC4xLjEyLTEKLS0gVXBkYXRlIHRvIE15U1FMIDQuMS4xMiAoaW5jbHVkZXMgYSBm aXggZm9yIGJ6IzE1ODY4OCwgYnojMTU4Njg5KQotLSBFeHRlbmQgbXlzcWwtdGVzdC1zc2wucGF0 Y2ggdG8gc29sdmUgcnBsX29wZW5zc2wgdGVzdCBmYWlsdXJlIChieiMxNTU4NTApCi0tIFVwZGF0 ZSBteXNxbC1sb2NrLXNzbC5wYXRjaCB0byBtYXRjaCB0aGUgdXBzdHJlYW0gY29tbWl0dGVkIHZl cnNpb24KLS0gQWRkIC0td2l0aC1pc2FtIHRvIHJlLWVuYWJsZSB0aGUgb2xkIElTQU0gdGFibGUg dHlwZSwgcGVyIGJ6IzE1OTI2MgotLSBBZGQgZGVwZW5kZW5jeSBvbiBvcGVuc3NsLWRldmVsIHBl ciBieiMxNTk1NjkKLS0gUmVtb3ZlIG1hbnVhbC50eHQsIGFzIHVwc3RyZWFtIGRlY2lkZWQgbm90 IHRvIHNoaXAgaXQgYW55bW9yZTsKLSAgaXQgd2FzIHJlZHVuZGFudCB3aXRoIHRoZSBteXNxbC5p bmZvIGZpbGUgYW55d2F5LgotCi0qIE1vbiBNYXkgIDkgMjAwNSBUb20gTGFuZSA8dGdsQHJlZGhh dC5jb20+IDQuMS4xMS00Ci0tIEluY2x1ZGUgcHJvcGVyIGxvY2tpbmcgZm9yIE9wZW5TU0wgaW4g dGhlIHNlcnZlciwgcGVyIGJ6IzE1NTg1MAotCi0qIE1vbiBBcHIgMjUgMjAwNSBUb20gTGFuZSA8 dGdsQHJlZGhhdC5jb20+IDQuMS4xMS0zCi0tIEVuYWJsZSBvcGVuc3NsIHRlc3RzIGR1cmluZyBi dWlsZCwgcGVyIGJ6IzE1NTg1MAotLSBNaWdodCBhcyB3ZWxsIHR1cm4gb24gLS1kaXNhYmxlLWRl cGVuZGVuY3ktdHJhY2tpbmcKLQotKiBGcmkgQXByICA4IDIwMDUgVG9tIExhbmUgPHRnbEByZWRo YXQuY29tPiA0LjEuMTEtMgotLSBBdm9pZCBkZXBlbmRlbmN5IG9uIDxhc20vYXRvbWljLmg+LCBj YXVzZSBpdCB3b24ndCBidWlsZCBhbnltb3JlIG9uIGlhNjQuCi0gIFRoaXMgaXMgcHJvYmFibHkg YSBjbGVhbmVyIHNvbHV0aW9uIGZvciBieiMxNDM1MzcsIHRvby4KLQotKiBUaHUgQXByICA3IDIw MDUgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA0LjEuMTEtMQotLSBVcGRhdGUgdG8gTXlTUUwg NC4xLjExIHRvIGZpeCBieiMxNTI5MTEgYXMgd2VsbCBhcyBvdGhlciBpc3N1ZXMKLS0gTW92ZSBw ZXJsLURCSSwgcGVybC1EQkQtTXlTUUwgZGVwZW5kZW5jaWVzIHRvIHNlcnZlciBwYWNrYWdlIChi eiMxNTQxMjMpCi0tIE92ZXJyaWRlIGNvbmZpZ3VyZSB0aHJlYWQgbGlicmFyeSB0ZXN0IHRvIHN1 cHByZXNzIEhBVkVfTElOVVhUSFJFQURTIGNoZWNrCi0tIEZpeCBCREIgZmFpbHVyZSBvbiBzMzkw eCAoYnojMTQzNTM3KQotLSBBdCBsYXN0IHdlIGNhbiBlbmFibGUgIm1ha2UgdGVzdCIgb24gYWxs IGFyY2hlcwotCi0qIEZyaSBNYXIgMTEgMjAwNSBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDQu MS4xMGEtMQotLSBVcGRhdGUgdG8gTXlTUUwgNC4xLjEwYSB0byBmaXggc2VjdXJpdHkgdnVsbmVy YWJpbGl0aWVzIChieiMxNTA4NjgsCi0gIGZvciBDQU4tMjAwNS0wNzExLCBhbmQgYnojMTUwODcx IGZvciBDQU4tMjAwNS0wNzA5LCBDQU4tMjAwNS0wNzEwKS4KLQotKiBTdW4gTWFyICA2IDIwMDUg VG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA0LjEuMTAtMwotLSBGaXggcGFja2FnZSBSZXF1aXJl czogaW50ZXJkZXBlbmRlbmNpZXMuCi0KLSogU2F0IE1hciAgNSAyMDA1IFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNC4xLjEwLTIKLS0gTmVlZCAtZm5vLXN0cmljdC1hbGlhc2luZyBpbiBhdCBs ZWFzdCBvbmUgcGxhY2UsIHByb2JhYmx5IG1vcmUuCi0tIFdvcmsgYXJvdW5kIHNvbWUgQyBzcGVj IHZpb2xhdGlvbnMgaW4gbXlzcWwuCi0KLSogRnJpIEZlYiAxOCAyMDA1IFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNC4xLjEwLTEKLS0gVXBkYXRlIHRvIE15U1FMIDQuMS4xMC4KLQotKiBTYXQg SmFuIDE1IDIwMDUgVG9tIExhbmUgPHRnbEByZWRoYXQuY29tPiA0LjEuOS0xCi0tIFVwZGF0ZSB0 byBNeVNRTCA0LjEuOS4KLQotKiBXZWQgSmFuIDEyIDIwMDUgVG9tIExhbmUgPHRnbEByZWRoYXQu Y29tPiA0LjEuNy0xMAotLSBEb24ndCBhc3N1bWUgL2V0Yy9teS5jbmYgd2lsbCBzcGVjaWZ5IHBp ZC1maWxlIChieiMxNDM3MjQpCi0KLSogV2VkIEphbiAxMiAyMDA1IFRpbSBXYXVnaCA8dHdhdWdo QHJlZGhhdC5jb20+IDQuMS43LTkKLS0gUmVidWlsdCBmb3IgbmV3IHJlYWRsaW5lLgotCi0qIFR1 ZSBEZWMgMjEgMjAwNCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDQuMS43LTgKLS0gUnVuIG1h a2UgdGVzdCBvbiBhbGwgYXJjaHMgZXhjZXB0IHMzOTB4ICh3aGljaCBzZWVtcyB0byBoYXZlIGEg YmRiIGlzc3VlKQotCi0qIE1vbiBEZWMgMTMgMjAwNCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+ IDQuMS43LTcKLS0gU3VwcHJlc3Mgc29tZW9uZSdzIHNpbGx5IGlkZWEgdGhhdCBsaWJ0b29sIG92 ZXJoZWFkIGNhbiBiZSBza2lwcGVkCi0KLSogU3VuIERlYyAxMiAyMDA0IFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNC4xLjctNgotLSBGaXggaW5pdCBzY3JpcHQgdG8gbm90IG5lZWQgYSB2YWxp ZCB1c2VybmFtZSBmb3Igc3RhcnR1cCBjaGVjayAoYnojMTQyMzI4KQotLSBGaXggaW5pdCBzY3Jp cHQgdG8gaG9ub3Igc2V0dGluZ3MgYXBwZWFyaW5nIGluIC9ldGMvbXkuY25mIChieiM3NjA1MSkK LS0gRW5hYmxlIFNTTCAoYnojMTQyMDMyKQotCi0qIFRodSBEZWMgIDIgMjAwNCBUb20gTGFuZSA8 dGdsQHJlZGhhdC5jb20+IDQuMS43LTUKLS0gQWRkIGEgcmVzdG9yZWNvbiB0byBrZWVwIHRoZSBt eXNxbC5sb2cgZmlsZSBpbiB0aGUgcmlnaHQgY29udGV4dCAoYnojMTQzODg3KQotCi0qIFR1ZSBO b3YgMjMgMjAwNCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDQuMS43LTQKLS0gVHVybiBvZmYg b2xkX3Bhc3N3b3JkcyBpbiBkZWZhdWx0IC9ldGMvbXkuY25mIGZpbGUsIGZvciBiZXR0ZXIgY29t cGF0aWJpbGl0eQotICB3aXRoIG15c3FsIDMueCBjbGllbnRzIChwZXIgc3VnZ2VzdGlvbiBmcm9t IEpvZSBPcnRvbikuCi0KLSogRnJpIE9jdCAyOSAyMDA0IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNv bT4gNC4xLjctMwotLSBIYW5kbGUgbGRjb25maWcgbW9yZSBjbGVhbmx5IChwdXQgYSBmaWxlIGlu IC9ldGMvbGQuc28uY29uZi5kLykuCi0KLSogVGh1IE9jdCAyOCAyMDA0IFRvbSBMYW5lIDx0Z2xA cmVkaGF0LmNvbT4gNC4xLjctMgotLSByZWJ1aWxkIGluIGRldmVsIGJyYW5jaAotCi0qIFdlZCBP Y3QgMjcgMjAwNCBUb20gTGFuZSA8dGdsQHJlZGhhdC5jb20+IDQuMS43LTEKLS0gVXBkYXRlIHRv IE15U1FMIDQuMS54LgotCi0qIFR1ZSBPY3QgMTIgMjAwNCBUb20gTGFuZSA8dGdsQHJlZGhhdC5j b20+IDMuMjMuNTgtMTMKLS0gZml4IHNlY3VyaXR5IGlzc3VlcyBDQU4tMjAwNC0wODM1LCBDQU4t MjAwNC0wODM2LCBDQU4tMjAwNC0wODM3Ci0gIChidWdzICMxMzUzNzIsIDEzNTM3NSwgMTM1Mzg3 KQotLSBmaXggcHJpdmlsZWdlIGVzY2FsYXRpb24gb24gR1JBTlQgQUxMIE9OIGBGb29cX0JhcmAg KENBTi0yMDA0LTA5NTcpCi0KLSogV2VkIE9jdCAwNiAyMDA0IFRvbSBMYW5lIDx0Z2xAcmVkaGF0 LmNvbT4gMy4yMy41OC0xMgotLSBmaXggbXVsdGlsaWIgcHJvYmxlbSB3aXRoIG15c3FsYnVnIGFu ZCBteXNxbF9jb25maWcKLS0gYWRqdXN0IGNoa2NvbmZpZyBwcmlvcml0eSBwZXIgYnVnICMxMjg4 NTIKLS0gcmVtb3ZlIGJvZ3VzIHF1b3RpbmcgcGVyIGJ1ZyAjMTI5NDA5IChNeVNRTCA0LjAgaGFz IGRvbmUgbGlrZXdpc2UpCi0tIGFkZCBzbGVlcCB0byBteXNxbC5pbml0IHJlc3RhcnQoKTsgbWF5 IG9yIG1heSBub3QgZml4IGJ1ZyAjMTMzOTkzCi0KLSogVHVlIE9jdCAwNSAyMDA0IFRvbSBMYW5l IDx0Z2xAcmVkaGF0LmNvbT4gMy4yMy41OC0xMQotLSBmaXggbG93LXByaW9yaXR5IHNlY3VyaXR5 IGlzc3VlcyBDQU4tMjAwNC0wMzg4LCBDQU4tMjAwNC0wMzgxLCBDQU4tMjAwNC0wNDU3Ci0gIChi dWdzICMxMTk0NDIsIDEyNTk5MSwgMTMwMzQ3LCAxMzAzNDgpCi0tIGZpeCBidWcgd2l0aCBkcm9w cGluZyBkYXRhYmFzZXMgdW5kZXIgcmVjZW50IGtlcm5lbHMgKGJ1ZyAjMTI0MzUyKQotCi0qIFR1 ZSBKdW4gMTUgMjAwNCBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5jb20+IDMuMjMuNTgtMTAK LS0gcmVidWlsdAotCi0qIFNhdCBBcHIgMTcgMjAwNCBXYXJyZW4gVG9nYW1pIDx3dG9nYW1pQHJl ZGhhdC5jb20+IDMuMjMuNTgtOQotLSByZW1vdmUgcmVkdW5kYW50IElOU1RBTEwtU09VUkNFLCBt YW51YWwuKgotLSBjb21wcmVzcyBtYW51YWwudHh0LmJ6MgotLSBCUiB0aW1lCi0KLSogVHVlIE1h ciAxNiAyMDA0IFRvbSBMYW5lIDx0Z2xAcmVkaGF0LmNvbT4gMy4yMy41OC04Ci0tIHJlcGFpciBs b2dmaWxlIGF0dHJpYnV0ZXMgaW4gJSVmaWxlcywgcGVyIGJ1ZyAjMTAyMTkwCi0tIHJlcGFpciBx dW90aW5nIHByb2JsZW0gaW4gbXlzcWxob3Rjb3B5LCBwZXIgYnVnICMxMTI2OTMKLS0gcmVwYWly IG1pc3NpbmcgZmx1c2ggaW4gbXlzcWxfc2V0cGVybWlzc2lvbiwgcGVyIGJ1ZyAjMTEzOTYwCi0t IHJlcGFpciBicm9rZW4gZXJyb3IgbWVzc2FnZSBwcmludGYsIHBlciBidWcgIzExNTE2NQotLSBk ZWxldGUgbXlzcWwgdXNlciBkdXJpbmcgdW5pbnN0YWxsLCBwZXIgYnVnICMxMTcwMTcKLS0gcmVi dWlsdAotCi0qIFR1ZSBNYXIgMDIgMjAwNCBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5jb20+ Ci0tIHJlYnVpbHQKLQotKiBUdWUgRmViIDI0IDIwMDQgVG9tIExhbmUgPHRnbEByZWRoYXQuY29t PgotLSBmaXggY2hvd24gc3ludGF4IGluIG15c3FsLmluaXQKLS0gcmVidWlsZAotCi0qIEZyaSBG ZWIgMTMgMjAwNCBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5jb20+Ci0tIHJlYnVpbHQKLQot KiBUdWUgTm92IDE4IDIwMDMgS2ltIEhvIDxraG9AcmVkaGF0LmNvbT4gMy4yMy41OC01Ci0tIHVw ZGF0ZSBteXNxbC5pbml0IHRvIHVzZSBhbm9ueW1vdXMgdXNlciAoVU5LTk9XTl9NWVNRTF9VU0VS KSBmb3IKLSAgcGluZ2luZyBteXNxbCBzZXJ2ZXIgKCMxMDg3NzkpCi0KLSogTW9uIE9jdCAyNyAy MDAzIEtpbSBIbyA8a2hvQHJlZGhhdC5jb20+IDMuMjMuNTgtNAotLSB1cGRhdGUgbXlzcWwuaW5p dCB0byB3YWl0IChtYXggMTAgc2Vjb25kcykgZm9yIG15c3FsIHNlcnZlciB0bwotICBzdGFydCAo IzU4NzMyKQotCi0qIE1vbiBPY3QgMjcgMjAwMyBQYXRyaWNrIE1hY2RvbmFsZCA8cGF0cmlja21A cmVkaGF0LmNvbT4gMy4yMy41OC0zCi0tIHJlLWVuYWJsZSBCZXJrZWxleSBEQiBzdXBwb3J0ICgj MTA2ODMyKQotLSByZS1lbmFibGUgaWE2NCB0ZXN0aW5nCi0KLSogRnJpIFNlcCAxOSAyMDAzIFBh dHJpY2sgTWFjZG9uYWxkIDxwYXRyaWNrbUByZWRoYXQuY29tPiAzLjIzLjU4LTIKLS0gcmVidWls dAotCi0qIE1vbiBTZXAgMTUgMjAwMyBQYXRyaWNrIE1hY2RvbmFsZCA8cGF0cmlja21AcmVkaGF0 LmNvbT4gMy4yMy41OC0xCi0tIHVwZ3JhZGUgdG8gMy4yMy41OCBmb3Igc2VjdXJpdHkgZml4Ci0K LSogVHVlIEF1ZyAyNiAyMDAzIFBhdHJpY2sgTWFjZG9uYWxkIDxwYXRyaWNrbUByZWRoYXQuY29t PiAzLjIzLjU3LTIKLS0gcmVidWlsdAotCi0qIFdlZCBKdWwgMDIgMjAwMyBQYXRyaWNrIE1hY2Rv bmFsZCA8cGF0cmlja21AcmVkaGF0LmNvbT4gMy4yMy41Ny0xCi0tIHJldmVydCB0byBwcmlvciB2 ZXJzaW9uIG9mIE15U1FMIGR1ZSB0byBsaWNlbnNlIGluY29tcGF0aWJpbGl0aWVzCi0gIHdpdGgg cGFja2FnZXMgdGhhdCBsaW5rIGFnYWluc3QgdGhlIGNsaWVudC4gIFRoZSBNeVNRTCBmb2xrcyBh cmUKLSAgbG9va2luZyBpbnRvIHRoZSBpc3N1ZS4KLQotKiBXZWQgSnVuIDE4IDIwMDMgUGF0cmlj ayBNYWNkb25hbGQgPHBhdHJpY2ttQHJlZGhhdC5jb20+IDQuMC4xMy00Ci0tIHJlc3RyaWN0IHRl c3Qgb24gaWE2NCAodGVtcG9yYXJ5KQotCi0qIFdlZCBKdW4gMDQgMjAwMyBFbGxpb3QgTGVlIDxz b3B3aXRoQHJlZGhhdC5jb20+IDQuMC4xMy0zCi0tIHJlYnVpbHQKLQotKiBUaHUgTWF5IDI5IDIw MDMgUGF0cmljayBNYWNkb25hbGQgPHBhdHJpY2ttQHJlZGhhdC5jb20+IDQuMC4xMy0yCi0tIGZp eCBmaWx0ZXItcmVxdWlyZXMtbXlzcWwuc2ggd2l0aCBsZXNzIHJlc3RyaWN0aXZlIGZvciBteXNx bC1iZW5jaAotCi0qIFdlZCBNYXkgMjggMjAwMyBQYXRyaWNrIE1hY2RvbmFsZCA8cGF0cmlja21A cmVkaGF0LmNvbT4gNC4wLjEzLTEKLS0gdXBkYXRlIGZvciBNeVNRTCA0LjAKLS0gYmFjay1sZXZl bCBzaGFyZWQgbGlicmFyaWVzIGF2YWlsYWJsZSBpbiBteXNxbGNsaWVudDEwIHBhY2thZ2UKLQot KiBGcmkgTWF5IDA5IDIwMDMgUGF0cmljayBNYWNkb25hbGQgPHBhdHJpY2ttQHJlZGhhdC5jb20+ IDMuMjMuNTYtMgotLSBhZGQgc3FsLWJlbmNoIHBhY2thZ2UgKCM5MDExMCkKLQotKiBXZWQgTWFy IDE5IDIwMDMgUGF0cmljayBNYWNkb25hbGQgPHBhdHJpY2ttQHJlZGhhdC5jb20+IDMuMjMuNTYt MQotLSB1cGdyYWRlIHRvIDMuMjMuNTYgZm9yIHNlY3VyaXR5IGZpeGVzCi0tIHJlbW92ZSBwYXRj aCBmb3IgZG91YmxlLWZyZWUgKGluY2x1ZGVkIGluIDMuMjMuNTYpCi0KLSogVHVlIEZlYiAxOCAy MDAzIFBhdHJpY2sgTWFjZG9uYWxkIDxwYXRyaWNrbUByZWRoYXQuY29tPiAzLjIzLjU0YS0xMQot LSBlbmFibGUgdGhyZWFkIHNhZmUgY2xpZW50Ci0tIGFkZCBwYXRjaCBmb3IgZG91YmxlIGZyZWUg Zml4Ci0KLSogV2VkIEphbiAyMiAyMDAzIFRpbSBQb3dlcnMgPHRpbXBAcmVkaGF0LmNvbT4KLS0g cmVidWlsdAotCi0qIE1vbiBKYW4gMTMgMjAwMyBLYXJzdGVuIEhvcHAgPGthcnN0ZW5AcmVkaGF0 LmRlPiAzLjIzLjU0YS05Ci0tIGRpc2FibGUgY2hlY2tzIG9uIHMzOTB4Ci0KLSogU2F0IEphbiAg NCAyMDAzIEplZmYgSm9obnNvbiA8amJqQHJlZGhhdC5jb20+IDMuMjMuNTRhLTgKLS0gdXNlIGlu dGVybmFsIGRlcCBnZW5lcmF0b3IuCi0KLSogV2VkIEphbiAgMSAyMDAzIEJpbGwgTm90dGluZ2hh bSA8bm90dGluZ0ByZWRoYXQuY29tPiAzLjIzLjU0YS03Ci0tIGZpeCBteXNxbF9jb25maWcgb24g aGFtbWVyCi0KLSogU3VuIERlYyAyMiAyMDAyIFRpbSBQb3dlcnMgPHRpbXBAcmVkaGF0LmNvbT4g My4yMy41NGEtNgotLSBkb24ndCB1c2UgcnBtcyBpbnRlcm5hbCBkZXAgZ2VuZXJhdG9yCi0KLSog VHVlIERlYyAxNyAyMDAyIEVsbGlvdCBMZWUgPHNvcHdpdGhAcmVkaGF0LmNvbT4gMy4yMy41NGEt NQotLSBQdXNoIGl0IGludG8gdGhlIGJ1aWxkIHN5c3RlbQotCi0qIE1vbiBEZWMgMTYgMjAwMiBK b2UgT3J0b24gPGpvcnRvbkByZWRoYXQuY29tPiAzLjIzLjU0YS00Ci0tIHVwZ3JhZGUgdG8gMy4y My41NGEgZm9yIHNhZmVfbXlzcWxkIGZpeAotCi0qIFRodSBEZWMgMTIgMjAwMiBKb2UgT3J0b24g PGpvcnRvbkByZWRoYXQuY29tPiAzLjIzLjU0LTMKLS0gdXBncmFkZSB0byAzLjIzLjU0IGZvciBs YXRlc3Qgc2VjdXJpdHkgZml4ZXMKLQotKiBUdWUgTm92IDE5IDIwMDIgSmFrdWIgSmVsaW5layA8 amFrdWJAcmVkaGF0LmNvbT4gMy4yMy41Mi01Ci0tIEFsd2F5cyBpbmNsdWRlIDxlcnJuby5oPiBm b3IgZXJybm8KLS0gUmVtb3ZlIHVucGFja2FnZWQgZmlsZXMKLQotKiBUdWUgTm92IDEyIDIwMDIg RmxvcmlhbiBMYSBSb2NoZSA8Rmxvcmlhbi5MYVJvY2hlQHJlZGhhdC5kZT4KLS0gZG8gbm90IHBy ZXJlcSB1c2VyZGVsLCBub3QgdXNlZCBhdCBhbGwKLQotKiBNb24gU2VwICA5IDIwMDIgVHJvbmQg RWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPiAzLjIzLjUyLTQKLS0gVXNlICUle19saWJk aXJ9Ci0tIEFkZCBwYXRjaCBmb3IgeDg2LTY0Ci0KLSogV2VkIFNlcCAgNCAyMDAyIEpha3ViIEpl bGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDMuMjMuNTItMwotLSByZWJ1aWx0IHdpdGggZ2NjLTMu Mi03Ci0KLSogVGh1IEF1ZyAyOSAyMDAyIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0 LmNvbT4gMy4yMy41Mi0yCi0tIEFkZCAtLWVuYWJsZS1sb2NhbC1pbmZpbGUgdG8gY29uZmlndXJl IC0gYSBuZXcgb3B0aW9uCi0gIHdoaWNoIGRvZXNuJ3QgZGVmYXVsdCB0byB0aGUgb2xkIGJlaGF2 aW91ciAoIzcyODg1KQotCi0qIEZyaSBBdWcgMjMgMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8 dGVnQHJlZGhhdC5jb20+IDMuMjMuNTItMQotLSAzLjIzLjUyLiBGaXhlcyBhIG1pbm9yIHNlY3Vy aXR5IHByb2JsZW0sIHZhcmlvdXMgYnVnZml4ZXMuCi0KLSogU2F0IEF1ZyAxMCAyMDAyIEVsbGlv dCBMZWUgPHNvcHdpdGhAcmVkaGF0LmNvbT4gMy4yMy41MS01Ci0tIHJlYnVpbHQgd2l0aCBnY2Mt My4yICh3ZSBob3BlKQotCi0qIE1vbiBKdWwgMjIgMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8 dGVnQHJlZGhhdC5jb20+IDMuMjMuNTEtNAotLSByZWJ1aWxkCi0KLSogVGh1IEp1bCAxOCAyMDAy IFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4gMy4yMy41MS0zCi0tIEZpeCAj NjM1NDMgYW5kICM2MzU0MgotCi0qIFRodSBKdWwgMTEgMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNy ZCA8dGVnQHJlZGhhdC5jb20+IDMuMjMuNTEtMgotLSBUdXJuIG9mZiBiZGIgb24gUFBDKCM2ODU5 MSkKLS0gVHVybiBvZmYgdGhlIGFzc2VtYmx5IG9wdGltaXphdGlvbnMsIGZvciBzYWZldHkuCi0K LSogV2VkIEp1biAyNiAyMDAyIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4g My4yMy41MS0xCi0tIFdvcmsgYXJvdW5kIGFubm95aW5nIGF1dG8qIHRoaW5raW5nIHRoaXMgaXMg YSBjcm9zc2NvbXBpbGUKLS0gMy4yMy41MQotCi0qIEZyaSBKdW4gMjEgMjAwMiBUaW0gUG93ZXJz IDx0aW1wQHJlZGhhdC5jb20+Ci0tIGF1dG9tYXRlZCByZWJ1aWxkCi0KLSogTW9uIEp1biAxMCAy MDAyIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4gMy4yMy41MC0yCi0tIEFk ZCBkZXBlbmRlbmN5IG9uIHBlcmwtREJJIGFuZCBwZXJsLURCRC1NeVNRTCAoIzY2MzQ5KQotCi0q IFRodSBNYXkgMzAgMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+IDMu MjMuNTAtMQotLSAzLjIzLjUwCi0KLSogVGh1IE1heSAyMyAyMDAyIFRpbSBQb3dlcnMgPHRpbXBA cmVkaGF0LmNvbT4KLS0gYXV0b21hdGVkIHJlYnVpbGQKLQotKiBNb24gTWF5IDEzIDIwMDIgVHJv bmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPiAzLjIzLjQ5LTQKLS0gUmVidWlsZAot LSBEb24ndCBzZXQgQ1hYIHRvIGdjYywgaXQgZG9lc24ndCB3b3JrIGFueW1vcmUKLS0gRXhjbHVk ZSBBbHBoYQotCi0qIE1vbiBBcHIgIDggMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJl ZGhhdC5jb20+IDMuMjMuNDktMwotLSBBZGQgdGhlIHZhcmlvdXMgLmNuZiBleGFtcGxlcyBhcyBk b2MgZmlsZXMgdG8gbXlzcWwtc2VydmVyICgjNjAzNDkpCi0tIERvbid0IGluY2x1ZGUgbWFudWFs LnBzLCBpdCdzIGp1c3QgMjAwIGJ5dGVzIHdpdGggYSBVUkwgaW5zaWRlICgjNjAzNDkpCi0tIERv bid0IGluY2x1ZGUgcmFuZG9tIGZpbGVzIGluIC91c3Ivc2hhcmUvbXlzcWwgKCM2MDM0OSkKLS0g bGFuZ2lmeSAoIzYwMzQ5KQotCi0qIFRodSBGZWIgMjEgMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNy ZCA8dGVnQHJlZGhhdC5jb20+IDMuMjMuNDktMgotLSBSZWJ1aWxkCi0KLSogU3VuIEZlYiAxNyAy MDAyIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4gMy4yMy40OS0xCi0tIDMu MjMuNDkKLQotKiBUaHUgRmViIDE0IDIwMDIgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRo YXQuY29tPiAzLjIzLjQ4LTIKLS0gd29yayBhcm91bmQgcGVybCBkZXBlbmRlbmN5IGJ1Zy4KLQot KiBNb24gRmViIDExIDIwMDIgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPiAz LjIzLjQ4LTEKLS0gMy4yMy40OAotCi0qIFRodSBKYW4gMTcgMjAwMiBUcm9uZCBFaXZpbmQgR2xv bXNyZCA8dGVnQHJlZGhhdC5jb20+IDMuMjMuNDctNAotLSBVc2Uga2lsbCwgbm90IG15c3FsYWRt aW4sIHRvIGZsdXNoIGxvZ3MgYW5kIHNodXQgZG93bi4gVGh1cywKLSAgYW4gYWRtaW4gcGFzc3dv cmQgY2FuIGJlIHNldCB3aXRoIG5vIHByb2JsZW1zLgotLSBSZW1vdmUgcmVsb2FkIGZyb20gaW5p dCBzY3JpcHQKLQotKiBXZWQgSmFuIDE2IDIwMDIgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0By ZWRoYXQuY29tPiAzLjIzLjQ3LTMKLS0gcmVtb3ZlIGRiMy1kZXZlbCBmcm9tIGJ1aWxkcmVxdWly ZXMsCi0gIE15U1FMIGhhcyBoYWQgaXRzIG93biBidW5kbGVkIGNvcHkgc2luY2UgdGhlIG1pZCB0 aGlydGllcwotCi0qIFN1biBKYW4gIDYgMjAwMiBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJl ZGhhdC5jb20+IDMuMjMuNDctMQotLSAzLjIzLjQ3Ci0tIERvbid0IGJ1aWxkIGZvciBhbHBoYSwg dG9vbGNoYWluIGltbWF0dXJlLgotCi0qIE1vbiBEZWMgIDMgMjAwMSBUcm9uZCBFaXZpbmQgR2xv bXNyZCA8dGVnQHJlZGhhdC5jb20+IDMuMjMuNDYtMQotLSAzLjIzLjQ2Ci0tIHVzZSAtZm5vLXJ0 dGkgYW5kIC1mbm8tZXhjZXB0aW9ucywgYW5kIHNldCBDWFggdG8gaW5jcmVhc2Ugc3RhYmlsaXR5 LgotICBSZWNvbW1lbmRlZCBieSBteXNxbCBkZXZlbG9wZXJzLgotCi0qIFN1biBOb3YgMjUgMjAw MSBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+IDMuMjMuNDUtMQotLSAzLjIz LjQ1Ci0KLSogV2VkIE5vdiAxNCAyMDAxIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0 LmNvbT4gMy4yMy40NC0yCi0tIGNlbnRyYWxpemUgZGVmaW5pdGlvbiBvZiBkYXRhZGlyIGluIHRo ZSBpbml0c2NyaXB0ICgjNTU4NzMpCi0KLSogRnJpIE5vdiAgMiAyMDAxIFRyb25kIEVpdmluZCBH bG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4gMy4yMy40NC0xCi0tIDMuMjMuNDQKLQotKiBUaHUgT2N0 ICA0IDIwMDEgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPiAzLjIzLjQzLTEK LS0gMy4yMy40MwotCi0qIE1vbiBTZXAgMTAgMjAwMSBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVn QHJlZGhhdC5jb20+IDMuMjMuNDItMQotLSAzLjIzLjQyCi0tIHJlZW5hYmxlIGlubm9kYgotCi0q IFR1ZSBBdWcgMTQgMjAwMSBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+IDMu MjMuNDEtMQotLSAzLjIzLjQxIGJ1Z2ZpeCByZWxlYXNlCi0tIGRpc2FibGUgaW5ub2RiLCB0byBh dm9pZCB0aGUgYnJva2VuIHVwZGF0ZXMKLS0gVXNlICJteXNxbGFkbWluIGZsdXNoX2xvZ3MiIGlu c3RlYWQgb2Yga2lsbCAtSFVQIGluIGxvZ3JvdGF0ZQotICBzY3JpcHQgKCM1MTcxMSkKLQotKiBT YXQgSnVsIDIxIDIwMDEgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSAz LjIzLjQwLCBidWdmaXggcmVsZWFzZQotLSBBZGQgemxpYi1kZXZlbCB0byBidWlsZHJlcXVpcmVz OgotCi0qIEZyaSBKdWwgMjAgMjAwMSBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5j b20+Ci0tIEJ1aWxkUmVxdWlyZXMtdHdlYWtpbmcKLQotKiBUaHUgSnVuIDI4IDIwMDEgVHJvbmQg RWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSBSZWVuYWJsZSB0ZXN0LCBidXQgZG9u J3QgcnVuIHRoZW0gZm9yIHMzOTAsIHMzOTB4IG9yIGlhNjQKLS0gTWFrZSAvZXRjL215LmNuZiBj b25maWcobm9wbGFjZSkuIFNhbWUgZm9yIC9ldGMvbG9ncm90YXRlLmQvbXlzcWxkCi0KLSogVGh1 IEp1biAxNCAyMDAxIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gMy4y My4yOQotLSBlbmFibGUgaW5ub2RiCi0tIGVuYWJsZSBhc3NlbWJseSBhZ2FpbgotLSBkaXNhYmxl IHRlc3RzIGZvciBub3cuLi4KLQotKiBUdWUgTWF5IDE1IDIwMDEgVHJvbmQgRWl2aW5kIEdsb21z cmQgPHRlZ0ByZWRoYXQuY29tPgotLSAzLjIzLjM4Ci0tIERvbid0IHVzZSBCREIgb24gQWxwaGEg LSBubyBmYXN0IG11dGV4ZXMKLQotKiBUdWUgQXByIDI0IDIwMDEgVHJvbmQgRWl2aW5kIEdsb21z cmQgPHRlZ0ByZWRoYXQuY29tPgotLSAzLjIzLjM3Ci0tIEFkZCBfR05VX1NPVVJDRSB0byB0aGUg Y29tcGlsZSBmbGFncwotCi0qIFdlZCBNYXIgMjggMjAwMSBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8 dGVnQHJlZGhhdC5jb20+Ci0tIE1ha2UgaXQgb2Jzb2xldGUgb3VyIDYuMiBQb3dlclRvb2xzIHBh Y2thZ2VzCi0tIDMuMjMuMzYgYnVnZml4IHJlbGVhc2UgLSBmaXhlcyBzb21lIHNlY3VyaXR5IGlz c3VlcwotICB3aGljaCBkaWRuJ3QgYXBwbHkgdG8gb3VyIHN0YW5kYXJkIGNvbmZpZ3VyYXRpb24K LS0gTWFrZSAibWFrZSB0ZXN0IiBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzLCBleGNlcHQgb24g SUE2NAotICAoaXQgZmFpbHMgdGhlcmUpCi0KLSogVHVlIE1hciAyMCAyMDAxIFRyb25kIEVpdmlu ZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gMy4yMy4zNSBidWdmaXggcmVsZWFzZQotLSBE b24ndCBkZWxldGUgdGhlIG15c3FsIHVzZXIgb24gdW5pbnN0YWxsCi0KLSogVHVlIE1hciAxMyAy MDAxIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gMy4yMy4zNGEgYnVn Zml4IHJlbGVhc2UKLQotKiBXZWQgRmViICA3IDIwMDEgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRl Z0ByZWRoYXQuY29tPgotLSBhZGRlZCByZWFkbGluZS1kZXZlbCB0byBCdWlsZFJlcXVpcmVzOgot Ci0qIFR1ZSBGZWIgIDYgMjAwMSBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+ Ci0tIHNtYWxsIGkxOG4tZml4ZXMgdG8gaW5pdHNjcmlwdCAoYWN0aW9uIG5lZWRzICQpCi0KLSog VHVlIEphbiAzMCAyMDAxIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0g bWFrZSBpdCBzaHV0IGRvd24gYW5kIHJvdGF0ZSBsb2dzIHdpdGhvdXQgdXNpbmcgbXlzcWxhZG1p bgotICAoZnJvbSAjMjQ5MDkpCi0KLSogTW9uIEphbiAyOSAyMDAxIFRyb25kIEVpdmluZCBHbG9t c3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gY29uZmxpY3Qgd2l0aCAiTXlTUUwiCi0KLSogVHVlIEph biAyMyAyMDAxIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gaW1wcm92 ZSBnZXR0ZXh0aXppbmcKLQotKiBNb24gSmFuIDIyIDIwMDEgVHJvbmQgRWl2aW5kIEdsb21zcmQg PHRlZ0ByZWRoYXQuY29tPgotLSAzLjIzLjMyCi0tIGZpeCBsb2dyb3RhdGUgc2NyaXB0ICgjMjQ1 ODkpCi0KLSogV2VkIEphbiAxNyAyMDAxIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0 LmNvbT4KLS0gZ2V0dGV4dGl6ZQotLSBtb3ZlIHRoZSBpdGVtcyBpbiBSZXF1aXJlcyhwb3N0KTog dG8gUmVxdWlyZXM6IGluIHByZXBhcmF0aW9uCi0gIGZvciBhbiBlcnJhdGEgZm9yIDcuMCB3aGVu IDMuMjMuMzEgaXMgcmVsZWFzZWQKLS0gMy4yMy4zMQotCi0qIFR1ZSBKYW4gMTYgMjAwMSBUcm9u ZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIGFkZCB0aGUgbG9nIGZpbGUgdG8g dGhlIHJwbSBkYXRhYmFzZSwgYW5kIG1ha2UgaXQgMDY0MAotICAoIzI0MTE2KQotLSBhcyBhYm92 ZSBpbiBsb2dyb3RhdGUgc2NyaXB0Ci0tIGNoYW5nZXMgdG8gdGhlIGluaXQgc2VxdWVuY2UgLSBw dXQgbW9zdCBvZiB0aGUgZGF0YQotICBpbiAvZXRjL215LmNuZiBpbnN0ZWFkIG9mIGhhcmRjb2Rp bmcgaW4gdGhlIGluaXQgc2NyaXB0Ci0tIHVzZSAvdmFyL3J1bi9teXNxbGQvbXlzcWxkLnBpZCBp bnN0ZWFkIG9mCi0gIC92YXIvcnVuL215c3FsZC9waWQKLS0gdXNlIHN0YW5kYXJkIHNhZmVfbXlz cWxkCi0tIHNodXQgZG93biBjbGVhbmVyCi0KLSogTW9uIEphbiAwOCAyMDAxIFRyb25kIEVpdmlu ZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gMy4yMy4zMAotLSBkbyBhbiBleHBsaWNpdCBj aG1vZCBvbiAvdmFyL2xpYi9teXNxbCBpbiBwb3N0LCB0byBhdm9pZAotICBhbnkgcHJvYmxlbXMg d2l0aCBicm9rZW4gcGVybWlzc29ucy4gVGhlcmUgaXMgYSByZXBvcnQKLSAgb2Ygcm0gbm90IGNo YW5naW5nIHRoaXMgb24gaXRzIG93biAoIzIyOTg5KQotCi0qIE1vbiBKYW4gMDEgMjAwMSBUcm9u ZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIGJ6aXBwZWQgc291cmNlCi0tIGNo YW5nZWQgZnJvbSA4NSB0byA3OCBpbiBzdGFydHVwLCBzbyBpdCBzdGFydHMgYmVmb3JlCi0gIGFw YWNoZSAod2hpY2ggY2FuIHVzZSBtb2R1bGVzIHJlcXVpcmluZyBteXNxbCkKLQotKiBXZWQgRGVj IDI3IDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSAzLjIzLjI5 YQotCi0qIFR1ZSBEZWMgMTkgMjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5j b20+Ci0tIGFkZCByZXF1aXJlbWVudCBmb3IgbmV3IGxpYnN0ZGMrKywgYnVpbGQgZm9yIGVycmF0 YQotCi0qIE1vbiBEZWMgMTggMjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5j b20+Ci0tIDMuMjMuMjkKLQotKiBNb24gTm92IDI3IDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQg PHRlZ0ByZWRoYXQuY29tPgotLSAzLjIzLjI4IChnYW1tYSkKLS0gcmVtb3ZlIG9sZCBwYXRjaGVz LCBhcyB0aGV5IGFyZSBub3cgdXBzdHJlYW1lZAotCi0qIFR1ZSBOb3YgMTQgMjAwMCBUcm9uZCBF aXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIEFkZCBhIHJlcXVpcmVtZW50IGZvciBh IG5ldyBnbGliYyAoIzIwNzM1KQotLSBidWlsZCBvbiBJQTY0Ci0KLSogV2VkIE5vdiAgMSAyMDAw IFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gZGlzYWJsZSBtb3JlIGFz c2VtYmx5Ci0KLSogV2VkIE5vdiAgMSAyMDAwIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5j b20+Ci0tIGZpeCBteXNxbCBvbiBTUEFSQyAoIzIwMTI0KQotCi0qIFR1ZSBPY3QgMzEgMjAwMCBU cm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIDMuMjMuMjcKLQotKiBXZWQg T2N0IDI1IDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSBhZGQg cGF0Y2ggZm9yIGZpeGluZyBib2d1cyBhbGlhc2luZyBpbiBteXNxbCBmcm9tIEpha3ViLAotICB3 aGljaCBzaG91bGQgZml4ICMxODkwNSBhbmQgIzE4NjIwCi0KLSogTW9uIE9jdCAyMyAyMDAwIFRy b25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gY2hlY2sgZm9yIG5lZ2F0aXZl IG5pY2VuZXNzIHZhbHVlcywgYW5kIG5lZ2F0ZSBpdAotICBpZiBwcmVzZW50ICgjMTc4OTkpCi0t IHJlZGVmaW5lIG9wdGZsYWdzIG9uIElBMzIgRlRUQgotCi0qIFdlZCBPY3QgMTggMjAwMCBUcm9u ZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIDMuMjMuMjYsIHdoaWNoIGFtb25n IG90aGVyIGZpeGVzIG5vdyB1c2VzIG1rc3RlbXAoKQotICBpbnN0ZWFkIG9mIHRlbXBuYW0oKS4K LS0gcmV2ZXJ0IGNoYW5nZXMgbWFkZSB5ZXN0ZXJkYXksIHRoZSBwcm9ibGVtIGlzIG5vdwotICBp c29sYXRlZAotCi0qIFR1ZSBPY3QgMTcgMjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJl ZGhhdC5jb20+Ci0tIHVzZSB0aGUgY29tcGF0IEMrKyBjb21waWxlciBGVFRCLiBBcmdoLgotLSBh ZGQgcmVxdWlyZW1lbnQgb2YgbmN1cnNlczQgKHNlZSBhYm92ZSkKLQotKiBTdW4gT2N0IDAxIDIw MDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSAzLjIzLjI1Ci0tIGZp eCBzaHV0ZG93biBwcm9ibGVtICgjMTc5NTYpCi0KLSogVHVlIFNlcCAyNiAyMDAwIFRyb25kIEVp dmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gRG9uJ3QgdHJ5IHRvIGluY2x1ZGUgbm8t bG9uZ2VyLWV4aXN0aW5nIFBVQkxJQyBmaWxlCi0gIGFzIGRvYyAoIzE3NTMyKQotCi0qIFR1ZSBT ZXAgMTIgMjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIHJlbmFt ZSBjb25maWcgZmlsZSB0byAvZXRjL215LmNuZiwgd2hpY2ggaXMgd2hhdAotICBteXNxbGQgd2Fu dHMuLi4gZG9oLiAoIzE3NDMyKQotLSBpbmNsdWRlIGEgY2hhbmdlZCBzYWZlX215c3FsZCwgc28g dGhlIHBpZCBmaWxlIG9wdGlvbgotICB3b3Jrcy4KLS0gbWFrZSBteXNxbCBkaXIgd29ybGQgcmVh ZGFibGUgdG8gdGhleSBjYW4gYWNjZXNzIHRoZQotICBteXNxbCBzb2NrZXQuICgjMTc0MzIpCi0t IDMuMjMuMjQKLQotKiBXZWQgU2VwIDA2IDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0By ZWRoYXQuY29tPgotLSAzLjIzLjIzCi0KLSogU3VuIEF1ZyAyNyAyMDAwIFRyb25kIEVpdmluZCBH bG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gQWRkICJ8fCA6IiB0byBjb25kcmVzdGFydCB0byBh dm9pZCBub24temVybyBleGl0IGNvZGUKLQotKiBUaHUgQXVnIDI0IDIwMDAgVHJvbmQgRWl2aW5k IEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSBpdCdzIG15c3FsLmNvbSwgbm90IG15c3FsLm9y ZyBhbmQgdXNlIGNvcnJlY3QgcGF0aCB0bwotICBzb3VyY2UgKCMxNjgzMCkKLQotKiBXZWQgQXVn IDE2IDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSBzb3VyY2Ug ZmlsZSBmcm9tIC9ldGMvcmMuZCwgbm90IC9ldGMvcmQuZC4gRG9oLgotCi0qIFN1biBBdWcgMTMg MjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIGRvbid0IHJ1biBs ZGNvbmZpZyAtbiwgaXQgZG9lc24ndCB1cGRhdGUgbGQuc28uY2FjaGUKLSAgKCMxNjAzNCkKLS0g aW5jbHVkZSBzb21lIG1pc3NpbmcgYmluYXJpZXMKLS0gdXNlIHNhZmVfbXlzcWxkIHRvIHN0YXJ0 IHRoZSBzZXJ2ZXIgKHJlcXVlc3QgZnJvbQotICBteXNxbCBkZXZlbG9wZXJzKQotCi0qIFNhdCBB dWcgMDUgMjAwMCBCaWxsIE5vdHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLS0gY29uZHJl c3RhcnQgZml4ZXMKLQotKiBUdWUgQXVnIDAxIDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRl Z0ByZWRoYXQuY29tPgotLSAzLjIzLjIyLiBEaXNhYmxlIHRoZSBvbGQgcGF0Y2hlcywgdGhleSdy ZSBub3cgaW4uCi0KLSogVGh1IEp1bCAyNyAyMDAwIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdA cmVkaGF0LmNvbT4KLS0gYnVnZml4ZXMgaW4gdGhlIGluaXRzY3JpcHQKLS0gbW92ZSB0aGUgLnNv IGxpbmsgdG8gdGhlIGRldmVsIHBhY2thZ2UKLQotKiBXZWQgSnVsIDE5IDIwMDAgVHJvbmQgRWl2 aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSByZWJ1aWxkIGR1ZSB0byBnbGliYyBjaGFu Z2VzCi0KLSogVHVlIEp1bCAxOCAyMDAwIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0 LmNvbT4KLS0gZGlzYWJsZSBjb21waWxlciBwYXRjaAotLSBkb24ndCBpbmNsdWRlIGluZm8gZGly ZWN0b3J5IGZpbGUKLQotKiBNb24gSnVsIDE3IDIwMDAgVHJvbmQgRWl2aW5kIEdsb21zcmQgPHRl Z0ByZWRoYXQuY29tPgotLSBtb3ZlIGJhY2sgdG8gL2V0Yy9yYy5kL2luaXQuZAotCi0qIEZyaSBK dWwgMTQgMjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIG1vcmUg Y2xlYW51cHMgaW4gaW5pdHNjcmlwdAotCi0qIFRodSBKdWwgMTMgMjAwMCBUcm9uZCBFaXZpbmQg R2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIGFkZCBhIHBhdGNoIHRvIHdvcmsgYXJvdW5kIGNv bXBpbGVyIGJ1ZwotICAoZnJvbSBtb250eUBteXNxbC5jb20pCi0KLSogV2VkIEp1bCAxMiAyMDAw IFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gZG9uJ3QgYnVpbGQgdGhl IFNRTCBkYWVtb24gc3RhdGljYWxseSAoZ2xpYmMgcHJvYmxlbXMpCi0tIGZpeCB0aGUgbG9ncm90 YXRlIHNjcmlwdCAtIG9ubHkgZmx1c2ggbG9nIGlmIG15c3FsCi0gIGlzIHJ1bm5pbmcKLS0gY2hh bmdlIHRoZSByZWxvYWRpbmcgcHJvY2VkdXJlIAotLSByZW1vdmUgaWNvbiAtIGdsaW50IGlzIG9i c29sZXRlIGEgbG9uZyB0aW1lIGFnbwotCi0qIFdlZCBKdWwgMTIgMjAwMCBQcm9zcGVjdG9yIDxi dWd6aWxsYUByZWRoYXQuY29tPgotLSBhdXRvbWF0aWMgcmVidWlsZAotCi0qIE1vbiBKdWwgMTAg MjAwMCBUcm9uZCBFaXZpbmQgR2xvbXNyZCA8dGVnQHJlZGhhdC5jb20+Ci0tIHRyeSB0aGUgbmV3 IGNvbXBpbGVyIGFnYWluCi0tIGJ1aWxkIHRoZSBTUUwgZGFlbW9uIHN0YXRpY2FsbHkKLS0gYWRk IGNvbXBpbGUgdGltZSBzdXBwb3J0IGZvciBjb21wbGV4IGNoYXJzZXRzCi0tIGVuYWJsZSBhc3Nl bWJsZXIKLS0gbW9yZSBjbGVhbnVwcyBpbiBpbml0c2NyaXB0Ci0KLSogU3VuIEp1bCAwOSAyMDAw IFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gdXNlIG9sZCBDKysgY29t cGlsZXIKLS0gRXhjbHVzaXZlYXJjaCB4ODYKLQotKiBTYXQgSnVsIDA4IDIwMDAgVHJvbmQgRWl2 aW5kIEdsb21zcmQgPHRlZ0ByZWRoYXQuY29tPgotLSBtb3ZlIC5zbyBmaWxlcyB0byBkZXZlbCBw YWNrYWdlCi0tIG1vcmUgY2xlYW51cHMKLS0gZXhjbHVkZSBzcGFyYyBmb3Igbm93Ci0KLSogV2Vk IEp1bCAwNSAyMDAwIFRyb25kIEVpdmluZCBHbG9tc3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gMy4y My4yMQotLSByZW1vdmUgZmlsZSBmcm9tIC9ldGMvc3lzY29uZmlnCi0tIEZpeCBpbml0c2NyaXB0 IGEgYml0IC0gaW5pdGlhbGl6YXRpb24gb2YgZGF0YWJhc2VzIGRvZXNuJ3QKLSAgd29yayB5ZXQK LS0gc3BlY2lmeSB0aGUgY29ycmVjdCBsaWNlbnNlcwotLSBpbmNsdWRlIGEgL2V0Yy9teS5jb25m IChlbXB0eSwgRlRUQikKLS0gYWRkIGNvbmRpdGlvbmFsIHJlc3RhcnQgdG8gc3BlYyBmaWxlCi0K LSogU3VuIEp1bCAgMiAyMDAwIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+Ci0tIFJl YnVpbGQgd2l0aCBuZXcgQysrCi0KLSogRnJpIEp1biAzMCAyMDAwIFRyb25kIEVpdmluZCBHbG9t c3JkIDx0ZWdAcmVkaGF0LmNvbT4KLS0gdXBkYXRlIHRvIDMuMjMuMjAKLS0gdXNlICUlY29uZmln dXJlLCAlJW1ha2VpbnN0YWxsLCAlJXtfdG1wcGF0aH0sICUle19tYW5kaXJ9LAotICAlJXtfaW5m b2Rpcn0sIC9ldGMvaW5pdC5kCi0tIHJlbW92ZSB0aGUgYmVuY2ggcGFja2FnZQotLSBjaGFuZ2Ug c29tZSBvZiB0aGUgZGVzY3JpcHRpb25zIGEgbGl0dGxlIGJpdAotLSBmaXggdGhlIGluaXQgc2Ny aXB0Ci0tIHNvbWUgY29tcGlsZSBmaXhlcwotLSBzcGVjaWZ5IG15c3FsIHVzZXIKLS0gdXNlIG15 c3FsIHVpZCAyNyAocG9zdGdyZXNxbCBpcyAyNikKLS0gZG9uJ3QgYnVpbGQgb24gaWE2NAotCi0q IFNhdCBGZWIgMjYgMjAwMCBKb3MgVm9zIDxqb3NAeG9zLm5sPgotLSBWZXJzaW9uIDMuMjIuMzIg cmVsZWFzZSBYT1MuMSBmb3IgTGludVgvT1MgMS44LjAKLS0gVXBncmFkZSBmcm9tIHZlcnNpb24g My4yMi4yNyB0byAzLjIyLjMyLgotLSBEbyAibWFrZSBpbnN0YWxsIiBpbnN0ZWFkIG9mICJtYWtl IGluc3RhbGwtc3RyaXAiLCBiZWNhdXNlICJpbnN0YWxsIC1zIgotICBub3cgYXBwZWFycyB0byBm YWlsIG9uIHZhcmlvdXMgc2NyaXB0cy4gIEFmdGVyd2FyZHMsIHN0cmlwIG1hbnVhbGx5LgotLSBS ZW9yZ2FuaXplIHN1YnBhY2thZ2VzLCBhY2NvcmRpbmcgdG8gY29tbW9uIFJlZCBIYXQgcGFja2Fn ZXM6IHRoZSBjbGllbnQKLSAgcHJvZ3JhbSBhbmQgc2hhcmVkIGxpYnJhcnkgYmVjb21lIHRoZSBi YXNlIHBhY2thZ2UgYW5kIHRoZSBzZXJ2ZXIgYW5kCi0gIHNvbWUgYWNjb21wYW55aW5nIGZpbGVz IGFyZSBub3cgaW4gYSBzZXBhcmF0ZSBzZXJ2ZXIgcGFja2FnZS4gIFRoZQotICBzZXJ2ZXIgcGFj a2FnZSBpbXBsaWNpdGx5IHJlcXVpcmVzIHRoZSBiYXNlIHBhY2thZ2UgKHNoYXJlZCBsaWJyYXJ5 KSwKLSAgYnV0IHdlIGhhdmUgYWRkZWQgYSBtYW51YWwgcmVxdWlyZSB0YWcgYW55d2F5IChiZWNh dXNlIG9mIHRoZSBzaGFyZWQKLSAgY29uZmlnIGZpbGUsIGFuZCBtb3JlKS4KLS0gUmVuYW1lIHRo ZSBteXNxbC1iZW5jaG1hcmsgc3VicGFja2FnZSB0byBteXNxbC1iZW5jaC4KLQotKiBNb24gSmFu IDMxIDIwMDAgSm9zIFZvcyA8am9zQHhvcy5ubD4KLS0gVmVyc2lvbiAzLjIyLjI3IHJlbGVhc2Ug WE9TLjIgZm9yIExpbnVYL09TIDEuNy4xCi0tIEFkZCBwb3N0KHVuKWluc3RhbGwgc2NyaXB0cyBm b3IgdXBkYXRpbmcgbGQuc28uY29uZiAoY2xpZW50IHN1YnBhY2thZ2UpLgotCi0qIFN1biBOb3Yg MjEgMTk5OSBKb3MgVm9zIDxqb3NAeG9zLm5sPgotLSBWZXJzaW9uIDMuMjIuMjcgcmVsZWFzZSBY T1MuMSBmb3IgTGludVgvT1MgMS43LjAKLS0gSW5pdGlhbCB2ZXJzaW9uLgotLSBTb21lIGlkZWFz IGJvcnJvd2VkIGZyb20gUmVkIEhhdCBQb3dlcnRvb2xzIDYuMSwgYWx0aG91Z2ggdGhpcyBzcGVj Ci0gIGZpbGUgaXMgYSBmdWxsIHJld3JpdGUgZnJvbSBzY3JhdGNoLgoKZGlmZiAtLWdpdCBhL215 c3FsQC5zZXJ2aWNlLmluIGIvbXlzcWxALnNlcnZpY2UuaW4KZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IGI3YjJkNDguLjAwMDAwMDAKLS0tIGEvbXlzcWxALnNlcnZpY2UuaW4KKysrIC9k ZXYvbnVsbApAQCAtMSw2MiArMCwwIEBACi0jIEl0J3Mgbm90IHJlY29tbWVuZGVkIHRvIG1vZGlm eSB0aGlzIGZpbGUgaW4tcGxhY2UsIGJlY2F1c2UgaXQgd2lsbCBiZQotIyBvdmVyd3JpdHRlbiBk dXJpbmcgcGFja2FnZSB1cGdyYWRlcy4gIElmIHlvdSB3YW50IHRvIGN1c3RvbWl6ZSwgdGhlCi0j IGJlc3Qgd2F5IGlzIHRvIHVzZSBzeXN0ZW1jdGwgZWRpdDoKLSMKLSMgJCBzeXN0ZW1jdGwgZWRp dCBAREFFTU9OX05BTUVALnNlcnZpY2UKLSMKLSMgdGhpcyB3aWxsIGNyZWF0ZSBmaWxlCi0jCi0j ICAvZXRjL3N5c3RlbWQvc3lzdGVtL0BEQUVNT05fTkFNRUAuc2VydmljZS5kL292ZXJyaWRlLmNv bmYKLSMKLSMgd2hpY2ggYmUgcGFyc2VkIGFmdGVyIHRoZSBmaWxlIEBEQUVNT05fTkFNRUAuc2Vy dmljZSBpdHNlbGYgaXMgcGFyc2VkLgotIwotIyBGb3IgZXhhbXBsZSwgaWYgeW91IHdhbnQgdG8g aW5jcmVhc2UgbXlzcWwncyBvcGVuLWZpbGVzLWxpbWl0IHRvIDIwMDAwCi0jIGFkZCBmb2xsb3dp bmcgd2hlbiBlZGl0aW5nIHdpdGggY29tbWFuZCBhYm92ZToKLSMKLSMJW1NlcnZpY2VdCi0jCUxp bWl0Tk9GSUxFPTIwMDAwCi0jCi0jIE9yIGlmIHlvdSByZXF1aXJlIHRvIGV4ZWN1dGUgcHJlIGFu ZCBwb3N0IHNjcmlwdHMgaW4gdGhlIHVuaXQgZmlsZSBhcyByb290LCBzZXQKLSMgICAgICAgUGVy bWlzc2lvbnNTdGFydE9ubHk9dHJ1ZQotIwotIyBGb3IgbW9yZSBpbmZvIGFib3V0IGN1c3RvbSB1 bml0IGZpbGVzLCBzZWUgc3lzdGVtZC51bml0KDUpIG9yCi0jIGh0dHA6Ly9mZWRvcmFwcm9qZWN0 Lm9yZy93aWtpL1N5c3RlbWQjSG93X2RvX0lfY3VzdG9taXplX2FfdW5pdF9maWxlLjJGX2FkZF9h X2N1c3RvbV91bml0X2ZpbGUuM0YKLSMKLSMgRG9uJ3QgZm9yZ2V0IHRvIHJlbG9hZCBzeXN0ZW1k IGRhZW1vbiBhZnRlciB5b3UgY2hhbmdlIHVuaXQgY29uZmlndXJhdGlvbjoKLSMgcm9vdD4gc3lz dGVtY3RsIC0tc3lzdGVtIGRhZW1vbi1yZWxvYWQKLQotW1VuaXRdCi1EZXNjcmlwdGlvbj1ATklD RV9QUk9KRUNUX05BTUVAIEBNQUpPUl9WRVJTSU9OQC5ATUlOT1JfVkVSU0lPTkAgZGF0YWJhc2Ug c2VydmVyCi1BZnRlcj1zeXNsb2cudGFyZ2V0Ci1BZnRlcj1uZXR3b3JrLnRhcmdldAotCi1bU2Vy dmljZV0KLVR5cGU9bm90aWZ5Ci1Vc2VyPW15c3FsCi1Hcm91cD1teXNxbAotCi1FeGVjU3RhcnRQ cmU9QGxpYmV4ZWNkaXJAL215c3FsLWNoZWNrLXNvY2tldCAtLWRlZmF1bHRzLWdyb3VwLXN1ZmZp eD0uJUkKLUV4ZWNTdGFydFByZT1AbGliZXhlY2RpckAvbXlzcWwtcHJlcGFyZS1kYi1kaXIgLS1k ZWZhdWx0cy1ncm91cC1zdWZmaXg9LiVJICVuCi0jIE5vdGU6IHdlIHNldCAtLWJhc2VkaXIgdG8g cHJldmVudCBwcm9iZXMgdGhhdCBtaWdodCB0cmlnZ2VyIFNFTGludXggYWxhcm1zLAotIyBwZXIg YnVnICM1NDc0ODUKLUV4ZWNTdGFydD1AbGliZXhlY2RpckAvbXlzcWxkIC0tZGVmYXVsdHMtZ3Jv dXAtc3VmZml4PS4lSSAtLWJhc2VkaXI9QHByZWZpeEAKLUV4ZWNTdG9wUG9zdD1AbGliZXhlY2Rp ckAvbXlzcWwtd2FpdC1zdG9wIC0tZGVmYXVsdHMtZ3JvdXAtc3VmZml4PS4lSQotCi0jIEdpdmUg YSByZWFzb25hYmxlIGFtb3VudCBvZiB0aW1lIGZvciB0aGUgc2VydmVyIHRvIHN0YXJ0IHVwL3No dXQgZG93bgotVGltZW91dFNlYz0zMDAKLQotIyBQbGFjZSB0ZW1wIGZpbGVzIGluIGEgc2VjdXJl IGRpcmVjdG9yeSwgbm90IC90bXAKLVByaXZhdGVUbXA9dHJ1ZQotCi1SZXN0YXJ0PW9uLWZhaWx1 cmUKLQotUmVzdGFydFByZXZlbnRFeGl0U3RhdHVzPTEKLQotIyBTZXRzIG9wZW5fZmlsZXNfbGlt aXQKLUxpbWl0Tk9GSUxFID0gMTAwMDAKLQotIyBTZXQgZW52aXJvbWVudCB2YXJpYWJsZSBNWVNR TERfUEFSRU5UX1BJRC4gVGhpcyBpcyByZXF1aXJlZCBmb3IgU1FMIHJlc3RhcnQgY29tbWFuZC4K LUVudmlyb25tZW50PU1ZU1FMRF9QQVJFTlRfUElEPTEKLQotW0luc3RhbGxdCi1XYW50ZWRCeT1t dWx0aS11c2VyLnRhcmdldAoKZGlmZiAtLWdpdCBhL215c3FsX2NvbmZpZ19tdWx0aWxpYi5zaCBi L215c3FsX2NvbmZpZ19tdWx0aWxpYi5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDZjMmEyYi4uMDAwMDAwMAotLS0gYS9teXNxbF9jb25maWdfbXVsdGlsaWIuc2gKKysrIC9kZXYv bnVsbApAQCAtMSwyNiArMCwwIEBACi0jISAvYmluL3NoCi0jCi0jIFdyYXBwZXIgc2NyaXB0IGZv ciBteXNxbF9jb25maWcgdG8gc3VwcG9ydCBtdWx0aWxpYgotIwotIyBUaGlzIGNvbW1hbmQgcmVz cGVjdHMgc2V0YXJjaAotCi1iaXRzPSQocnBtIC0tZXZhbCAlX19pc2FfYml0cykKLQotY2FzZSAk Yml0cyBpbgotICAgIDMyfDY0KSBzdGF0dXM9a25vd24gOzsKLSAgICAgICAgKikgc3RhdHVzPXVu a25vd24gOzsKLWVzYWMKLQotaWYgWyAiJHN0YXR1cyIgPSAidW5rbm93biIgXSA7IHRoZW4KLSAg ICBlY2hvICIkMDogZXJyb3I6IGNvbW1hbmQgJ3JwbSAtLWV2YWwgJV9faXNhX2JpdHMnIHJldHVy bmVkIHVua25vd24gdmFsdWU6ICRiaXRzIgotICAgIGV4aXQgMQotZmkKLQotCi1pZiBbIC14IEBi aW5kaXJAL215c3FsX2NvbmZpZy0kYml0cyBdIDsgdGhlbgotICAgIEBiaW5kaXJAL215c3FsX2Nv bmZpZy0kYml0cyAiJEAiCi1lbHNlCi0gICAgZWNobyAiJDA6IGVycm9yOiBuZWVkZWQgYmluYXJ5 OiBAYmluZGlyQC9teXNxbF9jb25maWctJGJpdHMgaXMgbWlzc2luZyIKLSAgICBleGl0IDEKLWZp Ci0KCmRpZmYgLS1naXQgYS9yaC1za2lwcGVkLXRlc3RzLWxpc3QtYXJtLmxpc3QgYi9yaC1za2lw cGVkLXRlc3RzLWxpc3QtYXJtLmxpc3QKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU2 OWRlMjkuLjAwMDAwMDAKLS0tIGEvcmgtc2tpcHBlZC10ZXN0cy1saXN0LWFybS5saXN0CisrKyAv ZGV2L251bGwKCmRpZmYgLS1naXQgYS9yaC1za2lwcGVkLXRlc3RzLWxpc3QtYmFzZS5saXN0IGIv cmgtc2tpcHBlZC10ZXN0cy1saXN0LWJhc2UubGlzdApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDg1MTYwMi4uMDAwMDAwMAotLS0gYS9yaC1za2lwcGVkLXRlc3RzLWxpc3QtYmFzZS5s aXN0CisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotYXV0aF9zZWMua2V5cmluZ19maWxl X2RhdGFfcWEgICAgICAgICAgICAgIDogQlVHIzAgZmFpbGluZyBvbiBGMzIrCi1pbm5vZGIuYWx0 ZXJfa2lsbCAgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMCBmYWlsaW5nIG9uIEYzNCsK LW1haW4ubXRyX3VuaXRfdGVzdHMgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwIGZhaWxp bmcgb24gRjM1KwotCi0jIEV4cGVjdGVkIHRvIGZhaWwgaW4gRmVkb3JhIDMzKwotIyAgVExTIDEu MSBhbmQgb2xkZXIgaGFzIGJlZW4gZGlzYWJsZWQgYnkgc3lzdGVtLXdpZGUgY3J5cHRvLXBvbGlj aWVzIHNldHRpbmcKLSMgIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9DaGFuZ2VzL1N0 cm9uZ0NyeXB0b1NldHRpbmdzMgotIyAgVGVzdHMgcGFzcyB3aGVuIHVzaW5nIGxlZ2FjeSBjcnlw dG8tcG9saWNpZXMgc2VldGluZ3MKLXguY29ubmVjdGlvbl90bHNfdmVyc2lvbiAgICAgICAgICAg ICAgICAgICA6IEJVRyMwIEV4cGVjdGVkIHRvIGZhaWwgb24gRjMzKwotCi0jIFdlIGludGVudGlv bmFseSBjb21waWxlIGluIGEgZGlmZmVyZW50IGRlZmF1bHQgdmFsdWUgdGhhbiB0aGUgdXBzdHJl YW0KLSMgVGh1cyB0aGUgY29tbWFuZHMgZXhwZWN0ZWQgYnkgdXBzdHJlYW0gdG8gZmFpbCBzdWNj ZWVkcyBpbiBvdXIgYnVpbGRzCi0jIGFuZCB0aHVzIHRoZSB0ZXN0IGZhaWxzCi0jICAgQ21ha2Ug b3B0aW9uOiAtREVOQUJMRURfTE9DQUxfSU5GSUxFPU9OCi1tYWluLm15c3FsX2xvYWRfZGF0YV9s b2NhbF9kaXIgICAgICAgICAgICAgOiBCVUcjMCBJbnRlbnRpb25hbCBkaXZlcmdlbmNlIGZyb20g dGhlIHVwc3RyZWFtIGNvbXBpbGVkLWluIGRlZmF1bHQKLQotIyBGYWlsaW5nIHNpbmNlIE15U1FM IDguMC4yOQotbWFpbi5teXNxbHB1bXBfYnVncyAgICAgICAgICAgICAgICAgICAgICAgIDogQlVH IzAKLQotIyBGYWlsaW5nIHNpbmNlIDguMC4zNAotYmlubG9nLmJpbmxvZ19teXNxbGJpbmxvZ19s aW51eCAgICAgICAgICAgIDogQlVHIzAKLQotIyBGYWlsaW5nIHNpbmNlIDguMC4zNwotYXV0aF9z ZWMud2wxNTgwMF9jaXBoZXJzX3Rsc3YxMyAgICAgICAgICAgIDogQlVHIzAKLWJpbmxvZy5iaW5s b2dfbXlzcWxiaW5sb2dfbGludXggICAgICAgICAgICA6IEJVRyMwCi0KLW1haW4uYXJjaGl2ZSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi1tYWluLm15c3FscHVtcF9iYXNp Y19sejQgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotCi1jbG9uZS5sb2NhbF9kbWxfYXV0b190 dW5lICAgICAgICAgICAgICAgICAgOiBCVUcjMAotY2xvbmUucmVtb3RlX2RtbF9hdXRvX3R1bmUg ICAgICAgICAgICAgICAgIDogQlVHIzAKLQotaW5ub2RiLmNoZWNrX2liZF9maWxlc2l6ZV8xNmsg ICAgICAgICAgICAgIDogQlVHIzAKLQotcnBsX2d0aWQubXlzcWxkdW1wX2J1ZzMzNjMwMTk5ICAg ICAgICAgICAgIDogQlVHIzAKLXJwbC5ycGxfZXZlbnRsb2dfcHNpX21lbW9yeSAgICAgICAgICAg ICAgICA6IEJVRyMwCi1ycGwucnBsX3Rsc3YxMyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg OiBCVUcjMAotCi0jIEVMTiBzcGVjaWZpYwotIyBGYWlsaW5nIHNpbmNlIDguMC4zNywgb24geDg2 LTY0LXYzIG9ubHkKLW1haW4uc3VicXVlcnlfc2pfbWF0X2JrYV9ub2JubCAgICAgICAgICAgICA6 IEJVRyMwIGh0dHBzOi8vYnVnemlsbGEucmVkaGF0LmNvbS9zaG93X2J1Zy5jZ2k/aWQ9MjMxNzEz MgotbWFpbi5zdWJxdWVyeV9zal9hbGxfYmthX25vYm5sICAgICAgICAgICAgIDogQlVHIzAgaHR0 cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD0yMzE3MTMyCi0KLSMgRmFp bGluZyBzaW5jZSAyMDI1Ci1tYWluLnRpbWVfem9uZSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgOiBCVUcjMAotbWFpbi5iYXNlZGlyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDog QlVHIzAKLQotIyBGYWlsaW5nIHNpbmNlIDguMC40NAotbWFpbi5sb2NrX2JhY2t1cCAgICAgICAg ICAgICAgICAgICAgICAgICAgIDogQlVHIzAKLW1haW4uc2RpX3RhYmxlc3BhY2UgICAgICAgICAg ICAgICAgICAgICAgICA6IEJVRyMwCi0KLSMgRmFpbGluZyBzaW5jZSA4LjAuNDYKLWlubm9kYi5z ZGkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCgpkaWZmIC0tZ2l0IGEv cmgtc2tpcHBlZC10ZXN0cy1saXN0LXBwYy5saXN0IGIvcmgtc2tpcHBlZC10ZXN0cy1saXN0LXBw Yy5saXN0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlOTE3OTliLi4wMDAwMDAwCi0t LSBhL3JoLXNraXBwZWQtdGVzdHMtbGlzdC1wcGMubGlzdAorKysgL2Rldi9udWxsCkBAIC0xLDU3 ICswLDAgQEAKLSMgRmFpbHMgc2luY2UgOC4wLjMwCi1mZWRlcmF0ZWQuZmVkZXJhdGVkX3NlcnZl ciAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi1ycGwucnBsX2lubm9kYl9idWcyODQzMCAg ICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi0KLSMgRmFpbHMgc2luY2UgOC4wLjMxCi1t YWluLmxvY2tfbXVsdGlfYnVnMzg2OTEgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi0K LSMgRmFpbHMgc2luY2UgOC4wLjM0Ci1ycGxfZ3RpZC5ycGxfZ3RpZF9yb3dfZXZlbnRfbWF4X3Np emUgICAgICAgICAgICA6IEJVRyMwCi1ycGwucnBsX2NoYW5uZWxfY3JlYXRpb25fdW5kZXJfcmVw bGljYV9sb2FkICAgICA6IEJVRyMwCi0KLSMgRmFpbHMgc2luY2UgOC4wLjM3Ci1jbG9uZS5sb2Nh bF9kbWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi1jbG9uZS5yZW1v dGVfZG1sX25vX2JpbmxvZyAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi1jbG9uZS5yZW1v dGVfZG1sX3JlcGxhY2UgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi0KLWlubm9kYi5j cmVhdGVfaW5kZXhfd2l0aF9kaXNhYmxlX3NvcnRfZmlsZV9jYWNoZSAgOiBCVUcjMAotaW5ub2Ri X2Z0cy5idWdfMzQ4NDY4MjMgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotaW5ub2Ri X2dpcy5ydHJlZV9zZWFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotaW5ub2Ri Lmlubm9kYl9hdXRvZXh0ZW5kX2ltcG9ydF9leHBvcnQgICAgICAgICAgOiBCVUcjMAotaW5ub2Ri Lmluc3RhbnRfZGRsX3VwZ3JhZGVfcm9sbGJhY2sgICAgICAgICAgICAgOiBCVUcjMAotaW5ub2Ri LmxvYl9yZWNvdmVyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotaW5ub2Ri Lm11bHRpX3ZhbHVlX2Jhc2ljICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotaW5ub2Ri X3VuZG8udW5kb19zZXR0aW5ncyAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotCi1tYWlu Lm15c3FsX2NsaWVudF90ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi1tYWlu Lm15c3Fsc2xhcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi0KLXBh cnRzLnBhcnRpdGlvbl9yZXZlcnNlX3NjYW5faWNwICAgICAgICAgICAgICAgIDogQlVHIzAKLQot cnBsX2d0aWQucnBsX3BlcmZzY2hlbWFfYXBwbGllcl9zdGF0dXNfYnlfd29ya2VyX2d0aWRfc2tp cHBlZF90cmFuc2FjdGlvbl9tdHMgIDogQlVHIzAKLXJwbF9ub2d0aWQucnBsX2xvYWRkYXRhbG9j YWwgICAgICAgICAgICAgICAgICAgIDogQlVHIzAKLXJwbF9ub2d0aWQucnBsX3Jvd19ldmVudF9t YXhfc2l6ZSAgICAgICAgICAgICAgIDogQlVHIzAKLXJwbF9ub2d0aWQucnBsX3R5cGVjb252ICAg ICAgICAgICAgICAgICAgICAgICAgIDogQlVHIzAKLXJwbC5ycGxfbXlzcWxfdXBncmFkZSAgICAg ICAgICAgICAgICAgICAgICAgICAgIDogQlVHIzAKLXJwbC5ycGxfcGFyYWxsZWwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDogQlVHIzAKLXJwbC5ycGxfcHJpdl9jaGVja3NfdXNlcl9z dGFydF9pbmZvICAgICAgICAgICAgIDogQlVHIzAKLQotc3lzX3ZhcnMubXlpc2FtX2RhdGFfcG9p bnRlcl9zaXplX2Z1bmMgICAgICAgICAgOiBCVUcjMAoteC51cGdyYWRlICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotCi0jIFVuc3RhYmxlIGluIDguMC4zNwot bWFpbi5jb21wb25lbnQtdXBncmFkZSAgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot bWFpbi5jb3VudF9kaXN0aW5jdDIgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot bWFpbi5kZF91cGdyYWRlX25vbl9kZWJ1ZyAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot bWFpbi5kZF91cGdyYWRlX3BhcnRpdGlvbiAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot bWFpbi5kaXNhYmxlZF9zdG9yYWdlX2VuZ2luZXMgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot bWFpbi5wYXJ0aXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot bWFpbi5tdWx0aV91cGRhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAot Ci0jIEZhaWxzIHNpbmNlIDguMC40MgotaW5ub2RiX2Z0cy5vcHRpbWl6ZV9iaWcJCQkJOiBCVUcj MAotCi0jIEZhaWxzIHNpbmNlIDguMC40NAotbWFpbi5qb2luX2NhY2hlX2JubCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgOiBCVUcjMAotbWFpbi5teXNxbCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgOiBCVUcjMAotbWFpbi5qb2luX2NhY2hlX25vamIgICAgICAgICAg ICAgICAgICAgICAgICAgICAgOiBCVUcjMAoKZGlmZiAtLWdpdCBhL3JoLXNraXBwZWQtdGVzdHMt bGlzdC1zMzkwLmxpc3QgYi9yaC1za2lwcGVkLXRlc3RzLWxpc3QtczM5MC5saXN0CmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNGI2ZTUzLi4wMDAwMDAwCi0tLSBhL3JoLXNraXBwZWQt dGVzdHMtbGlzdC1zMzkwLmxpc3QKKysrIC9kZXYvbnVsbApAQCAtMSwyMyArMCwwIEBACi0jIEZh aWxzIHNpbmNlIDguMC4zNAotcnBsLnJwbF9jaGFubmVsX2NyZWF0aW9uX3VuZGVyX3JlcGxpY2Ff bG9hZCAgICAgICA6IEJVRyMwCi1ycGxfZ3RpZC5ycGxfcGVyZnNjaGVtYV9hcHBsaWVyX3N0YXR1 c19ieV93b3JrZXJfZ3RpZF9za2lwcGVkX3RyYW5zYWN0aW9uX210cyA6IEJVRyMwCi0KLSMgRmFp bHMgc2luY2UgOC4wLjM3Ci1pbm5vZGIubG9iX3JlY292ZXJ5ICAgICAgICAgICAgICAgICAgICAg IDogQlVHIzAKLXN5c192YXJzLm15aXNhbV9kYXRhX3BvaW50ZXJfc2l6ZV9mdW5jICAgOiBCVUcj MAotCi0jIEZhaWxzIHNpbmNlIDguMC40MgoteC5jb25uZWN0aW9uX25vdF9hbGl2ZQkJCTogQlVH IzAKLQotIyBGYWlscyBzaW5jZSA4LjAuNDYgLyA4LjQuOSAvIDkuNy4wIG9uIHMzOTB4Ci0jIEJ1 ZyMzOTEyOTE4MiB0aWdodGVuZWQgSW5ub0RCIHJvdyBzaXplIGVzdGltYXRpb24gaW4gZ2V0X2Zp ZWxkX21heF9zaXplKCkuCi0jIENvbWJpbmVkIHdpdGggemxpYi1uZyBERkxUQ0MgY29tcHJlc3NC b3VuZCgpIG92ZXJoZWFkIG9uIHMzOTB4LAotIyBjb21wcmVzc2VkIHRhYmxlcyB3aXRoIHNtYWxs IEtFWV9CTE9DS19TSVpFIGV4Y2VlZCByb3cgc2l6ZSBsaW1pdHMuCi1pbm5vZGIuemxvYl9nZW9t ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogQlVHIzAKLWlubm9kYl96aXAuNGsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgOiBCVUcjMAotaW5ub2RiX3ppcC44ayAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA6IEJVRyMwCi1pbm5vZGJfemlwLmJ1ZzUyNzQ1ICAgICAgICAg ICAgICAgICAgICAgICAgIDogQlVHIzAKLWlubm9kYl96aXAuaW5kZXhfbGFyZ2VfcHJlZml4ICAg ICAgICAgICAgICAgOiBCVUcjMAotaW5ub2RiX3ppcC5pbmRleF9sYXJnZV9wcmVmaXhfNGsgICAg ICAgICAgICA6IEJVRyMwCi1pbm5vZGJfemlwLmluZGV4X2xhcmdlX3ByZWZpeF84ayAgICAgICAg ICAgIDogQlVHIzAKLWlubm9kYl96aXAucHJlZml4X2luZGV4X2xpZnRlZGxpbWl0ICAgICAgICAg OiBCVUcjMAoKZGlmZiAtLWdpdCBhL3JwbWluc3BlY3QueWFtbCBiL3JwbWluc3BlY3QueWFtbApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzkyNjc2Yy4uMDAwMDAwMAotLS0gYS9ycG1p bnNwZWN0LnlhbWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi0jIFNldCB1cCBnbG9i YWwgaWdub3JlIGxpc3QKLWlnbm9yZToKLSAgICAjIG15c3FsLXRlc3QvIGRpcmVjdG9yeSBjb250 YWlucyBhbiBleHRlbnNpdmUgdGVzdC1zdWl0ZSBvZiBhYm91dCAyMC4wMDAgZmlsZXM7Ci0gICAg IyBJdCBpcyB2ZXJ5IHRpbWUgY29uc3VtaW5nIHRvIGJlIGZ1bGx5IGFuYWx5c2VkIGFuZCB0aGUg cmVzdWx0cyBhcmVuJ3QgdXNlZnVsIGFueXdheQotICAgICMgSXQgaXMgZXhwZWN0ZWQgdGhlIHRl c3RzIGNoYW5nZSBkdXJpbmcgcmViYXNlcywgYXMgdGhlIHVuZGVybHlpbmcgZnVuY3Rpb25hbGl0 eSB0aGUgdGVzdCBldm9sdmUKLSAgICAjIFNvbWUgb2YgdGhlIHRlc3RzIGNvbnRhaW4gYnJva2Vu IG9yIHByb2JsZW1hdGljIGNvZGUsIGhvd2V2ZXIgdGhhdCBpcyBvbiBwdXJwb3NlCi0gICAgLSAv dXNyL3NoYXJlL215c3FsLXRlc3QvCi0KLWJhZGZ1bmNzOgotICBpZ25vcmU6Ci0gICAgIyB1ZGZf ZXhhbXBsZS5zbyBjYW4gYmUgaWdub3JlZCwgYXMgaXQgaXMgYW4gZXhhbXBsZSBvZiBob3cgdG8g d3JpdGUgbG9hZGFibGUgZnVuY3Rpb25zCi0gICAgIyBMb2FkYWJsZSBmdW5jdGlvbnMgd2VyZSBm b3JtZXJseSBrbm93IGFzIFVERiAoVXNlciBEZWZpbmVkIEZ1bmN0aW9ucykuCi0gICAgLSAvdXNy L2xpYjY0L215c3FsL3BsdWdpbi91ZGZfZXhhbXBsZS5zbwoKZGlmZiAtLWdpdCBhL3NlcnZlci5j bmYuaW4gYi9zZXJ2ZXIuY25mLmluCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3Mjdj YTUyLi4wMDAwMDAwCi0tLSBhL3NlcnZlci5jbmYuaW4KKysrIC9kZXYvbnVsbApAQCAtMSwxOCAr MCwwIEBACi0jCi0jIFRoaXMgZ3JvdXAgYXJlIHJlYWQgYnkgTXlTUUwgc2VydmVyLgotIyBVc2Ug aXQgZm9yIG9wdGlvbnMgdGhhdCBvbmx5IHRoZSBzZXJ2ZXIgKGJ1dCBub3QgY2xpZW50cykgc2hv dWxkIHNlZQotIwotIyBGb3IgYWR2aWNlIG9uIGhvdyB0byBjaGFuZ2Ugc2V0dGluZ3MgcGxlYXNl IHNlZQotIyBodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuL2VuL3NlcnZlci1jb25maWd1 cmF0aW9uLWRlZmF1bHRzLmh0bWwKLQotIyBTZXR0aW5ncyB1c2VyIGFuZCBncm91cCBhcmUgaWdu b3JlZCB3aGVuIHN5c3RlbWQgaXMgdXNlZC4KLSMgSWYgeW91IG5lZWQgdG8gcnVuIG15c3FsZCB1 bmRlciBhIGRpZmZlcmVudCB1c2VyIG9yIGdyb3VwLAotIyBjdXN0b21pemUgeW91ciBzeXN0ZW1k IHVuaXQgZmlsZSBmb3IgbXlzcWxkIGFjY29yZGluZyB0byB0aGUKLSMgaW5zdHJ1Y3Rpb25zIGlu IGh0dHA6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL1N5c3RlbWQKLQotW215c3FsZF0KLWRhdGFk aXI9QE1ZU1FMX0RBVEFESVJACi1zb2NrZXQ9QE1ZU1FMX1VOSVhfQUREUkAKLWxvZy1lcnJvcj1A TE9HRklMRV9SUE1ACi1waWQtZmlsZT1AUElEX0ZJTEVfRElSQC9AREFFTU9OX05PX1BSRUZJWEAu cGlkCi0KCmRpZmYgLS1naXQgYS9zb3VyY2VzIGIvc291cmNlcwpkZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggZjEyZGUwNS4uMDAwMDAwMAotLS0gYS9zb3VyY2VzCisrKyAvZGV2L251bGwK QEAgLTEgKzAsMCBAQAotU0hBNTEyIChteXNxbC1ib29zdC04LjAuNDYudGFyLmd6KSA9IGI5MGVl OWFkMDNkZGM0NzMyZDI5NDJhZTQ5MTgwMTBhN2MzOThiMjA4MGYwZTExNzUwZGYwZTYxZWMwN2Ex N2JmMjZjZTZhZWE4ODA2NzI5MjUwYjAxNTYwN2UzOThhODYwODM2M2VkMDgzMGY0ZjYxM2ZhZmQw OWRiYWI3NDEyCg==