From: Date: August 7 2008 8:38pm Subject: bzr commit into mysql-6.0-bugteam branch (marc.alff:2744) Bug#10143 Bug#21226 Bug#29738 Bug#31302 Bug#33002 Bug#33053 Bug#34159 Bug#36777 Bug#37003 Bug#37662 Bug#37781 Bug#37843 Bug#38191 WL#3288 WL#4164 WL#4284 WL#4300 List-Archive: http://lists.mysql.com/commits/51138 X-Bug: 10143, 21226, 29738, 31302, 33002, 33053, 34159, 36777, 37003, 37662, 37781, 37843, 38191 Message-Id: <20080807183819.0DBF61DC419@lambda.WEBLAB> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 I0F0IGZpbGU6Ly8vaG9tZS9tYWxmZi9CWlItVFJFRS9teXNxbC02LjAtMzgyOTYvCgogMjc0NCBN YXJjIEFsZmYJMjAwOC0wOC0wNyBbbWVyZ2VdCiAgICAgIE1lcmdlIG15c3FsLTYuMC1idWd0ZWFt IC0+IGxvY2FsIGJ1Z2ZpeCBicmFuY2gKYWRkZWQ6CiAgbXlzcWwtdGVzdC9pbmNsdWRlL2ltcGxp Y2l0X2NvbW1pdF9oZWxwZXIuaW5jCiAgbXlzcWwtdGVzdC9yL2ltcGxpY2l0X2NvbW1pdC5yZXN1 bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl90YWJsZXNwYWNlX3ByaXYucmVz dWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fdGFibGVzcGFjZV9wcml2LnRl c3QKICBteXNxbC10ZXN0L3QvaW1wbGljaXRfY29tbWl0LnRlc3QKbW9kaWZpZWQ6CiAgLmJ6ci1t eXNxbC9kZWZhdWx0LmNvbmYKICBCVUlMRC9TRVRVUC5zaAogIGNsaWVudC9NYWtlZmlsZS5hbQog IGNsaWVudC9teXNxbHRlc3QuYwogIGV4dHJhL2NvbXBfZXJyLmMKICBleHRyYS9wZXJyb3IuYwog IGluY2x1ZGUvbXlfaGFuZGxlci5oCiAgaW5jbHVkZS9teV9zeXMuaAogIGluY2x1ZGUvbXlpc2Ft LmgKICBpbmNsdWRlL215aXNhbWNoay5oCiAgbXlzcWwtdGVzdC9pbmNsdWRlL2NvbW1pdC5pbmMK ICBteXNxbC10ZXN0L3IvYmlubG9nX2luZGV4LnJlc3VsdAogIG15c3FsLXRlc3Qvci9jb21taXRf MWlubm9kYi5yZXN1bHQKICBteXNxbC10ZXN0L3IvY3R5cGVfbGRtbC5yZXN1bHQKICBteXNxbC10 ZXN0L3IvY3R5cGVfdXRmOC5yZXN1bHQKICBteXNxbC10ZXN0L3IvZGF0ZV9mb3JtYXRzLnJlc3Vs dAogIG15c3FsLXRlc3Qvci9mdW5jX2NvbXByZXNzLnJlc3VsdAogIG15c3FsLXRlc3Qvci9mdW5j X2RpZ2VzdC5yZXN1bHQKICBteXNxbC10ZXN0L3IvZnVuY19lbmNyeXB0LnJlc3VsdAogIG15c3Fs LXRlc3Qvci9mdW5jX2VuY3J5cHRfbm9zc2wucmVzdWx0CiAgbXlzcWwtdGVzdC9yL2Z1bmNfaWYu cmVzdWx0CiAgbXlzcWwtdGVzdC9yL2Z1bmNfbWF0aC5yZXN1bHQKICBteXNxbC10ZXN0L3IvZnVu Y19zdHIucmVzdWx0CiAgbXlzcWwtdGVzdC9yL2dyYW50LnJlc3VsdAogIG15c3FsLXRlc3Qvci9t ZXJnZS5yZXN1bHQKICBteXNxbC10ZXN0L3IvbXlpc2FtLXN5c3RlbS5yZXN1bHQKICBteXNxbC10 ZXN0L3IvcGVycm9yLnJlc3VsdAogIG15c3FsLXRlc3Qvci9wcy5yZXN1bHQKICBteXNxbC10ZXN0 L3Ivc3RyaWN0LnJlc3VsdAogIG15c3FsLXRlc3Qvci9zdWJzZWxlY3QucmVzdWx0CiAgbXlzcWwt dGVzdC9yL3N1YnNlbGVjdF9ub19tYXQucmVzdWx0CiAgbXlzcWwtdGVzdC9yL3N1YnNlbGVjdF9u b19vcHRzLnJlc3VsdAogIG15c3FsLXRlc3Qvci9zdWJzZWxlY3Rfbm9fc2VtaWpvaW4ucmVzdWx0 CiAgbXlzcWwtdGVzdC9yL3N5c3RlbV9teXNxbF9kYi5yZXN1bHQKICBteXNxbC10ZXN0L3IvdHJp Z2dlci5yZXN1bHQKICBteXNxbC10ZXN0L3IvdHlwZV9uZXdkZWNpbWFsLnJlc3VsdAogIG15c3Fs LXRlc3Qvci92aWV3LnJlc3VsdAogIG15c3FsLXRlc3Qvc3RkX2RhdGEvSW5kZXgueG1sCiAgbXlz cWwtdGVzdC9zdWl0ZS9mYWxjb24vci9mYWxjb25fYnVnXzIyOTcyLnJlc3VsdAogIG15c3FsLXRl c3Qvc3VpdGUvZnVuY3NfMS9yL2ZhbGNvbl9mdW5jX3ZpZXcucmVzdWx0CiAgbXlzcWwtdGVzdC9z dWl0ZS9mdW5jc18xL3IvZmFsY29uX3N0b3JlZHByb2MucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0 ZS9mdW5jc18xL3IvZmFsY29uX3RyaWdfMDMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5j c18xL3IvZmFsY29uX3RyaWdfMDNlLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9y L2lubm9kYl9mdW5jX3ZpZXcucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaW5u b2RiX3N0b3JlZHByb2MucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaW5ub2Ri X3RyaWdfMDMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaW5ub2RiX3RyaWdf MDNlLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2lzX2NvbHVtbnNfbXlzcWwu cmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaXNfdXNlcl9wcml2aWxlZ2VzLnJl c3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL21lbW9yeV9mdW5jX3ZpZXcucmVzdWx0 CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbWVtb3J5X3N0b3JlZHByb2MucmVzdWx0CiAg bXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbWVtb3J5X3RyaWdfMDMucmVzdWx0CiAgbXlzcWwt dGVzdC9zdWl0ZS9mdW5jc18xL3IvbWVtb3J5X3RyaWdfMDNlLnJlc3VsdAogIG15c3FsLXRlc3Qv c3VpdGUvZnVuY3NfMS9yL215aXNhbV9mdW5jX3ZpZXcucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0 ZS9mdW5jc18xL3IvbXlpc2FtX3N0b3JlZHByb2MucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9m dW5jc18xL3IvbXlpc2FtX3RyaWdfMDMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18x L3IvbXlpc2FtX3RyaWdfMDNlLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL25k Yl9mdW5jX3ZpZXcucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfYmFzaWMucmVz dWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfYml0ZmllbGQucmVzdWx0CiAgbXlzcWwt dGVzdC9zdWl0ZS9uZGIvci9uZGJfZGRfZGRsLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvbmRi L3IvbmRiX2dpcy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL25kYi9yL25kYl9tdWx0aV9yb3cu cmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfcGFydGl0aW9uX2Vycm9yLnJlc3Vs dAogIG15c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRiX3NpbmdsZV91c2VyLnJlc3VsdAogIG15c3Fs LXRlc3Qvc3VpdGUvbmRiL3QvbmRiX2RkX2RkbC50ZXN0CiAgbXlzcWwtdGVzdC9zdWl0ZS9ycGwv ci9ycGxfRUVfZXJyLnJlc3VsdAogIG15c3FsLXRlc3QvdC9jdHlwZV9sZG1sLnRlc3QKICBteXNx bC10ZXN0L3QvZnVuY19pZi50ZXN0CiAgbXlzcWwtdGVzdC90L3BlcnJvci50ZXN0CiAgbXlzcWwt dGVzdC90L3N1YnNlbGVjdC50ZXN0CiAgbXlzeXMvY2hhcnNldC5jCiAgc2NyaXB0cy9teXNxbF9z eXN0ZW1fdGFibGVzLnNxbAogIHNjcmlwdHMvbXlzcWxfc3lzdGVtX3RhYmxlc19kYXRhLnNxbAog IHNjcmlwdHMvbXlzcWxfc3lzdGVtX3RhYmxlc19maXguc3FsCiAgc3FsL2V2ZW50cy5jYwogIHNx bC9maWVsZC5jYwogIHNxbC9oYV9uZGJjbHVzdGVyLmNjCiAgc3FsL2hhX25kYmNsdXN0ZXJfYmlu bG9nLmNjCiAgc3FsL2hhbmRsZXIuY2MKICBzcWwvaGFuZGxlci5oCiAgc3FsL2l0ZW0uY2MKICBz cWwvaXRlbV9jbXBmdW5jLmNjCiAgc3FsL2l0ZW1fZnVuYy5jYwogIHNxbC9pdGVtX3N0cmZ1bmMu Y2MKICBzcWwvaXRlbV9zdWJzZWxlY3QuY2MKICBzcWwvaXRlbV90aW1lZnVuYy5jYwogIHNxbC9s b2cuY2MKICBzcWwvbG9nX2V2ZW50LmNjCiAgc3FsL21kbC5jYwogIHNxbC9teV9kZWNpbWFsLmNj CiAgc3FsL215c3FsX3ByaXYuaAogIHNxbC9zZXRfdmFyLmNjCiAgc3FsL3NoYXJlL2Vycm1zZy50 eHQKICBzcWwvc3BfaGVhZC5jYwogIHNxbC9zcWxfYWNsLmNjCiAgc3FsL3NxbF9hY2wuaAogIHNx bC9zcWxfY2FjaGUuY2MKICBzcWwvc3FsX2NsYXNzLmNjCiAgc3FsL3NxbF9jbGFzcy5oCiAgc3Fs L3NxbF9kZWxldGUuY2MKICBzcWwvc3FsX3BhcnNlLmNjCiAgc3FsL3NxbF9zZWxlY3QuY2MKICBz cWwvc3FsX3NlbGVjdC5oCiAgc3FsL3NxbF9zaG93LmNjCiAgc3FsL3NxbF90YWJsZS5jYwogIHNx bC9zcWxfdGFibGVzcGFjZS5jYwogIHNxbC9zcWxfeWFjYy55eQogIHNxbC90YWJsZS5jYwogIHNx bC91bmlyZWcuY2MKICBzdG9yYWdlL215aXNhbS9mdF9zdGF0aWMuYwogIHN0b3JhZ2UvbXlpc2Ft L21pX29wZW4uYwogIHN0b3JhZ2UvbXlpc2FtbXJnL2hhX215aXNhbW1yZy5jYwogIHN0cmluZ3Mv Y29uZl90b19zcmMuYwogIHRlc3RzL215c3FsX2NsaWVudF90ZXN0LmMKCj09PSBtb2RpZmllZCBm aWxlICcuYnpyLW15c3FsL2RlZmF1bHQuY29uZicKLS0tIGEvLmJ6ci1teXNxbC9kZWZhdWx0LmNv bmYJMjAwOC0wNy0xNSAyMDowMjoyOSArMDAwMAorKysgYi8uYnpyLW15c3FsL2RlZmF1bHQuY29u ZgkyMDA4LTA4LTA3IDAzOjA1OjMzICswMDAwCkBAIC0xLDUgKzEsNSBAQAogW01ZU1FMXQ0KLXRy ZWVfbG9jYXRpb24gPSBienIrc3NoOi8vYmstaW50ZXJuYWwubXlzcWwuY29tL2J6cnJvb3Qvc2Vy dmVyL215c3FsLTYuMC1iYWNrdXAvDQordHJlZV9sb2NhdGlvbiA9IGJ6citzc2g6Ly9iay1pbnRl cm5hbC5teXNxbC5jb20vYnpycm9vdC9zZXJ2ZXIvbXlzcWwtNi4wLWJ1Z3RlYW0vDQogcG9zdF9j b21taXRfdG8gPSBjb21taXRzQGxpc3RzLm15c3FsLmNvbQ0KIHBvc3RfcHVzaF90byA9IGNvbW1p dHNAbGlzdHMubXlzcWwuY29tDQotdHJlZV9uYW1lID0gbXlzcWwtNi4wLWJhY2t1cA0KK3RyZWVf bmFtZSA9IG15c3FsLTYuMC1idWd0ZWFtDQoKPT09IG1vZGlmaWVkIGZpbGUgJ0JVSUxEL1NFVFVQ LnNoJwotLS0gYS9CVUlMRC9TRVRVUC5zaAkyMDA4LTA2LTI4IDExOjAwOjU5ICswMDAwCisrKyBi L0JVSUxEL1NFVFVQLnNoCTIwMDgtMDctMjUgMTc6MjE6NTUgKzAwMDAKQEAgLTEwOSw3ICsxMDks NyBAQCBpZiBbICJ4JHdhcm5pbmdfbW9kZSIgIT0gInhwZWRhbnRpYyIgXTsgCiBlbHNlCiAgIHdh cm5pbmdzPSItVyAtV2FsbCAtYW5zaSAtcGVkYW50aWMgLVduby1sb25nLWxvbmcgLVduby11bnVz ZWQgLURfUE9TSVhfU09VUkNFIgogICBjX3dhcm5pbmdzPSIkd2FybmluZ3MiCi0gIGN4eF93YXJu aW5ncz0iJHdhcm5pbmdzIC1zdGQ9YysrOTgiCisgIGN4eF93YXJuaW5ncz0iJHdhcm5pbmdzIgog IyBOT1RFOiB3YXJuaW5nIG1vZGUgc2hvdWxkIG5vdCBpbmZsdWVuY2Ugb3B0aW1pemUvZGVidWcg bW9kZS4KICMgUGxlYXNlIGZlZWwgZnJlZSB0byBhZGQgYSBzZXBhcmF0ZSBvcHRpb24gaWYgeW91 IGRvbid0IGZlZWwgaXQncyBhbiBvdmVya2lsbC4KICAgZGVidWdfZXh0cmFfY2ZsYWdzPSItTzAi Cgo9PT0gbW9kaWZpZWQgZmlsZSAnY2xpZW50L01ha2VmaWxlLmFtJwotLS0gYS9jbGllbnQvTWFr ZWZpbGUuYW0JMjAwOC0wNi0yMCAxMTo0MDowMSArMDAwMAorKysgYi9jbGllbnQvTWFrZWZpbGUu YW0JMjAwOC0wOC0wNiAxNDozOTowMyArMDAwMApAQCAtODgsMTEgKzg4LDEyIEBAIG15c3Fsc2xh cF9MREFERCA9CQkkKENYWExERkxBR1MpICQoQ0xJRU4KIAogbXlzcWx0ZXN0X1NPVVJDRVM9CQlt eXNxbHRlc3QuYwogbXlzcWx0ZXN0X0NGTEFHUz0JCS1EVEhSRUFEIC1VVU5ERUZfVEhSRUFEU19I QUNLCi1teXNxbHRlc3RfTERBREQgPQkJJChDWFhMREZMQUdTKSAkKENMSUVOVF9USFJFQURfTElC UykgXAorbXlzcWx0ZXN0X0xEQUREID0JCSQoQ1hYTERGTEFHUykgXAogCQkJCUBDTElFTlRfRVhU UkFfTERGTEFHU0AgXAogCQkJCSQoTElCTVlTUUxDTElFTlRfTEEpIFwKIAkJCQkkKHRvcF9idWls ZGRpcikvbXlzeXMvbGlibXlzeXMuYSBcCi0JCQkJJCh0b3BfYnVpbGRkaXIpL3JlZ2V4L2xpYnJl Z2V4LmEKKwkJCQkkKHRvcF9idWlsZGRpcikvcmVnZXgvbGlicmVnZXguYSBcCisJCQkJJChDTElF TlRfVEhSRUFEX0xJQlMpCiAKIG15c3FsX3VwZ3JhZGVfU09VUkNFUz0gICAgICAgICAgbXlzcWxf dXBncmFkZS5jIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0b3Bfc3JjZGly KS9teXN5cy9teV9nZXRwYWdlc2l6ZS5jCgo9PT0gbW9kaWZpZWQgZmlsZSAnY2xpZW50L215c3Fs dGVzdC5jJwotLS0gYS9jbGllbnQvbXlzcWx0ZXN0LmMJMjAwOC0wNy0yNCAwODoyNjoyNCArMDAw MAorKysgYi9jbGllbnQvbXlzcWx0ZXN0LmMJMjAwOC0wOC0wNSAyMzoyNjoxOCArMDAwMApAQCAt Mzg2MSwxMiArMzg2MSwxMyBAQCB0eXBlZGVmIHN0cnVjdAogewogICBjb25zdCBjaGFyICpuYW1l OwogICB1aW50ICAgICAgICBjb2RlOworICBjb25zdCBjaGFyICp0ZXh0OwogfSBzdF9lcnJvcjsK IAogc3RhdGljIHN0X2Vycm9yIGdsb2JhbF9lcnJvcl9uYW1lc1tdID0KIHsKICNpbmNsdWRlIDxt eXNxbGRfZXJuYW1lLmg+Ci0gIHsgMCwgMCB9CisgIHsgMCwgMCwgMCB9CiB9OwogCiB1aW50IGdl dF9lcnJjb2RlX2Zyb21fbmFtZShjaGFyICplcnJvcl9uYW1lLCBjaGFyICplcnJvcl9lbmQpCgo9 PT0gbW9kaWZpZWQgZmlsZSAnZXh0cmEvY29tcF9lcnIuYycKLS0tIGEvZXh0cmEvY29tcF9lcnIu YwkyMDA4LTA0LTA5IDAwOjU2OjQ5ICswMDAwCisrKyBiL2V4dHJhL2NvbXBfZXJyLmMJMjAwOC0w OC0wNiAxOToyMDo1NyArMDAwMApAQCAtMTk5LDExICsxOTksMzMgQEAgaW50IG1haW4oaW50IGFy Z2MsIGNoYXIgKmFyZ3ZbXSkKIH0KIAogCitzdGF0aWMgdm9pZCBwcmludF9lc2NhcGVkX3N0cmlu ZyhGSUxFICpmLCBjb25zdCBjaGFyICpzdHIpCit7CisgIGNvbnN0IGNoYXIgKnRtcCA9IHN0cjsK KworICB3aGlsZSAodG1wWzBdICE9IDApCisgIHsKKyAgICBzd2l0Y2ggKHRtcFswXSkKKyAgICB7 CisgICAgICBjYXNlICdcXCc6IGZwcmludGYoZiwgIlxcXFwiKTsgYnJlYWs7CisgICAgICBjYXNl ICdcJyc6IGZwcmludGYoZiwgIlxcXCciKTsgYnJlYWs7CisgICAgICBjYXNlICdcIic6IGZwcmlu dGYoZiwgIlxcXCIiKTsgYnJlYWs7CisgICAgICBjYXNlICdcbic6IGZwcmludGYoZiwgIlxcbiIp OyBicmVhazsKKyAgICAgIGNhc2UgJ1xyJzogZnByaW50ZihmLCAiXFxyIik7IGJyZWFrOworICAg ICAgZGVmYXVsdDogZnByaW50ZihmLCAiJWMiLCB0bXBbMF0pOworICAgIH0KKyAgICB0bXArKzsK KyAgfQorfQorCisKIHN0YXRpYyBpbnQgY3JlYXRlX2hlYWRlcl9maWxlcyhzdHJ1Y3QgZXJyb3Jz ICplcnJvcl9oZWFkKQogewogICB1aW50IGVyX2xhc3Q7CiAgIEZJTEUgKmVyX2RlZmluZWYsICpz cWxfc3RhdGVmLCAqZXJfbmFtZWY7CiAgIHN0cnVjdCBlcnJvcnMgKnRtcF9lcnJvcjsKKyAgc3Ry dWN0IG1lc3NhZ2UgKmVyX21zZzsKKyAgY29uc3QgY2hhciAqZXJfdGV4dDsKICAgREJVR19FTlRF UigiY3JlYXRlX2hlYWRlcl9maWxlcyIpOwogICBMSU5UX0lOSVQoZXJfbGFzdCk7CiAKQEAgLTI0 NSw4ICsyNjcsMTIgQEAgc3RhdGljIGludCBjcmVhdGVfaGVhZGVyX2ZpbGVzKHN0cnVjdCBlcgog CSAgICAgICJ7ICUtNDBzLFwiJXNcIiwgXCIlc1wiIH0sXG4iLCB0bXBfZXJyb3ItPmVyX25hbWUs CiAJICAgICAgdG1wX2Vycm9yLT5zcWxfY29kZTEsIHRtcF9lcnJvci0+c3FsX2NvZGUyKTsKICAg ICAvKmdlbmVyYXRpbmcgZXJfbmFtZSBmaWxlICovCi0gICAgZnByaW50Zihlcl9uYW1lZiwgInsg XCIlc1wiLCAlZCB9LFxuIiwgdG1wX2Vycm9yLT5lcl9uYW1lLAorICAgIGVyX21zZz0gZmluZF9t ZXNzYWdlKHRtcF9lcnJvciwgZGVmYXVsdF9sYW5ndWFnZSwgRkFMU0UpOworICAgIGVyX3RleHQg PSAoZXJfbXNnID8gZXJfbXNnLT50ZXh0IDogIiIpOworICAgIGZwcmludGYoZXJfbmFtZWYsICJ7 IFwiJXNcIiwgJWQsIFwiIiwgdG1wX2Vycm9yLT5lcl9uYW1lLAogCSAgICB0bXBfZXJyb3ItPmRf Y29kZSk7CisgICAgcHJpbnRfZXNjYXBlZF9zdHJpbmcoZXJfbmFtZWYsIGVyX3RleHQpOworICAg IGZwcmludGYoZXJfbmFtZWYsICJcIiB9LFxuIik7CiAKICAgfQogICAvKiBmaW5pc2hpbmcgb2Zm IHdpdGggbXlzcWxkX2Vycm9yLmggKi8KCj09PSBtb2RpZmllZCBmaWxlICdleHRyYS9wZXJyb3Iu YycKLS0tIGEvZXh0cmEvcGVycm9yLmMJMjAwOC0wMy0yOCAxOTo1OToyMCArMDAwMAorKysgYi9l eHRyYS9wZXJyb3IuYwkyMDA4LTA4LTA1IDIzOjI2OjE4ICswMDAwCkBAIC0xODQsMTEgKzE4NCw1 MSBAQCBzdGF0aWMgY29uc3QgY2hhciAqZ2V0X2hhX2Vycm9yX21zZyhpbnQgCiAgIHJldHVybiBO dWxsUzsKIH0KIAordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgY29uc3QgY2hhciAqbmFtZTsKKyAgdWlu dCAgICAgICAgY29kZTsKKyAgY29uc3QgY2hhciAqdGV4dDsKK30gc3RfZXJyb3I7CisKK3N0YXRp YyBzdF9lcnJvciBnbG9iYWxfZXJyb3JfbmFtZXNbXSA9Cit7CisjaW5jbHVkZSA8bXlzcWxkX2Vy bmFtZS5oPgorICB7IDAsIDAsIDAgfQorfTsKKworLyoqCisgIExvb2t1cCBhbiBlcnJvciBieSBj b2RlIGluIHRoZSBnbG9iYWxfZXJyb3JfbmFtZXMgYXJyYXkuCisgIEBwYXJhbSBjb2RlIHRoZSBj b2RlIHRvIGxvb2t1cAorICBAcGFyYW0gW291dF0gbmFtZV9wdHIgdGhlIGVycm9yIG5hbWUsIHdo ZW4gZm91bmQKKyAgQHBhcmFtIFtvdXRdIG1zZ19wdHIgdGhlIGVycm9yIHRleHQsIHdoZW4gZm91 bmQKKyAgQHJldHVybiAxIHdoZW4gZm91bmQsIG90aGVyd2lzZSAwCisqLworaW50IGdldF9FUl9l cnJvcl9tc2codWludCBjb2RlLCBjb25zdCBjaGFyICoqbmFtZV9wdHIsIGNvbnN0IGNoYXIgKipt c2dfcHRyKQoreworICBzdF9lcnJvciAqdG1wX2Vycm9yOworCisgIHRtcF9lcnJvcj0gJiBnbG9i YWxfZXJyb3JfbmFtZXNbMF07CisKKyAgd2hpbGUgKHRtcF9lcnJvci0+bmFtZSAhPSBOVUxMKQor ICB7CisgICAgaWYgKHRtcF9lcnJvci0+Y29kZSA9PSBjb2RlKQorICAgIHsKKyAgICAgICpuYW1l X3B0cj0gdG1wX2Vycm9yLT5uYW1lOworICAgICAgKm1zZ19wdHI9IHRtcF9lcnJvci0+dGV4dDsK KyAgICAgIHJldHVybiAxOworICAgIH0KKyAgICB0bXBfZXJyb3IrKzsKKyAgfQorCisgIHJldHVy biAwOworfQogCiBpbnQgbWFpbihpbnQgYXJnYyxjaGFyICphcmd2W10pCiB7CiAgIGludCBlcnJv cixjb2RlLGZvdW5kOwogICBjb25zdCBjaGFyICptc2c7CisgIGNvbnN0IGNoYXIgKm5hbWU7CiAg IGNoYXIgKnVua25vd25fZXJyb3IgPSAwOwogICBNWV9JTklUKGFyZ3ZbMF0pOwogCkBAIC0yOTEs NiArMzMxLDE0IEBAIGludCBtYWluKGludCBhcmdjLGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgZWxz ZQogICAgICAgICAgIHB1dHMobXNnKTsKICAgICAgIH0KKyAgICAgIGlmIChnZXRfRVJfZXJyb3Jf bXNnKGNvZGUsICYgbmFtZSwgJiBtc2cpKQorICAgICAgeworICAgICAgICBmb3VuZD0gMTsKKyAg ICAgICAgaWYgKHZlcmJvc2UpCisgICAgICAgICAgcHJpbnRmKCJNeVNRTCBlcnJvciBjb2RlICUz ZCAoJXMpOiAlc1xuIiwgY29kZSwgbmFtZSwgbXNnKTsKKyAgICAgICAgZWxzZQorICAgICAgICAg IHB1dHMobXNnKTsKKyAgICAgIH0KICAgICAgIGlmICghZm91bmQpCiAgICAgICB7CiAgICAgICAg IGZwcmludGYoc3RkZXJyLCJJbGxlZ2FsIGVycm9yIGNvZGU6ICVkXG4iLCBjb2RlKTsKCj09PSBt b2RpZmllZCBmaWxlICdpbmNsdWRlL215X2hhbmRsZXIuaCcKLS0tIGEvaW5jbHVkZS9teV9oYW5k bGVyLmgJMjAwOC0wNi0yNiAxNzo0ODo0MiArMDAwMAorKysgYi9pbmNsdWRlL215X2hhbmRsZXIu aAkyMDA4LTA3LTI0IDExOjMzOjM1ICswMDAwCkBAIC01NCw4ICs1NCw4IEBAIHR5cGVkZWYgc3Ry dWN0IHN0X0hBX0tFWVNFRwkJLyogS2V5LXBvcnQKICAgdWludDE2IGJpdF9wb3M7ICAgICAgICAg ICAgICAgICAgICAgICAvKiBQb3NpdGlvbiB0byBiaXQgcGFydCAqLwogICB1aW50MTYgZmxhZzsK ICAgdWludDE2IGxlbmd0aDsJCQkvKiBLZXlsZW5ndGggKi8KKyAgdWludDE2IGxhbmd1YWdlOwog ICB1aW50OCAgdHlwZTsJCQkJLyogVHlwZSBvZiBrZXkgKGZvciBzb3J0KSAqLwotICB1aW50OCAg bGFuZ3VhZ2U7CiAgIHVpbnQ4ICBudWxsX2JpdDsJCQkvKiBiaXRtYXNrIHRvIHRlc3QgZm9yIE5V TEwgKi8KICAgdWludDggIGJpdF9zdGFydCxiaXRfZW5kOwkJLyogaWYgYml0IGZpZWxkICovCiAg IHVpbnQ4ICBiaXRfbGVuZ3RoOyAgICAgICAgICAgICAgICAgICAgLyogTGVuZ3RoIG9mIGJpdCBw YXJ0ICovCgo9PT0gbW9kaWZpZWQgZmlsZSAnaW5jbHVkZS9teV9zeXMuaCcKLS0tIGEvaW5jbHVk ZS9teV9zeXMuaAkyMDA4LTA3LTIxIDA5OjE3OjAzICswMDAwCisrKyBiL2luY2x1ZGUvbXlfc3lz LmgJMjAwOC0wNy0yNCAxMTozMzozNSArMDAwMApAQCAtMjMzLDggKzIzMyw5IEBAIGV4dGVybiB1 aW50ICAgIG15X2xhcmdlX3BhZ2Vfc2l6ZTsKICNlbmRpZgogCiAvKiBjaGFyc2V0cyAqLworI2Rl ZmluZSBNWV9BTExfQ0hBUlNFVFNfU0laRSA1MTIKIGV4dGVybiBDSEFSU0VUX0lORk8gKmRlZmF1 bHRfY2hhcnNldF9pbmZvOwotZXh0ZXJuIENIQVJTRVRfSU5GTyAqYWxsX2NoYXJzZXRzWzI1Nl07 CitleHRlcm4gQ0hBUlNFVF9JTkZPICphbGxfY2hhcnNldHNbTVlfQUxMX0NIQVJTRVRTX1NJWkVd OwogZXh0ZXJuIENIQVJTRVRfSU5GTyBjb21waWxlZF9jaGFyc2V0c1tdOwogCiAvKiBzdGF0aXN0 aWNzICovCgo9PT0gbW9kaWZpZWQgZmlsZSAnaW5jbHVkZS9teWlzYW0uaCcKLS0tIGEvaW5jbHVk ZS9teWlzYW0uaAkyMDA4LTA3LTA5IDA3OjEyOjQzICswMDAwCisrKyBiL2luY2x1ZGUvbXlpc2Ft LmgJMjAwOC0wNy0yNCAxMTozMzozNSArMDAwMApAQCAtMTY4LDcgKzE2OCw3IEBAIHR5cGVkZWYg c3RydWN0IHN0X21pX2NyZWF0ZV9pbmZvCiAgIHVsb25nbG9uZyBkYXRhX2ZpbGVfbGVuZ3RoOwog ICB1bG9uZ2xvbmcga2V5X2ZpbGVfbGVuZ3RoOwogICB1aW50IG9sZF9vcHRpb25zOwotICB1aW50 OCBsYW5ndWFnZTsKKyAgdWludDE2IGxhbmd1YWdlOwogICBteV9ib29sIHdpdGhfYXV0b19pbmNy ZW1lbnQ7CiB9IE1JX0NSRUFURV9JTkZPOwogCgo9PT0gbW9kaWZpZWQgZmlsZSAnaW5jbHVkZS9t eWlzYW1jaGsuaCcKLS0tIGEvaW5jbHVkZS9teWlzYW1jaGsuaAkyMDA4LTA0LTEwIDAyOjI2OjM2 ICswMDAwCisrKyBiL2luY2x1ZGUvbXlpc2FtY2hrLmgJMjAwOC0wNy0yNCAxMTozMzozNSArMDAw MApAQCAtMTQ4LDcgKzE0OCw3IEBAIHR5cGVkZWYgc3RydWN0IHN0X2hhbmRsZXJfY2hlY2tfcGFy YW0KICAgdWludCBrZXlfY2FjaGVfYmxvY2tfc2l6ZSwgcGFnZWNhY2hlX2Jsb2NrX3NpemU7CiAg IGludCB0bXBmaWxlX2NyZWF0ZWZsYWcsIGVycl9jb3VudDsKICAgbXlmIG15Zl9ydzsKLSAgdWlu dDggbGFuZ3VhZ2U7CisgIHVpbnQxNiBsYW5ndWFnZTsKICAgbXlfYm9vbCB1c2luZ19nbG9iYWxf a2V5Y2FjaGUsIG9wdF9sb2NrX21lbW9yeSwgb3B0X2ZvbGxvd19saW5rczsKICAgbXlfYm9vbCBy ZXRyeV9yZXBhaXIsIGZvcmNlX3NvcnQsIGNhbGNfY2hlY2tzdW0sIHN0YXRpY19yb3dfc2l6ZTsK ICAgY2hhciB0ZW1wX2ZpbGVuYW1lW0ZOX1JFRkxFTl07Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlz cWwtdGVzdC9pbmNsdWRlL2NvbW1pdC5pbmMnCi0tLSBhL215c3FsLXRlc3QvaW5jbHVkZS9jb21t aXQuaW5jCTIwMDgtMDQtMDEgMTU6MTM6NTcgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9pbmNsdWRl L2NvbW1pdC5pbmMJMjAwOC0wNy0yNiAxNjozODoyMCArMDAwMApAQCAtNzI2LDE1ICs3MjYsMTUg QEAgY2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50KDQsIDQsIDQsIAogYWx0ZXIgdGFibGUg dDMgYWRkIGNvbHVtbiAoYiBpbnQpOwogY2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50KDIs IDAsIDIsIDApOwogYWx0ZXIgdGFibGUgdDMgcmVuYW1lIHQ0OwotY2FsbCBwX3ZlcmlmeV9zdGF0 dXNfaW5jcmVtZW50KDEsIDAsIDEsIDApOworY2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50 KDIsIDAsIDIsIDApOwogcmVuYW1lIHRhYmxlIHQ0IHRvIHQzOwotY2FsbCBwX3ZlcmlmeV9zdGF0 dXNfaW5jcmVtZW50KDEsIDAsIDEsIDApOworY2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50 KDAsIDAsIDAsIDApOwogdHJ1bmNhdGUgdGFibGUgdDM7CiBjYWxsIHBfdmVyaWZ5X3N0YXR1c19p bmNyZW1lbnQoMiwgMiwgMiwgMik7CiBjcmVhdGUgdmlldyB2MSBhcyBzZWxlY3QgKiBmcm9tIHQy OwotY2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50KDEsIDAsIDEsIDApOworY2FsbCBwX3Zl cmlmeV9zdGF0dXNfaW5jcmVtZW50KDIsIDAsIDIsIDApOwogY2hlY2sgdGFibGUgdDE7Ci1jYWxs IHBfdmVyaWZ5X3N0YXR1c19pbmNyZW1lbnQoMywgMCwgMywgMCk7CitjYWxsIHBfdmVyaWZ5X3N0 YXR1c19pbmNyZW1lbnQoMiwgMCwgMiwgMCk7CiAtLWVjaG8gIyBTaWM6IGFmdGVyIHRoaXMgYnVn IGlzIGZpeGVkLCBDSEVDSyBsZWF2ZXMgbm8gcGVuZGluZyB0cmFuc2FjdGlvbgogY29tbWl0Owog Y2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50KDAsIDAsIDAsIDApOwoKPT09IGFkZGVkIGZp bGUgJ215c3FsLXRlc3QvaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYycKLS0tIGEv bXlzcWwtdGVzdC9pbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jCTE5NzAtMDEtMDEg MDA6MDA6MDAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9pbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9o ZWxwZXIuaW5jCTIwMDgtMDctMjYgMTY6Mzg6MjAgKzAwMDAKQEAgLTAsMCArMSw1IEBACitJTlNF UlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CistLWRpc2FibGVfcmVzdWx0X2xvZwor ZXZhbCAkc3RhdGVtZW50OworLS1lbmFibGVfcmVzdWx0X2xvZworQ0FMTCBkYjEudGVzdF9pZl9j b21taXQoKTsKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3IvYmlubG9nX2luZGV4LnJl c3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9yL2JpbmxvZ19pbmRleC5yZXN1bHQJMjAwOC0wNC0wMSAx MDozNjoyMCArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvYmlubG9nX2luZGV4LnJlc3VsdAkyMDA4 LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC0zMyw3ICszMyw3IEBAIHB1cmdlIGJpbmFyeSBsb2dz IFRPICdtYXN0ZXItYmluLjAwMDAwMicKIEVSUk9SIEhZMDAwOiBGYXRhbCBlcnJvciBkdXJpbmcg bG9nIHB1cmdlCiBzaG93IHdhcm5pbmdzOwogTGV2ZWwJQ29kZQlNZXNzYWdlCi1FcnJvcgkxMzc3 CWEgcHJvYmxlbSB3aXRoIGRlbGV0aW5nIE1ZU1FMVEVTVF9WQVJESVIvbG9nL21hc3Rlci1iaW4u MDAwMDAxOyBjb25zaWRlciBleGFtaW5pbmcgY29ycmVzcG9uZGVuY2Ugb2YgeW91ciBiaW5sb2cg aW5kZXggZmlsZSB0byB0aGUgYWN0dWFsIGJpbmxvZyBmaWxlcworV2FybmluZwkxMzc3CWEgcHJv YmxlbSB3aXRoIGRlbGV0aW5nIE1ZU1FMVEVTVF9WQVJESVIvbG9nL21hc3Rlci1iaW4uMDAwMDAx OyBjb25zaWRlciBleGFtaW5pbmcgY29ycmVzcG9uZGVuY2Ugb2YgeW91ciBiaW5sb2cgaW5kZXgg ZmlsZSB0byB0aGUgYWN0dWFsIGJpbmxvZyBmaWxlcwogRXJyb3IJMTM3NwlGYXRhbCBlcnJvciBk dXJpbmcgbG9nIHB1cmdlCiByZXNldCBtYXN0ZXI7CiBFbmQgb2YgdGVzdHMKCj09PSBtb2RpZmll ZCBmaWxlICdteXNxbC10ZXN0L3IvY29tbWl0XzFpbm5vZGIucmVzdWx0JwotLS0gYS9teXNxbC10 ZXN0L3IvY29tbWl0XzFpbm5vZGIucmVzdWx0CTIwMDgtMDQtMDEgMTU6MTM6NTcgKzAwMDAKKysr IGIvbXlzcWwtdGVzdC9yL2NvbW1pdF8xaW5ub2RiLnJlc3VsdAkyMDA4LTA3LTI2IDE2OjM4OjIw ICswMDAwCkBAIC04NDIsMTEgKzg0MiwxMSBAQCBjYWxsIHBfdmVyaWZ5X3N0YXR1c19pbmNyZW1l bnQoMiwgMCwgMiwgCiBTVUNDRVNTCiAKIGFsdGVyIHRhYmxlIHQzIHJlbmFtZSB0NDsKLWNhbGwg cF92ZXJpZnlfc3RhdHVzX2luY3JlbWVudCgxLCAwLCAxLCAwKTsKK2NhbGwgcF92ZXJpZnlfc3Rh dHVzX2luY3JlbWVudCgyLCAwLCAyLCAwKTsKIFNVQ0NFU1MKIAogcmVuYW1lIHRhYmxlIHQ0IHRv IHQzOwotY2FsbCBwX3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50KDEsIDAsIDEsIDApOworY2FsbCBw X3ZlcmlmeV9zdGF0dXNfaW5jcmVtZW50KDAsIDAsIDAsIDApOwogU1VDQ0VTUwogCiB0cnVuY2F0 ZSB0YWJsZSB0MzsKQEAgLTg1NCwxMyArODU0LDEzIEBAIGNhbGwgcF92ZXJpZnlfc3RhdHVzX2lu Y3JlbWVudCgyLCAyLCAyLCAKIFNVQ0NFU1MKIAogY3JlYXRlIHZpZXcgdjEgYXMgc2VsZWN0ICog ZnJvbSB0MjsKLWNhbGwgcF92ZXJpZnlfc3RhdHVzX2luY3JlbWVudCgxLCAwLCAxLCAwKTsKK2Nh bGwgcF92ZXJpZnlfc3RhdHVzX2luY3JlbWVudCgyLCAwLCAyLCAwKTsKIFNVQ0NFU1MKIAogY2hl Y2sgdGFibGUgdDE7CiBUYWJsZQlPcAlNc2dfdHlwZQlNc2dfdGV4dAogdGVzdC50MQljaGVjawlz dGF0dXMJT0sKLWNhbGwgcF92ZXJpZnlfc3RhdHVzX2luY3JlbWVudCgzLCAwLCAzLCAwKTsKK2Nh bGwgcF92ZXJpZnlfc3RhdHVzX2luY3JlbWVudCgyLCAwLCAyLCAwKTsKIFNVQ0NFU1MKIAogIyBT aWM6IGFmdGVyIHRoaXMgYnVnIGlzIGZpeGVkLCBDSEVDSyBsZWF2ZXMgbm8gcGVuZGluZyB0cmFu c2FjdGlvbgoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvci9jdHlwZV9sZG1sLnJlc3Vs dCcKLS0tIGEvbXlzcWwtdGVzdC9yL2N0eXBlX2xkbWwucmVzdWx0CTIwMDctMTAtMjIgMTE6NDM6 MzIgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL2N0eXBlX2xkbWwucmVzdWx0CTIwMDgtMDctMjQg MTE6MzM6MzUgKzAwMDAKQEAgLTgsNyArOCw3IEBAIFZhcmlhYmxlX25hbWUJVmFsdWUKIGNoYXJh Y3Rlcl9zZXRzX2RpcglNWVNRTF9URVNUX0RJUi9zdGRfZGF0YS8KIHNob3cgY29sbGF0aW9uIGxp a2UgJ3V0ZjhfdGVzdF9jaSc7CiBDb2xsYXRpb24JQ2hhcnNldAlJZAlEZWZhdWx0CUNvbXBpbGVk CVNvcnRsZW4KLXV0ZjhfdGVzdF9jaQl1dGY4CTI1MwkJCTgKK3V0ZjhfdGVzdF9jaQl1dGY4CTM1 MwkJCTgKIGNyZWF0ZSB0YWJsZSB0MSAoYzEgY2hhcigxKSBjaGFyYWN0ZXIgc2V0IHV0ZjggY29s bGF0ZSB1dGY4X3Rlc3RfY2kpOwogaW5zZXJ0IGludG8gdDEgdmFsdWVzICgnYScpOwogc2VsZWN0 ICogZnJvbSB0MSB3aGVyZSBjMT0nYic7CkBAIC0xNyw3ICsxNyw3IEBAIGEKIGRyb3AgdGFibGUg dDE7CiBzaG93IGNvbGxhdGlvbiBsaWtlICd1Y3MyX3Rlc3RfY2knOwogQ29sbGF0aW9uCUNoYXJz ZXQJSWQJRGVmYXVsdAlDb21waWxlZAlTb3J0bGVuCi11Y3MyX3Rlc3RfY2kJdWNzMgkxNTgJCQk4 Cit1Y3MyX3Rlc3RfY2kJdWNzMgkzNTgJCQk4CiBjcmVhdGUgdGFibGUgdDEgKGMxIGNoYXIoMSkg Y2hhcmFjdGVyIHNldCB1Y3MyIGNvbGxhdGUgdWNzMl90ZXN0X2NpKTsKIGluc2VydCBpbnRvIHQx IHZhbHVlcyAoJ2EnKTsKIHNlbGVjdCAqIGZyb20gdDEgd2hlcmUgYzE9J2InOwpAQCAtMjYsNyAr MjYsNyBAQCBhCiBkcm9wIHRhYmxlIHQxOwogc2hvdyBjb2xsYXRpb24gbGlrZSAndXRmMTZfdGVz dF9jaSc7CiBDb2xsYXRpb24JQ2hhcnNldAlJZAlEZWZhdWx0CUNvbXBpbGVkCVNvcnRsZW4KLXV0 ZjE2X3Rlc3RfY2kJdXRmMTYJMTI3CQkJOAordXRmMTZfdGVzdF9jaQl1dGYxNgkzMjcJCQk4CiBj cmVhdGUgdGFibGUgdDEgKGMxIGNoYXIoMSkgY2hhcmFjdGVyIHNldCB1dGYxNiBjb2xsYXRlIHV0 ZjE2X3Rlc3RfY2kpOwogaW5zZXJ0IGludG8gdDEgdmFsdWVzICgnYScpOwogc2VsZWN0ICogZnJv bSB0MSB3aGVyZSBjMT0nYic7CkBAIC0zNSw3ICszNSw3IEBAIGEKIGRyb3AgdGFibGUgdDE7CiBz aG93IGNvbGxhdGlvbiBsaWtlICd1dGYzMl90ZXN0X2NpJzsKIENvbGxhdGlvbglDaGFyc2V0CUlk CURlZmF1bHQJQ29tcGlsZWQJU29ydGxlbgotdXRmMzJfdGVzdF9jaQl1dGYzMgkxOTEJCQk4Cit1 dGYzMl90ZXN0X2NpCXV0ZjMyCTM5MQkJCTgKIGNyZWF0ZSB0YWJsZSB0MSAoYzEgY2hhcigxKSBj aGFyYWN0ZXIgc2V0IHV0ZjMyIGNvbGxhdGUgdXRmMzJfdGVzdF9jaSk7CiBpbnNlcnQgaW50byB0 MSB2YWx1ZXMgKCdhJyk7CiBzZWxlY3QgKiBmcm9tIHQxIHdoZXJlIGMxPSdiJzsKQEAgLTQ1LDcg KzQ1LDcgQEAgZHJvcCB0YWJsZSB0MTsKIFZpZXRuYW1lc2UgZXhwZXJpbWVudGFsIGNvbGxhdGlv bgogc2hvdyBjb2xsYXRpb24gbGlrZSAndWNzMl92bl9jaSc7CiBDb2xsYXRpb24JQ2hhcnNldAlJ ZAlEZWZhdWx0CUNvbXBpbGVkCVNvcnRsZW4KLXVjczJfdm5fY2kJdWNzMgkxNTkJCQk4Cit1Y3My X3ZuX2NpCXVjczIJMzU5CQkJOAogY3JlYXRlIHRhYmxlIHQxIChjMSBjaGFyKDEpIGNoYXJhY3Rl ciBzZXQgdWNzMiBjb2xsYXRlIHVjczJfdm5fY2kpOwogaW5zZXJ0IGludG8gdDEgdmFsdWVzICgw eDAwNjEpLCgweDAwNDEpLCgweDAwRTApLCgweDAwQzApLCgweDFFQTMpLCgweDFFQTIpLAogKDB4 MDBFMyksKDB4MDBDMyksKDB4MDBFMSksKDB4MDBDMSksKDB4MUVBMSksKDB4MUVBMCk7CkBAIC0z MTYsMyArMzE2LDI5IEBAIFZ2CiBYeAogWXnDncO94buy4buz4bu04bu14bu24bu34bu44bu5CiBk cm9wIHRhYmxlIHQxOworVGhlIGZvbGxvd2luZyB0ZXN0cyBjaGVjayB0aGF0IHR3by1ieXRlIGNv bGxhdGlvbiBJRHMgd29yaworc2VsZWN0ICogZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEuY29sbGF0 aW9ucyB3aGVyZSBpZD4yNTYgb3JkZXIgYnkgaWQ7CitDT0xMQVRJT05fTkFNRQlDSEFSQUNURVJf U0VUX05BTUUJSUQJSVNfREVGQVVMVAlJU19DT01QSUxFRAlTT1JUTEVOCit1dGYxNl90ZXN0X2Np CXV0ZjE2CTMyNwkJCTgKK3V0ZjhfdGVzdF9jaQl1dGY4CTM1MwkJCTgKK3VjczJfdGVzdF9jaQl1 Y3MyCTM1OAkJCTgKK3VjczJfdm5fY2kJdWNzMgkzNTkJCQk4Cit1dGYzMl90ZXN0X2NpCXV0ZjMy CTM5MQkJCTgKK3Nob3cgY29sbGF0aW9uIGxpa2UgJyV0ZXN0JSc7CitDb2xsYXRpb24JQ2hhcnNl dAlJZAlEZWZhdWx0CUNvbXBpbGVkCVNvcnRsZW4KK3VjczJfdGVzdF9jaQl1Y3MyCTM1OAkJCTgK K3V0ZjhfdGVzdF9jaQl1dGY4CTM1MwkJCTgKK3V0ZjE2X3Rlc3RfY2kJdXRmMTYJMzI3CQkJOAor dXRmMzJfdGVzdF9jaQl1dGYzMgkzOTEJCQk4CitzaG93IGNvbGxhdGlvbiBsaWtlICd1Y3MyX3Zu X2NpJzsKK0NvbGxhdGlvbglDaGFyc2V0CUlkCURlZmF1bHQJQ29tcGlsZWQJU29ydGxlbgordWNz Ml92bl9jaQl1Y3MyCTM1OQkJCTgKK2NyZWF0ZSB0YWJsZSB0MSAoYzEgY2hhcigxKSBjaGFyYWN0 ZXIgc2V0IHVjczIgY29sbGF0ZSB1Y3MyX3ZuX2NpKTsKK2luc2VydCBpbnRvIHQxIHZhbHVlcyAo MHgwMDYxKTsKK3NldCBAQGNoYXJhY3Rlcl9zZXRfcmVzdWx0cz1OVUxMOworc2VsZWN0ICogZnJv bSB0MTsKK0NhdGFsb2cJRGF0YWJhc2UJVGFibGUJVGFibGVfYWxpYXMJQ29sdW1uCUNvbHVtbl9h bGlhcwlUeXBlCUxlbmd0aAlNYXggbGVuZ3RoCUlzX251bGwJRmxhZ3MJRGVjaW1hbHMJQ2hhcnNl dG5yCitkZWYJdGVzdAl0MQl0MQljMQljMQkyNTQJMgkyCVkJMAkwCTM1OQorYzEKKwBhCitkcm9w IHRhYmxlIHQxOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvci9jdHlwZV91dGY4LnJl c3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9yL2N0eXBlX3V0ZjgucmVzdWx0CTIwMDgtMDctMjMgMDk6 NDM6NTAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL2N0eXBlX3V0ZjgucmVzdWx0CTIwMDgtMDct MjUgMTc6MjE6NTUgKzAwMDAKQEAgLTE2NjYsMjcgKzE2NjYsMjcgQEAgc2VsZWN0IGNoYXIoMHhm ZiwweDhmIHVzaW5nIHV0ZjgpOwogY2hhcigweGZmLDB4OGYgdXNpbmcgdXRmOCkKIE5VTEwKIFdh cm5pbmdzOgotRXJyb3IJMTMwMAlJbnZhbGlkIHV0ZjggY2hhcmFjdGVyIHN0cmluZzogJ0ZGOEYn CitXYXJuaW5nCTEzMDAJSW52YWxpZCB1dGY4IGNoYXJhY3RlciBzdHJpbmc6ICdGRjhGJwogc2Vs ZWN0IGNoYXIoMTk1IHVzaW5nIHV0ZjgpOwogY2hhcigxOTUgdXNpbmcgdXRmOCkKIE5VTEwKIFdh cm5pbmdzOgotRXJyb3IJMTMwMAlJbnZhbGlkIHV0ZjggY2hhcmFjdGVyIHN0cmluZzogJ0MzJwor V2FybmluZwkxMzAwCUludmFsaWQgdXRmOCBjaGFyYWN0ZXIgc3RyaW5nOiAnQzMnCiBzZWxlY3Qg Y2hhcigxOTYgdXNpbmcgdXRmOCk7CiBjaGFyKDE5NiB1c2luZyB1dGY4KQogTlVMTAogV2Fybmlu Z3M6Ci1FcnJvcgkxMzAwCUludmFsaWQgdXRmOCBjaGFyYWN0ZXIgc3RyaW5nOiAnQzQnCitXYXJu aW5nCTEzMDAJSW52YWxpZCB1dGY4IGNoYXJhY3RlciBzdHJpbmc6ICdDNCcKIHNlbGVjdCBjaGFy KDI1NTcgdXNpbmcgdXRmOCk7CiBjaGFyKDI1NTcgdXNpbmcgdXRmOCkKIE5VTEwKIFdhcm5pbmdz OgotRXJyb3IJMTMwMAlJbnZhbGlkIHV0ZjggY2hhcmFjdGVyIHN0cmluZzogJ0ZEJworV2Fybmlu ZwkxMzAwCUludmFsaWQgdXRmOCBjaGFyYWN0ZXIgc3RyaW5nOiAnRkQnCiBzZWxlY3QgY29udmVy dChjaGFyKDB4ZmYsMHg4ZikgdXNpbmcgdXRmOCk7CiBjb252ZXJ0KGNoYXIoMHhmZiwweDhmKSB1 c2luZyB1dGY4KQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMzAwCUludmFsaWQgdXRmOCBjaGFy YWN0ZXIgc3RyaW5nOiAnRkY4RicKK1dhcm5pbmcJMTMwMAlJbnZhbGlkIHV0ZjggY2hhcmFjdGVy IHN0cmluZzogJ0ZGOEYnCiBzZWxlY3QgaGV4KGNvbnZlcnQoY2hhcigyNTU3IHVzaW5nIGxhdGlu MSkgdXNpbmcgdXRmOCkpOwogaGV4KGNvbnZlcnQoY2hhcigyNTU3IHVzaW5nIGxhdGluMSkgdXNp bmcgdXRmOCkpCiAwOUMzQkQKQEAgLTE4NTAsMTIgKzE4NTAsMTIgQEAgc2VsZWN0IGhleChjaGFy KDB4RkYgdXNpbmcgdXRmOCkpOwogaGV4KGNoYXIoMHhGRiB1c2luZyB1dGY4KSkKIE5VTEwKIFdh cm5pbmdzOgotRXJyb3IJMTMwMAlJbnZhbGlkIHV0ZjggY2hhcmFjdGVyIHN0cmluZzogJ0ZGJwor V2FybmluZwkxMzAwCUludmFsaWQgdXRmOCBjaGFyYWN0ZXIgc3RyaW5nOiAnRkYnCiBzZWxlY3Qg aGV4KGNvbnZlcnQoMHhGRiB1c2luZyB1dGY4KSk7CiBoZXgoY29udmVydCgweEZGIHVzaW5nIHV0 ZjgpKQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMzAwCUludmFsaWQgdXRmOCBjaGFyYWN0ZXIg c3RyaW5nOiAnRkYnCitXYXJuaW5nCTEzMDAJSW52YWxpZCB1dGY4IGNoYXJhY3RlciBzdHJpbmc6 ICdGRicKIHNlbGVjdCBoZXgoX3V0ZjggMHg2MTYyNjNGRik7CiBFUlJPUiBIWTAwMDogSW52YWxp ZCB1dGY4IGNoYXJhY3RlciBzdHJpbmc6ICdGRicKIHNlbGVjdCBoZXgoX3V0ZjggWCc2MTYyNjNG RicpOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvci9kYXRlX2Zvcm1hdHMucmVzdWx0 JwotLS0gYS9teXNxbC10ZXN0L3IvZGF0ZV9mb3JtYXRzLnJlc3VsdAkyMDA4LTAyLTEyIDE5OjA5 OjE2ICswMDAwCisrKyBiL215c3FsLXRlc3Qvci9kYXRlX2Zvcm1hdHMucmVzdWx0CTIwMDgtMDct MTQgMTI6NDk6MTkgKzAwMDAKQEAgLTgwLDcgKzgwLDcgQEAgc2VsZWN0IFNUUl9UT19EQVRFKCcy MDA0LjEyLjEyIDIyLjMwLjYxJwogU1RSX1RPX0RBVEUoJzIwMDQuMTIuMTIgMjIuMzAuNjEnLCcl WS4lbS4lZCAlVCcpCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTE0MTEJSW5jb3JyZWN0IHRpbWUg dmFsdWU6ICcyMi4zMC42MScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJ SW5jb3JyZWN0IHRpbWUgdmFsdWU6ICcyMi4zMC42MScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRl CiBjcmVhdGUgdGFibGUgdDEgKGRhdGUgY2hhcigzMCksIGZvcm1hdCBjaGFyKDMwKSBub3QgbnVs bCk7CiBpbnNlcnQgaW50byB0MSB2YWx1ZXMKICgnMjAwMy0wMS0wMiAxMDoxMToxMicsICclWS0l bS0lZCAlSDolaTolUycpLApAQCAtMzUyLDIxICszNTIsMjEgQEAgVHVlc2RheSA1MiAyMDAxCSVX ICV1ICV4CU5VTEwKIDcgNTMgMTk5OAkldyAldSAlWQlOVUxMCiBOVUxMCSVtLiVkLiVZCU5VTEwK IFdhcm5pbmdzOgotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcyMDAzLTAx LTAyIDEwOjExOjEyIFBNJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKLUVycm9yCTE0MTEJSW5j b3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMjAwMy0wMS0wMiAxMDoxMToxMi4xMjM0NTYnIGZvciBm dW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6 ICcyMDAzLTAxLTAyIDEwOjExOjEyQU0nIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJ MTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcyMDAzLTAxLTAyIDEwOjExOjEyQU4nIGZv ciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFs dWU6ICcyMDAzLTAxLTAyIDEwOjExOjEyIFBNJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKLUVy cm9yCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMTA6MjA6MTBBTScgZm9yIGZ1bmN0 aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzE1 IFNlcHRlbWJlaSAyMDAxJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKLUVycm9yCTE0MTEJSW5j b3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMTUgSnUgMjAwMScgZm9yIGZ1bmN0aW9uIHN0cl90b19k YXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJ1N1bmQgMTUgTUEnIGZv ciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFs dWU6ICdUaHVyc2RhaSAxMiAxOTk4JyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKLUVycm9yCTE0 MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnU3VuZGF5IDAxIDIwMDEnIGZvciBmdW5jdGlv biBzdHJfdG9fZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICdUdWVz ZGF5IDUyIDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJl Y3QgZGF0ZXRpbWUgdmFsdWU6ICdUdWVzZGF5IDUyIDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9f ZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICdUdWVzZGF5IDUyIDIw MDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRp bWUgdmFsdWU6ICc3IDUzIDE5OTgnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkx NDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzIwMDMtMDEtMDIgMTA6MTE6MTIgUE0nIGZv ciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2 YWx1ZTogJzIwMDMtMDEtMDIgMTA6MTE6MTIuMTIzNDU2JyBmb3IgZnVuY3Rpb24gc3RyX3RvX2Rh dGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcyMDAzLTAxLTAyIDEw OjExOjEyQU0nIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVj dCBkYXRldGltZSB2YWx1ZTogJzIwMDMtMDEtMDIgMTA6MTE6MTJBTicgZm9yIGZ1bmN0aW9uIHN0 cl90b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMjAwMy0w MS0wMiAxMDoxMToxMiBQTScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJ SW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMTA6MjA6MTBBTScgZm9yIGZ1bmN0aW9uIHN0cl90 b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMTUgU2VwdGVt YmVpIDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVj dCBkYXRldGltZSB2YWx1ZTogJzE1IEp1IDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQor V2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJ1N1bmQgMTUgTUEnIGZvciBm dW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1 ZTogJ1RodXJzZGFpIDEyIDE5OTgnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkx NDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJ1N1bmRheSAwMSAyMDAxJyBmb3IgZnVuY3Rp b24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICdU dWVzZGF5IDUyIDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUlu Y29ycmVjdCBkYXRldGltZSB2YWx1ZTogJ1R1ZXNkYXkgNTIgMjAwMScgZm9yIGZ1bmN0aW9uIHN0 cl90b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnVHVlc2Rh eSA1MiAyMDAxJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJl Y3QgZGF0ZXRpbWUgdmFsdWU6ICc3IDUzIDE5OTgnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQog c2VsZWN0IGRhdGUsZm9ybWF0LGNvbmNhdChzdHJfdG9fZGF0ZShkYXRlLCBmb3JtYXQpLCcnKSBh cyBjb24gZnJvbSB0MTsKIGRhdGUJZm9ybWF0CWNvbgogMjAwMy0wMS0wMiAxMDoxMToxMiBQTQkl WS0lbS0lZCAlSDolaTolUyAlcAlOVUxMCkBAIC0zODYsMjEgKzM4NiwyMSBAQCBUdWVzZGF5IDUy IDIwMDEJJVcgJXUgJXgJTlVMTAogNyA1MyAxOTk4CSV3ICV1ICVZCU5VTEwKIE5VTEwJJW0uJWQu JVkJTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTog JzIwMDMtMDEtMDIgMTA6MTE6MTIgUE0nIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJ MTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcyMDAzLTAxLTAyIDEwOjExOjEyLjEyMzQ1 NicgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGlt ZSB2YWx1ZTogJzIwMDMtMDEtMDIgMTA6MTE6MTJBTScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRl Ci1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzIwMDMtMDEtMDIgMTA6MTE6 MTJBTicgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRl dGltZSB2YWx1ZTogJzIwMDMtMDEtMDIgMTA6MTE6MTIgUE0nIGZvciBmdW5jdGlvbiBzdHJfdG9f ZGF0ZQotRXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcxMDoyMDoxMEFNJyBm b3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKLUVycm9yCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZh bHVlOiAnMTUgU2VwdGVtYmVpIDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJyb3IJ MTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcxNSBKdSAyMDAxJyBmb3IgZnVuY3Rpb24g c3RyX3RvX2RhdGUKLUVycm9yCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnU3VuZCAx NSBNQScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRl dGltZSB2YWx1ZTogJ1RodXJzZGFpIDEyIDE5OTgnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQot RXJyb3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICdTdW5kYXkgMDEgMjAwMScgZm9y IGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1 ZTogJ1R1ZXNkYXkgNTIgMjAwMScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDEx CUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJ1R1ZXNkYXkgNTIgMjAwMScgZm9yIGZ1bmN0aW9u IHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJ1R1ZXNk YXkgNTIgMjAwMScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVj dCBkYXRldGltZSB2YWx1ZTogJzcgNTMgMTk5OCcgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitX YXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMjAwMy0wMS0wMiAxMDoxMTox MiBQTScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRh dGV0aW1lIHZhbHVlOiAnMjAwMy0wMS0wMiAxMDoxMToxMi4xMjM0NTYnIGZvciBmdW5jdGlvbiBz dHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzIwMDMt MDEtMDIgMTA6MTE6MTJBTScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJ SW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMjAwMy0wMS0wMiAxMDoxMToxMkFOJyBmb3IgZnVu Y3Rpb24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6 ICcyMDAzLTAxLTAyIDEwOjExOjEyIFBNJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKK1dhcm5p bmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcxMDoyMDoxMEFNJyBmb3IgZnVuY3Rp b24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcx NSBTZXB0ZW1iZWkgMjAwMScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJ SW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMTUgSnUgMjAwMScgZm9yIGZ1bmN0aW9uIHN0cl90 b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnU3VuZCAxNSBN QScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0 aW1lIHZhbHVlOiAnVGh1cnNkYWkgMTIgMTk5OCcgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitX YXJuaW5nCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnU3VuZGF5IDAxIDIwMDEnIGZv ciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2 YWx1ZTogJ1R1ZXNkYXkgNTIgMjAwMScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5n CTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnVHVlc2RheSA1MiAyMDAxJyBmb3IgZnVu Y3Rpb24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6 ICdUdWVzZGF5IDUyIDIwMDEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDEx CUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzcgNTMgMTk5OCcgZm9yIGZ1bmN0aW9uIHN0cl90 b19kYXRlCiB0cnVuY2F0ZSB0YWJsZSB0MTsKIGluc2VydCBpbnRvIHQxIHZhbHVlcwogKCcxMDoy MDoxMEFNJywgJyVoOiVpOiVzJyksCkBAIC00NDAsNyArNDQwLDcgQEAgc2VsZWN0IHN0cl90b19k YXRlKCcxNS0wMS0yMDAxIDEyOjU5OjU5Jwogc3RyX3RvX2RhdGUoJzE1LTAxLTIwMDEgMTI6NTk6 NTknLCBHRVRfRk9STUFUKERBVEUsJ1VTQScpKQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxNDEx CUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzE1LTAxLTIwMDEgMTI6NTk6NTknIGZvciBmdW5j dGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTog JzE1LTAxLTIwMDEgMTI6NTk6NTknIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQogZXhwbGFpbiBl eHRlbmRlZCBzZWxlY3QgbWFrZWRhdGUoMTk5NywxKSwgYWRkdGltZSgiMzEuMTIuOTcgMTEuNTku NTkuOTk5OTk5IFBNIiwgIjEgMS4xLjEuMDAwMDAyIiksc3VidGltZSgiMzEuMTIuOTcgMTEuNTku NTkuOTk5OTk5IFBNIiwgIjEgMS4xLjEuMDAwMDAyIiksdGltZWRpZmYoIjAxLjAxLjk3IDExOjU5 OjU5LjAwMDAwMSBQTSIsIjMxLjEyLjk1IDExOjU5OjU5LjAwMDAwMiBQTSIpLGNhc3Qoc3RyX3Rv X2RhdGUoIjE1LTAxLTIwMDEgMTI6NTk6NTkiLCAiJWQtJW0tJVkgJUg6JWk6JVMiKSBhcyBUSU1F KSwgbWFrZXRpbWUoMjMsMTEsMTIpLG1pY3Jvc2Vjb25kKCIxOTk3LTEyLTMxIDIzOjU5OjU5LjAw MDAwMSIpOwogaWQJc2VsZWN0X3R5cGUJdGFibGUJdHlwZQlwb3NzaWJsZV9rZXlzCWtleQlrZXlf bGVuCXJlZglyb3dzCWZpbHRlcmVkCUV4dHJhCiAxCVNJTVBMRQlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTm8gdGFibGVzIHVzZWQKCj09PSBtb2RpZmllZCBmaWxlICdt eXNxbC10ZXN0L3IvZnVuY19jb21wcmVzcy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9mdW5j X2NvbXByZXNzLnJlc3VsdAkyMDA2LTEwLTEzIDE0OjMzOjI4ICswMDAwCisrKyBiL215c3FsLXRl c3Qvci9mdW5jX2NvbXByZXNzLnJlc3VsdAkyMDA4LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC02 NSw4ICs2NSw4IEBAIE5VTEwKIDUwMDAwCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTEyNTkJWkxJ QjogSW5wdXQgZGF0YSBjb3JydXB0ZWQKLUVycm9yCTEyNTYJVW5jb21wcmVzc2VkIGRhdGEgc2l6 ZSB0b28gbGFyZ2U7IHRoZSBtYXhpbXVtIHNpemUgaXMgMTA0ODU3NiAocHJvYmFibHksIGxlbmd0 aCBvZiB1bmNvbXByZXNzZWQgZGF0YSB3YXMgY29ycnVwdGVkKQorV2FybmluZwkxMjU5CVpMSUI6 IElucHV0IGRhdGEgY29ycnVwdGVkCitXYXJuaW5nCTEyNTYJVW5jb21wcmVzc2VkIGRhdGEgc2l6 ZSB0b28gbGFyZ2U7IHRoZSBtYXhpbXVtIHNpemUgaXMgMTA0ODU3NiAocHJvYmFibHksIGxlbmd0 aCBvZiB1bmNvbXByZXNzZWQgZGF0YSB3YXMgY29ycnVwdGVkKQogZHJvcCB0YWJsZSB0MTsKIHNl dCBAQG1heF9hbGxvd2VkX3BhY2tldD0xMDQ4NTc2KjEwMDsKIHNlbGVjdCBjb21wcmVzcyhyZXBl YXQoJ2FhYWFhYWFhYWEnLCBJRihYWFgsIDEwLCAxMDAwMDAwMCkpKSBpcyBudWxsOwpAQCAtOTUs MTIgKzk1LDEyIEBAIGV4cGxhaW4gc2VsZWN0ICogZnJvbSB0MSB3aGVyZSB1bmNvbXByZXMKIGlk CXNlbGVjdF90eXBlCXRhYmxlCXR5cGUJcG9zc2libGVfa2V5cwlrZXkJa2V5X2xlbglyZWYJcm93 cwlFeHRyYQogMQlTSU1QTEUJdDEJc3lzdGVtCU5VTEwJTlVMTAlOVUxMCU5VTEwJMQkKIFdhcm5p bmdzOgotRXJyb3IJMTI1OQlaTElCOiBJbnB1dCBkYXRhIGNvcnJ1cHRlZAorV2FybmluZwkxMjU5 CVpMSUI6IElucHV0IGRhdGEgY29ycnVwdGVkCiBzZWxlY3QgKiBmcm9tIHQxIHdoZXJlIHVuY29t cHJlc3MoYSkgaXMgbnVsbDsKIGEKIGZvbwogV2FybmluZ3M6Ci1FcnJvcgkxMjU5CVpMSUI6IElu cHV0IGRhdGEgY29ycnVwdGVkCitXYXJuaW5nCTEyNTkJWkxJQjogSW5wdXQgZGF0YSBjb3JydXB0 ZWQKIGV4cGxhaW4gc2VsZWN0ICosIHVuY29tcHJlc3MoYSkgZnJvbSB0MTsKIGlkCXNlbGVjdF90 eXBlCXRhYmxlCXR5cGUJcG9zc2libGVfa2V5cwlrZXkJa2V5X2xlbglyZWYJcm93cwlFeHRyYQog MQlTSU1QTEUJdDEJc3lzdGVtCU5VTEwJTlVMTAlOVUxMCU5VTEwJMQkKQEAgLTEwOCwxMiArMTA4 LDEyIEBAIHNlbGVjdCAqLCB1bmNvbXByZXNzKGEpIGZyb20gdDE7CiBhCXVuY29tcHJlc3MoYSkK IGZvbwlOVUxMCiBXYXJuaW5nczoKLUVycm9yCTEyNTkJWkxJQjogSW5wdXQgZGF0YSBjb3JydXB0 ZWQKK1dhcm5pbmcJMTI1OQlaTElCOiBJbnB1dCBkYXRhIGNvcnJ1cHRlZAogc2VsZWN0ICosIHVu Y29tcHJlc3MoYSksIHVuY29tcHJlc3MoYSkgaXMgbnVsbCBmcm9tIHQxOwogYQl1bmNvbXByZXNz KGEpCXVuY29tcHJlc3MoYSkgaXMgbnVsbAogZm9vCU5VTEwJMQogV2FybmluZ3M6Ci1FcnJvcgkx MjU5CVpMSUI6IElucHV0IGRhdGEgY29ycnVwdGVkCi1FcnJvcgkxMjU5CVpMSUI6IElucHV0IGRh dGEgY29ycnVwdGVkCitXYXJuaW5nCTEyNTkJWkxJQjogSW5wdXQgZGF0YSBjb3JydXB0ZWQKK1dh cm5pbmcJMTI1OQlaTElCOiBJbnB1dCBkYXRhIGNvcnJ1cHRlZAogZHJvcCB0YWJsZSB0MTsKIEVu ZCBvZiA1LjAgdGVzdHMKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3IvZnVuY19kaWdl c3QucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3IvZnVuY19kaWdlc3QucmVzdWx0CTIwMDctMTIt MTggMTc6Mjc6MjIgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL2Z1bmNfZGlnZXN0LnJlc3VsdAky MDA4LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC0xMzQ2LDMyICsxMzQ2LDMyIEBAIFNFTEVDVCBT SEEyKCB4J2ZmJywgMSApOwogU0hBMiggeCdmZicsIDEgKQogTlVMTAogV2FybmluZ3M6Ci1FcnJv cgkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGluIHRoZSBjYWxsIHRvIG5hdGl2ZSBmdW5jdGlv biAnc2hhMicKK1dhcm5pbmcJMTU4MwlJbmNvcnJlY3QgcGFyYW1ldGVycyBpbiB0aGUgY2FsbCB0 byBuYXRpdmUgZnVuY3Rpb24gJ3NoYTInCiBTRUxFQ1QgU0hBMiggeCdmZicsIDIgKTsKIFNIQTIo IHgnZmYnLCAyICkKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTU4MwlJbmNvcnJlY3QgcGFyYW1l dGVycyBpbiB0aGUgY2FsbCB0byBuYXRpdmUgZnVuY3Rpb24gJ3NoYTInCitXYXJuaW5nCTE1ODMJ SW5jb3JyZWN0IHBhcmFtZXRlcnMgaW4gdGhlIGNhbGwgdG8gbmF0aXZlIGZ1bmN0aW9uICdzaGEy JwogU0VMRUNUIFNIQTIoIHgnZmYnLCAyMjMgKTsKIFNIQTIoIHgnZmYnLCAyMjMgKQogTlVMTAog V2FybmluZ3M6Ci1FcnJvcgkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGluIHRoZSBjYWxsIHRv IG5hdGl2ZSBmdW5jdGlvbiAnc2hhMicKK1dhcm5pbmcJMTU4MwlJbmNvcnJlY3QgcGFyYW1ldGVy cyBpbiB0aGUgY2FsbCB0byBuYXRpdmUgZnVuY3Rpb24gJ3NoYTInCiBTRUxFQ1QgU0hBMiggeCdm ZicsIDUxMSApOwogU0hBMiggeCdmZicsIDUxMSApCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTE1 ODMJSW5jb3JyZWN0IHBhcmFtZXRlcnMgaW4gdGhlIGNhbGwgdG8gbmF0aXZlIGZ1bmN0aW9uICdz aGEyJworV2FybmluZwkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGluIHRoZSBjYWxsIHRvIG5h dGl2ZSBmdW5jdGlvbiAnc2hhMicKIFNFTEVDVCBTSEEyKCB4J2ZmJywgbGVhc3QoMTIzLCA0Mikg KTsKIFNIQTIoIHgnZmYnLCBsZWFzdCgxMjMsIDQyKSApCiBOVUxMCiBXYXJuaW5nczoKLUVycm9y CTE1ODMJSW5jb3JyZWN0IHBhcmFtZXRlcnMgaW4gdGhlIGNhbGwgdG8gbmF0aXZlIGZ1bmN0aW9u ICdzaGEyJworV2FybmluZwkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGluIHRoZSBjYWxsIHRv IG5hdGl2ZSBmdW5jdGlvbiAnc2hhMicKIFNFTEVDVCBTSEEyKCB4J2ZmJywgMTAwMDAwMDAwMDAw MDAgKTsKIFNIQTIoIHgnZmYnLCAxMDAwMDAwMDAwMDAwMCApCiBOVUxMCiBXYXJuaW5nczoKLUVy cm9yCTE1ODMJSW5jb3JyZWN0IHBhcmFtZXRlcnMgaW4gdGhlIGNhbGwgdG8gbmF0aXZlIGZ1bmN0 aW9uICdzaGEyJworV2FybmluZwkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGluIHRoZSBjYWxs IHRvIG5hdGl2ZSBmdW5jdGlvbiAnc2hhMicKIFNFTEVDVCBTSEEyKCBTSEEyKCBOVUxMLCAyMjQp LCAyMjQgKTsKIFNIQTIoIFNIQTIoIE5VTEwsIDIyNCksIDIyNCApCiBOVUxMCgo9PT0gbW9kaWZp ZWQgZmlsZSAnbXlzcWwtdGVzdC9yL2Z1bmNfZW5jcnlwdC5yZXN1bHQnCi0tLSBhL215c3FsLXRl c3Qvci9mdW5jX2VuY3J5cHQucmVzdWx0CTIwMDgtMDItMTIgMTk6Mjk6NTUgKzAwMDAKKysrIGIv bXlzcWwtdGVzdC9yL2Z1bmNfZW5jcnlwdC5yZXN1bHQJMjAwOC0wNy0xNCAxMjo0OToxOSArMDAw MApAQCAtMTI0LDcgKzEyNCw3IEBAIHNlbGVjdCBkZXNfZW5jcnlwdCgiaGVsbG8iLDEwKTsKIGRl c19lbmNyeXB0KCJoZWxsbyIsMTApCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTE1ODMJSW5jb3Jy ZWN0IHBhcmFtZXRlcnMgaW4gdGhlIGNhbGwgdG8gbmF0aXZlIGZ1bmN0aW9uICdkZXNfZW5jcnlw dCcKK1dhcm5pbmcJMTU4MwlJbmNvcnJlY3QgcGFyYW1ldGVycyBpbiB0aGUgY2FsbCB0byBuYXRp dmUgZnVuY3Rpb24gJ2Rlc19lbmNyeXB0Jwogc2VsZWN0IGRlc19lbmNyeXB0KE5VTEwpOwogZGVz X2VuY3J5cHQoTlVMTCkKIE5VTEwKQEAgLTEzOCwxMiArMTM4LDEyIEBAIHNlbGVjdCBkZXNfZW5j cnlwdCgxMCwgTlVMTCk7CiBkZXNfZW5jcnlwdCgxMCwgTlVMTCkKIE5VTEwKIFdhcm5pbmdzOgot RXJyb3IJMTU4MwlJbmNvcnJlY3QgcGFyYW1ldGVycyBpbiB0aGUgY2FsbCB0byBuYXRpdmUgZnVu Y3Rpb24gJ2Rlc19lbmNyeXB0JworV2FybmluZwkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGlu IHRoZSBjYWxsIHRvIG5hdGl2ZSBmdW5jdGlvbiAnZGVzX2VuY3J5cHQnCiBzZWxlY3QgZGVzX2Vu Y3J5cHQoImhlbGxvIiwgTlVMTCk7CiBkZXNfZW5jcnlwdCgiaGVsbG8iLCBOVUxMKQogTlVMTAog V2FybmluZ3M6Ci1FcnJvcgkxNTgzCUluY29ycmVjdCBwYXJhbWV0ZXJzIGluIHRoZSBjYWxsIHRv IG5hdGl2ZSBmdW5jdGlvbiAnZGVzX2VuY3J5cHQnCitXYXJuaW5nCTE1ODMJSW5jb3JyZWN0IHBh cmFtZXRlcnMgaW4gdGhlIGNhbGwgdG8gbmF0aXZlIGZ1bmN0aW9uICdkZXNfZW5jcnlwdCcKIHNl bGVjdCBkZXNfZGVjcnlwdCgiaGVsbG8iLDEwKTsKIGRlc19kZWNyeXB0KCJoZWxsbyIsMTApCiBo ZWxsbwpAQCAtMTc3LDcgKzE3Nyw3IEBAIHNlbGVjdCBoZXgoZGVzX2RlY3J5cHQoZGVzX2VuY3J5 cHQoImhlbGwKIGhleChkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgiaGVsbG8iLCJoaWRkZW4iKSkp CiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTE1ODMJSW5jb3JyZWN0IHBhcmFtZXRlcnMgaW4gdGhl IGNhbGwgdG8gbmF0aXZlIGZ1bmN0aW9uICdkZXNfZGVjcnlwdCcKK1dhcm5pbmcJMTU4MwlJbmNv cnJlY3QgcGFyYW1ldGVycyBpbiB0aGUgY2FsbCB0byBuYXRpdmUgZnVuY3Rpb24gJ2Rlc19kZWNy eXB0JwogZXhwbGFpbiBleHRlbmRlZCBzZWxlY3QgZGVzX2RlY3J5cHQoZGVzX2VuY3J5cHQoImhl bGxvIiw0KSwncGFzc3dvcmQyJyksIGRlc19kZWNyeXB0KGRlc19lbmNyeXB0KCJoZWxsbyIsImhp ZGRlbiIpKTsKIGlkCXNlbGVjdF90eXBlCXRhYmxlCXR5cGUJcG9zc2libGVfa2V5cwlrZXkJa2V5 X2xlbglyZWYJcm93cwlmaWx0ZXJlZAlFeHRyYQogMQlTSU1QTEUJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5vIHRhYmxlcyB1c2VkCgo9PT0gbW9kaWZpZWQgZmlsZSAn bXlzcWwtdGVzdC9yL2Z1bmNfZW5jcnlwdF9ub3NzbC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qv ci9mdW5jX2VuY3J5cHRfbm9zc2wucmVzdWx0CTIwMDctMTItMTEgMTA6Mzk6MTQgKzAwMDAKKysr IGIvbXlzcWwtdGVzdC9yL2Z1bmNfZW5jcnlwdF9ub3NzbC5yZXN1bHQJMjAwOC0wNy0xNSAwMDow Njo0MyArMDAwMApAQCAtMiw4MyArMiw4MyBAQCBzZWxlY3QgZGVzX2VuY3J5cHQoInRlc3QiLCAn YWtleXN0cicpOwogZGVzX2VuY3J5cHQoInRlc3QiLCAnYWtleXN0cicpCiBOVUxMCiBXYXJuaW5n czoKLUVycm9yCTEyODkJVGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91 IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCitX YXJuaW5nCTEyODkJVGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91IG5l ZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCiBzZWxl Y3QgZGVzX2VuY3J5cHQoInRlc3QiLCAxKTsKIGRlc19lbmNyeXB0KCJ0ZXN0IiwgMSkKIE5VTEwK IFdhcm5pbmdzOgotRXJyb3IJMTI4OQlUaGUgJ2Rlc19lbmNyeXB0JyBmZWF0dXJlIGlzIGRpc2Fi bGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZlIGl0IHdv cmtpbmcKK1dhcm5pbmcJMTI4OQlUaGUgJ2Rlc19lbmNyeXB0JyBmZWF0dXJlIGlzIGRpc2FibGVk OyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZlIGl0IHdvcmtp bmcKIHNlbGVjdCBkZXNfZW5jcnlwdCgidGVzdCIsIDkpOwogZGVzX2VuY3J5cHQoInRlc3QiLCA5 KQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2VuY3J5cHQnIGZlYXR1cmUg aXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhh dmUgaXQgd29ya2luZworV2FybmluZwkxMjg5CVRoZSAnZGVzX2VuY3J5cHQnIGZlYXR1cmUgaXMg ZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUg aXQgd29ya2luZwogc2VsZWN0IGRlc19lbmNyeXB0KCJ0ZXN0IiwgMTAwKTsKIGRlc19lbmNyeXB0 KCJ0ZXN0IiwgMTAwKQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2VuY3J5 cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0 aC1zc2wnIHRvIGhhdmUgaXQgd29ya2luZworV2FybmluZwkxMjg5CVRoZSAnZGVzX2VuY3J5cHQn IGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1z c2wnIHRvIGhhdmUgaXQgd29ya2luZwogc2VsZWN0IGRlc19lbmNyeXB0KCJ0ZXN0IiwgTlVMTCk7 CiBkZXNfZW5jcnlwdCgidGVzdCIsIE5VTEwpCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTEyODkJ VGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91IG5lZWQgTXlTUUwgYnVp bHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCitXYXJuaW5nCTEyODkJVGhl ICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91IG5lZWQgTXlTUUwgYnVpbHQg d2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCiBzZWxlY3QgZGVzX2VuY3J5cHQo TlVMTCwgTlVMTCk7CiBkZXNfZW5jcnlwdChOVUxMLCBOVUxMKQogTlVMTAogV2FybmluZ3M6Ci1F cnJvcgkxMjg5CVRoZSAnZGVzX2VuY3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVk IE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUgaXQgd29ya2luZworV2Fybmlu ZwkxMjg5CVRoZSAnZGVzX2VuY3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15 U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUgaXQgd29ya2luZwogc2VsZWN0IGRl c19kZWNyeXB0KCJ0ZXN0IiwgJ2Fub3RoZXJrZXlzdHInKTsKIGRlc19kZWNyeXB0KCJ0ZXN0Iiwg J2Fub3RoZXJrZXlzdHInKQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2Rl Y3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0t d2l0aC1zc2wnIHRvIGhhdmUgaXQgd29ya2luZworV2FybmluZwkxMjg5CVRoZSAnZGVzX2RlY3J5 cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0 aC1zc2wnIHRvIGhhdmUgaXQgd29ya2luZwogc2VsZWN0IGRlc19kZWNyeXB0KDEsIDEpOwogZGVz X2RlY3J5cHQoMSwgMSkKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTI4OQlUaGUgJ2Rlc19kZWNy eXB0JyBmZWF0dXJlIGlzIGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdp dGgtc3NsJyB0byBoYXZlIGl0IHdvcmtpbmcKK1dhcm5pbmcJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0 JyBmZWF0dXJlIGlzIGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgt c3NsJyB0byBoYXZlIGl0IHdvcmtpbmcKIHNlbGVjdCBkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgi dGVzdCIsICd0aGVrZXknKSk7CiBkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgidGVzdCIsICd0aGVr ZXknKSkKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0 dXJlIGlzIGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0 byBoYXZlIGl0IHdvcmtpbmcKK1dhcm5pbmcJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0dXJl IGlzIGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBo YXZlIGl0IHdvcmtpbmcKIHNlbGVjdCBoZXgoZGVzX2VuY3J5cHQoImhlbGxvIikpLGRlc19kZWNy eXB0KGRlc19lbmNyeXB0KCJoZWxsbyIpKTsKIGhleChkZXNfZW5jcnlwdCgiaGVsbG8iKSkJZGVz X2RlY3J5cHQoZGVzX2VuY3J5cHQoImhlbGxvIikpCiBOVUxMCU5VTEwKIFdhcm5pbmdzOgotRXJy b3IJMTI4OQlUaGUgJ2Rlc19lbmNyeXB0JyBmZWF0dXJlIGlzIGRpc2FibGVkOyB5b3UgbmVlZCBN eVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZlIGl0IHdvcmtpbmcKLUVycm9yCTEy ODkJVGhlICdkZXNfZGVjcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91IG5lZWQgTXlTUUwg YnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCitXYXJuaW5nCTEyODkJ VGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91IG5lZWQgTXlTUUwgYnVp bHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCitXYXJuaW5nCTEyODkJVGhl ICdkZXNfZGVjcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91IG5lZWQgTXlTUUwgYnVpbHQg d2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCiBzZWxlY3QgZGVzX2RlY3J5cHQo ZGVzX2VuY3J5cHQoImhlbGxvIiw0KSk7CiBkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgiaGVsbG8i LDQpKQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2RlY3J5cHQnIGZlYXR1 cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRv IGhhdmUgaXQgd29ya2luZworV2FybmluZwkxMjg5CVRoZSAnZGVzX2RlY3J5cHQnIGZlYXR1cmUg aXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhh dmUgaXQgd29ya2luZwogc2VsZWN0IGRlc19kZWNyeXB0KGRlc19lbmNyeXB0KCJoZWxsbyIsJ3Rl c3QnKSwndGVzdCcpOwogZGVzX2RlY3J5cHQoZGVzX2VuY3J5cHQoImhlbGxvIiwndGVzdCcpLCd0 ZXN0JykKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0 dXJlIGlzIGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0 byBoYXZlIGl0IHdvcmtpbmcKK1dhcm5pbmcJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0dXJl IGlzIGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBo YXZlIGl0IHdvcmtpbmcKIHNlbGVjdCBoZXgoZGVzX2VuY3J5cHQoImhlbGxvIikpLGhleChkZXNf ZW5jcnlwdCgiaGVsbG8iLDUpKSxoZXgoZGVzX2VuY3J5cHQoImhlbGxvIiwnZGVmYXVsdF9wYXNz d29yZCcpKTsKIGhleChkZXNfZW5jcnlwdCgiaGVsbG8iKSkJaGV4KGRlc19lbmNyeXB0KCJoZWxs byIsNSkpCWhleChkZXNfZW5jcnlwdCgiaGVsbG8iLCdkZWZhdWx0X3Bhc3N3b3JkJykpCiBOVUxM CU5VTEwJTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2VuY3J5cHQnIGZlYXR1 cmUgaXMgZGlzYWJsZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRv IGhhdmUgaXQgd29ya2luZwotRXJyb3IJMTI4OQlUaGUgJ2Rlc19lbmNyeXB0JyBmZWF0dXJlIGlz IGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZl IGl0IHdvcmtpbmcKLUVycm9yCTEyODkJVGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNh YmxlZDsgeW91IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3 b3JraW5nCitXYXJuaW5nCTEyODkJVGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxl ZDsgeW91IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3Jr aW5nCitXYXJuaW5nCTEyODkJVGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsg eW91IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5n CitXYXJuaW5nCTEyODkJVGhlICdkZXNfZW5jcnlwdCcgZmVhdHVyZSBpcyBkaXNhYmxlZDsgeW91 IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBpdCB3b3JraW5nCiBz ZWxlY3QgZGVzX2RlY3J5cHQoZGVzX2VuY3J5cHQoImhlbGxvIiksJ2RlZmF1bHRfcGFzc3dvcmQn KTsKIGRlc19kZWNyeXB0KGRlc19lbmNyeXB0KCJoZWxsbyIpLCdkZWZhdWx0X3Bhc3N3b3JkJykK IE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0dXJlIGlz IGRpc2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZl IGl0IHdvcmtpbmcKK1dhcm5pbmcJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0dXJlIGlzIGRp c2FibGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZlIGl0 IHdvcmtpbmcKIHNlbGVjdCBkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgiaGVsbG8iLDQpLCdwYXNz d29yZDQnKTsKIGRlc19kZWNyeXB0KGRlc19lbmNyeXB0KCJoZWxsbyIsNCksJ3Bhc3N3b3JkNCcp CiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTEyODkJVGhlICdkZXNfZGVjcnlwdCcgZmVhdHVyZSBp cyBkaXNhYmxlZDsgeW91IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2 ZSBpdCB3b3JraW5nCitXYXJuaW5nCTEyODkJVGhlICdkZXNfZGVjcnlwdCcgZmVhdHVyZSBpcyBk aXNhYmxlZDsgeW91IG5lZWQgTXlTUUwgYnVpbHQgd2l0aCAnLS13aXRoLXNzbCcgdG8gaGF2ZSBp dCB3b3JraW5nCiBTRVQgQGE9ZGVzX2RlY3J5cHQoZGVzX2VuY3J5cHQoImhlbGxvIikpOwogV2Fy bmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2RlY3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7 IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUgaXQgd29ya2lu ZworV2FybmluZwkxMjg5CVRoZSAnZGVzX2RlY3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7IHlv dSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUgaXQgd29ya2luZwog Zmx1c2ggZGVzX2tleV9maWxlOwogc2VsZWN0IEBhID0gZGVzX2RlY3J5cHQoZGVzX2VuY3J5cHQo ImhlbGxvIikpOwogQGEgPSBkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgiaGVsbG8iKSkKQEAgLTkw LDkgKzkwLDkgQEAgc2VsZWN0IGhleChkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgiaGVsbAogaGV4 KGRlc19kZWNyeXB0KGRlc19lbmNyeXB0KCJoZWxsbyIsNCksJ3Bhc3N3b3JkMicpKQogTlVMTAog V2FybmluZ3M6Ci1FcnJvcgkxMjg5CVRoZSAnZGVzX2RlY3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJs ZWQ7IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUgaXQgd29y a2luZworV2FybmluZwkxMjg5CVRoZSAnZGVzX2RlY3J5cHQnIGZlYXR1cmUgaXMgZGlzYWJsZWQ7 IHlvdSBuZWVkIE15U1FMIGJ1aWx0IHdpdGggJy0td2l0aC1zc2wnIHRvIGhhdmUgaXQgd29ya2lu Zwogc2VsZWN0IGhleChkZXNfZGVjcnlwdChkZXNfZW5jcnlwdCgiaGVsbG8iLCJoaWRkZW4iKSkp OwogaGV4KGRlc19kZWNyeXB0KGRlc19lbmNyeXB0KCJoZWxsbyIsImhpZGRlbiIpKSkKIE5VTEwK IFdhcm5pbmdzOgotRXJyb3IJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0dXJlIGlzIGRpc2Fi bGVkOyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZlIGl0IHdv cmtpbmcKK1dhcm5pbmcJMTI4OQlUaGUgJ2Rlc19kZWNyeXB0JyBmZWF0dXJlIGlzIGRpc2FibGVk OyB5b3UgbmVlZCBNeVNRTCBidWlsdCB3aXRoICctLXdpdGgtc3NsJyB0byBoYXZlIGl0IHdvcmtp bmcKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3IvZnVuY19pZi5yZXN1bHQnCi0tLSBh L215c3FsLXRlc3Qvci9mdW5jX2lmLnJlc3VsdAkyMDA4LTAyLTEyIDE5OjA5OjE2ICswMDAwCisr KyBiL215c3FsLXRlc3Qvci9mdW5jX2lmLnJlc3VsdAkyMDA4LTA3LTMxIDA5OjUwOjI0ICswMDAw CkBAIC0xMzEsMyArMTMxLDQ5IEBAIGRyb3AgdGFibGUgdDE7CiBzZWxlY3QgaWYoMCwgMTg0NDY3 NDQwNzM3MDk1NTE2MTAsIDE4NDQ2NzQ0MDczNzA5NTUxNjEwKTsKIGlmKDAsIDE4NDQ2NzQ0MDcz NzA5NTUxNjEwLCAxODQ0Njc0NDA3MzcwOTU1MTYxMCkKIDE4NDQ2NzQ0MDczNzA5NTUxNjEwCitD UkVBVEUgVEFCTEUgdDEoYSBERUNJTUFMKDEwLDMpKTsKK1NFTEVDVCB0MS5hLAorSUYoKFJPVU5E KHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5h LDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0x KSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIs CitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLAorSUYo KFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VO RCh0MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEu YSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9 MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAy LAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lG KChST1VORCh0MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9V TkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQx LmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIp PTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwg MiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLDApKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp KSkgKyAxCitGUk9NIHQxOworYQlJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0 MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwy KT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLAorSUYoKFJPVU5EKHQxLmEsMik9MSks IDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChST1VORCh0MS5hLDIpPTEpLCAyLAor SUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCitJRigoUk9VTkQodDEuYSwyKT0xKSwgMiwKK0lGKChS CitEUk9QIFRBQkxFIHQxOworRW5kIG9mIDUuMCB0ZXN0cwoKPT09IG1vZGlmaWVkIGZpbGUgJ215 c3FsLXRlc3Qvci9mdW5jX21hdGgucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3IvZnVuY19tYXRo LnJlc3VsdAkyMDA4LTA0LTA3IDE4OjI1OjE5ICswMDAwCisrKyBiL215c3FsLXRlc3Qvci9mdW5j X21hdGgucmVzdWx0CTIwMDgtMDctMTQgMTI6NDk6MTkgKzAwMDAKQEAgLTIyNSwyNyArMjI1LDI3 IEBAIHNlbGVjdCBsbigtMSk7CiBsbigtMSkKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTM2NQlE aXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogc2VsZWN0IGxvZzEwKC0x KTsKIGxvZzEwKC0xKQogTlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAK K1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCiBzZWxlY3QgbG9nMigtMSk7CiBsb2cyKC0xKQog TlVMTAogV2FybmluZ3M6Ci1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlE aXZpc2lvbiBieSAwCiBzZWxlY3QgbG9nKDIsLTEpOwogbG9nKDIsLTEpCiBOVUxMCiBXYXJuaW5n czoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAK IHNlbGVjdCBsb2coLTIsMSk7CiBsb2coLTIsMSkKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJMTM2 NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogc2V0IHNxbF9tb2Rl PScnOwogc2VsZWN0IHJvdW5kKDExMSwtMTApOwogcm91bmQoMTExLC0xMCkKCj09PSBtb2RpZmll ZCBmaWxlICdteXNxbC10ZXN0L3IvZnVuY19zdHIucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3Iv ZnVuY19zdHIucmVzdWx0CTIwMDgtMDUtMTMgMjM6NDI6NDMgKzAwMDAKKysrIGIvbXlzcWwtdGVz dC9yL2Z1bmNfc3RyLnJlc3VsdAkyMDA4LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC0xNDM1LDcg KzE0MzUsNyBAQCBzZWxlY3QgYmVuY2htYXJrKC0xLCAxKTsKIGJlbmNobWFyaygtMSwgMSkKIE5V TEwKIFdhcm5pbmdzOgotRXJyb3IJMTQxMQlJbmNvcnJlY3QgY291bnQgdmFsdWU6ICctMScgZm9y IGZ1bmN0aW9uIGJlbmNobWFyaworV2FybmluZwkxNDExCUluY29ycmVjdCBjb3VudCB2YWx1ZTog Jy0xJyBmb3IgZnVuY3Rpb24gYmVuY2htYXJrCiBzZXQgQHBhc3N3b3JkPSJwYXNzd29yZCI7CiBz ZXQgQG15X2RhdGE9ImNsZWFyIHRleHQgdG8gZW5jb2RlIjsKIHNlbGVjdCBtZDUoZW5jb2RlKEBt eV9kYXRhLCAicGFzc3dvcmQiKSk7CkBAIC0yMjcxLDEyICsyMjcxLDEyIEBAIFNFTEVDVCBDSEFS KDB4ZmYsMHg4ZiBVU0lORyB1dGY4KTsKIENIQVIoMHhmZiwweDhmIFVTSU5HIHV0ZjgpCiBOVUxM CiBXYXJuaW5nczoKLUVycm9yCTEzMDAJSW52YWxpZCB1dGY4IGNoYXJhY3RlciBzdHJpbmc6ICdG RjhGJworV2FybmluZwkxMzAwCUludmFsaWQgdXRmOCBjaGFyYWN0ZXIgc3RyaW5nOiAnRkY4RicK IFNFTEVDVCBDSEFSKDB4ZmYsMHg4ZiBVU0lORyB1dGY4KSBJUyBOVUxMOwogQ0hBUigweGZmLDB4 OGYgVVNJTkcgdXRmOCkgSVMgTlVMTAogMQogV2FybmluZ3M6Ci1FcnJvcgkxMzAwCUludmFsaWQg dXRmOCBjaGFyYWN0ZXIgc3RyaW5nOiAnRkY4RicKK1dhcm5pbmcJMTMwMAlJbnZhbGlkIHV0Zjgg Y2hhcmFjdGVyIHN0cmluZzogJ0ZGOEYnCiBTRVQgU1FMX01PREU9QG9yaWdfc3FsX21vZGU7CiBz ZWxlY3Qgc3Vic3RyaW5nKCdhYmMnLCBjYXN0KDIgYXMgdW5zaWduZWQgaW50KSk7CiBzdWJzdHJp bmcoJ2FiYycsIGNhc3QoMiBhcyB1bnNpZ25lZCBpbnQpKQoKPT09IG1vZGlmaWVkIGZpbGUgJ215 c3FsLXRlc3Qvci9ncmFudC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9ncmFudC5yZXN1bHQJ MjAwOC0wNS0yMiAxODo0MDoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvZ3JhbnQucmVzdWx0 CTIwMDgtMDctMjQgMDc6NDQ6MjEgKzAwMDAKQEAgLTEyLDggKzEyLDggQEAgR1JBTlQgVVNBR0Ug T04gKi4qIFRPICdteXNxbHRlc3RfMSdAJ2xvYwogR1JBTlQgU0VMRUNUIE9OIGBteXNxbHRlc3Rg LiogVE8gJ215c3FsdGVzdF8xJ0AnbG9jYWxob3N0JwogZ3JhbnQgZGVsZXRlIG9uIG15c3FsdGVz dC4qIHRvIG15c3FsdGVzdF8xQGxvY2FsaG9zdDsKIHNlbGVjdCAqIGZyb20gbXlzcWwudXNlciB3 aGVyZSB1c2VyPSJteXNxbHRlc3RfMSI7Ci1Ib3N0CVVzZXIJUGFzc3dvcmQJU2VsZWN0X3ByaXYJ SW5zZXJ0X3ByaXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3ByaXYJRHJvcF9wcml2 CVJlbG9hZF9wcml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZpbGVfcHJpdglHcmFudF9w cml2CVJlZmVyZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJU2hvd19kYl9wcml2CVN1 cGVyX3ByaXYJQ3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVzX3ByaXYJRXhlY3V0ZV9w cml2CVJlcGxfc2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92aWV3X3ByaXYJU2hv d192aWV3X3ByaXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0aW5lX3ByaXYJQ3JlYXRl X3VzZXJfcHJpdglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglzc2xfdHlwZQlzc2xfY2lwaGVyCXg1 MDlfaXNzdWVyCXg1MDlfc3ViamVjdAltYXhfcXVlc3Rpb25zCW1heF91cGRhdGVzCW1heF9jb25u ZWN0aW9ucwltYXhfdXNlcl9jb25uZWN0aW9ucwotbG9jYWxob3N0CW15c3FsdGVzdF8xCQlOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCVNQRUNJ RklFRAlFREgtUlNBLURFUy1DQkMzLVNIQQkJCTAJMAkwCTAKK0hvc3QJVXNlcglQYXNzd29yZAlT ZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVhdGVfcHJp dglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJRmlsZV9w cml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJpdglTaG93 X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJsZXNfcHJp dglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3JlYXRlX3Zp ZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3JvdXRpbmVf cHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CUNyZWF0ZV90YWJs ZXNwYWNlX3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1YmplY3QJ bWF4X3F1ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJfY29ubmVj dGlvbnMKK2xvY2FsaG9zdAlteXNxbHRlc3RfMQkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCVNQRUNJRklFRAlFREgtUlNBLURFUy1DQkMz LVNIQQkJCTAJMAkwCTAKIHNob3cgZ3JhbnRzIGZvciBteXNxbHRlc3RfMUBsb2NhbGhvc3Q7CiBH cmFudHMgZm9yIG15c3FsdGVzdF8xQGxvY2FsaG9zdAogR1JBTlQgVVNBR0UgT04gKi4qIFRPICdt eXNxbHRlc3RfMSdAJ2xvY2FsaG9zdCcgUkVRVUlSRSBDSVBIRVIgJ0VESC1SU0EtREVTLUNCQzMt U0hBJwpAQCAtNDMsMTUgKzQzLDE1IEBAIGRlbGV0ZSBmcm9tIG15c3FsLnVzZXIgd2hlcmUgdXNl cj0nbXlzcWwKIGZsdXNoIHByaXZpbGVnZXM7CiBncmFudCB1c2FnZSBvbiAqLiogdG8gbXlzcWx0 ZXN0XzFAbG9jYWxob3N0IHdpdGggbWF4X3F1ZXJpZXNfcGVyX2hvdXIgMTA7CiBzZWxlY3QgKiBm cm9tIG15c3FsLnVzZXIgd2hlcmUgdXNlcj0ibXlzcWx0ZXN0XzEiOwotSG9zdAlVc2VyCVBhc3N3 b3JkCVNlbGVjdF9wcml2CUluc2VydF9wcml2CVVwZGF0ZV9wcml2CURlbGV0ZV9wcml2CUNyZWF0 ZV9wcml2CURyb3BfcHJpdglSZWxvYWRfcHJpdglTaHV0ZG93bl9wcml2CVByb2Nlc3NfcHJpdglG aWxlX3ByaXYJR3JhbnRfcHJpdglSZWZlcmVuY2VzX3ByaXYJSW5kZXhfcHJpdglBbHRlcl9wcml2 CVNob3dfZGJfcHJpdglTdXBlcl9wcml2CUNyZWF0ZV90bXBfdGFibGVfcHJpdglMb2NrX3RhYmxl c19wcml2CUV4ZWN1dGVfcHJpdglSZXBsX3NsYXZlX3ByaXYJUmVwbF9jbGllbnRfcHJpdglDcmVh dGVfdmlld19wcml2CVNob3dfdmlld19wcml2CUNyZWF0ZV9yb3V0aW5lX3ByaXYJQWx0ZXJfcm91 dGluZV9wcml2CUNyZWF0ZV91c2VyX3ByaXYJRXZlbnRfcHJpdglUcmlnZ2VyX3ByaXYJc3NsX3R5 cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1YmplY3QJbWF4X3F1ZXN0aW9ucwltYXhf dXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJfY29ubmVjdGlvbnMKLWxvY2FsaG9zdAlt eXNxbHRlc3RfMQkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTgkJCQkJMTAJMAkwCTAKK0hvc3QJVXNlcglQYXNzd29yZAlTZWxlY3RfcHJpdglJ bnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVhdGVfcHJpdglEcm9wX3ByaXYJ UmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50X3By aXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJU3Vw ZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJsZXNfcHJpdglFeGVjdXRlX3By aXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93 X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVhdGVf dXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CUNyZWF0ZV90YWJsZXNwYWNlX3ByaXYJ c3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1YmplY3QJbWF4X3F1ZXN0aW9u cwltYXhfdXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJfY29ubmVjdGlvbnMKK2xvY2Fs aG9zdAlteXNxbHRlc3RfMQkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCQkJCQkxMAkwCTAJMAogc2hvdyBncmFudHMgZm9yIG15c3FsdGVz dF8xQGxvY2FsaG9zdDsKIEdyYW50cyBmb3IgbXlzcWx0ZXN0XzFAbG9jYWxob3N0CiBHUkFOVCBV U0FHRSBPTiAqLiogVE8gJ215c3FsdGVzdF8xJ0AnbG9jYWxob3N0JyBXSVRIIE1BWF9RVUVSSUVT X1BFUl9IT1VSIDEwCiBncmFudCB1c2FnZSBvbiAqLiogdG8gbXlzcWx0ZXN0XzFAbG9jYWxob3N0 IHdpdGggbWF4X3VwZGF0ZXNfcGVyX2hvdXIgMjAgbWF4X2Nvbm5lY3Rpb25zX3Blcl9ob3VyIDMw Owogc2VsZWN0ICogZnJvbSBteXNxbC51c2VyIHdoZXJlIHVzZXI9Im15c3FsdGVzdF8xIjsKLUhv c3QJVXNlcglQYXNzd29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxl dGVfcHJpdglDcmVhdGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQ cm9jZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3By aXYJQWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3By aXYJTG9ja190YWJsZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xp ZW50X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9w cml2CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dl cl9wcml2CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9x dWVzdGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25z Ci1sb2NhbGhvc3QJbXlzcWx0ZXN0XzEJCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTEwCTIwCTMwCTAKK0hvc3QJVXNlcglQYXNzd29y ZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVhdGVf cHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJRmls ZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJpdglT aG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJsZXNf cHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3JlYXRl X3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3JvdXRp bmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CUNyZWF0ZV90 YWJsZXNwYWNlX3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1Ympl Y3QJbWF4X3F1ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJfY29u bmVjdGlvbnMKK2xvY2FsaG9zdAlteXNxbHRlc3RfMQkJTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkxMAkyMAkzMAkwCiBzaG93IGdy YW50cyBmb3IgbXlzcWx0ZXN0XzFAbG9jYWxob3N0OwogR3JhbnRzIGZvciBteXNxbHRlc3RfMUBs b2NhbGhvc3QKIEdSQU5UIFVTQUdFIE9OICouKiBUTyAnbXlzcWx0ZXN0XzEnQCdsb2NhbGhvc3Qn IFdJVEggTUFYX1FVRVJJRVNfUEVSX0hPVVIgMTAgTUFYX1VQREFURVNfUEVSX0hPVVIgMjAgTUFY X0NPTk5FQ1RJT05TX1BFUl9IT1VSIDMwCkBAIC00ODIsNiArNDgyLDcgQEAgU2hvdyB2aWV3CVRh YmxlcwlUbyBzZWUgdmlld3Mgd2l0aCBTSE9XIAogU2h1dGRvd24JU2VydmVyIEFkbWluCVRvIHNo dXQgZG93biB0aGUgc2VydmVyCiBTdXBlcglTZXJ2ZXIgQWRtaW4JVG8gdXNlIEtJTEwgdGhyZWFk LCBTRVQgR0xPQkFMLCBDSEFOR0UgTUFTVEVSLCBldGMuCiBUcmlnZ2VyCVRhYmxlcwlUbyB1c2Ug dHJpZ2dlcnMKK0NyZWF0ZSB0YWJsZXNwYWNlCVNlcnZlciBBZG1pbglUbyBjcmVhdGUvYWx0ZXIv ZHJvcCB0YWJsZXNwYWNlcwogVXBkYXRlCVRhYmxlcwlUbyB1cGRhdGUgZXhpc3Rpbmcgcm93cwog VXNhZ2UJU2VydmVyIEFkbWluCU5vIHByaXZpbGVnZXMgLSBhbGxvdyBjb25uZWN0IG9ubHkKIGNy ZWF0ZSBkYXRhYmFzZSBteXNxbHRlc3Q7Cgo9PT0gYWRkZWQgZmlsZSAnbXlzcWwtdGVzdC9yL2lt cGxpY2l0X2NvbW1pdC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9pbXBsaWNpdF9jb21taXQu cmVzdWx0CTE5NzAtMDEtMDEgMDA6MDA6MDAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL2ltcGxp Y2l0X2NvbW1pdC5yZXN1bHQJMjAwOC0wNy0yNiAxNjozODoyMCArMDAwMApAQCAtMCwwICsxLDEw NjYgQEAKK1NFVCBHTE9CQUwgRVZFTlRfU0NIRURVTEVSID0gT0ZGOworU0VUIEJJTkxPR19GT1JN QVQgPSBTVEFURU1FTlQ7CitDUkVBVEUgREFUQUJBU0UgZGIxOworVVNFIGRiMTsKK0NSRUFURSBU QUJMRSB0MSAoYSBJTlQsIEtFWSBhKGEpKSBFTkdJTkU9SU5OT0RCOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgxKSwoMiksKDMpLCg0KSwoNSk7CitDUkVBVEUgVEFCTEUgdDMgKGEgSU5UKSBFTkdJ TkU9TXlJU0FNOworSU5TRVJUIElOVE8gdDMgU0VMRUNUICogRlJPTSB0MTsKK0NSRUFURSBUQUJM RSB0cmFucyAoYSBJTlQpIEVOR0lORT1JTk5PREI7CitDUkVBVEUgUFJPQ0VEVVJFIHRlc3RfaWZf Y29tbWl0KCkKK0JFR0lOCitST0xMQkFDSzsKK1NFTEVDVCBJRiAoQ09VTlQoKikgPiAwLCAiWUVT IiwgIk5PIikgQVMgIklNUExJQ0lUIENPTU1JVCIgRlJPTSB0cmFuczsKK0RFTEVURSBGUk9NIHRy YW5zOworQ09NTUlUOworRU5EfAorU0VUIEFVVE9DT01NSVQgPSBGQUxTRTsKKyMKKyMgU1FMQ09N X1NFTEVDVAorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2VsZWN0 IDEgYXMgcmVzIGZyb20gdDEgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9tIHQxKTsKK0NBTEwg ZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9D UkVBVEVfVEFCTEUgTElLRQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEp OworY3JlYXRlIHRhYmxlIHQyIGxpa2UgdDE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOwor SU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX1NIT1dfQ1JFQVRFCisjCitJTlNFUlQg SU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGNyZWF0ZSB0YWJsZSB0MjsKK0NB TEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENP TV9EUk9QX1RBQkxFCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7Citk cm9wIHRhYmxlIHQyOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1J VAorWUVTCisjCisjIFNRTENPTV9DUkVBVEVfVEFCTEUgVEVNUE9SQVJZCisjCitJTlNFUlQgSU5U TyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitjcmVhdGUgdGVtcG9yYXJ5IHRhYmxlIHQyIGFz IHNlbGVjdCAqIGZyb20gdDE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQg Q09NTUlUCitOTworV2FybmluZ3M6CitXYXJuaW5nCTExOTYJU29tZSBub24tdHJhbnNhY3Rpb25h bCBjaGFuZ2VkIHRhYmxlcyBjb3VsZG4ndCBiZSByb2xsZWQgYmFjaworIworIyBTUUxDT01fRFJP UF9UQUJMRSBURU1QT1JBUlkKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgx KTsKK2Ryb3AgdGVtcG9yYXJ5IHRhYmxlIHQyOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsK K0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX0NSRUFURV9UQUJMRQorIworSU5TRVJU IElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworY3JlYXRlIHRhYmxlIHQyIGFzIHNlbGVj dCAqIGZyb20gdDE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlU CitZRVMKKyMKKyMgU1FMQ09NX1VQREFURQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBW QUxVRVMgKDEpOwordXBkYXRlIHQyIHNldCBhPWErMSB3aGVyZSAoMSkgaW4gKHNlbGVjdCAqIGZy b20gdDEpOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorTk8K K1dhcm5pbmdzOgorV2FybmluZwkxMTk2CVNvbWUgbm9uLXRyYW5zYWN0aW9uYWwgY2hhbmdlZCB0 YWJsZXMgY291bGRuJ3QgYmUgcm9sbGVkIGJhY2sKKyMKKyMgU1FMQ09NX0lOU0VSVAorIworSU5T RVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworaW5zZXJ0IGludG8gdDIgc2V0IGE9 KCgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSkpOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsK K0lNUExJQ0lUIENPTU1JVAorTk8KK1dhcm5pbmdzOgorV2FybmluZwkxMTk2CVNvbWUgbm9uLXRy YW5zYWN0aW9uYWwgY2hhbmdlZCB0YWJsZXMgY291bGRuJ3QgYmUgcm9sbGVkIGJhY2sKKyMKKyMg U1FMQ09NX0lOU0VSVF9TRUxFQ1QKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVT ICgxKTsKK2luc2VydCBpbnRvIHQyIHNlbGVjdCAqIGZyb20gdDE7CitDQUxMIGRiMS50ZXN0X2lm X2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworV2FybmluZ3M6CitXYXJuaW5nCTExOTYJ U29tZSBub24tdHJhbnNhY3Rpb25hbCBjaGFuZ2VkIHRhYmxlcyBjb3VsZG4ndCBiZSByb2xsZWQg YmFjaworIworIyBTUUxDT01fUkVQTEFDRQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBW QUxVRVMgKDEpOworcmVwbGFjZSB0MiBzZXQgYT0oKDEpIGluIChzZWxlY3QgKiBmcm9tIHQxKSk7 CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworV2Fybmlu Z3M6CitXYXJuaW5nCTExOTYJU29tZSBub24tdHJhbnNhY3Rpb25hbCBjaGFuZ2VkIHRhYmxlcyBj b3VsZG4ndCBiZSByb2xsZWQgYmFjaworIworIyBTUUxDT01fUkVQTEFDRV9TRUxFQ1QKKyMKK0lO U0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3JlcGxhY2UgdDIgc2VsZWN0ICog ZnJvbSB0MTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05P CitXYXJuaW5nczoKK1dhcm5pbmcJMTE5NglTb21lIG5vbi10cmFuc2FjdGlvbmFsIGNoYW5nZWQg dGFibGVzIGNvdWxkbid0IGJlIHJvbGxlZCBiYWNrCisjCisjIFNRTENPTV9ERUxFVEUKKyMKK0lO U0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2RlbGV0ZSBmcm9tIHQyIHdoZXJl ICgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSk7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOwor SU1QTElDSVQgQ09NTUlUCitOTworV2FybmluZ3M6CitXYXJuaW5nCTExOTYJU29tZSBub24tdHJh bnNhY3Rpb25hbCBjaGFuZ2VkIHRhYmxlcyBjb3VsZG4ndCBiZSByb2xsZWQgYmFjaworIworIyBT UUxDT01fREVMRVRFX01VTFRJCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAo MSk7CitkZWxldGUgdDIsIHQzIGZyb20gdDIsIHQzIHdoZXJlICgxKSBpbiAoc2VsZWN0ICogZnJv bSB0MSk7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTwor IworIyBTUUxDT01fVVBEQVRFX01VTFRJCisjCitzZWxlY3QgKiBmcm9tIHQyOworYQorSU5TRVJU IElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOwordXBkYXRlIHQyLCB0MyBzZXQgdDMuYT10 Mi5hLCB0Mi5hPW51bGwgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9tIHQxKTsKK0NBTEwgZGIx LnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9MT0FE CisjCitjcmVhdGUgdGFibGUgdDQgKGEgdmFyY2hhcigxMDApKTsKK0lOU0VSVCBJTlRPIGRiMS50 cmFucyAoYSkgVkFMVUVTICgxKTsKK2xvYWQgZGF0YSBpbmZpbGUgJy4uL3N0ZF9kYXRhX2xuL3dv cmRzLmRhdCcgaW50byB0YWJsZSB0NDsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBM SUNJVCBDT01NSVQKK05PCitXYXJuaW5nczoKK1dhcm5pbmcJMTE5NglTb21lIG5vbi10cmFuc2Fj dGlvbmFsIGNoYW5nZWQgdGFibGVzIGNvdWxkbid0IGJlIHJvbGxlZCBiYWNrCitkcm9wIHRhYmxl IHQ0OworIworIyBTUUxDT01fU0hPV19EQVRBQkFTRVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFu cyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgZGF0YWJhc2VzIHdoZXJlICgxKSBpbiAoc2VsZWN0ICog ZnJvbSB0MSk7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitO TworIworIyBTUUxDT01fU0hPV19UQUJMRVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkg VkFMVUVTICgxKTsKK3Nob3cgdGFibGVzIHdoZXJlICgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSk7 CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBT UUxDT01fU0hPV19GSUVMRFMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgx KTsKK3Nob3cgZmllbGRzIGZyb20gdDEgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9tIHQxKTsK K0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNR TENPTV9TSE9XX0tFWVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsK K3Nob3cga2V5cyBmcm9tIHQxIHdoZXJlICgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSk7CitDQUxM IGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01f U0hPV19WQVJJQUJMRVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsK K3Nob3cgdmFyaWFibGVzIHdoZXJlICgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSk7CitDQUxMIGRi MS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01fU0hP V19TVEFUVVMKKyMKKyMKKyMgU1FMQ09NX1NIT1dfRU5HSU5FX01VVEVYCisjCitJTlNFUlQgSU5U TyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGVuZ2luZSBhbGwgbXV0ZXg7CitDQUxM IGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01f U0hPV19QUk9DRVNTTElTVAorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEp Oworc2hvdyBwcm9jZXNzbGlzdDsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJ VCBDT01NSVQKK05PCisjCisjIFNRTENPTV9TSE9XX0VOR0lORV9MT0dTCisjCitJTlNFUlQgSU5U TyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGVuZ2luZSBhbGwgbG9nczsKK0NBTEwg ZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9T SE9XX0VOR0lORV9TVEFUVVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgx KTsKK3Nob3cgZW5naW5lIGFsbCBzdGF0dXM7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOwor SU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01fU0hPV19DSEFSU0VUUworIworSU5TRVJU IElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2hvdyBjaGFyc2V0IHdoZXJlICgxKSBp biAoc2VsZWN0ICogZnJvbSB0MSk7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElD SVQgQ09NTUlUCitOTworIworIyBTUUxDT01fU0hPV19DT0xMQVRJT05TCisjCitJTlNFUlQgSU5U TyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGNvbGxhdGlvbiB3aGVyZSAoMSkgaW4g KHNlbGVjdCAqIGZyb20gdDEpOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lU IENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX1NIT1dfVEFCTEVfU1RBVFVTCisjCitJTlNFUlQgSU5U TyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IHRhYmxlIHN0YXR1cyB3aGVyZSAoMSkg aW4gKHNlbGVjdCAqIGZyb20gdDEpOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJ Q0lUIENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX1NIT1dfVFJJR0dFUlMKKyMKK0lOU0VSVCBJTlRP IGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgdHJpZ2dlcnMgd2hlcmUgKDEpIGluIChz ZWxlY3QgKiBmcm9tIHQxKTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBD T01NSVQKK05PCisjCisjIFNRTENPTV9TSE9XX09QRU5fVEFCTEVTCisjCitJTlNFUlQgSU5UTyBk YjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IG9wZW4gdGFibGVzIHdoZXJlICgxKSBpbiAo c2VsZWN0ICogZnJvbSB0MSk7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQg Q09NTUlUCitOTworIworIyBTUUxDT01fU0hPV19TVEFUVVNfUFJPQworIworIworIyBTUUxDT01f U0hPV19TVEFUVVNfRlVOQworIworIworIyBTUUxDT01fU0VUX09QVElPTgorIworSU5TRVJUIElO VE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2V0IEBhPSgoMSkgaW4gKHNlbGVjdCAqIGZy b20gdDEpKTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05P CisjCisjIFNRTENPTV9ETworIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEp OworZG8gKCgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSkpOworQ0FMTCBkYjEudGVzdF9pZl9jb21t aXQoKTsKK0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX0NBTEwKKyMKK2NyZWF0ZSBw cm9jZWR1cmUgcDEoYSBpbnQpIGJlZ2luIGVuZDsKK2Ryb3AgcHJvY2VkdXJlIHAxOworIworIyBT UUxDT01fQ1JFQVRFX1ZJRVcKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgx KTsKK2NyZWF0ZSB2aWV3IHYxIGFzIHNlbGVjdCAqIGZyb20gdDE7CitDQUxMIGRiMS50ZXN0X2lm X2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0FMVEVSX1ZJRVcK KyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2FsdGVyIHZpZXcgdjEg YXMgc2VsZWN0IDI7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlU CitZRVMKKyMKKyMgU1FMQ09NX0RST1BfVklFVworIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChh KSBWQUxVRVMgKDEpOworZHJvcCB2aWV3IHYxOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsK K0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9DUkVBVEVfSU5ERVgKKyMKK0lOU0VS VCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2NyZWF0ZSBpbmRleCBpZHgxIG9uIHQx KGEpOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCisj CisjIFNRTENPTV9EUk9QX0lOREVYCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVF UyAoMSk7Citkcm9wIGluZGV4IGlkeDEgb24gdDE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgp OworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0FMVEVSX1RBQkxFCisjCitJTlNF UlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CithbHRlciB0YWJsZSB0MSBhZGQgY29s dW1uIGIgaW50OworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAor WUVTCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CithbHRlciB0YWJsZSB0 MSBjaGFuZ2UgYiBjIGludDsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBD T01NSVQKK1lFUworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworYWx0ZXIg dGFibGUgdDEgZHJvcCBjb2x1bW4gYzsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBM SUNJVCBDT01NSVQKK1lFUworIworIyBTUUxDT01fQUxURVJfVEFCTEUgVEVNUE9SQVJZCisjCitj cmVhdGUgdGVtcG9yYXJ5IHRhYmxlIHQ0IChhIGludCk7CitJTlNFUlQgSU5UTyBkYjEudHJhbnMg KGEpIFZBTFVFUyAoMSk7CithbHRlciB0YWJsZSB0MSBhZGQgY29sdW1uIGIgaW50OworQ0FMTCBk YjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCitJTlNFUlQgSU5UTyBk YjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CithbHRlciB0YWJsZSB0MSBjaGFuZ2UgYiBjIGludDsK K0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUworSU5TRVJU IElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworYWx0ZXIgdGFibGUgdDEgZHJvcCBjb2x1 bW4gYzsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUwor ZHJvcCB0YWJsZSB0NDsKKyMKKyMgU1FMQ09NX1RSVU5DQVRFCisjCitpbnNlcnQgaW50byB0MiBz ZWxlY3QgKiBmcm9tIHQxOworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOwor dHJ1bmNhdGUgdGFibGUgdDI7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQg Q09NTUlUCitZRVMKK2luc2VydCBpbnRvIHQyIHNlbGVjdCAqIGZyb20gdDE7CisjCisjIFNRTENP TV9UUlVOQ0FURSBURU1QT1JBUlkKKyMKK2NyZWF0ZSB0ZW1wb3JhcnkgdGFibGUgdDQgYXMgc2Vs ZWN0ICogZnJvbSB0MTsKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Ry dW5jYXRlIHRhYmxlIHQ0OworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENP TU1JVAorWUVTCitkcm9wIHRlbXBvcmFyeSB0YWJsZSB0NDsKKyMKKyMgU1FMQ09NX1NIT1dfTUFT VEVSX1NUQVQKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cg bWFzdGVyIHN0YXR1czsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01N SVQKK05PCisjCisjIFNRTENPTV9TSE9XX1NMQVZFX1NUQVQKKyMKK0lOU0VSVCBJTlRPIGRiMS50 cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgc2xhdmUgc3RhdHVzOworQ0FMTCBkYjEudGVzdF9p Zl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX0dSQU5UCisjCitJ TlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitncmFudCBhbGwgb24gdGVzdC50 MSB0byBteXNxbHRlc3RfMkBsb2NhbGhvc3Qgd2l0aCBncmFudCBvcHRpb247CitDQUxMIGRiMS50 ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX1JFVk9L RQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworcmV2b2tlIHNlbGVj dCBvbiB0ZXN0LnQxIGZyb20gbXlzcWx0ZXN0XzJAbG9jYWxob3N0OworQ0FMTCBkYjEudGVzdF9p Zl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9SRVZPS0VfQUxM CisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CityZXZva2UgYWxsIG9u IHRlc3QudDEgZnJvbSBteXNxbHRlc3RfMkBsb2NhbGhvc3Q7CitDQUxMIGRiMS50ZXN0X2lmX2Nv bW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX1NIT1dfR1JBTlRTCisj CitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGdyYW50czsKK0NB TEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCitJTlNFUlQgSU5U TyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGdyYW50cyBmb3IgY3VycmVudF91c2Vy KCk7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIwor IyBTUUxDT01fTE9DS19UQUJMRVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVT ICgxKTsKK2xvY2sgdGFibGVzIHQxIHdyaXRlLCB0cmFucyB3cml0ZTsKK0NBTEwgZGIxLnRlc3Rf aWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUworIworIyBTUUxDT01fVU5MT0NLX1RB QkxFUworIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOwordW5sb2NrIHRh YmxlczsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUwor IworIyBTUUxDT01fQ1JFQVRFX0RCCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVF UyAoMSk7CitjcmVhdGUgZGF0YWJhc2UgZGIyOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsK K0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9DSEFOR0VfREIKKyMKK2NyZWF0ZSB0 YWJsZSBkYjIudDEgKGEgaW50KTsKK2luc2VydCBpbnRvIGRiMi50MSB2YWx1ZXMgKDEpOworY29t bWl0OworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOwordXNlIGRiMjsKK0NB TEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENP TV9TSE9XX0NSRUFURV9EQgorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEp Oworc2hvdyBjcmVhdGUgZGF0YWJhc2UgZGIyOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsK K0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX0FMVEVSX0RCCisjCisjCisjIFNRTENP TV9BTFRFUl9EQl9VUEdSQURFCisjCisjCisjIFNRTENPTV9EUk9QX0RCCisjCit1c2UgZGIxOwor SU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworZHJvcCBkYXRhYmFzZSBkYjI7 CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMg U1FMQ09NX1JFUEFJUgorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOwor cmVwYWlyIHRhYmxlIHQyOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENP TU1JVAorWUVTCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CityZXBhaXIg dGFibGUgdDIgdXNlX2ZybTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBD T01NSVQKK1lFUworIworIyBTUUxDT01fT1BUSU1JWkUKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFu cyAoYSkgVkFMVUVTICgxKTsKK29wdGltaXplIHRhYmxlIHQxOworQ0FMTCBkYjEudGVzdF9pZl9j b21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9DSEVDSworIworSU5T RVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworY2hlY2sgdGFibGUgdDE7CitDQUxM IGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKK0lOU0VSVCBJTlRP IGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2NoZWNrIHRhYmxlIHQxIGV4dGVuZGVkOworQ0FM TCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENP TV9BU1NJR05fVE9fS0VZQ0FDSEUKKyMKK3NldCBnbG9iYWwga2V5Y2FjaGUua2V5X2J1ZmZlcl9z aXplPTEyOCoxMDI0OworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworY2Fj aGUgaW5kZXggdDMgaW4ga2V5Y2FjaGU7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1Q TElDSVQgQ09NTUlUCitZRVMKK3NldCBnbG9iYWwga2V5Y2FjaGUua2V5X2J1ZmZlcl9zaXplPTA7 CisjCisjIFNRTENPTV9QUkVMT0FEX0tFWVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkg VkFMVUVTICgxKTsKK2xvYWQgaW5kZXggaW50byBjYWNoZSB0MzsKK0NBTEwgZGIxLnRlc3RfaWZf Y29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUworIworIyBTUUxDT01fRkxVU0gKKyMKK0lO U0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2ZsdXNoIGxvY2FsIHByaXZpbGVn ZXM7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKK0lO U0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2ZsdXNoIHByaXZpbGVnZXM7CitD QUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FM Q09NX0tJTEwKKyMKKyMKKyMgU1FMQ09NX0FOQUxZWkUKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFu cyAoYSkgVkFMVUVTICgxKTsKK2FuYWx5emUgdGFibGUgdDE7CitDQUxMIGRiMS50ZXN0X2lmX2Nv bW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX1JPTExCQUNLCisjCitJ TlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7Cityb2xsYmFjazsKK0NBTEwgZGIx LnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9ST0xM QkFDS19UT19TQVZFUE9JTlQKKyMKKyMKKyMgU1FMQ09NX0NPTU1JVAorIworSU5TRVJUIElOVE8g ZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworY29tbWl0OworQ0FMTCBkYjEudGVzdF9pZl9jb21t aXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9TQVZFUE9JTlQKKyMKK0lO U0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3NhdmVwb2ludCBzcDE7CitDQUxM IGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01f UkVMRUFTRV9TQVZFUE9JTlQKKyMKKyMKKyMgU1FMQ09NX1NMQVZFX1NUQVJUCisjCisjCisjIFNR TENPTV9TTEFWRV9TVE9QCisjCisjCisjIFNRTENPTV9CRUdJTgorIworSU5TRVJUIElOVE8gZGIx LnRyYW5zIChhKSBWQUxVRVMgKDEpOworYmVnaW47CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgp OworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0NIQU5HRV9NQVNURVIKKyMKKyMK KyMgU1FMQ09NX1JFTkFNRV9UQUJMRQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxV RVMgKDEpOworcmVuYW1lIHRhYmxlIHQzIHRvIHQ0OworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQo KTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVF UyAoMSk7CityZW5hbWUgdGFibGUgdDQgdG8gdDM7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgp OworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX1JFU0VUCisjCisjCisjIFNRTENP TV9QVVJHRQorIworIworIyBTUUxDT01fUFVSR0VfQkVGT1JFCisjCisjCisjIFNRTENPTV9TSE9X X0JJTkxPR1MKKyMKKyMKKyMgU1FMQ09NX0hBX09QRU4KKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFu cyAoYSkgVkFMVUVTICgxKTsKK2hhbmRsZXIgdDEgb3BlbiBhcyBoYTE7CitDQUxMIGRiMS50ZXN0 X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01fSEFfUkVBRAor IworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworaGFuZGxlciBoYTEgcmVh ZCBhIGZpcnN0OworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAor Tk8KKyMKKyMgU1FMQ09NX0hBX0NMT1NFCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZB TFVFUyAoMSk7CitoYW5kbGVyIGhhMSBjbG9zZTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7 CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9TSE9XX1NMQVZFX0hPU1RTCisjCitJ TlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IHNsYXZlIGhvc3RzOwor Q0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FM Q09NX1NIT1dfQklOTE9HX0VWRU5UUworIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxV RVMgKDEpOworc2hvdyBiaW5sb2cgZXZlbnRzOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsK K0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX1NIT1dfTkVXX01BU1RFUgorIworIwor IyBTUUxDT01fU0hPV19XQVJOUworIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMg KDEpOworc2hvdyB3YXJuaW5nczsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJ VCBDT01NSVQKK05PCisjCisjIFNRTENPTV9FTVBUWV9RVUVSWQorIworIworIyBTUUxDT01fU0hP V19FUlJPUlMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cg ZXJyb3JzOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorTk8K KyMKKyMgU1FMQ09NX1NIT1dfU1RPUkFHRV9FTkdJTkVTCisjCitJTlNFUlQgSU5UTyBkYjEudHJh bnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IGVuZ2luZXM7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1p dCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01fU0hPV19QUklWSUxFR0VTCisj CitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IHByaXZpbGVnZXM7 CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBT UUxDT01fSEVMUAorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworaGVs cCAnZm9vJzsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05P CisjCisjIFNRTENPTV9DUkVBVEVfVVNFUgorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBW QUxVRVMgKDEpOworY3JlYXRlIHVzZXIgdHJ4dXNyMTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0 KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUworIworIyBTUUxDT01fUkVOQU1FX1VTRVIKKyMKK0lO U0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3JlbmFtZSB1c2VyICd0cnh1c3Ix JyB0byAndHJ4dXNyMic7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09N TUlUCitZRVMKKyMKKyMgU1FMQ09NX0RST1BfVVNFUgorIworSU5TRVJUIElOVE8gZGIxLnRyYW5z IChhKSBWQUxVRVMgKDEpOworZHJvcCB1c2VyIHRyeHVzcjI7CitDQUxMIGRiMS50ZXN0X2lmX2Nv bW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0NIRUNLU1VNCisjCitJ TlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitjaGVja3N1bSB0YWJsZSB0MTsK K0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNR TENPTV9DUkVBVEVfUFJPQ0VEVVJFCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVF UyAoMSk7CitjcmVhdGUgcHJvY2VkdXJlIHAxKGEgaW50KSBiZWdpbiBlbmQ7CitDQUxMIGRiMS50 ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0FMVEVS X1BST0NFRFVSRQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworYWx0 ZXIgcHJvY2VkdXJlIHAxIGNvbW1lbnQgJ2Zvb2Jhcic7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1p dCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX1NIT1dfQ1JFQVRFX1BST0MK KyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgY3JlYXRlIHBy b2NlZHVyZSBwMTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQK K05PCisjCisjIFNRTENPTV9TSE9XX1NUQVRVU19QUk9DCisjCitJTlNFUlQgSU5UTyBkYjEudHJh bnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IHByb2NlZHVyZSBzdGF0dXM7CitDQUxMIGRiMS50ZXN0 X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01fU0hPV19QUk9D X0NPREUKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgcHJv Y2VkdXJlIGNvZGUgcDE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09N TUlUCitOTworIworIyBTUUxDT01fRFJPUF9QUk9DRURVUkUKKyMKK0lOU0VSVCBJTlRPIGRiMS50 cmFucyAoYSkgVkFMVUVTICgxKTsKK2Ryb3AgcHJvY2VkdXJlIHAxOworQ0FMTCBkYjEudGVzdF9p Zl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9DUkVBVEVfRlVO Q1RJT04KKyMKKyMKKyMgU1FMQ09NX0RST1BfRlVOQ1RJT04KKyMKKyMKKyMgU1FMQ09NX0NSRUFU RV9TUEZVTkNUSU9OCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7Citj cmVhdGUgZnVuY3Rpb24gZjEoKSByZXR1cm5zIGludCByZXR1cm4gNjk7CitDQUxMIGRiMS50ZXN0 X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0FMVEVSX0ZV TkNUSU9OCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CithbHRlciBm dW5jdGlvbiBmMSBjb21tZW50ICdjb21tZW50JzsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7 CitJTVBMSUNJVCBDT01NSVQKK1lFUworIworIyBTUUxDT01fU0hPV19DUkVBVEVfRlVOQworIwor SU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2hvdyBjcmVhdGUgZnVuY3Rp b24gZjE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTwor IworIyBTUUxDT01fU0hPV19TVEFUVVNfRlVOQworIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChh KSBWQUxVRVMgKDEpOworc2hvdyBmdW5jdGlvbiBzdGF0dXMgbGlrZSAnJWYlJzsKK0NBTEwgZGIx LnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9TSE9X X0ZVTkNfQ09ERQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2hv dyBmdW5jdGlvbiBjb2RlIGYxOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lU IENPTU1JVAorTk8KKyMKKyMgU1FMQ09NX1BSRVBBUkUKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFu cyAoYSkgVkFMVUVTICgxKTsKK3ByZXBhcmUgc3RtdDEgZnJvbSAiaW5zZXJ0IGludG8gdDEgdmFs dWVzICg1KSI7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitO TworIworIyBTUUxDT01fRVhFQ1VURQorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxV RVMgKDEpOworZXhlY3V0ZSBzdG10MTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBM SUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9ERUFMTE9DQVRFX1BSRVBBUkUKKyMKK0lOU0VS VCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK2RlYWxsb2NhdGUgcHJlcGFyZSBzdG10 MTsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisj IFNRTENPTV9DUkVBVEVfVFJJR0dFUgorIworSU5TRVJUIElOVE8gZGIxLnRyYW5zIChhKSBWQUxV RVMgKDEpOworY3JlYXRlIHRyaWdnZXIgdHJnMSBiZWZvcmUgaW5zZXJ0IG9uIHQxIGZvciBlYWNo IHJvdyBzZXQgQGE6PTE7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09N TUlUCitZRVMKKyMKKyMgU1FMQ09NX1NIT1dfQ1JFQVRFX1RSSUdHRVIKKyMKK0lOU0VSVCBJTlRP IGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgY3JlYXRlIHRyaWdnZXIgdHJnMTsKK0NB TEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENP TV9EUk9QX1RSSUdHRVIKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFucyAoYSkgVkFMVUVTICgxKTsK K2Ryb3AgdHJpZ2dlciB0cmcxOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lU IENPTU1JVAorWUVTCisjCisjIFNRTENPTV9YQV9TVEFSVAorIworIworIyBTUUxDT01fWEFfRU5E CisjCisjCisjIFNRTENPTV9YQV9QUkVQQVJFCisjCisjCisjIFNRTENPTV9YQV9DT01NSVQKKyMK KyMKKyMgU1FMQ09NX1hBX1JPTExCQUNLCisjCisjCisjIFNRTENPTV9YQV9SRUNPVkVSCisjCisj CisjIFNRTENPTV9BTFRFUl9UQUJMRVNQQUNFCisjCisjCisjIFNRTENPTV9JTlNUQUxMX1BMVUdJ TgorIworIworIyBTUUxDT01fU0hPV19QTFVHSU5TCisjCisjCisjIFNRTENPTV9VTklOU1RBTExf UExVR0lOCisjCisjCisjIFNRTENPTV9TSE9XX0FVVEhPUlMKKyMKK0lOU0VSVCBJTlRPIGRiMS50 cmFucyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgYXV0aG9yczsKK0NBTEwgZGIxLnRlc3RfaWZfY29t bWl0KCk7CitJTVBMSUNJVCBDT01NSVQKK05PCisjCisjIFNRTENPTV9CSU5MT0dfQkFTRTY0X0VW RU5UCisjCisjCisjIFNRTENPTV9TSE9XX0NPTlRSSUJVVE9SUworIworSU5TRVJUIElOVE8gZGIx LnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2hvdyBjb250cmlidXRvcnM7CitDQUxMIGRiMS50ZXN0 X2lmX2NvbW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitOTworIworIyBTUUxDT01fQ1JFQVRFX1NF UlZFUgorIworIworIyBTUUxDT01fQUxURVJfU0VSVkVSCisjCisjCisjIFNRTENPTV9EUk9QX1NF UlZFUgorIworIworIyBTUUxDT01fQ1JFQVRFX0VWRU5UCisjCitJTlNFUlQgSU5UTyBkYjEudHJh bnMgKGEpIFZBTFVFUyAoMSk7CitjcmVhdGUgZXZlbnQgZXYxIG9uIHNjaGVkdWxlIGV2ZXJ5IDEg c2Vjb25kIGRvIGluc2VydCBpbnRvIHQxIHZhbHVlcyAoNik7CitDQUxMIGRiMS50ZXN0X2lmX2Nv bW1pdCgpOworSU1QTElDSVQgQ09NTUlUCitZRVMKKyMKKyMgU1FMQ09NX0FMVEVSX0VWRU5UCisj CitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CithbHRlciBldmVudCBldjEg cmVuYW1lIHRvIGV2MiBkaXNhYmxlOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJ Q0lUIENPTU1JVAorWUVTCisjCisjIFNRTENPTV9TSE9XX0NSRUFURV9FVkVOVAorIworSU5TRVJU IElOVE8gZGIxLnRyYW5zIChhKSBWQUxVRVMgKDEpOworc2hvdyBjcmVhdGUgZXZlbnQgZXYyOwor Q0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1JVAorTk8KKyMKKyMgU1FM Q09NX1NIT1dfRVZFTlRTCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7 CitzaG93IGV2ZW50czsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01N SVQKK05PCisjCisjIFNRTENPTV9EUk9QX0VWRU5UCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMg KGEpIFZBTFVFUyAoMSk7Citkcm9wIGV2ZW50IGV2MjsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0 KCk7CitJTVBMSUNJVCBDT01NSVQKK1lFUworIworIyBTUUxDT01fQkFDS1VQCisjCitJTlNFUlQg SU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitiYWNrdXAgZGF0YWJhc2UgZGIxIHRvICdi YWNrdXBfZGIxLmJhJzsKK0NBTEwgZGIxLnRlc3RfaWZfY29tbWl0KCk7CitJTVBMSUNJVCBDT01N SVQKK1lFUworIworIyBTUUxDT01fU0hPV19BUkNISVZFCisjCisjCisjIFNRTENPTV9SRVNUT1JF CisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CityZXN0b3JlIGZyb20g J2JhY2t1cF9kYjEuYmEnOworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENP TU1JVAorWUVTCisjCisjIFNRTENPTV9CQUNLVVBfVEVTVAorIworIworIyBTUUxDT01fU0hPV19Q Uk9GSUxFCisjCitJTlNFUlQgSU5UTyBkYjEudHJhbnMgKGEpIFZBTFVFUyAoMSk7CitzaG93IHBy b2ZpbGUgbWVtb3J5OworQ0FMTCBkYjEudGVzdF9pZl9jb21taXQoKTsKK0lNUExJQ0lUIENPTU1J VAorTk8KKyMKKyMgU1FMQ09NX1NIT1dfUFJPRklMRVMKKyMKK0lOU0VSVCBJTlRPIGRiMS50cmFu cyAoYSkgVkFMVUVTICgxKTsKK3Nob3cgcHJvZmlsZXM7CitDQUxMIGRiMS50ZXN0X2lmX2NvbW1p dCgpOworSU1QTElDSVQgQ09NTUlUCitOTworRFJPUCBUQUJMRSB0MTsKK0RST1AgVEFCTEUgdDI7 CitEUk9QIFRBQkxFIHQzOworVVNFIHRlc3Q7CitEUk9QIERBVEFCQVNFIGRiMTsKK0VuZCBvZiB0 ZXN0cwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvci9tZXJnZS5yZXN1bHQnCi0tLSBh L215c3FsLXRlc3Qvci9tZXJnZS5yZXN1bHQJMjAwOC0wNy0wOSAwNzoxMjo0MyArMDAwMAorKysg Yi9teXNxbC10ZXN0L3IvbWVyZ2UucmVzdWx0CTIwMDgtMDctMjQgMTA6MDA6NTYgKzAwMDAKQEAg LTkxNCw3ICs5MTQsNyBAQCBTRUxFQ1QgKiBGUk9NIHRtMTsKIEVSUk9SIEhZMDAwOiBVbmFibGUg dG8gb3BlbiB1bmRlcmx5aW5nIHRhYmxlIHdoaWNoIGlzIGRpZmZlcmVudGx5IGRlZmluZWQgb3Ig b2Ygbm9uLU15SVNBTSB0eXBlIG9yIGRvZXNuJ3QgZXhpc3QKIENIRUNLIFRBQkxFIHRtMTsKIFRh YmxlCU9wCU1zZ190eXBlCU1zZ190ZXh0Ci10ZXN0LnRtMQljaGVjawlFcnJvcglUYWJsZSAndGVz dC50MicgaXMgZGlmZmVyZW50bHkgZGVmaW5lZCBvciBvZiBub24tTXlJU0FNIHR5cGUgb3IgZG9l c24ndCBleGlzdAordGVzdC50bTEJY2hlY2sJV2FybmluZwlUYWJsZSAndGVzdC50MicgaXMgZGlm ZmVyZW50bHkgZGVmaW5lZCBvciBvZiBub24tTXlJU0FNIHR5cGUgb3IgZG9lc24ndCBleGlzdAog dGVzdC50bTEJY2hlY2sJRXJyb3IJVW5hYmxlIHRvIG9wZW4gdW5kZXJseWluZyB0YWJsZSB3aGlj aCBpcyBkaWZmZXJlbnRseSBkZWZpbmVkIG9yIG9mIG5vbi1NeUlTQU0gdHlwZSBvciBkb2Vzbid0 IGV4aXN0CiB0ZXN0LnRtMQljaGVjawllcnJvcglDb3JydXB0CiBBTFRFUiBUQUJMRSB0MiBNT0RJ RlkgYSBJTlQ7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL215aXNhbS1zeXN0ZW0u cmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3IvbXlpc2FtLXN5c3RlbS5yZXN1bHQJMjAwNi0wNS0w MyAxMjo1OToxNyArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvbXlpc2FtLXN5c3RlbS5yZXN1bHQJ MjAwOC0wNy0xNCAxMjo0OToxOSArMDAwMApAQCAtMiw3ICsyLDcgQEAgZHJvcCB0YWJsZSBpZiBl eGlzdHMgdDEsdDI7CiBjcmVhdGUgdGFibGUgdDEgKGEgaW50KSBlbmdpbmU9bXlpc2FtOwogZHJv cCB0YWJsZSBpZiBleGlzdHMgdDE7CiBXYXJuaW5nczoKLUVycm9yCTIJQ2FuJ3QgZmluZCBmaWxl OiAndDEnIChlcnJubzogMikKK1dhcm5pbmcJMglDYW4ndCBmaW5kIGZpbGU6ICd0MScgKGVycm5v OiAyKQogY3JlYXRlIHRhYmxlIHQxIChhIGludCkgZW5naW5lPW15aXNhbTsKIGRyb3AgdGFibGUg dDE7CiBHb3Qgb25lIG9mIHRoZSBsaXN0ZWQgZXJyb3JzCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlz cWwtdGVzdC9yL3BlcnJvci5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9wZXJyb3IucmVzdWx0 CTIwMDYtMDgtMDEgMDk6Mjk6MTAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL3BlcnJvci5yZXN1 bHQJMjAwOC0wOC0wNSAyMzoyNjoxOCArMDAwMApAQCAtMSArMSw2IEBACiBJbGxlZ2FsIGVycm9y IGNvZGU6IDEwMDAwCitNeVNRTCBlcnJvciBjb2RlIDEwNjIgKEVSX0RVUF9FTlRSWSk6IER1cGxp Y2F0ZSBlbnRyeSAnJS0uMTkycycgZm9yIGtleSAlZAorTXlTUUwgZXJyb3IgY29kZSAxMDc2IChF Ul9SRUFEWSk6ICVzOiByZWFkeSBmb3IgY29ubmVjdGlvbnMuCitWZXJzaW9uOiAnJXMnICBzb2Nr ZXQ6ICclcycgIHBvcnQ6ICVkCitNeVNRTCBlcnJvciBjb2RlIDE0NTkgKEVSX1RBQkxFX05FRURT X1VQR1JBREUpOiBUYWJsZSB1cGdyYWRlIHJlcXVpcmVkLiBQbGVhc2UgZG8gIlJFUEFJUiBUQUJM RSBgJS0uMzJzYCIgdG8gZml4IGl0IQorTXlTUUwgZXJyb3IgY29kZSAxNDYxIChFUl9NQVhfUFJF UEFSRURfU1RNVF9DT1VOVF9SRUFDSEVEKTogQ2FuJ3QgY3JlYXRlIG1vcmUgdGhhbiBtYXhfcHJl cGFyZWRfc3RtdF9jb3VudCBzdGF0ZW1lbnRzIChjdXJyZW50IHZhbHVlOiAlbHUpCgo9PT0gbW9k aWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL3BzLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9yL3Bz LnJlc3VsdAkyMDA4LTA3LTA3IDIzOjE1OjA4ICswMDAwCisrKyBiL215c3FsLXRlc3Qvci9wcy5y ZXN1bHQJMjAwOC0wNy0yNCAxMDowMDo1NiArMDAwMApAQCAtMTE5MiwxMyArMTE5MiwxMyBAQCBT RVQgQGF1eD0gIlNFTEVDVCBDT1VOVCgqKQogcHJlcGFyZSBteV9zdG10IGZyb20gQGF1eDsKIGV4 ZWN1dGUgbXlfc3RtdDsKIENPVU5UKCopCi0zOQorNDAKIGV4ZWN1dGUgbXlfc3RtdDsKIENPVU5U KCopCi0zOQorNDAKIGV4ZWN1dGUgbXlfc3RtdDsKIENPVU5UKCopCi0zOQorNDAKIGRlYWxsb2Nh dGUgcHJlcGFyZSBteV9zdG10OwogZHJvcCBwcm9jZWR1cmUgaWYgZXhpc3RzIHAxfAogZHJvcCB0 YWJsZSBpZiBleGlzdHMgdDF8Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL3N0cmlj dC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9zdHJpY3QucmVzdWx0CTIwMDgtMDUtMjIgMTg6 NDA6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL3N0cmljdC5yZXN1bHQJMjAwOC0wNy0xNCAx Mjo0OToxOSArMDAwMApAQCAtMzE1LDggKzMxNSw4IEBAIE1PRChjb2wxLDApCiBOVUxMCiBOVUxM CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAotRXJyb3IJMTM2NQlEaXZpc2lv biBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9u IGJ5IDAKIElOU0VSVCBJTlRPIHQxIChjb2wxKSBWQUxVRVMoLTEyOSk7CiBFUlJPUiAyMjAwMzog T3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ2NvbDEnIGF0IHJvdyAxCiBJTlNFUlQgSU5U TyB0MSAoY29sMSkgVkFMVUVTKDEyOCk7CkBAIC0zNDMsNyArMzQzLDcgQEAgU0VMRUNUIE1PRChj b2wxLDApIEZST00gdDEgV0hFUkUgY29sMSA+IAogTU9EKGNvbDEsMCkKIE5VTEwKIFdhcm5pbmdz OgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAog VVBEQVRFIHQxIFNFVCBjb2wxID0gY29sMSAtIDUwIFdIRVJFIGNvbDEgPCAwOwogRVJST1IgMjIw MDM6IE91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjb2wxJyBhdCByb3cgMQogVVBEQVRF IHQxIFNFVCBjb2wyPWNvbDIgKyA1MCBXSEVSRSBjb2wyID4gMDsKQEAgLTM1MywxNiArMzUzLDE2 IEBAIEVSUk9SIDIyMDEyOiBEaXZpc2lvbiBieSAwCiBzZXQgQEBzcWxfbW9kZT0nRVJST1JfRk9S X0RJVklTSU9OX0JZX1pFUk8nOwogSU5TRVJUIElOVE8gdDEgdmFsdWVzICgxLzAsMS8wKTsKIFdh cm5pbmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5 IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkg MAogc2V0IEBAc3FsX21vZGU9J2Fuc2ksdHJhZGl0aW9uYWwnOwogU0VMRUNUIE1PRChjb2wxLDAp IEZST00gdDEgV0hFUkUgY29sMSA+IDAgTElNSVQgMjsKIE1PRChjb2wxLDApCiBOVUxMCiBOVUxM CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAotRXJyb3IJMTM2NQlEaXZpc2lv biBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9u IGJ5IDAKIElOU0VSVCBJTlRPIHQxIChjb2wxKSBWQUxVRVMgKCcnKTsKIEVSUk9SIEhZMDAwOiBJ bmNvcnJlY3QgaW50ZWdlciB2YWx1ZTogJycgZm9yIGNvbHVtbiAnY29sMScgYXQgcm93IDEKIElO U0VSVCBJTlRPIHQxIChjb2wxKSBWQUxVRVMgKCdhNTliJyk7CkBAIC0zNzQsOCArMzc0LDggQEAg V2FybmluZ3M6CiBXYXJuaW5nCTEyNjUJRGF0YSB0cnVuY2F0ZWQgZm9yIGNvbHVtbiAnY29sMScg YXQgcm93IDEKIElOU0VSVCBJR05PUkUgSU5UTyB0MSB2YWx1ZXMgKDEvMCwxLzApOwogV2Fybmlu Z3M6Ci1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAor V2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCiBz ZXQgQEBzcWxfbW9kZT0nYW5zaSc7CiBJTlNFUlQgSU5UTyB0MSB2YWx1ZXMgKDEvMCwxLzApOwog c2V0IEBAc3FsX21vZGU9J2Fuc2ksdHJhZGl0aW9uYWwnOwpAQCAtNDU3LDggKzQ1Nyw4IEBAIFdh cm5pbmdzOgogV2FybmluZwkxMjY1CURhdGEgdHJ1bmNhdGVkIGZvciBjb2x1bW4gJ2NvbDEnIGF0 IHJvdyAxCiBJTlNFUlQgSUdOT1JFIElOVE8gdDEgdmFsdWVzICgxLzAsMS8wKTsKIFdhcm5pbmdz OgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dh cm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogSU5T RVJUIElHTk9SRSBJTlRPIHQxIFZBTFVFUygtMzI3NjksLTEpLCgzMjc2OCw2NTUzNik7CiBXYXJu aW5nczoKIFdhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnY29sMScg YXQgcm93IDEKQEAgLTU0MSw4ICs1NDEsOCBAQCBXYXJuaW5nczoKIFdhcm5pbmcJMTI2NQlEYXRh IHRydW5jYXRlZCBmb3IgY29sdW1uICdjb2wxJyBhdCByb3cgMQogSU5TRVJUIElHTk9SRSBJTlRP IHQxIHZhbHVlcyAoMS8wLDEvMCk7CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkg MAotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAor V2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKIElOU0VSVCBJR05PUkUgSU5UTyB0MSBWQUxVRVMo LTgzODg2MDksLTEpLCg4Mzg4NjA4LDE2Nzc3MjE2KTsKIFdhcm5pbmdzOgogV2FybmluZwkxMjY0 CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjb2wxJyBhdCByb3cgMQpAQCAtNjI1LDgg KzYyNSw4IEBAIFdhcm5pbmdzOgogV2FybmluZwkxMjY1CURhdGEgdHJ1bmNhdGVkIGZvciBjb2x1 bW4gJ2NvbDEnIGF0IHJvdyAxCiBJTlNFUlQgSUdOT1JFIElOVE8gdDEgdmFsdWVzICgxLzAsMS8w KTsKIFdhcm5pbmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1CURpdmlz aW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNp b24gYnkgMAogSU5TRVJUIElHTk9SRSBJTlRPIHQxIHZhbHVlcyAoLTIxNDc0ODM2NDksIC0xKSwo MjE0NzY0MzY0OCw0Mjk0OTY3Mjk2KTsKIFdhcm5pbmdzOgogV2FybmluZwkxMjY0CU91dCBvZiBy YW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjb2wxJyBhdCByb3cgMQpAQCAtNzA3LDggKzcwNyw4IEBA IFdhcm5pbmdzOgogV2FybmluZwkxMjY1CURhdGEgdHJ1bmNhdGVkIGZvciBjb2x1bW4gJ2NvbDEn IGF0IHJvdyAxCiBJTlNFUlQgSUdOT1JFIElOVE8gdDEgdmFsdWVzICgxLzAsMS8wKTsKIFdhcm5p bmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAK K1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAog SU5TRVJUIElHTk9SRSBJTlRPIHQxIFZBTFVFUygtOTIyMzM3MjAzNjg1NDc3NTgwOSwtMSksKDky MjMzNzIwMzY4NTQ3NzU4MDgsMTg0NDY3NDQwNzM3MDk1NTE2MTYpOwogV2FybmluZ3M6CiBXYXJu aW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ2NvbDEnIGF0IHJvdyAxCkBA IC03OTQsNyArNzk0LDcgQEAgV2FybmluZ3M6CiBOb3RlCTEyNjUJRGF0YSB0cnVuY2F0ZWQgZm9y IGNvbHVtbiAnY29sMScgYXQgcm93IDEKIElOU0VSVCBJR05PUkUgSU5UTyB0MSB2YWx1ZXMgKDEv MCk7CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURp dmlzaW9uIGJ5IDAKIElOU0VSVCBJR05PUkUgSU5UTyB0MSBWQUxVRVMoMTAwMCksKC0xMDAwKTsK IFdhcm5pbmdzOgogV2FybmluZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdj b2wxJyBhdCByb3cgMQpAQCAtODYxLDcgKzg2MSw3IEBAIFdhcm5pbmdzOgogV2FybmluZwkxMjY1 CURhdGEgdHJ1bmNhdGVkIGZvciBjb2x1bW4gJ2NvbDEnIGF0IHJvdyAxCiBJTlNFUlQgSUdOT1JF IElOVE8gdDEgKGNvbDEpIFZBTFVFUyAoMS8wKTsKIFdhcm5pbmdzOgotRXJyb3IJMTM2NQlEaXZp c2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogSU5TRVJUIElHTk9SRSBJTlRP IHQxIFZBTFVFUyAoKzMuNEUrMzksLTMuNEUrMzkpOwogV2FybmluZ3M6CiBXYXJuaW5nCTEyNjQJ T3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ2NvbDEnIGF0IHJvdyAxCkBAIC05MTAsNyAr OTEwLDcgQEAgV2FybmluZ3M6CiBXYXJuaW5nCTEyNjUJRGF0YSB0cnVuY2F0ZWQgZm9yIGNvbHVt biAnY29sMScgYXQgcm93IDEKIElOU0VSVCBJR05PUkUgSU5UTyB0MSAoY29sMSkgdmFsdWVzICgx LzApOwogV2FybmluZ3M6Ci1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlE aXZpc2lvbiBieSAwCiBJTlNFUlQgSUdOT1JFIElOVE8gdDEgVkFMVUVTICgrMS45RSszMDksLTEu OUUrMzA5KTsKIEVSUk9SIDIyMDA3OiBJbGxlZ2FsIGRvdWJsZSAnMS45RSszMDknIHZhbHVlIGZv dW5kIGR1cmluZyBwYXJzaW5nCiBJTlNFUlQgSUdOT1JFIElOVE8gdDEgVkFMVUVTICgnKzIuMEUr MzA5JywnLTIuMEUrMzA5Jyk7CkBAIC0xMDgwLDEzICsxMDgwLDEzIEBAIFdhcm5pbmdzOgogV2Fy bmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICczMS4xMC4yMDA0 IDE1LjMwIGFiYycKIGluc2VydCBpbnRvIHQxIHZhbHVlcyhTVFJfVE9fREFURSgnMzIuMTAuMjAw NCAxNS4zMCcsJyVkLiVtLiVZICVILiVpJykpOwogV2FybmluZ3M6Ci1FcnJvcgkxNDExCUluY29y cmVjdCBkYXRldGltZSB2YWx1ZTogJzMyLjEwLjIwMDQgMTUuMzAnIGZvciBmdW5jdGlvbiBzdHJf dG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCBkYXRldGltZSB2YWx1ZTogJzMyLjEwLjIw MDQgMTUuMzAnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQogaW5zZXJ0IGludG8gdDEgdmFsdWVz KFNUUl9UT19EQVRFKCcyMDA0LjEyLjEyIDIyOjIyOjMzIEFNJywnJVkuJW0uJWQgJXInKSk7CiBX YXJuaW5nczoKLUVycm9yCTE0MTEJSW5jb3JyZWN0IHRpbWUgdmFsdWU6ICcyMjoyMjozMyBBTScg Zm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCitXYXJuaW5nCTE0MTEJSW5jb3JyZWN0IHRpbWUgdmFs dWU6ICcyMjoyMjozMyBBTScgZm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCiBpbnNlcnQgaW50byB0 MSB2YWx1ZXMoU1RSX1RPX0RBVEUoJzIwMDQuMTIuMTIgYWJjJywnJVkuJW0uJWQgJVQnKSk7CiBX YXJuaW5nczoKLUVycm9yCTE0MTEJSW5jb3JyZWN0IHRpbWUgdmFsdWU6ICdhYmMnIGZvciBmdW5j dGlvbiBzdHJfdG9fZGF0ZQorV2FybmluZwkxNDExCUluY29ycmVjdCB0aW1lIHZhbHVlOiAnYWJj JyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKIGluc2VydCBpbnRvIHQxIHZhbHVlcyhTVFJfVE9f REFURSgnMzEuMTAuMjAwNCAxNS4zMCcsJyVkLiVtLiVZICVILiVpJykpOwogaW5zZXJ0IGludG8g dDEgdmFsdWVzKFNUUl9UT19EQVRFKCcyMDA0LjEyLjEyIDExOjIyOjMzIEFNJywnJVkuJW0uJWQg JXInKSk7CiBpbnNlcnQgaW50byB0MSB2YWx1ZXMoU1RSX1RPX0RBVEUoJzIwMDQuMTIuMTIgMTA6 MjI6NTknLCclWS4lbS4lZCAlVCcpKTsKQEAgLTExMDQsOSArMTEwNCw5IEBAIHNlbGVjdCBjb3Vu dCgqKSBmcm9tIHQxIHdoZXJlIFNUUl9UT19EQVQKIGNvdW50KCopCiA3CiBXYXJuaW5nczoKLUVy cm9yCTE0MTEJSW5jb3JyZWN0IGRhdGV0aW1lIHZhbHVlOiAnMjAwNC4xMi4xMiAxMDoyMjo2MScg Zm9yIGZ1bmN0aW9uIHN0cl90b19kYXRlCi1FcnJvcgkxNDExCUluY29ycmVjdCBkYXRldGltZSB2 YWx1ZTogJzIwMDQuMTIuMTIgMTA6MjI6NjEnIGZvciBmdW5jdGlvbiBzdHJfdG9fZGF0ZQotRXJy b3IJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcyMDA0LjEyLjEyIDEwOjIyOjYxJyBm b3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUg dmFsdWU6ICcyMDA0LjEyLjEyIDEwOjIyOjYxJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKK1dh cm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRpbWUgdmFsdWU6ICcyMDA0LjEyLjEyIDEwOjIyOjYx JyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUKK1dhcm5pbmcJMTQxMQlJbmNvcnJlY3QgZGF0ZXRp bWUgdmFsdWU6ICcyMDA0LjEyLjEyIDEwOjIyOjYxJyBmb3IgZnVuY3Rpb24gc3RyX3RvX2RhdGUK IGRyb3AgdGFibGUgdDE7CiBjcmVhdGUgdGFibGUgdDEgKGNvbDEgY2hhcigzKSwgY29sMiBpbnRl Z2VyKTsKIGluc2VydCBpbnRvIHQxIChjb2wxKSB2YWx1ZXMgKGNhc3QoMTAwMCBhcyBjaGFyKDMp KSk7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL3N1YnNlbGVjdC5yZXN1bHQnCi0t LSBhL215c3FsLXRlc3Qvci9zdWJzZWxlY3QucmVzdWx0CTIwMDgtMDctMTAgMjM6Mjk6MjcgKzAw MDAKKysrIGIvbXlzcWwtdGVzdC9yL3N1YnNlbGVjdC5yZXN1bHQJMjAwOC0wNy0zMSAxMTozNzow NyArMDAwMApAQCAtNDYwMCw3ICs0NjAwLDE4IEBAIElOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMSks ICgzKTsKIFNFTEVDVCAqIEZST00gdDIgV0hFUkUgYiBOT1QgSU4gKFNFTEVDVCBtYXgodC5jKSBG Uk9NIHQxLCB0MSB0IFdIRVJFIHQuYz4xMCk7CiBhCWIKIERST1AgVEFCTEUgdDEsdDI7Ci1FbmQg b2YgNS4wIHRlc3RzLgorQ1JFQVRFIFRBQkxFIHQxKHBrIGludCBQUklNQVJZIEtFWSwgYSBpbnQs IElOREVYIGlkeChhKSk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKDEsIDEwKSwgKDMsIDMwKSwg KDIsIDIwKTsKK0NSRUFURSBUQUJMRSB0MihwayBpbnQgUFJJTUFSWSBLRVksIGEgaW50LCBiIGlu dCwgSU5ERVggaWR4YShhKSk7CitJTlNFUlQgSU5UTyB0MiBWQUxVRVMgKDIsIDIwLCA3MDApLCAo MSwgMTAsIDIwMCksICg0LCAxMCwgMTAwKTsKK1NFTEVDVCAqIEZST00gdDEKK1dIRVJFIEVYSVNU UyAoU0VMRUNUIERJU1RJTkNUIGEgRlJPTSB0MiBXSEVSRSB0MS5hIDwgdDIuYSBPUkRFUiBCWSBi KTsKK3BrCWEKKzEJMTAKKzMJMzAKKzIJMjAKK0RST1AgVEFCTEUgdDEsdDI7CitFbmQgb2YgNS4x IHRlc3RzLgogQ1JFQVRFIFRBQkxFIHQxKCBhIElOVCApOwogSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgxKSwoMik7CiBDUkVBVEUgVEFCTEUgdDIoIGEgSU5ULCBiIElOVCApOwoKPT09IG1vZGlmaWVk IGZpbGUgJ215c3FsLXRlc3Qvci9zdWJzZWxlY3Rfbm9fbWF0LnJlc3VsdCcKLS0tIGEvbXlzcWwt dGVzdC9yL3N1YnNlbGVjdF9ub19tYXQucmVzdWx0CTIwMDgtMDctMTAgMjM6Mjk6MjcgKzAwMDAK KysrIGIvbXlzcWwtdGVzdC9yL3N1YnNlbGVjdF9ub19tYXQucmVzdWx0CTIwMDgtMDctMzEgMTE6 Mzc6MDcgKzAwMDAKQEAgLTQ2MDQsNyArNDYwNCwxOCBAQCBJTlNFUlQgSU5UTyB0MSBWQUxVRVMg KDEpLCAoMyk7CiBTRUxFQ1QgKiBGUk9NIHQyIFdIRVJFIGIgTk9UIElOIChTRUxFQ1QgbWF4KHQu YykgRlJPTSB0MSwgdDEgdCBXSEVSRSB0LmM+MTApOwogYQliCiBEUk9QIFRBQkxFIHQxLHQyOwot RW5kIG9mIDUuMCB0ZXN0cy4KK0NSRUFURSBUQUJMRSB0MShwayBpbnQgUFJJTUFSWSBLRVksIGEg aW50LCBJTkRFWCBpZHgoYSkpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgxLCAxMCksICgzLCAz MCksICgyLCAyMCk7CitDUkVBVEUgVEFCTEUgdDIocGsgaW50IFBSSU1BUlkgS0VZLCBhIGludCwg YiBpbnQsIElOREVYIGlkeGEoYSkpOworSU5TRVJUIElOVE8gdDIgVkFMVUVTICgyLCAyMCwgNzAw KSwgKDEsIDEwLCAyMDApLCAoNCwgMTAsIDEwMCk7CitTRUxFQ1QgKiBGUk9NIHQxCitXSEVSRSBF WElTVFMgKFNFTEVDVCBESVNUSU5DVCBhIEZST00gdDIgV0hFUkUgdDEuYSA8IHQyLmEgT1JERVIg QlkgYik7CitwawlhCisxCTEwCiszCTMwCisyCTIwCitEUk9QIFRBQkxFIHQxLHQyOworRW5kIG9m IDUuMSB0ZXN0cy4KIENSRUFURSBUQUJMRSB0MSggYSBJTlQgKTsKIElOU0VSVCBJTlRPIHQxIFZB TFVFUyAoMSksKDIpOwogQ1JFQVRFIFRBQkxFIHQyKCBhIElOVCwgYiBJTlQgKTsKCj09PSBtb2Rp ZmllZCBmaWxlICdteXNxbC10ZXN0L3Ivc3Vic2VsZWN0X25vX29wdHMucmVzdWx0JwotLS0gYS9t eXNxbC10ZXN0L3Ivc3Vic2VsZWN0X25vX29wdHMucmVzdWx0CTIwMDgtMDctMTAgMjM6Mjk6Mjcg KzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL3N1YnNlbGVjdF9ub19vcHRzLnJlc3VsdAkyMDA4LTA3 LTMxIDExOjM3OjA3ICswMDAwCkBAIC00NjA0LDcgKzQ2MDQsMTggQEAgSU5TRVJUIElOVE8gdDEg VkFMVUVTICgxKSwgKDMpOwogU0VMRUNUICogRlJPTSB0MiBXSEVSRSBiIE5PVCBJTiAoU0VMRUNU IG1heCh0LmMpIEZST00gdDEsIHQxIHQgV0hFUkUgdC5jPjEwKTsKIGEJYgogRFJPUCBUQUJMRSB0 MSx0MjsKLUVuZCBvZiA1LjAgdGVzdHMuCitDUkVBVEUgVEFCTEUgdDEocGsgaW50IFBSSU1BUlkg S0VZLCBhIGludCwgSU5ERVggaWR4KGEpKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMSwgMTAp LCAoMywgMzApLCAoMiwgMjApOworQ1JFQVRFIFRBQkxFIHQyKHBrIGludCBQUklNQVJZIEtFWSwg YSBpbnQsIGIgaW50LCBJTkRFWCBpZHhhKGEpKTsKK0lOU0VSVCBJTlRPIHQyIFZBTFVFUyAoMiwg MjAsIDcwMCksICgxLCAxMCwgMjAwKSwgKDQsIDEwLCAxMDApOworU0VMRUNUICogRlJPTSB0MQor V0hFUkUgRVhJU1RTIChTRUxFQ1QgRElTVElOQ1QgYSBGUk9NIHQyIFdIRVJFIHQxLmEgPCB0Mi5h IE9SREVSIEJZIGIpOworcGsJYQorMQkxMAorMwkzMAorMgkyMAorRFJPUCBUQUJMRSB0MSx0MjsK K0VuZCBvZiA1LjEgdGVzdHMuCiBDUkVBVEUgVEFCTEUgdDEoIGEgSU5UICk7CiBJTlNFUlQgSU5U TyB0MSBWQUxVRVMgKDEpLCgyKTsKIENSRUFURSBUQUJMRSB0MiggYSBJTlQsIGIgSU5UICk7Cgo9 PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL3N1YnNlbGVjdF9ub19zZW1pam9pbi5yZXN1 bHQnCi0tLSBhL215c3FsLXRlc3Qvci9zdWJzZWxlY3Rfbm9fc2VtaWpvaW4ucmVzdWx0CTIwMDgt MDctMTAgMjM6Mjk6MjcgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9yL3N1YnNlbGVjdF9ub19zZW1p am9pbi5yZXN1bHQJMjAwOC0wNy0zMSAxMTozNzowNyArMDAwMApAQCAtNDYwNCw3ICs0NjA0LDE4 IEBAIElOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMSksICgzKTsKIFNFTEVDVCAqIEZST00gdDIgV0hF UkUgYiBOT1QgSU4gKFNFTEVDVCBtYXgodC5jKSBGUk9NIHQxLCB0MSB0IFdIRVJFIHQuYz4xMCk7 CiBhCWIKIERST1AgVEFCTEUgdDEsdDI7Ci1FbmQgb2YgNS4wIHRlc3RzLgorQ1JFQVRFIFRBQkxF IHQxKHBrIGludCBQUklNQVJZIEtFWSwgYSBpbnQsIElOREVYIGlkeChhKSk7CitJTlNFUlQgSU5U TyB0MSBWQUxVRVMgKDEsIDEwKSwgKDMsIDMwKSwgKDIsIDIwKTsKK0NSRUFURSBUQUJMRSB0Mihw ayBpbnQgUFJJTUFSWSBLRVksIGEgaW50LCBiIGludCwgSU5ERVggaWR4YShhKSk7CitJTlNFUlQg SU5UTyB0MiBWQUxVRVMgKDIsIDIwLCA3MDApLCAoMSwgMTAsIDIwMCksICg0LCAxMCwgMTAwKTsK K1NFTEVDVCAqIEZST00gdDEKK1dIRVJFIEVYSVNUUyAoU0VMRUNUIERJU1RJTkNUIGEgRlJPTSB0 MiBXSEVSRSB0MS5hIDwgdDIuYSBPUkRFUiBCWSBiKTsKK3BrCWEKKzEJMTAKKzMJMzAKKzIJMjAK K0RST1AgVEFCTEUgdDEsdDI7CitFbmQgb2YgNS4xIHRlc3RzLgogQ1JFQVRFIFRBQkxFIHQxKCBh IElOVCApOwogSU5TRVJUIElOVE8gdDEgVkFMVUVTICgxKSwoMik7CiBDUkVBVEUgVEFCTEUgdDIo IGEgSU5ULCBiIElOVCApOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvci9zeXN0ZW1f bXlzcWxfZGIucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3Ivc3lzdGVtX215c3FsX2RiLnJlc3Vs dAkyMDA4LTAyLTExIDIxOjIyOjE5ICswMDAwCisrKyBiL215c3FsLXRlc3Qvci9zeXN0ZW1fbXlz cWxfZGIucmVzdWx0CTIwMDgtMDctMjQgMDc6NDQ6MjEgKzAwMDAKQEAgLTExMyw2ICsxMTMsNyBA QCB1c2VyCUNSRUFURSBUQUJMRSBgdXNlcmAgKAogICBgQ3JlYXRlX3VzZXJfcHJpdmAgZW51bSgn TicsJ1knKSBDSEFSQUNURVIgU0VUIHV0ZjggTk9UIE5VTEwgREVGQVVMVCAnTicsCiAgIGBFdmVu dF9wcml2YCBlbnVtKCdOJywnWScpIENIQVJBQ1RFUiBTRVQgdXRmOCBOT1QgTlVMTCBERUZBVUxU ICdOJywKICAgYFRyaWdnZXJfcHJpdmAgZW51bSgnTicsJ1knKSBDSEFSQUNURVIgU0VUIHV0Zjgg Tk9UIE5VTEwgREVGQVVMVCAnTicsCisgIGBDcmVhdGVfdGFibGVzcGFjZV9wcml2YCBlbnVtKCdO JywnWScpIENIQVJBQ1RFUiBTRVQgdXRmOCBOT1QgTlVMTCBERUZBVUxUICdOJywKICAgYHNzbF90 eXBlYCBlbnVtKCcnLCdBTlknLCdYNTA5JywnU1BFQ0lGSUVEJykgQ0hBUkFDVEVSIFNFVCB1dGY4 IE5PVCBOVUxMIERFRkFVTFQgJycsCiAgIGBzc2xfY2lwaGVyYCBibG9iIE5PVCBOVUxMLAogICBg eDUwOV9pc3N1ZXJgIGJsb2IgTk9UIE5VTEwsCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVz dC9yL3RyaWdnZXIucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3IvdHJpZ2dlci5yZXN1bHQJMjAw OC0wNC0wOCAxNjowMToyMCArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvdHJpZ2dlci5yZXN1bHQJ MjAwOC0wNy0xNCAxMjo0OToxOSArMDAwMApAQCAtMTA3Myw3ICsxMDczLDcgQEAgTlVMTAogU0VU IEB4PTI7CiBVUERBVEUgdDEgU0VUIGkxID0gQHg7CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2 aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKIFNFTEVDVCBAeDsKIEB4CiBO VUxMCkBAIC0xMDg2LDggKzEwODYsOCBAQCBOVUxMCiBTRVQgQHg9NDsKIFVQREFURSB0MSBTRVQg aTEgPSBAeDsKIFdhcm5pbmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1 CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJ RGl2aXNpb24gYnkgMAogU0VMRUNUIEB4OwogQHgKIE5VTEwKQEAgLTExOTAsMTYgKzExOTAsMTYg QEAgY3JlYXRlIHRyaWdnZXIgdDRfYnUgYmVmb3JlIHVwZGF0ZSBvbiB0NAogaW5zZXJ0IGludG8g dDEgdmFsdWVzKDEwLCAxMCl8CiBzZXQgQGE6PTEvMHwKIFdhcm5pbmdzOgotRXJyb3IJMTM2NQlE aXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogc2VsZWN0IDEvMCBmcm9t IHQxfAogMS8wCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2Fy bmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKIGNyZWF0ZSB0cmlnZ2VyIHQxX2JpIGJlZm9yZSBpbnNl cnQgb24gdDEgZm9yIGVhY2ggcm93IHNldCBAYTo9MS8wfAogaW5zZXJ0IGludG8gdDEgdmFsdWVz KDIwLCAyMCl8CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkx MzY1CURpdmlzaW9uIGJ5IDAKIGRyb3AgdHJpZ2dlciB0MV9iaXwKIGNyZWF0ZSB0cmlnZ2VyIHQx X2JpIGJlZm9yZSBpbnNlcnQgb24gdDEgZm9yIGVhY2ggcm93CiBiZWdpbgpAQCAtMTIxOSw3ICsx MjE5LDcgQEAgZW5kfAogc2V0IEBjaGVjaz0wLCBAdDRfYmlfY2FsbGVkPTAsIEB0NF9idV9jYWxs ZWQ9MHwKIGluc2VydCBpbnRvIHQxIHZhbHVlcygzMCwgMzApfAogV2FybmluZ3M6Ci1FcnJvcgkx MzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCiBzZWxlY3QgQGNo ZWNrLCBAdDRfYmlfY2FsbGVkLCBAdDRfYnVfY2FsbGVkfAogQGNoZWNrCUB0NF9iaV9jYWxsZWQJ QHQ0X2J1X2NhbGxlZAogMgkxCTEKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3IvdHlw ZV9uZXdkZWNpbWFsLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9yL3R5cGVfbmV3ZGVjaW1hbC5y ZXN1bHQJMjAwOC0wNS0xMyAyMzo0Mjo0MyArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvdHlwZV9u ZXdkZWNpbWFsLnJlc3VsdAkyMDA4LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC0xODUsNyArMTg1 LDcgQEAgc2VsZWN0IDFlMTAvMGUwOwogMWUxMC8wZTAKIE5VTEwKIFdhcm5pbmdzOgotRXJyb3IJ MTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogY3JlYXRlIHRh YmxlIHdsMTYxMiAoY29sMSBpbnQsIGNvbDIgZGVjaW1hbCgzOCwxMCksIGNvbDMgbnVtZXJpYygz OCwxMCkpOwogaW5zZXJ0IGludG8gd2wxNjEyIHZhbHVlcygxLDEyMzQ1Njc4OTAxMjM0NTY3ODkw LjEyMzQ1Njc4OTAsMTIzNDU2Nzg5MDEyMzQ1Njc4OTAuMTIzNDU2Nzg5MCk7CiBzZWxlY3QgKiBm cm9tIHdsMTYxMjsKQEAgLTIwNSwyNyArMjA1LDI3IEBAIE5VTEwKIE5VTEwKIE5VTEwKIFdhcm5p bmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAK LUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKK1dh cm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogc2Vs ZWN0IGNvbDIvMCBmcm9tIHdsMTYxMjsKIGNvbDIvMAogTlVMTAogTlVMTAogTlVMTAogV2Fybmlu Z3M6Ci1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAot RXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAorV2Fy bmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCiBzZWxl Y3QgY29sMy8wIGZyb20gd2wxNjEyOwogY29sMy8wCiBOVUxMCiBOVUxMCiBOVUxMCiBXYXJuaW5n czoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1F cnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJu aW5nCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKIGluc2Vy dCBpbnRvIHdsMTYxMiB2YWx1ZXMoNSw1MDAwLjAwMDUsNTAwMC4wMDA1KTsKIGluc2VydCBpbnRv IHdsMTYxMiB2YWx1ZXMoNiw1MDAwLjAwMDUsNTAwMC4wMDA1KTsKIHNlbGVjdCBzdW0oY29sMiks c3VtKGNvbDMpIGZyb20gd2wxNjEyOwpAQCAtNzg4LDEyICs3ODgsMTIgQEAgc2VsZWN0IDEgLyAx RS01MDA7CiAxIC8gMUUtNTAwCiBOVUxMCiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24g YnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKIHNlbGVjdCAxIC8gMDsKIDEgLyAwCiBO VUxMCiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURp dmlzaW9uIGJ5IDAKIHNldCBzcWxfbW9kZT0nYW5zaSx0cmFkaXRpb25hbCc7CiBDUkVBVEUgVEFC TEUgU293Nl8yZiAoY29sMSBOVU1FUklDKDQsMikpOwogSU5TRVJUIElOVE8gU293Nl8yZiBWQUxV RVMgKDEwLjU1KTsKQEAgLTgxOSwxMSArODE5LDExIEBAIE5VTEwKIE5VTEwKIE5VTEwKIFdhcm5p bmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAK LUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCi1FcnJv cgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5n CTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJ MTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAogSU5TRVJUIElO VE8gU293Nl8yZiBWQUxVRVMgKCdhNTliJyk7CiBFUlJPUiBIWTAwMDogSW5jb3JyZWN0IGRlY2lt YWwgdmFsdWU6ICdhNTliJyBmb3IgY29sdW1uICdjb2wxJyBhdCByb3cgMQogZHJvcCB0YWJsZSBT b3c2XzJmOwpAQCAtMTQ0NCwxMiArMTQ0NCwxMiBAQCBzZWxlY3QgY2FzdCgxMS4xMjM0IGFzIERF Q0lNQUwoMywyKSk7CiBjYXN0KDExLjEyMzQgYXMgREVDSU1BTCgzLDIpKQogOS45OQogV2Fybmlu Z3M6Ci1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KDExLjEy MzQgYXMgREVDSU1BTCgzLDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2Ug dmFsdWUgZm9yIGNvbHVtbiAnY2FzdCgxMS4xMjM0IGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAx CiBzZWxlY3QgKiBmcm9tIChzZWxlY3QgY2FzdCgxMS4xMjM0IGFzIERFQ0lNQUwoMywyKSkpIHQ7 CiBjYXN0KDExLjEyMzQgYXMgREVDSU1BTCgzLDIpKQogOS45OQogV2FybmluZ3M6Ci1FcnJvcgkx MjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KDExLjEyMzQgYXMgREVDSU1B TCgzLDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNv bHVtbiAnY2FzdCgxMS4xMjM0IGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAxCiBzZWxlY3QgY2Fz dChhIGFzIERFQ0lNQUwoMywyKSkKIGZyb20gKHNlbGVjdCAxMS4xMjMzIGFzIGEKIFVOSU9OIHNl bGVjdCAxMS4xMjM0CkBAIC0xNDYwLDkgKzE0NjAsOSBAQCBjYXN0KGEgYXMgREVDSU1BTCgzLDIp KQogOS45OQogOS45OQogV2FybmluZ3M6Ci1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBm b3IgY29sdW1uICdjYXN0KGEgYXMgREVDSU1BTCgzLDIpKScgYXQgcm93IDEKLUVycm9yCTEyNjQJ T3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ2Nhc3QoYSBhcyBERUNJTUFMKDMsMikpJyBh dCByb3cgMQotRXJyb3IJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnY2FzdChh IGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAxCitXYXJuaW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZh bHVlIGZvciBjb2x1bW4gJ2Nhc3QoYSBhcyBERUNJTUFMKDMsMikpJyBhdCByb3cgMQorV2Fybmlu ZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KGEgYXMgREVDSU1BTCgz LDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVt biAnY2FzdChhIGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAxCiBzZWxlY3QgY2FzdChhIGFzIERF Q0lNQUwoMywyKSksIGNvdW50KCopCiBmcm9tIChzZWxlY3QgMTEuMTIzMyBhcyBhCiBVTklPTiBz ZWxlY3QgMTEuMTIzNApAQCAtMTQ3MSwxMCArMTQ3MSwxMCBAQCBVTklPTiBzZWxlY3QgMTIuMTIz NAogY2FzdChhIGFzIERFQ0lNQUwoMywyKSkJY291bnQoKikKIDkuOTkJMwogV2FybmluZ3M6Ci1F cnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KGEgYXMgREVDSU1B TCgzLDIpKScgYXQgcm93IDEKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1 bW4gJ2Nhc3QoYSBhcyBERUNJTUFMKDMsMikpJyBhdCByb3cgMQotRXJyb3IJMTI2NAlPdXQgb2Yg cmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnY2FzdChhIGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAx Ci1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KGEgYXMgREVD SU1BTCgzLDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9y IGNvbHVtbiAnY2FzdChhIGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAxCitXYXJuaW5nCTEyNjQJ T3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ2Nhc3QoYSBhcyBERUNJTUFMKDMsMikpJyBh dCByb3cgMQorV2FybmluZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0 KGEgYXMgREVDSU1BTCgzLDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2Ug dmFsdWUgZm9yIGNvbHVtbiAnY2FzdChhIGFzIERFQ0lNQUwoMywyKSknIGF0IHJvdyAxCiBjcmVh dGUgdGFibGUgdDEgKHMgdmFyY2hhcigxMDApKTsKIGluc2VydCBpbnRvIHQxIHZhbHVlcyAoMC4w MDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMDM2NDMyMTk3MzE1NDk3NzQxNTc5MTY1NTQ3MDY1NTk5 NjM5NjA4OTkwNDAxMDI5NTg2NzkxOTkyMTg3NSk7CiBkcm9wIHRhYmxlIHQxOwpAQCAtMTU0MCw3 ICsxNTQwLDcgQEAgc2VsZWN0IGNhc3QoMTQzLjQ4MSBhcyBkZWNpbWFsKDIsMSkpOwogY2FzdCgx NDMuNDgxIGFzIGRlY2ltYWwoMiwxKSkKIDkuOQogV2FybmluZ3M6Ci1FcnJvcgkxMjY0CU91dCBv ZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KDE0My40ODEgYXMgZGVjaW1hbCgyLDEpKScg YXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnY2Fz dCgxNDMuNDgxIGFzIGRlY2ltYWwoMiwxKSknIGF0IHJvdyAxCiBzZWxlY3QgY2FzdCgtMy40IGFz IGRlY2ltYWwoMiwxKSk7CiBjYXN0KC0zLjQgYXMgZGVjaW1hbCgyLDEpKQogLTMuNApAQCAtMTU0 OCwxMiArMTU0OCwxMiBAQCBzZWxlY3QgY2FzdCg5OS42IGFzIGRlY2ltYWwoMiwwKSk7CiBjYXN0 KDk5LjYgYXMgZGVjaW1hbCgyLDApKQogOTkKIFdhcm5pbmdzOgotRXJyb3IJMTI2NAlPdXQgb2Yg cmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnY2FzdCg5OS42IGFzIGRlY2ltYWwoMiwwKSknIGF0IHJv dyAxCitXYXJuaW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ2Nhc3QoOTku NiBhcyBkZWNpbWFsKDIsMCkpJyBhdCByb3cgMQogc2VsZWN0IGNhc3QoLTEzLjQgYXMgZGVjaW1h bCgyLDEpKTsKIGNhc3QoLTEzLjQgYXMgZGVjaW1hbCgyLDEpKQogLTkuOQogV2FybmluZ3M6Ci1F cnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdjYXN0KC0xMy40IGFzIGRl Y2ltYWwoMiwxKSknIGF0IHJvdyAxCitXYXJuaW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZv ciBjb2x1bW4gJ2Nhc3QoLTEzLjQgYXMgZGVjaW1hbCgyLDEpKScgYXQgcm93IDEKIHNlbGVjdCBj YXN0KDk4LjYgYXMgZGVjaW1hbCgyLDApKTsKIGNhc3QoOTguNiBhcyBkZWNpbWFsKDIsMCkpCiA5 OQoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvci92aWV3LnJlc3VsdCcKLS0tIGEvbXlz cWwtdGVzdC9yL3ZpZXcucmVzdWx0CTIwMDgtMDYtMjggMTE6MDA6NTkgKzAwMDAKKysrIGIvbXlz cWwtdGVzdC9yL3ZpZXcucmVzdWx0CTIwMDgtMDctMTQgMTI6NDk6MTkgKzAwMDAKQEAgLTExMTIs OCArMTExMiw4IEBAIGluc2VydCBpbnRvIHYxIHZhbHVlcygzKTsKIEVSUk9SIEhZMDAwOiBDSEVD SyBPUFRJT04gZmFpbGVkICd0ZXN0LnYxJwogaW5zZXJ0IGlnbm9yZSBpbnRvIHYxIHZhbHVlcyAo MiksKDMpLCgwKTsKIFdhcm5pbmdzOgotRXJyb3IJMTM2OQlDSEVDSyBPUFRJT04gZmFpbGVkICd0 ZXN0LnYxJwotRXJyb3IJMTM2OQlDSEVDSyBPUFRJT04gZmFpbGVkICd0ZXN0LnYxJworV2Fybmlu ZwkxMzY5CUNIRUNLIE9QVElPTiBmYWlsZWQgJ3Rlc3QudjEnCitXYXJuaW5nCTEzNjkJQ0hFQ0sg T1BUSU9OIGZhaWxlZCAndGVzdC52MScKIHNlbGVjdCAqIGZyb20gdDE7CiBhCiAxCkBAIC0xMTI2 LDggKzExMjYsOCBAQCBjcmVhdGUgdGFibGUgdDIgKGEgaW50KTsKIGluc2VydCBpbnRvIHQyIHZh bHVlcyAoMiksKDMpLCgwKTsKIGluc2VydCBpZ25vcmUgaW50byB2MSBTRUxFQ1QgYSBmcm9tIHQy OwogV2FybmluZ3M6Ci1FcnJvcgkxMzY5CUNIRUNLIE9QVElPTiBmYWlsZWQgJ3Rlc3QudjEnCi1F cnJvcgkxMzY5CUNIRUNLIE9QVElPTiBmYWlsZWQgJ3Rlc3QudjEnCitXYXJuaW5nCTEzNjkJQ0hF Q0sgT1BUSU9OIGZhaWxlZCAndGVzdC52MScKK1dhcm5pbmcJMTM2OQlDSEVDSyBPUFRJT04gZmFp bGVkICd0ZXN0LnYxJwogc2VsZWN0ICogZnJvbSB0MSBvcmRlciBieSBhIGRlc2M7CiBhCiAxCkBA IC0xMTQ5LDcgKzExNDksNyBAQCBhCiB1cGRhdGUgdjEgc2V0IGE9YSsxOwogdXBkYXRlIGlnbm9y ZSB2MSx0MiBzZXQgdjEuYT12MS5hKzEgd2hlcmUgdjEuYT10Mi5hOwogV2FybmluZ3M6Ci1FcnJv cgkxMzY5CUNIRUNLIE9QVElPTiBmYWlsZWQgJ3Rlc3QudjEnCitXYXJuaW5nCTEzNjkJQ0hFQ0sg T1BUSU9OIGZhaWxlZCAndGVzdC52MScKIHNlbGVjdCAqIGZyb20gdDE7CiBhCiAxCkBAIC0xMTgz LDcgKzExODMsNyBAQCBpbnNlcnQgaW50byB2MSB2YWx1ZXMgKDEpIG9uIGR1cGxpY2F0ZSBrCiBF UlJPUiBIWTAwMDogQ0hFQ0sgT1BUSU9OIGZhaWxlZCAndGVzdC52MScKIGluc2VydCBpZ25vcmUg aW50byB2MSB2YWx1ZXMgKDEpIG9uIGR1cGxpY2F0ZSBrZXkgdXBkYXRlIGE9MjsKIFdhcm5pbmdz OgotRXJyb3IJMTM2OQlDSEVDSyBPUFRJT04gZmFpbGVkICd0ZXN0LnYxJworV2FybmluZwkxMzY5 CUNIRUNLIE9QVElPTiBmYWlsZWQgJ3Rlc3QudjEnCiBzZWxlY3QgKiBmcm9tIHQxOwogYQogMQpA QCAtMTI4NCw3ICsxMjg0LDcgQEAgaW5zZXJ0IGlnbm9yZSBpbnRvIHYxIHZhbHVlcyAoNik7CiBF UlJPUiBIWTAwMDogQ0hFQ0sgT1BUSU9OIGZhaWxlZCAndGVzdC52MScKIGluc2VydCBpZ25vcmUg aW50byB2MSB2YWx1ZXMgKDYpLCgzKTsKIFdhcm5pbmdzOgotRXJyb3IJMTM2OQlDSEVDSyBPUFRJ T04gZmFpbGVkICd0ZXN0LnYxJworV2FybmluZwkxMzY5CUNIRUNLIE9QVElPTiBmYWlsZWQgJ3Rl c3QudjEnCiBzZWxlY3QgKiBmcm9tIHQxOwogczEKIDMKQEAgLTEzMjksOSArMTMyOSw5IEBAIGRl bGV0ZSBmcm9tIHQxOwogbG9hZCBkYXRhIGluZmlsZSAnLi4vc3RkX2RhdGFfbG4vbG9hZGRhdGEz LmRhdCcgaWdub3JlIGludG8gdGFibGUgdjEgZmllbGRzIHRlcm1pbmF0ZWQgYnkgJycgZW5jbG9z ZWQgYnkgJycgaWdub3JlIDEgbGluZXM7CiBXYXJuaW5nczoKIFdhcm5pbmcJMTM2NglJbmNvcnJl Y3QgaW50ZWdlciB2YWx1ZTogJ2Vycm9yICAgICAgJyBmb3IgY29sdW1uICdhJyBhdCByb3cgMwot RXJyb3IJMTM2OQlDSEVDSyBPUFRJT04gZmFpbGVkICd0ZXN0LnYxJworV2FybmluZwkxMzY5CUNI RUNLIE9QVElPTiBmYWlsZWQgJ3Rlc3QudjEnCiBXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGludGVn ZXIgdmFsdWU6ICd3cm9uZyBlbmQgICcgZm9yIGNvbHVtbiAnYScgYXQgcm93IDQKLUVycm9yCTEz NjkJQ0hFQ0sgT1BUSU9OIGZhaWxlZCAndGVzdC52MScKK1dhcm5pbmcJMTM2OQlDSEVDSyBPUFRJ T04gZmFpbGVkICd0ZXN0LnYxJwogc2VsZWN0ICogZnJvbSB0MSBvcmRlciBieSBhLGI7CiBhCWIK IDEJcm93IDEKQEAgLTEzNTUsNyArMTM1NSw3IEBAIGNvbmNhdCgnfCcsYSwnfCcpCWNvbmNhdCgn fCcsYiwnfCcpCiBkZWxldGUgZnJvbSB0MTsKIGxvYWQgZGF0YSBpbmZpbGUgJy4uL3N0ZF9kYXRh X2xuL2xvYWRkYXRhMi5kYXQnIGlnbm9yZSBpbnRvIHRhYmxlIHYxIGZpZWxkcyB0ZXJtaW5hdGVk IGJ5ICcsJyBlbmNsb3NlZCBieSAnJycnOwogV2FybmluZ3M6Ci1FcnJvcgkxMzY5CUNIRUNLIE9Q VElPTiBmYWlsZWQgJ3Rlc3QudjEnCitXYXJuaW5nCTEzNjkJQ0hFQ0sgT1BUSU9OIGZhaWxlZCAn dGVzdC52MScKIFdhcm5pbmcJMTI2MQlSb3cgMiBkb2Vzbid0IGNvbnRhaW4gZGF0YSBmb3IgYWxs IGNvbHVtbnMKIHNlbGVjdCBjb25jYXQoJ3wnLGEsJ3wnKSwgY29uY2F0KCd8JyxiLCd8JykgZnJv bSB0MTsKIGNvbmNhdCgnfCcsYSwnfCcpCWNvbmNhdCgnfCcsYiwnfCcpCgo9PT0gbW9kaWZpZWQg ZmlsZSAnbXlzcWwtdGVzdC9zdGRfZGF0YS9JbmRleC54bWwnCi0tLSBhL215c3FsLXRlc3Qvc3Rk X2RhdGEvSW5kZXgueG1sCTIwMDctMTAtMjIgMTE6NDM6MzIgKzAwMDAKKysrIGIvbXlzcWwtdGVz dC9zdGRfZGF0YS9JbmRleC54bWwJMjAwOC0wNy0yNCAxMTozMzozNSArMDAwMApAQCAtMSw3ICsx LDcgQEAKIDxjaGFyc2V0cz4KIAogICA8Y2hhcnNldCBuYW1lPSJ1dGY4Ij4KLSAgICA8Y29sbGF0 aW9uIG5hbWU9InV0ZjhfdGVzdF9jaSIgaWQ9IjI1MyI+CisgICAgPGNvbGxhdGlvbiBuYW1lPSJ1 dGY4X3Rlc3RfY2kiIGlkPSIzNTMiPgogICAgICAgPHJ1bGVzPgogICAgICAgICA8cmVzZXQ+YTwv cmVzZXQ+CiAgICAgICAgIDxzPmI8L3M+CkBAIC0xMSw3ICsxMSw3IEBACiAgIDwvY2hhcnNldD4K IAogICA8Y2hhcnNldCBuYW1lPSJ1dGYxNiI+Ci0gICAgPGNvbGxhdGlvbiBuYW1lPSJ1dGYxNl90 ZXN0X2NpIiBpZD0iMTI3Ij4KKyAgICA8Y29sbGF0aW9uIG5hbWU9InV0ZjE2X3Rlc3RfY2kiIGlk PSIzMjciPgogICAgICAgPHJ1bGVzPgogICAgICAgICA8cmVzZXQ+YTwvcmVzZXQ+CiAgICAgICAg IDxzPmI8L3M+CkBAIC0yMCw3ICsyMCw3IEBACiAgIDwvY2hhcnNldD4KIAogICA8Y2hhcnNldCBu YW1lPSJ1dGYzMiI+Ci0gICAgPGNvbGxhdGlvbiBuYW1lPSJ1dGYzMl90ZXN0X2NpIiBpZD0iMTkx Ij4KKyAgICA8Y29sbGF0aW9uIG5hbWU9InV0ZjMyX3Rlc3RfY2kiIGlkPSIzOTEiPgogICAgICAg PHJ1bGVzPgogICAgICAgICA8cmVzZXQ+YTwvcmVzZXQ+CiAgICAgICAgIDxzPmI8L3M+CkBAIC0z MSwxMyArMzEsMTMgQEAKIAogCiAgIDxjaGFyc2V0IG5hbWU9InVjczIiPgotICAgIDxjb2xsYXRp b24gbmFtZT0idWNzMl90ZXN0X2NpIiBpZD0iMTU4Ij4KKyAgICA8Y29sbGF0aW9uIG5hbWU9InVj czJfdGVzdF9jaSIgaWQ9IjM1OCI+CiAgICAgICA8cnVsZXM+CiAgICAgICAgIDxyZXNldD5hPC9y ZXNldD4KICAgICAgICAgPHM+Yjwvcz4KICAgICAgIDwvcnVsZXM+CiAgICAgPC9jb2xsYXRpb24+ Ci0gICAgPGNvbGxhdGlvbiBuYW1lPSJ1Y3MyX3ZuX2NpIiBpZD0iMTU5Ij4KKyAgICA8Y29sbGF0 aW9uIG5hbWU9InVjczJfdm5fY2kiIGlkPSIzNTkiPgogICAgICAgPCEtLSBWaWV0bmFtZXNlIGV4 cGVyaW1lbnRhbCBjb2xsYXRpb24gLS0+CiAgICAgICA8cnVsZXM+CiAgICAgICAgIDxyZXNldD5B PC9yZXNldD4KCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2Zh bGNvbl9idWdfMjI5NzIucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2Zh bGNvbl9idWdfMjI5NzIucmVzdWx0CTIwMDgtMDYtMjcgMTM6MzA6NDkgKzAwMDAKKysrIGIvbXlz cWwtdGVzdC9zdWl0ZS9mYWxjb24vci9mYWxjb25fYnVnXzIyOTcyLnJlc3VsdAkyMDA4LTA3LTE1 IDAwOjA2OjQzICswMDAwCkBAIC01LDYgKzUsNiBAQCBEUk9QIFRBQkxFIHQxOwogRVJST1IgNDJT MDI6IFVua25vd24gdGFibGUgJ3QxJwogU0hPVyBXQVJOSU5HUzsKIExldmVsCUNvZGUJTWVzc2Fn ZQotRXJyb3IJMTc4CUNhbid0IGV4ZWN1dGUgdGhlIGdpdmVuIGNvbW1hbmQgYmVjYXVzZSB5b3Ug aGF2ZSBhY3RpdmUgbG9ja2VkIHRhYmxlcyBvciBhbiBhY3RpdmUgdHJhbnNhY3Rpb24KK1dhcm5p bmcJMTc4CUNhbid0IGV4ZWN1dGUgdGhlIGdpdmVuIGNvbW1hbmQgYmVjYXVzZSB5b3UgaGF2ZSBh Y3RpdmUgbG9ja2VkIHRhYmxlcyBvciBhbiBhY3RpdmUgdHJhbnNhY3Rpb24KIENPTU1JVDsKIERS T1AgVEFCTEUgdDE7Cgo9PT0gYWRkZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vci9m YWxjb25fdGFibGVzcGFjZV9wcml2LnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9mYWxj b24vci9mYWxjb25fdGFibGVzcGFjZV9wcml2LnJlc3VsdAkxOTcwLTAxLTAxIDAwOjAwOjAwICsw MDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX3RhYmxlc3BhY2VfcHJp di5yZXN1bHQJMjAwOC0wOC0wNCAwNjo1ODoxMiArMDAwMApAQCAtMCwwICsxLDcwIEBACisjIC0t CisjIC0tIFdMIzQzMDA6IERlZmluZSBwcml2aWxlZ2VzIGZvciB0YWJsZXNwYWNlcy4KKyMgLS0K K0dSQU5UIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyBteXNxbHRlc3RfdTFAbG9jYWxob3N0 OworR1JBTlQgU1VQRVIgT04gKi4qIFRPIG15c3FsdGVzdF91MkBsb2NhbGhvc3Q7CisKKyMgLS0g Q29ubmVjdGlvbjogbXlzcWx0ZXN0X3UxQGxvY2FsaG9zdAorCisjIC0tIEdyYW50cyBmb3IgbXlz cWx0ZXN0X3UxQGxvY2FsaG9zdDoKK1NIT1cgR1JBTlRTOworR3JhbnRzIGZvciBteXNxbHRlc3Rf dTFAbG9jYWxob3N0CitHUkFOVCBDUkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8gJ215c3FsdGVz dF91MSdAJ2xvY2FsaG9zdCcKKworIyAtLSBDaGVjayBDUkVBVEUgVEFCTEVTUEFDRS4uLgorQ1JF QVRFIFRBQkxFU1BBQ0UgdHMxCitBREQgREFUQUZJTEUgJ2RhdGFmaWxlLmRhdCcKK0VOR0lORSA9 IEZhbGNvbjsKKworIyAtLSBDaGVjayBEUk9QIFRBQkxFU1BBQ0UuLi4KK0RST1AgVEFCTEVTUEFD RSB0czEgCitFTkdJTkUgPSBGYWxjb247CisKKyMgLS0gQ29ubmVjdGlvbjogbXlzcWx0ZXN0X3Uy QGxvY2FsaG9zdAorCisjIC0tIEdyYW50cyBmb3IgbXlzcWx0ZXN0X3UyQGxvY2FsaG9zdDoKK1NI T1cgR1JBTlRTOworR3JhbnRzIGZvciBteXNxbHRlc3RfdTJAbG9jYWxob3N0CitHUkFOVCBTVVBF UiBPTiAqLiogVE8gJ215c3FsdGVzdF91MidAJ2xvY2FsaG9zdCcKKworIyAtLSBDaGVjayBDUkVB VEUgVEFCTEVTUEFDRS4uLgorQ1JFQVRFIFRBQkxFU1BBQ0UgdHMxCitBREQgREFUQUZJTEUgJ2Rh dGFmaWxlLmRhdCcKK0VOR0lORSA9IEZhbGNvbjsKK0VSUk9SIDQyMDAwOiBBY2Nlc3MgZGVuaWVk OyB5b3UgbmVlZCB0aGUgQ1JFQVRFIFRBQkxFU1BBQ0UgcHJpdmlsZWdlIGZvciB0aGlzIG9wZXJh dGlvbgorCisjIC0tIENoZWNrIERST1AgVEFCTEVTUEFDRS4uLgorRFJPUCBUQUJMRVNQQUNFIHRz MSAKK0VOR0lORSA9IEZhbGNvbjsKK0VSUk9SIDQyMDAwOiBBY2Nlc3MgZGVuaWVkOyB5b3UgbmVl ZCB0aGUgQ1JFQVRFIFRBQkxFU1BBQ0UgcHJpdmlsZWdlIGZvciB0aGlzIG9wZXJhdGlvbgorCisj IC0tIENvbm5lY3Rpb246IHJvb3RAbG9jYWxob3N0CisKK0RST1AgVVNFUiBteXNxbHRlc3RfdTFA bG9jYWxob3N0OworRFJPUCBVU0VSIG15c3FsdGVzdF91MkBsb2NhbGhvc3Q7CisjIC0tCisjIC0t IEJ1ZyMzMTMwMjogVVNFIGluZm9ybWF0aW9uX3NjaGVtYSBkaXNhYmxlcyBEUk9QIHRhYmxlc3Bh Y2UKKyMgLS0KK0dSQU5UIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyBteXNxbHRlc3RfdTFA bG9jYWxob3N0OworCisjIC0tIENvbm5lY3Rpb246IG15c3FsdGVzdF91MUBsb2NhbGhvc3QKKwor IyAtLSBHcmFudHMgZm9yIG15c3FsdGVzdF91MUBsb2NhbGhvc3Q6CitTSE9XIEdSQU5UUzsKK0dy YW50cyBmb3IgbXlzcWx0ZXN0X3UxQGxvY2FsaG9zdAorR1JBTlQgQ1JFQVRFIFRBQkxFU1BBQ0Ug T04gKi4qIFRPICdteXNxbHRlc3RfdTEnQCdsb2NhbGhvc3QnCisKKyMgLS0gQ1JFQVRFIFRBQkxF U1BBQ0UuLi4KK0NSRUFURSBUQUJMRVNQQUNFIHRzMQorQUREIERBVEFGSUxFICdkYXRhZmlsZS5k YXQnCitFTkdJTkUgPSBGYWxjb247CisKK3VzZSBJTkZPUk1BVElPTl9TQ0hFTUE7CisKKyMgLS0g RFJPUCBUQUJMRVNQQUNFLi4uCitEUk9QIFRBQkxFU1BBQ0UgdHMxIAorRU5HSU5FID0gRmFsY29u OworCisjIC0tIENvbm5lY3Rpb246IHJvb3RAbG9jYWxob3N0CisKK0RST1AgVVNFUiBteXNxbHRl c3RfdTFAbG9jYWxob3N0OwoKPT09IGFkZGVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29u L3QvZmFsY29uX3RhYmxlc3BhY2VfcHJpdi50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Zh bGNvbi90L2ZhbGNvbl90YWJsZXNwYWNlX3ByaXYudGVzdAkxOTcwLTAxLTAxIDAwOjAwOjAwICsw MDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3QvZmFsY29uX3RhYmxlc3BhY2VfcHJp di50ZXN0CTIwMDgtMDgtMDQgMDY6NTg6MTIgKzAwMDAKQEAgLTAsMCArMSw5NCBAQAorLS1zb3Vy Y2UgaW5jbHVkZS9oYXZlX2ZhbGNvbi5pbmMKKworLS1lY2hvICMgLS0KKy0tZWNobyAjIC0tIFdM IzQzMDA6IERlZmluZSBwcml2aWxlZ2VzIGZvciB0YWJsZXNwYWNlcy4KKy0tZWNobyAjIC0tCisK K0dSQU5UIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyBteXNxbHRlc3RfdTFAbG9jYWxob3N0 OworR1JBTlQgU1VQRVIgT04gKi4qIFRPIG15c3FsdGVzdF91MkBsb2NhbGhvc3Q7CisKKy0tZWNo bworLS1lY2hvICMgLS0gQ29ubmVjdGlvbjogbXlzcWx0ZXN0X3UxQGxvY2FsaG9zdAorLS1lY2hv CistLWNvbm5lY3QoY29uMSwgbG9jYWxob3N0LCBteXNxbHRlc3RfdTEsLCkKKworLS1lY2hvICMg LS0gR3JhbnRzIGZvciBteXNxbHRlc3RfdTFAbG9jYWxob3N0OgorU0hPVyBHUkFOVFM7CisKKy0t ZWNobworLS1lY2hvICMgLS0gQ2hlY2sgQ1JFQVRFIFRBQkxFU1BBQ0UuLi4KK0NSRUFURSBUQUJM RVNQQUNFIHRzMQorQUREIERBVEFGSUxFICdkYXRhZmlsZS5kYXQnCitFTkdJTkUgPSBGYWxjb247 CisKKy0tZWNobworLS1lY2hvICMgLS0gQ2hlY2sgRFJPUCBUQUJMRVNQQUNFLi4uCitEUk9QIFRB QkxFU1BBQ0UgdHMxIAorRU5HSU5FID0gRmFsY29uOworCistLWVjaG8KKy0tZWNobyAjIC0tIENv bm5lY3Rpb246IG15c3FsdGVzdF91MkBsb2NhbGhvc3QKKy0tZWNobworLS1jb25uZWN0KGNvbjIs IGxvY2FsaG9zdCwgbXlzcWx0ZXN0X3UyLCwpCisKKy0tZWNobyAjIC0tIEdyYW50cyBmb3IgbXlz cWx0ZXN0X3UyQGxvY2FsaG9zdDoKK1NIT1cgR1JBTlRTOworCistLWVjaG8KKy0tZWNobyAjIC0t IENoZWNrIENSRUFURSBUQUJMRVNQQUNFLi4uCistLWVycm9yIEVSX1NQRUNJRklDX0FDQ0VTU19E RU5JRURfRVJST1IKK0NSRUFURSBUQUJMRVNQQUNFIHRzMQorQUREIERBVEFGSUxFICdkYXRhZmls ZS5kYXQnCitFTkdJTkUgPSBGYWxjb247CisKKy0tZWNobworLS1lY2hvICMgLS0gQ2hlY2sgRFJP UCBUQUJMRVNQQUNFLi4uCistLWVycm9yIEVSX1NQRUNJRklDX0FDQ0VTU19ERU5JRURfRVJST1IK K0RST1AgVEFCTEVTUEFDRSB0czEgCitFTkdJTkUgPSBGYWxjb247CisKKy0tZWNobworLS1lY2hv ICMgLS0gQ29ubmVjdGlvbjogcm9vdEBsb2NhbGhvc3QKKy0tZWNobworLS1jb25uZWN0aW9uIGRl ZmF1bHQKKy0tZGlzY29ubmVjdCBjb24xCistLWRpc2Nvbm5lY3QgY29uMgorCitEUk9QIFVTRVIg bXlzcWx0ZXN0X3UxQGxvY2FsaG9zdDsKK0RST1AgVVNFUiBteXNxbHRlc3RfdTJAbG9jYWxob3N0 OworCistLWVjaG8gIyAtLQorLS1lY2hvICMgLS0gQnVnIzMxMzAyOiBVU0UgaW5mb3JtYXRpb25f c2NoZW1hIGRpc2FibGVzIERST1AgdGFibGVzcGFjZQorLS1lY2hvICMgLS0KKworR1JBTlQgQ1JF QVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPIG15c3FsdGVzdF91MUBsb2NhbGhvc3Q7CisKKy0tZWNo bworLS1lY2hvICMgLS0gQ29ubmVjdGlvbjogbXlzcWx0ZXN0X3UxQGxvY2FsaG9zdAorLS1lY2hv CistLWNvbm5lY3QoY29uMSwgbG9jYWxob3N0LCBteXNxbHRlc3RfdTEsLCkKKworLS1lY2hvICMg LS0gR3JhbnRzIGZvciBteXNxbHRlc3RfdTFAbG9jYWxob3N0OgorU0hPVyBHUkFOVFM7CisKKy0t ZWNobworLS1lY2hvICMgLS0gQ1JFQVRFIFRBQkxFU1BBQ0UuLi4KK0NSRUFURSBUQUJMRVNQQUNF IHRzMQorQUREIERBVEFGSUxFICdkYXRhZmlsZS5kYXQnCitFTkdJTkUgPSBGYWxjb247CisKKy0t ZWNobwordXNlIElORk9STUFUSU9OX1NDSEVNQTsKKworLS1lY2hvCistLWVjaG8gIyAtLSBEUk9Q IFRBQkxFU1BBQ0UuLi4KK0RST1AgVEFCTEVTUEFDRSB0czEgCitFTkdJTkUgPSBGYWxjb247CisK Ky0tZWNobworLS1lY2hvICMgLS0gQ29ubmVjdGlvbjogcm9vdEBsb2NhbGhvc3QKKy0tZWNobwor LS1jb25uZWN0aW9uIGRlZmF1bHQKKy0tZGlzY29ubmVjdCBjb24xCisKK0RST1AgVVNFUiBteXNx bHRlc3RfdTFAbG9jYWxob3N0OwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUv ZnVuY3NfMS9yL2ZhbGNvbl9mdW5jX3ZpZXcucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRl L2Z1bmNzXzEvci9mYWxjb25fZnVuY192aWV3LnJlc3VsdAkyMDA4LTA2LTE5IDE4OjU2OjQ4ICsw MDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2ZhbGNvbl9mdW5jX3ZpZXcucmVz dWx0CTIwMDgtMDctMTUgMDA6MDY6NDMgKzAwMDAKQEAgLTMyODMsOSArMzI4Myw5IEBAIE5VTEwJ TlVMTAkxCiAtMzMzMy4zMwktMzMzMy4zMzMzCTMwCiBXYXJuaW5nczoKIFdhcm5pbmcJMTI5MglU cnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcnCi1FcnJvcgkxMjY0CU91dCBvZiBy YW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScg YXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FT VChteV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0IHJvdyAxCiBXYXJuaW5nCTEyOTIJVHJ1 bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnJwotRXJyb3IJMTI2NAlPdXQgb2YgcmFu Z2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0 IHJvdyAxCitXYXJuaW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1Qo bXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQogU0hPVyBDUkVBVEUgVklFVyB2 MTsKIFZpZXcJQ3JlYXRlIFZpZXcJY2hhcmFjdGVyX3NldF9jbGllbnQJY29sbGF0aW9uX2Nvbm5l Y3Rpb24KIHYxCUNSRUFURSBBTEdPUklUSE09VU5ERUZJTkVEIERFRklORVI9YHJvb3RgQGBsb2Nh bGhvc3RgIFNRTCBTRUNVUklUWSBERUZJTkVSIFZJRVcgYHYxYCBBUyBzZWxlY3QgY2FzdChgdDFf dmFsdWVzYC5gbXlfZG91YmxlYCBhcyBkZWNpbWFsKDM3LDIpKSBBUyBgQ0FTVChteV9kb3VibGUg QVMgREVDSU1BTCgzNywyKSlgLGB0MV92YWx1ZXNgLmBteV9kb3VibGVgIEFTIGBteV9kb3VibGVg LGB0MV92YWx1ZXNgLmBpZGAgQVMgYGlkYCBmcm9tIGB0MV92YWx1ZXNgCWxhdGluMQlsYXRpbjFf c3dlZGlzaF9jaQpAQCAtMzMwMSw5ICszMzAxLDkgQEAgTlVMTAlOVUxMCTEKIC0zMzMzLjMzCS0z MzMzLjMzMzMJMzAKIFdhcm5pbmdzOgogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3Qg REVDSU1BTCB2YWx1ZTogJycKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1 bW4gJ0NBU1QobXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQorV2FybmluZwkx MjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJ TUFMKDM3LDIpKScgYXQgcm93IDEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERF Q0lNQUwgdmFsdWU6ICcnCi1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1u ICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2 NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1B TCgzNywyKSknIGF0IHJvdyAxCiBEUk9QIFZJRVcgdjE7CiAKIApAQCAtMzM3Miw5ICszMzcyLDkg QEAgTlVMTAlOVUxMCTEKIC0xLjAwCS0xCTUKIC0zMzMzLjMzCS0zMzMzLjMzMzMJMjkKIFdhcm5p bmdzOgotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAn JyBhdCByb3cgLTEKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBj b2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAn JyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFs IHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVj dCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogU0hP VyBDUkVBVEUgVklFVyB2MTsKIFZpZXcJQ3JlYXRlIFZpZXcJY2hhcmFjdGVyX3NldF9jbGllbnQJ Y29sbGF0aW9uX2Nvbm5lY3Rpb24KIHYxCUNSRUFURSBBTEdPUklUSE09VU5ERUZJTkVEIERFRklO RVI9YHJvb3RgQGBsb2NhbGhvc3RgIFNRTCBTRUNVUklUWSBERUZJTkVSIFZJRVcgYHYxYCBBUyBz ZWxlY3QgY2FzdChgdDFfdmFsdWVzYC5gbXlfdmFyYmluYXJ5XzEwMDBgIGFzIGRlY2ltYWwoMzcs MikpIEFTIGBDQVNUKG15X3ZhcmJpbmFyeV8xMDAwIEFTIERFQ0lNQUwoMzcsMikpYCxgdDFfdmFs dWVzYC5gbXlfdmFyYmluYXJ5XzEwMDBgIEFTIGBteV92YXJiaW5hcnlfMTAwMGAsYHQxX3ZhbHVl c2AuYGlkYCBBUyBgaWRgIGZyb20gYHQxX3ZhbHVlc2AJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2Np CkBAIC0zMzg5LDkgKzMzODksOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJ LTMzMzMuMzMzMwkyOQogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZh bHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVj aW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVycm9yCTEzNjYJSW5jb3Jy ZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEz NjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitX YXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQg cm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1 bW4gJycgYXQgcm93IC0xCiBEUk9QIFZJRVcgdjE7CiAKIApAQCAtMzQwOCwxMSArMzQwOCwxMSBA QCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyOAogV2Fybmlu Z3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcn IGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3Ig Y29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVD SU1BTCB2YWx1ZTogJycKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFs dWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGlu Y29ycmVjdCBERUNJTUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+Jwot RXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVt biAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwg dmFsdWU6ICcgLS0t77+977+977+9KiQtLSAnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29y cmVjdCBERUNJTUFMIHZhbHVlOiAnLTEnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVj dCBERUNJTUFMIHZhbHVlOiAnLTMzMzMuMzMzMycKQEAgLTM0MzAsMTEgKzM0MzAsMTEgQEAgTlVM TAlOVUxMCTEKIC0xLjAwCS0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk1CiAtMzMzMy4z MwktMzMzMy4zMzMzAAAAAAAAAAAAAAAAAAAAAAAAAAAJMjgKIFdhcm5pbmdzOgotRXJyb3IJMTM2 NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dh cm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcn Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0 IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29s dW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1B TCB2YWx1ZTogJzwtLS0tLS0tLTMwIGNoYXJhY3RlcnMtLS0tLS0tPicKLUVycm9yCTEzNjYJSW5j b3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5n CTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0x CiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnIC0tLe+/ ve+/ve+/vSokLS0gJwogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2 YWx1ZTogJy0xJwogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1 ZTogJy0zMzMzLjMzMzMnCkBAIC0zNDU0LDkgKzM0NTQsOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJ LTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyNwogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29y cmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2 NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVy cm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4g JycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFs dWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmll dwlDcmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgog djEJQ1JFQVRFIEFMR09SSVRITT1VTkRFRklORUQgREVGSU5FUj1gcm9vdGBAYGxvY2FsaG9zdGAg U1FMIFNFQ1VSSVRZIERFRklORVIgVklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0KGB0MV92YWx1ZXNg LmBteV92YXJjaGFyXzEwMDBgIGFzIGRlY2ltYWwoMzcsMikpIEFTIGBDQVNUKG15X3ZhcmNoYXJf MTAwMCBBUyBERUNJTUFMKDM3LDIpKWAsYHQxX3ZhbHVlc2AuYG15X3ZhcmNoYXJfMTAwMGAgQVMg YG15X3ZhcmNoYXJfMTAwMGAsYHQxX3ZhbHVlc2AuYGlkYCBBUyBgaWRgIGZyb20gYHQxX3ZhbHVl c2AJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2NpCkBAIC0zNDcxLDkgKzM0NzEsOSBAQCBOVUxMCU5V TEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyNwogV2FybmluZ3M6Ci1FcnJv cgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAt MQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBh dCByb3cgLTEKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1 bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcn IGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwg dmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0 IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBEUk9QIFZJRVcgdjE7 CiAKIApAQCAtMzQ5MCwxMSArMzQ5MCwxMSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMz MzMuMzMJLTMzMzMuMzMzMwkyNgogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNp bWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29y cmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkx MjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICcKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFs dWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGlu Y29ycmVjdCBERUNJTUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+Jwot RXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVt biAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwg dmFsdWU6ICcgLS0t77+977+977+9KiQtLSAgICAgICAgICAgJwogU0hPVyBDUkVBVEUgVklFVyB2 MTsKIFZpZXcJQ3JlYXRlIFZpZXcJY2hhcmFjdGVyX3NldF9jbGllbnQJY29sbGF0aW9uX2Nvbm5l Y3Rpb24KQEAgLTM1MTAsMTEgKzM1MTAsMTEgQEAgTlVMTAlOVUxMCTEKIC0xLjAwCS0xCTUKIC0z MzMzLjMzCS0zMzMzLjMzMzMJMjYKIFdhcm5pbmdzOgotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVj aW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNv cnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJ MTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAnCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBm b3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZh bHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBp bmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJzwtLS0tLS0tLTMwIGNoYXJhY3RlcnMtLS0tLS0tPicK LUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQg cm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1 bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFM IHZhbHVlOiAnIC0tLe+/ve+/ve+/vSokLS0gICAgICAgICAgICcKIERST1AgVklFVyB2MTsKIAoK PT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2ZhbGNvbl9zdG9y ZWRwcm9jLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvZmFsY29uX3N0 b3JlZHByb2MucmVzdWx0CTIwMDgtMDctMDggMTg6NDA6MzIgKzAwMDAKKysrIGIvbXlzcWwtdGVz dC9zdWl0ZS9mdW5jc18xL3IvZmFsY29uX3N0b3JlZHByb2MucmVzdWx0CTIwMDgtMDgtMDcgMTM6 Mzg6MjkgKzAwMDAKQEAgLTIxOTQyLDkgKzIxOTQyLDkgQEAgRU5ECWxhdGluMQlsYXRpbjFfc3dl ZGlzaF9jaQlsYXRpbjFfc3dlZAogc2V0IEBAc3FsX21vZGU9Jyc7CiBDQUxMIHNwNCgpOwogTGV2 ZWwJQ29kZQlNZXNzYWdlCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlE aXZpc2lvbiBieSAwCiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2Fybmlu ZwkxMzY1CURpdmlzaW9uIGJ5IDAKIERST1AgUFJPQ0VEVVJFIHNwNDsKIHNldCBAQHNxbF9tb2Rl PScnOwogCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvZmFs Y29uX3RyaWdfMDMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9mYWxj b25fdHJpZ18wMy5yZXN1bHQJMjAwOC0wNi0wMyAxMjoxMDozMyArMDAwMAorKysgYi9teXNxbC10 ZXN0L3N1aXRlL2Z1bmNzXzEvci9mYWxjb25fdHJpZ18wMy5yZXN1bHQJMjAwOC0wOC0wNyAxMzoz ODoyOSArMDAwMApAQCAtNzcsNyArNzcsNyBAQCBncmFudCBBTEwgIG9uICouKiB0byB0ZXN0X25v cHJpdnNAbG9jYWxoCiByZXZva2UgVFJJR0dFUiBvbiAqLiogZnJvbSB0ZXN0X25vcHJpdnNAbG9j YWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBHcmFudHMg Zm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERBVEUs IERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBS RUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRF TVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwg UkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElO RSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5UIE9OICouKiBUTyAndGVzdF9ub3By aXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlD MENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKK0dSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERBVEUs IERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBS RUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRF TVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwg UkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElO RSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBDUkVBVEUgVEFCTEVTUEFDRSBP TiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09S RCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCiByZXZva2UgQUxM IFBSSVZJTEVHRVMsIEdSQU5UIE9QVElPTiBGUk9NIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0Owog Z3JhbnQgVFJJR0dFUiBvbiAqLiogdG8gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBT RUxFQ1Qgb24gcHJpdl9kYi50MSB0byB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKQEAgLTE1NSw3 ICsxNTUsNyBAQCBncmFudCBBTEwgIG9uICouKiB0byB0ZXN0X25vcHJpdnNAbG9jYWxoCiByZXZv a2UgVVBEQVRFICBvbiAqLiogZnJvbSB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Owogc2hvdyBncmFu dHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBHcmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bs b2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVM T0FELCBTSFVURE9XTiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBT SE9XIERBVEFCQVNFUywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxF UywgRVhFQ1VURSwgUkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRF IFZJRVcsIFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBV U0VSLCBFVkVOVCwgVFJJR0dFUiBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcg SURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRB NTRDQTI1NzYnCitHUkFOVCBTRUxFQ1QsIElOU0VSVCwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJF TE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwg U0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJM RVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFU RSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUg VVNFUiwgRVZFTlQsIFRSSUdHRVIsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9u b3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEw OTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIHJldm9rZSBBTEwgUFJJVklMRUdFUywgR1JB TlQgT1BUSU9OIEZST00gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBUUklHR0VSLCBV UERBVEUgb24gKi4qIHRvIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0Owogc2hvdyBncmFudHMgZm9y IHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwpAQCAtMTY5LDcgKzE2OSw3IEBAIHRlc3Rfbm9wcml2 c0Bsb2NhbGhvc3QKIHVzZSBwcml2X2RiOwogc2hvdyBncmFudHM7CiBHcmFudHMgZm9yIHRlc3Rf bm9wcml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwg RFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgs IEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBM T0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVO VCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUs IENSRUFURSBVU0VSLCBFVkVOVCwgVFJJR0dFUiBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xv Y2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVG OTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBTRUxFQ1QsIElOU0VSVCwgREVMRVRFLCBDUkVBVEUs IERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVY LCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywg TE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElF TlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5F LCBDUkVBVEUgVVNFUiwgRVZFTlQsIFRSSUdHRVIsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBU TyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5 NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIHNlbGVjdCBmMSBmcm9tIHQx IG9yZGVyIGJ5IGYxOwogZjEKIGluc2VydCAzLjUuMy4yLW5vCkBAIC00MDEsNyArNDAxLDcgQEAg Z3JhbnQgQUxMICBvbiAqLiogdG8gdGVzdF9ub3ByaXZzQGxvY2FsaAogcmV2b2tlIFNFTEVDVCAg b24gKi4qIGZyb20gdGVzdF9ub3ByaXZzQGxvY2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0 X25vcHJpdnNAbG9jYWxob3N0OwogR3JhbnRzIGZvciB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Ci1H UkFOVCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERP V04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFT RVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUs IFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9X IFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQs IFRSSUdHRVIgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQg QlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2Jwor R1JBTlQgSU5TRVJULCBVUERBVEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRE T1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJB U0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRF LCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hP VyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5U LCBUUklHR0VSLCBDUkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xv Y2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVG OTE4M0YzNzRBNTRDQTI1NzYnCiByZXZva2UgQUxMIFBSSVZJTEVHRVMsIEdSQU5UIE9QVElPTiBG Uk9NIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwogZ3JhbnQgVFJJR0dFUiwgU0VMRUNUIG9uICou KiB0byB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X3llc3By aXZzQGxvY2FsaG9zdDsKQEAgLTQxNSw3ICs0MTUsNyBAQCB0ZXN0X25vcHJpdnNAbG9jYWxob3N0 CiB1c2UgcHJpdl9kYjsKIHNob3cgZ3JhbnRzOwogR3JhbnRzIGZvciB0ZXN0X25vcHJpdnNAbG9j YWxob3N0Ci1HUkFOVCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9B RCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hP VyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMs IEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBW SUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNF UiwgRVZFTlQsIFRSSUdHRVIgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2NhbGhvc3QnIElE RU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0 Q0EyNTc2JworR1JBTlQgSU5TRVJULCBVUERBVEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxP QUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNI T1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVT LCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUg VklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVT RVIsIEVWRU5ULCBUUklHR0VSLCBDUkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8gJ3Rlc3Rfbm9w cml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5 QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCiBjcmVhdGUgdHJpZ2dlciB0cmc1YV8xIGJlZm9y ZSBJTlNFUlQgb24gdDEgZm9yIGVhY2ggcm93CiBzZXQgQHRlc3RfdmFyID0gbmV3LmYxOwogc2V0 IEB0ZXN0X3ZhciA9ICdiZWZvcmUgdHJpZyAzLjUuMy44LTFhJzsKCj09PSBtb2RpZmllZCBmaWxl ICdteXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9mYWxjb25fdHJpZ18wM2UucmVzdWx0JwotLS0g YS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9mYWxjb25fdHJpZ18wM2UucmVzdWx0CTIwMDgt MDQtMDEgMjE6MDE6MDIgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvZmFs Y29uX3RyaWdfMDNlLnJlc3VsdAkyMDA4LTA4LTA3IDEzOjM4OjI5ICswMDAwCkBAIC01NjIsNyAr NTYyLDcgQEAgdHJpZyAxXzEteWVzCiByZXZva2UgVFJJR0dFUiBvbiAqLiogZnJvbSB0ZXN0X3ll c3ByaXZzQGxvY2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X3llc3ByaXZzQGxvY2FsaG9z dDsKIEdyYW50cyBmb3IgdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5T RVJULCBVUERBVEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9D RVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBF UiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNB VElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBD UkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5UIE9OICouKiBU TyAndGVzdF95ZXNwcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0 OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBTRUxFQ1QsIElO U0VSVCwgVVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJP Q0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQ RVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElD QVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywg Q1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgQ1JFQVRF IFRBQkxFU1BBQ0UgT04gKi4qIFRPICd0ZXN0X3llc3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElG SUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3 NicKIGNvbm5lY3QobG9jYWxob3N0LHRlc3RfeWVzcHJpdnMsUFdELHRlc3QsTUFTVEVSX01ZUE9S VCxNQVNURVJfTVlTT0NLKTsKIHNlbGVjdCBjdXJyZW50X3VzZXI7CiBjdXJyZW50X3VzZXIKQEAg LTYwOSw3ICs2MDksNyBAQCByb290QGxvY2FsaG9zdAogZ3JhbnQgVFJJR0dFUiBvbiBwcml2X2Ri LiogdG8gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBmb3IgdGVzdF95ZXNw cml2c0Bsb2NhbGhvc3Q7CiBHcmFudHMgZm9yIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0Ci1HUkFO VCBTRUxFQ1QsIElOU0VSVCwgVVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBT SFVURE9XTiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERB VEFCQVNFUywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhF Q1VURSwgUkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcs IFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBF VkVOVCBPTiAqLiogVE8gJ3Rlc3RfeWVzcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkg UEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2JworR1JB TlQgU0VMRUNULCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwg U0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBE QVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVY RUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVX LCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwg RVZFTlQsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF95ZXNwcml2cydAJ2xvY2Fs aG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4 M0YzNzRBNTRDQTI1NzYnCiBHUkFOVCBUUklHR0VSIE9OIGBwcml2X2RiYC4qIFRPICd0ZXN0X3ll c3ByaXZzJ0AnbG9jYWxob3N0JwogCiB0cmlnZ2VyIHByaXZpbGVnZSBvbiBkYiBsZXZlbCBmb3Ig Y3JlYXRlOgoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2lu bm9kYl9mdW5jX3ZpZXcucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9p bm5vZGJfZnVuY192aWV3LnJlc3VsdAkyMDA4LTA2LTE5IDE4OjU2OjQ4ICswMDAwCisrKyBiL215 c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2lubm9kYl9mdW5jX3ZpZXcucmVzdWx0CTIwMDgtMDct MTUgMDA6MDY6NDMgKzAwMDAKQEAgLTMyODMsOSArMzI4Myw5IEBAIE5VTEwJTlVMTAkxCiAtMzMz My4zMwktMzMzMy4zMzMzCTMwCiBXYXJuaW5nczoKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5j b3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcnCi1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBm b3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKK1dh cm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUg QVMgREVDSU1BTCgzNywyKSknIGF0IHJvdyAxCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29y cmVjdCBERUNJTUFMIHZhbHVlOiAnJwotRXJyb3IJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9y IGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0IHJvdyAxCitXYXJu aW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFT IERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQogU0hPVyBDUkVBVEUgVklFVyB2MTsKIFZpZXcJQ3Jl YXRlIFZpZXcJY2hhcmFjdGVyX3NldF9jbGllbnQJY29sbGF0aW9uX2Nvbm5lY3Rpb24KIHYxCUNS RUFURSBBTEdPUklUSE09VU5ERUZJTkVEIERFRklORVI9YHJvb3RgQGBsb2NhbGhvc3RgIFNRTCBT RUNVUklUWSBERUZJTkVSIFZJRVcgYHYxYCBBUyBzZWxlY3QgY2FzdChgdDFfdmFsdWVzYC5gbXlf ZG91YmxlYCBhcyBkZWNpbWFsKDM3LDIpKSBBUyBgQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgz NywyKSlgLGB0MV92YWx1ZXNgLmBteV9kb3VibGVgIEFTIGBteV9kb3VibGVgLGB0MV92YWx1ZXNg LmBpZGAgQVMgYGlkYCBmcm9tIGB0MV92YWx1ZXNgCWxhdGluMQlsYXRpbjFfc3dlZGlzaF9jaQpA QCAtMzMwMSw5ICszMzAxLDkgQEAgTlVMTAlOVUxMCTEKIC0zMzMzLjMzCS0zMzMzLjMzMzMJMzAK IFdhcm5pbmdzOgogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1 ZTogJycKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlf ZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQorV2FybmluZwkxMjY0CU91dCBvZiBy YW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScg YXQgcm93IDEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6 ICcnCi1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2Rv dWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFu Z2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0 IHJvdyAxCiBEUk9QIFZJRVcgdjE7CiAKIApAQCAtMzM3Miw5ICszMzcyLDkgQEAgTlVMTAlOVUxM CTEKIC0xLjAwCS0xCTUKIC0zMzMzLjMzCS0zMzMzLjMzMzMJMjkKIFdhcm5pbmdzOgotRXJyb3IJ MTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEK LUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQg cm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1u ICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBm b3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZh bHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBk ZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogU0hPVyBDUkVBVEUgVklF VyB2MTsKIFZpZXcJQ3JlYXRlIFZpZXcJY2hhcmFjdGVyX3NldF9jbGllbnQJY29sbGF0aW9uX2Nv bm5lY3Rpb24KIHYxCUNSRUFURSBBTEdPUklUSE09VU5ERUZJTkVEIERFRklORVI9YHJvb3RgQGBs b2NhbGhvc3RgIFNRTCBTRUNVUklUWSBERUZJTkVSIFZJRVcgYHYxYCBBUyBzZWxlY3QgY2FzdChg dDFfdmFsdWVzYC5gbXlfdmFyYmluYXJ5XzEwMDBgIGFzIGRlY2ltYWwoMzcsMikpIEFTIGBDQVNU KG15X3ZhcmJpbmFyeV8xMDAwIEFTIERFQ0lNQUwoMzcsMikpYCxgdDFfdmFsdWVzYC5gbXlfdmFy YmluYXJ5XzEwMDBgIEFTIGBteV92YXJiaW5hcnlfMTAwMGAsYHQxX3ZhbHVlc2AuYGlkYCBBUyBg aWRgIGZyb20gYHQxX3ZhbHVlc2AJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2NpCkBAIC0zMzg5LDkg KzMzODksOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwky OQogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3Ig Y29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTog JycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwg dmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0 IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJ SW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJu aW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCiBEUk9QIFZJRVcgdjE7CiAKIApAQCAtMzQwOCwxMSArMzQwOCwxMSBAQCBOVUxMCU5VTEwJ MQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyOAogV2FybmluZ3M6Ci1FcnJvcgkx MzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQor V2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0 IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTog JycKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBj b2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJ TUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+JwotRXJyb3IJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5p bmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cg LTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgLS0t 77+977+977+9KiQtLSAnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFM IHZhbHVlOiAnLTEnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZh bHVlOiAnLTMzMzMuMzMzMycKQEAgLTM0MzAsMTEgKzM0MzAsMTEgQEAgTlVMTAlOVUxMCTEKIC0x LjAwCS0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk1CiAtMzMzMy4zMwktMzMzMy4zMzMz AAAAAAAAAAAAAAAAAAAAAAAAAAAJMjgKIFdhcm5pbmdzOgotRXJyb3IJMTM2NglJbmNvcnJlY3Qg ZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5p bmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcnCi1FcnJvcgkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2Fy bmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJv dyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJzwt LS0tLS0tLTMwIGNoYXJhY3RlcnMtLS0tLS0tPicKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2lt YWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3Jy ZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEy OTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnIC0tLe+/ve+/ve+/vSokLS0g JwogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJy0xJwog V2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJy0zMzMzLjMz MzMnCkBAIC0zNDU0LDkgKzM0NTQsOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMu MzMJLTMzMzMuMzMzMwkyNwogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFs IHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3Qg ZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVycm9yCTEzNjYJSW5j b3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5n CTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0x CitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBj b2x1bW4gJycgYXQgcm93IC0xCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmlldwlDcmVhdGUgVmll dwljaGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgogdjEJQ1JFQVRFIEFM R09SSVRITT1VTkRFRklORUQgREVGSU5FUj1gcm9vdGBAYGxvY2FsaG9zdGAgU1FMIFNFQ1VSSVRZ IERFRklORVIgVklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0KGB0MV92YWx1ZXNgLmBteV92YXJjaGFy XzEwMDBgIGFzIGRlY2ltYWwoMzcsMikpIEFTIGBDQVNUKG15X3ZhcmNoYXJfMTAwMCBBUyBERUNJ TUFMKDM3LDIpKWAsYHQxX3ZhbHVlc2AuYG15X3ZhcmNoYXJfMTAwMGAgQVMgYG15X3ZhcmNoYXJf MTAwMGAsYHQxX3ZhbHVlc2AuYGlkYCBBUyBgaWRgIGZyb20gYHQxX3ZhbHVlc2AJbGF0aW4xCWxh dGluMV9zd2VkaXNoX2NpCkBAIC0zNDcxLDkgKzM0NzEsOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJ LTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyNwogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29y cmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2 NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVy cm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4g JycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFs dWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBEUk9QIFZJRVcgdjE7CiAKIApAQCAtMzQ5 MCwxMSArMzQ5MCwxMSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMu MzMzMwkyNgogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAn JyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFs IHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRl ZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICcKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBj b2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJ TUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+JwotRXJyb3IJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5p bmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cg LTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgLS0t 77+977+977+9KiQtLSAgICAgICAgICAgJwogU0hPVyBDUkVBVEUgVklFVyB2MTsKIFZpZXcJQ3Jl YXRlIFZpZXcJY2hhcmFjdGVyX3NldF9jbGllbnQJY29sbGF0aW9uX2Nvbm5lY3Rpb24KQEAgLTM1 MTAsMTEgKzM1MTAsMTEgQEAgTlVMTAlOVUxMCTEKIC0xLjAwCS0xCTUKIC0zMzMzLjMzCS0zMzMz LjMzMzMJMjYKIFdhcm5pbmdzOgotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTog JycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1h bCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0 ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAnCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcn IGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3Ig Y29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVD SU1BTCB2YWx1ZTogJzwtLS0tLS0tLTMwIGNoYXJhY3RlcnMtLS0tLS0tPicKLUVycm9yCTEzNjYJ SW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJu aW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnIC0t Le+/ve+/ve+/vSokLS0gICAgICAgICAgICcKIERST1AgVklFVyB2MTsKIAoKPT09IG1vZGlmaWVk IGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2lubm9kYl9zdG9yZWRwcm9jLnJlc3Vs dCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaW5ub2RiX3N0b3JlZHByb2MucmVz dWx0CTIwMDgtMDctMDggMTg6NDA6MzIgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9mdW5j c18xL3IvaW5ub2RiX3N0b3JlZHByb2MucmVzdWx0CTIwMDgtMDgtMDcgMTM6Mzg6MjkgKzAwMDAK QEAgLTIxOTQyLDkgKzIxOTQyLDkgQEAgRU5ECWxhdGluMQlsYXRpbjFfc3dlZGlzaF9jaQlsYXRp bjFfc3dlZAogc2V0IEBAc3FsX21vZGU9Jyc7CiBDQUxMIHNwNCgpOwogTGV2ZWwJQ29kZQlNZXNz YWdlCi1FcnJvcgkxMzY1CURpdmlzaW9uIGJ5IDAKK1dhcm5pbmcJMTM2NQlEaXZpc2lvbiBieSAw CiBXYXJuaW5nczoKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlz aW9uIGJ5IDAKIERST1AgUFJPQ0VEVVJFIHNwNDsKIHNldCBAQHNxbF9tb2RlPScnOwogCgo9PT0g bW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaW5ub2RiX3RyaWdfMDMu cmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9pbm5vZGJfdHJpZ18wMy5y ZXN1bHQJMjAwOC0wNi0wMyAxMDoyMTo0OCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2Z1 bmNzXzEvci9pbm5vZGJfdHJpZ18wMy5yZXN1bHQJMjAwOC0wOC0wNyAxMzozODoyOSArMDAwMApA QCAtNzcsNyArNzcsNyBAQCBncmFudCBBTEwgIG9uICouKiB0byB0ZXN0X25vcHJpdnNAbG9jYWxo CiByZXZva2UgVFJJR0dFUiBvbiAqLiogZnJvbSB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Owogc2hv dyBncmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBHcmFudHMgZm9yIHRlc3Rfbm9w cml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERBVEUsIERFTEVURSwgQ1JF QVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJ TkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJM RVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04g Q0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9V VElORSwgQ1JFQVRFIFVTRVIsIEVWRU5UIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxo b3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgz RjM3NEE1NENBMjU3NicKK0dSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERBVEUsIERFTEVURSwgQ1JF QVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJ TkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJM RVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04g Q0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9V VElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBDUkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8gJ3Rl c3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQw MTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCiByZXZva2UgQUxMIFBSSVZJTEVHRVMs IEdSQU5UIE9QVElPTiBGUk9NIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwogZ3JhbnQgVFJJR0dF UiBvbiAqLiogdG8gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBTRUxFQ1Qgb24gcHJp dl9kYi50MSB0byB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKQEAgLTE1NSw3ICsxNTUsNyBAQCBn cmFudCBBTEwgIG9uICouKiB0byB0ZXN0X25vcHJpdnNAbG9jYWxoCiByZXZva2UgVVBEQVRFICBv biAqLiogZnJvbSB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3Rf bm9wcml2c0Bsb2NhbGhvc3Q7CiBHcmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKLUdS QU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9X TiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNF UywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwg UkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cg VklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwg VFJJR0dFUiBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBC WSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitH UkFOVCBTRUxFQ1QsIElOU0VSVCwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERP V04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFT RVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUs IFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9X IFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQs IFRSSUdHRVIsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9j YWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5 MTgzRjM3NEE1NENBMjU3NicKIHJldm9rZSBBTEwgUFJJVklMRUdFUywgR1JBTlQgT1BUSU9OIEZS T00gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBUUklHR0VSLCBVUERBVEUgb24gKi4q IHRvIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3RfeWVzcHJp dnNAbG9jYWxob3N0OwpAQCAtMTY5LDcgKzE2OSw3IEBAIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QK IHVzZSBwcml2X2RiOwogc2hvdyBncmFudHM7CiBHcmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2Nh bGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FE LCBTSFVURE9XTiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9X IERBVEFCQVNFUywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywg RVhFQ1VURSwgUkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJ RVcsIFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VS LCBFVkVOVCwgVFJJR0dFUiBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURF TlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRD QTI1NzYnCitHUkFOVCBTRUxFQ1QsIElOU0VSVCwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9B RCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hP VyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMs IEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBW SUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNF UiwgRVZFTlQsIFRSSUdHRVIsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3By aXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlD MENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIHNlbGVjdCBmMSBmcm9tIHQxIG9yZGVyIGJ5IGYx OwogZjEKIGluc2VydCAzLjUuMy4yLW5vCkBAIC00MDEsNyArNDAxLDcgQEAgZ3JhbnQgQUxMICBv biAqLiogdG8gdGVzdF9ub3ByaXZzQGxvY2FsaAogcmV2b2tlIFNFTEVDVCAgb24gKi4qIGZyb20g dGVzdF9ub3ByaXZzQGxvY2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X25vcHJpdnNAbG9j YWxob3N0OwogR3JhbnRzIGZvciB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Ci1HUkFOVCBJTlNFUlQs IFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1Ms IEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBD UkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9O IFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFU RSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIFRSSUdHRVIgT04g Ki4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQg JypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2JworR1JBTlQgSU5TRVJU LCBVUERBVEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNT LCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwg Q1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElP TiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVB VEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBUUklHR0VSLCBD UkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURF TlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRD QTI1NzYnCiByZXZva2UgQUxMIFBSSVZJTEVHRVMsIEdSQU5UIE9QVElPTiBGUk9NIHRlc3RfeWVz cHJpdnNAbG9jYWxob3N0OwogZ3JhbnQgVFJJR0dFUiwgU0VMRUNUIG9uICouKiB0byB0ZXN0X3ll c3ByaXZzQGxvY2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X3llc3ByaXZzQGxvY2FsaG9z dDsKQEAgLTQxNSw3ICs0MTUsNyBAQCB0ZXN0X25vcHJpdnNAbG9jYWxob3N0CiB1c2UgcHJpdl9k YjsKIHNob3cgZ3JhbnRzOwogR3JhbnRzIGZvciB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Ci1HUkFO VCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04s IFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMs IFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJF UExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJ RVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIFRS SUdHRVIgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkg UEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2JworR1JB TlQgSU5TRVJULCBVUERBVEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dO LCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VT LCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBS RVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBW SUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBU UklHR0VSLCBDUkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2Fs aG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4 M0YzNzRBNTRDQTI1NzYnCiBjcmVhdGUgdHJpZ2dlciB0cmc1YV8xIGJlZm9yZSBJTlNFUlQgb24g dDEgZm9yIGVhY2ggcm93CiBzZXQgQHRlc3RfdmFyID0gbmV3LmYxOwogc2V0IEB0ZXN0X3ZhciA9 ICdiZWZvcmUgdHJpZyAzLjUuMy44LTFhJzsKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0 L3N1aXRlL2Z1bmNzXzEvci9pbm5vZGJfdHJpZ18wM2UucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0 L3N1aXRlL2Z1bmNzXzEvci9pbm5vZGJfdHJpZ18wM2UucmVzdWx0CTIwMDgtMDQtMzAgMTY6MTY6 NDUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaW5ub2RiX3RyaWdfMDNl LnJlc3VsdAkyMDA4LTA4LTA3IDEzOjM4OjI5ICswMDAwCkBAIC01NjIsNyArNTYyLDcgQEAgdHJp ZyAxXzEteWVzCiByZXZva2UgVFJJR0dFUiBvbiAqLiogZnJvbSB0ZXN0X3llc3ByaXZzQGxvY2Fs aG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKIEdyYW50cyBm b3IgdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERBVEUs IERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBS RUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRF TVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwg UkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElO RSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5UIE9OICouKiBUTyAndGVzdF95ZXNw cml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5 QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBTRUxFQ1QsIElOU0VSVCwgVVBEQVRF LCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VTUywgRklMRSwg UkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIsIENSRUFURSBU RU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJT04gU0xBVkUs IFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJ TkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgQ1JFQVRFIFRBQkxFU1BBQ0Ug T04gKi4qIFRPICd0ZXN0X3llc3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NX T1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIGNvbm5lY3Qo bG9jYWxob3N0LHRlc3RfeWVzcHJpdnMsUFdELHRlc3QsTUFTVEVSX01ZUE9SVCxNQVNURVJfTVlT T0NLKTsKIHNlbGVjdCBjdXJyZW50X3VzZXI7CiBjdXJyZW50X3VzZXIKQEAgLTYwOSw3ICs2MDks NyBAQCByb290QGxvY2FsaG9zdAogZ3JhbnQgVFJJR0dFUiBvbiBwcml2X2RiLiogdG8gdGVzdF95 ZXNwcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBmb3IgdGVzdF95ZXNwcml2c0Bsb2NhbGhv c3Q7CiBHcmFudHMgZm9yIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0Ci1HUkFOVCBTRUxFQ1QsIElO U0VSVCwgVVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJP Q0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQ RVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElD QVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywg Q1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCBPTiAqLiog VE8gJ3Rlc3RfeWVzcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQgJypD NDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2JworR1JBTlQgU0VMRUNULCBJ TlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBS T0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNV UEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJ Q0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcs IENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIENSRUFU RSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF95ZXNwcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJ RklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1 NzYnCiBHUkFOVCBUUklHR0VSIE9OIGBwcml2X2RiYC4qIFRPICd0ZXN0X3llc3ByaXZzJ0AnbG9j YWxob3N0JwogCiB0cmlnZ2VyIHByaXZpbGVnZSBvbiBkYiBsZXZlbCBmb3IgY3JlYXRlOgoKPT09 IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL2lzX2NvbHVtbnNfbXlz cWwucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9pc19jb2x1bW5zX215 c3FsLnJlc3VsdAkyMDA4LTA3LTEwIDA5OjQ5OjUzICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3Vp dGUvZnVuY3NfMS9yL2lzX2NvbHVtbnNfbXlzcWwucmVzdWx0CTIwMDgtMDgtMDcgMTM6Mzg6Mjkg KzAwMDAKQEAgLTIwOSw2ICsyMDksNyBAQCBOVUxMCW15c3FsCXVzZXIJQWx0ZXJfcHJpdgkxNwlO CU5PCWVudW0JCiBOVUxMCW15c3FsCXVzZXIJQWx0ZXJfcm91dGluZV9wcml2CTI4CU4JTk8JZW51 bQkxCTQJTlVMTAlOVUxMCXV0ZjgJdXRmOF9nZW5lcmFsX2NpCWVudW0oJ04nLCdZJykJCQlzZWxl Y3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKIE5VTEwJbXlzcWwJ dXNlcglDcmVhdGVfcHJpdgk4CU4JTk8JZW51bQkxCTQJTlVMTAlOVUxMCXV0ZjgJdXRmOF9nZW5l cmFsX2NpCWVudW0oJ04nLCdZJykJCQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlE ZWZhdWx0CURlZmF1bHQKIE5VTEwJbXlzcWwJdXNlcglDcmVhdGVfcm91dGluZV9wcml2CTI3CU4J Tk8JZW51bQkxCTQJTlVMTAlOVUxMCXV0ZjgJdXRmOF9nZW5lcmFsX2NpCWVudW0oJ04nLCdZJykJ CQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKK05VTEwJ bXlzcWwJdXNlcglDcmVhdGVfdGFibGVzcGFjZV9wcml2CTMyCU4JTk8JZW51bQkxCTQJTlVMTAlO VUxMCXV0ZjgJdXRmOF9nZW5lcmFsX2NpCWVudW0oJ04nLCdZJykJCQlzZWxlY3QsaW5zZXJ0LHVw ZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKIE5VTEwJbXlzcWwJdXNlcglDcmVhdGVf dG1wX3RhYmxlX3ByaXYJMjAJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1dGY4X2dlbmVy YWxfY2kJZW51bSgnTicsJ1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURl ZmF1bHQJRGVmYXVsdAogTlVMTAlteXNxbAl1c2VyCUNyZWF0ZV91c2VyX3ByaXYJMjkJTglOTwll bnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51bSgnTicsJ1knKQkJCXNl bGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAogTlVMTAlteXNx bAl1c2VyCUNyZWF0ZV92aWV3X3ByaXYJMjUJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1 dGY4X2dlbmVyYWxfY2kJZW51bSgnTicsJ1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVy ZW5jZXMJCURlZmF1bHQJRGVmYXVsdApAQCAtMjIyLDEwICsyMjMsMTAgQEAgTlVMTAlteXNxbAl1 c2VyCUhvc3QJMQkJTk8JY2hhcgk2MAkyNDAJTgogTlVMTAlteXNxbAl1c2VyCUluZGV4X3ByaXYJ MTYJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51bSgnTics J1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAog TlVMTAlteXNxbAl1c2VyCUluc2VydF9wcml2CTUJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRm OAl1dGY4X2dlbmVyYWxfY2kJZW51bSgnTicsJ1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJl ZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAogTlVMTAlteXNxbAl1c2VyCUxvY2tfdGFibGVzX3By aXYJMjEJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51bSgn TicsJ1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVs dAotTlVMTAlteXNxbAl1c2VyCW1heF9jb25uZWN0aW9ucwkzOAkwCU5PCWludAlOVUxMCU5VTEwJ MTAJMAlOVUxMCU5VTEwJaW50KDExKSB1bnNpZ25lZAkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJl ZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAotTlVMTAlteXNxbAl1c2VyCW1heF9xdWVzdGlvbnMJ MzYJMAlOTwlpbnQJTlVMTAlOVUxMCTEwCTAJTlVMTAlOVUxMCWludCgxMSkgdW5zaWduZWQJCQlz ZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKLU5VTEwJbXlz cWwJdXNlcgltYXhfdXBkYXRlcwkzNwkwCU5PCWludAlOVUxMCU5VTEwJMTAJMAlOVUxMCU5VTEwJ aW50KDExKSB1bnNpZ25lZAkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1 bHQJRGVmYXVsdAotTlVMTAlteXNxbAl1c2VyCW1heF91c2VyX2Nvbm5lY3Rpb25zCTM5CTAJTk8J aW50CU5VTEwJTlVMTAkxMAkwCU5VTEwJTlVMTAlpbnQoMTEpIHVuc2lnbmVkCQkJc2VsZWN0LGlu c2VydCx1cGRhdGUscmVmZXJlbmNlcwkJRGVmYXVsdAlEZWZhdWx0CitOVUxMCW15c3FsCXVzZXIJ bWF4X2Nvbm5lY3Rpb25zCTM5CTAJTk8JaW50CU5VTEwJTlVMTAkxMAkwCU5VTEwJTlVMTAlpbnQo MTEpIHVuc2lnbmVkCQkJc2VsZWN0LGluc2VydCx1cGRhdGUscmVmZXJlbmNlcwkJRGVmYXVsdAlE ZWZhdWx0CitOVUxMCW15c3FsCXVzZXIJbWF4X3F1ZXN0aW9ucwkzNwkwCU5PCWludAlOVUxMCU5V TEwJMTAJMAlOVUxMCU5VTEwJaW50KDExKSB1bnNpZ25lZAkJCXNlbGVjdCxpbnNlcnQsdXBkYXRl LHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAorTlVMTAlteXNxbAl1c2VyCW1heF91cGRhdGVz CTM4CTAJTk8JaW50CU5VTEwJTlVMTAkxMAkwCU5VTEwJTlVMTAlpbnQoMTEpIHVuc2lnbmVkCQkJ c2VsZWN0LGluc2VydCx1cGRhdGUscmVmZXJlbmNlcwkJRGVmYXVsdAlEZWZhdWx0CitOVUxMCW15 c3FsCXVzZXIJbWF4X3VzZXJfY29ubmVjdGlvbnMJNDAJMAlOTwlpbnQJTlVMTAlOVUxMCTEwCTAJ TlVMTAlOVUxMCWludCgxMSkgdW5zaWduZWQJCQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVu Y2VzCQlEZWZhdWx0CURlZmF1bHQKIE5VTEwJbXlzcWwJdXNlcglQYXNzd29yZAkzCQlOTwljaGFy CTQxCTQxCU5VTEwJTlVMTAlsYXRpbjEJbGF0aW4xX2JpbgljaGFyKDQxKQkJCXNlbGVjdCxpbnNl cnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAogTlVMTAlteXNxbAl1c2VyCVBy b2Nlc3NfcHJpdgkxMglOCU5PCWVudW0JMQk0CU5VTEwJTlVMTAl1dGY4CXV0ZjhfZ2VuZXJhbF9j aQllbnVtKCdOJywnWScpCQkJc2VsZWN0LGluc2VydCx1cGRhdGUscmVmZXJlbmNlcwkJRGVmYXVs dAlEZWZhdWx0CiBOVUxMCW15c3FsCXVzZXIJUmVmZXJlbmNlc19wcml2CTE1CU4JTk8JZW51bQkx CTQJTlVMTAlOVUxMCXV0ZjgJdXRmOF9nZW5lcmFsX2NpCWVudW0oJ04nLCdZJykJCQlzZWxlY3Qs aW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKQEAgLTIzNiwxNCArMjM3 LDE0IEBAIE5VTEwJbXlzcWwJdXNlcglTZWxlY3RfcHJpdgk0CU4JTk8JZW51bQkKIE5VTEwJbXlz cWwJdXNlcglTaG93X2RiX3ByaXYJMTgJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1dGY4 X2dlbmVyYWxfY2kJZW51bSgnTicsJ1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5j ZXMJCURlZmF1bHQJRGVmYXVsdAogTlVMTAlteXNxbAl1c2VyCVNob3dfdmlld19wcml2CTI2CU4J Tk8JZW51bQkxCTQJTlVMTAlOVUxMCXV0ZjgJdXRmOF9nZW5lcmFsX2NpCWVudW0oJ04nLCdZJykJ CQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKIE5VTEwJ bXlzcWwJdXNlcglTaHV0ZG93bl9wcml2CTExCU4JTk8JZW51bQkxCTQJTlVMTAlOVUxMCXV0ZjgJ dXRmOF9nZW5lcmFsX2NpCWVudW0oJ04nLCdZJykJCQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZl cmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKLU5VTEwJbXlzcWwJdXNlcglzc2xfY2lwaGVyCTMzCU5V TEwJTk8JYmxvYgk2NTUzNQk2NTUzNQlOVUxMCU5VTEwJTlVMTAlOVUxMCWJsb2IJCQlzZWxlY3Qs aW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKLU5VTEwJbXlzcWwJdXNl cglzc2xfdHlwZQkzMgkJTk8JZW51bQk5CTM2CU5VTEwJTlVMTAl1dGY4CXV0ZjhfZ2VuZXJhbF9j aQllbnVtKCcnLCdBTlknLCdYNTA5JywnU1BFQ0lGSUVEJykJCQlzZWxlY3QsaW5zZXJ0LHVwZGF0 ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKK05VTEwJbXlzcWwJdXNlcglzc2xfY2lwaGVy CTM0CU5VTEwJTk8JYmxvYgk2NTUzNQk2NTUzNQlOVUxMCU5VTEwJTlVMTAlOVUxMCWJsb2IJCQlz ZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKK05VTEwJbXlz cWwJdXNlcglzc2xfdHlwZQkzMwkJTk8JZW51bQk5CTM2CU5VTEwJTlVMTAl1dGY4CXV0ZjhfZ2Vu ZXJhbF9jaQllbnVtKCcnLCdBTlknLCdYNTA5JywnU1BFQ0lGSUVEJykJCQlzZWxlY3QsaW5zZXJ0 LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKIE5VTEwJbXlzcWwJdXNlcglTdXBl cl9wcml2CTE5CU4JTk8JZW51bQkxCTQJTlVMTAlOVUxMCXV0ZjgJdXRmOF9nZW5lcmFsX2NpCWVu dW0oJ04nLCdZJykJCQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURl ZmF1bHQKIE5VTEwJbXlzcWwJdXNlcglUcmlnZ2VyX3ByaXYJMzEJTglOTwllbnVtCTEJNAlOVUxM CU5VTEwJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51bSgnTicsJ1knKQkJCXNlbGVjdCxpbnNlcnQs dXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAogTlVMTAlteXNxbAl1c2VyCVVwZGF0 ZV9wcml2CTYJTglOTwllbnVtCTEJNAlOVUxMCU5VTEwJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51 bSgnTicsJ1knKQkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVm YXVsdAogTlVMTAlteXNxbAl1c2VyCVVzZXIJMgkJTk8JY2hhcgkxNgk2NAlOVUxMCU5VTEwJdXRm OAl1dGY4X2JpbgljaGFyKDE2KQlQUkkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJ CURlZmF1bHQJRGVmYXVsdAotTlVMTAlteXNxbAl1c2VyCXg1MDlfaXNzdWVyCTM0CU5VTEwJTk8J YmxvYgk2NTUzNQk2NTUzNQlOVUxMCU5VTEwJTlVMTAlOVUxMCWJsb2IJCQlzZWxlY3QsaW5zZXJ0 LHVwZGF0ZSxyZWZlcmVuY2VzCQlEZWZhdWx0CURlZmF1bHQKLU5VTEwJbXlzcWwJdXNlcgl4NTA5 X3N1YmplY3QJMzUJTlVMTAlOTwlibG9iCTY1NTM1CTY1NTM1CU5VTEwJTlVMTAlOVUxMCU5VTEwJ YmxvYgkJCXNlbGVjdCxpbnNlcnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAor TlVMTAlteXNxbAl1c2VyCXg1MDlfaXNzdWVyCTM1CU5VTEwJTk8JYmxvYgk2NTUzNQk2NTUzNQlO VUxMCU5VTEwJTlVMTAlOVUxMCWJsb2IJCQlzZWxlY3QsaW5zZXJ0LHVwZGF0ZSxyZWZlcmVuY2Vz CQlEZWZhdWx0CURlZmF1bHQKK05VTEwJbXlzcWwJdXNlcgl4NTA5X3N1YmplY3QJMzYJTlVMTAlO TwlibG9iCTY1NTM1CTY1NTM1CU5VTEwJTlVMTAlOVUxMCU5VTEwJYmxvYgkJCXNlbGVjdCxpbnNl cnQsdXBkYXRlLHJlZmVyZW5jZXMJCURlZmF1bHQJRGVmYXVsdAogIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK ICMgU2hvdyB0aGUgcXVvdGllbnQgb2YgQ0hBUkFDVEVSX09DVEVUX0xFTkdUSCBhbmQgQ0hBUkFD VEVSX01BWElNVU1fTEVOR1RICiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpAQCAtNTQ4LDYgKzU0OSw3IEBA IE5VTEwJbXlzcWwJdGltZV96b25lX3RyYW5zaXRpb25fdHlwZQlJc18KIDQuMDAwMAlteXNxbAl1 c2VyCUNyZWF0ZV91c2VyX3ByaXYJZW51bQkxCTQJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51bSgn TicsJ1knKQogNC4wMDAwCW15c3FsCXVzZXIJRXZlbnRfcHJpdgllbnVtCTEJNAl1dGY4CXV0Zjhf Z2VuZXJhbF9jaQllbnVtKCdOJywnWScpCiA0LjAwMDAJbXlzcWwJdXNlcglUcmlnZ2VyX3ByaXYJ ZW51bQkxCTQJdXRmOAl1dGY4X2dlbmVyYWxfY2kJZW51bSgnTicsJ1knKQorNC4wMDAwCW15c3Fs CXVzZXIJQ3JlYXRlX3RhYmxlc3BhY2VfcHJpdgllbnVtCTEJNAl1dGY4CXV0ZjhfZ2VuZXJhbF9j aQllbnVtKCdOJywnWScpCiA0LjAwMDAJbXlzcWwJdXNlcglzc2xfdHlwZQllbnVtCTkJMzYJdXRm OAl1dGY4X2dlbmVyYWxfY2kJZW51bSgnJywnQU5ZJywnWDUwOScsJ1NQRUNJRklFRCcpCiAxLjAw MDAJbXlzcWwJdXNlcglzc2xfY2lwaGVyCWJsb2IJNjU1MzUJNjU1MzUJTlVMTAlOVUxMCWJsb2IK IDEuMDAwMAlteXNxbAl1c2VyCXg1MDlfaXNzdWVyCWJsb2IJNjU1MzUJNjU1MzUJTlVMTAlOVUxM CWJsb2IKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9pc191 c2VyX3ByaXZpbGVnZXMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9p c191c2VyX3ByaXZpbGVnZXMucmVzdWx0CTIwMDgtMDMtMDcgMTk6MTg6MTQgKzAwMDAKKysrIGIv bXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvaXNfdXNlcl9wcml2aWxlZ2VzLnJlc3VsdAkyMDA4 LTA4LTA3IDEzOjM4OjI5ICswMDAwCkBAIC03NiwxMCArNzYsMTAgQEAgR1JBTlRFRQlUQUJMRV9D QVRBTE9HCVBSSVZJTEVHRV9UWVBFCUlTXwogJ3Rlc3R1c2VyMydAJ2xvY2FsaG9zdCcJTlVMTAlV U0FHRQlOTwogU0VMRUNUICogRlJPTSBteXNxbC51c2VyCiBXSEVSRSB1c2VyIExJS0UgJ3Rlc3R1 c2VyJScgT1JERVIgQlkgaG9zdCwgdXNlcjsKLUhvc3QJVXNlcglQYXNzd29yZAlTZWxlY3RfcHJp dglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVhdGVfcHJpdglEcm9wX3By aXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50 X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJ U3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJsZXNfcHJpdglFeGVjdXRl X3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglT aG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVh dGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CXNzbF90eXBlCXNzbF9jaXBoZXIJ eDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9xdWVzdGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nv bm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25zCi1sb2NhbGhvc3QJdGVzdHVzZXIxCQlOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkw CTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJWQlOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVz ZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCQkJCQkwCTAJMAkwCitIb3N0CVVzZXIJUGFzc3dvcmQJU2VsZWN0X3ByaXYJSW5zZXJ0X3By aXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3ByaXYJRHJvcF9wcml2CVJlbG9hZF9w cml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZpbGVfcHJpdglHcmFudF9wcml2CVJlZmVy ZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJU2hvd19kYl9wcml2CVN1cGVyX3ByaXYJ Q3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVzX3ByaXYJRXhlY3V0ZV9wcml2CVJlcGxf c2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92aWV3X3ByaXYJU2hvd192aWV3X3By aXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0aW5lX3ByaXYJQ3JlYXRlX3VzZXJfcHJp dglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglDcmVhdGVfdGFibGVzcGFjZV9wcml2CXNzbF90eXBl CXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9xdWVzdGlvbnMJbWF4X3Vw ZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25zCitsb2NhbGhvc3QJdGVz dHVzZXIxCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9zdAl0ZXN0dXNlcjIJCU4JWQlZCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAor bG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCiAjCiAjIEFkZCBHUkFOVCBPUFRJT04g ZGJfZGF0YWRpY3QuKiB0byB0ZXN0dXNlcjE7CiBHUkFOVCBVUERBVEUgT04gZGJfZGF0YWRpY3Qu KiBUTyAndGVzdHVzZXIxJ0AnbG9jYWxob3N0JyBXSVRIIEdSQU5UIE9QVElPTjsKQEAgLTkzLDEw ICs5MywxMCBAQCBHUkFOVEVFCVRBQkxFX0NBVEFMT0cJUFJJVklMRUdFX1RZUEUJSVNfCiAndGVz dHVzZXIzJ0AnbG9jYWxob3N0JwlOVUxMCVVTQUdFCU5PCiBTRUxFQ1QgKiBGUk9NIG15c3FsLnVz ZXIKIFdIRVJFIHVzZXIgTElLRSAndGVzdHVzZXIlJyBPUkRFUiBCWSBob3N0LCB1c2VyOwotSG9z dAlVc2VyCVBhc3N3b3JkCVNlbGVjdF9wcml2CUluc2VydF9wcml2CVVwZGF0ZV9wcml2CURlbGV0 ZV9wcml2CUNyZWF0ZV9wcml2CURyb3BfcHJpdglSZWxvYWRfcHJpdglTaHV0ZG93bl9wcml2CVBy b2Nlc3NfcHJpdglGaWxlX3ByaXYJR3JhbnRfcHJpdglSZWZlcmVuY2VzX3ByaXYJSW5kZXhfcHJp dglBbHRlcl9wcml2CVNob3dfZGJfcHJpdglTdXBlcl9wcml2CUNyZWF0ZV90bXBfdGFibGVfcHJp dglMb2NrX3RhYmxlc19wcml2CUV4ZWN1dGVfcHJpdglSZXBsX3NsYXZlX3ByaXYJUmVwbF9jbGll bnRfcHJpdglDcmVhdGVfdmlld19wcml2CVNob3dfdmlld19wcml2CUNyZWF0ZV9yb3V0aW5lX3By aXYJQWx0ZXJfcm91dGluZV9wcml2CUNyZWF0ZV91c2VyX3ByaXYJRXZlbnRfcHJpdglUcmlnZ2Vy X3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1YmplY3QJbWF4X3F1 ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJfY29ubmVjdGlvbnMK LWxvY2FsaG9zdAl0ZXN0dXNlcjEJCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKLWxvY2FsaG9zdAl0ZXN0dXNlcjIJCU4J WQlZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJ CTAJMAkwCTAKLWxvY2FsaG9zdAl0ZXN0dXNlcjMJCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK0hvc3QJVXNlcglQYXNz d29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVh dGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJ RmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJp dglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJs ZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3Jl YXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3Jv dXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CUNyZWF0 ZV90YWJsZXNwYWNlX3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1 YmplY3QJbWF4X3F1ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJf Y29ubmVjdGlvbnMKK2xvY2FsaG9zdAl0ZXN0dXNlcjEJCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAorbG9jYWxob3N0 CXRlc3R1c2VyMgkJTglZCVkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCitsb2NhbGhvc3QJdGVzdHVzZXIzCQlOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkw CTAKICMgRXN0YWJsaXNoIGNvbm5lY3Rpb24gdGVzdHVzZXIxICh1c2VyPXRlc3R1c2VyMSkKIFNF TEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnVzZXJfcHJpdmlsZWdlcwogV0hFUkUgZ3Jh bnRlZSBMSUtFICcnJ3Rlc3R1c2VyJScnJwpAQCAtMTA1LDEwICsxMDUsMTAgQEAgR1JBTlRFRQlU QUJMRV9DQVRBTE9HCVBSSVZJTEVHRV9UWVBFCUlTXwogJ3Rlc3R1c2VyMSdAJ2xvY2FsaG9zdCcJ TlVMTAlVU0FHRQlOTwogU0VMRUNUICogRlJPTSBteXNxbC51c2VyCiBXSEVSRSB1c2VyIExJS0Ug J3Rlc3R1c2VyJScgT1JERVIgQlkgaG9zdCwgdXNlcjsKLUhvc3QJVXNlcglQYXNzd29yZAlTZWxl Y3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVhdGVfcHJpdglE cm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJRmlsZV9wcml2 CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJpdglTaG93X2Ri X3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJsZXNfcHJpdglF eGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3JlYXRlX3ZpZXdf cHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3JvdXRpbmVfcHJp dglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CXNzbF90eXBlCXNzbF9j aXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9xdWVzdGlvbnMJbWF4X3VwZGF0ZXMJ bWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25zCi1sb2NhbGhvc3QJdGVzdHVzZXIx CQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CQkJCQkwCTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJWQlOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCi1sb2NhbGhvc3QJ dGVzdHVzZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCQkJCQkwCTAJMAkwCitIb3N0CVVzZXIJUGFzc3dvcmQJU2VsZWN0X3ByaXYJSW5z ZXJ0X3ByaXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3ByaXYJRHJvcF9wcml2CVJl bG9hZF9wcml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZpbGVfcHJpdglHcmFudF9wcml2 CVJlZmVyZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJU2hvd19kYl9wcml2CVN1cGVy X3ByaXYJQ3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVzX3ByaXYJRXhlY3V0ZV9wcml2 CVJlcGxfc2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92aWV3X3ByaXYJU2hvd192 aWV3X3ByaXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0aW5lX3ByaXYJQ3JlYXRlX3Vz ZXJfcHJpdglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglDcmVhdGVfdGFibGVzcGFjZV9wcml2CXNz bF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9xdWVzdGlvbnMJ bWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25zCitsb2NhbGhv c3QJdGVzdHVzZXIxCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9zdAl0ZXN0dXNlcjIJCU4JWQlZCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkw CTAJMAorbG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCiBTSE9XIEdSQU5UUzsKIEdy YW50cyBmb3IgdGVzdHVzZXIxQGxvY2FsaG9zdAogR1JBTlQgVVNBR0UgT04gKi4qIFRPICd0ZXN0 dXNlcjEnQCdsb2NhbGhvc3QnCkBAIC0xMzAsMTAgKzEzMCwxMCBAQCBHUkFOVEVFCVRBQkxFX0NB VEFMT0cJUFJJVklMRUdFX1RZUEUJSVNfCiAndGVzdHVzZXIzJ0AnbG9jYWxob3N0JwlOVUxMCVVT QUdFCU5PCiBTRUxFQ1QgKiBGUk9NIG15c3FsLnVzZXIKIFdIRVJFIHVzZXIgTElLRSAndGVzdHVz ZXIlJyBPUkRFUiBCWSBob3N0LCB1c2VyOwotSG9zdAlVc2VyCVBhc3N3b3JkCVNlbGVjdF9wcml2 CUluc2VydF9wcml2CVVwZGF0ZV9wcml2CURlbGV0ZV9wcml2CUNyZWF0ZV9wcml2CURyb3BfcHJp dglSZWxvYWRfcHJpdglTaHV0ZG93bl9wcml2CVByb2Nlc3NfcHJpdglGaWxlX3ByaXYJR3JhbnRf cHJpdglSZWZlcmVuY2VzX3ByaXYJSW5kZXhfcHJpdglBbHRlcl9wcml2CVNob3dfZGJfcHJpdglT dXBlcl9wcml2CUNyZWF0ZV90bXBfdGFibGVfcHJpdglMb2NrX3RhYmxlc19wcml2CUV4ZWN1dGVf cHJpdglSZXBsX3NsYXZlX3ByaXYJUmVwbF9jbGllbnRfcHJpdglDcmVhdGVfdmlld19wcml2CVNo b3dfdmlld19wcml2CUNyZWF0ZV9yb3V0aW5lX3ByaXYJQWx0ZXJfcm91dGluZV9wcml2CUNyZWF0 ZV91c2VyX3ByaXYJRXZlbnRfcHJpdglUcmlnZ2VyX3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4 NTA5X2lzc3Vlcgl4NTA5X3N1YmplY3QJbWF4X3F1ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29u bmVjdGlvbnMJbWF4X3VzZXJfY29ubmVjdGlvbnMKLWxvY2FsaG9zdAl0ZXN0dXNlcjEJCVkJTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJ MAkwCTAKLWxvY2FsaG9zdAl0ZXN0dXNlcjIJCU4JWQlZCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKLWxvY2FsaG9zdAl0ZXN0dXNl cjMJCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JCQkJCTAJMAkwCTAKK0hvc3QJVXNlcglQYXNzd29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJp dglVcGRhdGVfcHJpdglEZWxldGVfcHJpdglDcmVhdGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3By aXYJU2h1dGRvd25fcHJpdglQcm9jZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJl bmNlc19wcml2CUluZGV4X3ByaXYJQWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglD cmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9ja190YWJsZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9z bGF2ZV9wcml2CVJlcGxfY2xpZW50X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJp dglDcmVhdGVfcm91dGluZV9wcml2CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2 CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2CUNyZWF0ZV90YWJsZXNwYWNlX3ByaXYJc3NsX3R5cGUJ c3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5X3N1YmplY3QJbWF4X3F1ZXN0aW9ucwltYXhfdXBk YXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3VzZXJfY29ubmVjdGlvbnMKK2xvY2FsaG9zdAl0ZXN0 dXNlcjEJCVkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTgkJCQkJMAkwCTAJMAorbG9jYWxob3N0CXRlc3R1c2VyMgkJTglZCVkJTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCits b2NhbGhvc3QJdGVzdHVzZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKIEdSQU5UIFNFTEVDVCBPTiAqLiogVE8g J3Rlc3R1c2VyMSdAJ2xvY2FsaG9zdCcgV0lUSCBHUkFOVCBPUFRJT047CiAjCiAjIEhlcmUgPFNF TEVDVCBZRVM+IGlzIHNob3duIGNvcnJlY3RseSBmb3IgdGVzdHVzZXIxOwpAQCAtMTQ3LDEwICsx NDcsMTAgQEAgR1JBTlRFRQlUQUJMRV9DQVRBTE9HCVBSSVZJTEVHRV9UWVBFCUlTXwogJ3Rlc3R1 c2VyMydAJ2xvY2FsaG9zdCcJTlVMTAlVU0FHRQlOTwogU0VMRUNUICogRlJPTSBteXNxbC51c2Vy CiBXSEVSRSB1c2VyIExJS0UgJ3Rlc3R1c2VyJScgT1JERVIgQlkgaG9zdCwgdXNlcjsKLUhvc3QJ VXNlcglQYXNzd29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVf cHJpdglDcmVhdGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9j ZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJ QWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJ TG9ja190YWJsZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50 X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2 CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9w cml2CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9xdWVz dGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25zCi1s b2NhbGhvc3QJdGVzdHVzZXIxCQlZCU4JTglOCU4JTglOCU4JTglOCVkJTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJ WQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkw CTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCitIb3N0CVVzZXIJUGFzc3dv cmQJU2VsZWN0X3ByaXYJSW5zZXJ0X3ByaXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRl X3ByaXYJRHJvcF9wcml2CVJlbG9hZF9wcml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZp bGVfcHJpdglHcmFudF9wcml2CVJlZmVyZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJ U2hvd19kYl9wcml2CVN1cGVyX3ByaXYJQ3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVz X3ByaXYJRXhlY3V0ZV9wcml2CVJlcGxfc2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0 ZV92aWV3X3ByaXYJU2hvd192aWV3X3ByaXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0 aW5lX3ByaXYJQ3JlYXRlX3VzZXJfcHJpdglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglDcmVhdGVf dGFibGVzcGFjZV9wcml2CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJq ZWN0CW1heF9xdWVzdGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nv bm5lY3Rpb25zCitsb2NhbGhvc3QJdGVzdHVzZXIxCQlZCU4JTglOCU4JTglOCU4JTglOCVkJTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9zdAl0 ZXN0dXNlcjIJCU4JWQlZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTgkJCQkJMAkwCTAJMAorbG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkw CiAjIFN3aXRjaCB0byBjb25uZWN0aW9uIHRlc3R1c2VyMQogU0VMRUNUICogRlJPTSBpbmZvcm1h dGlvbl9zY2hlbWEudXNlcl9wcml2aWxlZ2VzCiBXSEVSRSBncmFudGVlIExJS0UgJycndGVzdHVz ZXIlJycnCkBAIC0xNTksMTAgKzE1OSwxMCBAQCBHUkFOVEVFCVRBQkxFX0NBVEFMT0cJUFJJVklM RUdFX1RZUEUJSVNfCiAndGVzdHVzZXIxJ0AnbG9jYWxob3N0JwlOVUxMCVNFTEVDVAlZRVMKIFNF TEVDVCAqIEZST00gbXlzcWwudXNlcgogV0hFUkUgdXNlciBMSUtFICd0ZXN0dXNlciUnIE9SREVS IEJZIGhvc3QsIHVzZXI7Ci1Ib3N0CVVzZXIJUGFzc3dvcmQJU2VsZWN0X3ByaXYJSW5zZXJ0X3By aXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3ByaXYJRHJvcF9wcml2CVJlbG9hZF9w cml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZpbGVfcHJpdglHcmFudF9wcml2CVJlZmVy ZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJU2hvd19kYl9wcml2CVN1cGVyX3ByaXYJ Q3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVzX3ByaXYJRXhlY3V0ZV9wcml2CVJlcGxf c2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92aWV3X3ByaXYJU2hvd192aWV3X3By aXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0aW5lX3ByaXYJQ3JlYXRlX3VzZXJfcHJp dglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglzc2xfdHlwZQlzc2xfY2lwaGVyCXg1MDlfaXNzdWVy CXg1MDlfc3ViamVjdAltYXhfcXVlc3Rpb25zCW1heF91cGRhdGVzCW1heF9jb25uZWN0aW9ucwlt YXhfdXNlcl9jb25uZWN0aW9ucwotbG9jYWxob3N0CXRlc3R1c2VyMQkJWQlOCU4JTglOCU4JTglO CU4JTglZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAotbG9j YWxob3N0CXRlc3R1c2VyMgkJTglZCVkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAotbG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkw CTAJMAorSG9zdAlVc2VyCVBhc3N3b3JkCVNlbGVjdF9wcml2CUluc2VydF9wcml2CVVwZGF0ZV9w cml2CURlbGV0ZV9wcml2CUNyZWF0ZV9wcml2CURyb3BfcHJpdglSZWxvYWRfcHJpdglTaHV0ZG93 bl9wcml2CVByb2Nlc3NfcHJpdglGaWxlX3ByaXYJR3JhbnRfcHJpdglSZWZlcmVuY2VzX3ByaXYJ SW5kZXhfcHJpdglBbHRlcl9wcml2CVNob3dfZGJfcHJpdglTdXBlcl9wcml2CUNyZWF0ZV90bXBf dGFibGVfcHJpdglMb2NrX3RhYmxlc19wcml2CUV4ZWN1dGVfcHJpdglSZXBsX3NsYXZlX3ByaXYJ UmVwbF9jbGllbnRfcHJpdglDcmVhdGVfdmlld19wcml2CVNob3dfdmlld19wcml2CUNyZWF0ZV9y b3V0aW5lX3ByaXYJQWx0ZXJfcm91dGluZV9wcml2CUNyZWF0ZV91c2VyX3ByaXYJRXZlbnRfcHJp dglUcmlnZ2VyX3ByaXYJQ3JlYXRlX3RhYmxlc3BhY2VfcHJpdglzc2xfdHlwZQlzc2xfY2lwaGVy CXg1MDlfaXNzdWVyCXg1MDlfc3ViamVjdAltYXhfcXVlc3Rpb25zCW1heF91cGRhdGVzCW1heF9j b25uZWN0aW9ucwltYXhfdXNlcl9jb25uZWN0aW9ucworbG9jYWxob3N0CXRlc3R1c2VyMQkJWQlO CU4JTglOCU4JTglOCU4JTglZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJ CQkwCTAJMAkwCitsb2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJWQlOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9zdAl0 ZXN0dXNlcjMJCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTgkJCQkJMAkwCTAJMAogU0hPVyBHUkFOVFM7CiBHcmFudHMgZm9yIHRlc3R1c2Vy MUBsb2NhbGhvc3QKIEdSQU5UIFNFTEVDVCBPTiAqLiogVE8gJ3Rlc3R1c2VyMSdAJ2xvY2FsaG9z dCcgV0lUSCBHUkFOVCBPUFRJT04KQEAgLTIwNywxMCArMjA3LDEwIEBAIEdSQU5URUUJVEFCTEVf Q0FUQUxPRwlQUklWSUxFR0VfVFlQRQlJU18KICd0ZXN0dXNlcjMnQCdsb2NhbGhvc3QnCU5VTEwJ VVNBR0UJTk8KIFNFTEVDVCAqIEZST00gbXlzcWwudXNlcgogV0hFUkUgdXNlciBMSUtFICd0ZXN0 dXNlciUnIE9SREVSIEJZIGhvc3QsIHVzZXI7Ci1Ib3N0CVVzZXIJUGFzc3dvcmQJU2VsZWN0X3By aXYJSW5zZXJ0X3ByaXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3ByaXYJRHJvcF9w cml2CVJlbG9hZF9wcml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZpbGVfcHJpdglHcmFu dF9wcml2CVJlZmVyZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJU2hvd19kYl9wcml2 CVN1cGVyX3ByaXYJQ3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVzX3ByaXYJRXhlY3V0 ZV9wcml2CVJlcGxfc2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92aWV3X3ByaXYJ U2hvd192aWV3X3ByaXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0aW5lX3ByaXYJQ3Jl YXRlX3VzZXJfcHJpdglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglzc2xfdHlwZQlzc2xfY2lwaGVy CXg1MDlfaXNzdWVyCXg1MDlfc3ViamVjdAltYXhfcXVlc3Rpb25zCW1heF91cGRhdGVzCW1heF9j b25uZWN0aW9ucwltYXhfdXNlcl9jb25uZWN0aW9ucwotbG9jYWxob3N0CXRlc3R1c2VyMQkJTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJ MAkwCTAJMAotbG9jYWxob3N0CXRlc3R1c2VyMgkJTglZCVkJTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAotbG9jYWxob3N0CXRlc3R1 c2VyMwkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTgkJCQkJMAkwCTAJMAorSG9zdAlVc2VyCVBhc3N3b3JkCVNlbGVjdF9wcml2CUluc2VydF9w cml2CVVwZGF0ZV9wcml2CURlbGV0ZV9wcml2CUNyZWF0ZV9wcml2CURyb3BfcHJpdglSZWxvYWRf cHJpdglTaHV0ZG93bl9wcml2CVByb2Nlc3NfcHJpdglGaWxlX3ByaXYJR3JhbnRfcHJpdglSZWZl cmVuY2VzX3ByaXYJSW5kZXhfcHJpdglBbHRlcl9wcml2CVNob3dfZGJfcHJpdglTdXBlcl9wcml2 CUNyZWF0ZV90bXBfdGFibGVfcHJpdglMb2NrX3RhYmxlc19wcml2CUV4ZWN1dGVfcHJpdglSZXBs X3NsYXZlX3ByaXYJUmVwbF9jbGllbnRfcHJpdglDcmVhdGVfdmlld19wcml2CVNob3dfdmlld19w cml2CUNyZWF0ZV9yb3V0aW5lX3ByaXYJQWx0ZXJfcm91dGluZV9wcml2CUNyZWF0ZV91c2VyX3By aXYJRXZlbnRfcHJpdglUcmlnZ2VyX3ByaXYJQ3JlYXRlX3RhYmxlc3BhY2VfcHJpdglzc2xfdHlw ZQlzc2xfY2lwaGVyCXg1MDlfaXNzdWVyCXg1MDlfc3ViamVjdAltYXhfcXVlc3Rpb25zCW1heF91 cGRhdGVzCW1heF9jb25uZWN0aW9ucwltYXhfdXNlcl9jb25uZWN0aW9ucworbG9jYWxob3N0CXRl c3R1c2VyMQkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCQkJCQkwCTAJMAkwCitsb2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJWQlOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAK K2xvY2FsaG9zdAl0ZXN0dXNlcjMJCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAogIyBTd2l0Y2ggdG8gY29ubmVjdGlv biB0ZXN0dXNlcjEKIFNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnVzZXJfcHJpdmls ZWdlcwogV0hFUkUgZ3JhbnRlZSBMSUtFICcnJ3Rlc3R1c2VyJScnJwpAQCAtMjUzLDEwICsyNTMs MTAgQEAgR1JBTlRFRQlUQUJMRV9DQVRBTE9HCVBSSVZJTEVHRV9UWVBFCUlTXwogJ3Rlc3R1c2Vy MydAJ2xvY2FsaG9zdCcJTlVMTAlVU0FHRQlOTwogU0VMRUNUICogRlJPTSBteXNxbC51c2VyCiBX SEVSRSB1c2VyIExJS0UgJ3Rlc3R1c2VyJScgT1JERVIgQlkgaG9zdCwgdXNlcjsKLUhvc3QJVXNl cglQYXNzd29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxldGVfcHJp dglDcmVhdGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQcm9jZXNz X3ByaXYJRmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3ByaXYJQWx0 ZXJfcHJpdglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3ByaXYJTG9j a190YWJsZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xpZW50X3By aXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9wcml2CUFs dGVyX3JvdXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dlcl9wcml2 CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9xdWVzdGlv bnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25zCi1sb2Nh bGhvc3QJdGVzdHVzZXIxCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJWQlO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJ MAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCitIb3N0CVVzZXIJUGFzc3dvcmQJ U2VsZWN0X3ByaXYJSW5zZXJ0X3ByaXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3By aXYJRHJvcF9wcml2CVJlbG9hZF9wcml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2CUZpbGVf cHJpdglHcmFudF9wcml2CVJlZmVyZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3ByaXYJU2hv d19kYl9wcml2CVN1cGVyX3ByaXYJQ3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFibGVzX3By aXYJRXhlY3V0ZV9wcml2CVJlcGxfc2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92 aWV3X3ByaXYJU2hvd192aWV3X3ByaXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9yb3V0aW5l X3ByaXYJQ3JlYXRlX3VzZXJfcHJpdglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglDcmVhdGVfdGFi bGVzcGFjZV9wcml2CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0 CW1heF9xdWVzdGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5l Y3Rpb25zCitsb2NhbGhvc3QJdGVzdHVzZXIxCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9zdAl0ZXN0 dXNlcjIJCU4JWQlZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTgkJCQkJMAkwCTAJMAorbG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCiAj IFN3aXRjaCB0byBjb25uZWN0aW9uIHRlc3R1c2VyMQogU0VMRUNUICogRlJPTSBpbmZvcm1hdGlv bl9zY2hlbWEudXNlcl9wcml2aWxlZ2VzCiBXSEVSRSBncmFudGVlIExJS0UgJycndGVzdHVzZXIl JycnCkBAIC0yNjUsMTAgKzI2NSwxMCBAQCBHUkFOVEVFCVRBQkxFX0NBVEFMT0cJUFJJVklMRUdF X1RZUEUJSVNfCiAndGVzdHVzZXIxJ0AnbG9jYWxob3N0JwlOVUxMCVVTQUdFCU5PCiBTRUxFQ1Qg KiBGUk9NIG15c3FsLnVzZXIKIFdIRVJFIHVzZXIgTElLRSAndGVzdHVzZXIlJyBPUkRFUiBCWSBo b3N0LCB1c2VyOwotSG9zdAlVc2VyCVBhc3N3b3JkCVNlbGVjdF9wcml2CUluc2VydF9wcml2CVVw ZGF0ZV9wcml2CURlbGV0ZV9wcml2CUNyZWF0ZV9wcml2CURyb3BfcHJpdglSZWxvYWRfcHJpdglT aHV0ZG93bl9wcml2CVByb2Nlc3NfcHJpdglGaWxlX3ByaXYJR3JhbnRfcHJpdglSZWZlcmVuY2Vz X3ByaXYJSW5kZXhfcHJpdglBbHRlcl9wcml2CVNob3dfZGJfcHJpdglTdXBlcl9wcml2CUNyZWF0 ZV90bXBfdGFibGVfcHJpdglMb2NrX3RhYmxlc19wcml2CUV4ZWN1dGVfcHJpdglSZXBsX3NsYXZl X3ByaXYJUmVwbF9jbGllbnRfcHJpdglDcmVhdGVfdmlld19wcml2CVNob3dfdmlld19wcml2CUNy ZWF0ZV9yb3V0aW5lX3ByaXYJQWx0ZXJfcm91dGluZV9wcml2CUNyZWF0ZV91c2VyX3ByaXYJRXZl bnRfcHJpdglUcmlnZ2VyX3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5X2lzc3Vlcgl4NTA5 X3N1YmplY3QJbWF4X3F1ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29ubmVjdGlvbnMJbWF4X3Vz ZXJfY29ubmVjdGlvbnMKLWxvY2FsaG9zdAl0ZXN0dXNlcjEJCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKLWxvY2FsaG9z dAl0ZXN0dXNlcjIJCU4JWQlZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JCQkJCTAJMAkwCTAKLWxvY2FsaG9zdAl0ZXN0dXNlcjMJCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAK K0hvc3QJVXNlcglQYXNzd29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglE ZWxldGVfcHJpdglDcmVhdGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJp dglQcm9jZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4 X3ByaXYJQWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxl X3ByaXYJTG9ja190YWJsZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxf Y2xpZW50X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGlu ZV9wcml2CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJp Z2dlcl9wcml2CUNyZWF0ZV90YWJsZXNwYWNlX3ByaXYJc3NsX3R5cGUJc3NsX2NpcGhlcgl4NTA5 X2lzc3Vlcgl4NTA5X3N1YmplY3QJbWF4X3F1ZXN0aW9ucwltYXhfdXBkYXRlcwltYXhfY29ubmVj dGlvbnMJbWF4X3VzZXJfY29ubmVjdGlvbnMKK2xvY2FsaG9zdAl0ZXN0dXNlcjEJCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkw CTAJMAorbG9jYWxob3N0CXRlc3R1c2VyMgkJTglZCVkJTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCitsb2NhbGhvc3QJdGVzdHVz ZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JCQkJCTAJMAkwCTAKIFNIT1cgR1JBTlRTOwogR3JhbnRzIGZvciB0ZXN0dXNlcjFAbG9j YWxob3N0CiBHUkFOVCBVU0FHRSBPTiAqLiogVE8gJ3Rlc3R1c2VyMSdAJ2xvY2FsaG9zdCcKQEAg LTI4NCwxMCArMjg0LDEwIEBAIEdSQU5URUUJVEFCTEVfQ0FUQUxPRwlQUklWSUxFR0VfVFlQRQlJ U18KICd0ZXN0dXNlcjEnQCdsb2NhbGhvc3QnCU5VTEwJVVNBR0UJTk8KIFNFTEVDVCAqIEZST00g bXlzcWwudXNlcgogV0hFUkUgdXNlciBMSUtFICd0ZXN0dXNlciUnIE9SREVSIEJZIGhvc3QsIHVz ZXI7Ci1Ib3N0CVVzZXIJUGFzc3dvcmQJU2VsZWN0X3ByaXYJSW5zZXJ0X3ByaXYJVXBkYXRlX3By aXYJRGVsZXRlX3ByaXYJQ3JlYXRlX3ByaXYJRHJvcF9wcml2CVJlbG9hZF9wcml2CVNodXRkb3du X3ByaXYJUHJvY2Vzc19wcml2CUZpbGVfcHJpdglHcmFudF9wcml2CVJlZmVyZW5jZXNfcHJpdglJ bmRleF9wcml2CUFsdGVyX3ByaXYJU2hvd19kYl9wcml2CVN1cGVyX3ByaXYJQ3JlYXRlX3RtcF90 YWJsZV9wcml2CUxvY2tfdGFibGVzX3ByaXYJRXhlY3V0ZV9wcml2CVJlcGxfc2xhdmVfcHJpdglS ZXBsX2NsaWVudF9wcml2CUNyZWF0ZV92aWV3X3ByaXYJU2hvd192aWV3X3ByaXYJQ3JlYXRlX3Jv dXRpbmVfcHJpdglBbHRlcl9yb3V0aW5lX3ByaXYJQ3JlYXRlX3VzZXJfcHJpdglFdmVudF9wcml2 CVRyaWdnZXJfcHJpdglzc2xfdHlwZQlzc2xfY2lwaGVyCXg1MDlfaXNzdWVyCXg1MDlfc3ViamVj dAltYXhfcXVlc3Rpb25zCW1heF91cGRhdGVzCW1heF9jb25uZWN0aW9ucwltYXhfdXNlcl9jb25u ZWN0aW9ucwotbG9jYWxob3N0CXRlc3R1c2VyMQkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAotbG9jYWxob3N0CXRlc3R1 c2VyMgkJTglZCVkJTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTgkJCQkJMAkwCTAJMAotbG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAorSG9zdAlV c2VyCVBhc3N3b3JkCVNlbGVjdF9wcml2CUluc2VydF9wcml2CVVwZGF0ZV9wcml2CURlbGV0ZV9w cml2CUNyZWF0ZV9wcml2CURyb3BfcHJpdglSZWxvYWRfcHJpdglTaHV0ZG93bl9wcml2CVByb2Nl c3NfcHJpdglGaWxlX3ByaXYJR3JhbnRfcHJpdglSZWZlcmVuY2VzX3ByaXYJSW5kZXhfcHJpdglB bHRlcl9wcml2CVNob3dfZGJfcHJpdglTdXBlcl9wcml2CUNyZWF0ZV90bXBfdGFibGVfcHJpdglM b2NrX3RhYmxlc19wcml2CUV4ZWN1dGVfcHJpdglSZXBsX3NsYXZlX3ByaXYJUmVwbF9jbGllbnRf cHJpdglDcmVhdGVfdmlld19wcml2CVNob3dfdmlld19wcml2CUNyZWF0ZV9yb3V0aW5lX3ByaXYJ QWx0ZXJfcm91dGluZV9wcml2CUNyZWF0ZV91c2VyX3ByaXYJRXZlbnRfcHJpdglUcmlnZ2VyX3By aXYJQ3JlYXRlX3RhYmxlc3BhY2VfcHJpdglzc2xfdHlwZQlzc2xfY2lwaGVyCXg1MDlfaXNzdWVy CXg1MDlfc3ViamVjdAltYXhfcXVlc3Rpb25zCW1heF91cGRhdGVzCW1heF9jb25uZWN0aW9ucwlt YXhfdXNlcl9jb25uZWN0aW9ucworbG9jYWxob3N0CXRlc3R1c2VyMQkJTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCits b2NhbGhvc3QJdGVzdHVzZXIyCQlOCVkJWQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9zdAl0ZXN0dXNlcjMJCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTgkJ CQkJMAkwCTAJMAogU0hPVyBHUkFOVFM7CiBHcmFudHMgZm9yIHRlc3R1c2VyMUBsb2NhbGhvc3QK IEdSQU5UIFVTQUdFIE9OICouKiBUTyAndGVzdHVzZXIxJ0AnbG9jYWxob3N0JwpAQCAtMzA5LDEw ICszMDksMTAgQEAgR1JBTlRFRQlUQUJMRV9DQVRBTE9HCVBSSVZJTEVHRV9UWVBFCUlTXwogJ3Rl c3R1c2VyMydAJ2xvY2FsaG9zdCcJTlVMTAlVU0FHRQlOTwogU0VMRUNUICogRlJPTSBteXNxbC51 c2VyCiBXSEVSRSB1c2VyIExJS0UgJ3Rlc3R1c2VyJScgT1JERVIgQlkgaG9zdCwgdXNlcjsKLUhv c3QJVXNlcglQYXNzd29yZAlTZWxlY3RfcHJpdglJbnNlcnRfcHJpdglVcGRhdGVfcHJpdglEZWxl dGVfcHJpdglDcmVhdGVfcHJpdglEcm9wX3ByaXYJUmVsb2FkX3ByaXYJU2h1dGRvd25fcHJpdglQ cm9jZXNzX3ByaXYJRmlsZV9wcml2CUdyYW50X3ByaXYJUmVmZXJlbmNlc19wcml2CUluZGV4X3By aXYJQWx0ZXJfcHJpdglTaG93X2RiX3ByaXYJU3VwZXJfcHJpdglDcmVhdGVfdG1wX3RhYmxlX3By aXYJTG9ja190YWJsZXNfcHJpdglFeGVjdXRlX3ByaXYJUmVwbF9zbGF2ZV9wcml2CVJlcGxfY2xp ZW50X3ByaXYJQ3JlYXRlX3ZpZXdfcHJpdglTaG93X3ZpZXdfcHJpdglDcmVhdGVfcm91dGluZV9w cml2CUFsdGVyX3JvdXRpbmVfcHJpdglDcmVhdGVfdXNlcl9wcml2CUV2ZW50X3ByaXYJVHJpZ2dl cl9wcml2CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9zdWJqZWN0CW1heF9x dWVzdGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2VyX2Nvbm5lY3Rpb25z Ci1sb2NhbGhvc3QJdGVzdHVzZXIxCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIyCQlO CVkJWQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJ CQkwCTAJMAkwCi1sb2NhbGhvc3QJdGVzdHVzZXIzCQlOCU4JTglOCU4JTglOCU4JTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJMAkwCitIb3N0CVVzZXIJUGFz c3dvcmQJU2VsZWN0X3ByaXYJSW5zZXJ0X3ByaXYJVXBkYXRlX3ByaXYJRGVsZXRlX3ByaXYJQ3Jl YXRlX3ByaXYJRHJvcF9wcml2CVJlbG9hZF9wcml2CVNodXRkb3duX3ByaXYJUHJvY2Vzc19wcml2 CUZpbGVfcHJpdglHcmFudF9wcml2CVJlZmVyZW5jZXNfcHJpdglJbmRleF9wcml2CUFsdGVyX3By aXYJU2hvd19kYl9wcml2CVN1cGVyX3ByaXYJQ3JlYXRlX3RtcF90YWJsZV9wcml2CUxvY2tfdGFi bGVzX3ByaXYJRXhlY3V0ZV9wcml2CVJlcGxfc2xhdmVfcHJpdglSZXBsX2NsaWVudF9wcml2CUNy ZWF0ZV92aWV3X3ByaXYJU2hvd192aWV3X3ByaXYJQ3JlYXRlX3JvdXRpbmVfcHJpdglBbHRlcl9y b3V0aW5lX3ByaXYJQ3JlYXRlX3VzZXJfcHJpdglFdmVudF9wcml2CVRyaWdnZXJfcHJpdglDcmVh dGVfdGFibGVzcGFjZV9wcml2CXNzbF90eXBlCXNzbF9jaXBoZXIJeDUwOV9pc3N1ZXIJeDUwOV9z dWJqZWN0CW1heF9xdWVzdGlvbnMJbWF4X3VwZGF0ZXMJbWF4X2Nvbm5lY3Rpb25zCW1heF91c2Vy X2Nvbm5lY3Rpb25zCitsb2NhbGhvc3QJdGVzdHVzZXIxCQlOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JCQkJCTAJMAkwCTAKK2xvY2FsaG9z dAl0ZXN0dXNlcjIJCU4JWQlZCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4J TglOCU4JTglOCU4JTgkJCQkJMAkwCTAJMAorbG9jYWxob3N0CXRlc3R1c2VyMwkJTglOCU4JTglO CU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCU4JTglOCQkJCQkwCTAJ MAkwCiAjIFN3aXRjaCB0byBjb25uZWN0aW9uIHRlc3R1c2VyMQogU0VMRUNUICogRlJPTSBpbmZv cm1hdGlvbl9zY2hlbWEudXNlcl9wcml2aWxlZ2VzCiBXSEVSRSBncmFudGVlIExJS0UgJycndGVz dHVzZXIlJycnCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3Iv bWVtb3J5X2Z1bmNfdmlldy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9y L21lbW9yeV9mdW5jX3ZpZXcucmVzdWx0CTIwMDgtMDYtMTkgMTg6NTY6NDggKzAwMDAKKysrIGIv bXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbWVtb3J5X2Z1bmNfdmlldy5yZXN1bHQJMjAwOC0w Ny0xNSAwMDowNjo0MyArMDAwMApAQCAtMzI4NCw5ICszMjg0LDkgQEAgTlVMTAlOVUxMCTEKIC0z MzMzLjMzCS0zMzMzLjMzMzMJMzAKIFdhcm5pbmdzOgogV2FybmluZwkxMjkyCVRydW5jYXRlZCBp bmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJycKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVl IGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQor V2FybmluZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJs ZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5j b3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcnCi1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBm b3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKK1dh cm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUg QVMgREVDSU1BTCgzNywyKSknIGF0IHJvdyAxCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmlldwlD cmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgogdjEJ Q1JFQVRFIEFMR09SSVRITT1VTkRFRklORUQgREVGSU5FUj1gcm9vdGBAYGxvY2FsaG9zdGAgU1FM IFNFQ1VSSVRZIERFRklORVIgVklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0KGB0MV92YWx1ZXNgLmBt eV9kb3VibGVgIGFzIGRlY2ltYWwoMzcsMikpIEFTIGBDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFM KDM3LDIpKWAsYHQxX3ZhbHVlc2AuYG15X2RvdWJsZWAgQVMgYG15X2RvdWJsZWAsYHQxX3ZhbHVl c2AuYGlkYCBBUyBgaWRgIGZyb20gYHQxX3ZhbHVlc2AJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2Np CkBAIC0zMzAyLDkgKzMzMDIsOSBAQCBOVUxMCU5VTEwJMQogLTMzMzMuMzMJLTMzMzMuMzMzMwkz MAogV2FybmluZ3M6CiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZh bHVlOiAnJwotRXJyb3IJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVCht eV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0IHJvdyAxCitXYXJuaW5nCTEyNjQJT3V0IG9m IHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikp JyBhdCByb3cgMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1 ZTogJycKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlf ZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQorV2FybmluZwkxMjY0CU91dCBvZiBy YW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScg YXQgcm93IDEKIERST1AgVklFVyB2MTsKIAogCkBAIC0zMzczLDkgKzMzNzMsOSBAQCBOVUxMCU5V TEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyOQogV2FybmluZ3M6Ci1FcnJv cgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAt MQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBh dCByb3cgLTEKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1 bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcn IGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwg dmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0 IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBTSE9XIENSRUFURSBW SUVXIHYxOwogVmlldwlDcmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25f Y29ubmVjdGlvbgogdjEJQ1JFQVRFIEFMR09SSVRITT1VTkRFRklORUQgREVGSU5FUj1gcm9vdGBA YGxvY2FsaG9zdGAgU1FMIFNFQ1VSSVRZIERFRklORVIgVklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0 KGB0MV92YWx1ZXNgLmBteV92YXJiaW5hcnlfMTAwMGAgYXMgZGVjaW1hbCgzNywyKSkgQVMgYENB U1QobXlfdmFyYmluYXJ5XzEwMDAgQVMgREVDSU1BTCgzNywyKSlgLGB0MV92YWx1ZXNgLmBteV92 YXJiaW5hcnlfMTAwMGAgQVMgYG15X3ZhcmJpbmFyeV8xMDAwYCxgdDFfdmFsdWVzYC5gaWRgIEFT IGBpZGAgZnJvbSBgdDFfdmFsdWVzYAlsYXRpbjEJbGF0aW4xX3N3ZWRpc2hfY2kKQEAgLTMzOTAs OSArMzM5MCw5IEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMz CTI5CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVl OiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1h bCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJl Y3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2 NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dh cm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKIERST1AgVklFVyB2MTsKIAogCkBAIC0zNDA5LDExICszNDA5LDExIEBAIE5VTEwJTlVM TAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI4CiBXYXJuaW5nczoKLUVycm9y CTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0x CitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVl OiAnJwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAn JyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9y IGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERF Q0lNQUwgdmFsdWU6ICc8LS0tLS0tLS0zMCBjaGFyYWN0ZXJzLS0tLS0tLT4nCi1FcnJvcgkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2Fy bmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJv dyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAt LS3vv73vv73vv70qJC0tICcKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lN QUwgdmFsdWU6ICctMScKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwg dmFsdWU6ICctMzMzMy4zMzMzJwpAQCAtMzQzMSwxMSArMzQzMSwxMSBAQCBOVUxMCU5VTEwJMQog LTEuMDAJLTEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACTUKIC0zMzMzLjMzCS0zMzMzLjMz MzMAAAAAAAAAAAAAAAAAAAAAAAAAAAkyOAogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVj dCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2Fy bmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJycKLUVycm9yCTEz NjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitX YXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQg cm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAn PC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+JwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVj aW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNv cnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJ MTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgLS0t77+977+977+9KiQt LSAnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnLTEn CiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnLTMzMzMu MzMzMycKQEAgLTM0NTUsOSArMzQ1NSw5IEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMz My4zMwktMzMzMy4zMzMzCTI3CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2lt YWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVj dCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5p bmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cg LTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAn JyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9y IGNvbHVtbiAnJyBhdCByb3cgLTEKIFNIT1cgQ1JFQVRFIFZJRVcgdjE7CiBWaWV3CUNyZWF0ZSBW aWV3CWNoYXJhY3Rlcl9zZXRfY2xpZW50CWNvbGxhdGlvbl9jb25uZWN0aW9uCiB2MQlDUkVBVEUg QUxHT1JJVEhNPVVOREVGSU5FRCBERUZJTkVSPWByb290YEBgbG9jYWxob3N0YCBTUUwgU0VDVVJJ VFkgREVGSU5FUiBWSUVXIGB2MWAgQVMgc2VsZWN0IGNhc3QoYHQxX3ZhbHVlc2AuYG15X3ZhcmNo YXJfMTAwMGAgYXMgZGVjaW1hbCgzNywyKSkgQVMgYENBU1QobXlfdmFyY2hhcl8xMDAwIEFTIERF Q0lNQUwoMzcsMikpYCxgdDFfdmFsdWVzYC5gbXlfdmFyY2hhcl8xMDAwYCBBUyBgbXlfdmFyY2hh cl8xMDAwYCxgdDFfdmFsdWVzYC5gaWRgIEFTIGBpZGAgZnJvbSBgdDFfdmFsdWVzYAlsYXRpbjEJ bGF0aW4xX3N3ZWRpc2hfY2kKQEAgLTM0NzIsOSArMzQ3Miw5IEBAIE5VTEwJTlVMTAkxCiAtMS4w MAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI3CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5j b3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkx MzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQot RXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVt biAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycg Zm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2 YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIERST1AgVklFVyB2MTsKIAogCkBAIC0z NDkxLDExICszNDkxLDExIEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMz My4zMzMzCTI2CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6 ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2lt YWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNh dGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAn JyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9y IGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERF Q0lNQUwgdmFsdWU6ICc8LS0tLS0tLS0zMCBjaGFyYWN0ZXJzLS0tLS0tLT4nCi1FcnJvcgkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2Fy bmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJv dyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAt LS3vv73vv73vv70qJC0tICAgICAgICAgICAnCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmlldwlD cmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgpAQCAt MzUxMSwxMSArMzUxMSwxMSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMz MzMuMzMzMwkyNgogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVl OiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNp bWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5j YXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICcKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4g JycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBE RUNJTUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+JwotRXJyb3IJMTM2 NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dh cm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcg LS0t77+977+977+9KiQtLSAgICAgICAgICAgJwogRFJPUCBWSUVXIHYxOwogCgo9PT0gbW9kaWZp ZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbWVtb3J5X3N0b3JlZHByb2MucmVz dWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9tZW1vcnlfc3RvcmVkcHJvYy5y ZXN1bHQJMjAwOC0wNy0wOCAxODo0MDozMiArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2Z1 bmNzXzEvci9tZW1vcnlfc3RvcmVkcHJvYy5yZXN1bHQJMjAwOC0wOC0wNyAxMzozODoyOSArMDAw MApAQCAtMjE5NDMsOSArMjE5NDMsOSBAQCBFTkQJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2NpCWxh dGluMV9zd2VkCiBzZXQgQEBzcWxfbW9kZT0nJzsKIENBTEwgc3A0KCk7CiBMZXZlbAlDb2RlCU1l c3NhZ2UKLUVycm9yCTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5 IDAKIFdhcm5pbmdzOgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2 aXNpb24gYnkgMAogRFJPUCBQUk9DRURVUkUgc3A0Owogc2V0IEBAc3FsX21vZGU9Jyc7CiAKCj09 PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9tZW1vcnlfdHJpZ18w My5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL21lbW9yeV90cmlnXzAz LnJlc3VsdAkyMDA4LTA2LTE4IDE3OjIzOjU1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUv ZnVuY3NfMS9yL21lbW9yeV90cmlnXzAzLnJlc3VsdAkyMDA4LTA4LTA3IDEzOjM4OjI5ICswMDAw CkBAIC03OCw3ICs3OCw3IEBAIGdyYW50IEFMTCAgb24gKi4qIHRvIHRlc3Rfbm9wcml2c0Bsb2Nh bGgKIHJldm9rZSBUUklHR0VSIG9uICouKiBmcm9tIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBz aG93IGdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxvY2FsaG9zdDsKIEdyYW50cyBmb3IgdGVzdF9u b3ByaXZzQGxvY2FsaG9zdAotR1JBTlQgU0VMRUNULCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBD UkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMs IElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRB QkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElP TiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBS T1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2Nh bGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkx ODNGMzc0QTU0Q0EyNTc2JworR1JBTlQgU0VMRUNULCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBD UkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMs IElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRB QkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElP TiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBS T1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAn dGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1 RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIHJldm9rZSBBTEwgUFJJVklMRUdF UywgR1JBTlQgT1BUSU9OIEZST00gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBUUklH R0VSIG9uICouKiB0byB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKIGdyYW50IFNFTEVDVCBvbiBw cml2X2RiLnQxIHRvIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwpAQCAtMTU2LDcgKzE1Niw3IEBA IGdyYW50IEFMTCAgb24gKi4qIHRvIHRlc3Rfbm9wcml2c0Bsb2NhbGgKIHJldm9rZSBVUERBVEUg IG9uICouKiBmcm9tIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBmb3IgdGVz dF9ub3ByaXZzQGxvY2FsaG9zdDsKIEdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxvY2FsaG9zdAot R1JBTlQgU0VMRUNULCBJTlNFUlQsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRE T1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJB U0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRF LCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hP VyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5U LCBUUklHR0VSIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVE IEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicK K0dSQU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVU RE9XTiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFC QVNFUywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VU RSwgUkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNI T1cgVklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVO VCwgVFJJR0dFUiwgQ1JFQVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCds b2NhbGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRF RjkxODNGMzc0QTU0Q0EyNTc2JwogcmV2b2tlIEFMTCBQUklWSUxFR0VTLCBHUkFOVCBPUFRJT04g RlJPTSB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKIGdyYW50IFRSSUdHRVIsIFVQREFURSBvbiAq LiogdG8gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBmb3IgdGVzdF95ZXNw cml2c0Bsb2NhbGhvc3Q7CkBAIC0xNzAsNyArMTcwLDcgQEAgdGVzdF9ub3ByaXZzQGxvY2FsaG9z dAogdXNlIHByaXZfZGI7CiBzaG93IGdyYW50czsKIEdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxv Y2FsaG9zdAotR1JBTlQgU0VMRUNULCBJTlNFUlQsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxP QUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNI T1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVT LCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUg VklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVT RVIsIEVWRU5ULCBUUklHR0VSIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJ REVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1 NENBMjU3NicKK0dSQU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVM T0FELCBTSFVURE9XTiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBT SE9XIERBVEFCQVNFUywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxF UywgRVhFQ1VURSwgUkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRF IFZJRVcsIFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBV U0VSLCBFVkVOVCwgVFJJR0dFUiwgQ1JFQVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPICd0ZXN0X25v cHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5 OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2Jwogc2VsZWN0IGYxIGZyb20gdDEgb3JkZXIgYnkg ZjE7CiBmMQogaW5zZXJ0IDMuNS4zLjItbm8KQEAgLTQwMiw3ICs0MDIsNyBAQCBncmFudCBBTEwg IG9uICouKiB0byB0ZXN0X25vcHJpdnNAbG9jYWxoCiByZXZva2UgU0VMRUNUICBvbiAqLiogZnJv bSB0ZXN0X25vcHJpdnNAbG9jYWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bs b2NhbGhvc3Q7CiBHcmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKLUdSQU5UIElOU0VS VCwgVVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VT UywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIs IENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJ T04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JF QVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgVFJJR0dFUiBP TiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09S RCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBJTlNF UlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NF U1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVS LCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FU SU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENS RUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIFRSSUdHRVIs IENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJ REVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1 NENBMjU3NicKIHJldm9rZSBBTEwgUFJJVklMRUdFUywgR1JBTlQgT1BUSU9OIEZST00gdGVzdF95 ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBUUklHR0VSLCBTRUxFQ1Qgb24gKi4qIHRvIHRlc3Rf eWVzcHJpdnNAbG9jYWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3RfeWVzcHJpdnNAbG9jYWxo b3N0OwpAQCAtNDE2LDcgKzQxNiw3IEBAIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKIHVzZSBwcml2 X2RiOwogc2hvdyBncmFudHM7CiBHcmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKLUdS QU5UIElOU0VSVCwgVVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9X TiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNF UywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwg UkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cg VklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwg VFJJR0dFUiBPTiAqLiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBC WSBQQVNTV09SRCAnKkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitH UkFOVCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERP V04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFT RVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUs IFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9X IFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQs IFRSSUdHRVIsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9j YWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5 MTgzRjM3NEE1NENBMjU3NicKIGNyZWF0ZSB0cmlnZ2VyIHRyZzVhXzEgYmVmb3JlIElOU0VSVCBv biB0MSBmb3IgZWFjaCByb3cKIHNldCBAdGVzdF92YXIgPSBuZXcuZjE7CiBzZXQgQHRlc3RfdmFy ID0gJ2JlZm9yZSB0cmlnIDMuNS4zLjgtMWEnOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRl c3Qvc3VpdGUvZnVuY3NfMS9yL21lbW9yeV90cmlnXzAzZS5yZXN1bHQnCi0tLSBhL215c3FsLXRl c3Qvc3VpdGUvZnVuY3NfMS9yL21lbW9yeV90cmlnXzAzZS5yZXN1bHQJMjAwOC0wNi0xOSAxODo1 Njo0OCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9tZW1vcnlfdHJpZ18w M2UucmVzdWx0CTIwMDgtMDgtMDcgMTM6Mzg6MjkgKzAwMDAKQEAgLTU2Myw3ICs1NjMsNyBAQCB0 cmlnIDFfMS15ZXMKIHJldm9rZSBUUklHR0VSIG9uICouKiBmcm9tIHRlc3RfeWVzcHJpdnNAbG9j YWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwogR3JhbnRz IGZvciB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdAotR1JBTlQgU0VMRUNULCBJTlNFUlQsIFVQREFU RSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUs IFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUg VEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZF LCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VU SU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQgT04gKi4qIFRPICd0ZXN0X3ll c3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEw OTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKK0dSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERB VEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxF LCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRF IFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFW RSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9V VElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBDUkVBVEUgVEFCTEVTUEFD RSBPTiAqLiogVE8gJ3Rlc3RfeWVzcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkgUEFT U1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2JwogY29ubmVj dChsb2NhbGhvc3QsdGVzdF95ZXNwcml2cyxQV0QsdGVzdCxNQVNURVJfTVlQT1JULE1BU1RFUl9N WVNPQ0spOwogc2VsZWN0IGN1cnJlbnRfdXNlcjsKIGN1cnJlbnRfdXNlcgpAQCAtNjEwLDcgKzYx MCw3IEBAIHJvb3RAbG9jYWxob3N0CiBncmFudCBUUklHR0VSIG9uIHByaXZfZGIuKiB0byB0ZXN0 X3llc3ByaXZzQGxvY2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X3llc3ByaXZzQGxvY2Fs aG9zdDsKIEdyYW50cyBmb3IgdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwg SU5TRVJULCBVUERBVEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQ Uk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBT VVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBM SUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVX LCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5UIE9OICou KiBUTyAndGVzdF95ZXNwcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAn KkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBTRUxFQ1Qs IElOU0VSVCwgVVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwg UFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywg U1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQ TElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklF VywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgQ1JF QVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPICd0ZXN0X3llc3ByaXZzJ0AnbG9jYWxob3N0JyBJREVO VElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENB MjU3NicKIEdSQU5UIFRSSUdHRVIgT04gYHByaXZfZGJgLiogVE8gJ3Rlc3RfeWVzcHJpdnMnQCds b2NhbGhvc3QnCiAKIHRyaWdnZXIgcHJpdmlsZWdlIG9uIGRiIGxldmVsIGZvciBjcmVhdGU6Cgo9 PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbXlpc2FtX2Z1bmNf dmlldy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL215aXNhbV9mdW5j X3ZpZXcucmVzdWx0CTIwMDgtMDYtMTkgMTg6NTY6NDggKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9z dWl0ZS9mdW5jc18xL3IvbXlpc2FtX2Z1bmNfdmlldy5yZXN1bHQJMjAwOC0wNy0xNSAwMDowNjo0 MyArMDAwMApAQCAtMzI4NCw5ICszMjg0LDkgQEAgTlVMTAlOVUxMCTEKIC0zMzMzLjMzCS0zMzMz LjMzMzMJMzAKIFdhcm5pbmdzOgogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVD SU1BTCB2YWx1ZTogJycKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4g J0NBU1QobXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQorV2FybmluZwkxMjY0 CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFM KDM3LDIpKScgYXQgcm93IDEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lN QUwgdmFsdWU6ICcnCi1FcnJvcgkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdD QVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlP dXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgz NywyKSknIGF0IHJvdyAxCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmlldwlDcmVhdGUgVmlldwlj aGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgogdjEJQ1JFQVRFIEFMR09S SVRITT1VTkRFRklORUQgREVGSU5FUj1gcm9vdGBAYGxvY2FsaG9zdGAgU1FMIFNFQ1VSSVRZIERF RklORVIgVklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0KGB0MV92YWx1ZXNgLmBteV9kb3VibGVgIGFz IGRlY2ltYWwoMzcsMikpIEFTIGBDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKWAsYHQx X3ZhbHVlc2AuYG15X2RvdWJsZWAgQVMgYG15X2RvdWJsZWAsYHQxX3ZhbHVlc2AuYGlkYCBBUyBg aWRgIGZyb20gYHQxX3ZhbHVlc2AJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2NpCkBAIC0zMzAyLDkg KzMzMDIsOSBAQCBOVUxMCU5VTEwJMQogLTMzMzMuMzMJLTMzMzMuMzMzMwkzMAogV2FybmluZ3M6 CiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnJwotRXJy b3IJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMg REVDSU1BTCgzNywyKSknIGF0IHJvdyAxCitXYXJuaW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVl IGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQog V2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJycKLUVycm9y CTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFTIERF Q0lNQUwoMzcsMikpJyBhdCByb3cgMQorV2FybmluZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBm b3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKIERS T1AgVklFVyB2MTsKIAogCkBAIC0zMzczLDkgKzMzNzMsOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJ LTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyOQogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29y cmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2 NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVy cm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4g JycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFs dWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmll dwlDcmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgog djEJQ1JFQVRFIEFMR09SSVRITT1VTkRFRklORUQgREVGSU5FUj1gcm9vdGBAYGxvY2FsaG9zdGAg U1FMIFNFQ1VSSVRZIERFRklORVIgVklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0KGB0MV92YWx1ZXNg LmBteV92YXJiaW5hcnlfMTAwMGAgYXMgZGVjaW1hbCgzNywyKSkgQVMgYENBU1QobXlfdmFyYmlu YXJ5XzEwMDAgQVMgREVDSU1BTCgzNywyKSlgLGB0MV92YWx1ZXNgLmBteV92YXJiaW5hcnlfMTAw MGAgQVMgYG15X3ZhcmJpbmFyeV8xMDAwYCxgdDFfdmFsdWVzYC5gaWRgIEFTIGBpZGAgZnJvbSBg dDFfdmFsdWVzYAlsYXRpbjEJbGF0aW4xX3N3ZWRpc2hfY2kKQEAgLTMzOTAsOSArMzM5MCw5IEBA IE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI5CiBXYXJuaW5n czoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29s dW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycg Zm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2 YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3Qg ZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIERST1Ag VklFVyB2MTsKIAogCkBAIC0zNDA5LDExICszNDA5LDExIEBAIE5VTEwJTlVMTAkxCiAtMS4wMAkt MQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI4CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3Jy ZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEz NjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBX YXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnJwotRXJyb3IJ MTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEK K1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBh dCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6 ICc8LS0tLS0tLS0zMCBjaGFyYWN0ZXJzLS0tLS0tLT4nCi1FcnJvcgkxMzY2CUluY29ycmVjdCBk ZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUlu Y29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2Fybmlu ZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAtLS3vv73vv73vv70q JC0tICcKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICct MScKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICctMzMz My4zMzMzJwpAQCAtMzQzMSwxMSArMzQzMSwxMSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACTUKIC0zMzMzLjMzCS0zMzMzLjMzMzMAAAAAAAAAAAAA AAAAAAAAAAAAAAkyOAogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZh bHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBk ZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRy dW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJycKLUVycm9yCTEzNjYJSW5jb3JyZWN0 IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJ SW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJu aW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAg Y2hhcmFjdGVycy0tLS0tLS0+JwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTog JycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1h bCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0 ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgLS0t77+977+977+9KiQtLSAnCiBXYXJuaW5n CTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnLTEnCiBXYXJuaW5nCTEy OTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnLTMzMzMuMzMzMycKQEAgLTM0 NTUsOSArMzQ1NSw5IEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4z MzMzCTI3CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcn IGZvciBjb2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZh bHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVj aW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNv cnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJ MTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEK K1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBh dCByb3cgLTEKIFNIT1cgQ1JFQVRFIFZJRVcgdjE7CiBWaWV3CUNyZWF0ZSBWaWV3CWNoYXJhY3Rl cl9zZXRfY2xpZW50CWNvbGxhdGlvbl9jb25uZWN0aW9uCiB2MQlDUkVBVEUgQUxHT1JJVEhNPVVO REVGSU5FRCBERUZJTkVSPWByb290YEBgbG9jYWxob3N0YCBTUUwgU0VDVVJJVFkgREVGSU5FUiBW SUVXIGB2MWAgQVMgc2VsZWN0IGNhc3QoYHQxX3ZhbHVlc2AuYG15X3ZhcmNoYXJfMTAwMGAgYXMg ZGVjaW1hbCgzNywyKSkgQVMgYENBU1QobXlfdmFyY2hhcl8xMDAwIEFTIERFQ0lNQUwoMzcsMikp YCxgdDFfdmFsdWVzYC5gbXlfdmFyY2hhcl8xMDAwYCBBUyBgbXlfdmFyY2hhcl8xMDAwYCxgdDFf dmFsdWVzYC5gaWRgIEFTIGBpZGAgZnJvbSBgdDFfdmFsdWVzYAlsYXRpbjEJbGF0aW4xX3N3ZWRp c2hfY2kKQEAgLTM0NzIsOSArMzQ3Miw5IEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMz My4zMwktMzMzMy4zMzMzCTI3CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2lt YWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVj dCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5p bmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cg LTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAn JyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9y IGNvbHVtbiAnJyBhdCByb3cgLTEKIERST1AgVklFVyB2MTsKIAogCkBAIC0zNDkxLDExICszNDkx LDExIEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI2CiBX YXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1 bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcn IGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVj dCBERUNJTUFMIHZhbHVlOiAnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJwotRXJyb3IJ MTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEK K1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBh dCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6 ICc8LS0tLS0tLS0zMCBjaGFyYWN0ZXJzLS0tLS0tLT4nCi1FcnJvcgkxMzY2CUluY29ycmVjdCBk ZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUlu Y29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2Fybmlu ZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAtLS3vv73vv73vv70q JC0tICAgICAgICAgICAnCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmlldwlDcmVhdGUgVmlldwlj aGFyYWN0ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgpAQCAtMzUxMSwxMSArMzUx MSwxMSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyNgog V2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29s dW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAn JyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJl Y3QgREVDSU1BTCB2YWx1ZTogJyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcKLUVycm9y CTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0x CitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVl OiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+JwotRXJyb3IJMTM2NglJbmNvcnJlY3Qg ZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJ bmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5p bmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgLS0t77+977+977+9 KiQtLSAgICAgICAgICAgJwogRFJPUCBWSUVXIHYxOwogCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlz cWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbXlpc2FtX3N0b3JlZHByb2MucmVzdWx0JwotLS0gYS9t eXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9teWlzYW1fc3RvcmVkcHJvYy5yZXN1bHQJMjAwOC0w Ny0wOCAxODo0MDozMiArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9teWlz YW1fc3RvcmVkcHJvYy5yZXN1bHQJMjAwOC0wOC0wNyAxMzozODoyOSArMDAwMApAQCAtMjE5NDMs OSArMjE5NDMsOSBAQCBFTkQJbGF0aW4xCWxhdGluMV9zd2VkaXNoX2NpCWxhdGluMV9zd2VkCiBz ZXQgQEBzcWxfbW9kZT0nJzsKIENBTEwgc3A0KCk7CiBMZXZlbAlDb2RlCU1lc3NhZ2UKLUVycm9y CTEzNjUJRGl2aXNpb24gYnkgMAorV2FybmluZwkxMzY1CURpdmlzaW9uIGJ5IDAKIFdhcm5pbmdz OgotRXJyb3IJMTM2NQlEaXZpc2lvbiBieSAwCitXYXJuaW5nCTEzNjUJRGl2aXNpb24gYnkgMAog RFJPUCBQUk9DRURVUkUgc3A0Owogc2V0IEBAc3FsX21vZGU9Jyc7CiAKCj09PSBtb2RpZmllZCBm aWxlICdteXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9teWlzYW1fdHJpZ18wMy5yZXN1bHQnCi0t LSBhL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL215aXNhbV90cmlnXzAzLnJlc3VsdAkyMDA4 LTA2LTE4IDE3OjIzOjU1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL215 aXNhbV90cmlnXzAzLnJlc3VsdAkyMDA4LTA4LTA3IDEzOjM4OjI5ICswMDAwCkBAIC03OCw3ICs3 OCw3IEBAIGdyYW50IEFMTCAgb24gKi4qIHRvIHRlc3Rfbm9wcml2c0Bsb2NhbGgKIHJldm9rZSBU UklHR0VSIG9uICouKiBmcm9tIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBm b3IgdGVzdF9ub3ByaXZzQGxvY2FsaG9zdDsKIEdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxvY2Fs aG9zdAotR1JBTlQgU0VMRUNULCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1As IFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRF UiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBU QUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENS RUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVB VEUgVVNFUiwgRVZFTlQgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2NhbGhvc3QnIElERU5U SUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0Ey NTc2JworR1JBTlQgU0VMRUNULCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1As IFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRF UiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBU QUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENS RUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVB VEUgVVNFUiwgRVZFTlQsIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3ByaXZz J0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENG MTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIHJldm9rZSBBTEwgUFJJVklMRUdFUywgR1JBTlQgT1BU SU9OIEZST00gdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3Q7CiBncmFudCBUUklHR0VSIG9uICouKiB0 byB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKIGdyYW50IFNFTEVDVCBvbiBwcml2X2RiLnQxIHRv IHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwpAQCAtMTU2LDcgKzE1Niw3IEBAIGdyYW50IEFMTCAg b24gKi4qIHRvIHRlc3Rfbm9wcml2c0Bsb2NhbGgKIHJldm9rZSBVUERBVEUgIG9uICouKiBmcm9t IHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxv Y2FsaG9zdDsKIEdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxvY2FsaG9zdAotR1JBTlQgU0VMRUNU LCBJTlNFUlQsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNT LCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwg Q1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElP TiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVB VEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBUUklHR0VSIE9O ICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JE ICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKK0dSQU5UIFNFTEVD VCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VT UywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIs IENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJ T04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JF QVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgVFJJR0dFUiwg Q1JFQVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2NhbGhvc3QnIElE RU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0 Q0EyNTc2JwogcmV2b2tlIEFMTCBQUklWSUxFR0VTLCBHUkFOVCBPUFRJT04gRlJPTSB0ZXN0X3ll c3ByaXZzQGxvY2FsaG9zdDsKIGdyYW50IFRSSUdHRVIsIFVQREFURSBvbiAqLiogdG8gdGVzdF95 ZXNwcml2c0Bsb2NhbGhvc3Q7CiBzaG93IGdyYW50cyBmb3IgdGVzdF95ZXNwcml2c0Bsb2NhbGhv c3Q7CkBAIC0xNzAsNyArMTcwLDcgQEAgdGVzdF9ub3ByaXZzQGxvY2FsaG9zdAogdXNlIHByaXZf ZGI7CiBzaG93IGdyYW50czsKIEdyYW50cyBmb3IgdGVzdF9ub3ByaXZzQGxvY2FsaG9zdAotR1JB TlQgU0VMRUNULCBJTlNFUlQsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dO LCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VT LCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBS RVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBW SUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBU UklHR0VSIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZ IFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKK0dS QU5UIFNFTEVDVCwgSU5TRVJULCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9X TiwgUFJPQ0VTUywgRklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNF UywgU1VQRVIsIENSRUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwg UkVQTElDQVRJT04gU0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cg VklFVywgQ1JFQVRFIFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwg VFJJR0dFUiwgQ1JFQVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPICd0ZXN0X25vcHJpdnMnQCdsb2Nh bGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3MzVEMDE2QTA5OUMwQ0YxMDRFRjkx ODNGMzc0QTU0Q0EyNTc2Jwogc2VsZWN0IGYxIGZyb20gdDEgb3JkZXIgYnkgZjE7CiBmMQogaW5z ZXJ0IDMuNS4zLjItbm8KQEAgLTQwMiw3ICs0MDIsNyBAQCBncmFudCBBTEwgIG9uICouKiB0byB0 ZXN0X25vcHJpdnNAbG9jYWxoCiByZXZva2UgU0VMRUNUICBvbiAqLiogZnJvbSB0ZXN0X25vcHJp dnNAbG9jYWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3Q7CiBH cmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKLUdSQU5UIElOU0VSVCwgVVBEQVRFLCBE RUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VTUywgRklMRSwgUkVG RVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIsIENSRUFURSBURU1Q T1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJT04gU0xBVkUsIFJF UExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JFQVRFIFJPVVRJTkUs IEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgVFJJR0dFUiBPTiAqLiogVE8gJ3Rl c3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQw MTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBJTlNFUlQsIFVQREFURSwg REVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJF RkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVN UE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBS RVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5F LCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIFRSSUdHRVIsIENSRUFURSBUQUJM RVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZ IFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIHJl dm9rZSBBTEwgUFJJVklMRUdFUywgR1JBTlQgT1BUSU9OIEZST00gdGVzdF95ZXNwcml2c0Bsb2Nh bGhvc3Q7CiBncmFudCBUUklHR0VSLCBTRUxFQ1Qgb24gKi4qIHRvIHRlc3RfeWVzcHJpdnNAbG9j YWxob3N0Owogc2hvdyBncmFudHMgZm9yIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwpAQCAtNDE2 LDcgKzQxNiw3IEBAIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKIHVzZSBwcml2X2RiOwogc2hvdyBn cmFudHM7CiBHcmFudHMgZm9yIHRlc3Rfbm9wcml2c0Bsb2NhbGhvc3QKLUdSQU5UIElOU0VSVCwg VVBEQVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VTUywg RklMRSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIsIENS RUFURSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJT04g U0xBVkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JFQVRF IFJPVVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgVFJJR0dFUiBPTiAq LiogVE8gJ3Rlc3Rfbm9wcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAn KkM0OTczNUQwMTZBMDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBJTlNFUlQs IFVQREFURSwgREVMRVRFLCBDUkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1Ms IEZJTEUsIFJFRkVSRU5DRVMsIElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBD UkVBVEUgVEVNUE9SQVJZIFRBQkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9O IFNMQVZFLCBSRVBMSUNBVElPTiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFU RSBST1VUSU5FLCBBTFRFUiBST1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQsIFRSSUdHRVIsIENS RUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyAndGVzdF9ub3ByaXZzJ0AnbG9jYWxob3N0JyBJREVO VElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENB MjU3NicKIGNyZWF0ZSB0cmlnZ2VyIHRyZzVhXzEgYmVmb3JlIElOU0VSVCBvbiB0MSBmb3IgZWFj aCByb3cKIHNldCBAdGVzdF92YXIgPSBuZXcuZjE7CiBzZXQgQHRlc3RfdmFyID0gJ2JlZm9yZSB0 cmlnIDMuNS4zLjgtMWEnOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZnVu Y3NfMS9yL215aXNhbV90cmlnXzAzZS5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZnVu Y3NfMS9yL215aXNhbV90cmlnXzAzZS5yZXN1bHQJMjAwOC0wNi0xOSAxODo1Njo0OCArMDAwMAor KysgYi9teXNxbC10ZXN0L3N1aXRlL2Z1bmNzXzEvci9teWlzYW1fdHJpZ18wM2UucmVzdWx0CTIw MDgtMDgtMDcgMTM6Mzg6MjkgKzAwMDAKQEAgLTU2Myw3ICs1NjMsNyBAQCB0cmlnIDFfMS15ZXMK IHJldm9rZSBUUklHR0VSIG9uICouKiBmcm9tIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0Owogc2hv dyBncmFudHMgZm9yIHRlc3RfeWVzcHJpdnNAbG9jYWxob3N0OwogR3JhbnRzIGZvciB0ZXN0X3ll c3ByaXZzQGxvY2FsaG9zdAotR1JBTlQgU0VMRUNULCBJTlNFUlQsIFVQREFURSwgREVMRVRFLCBD UkVBVEUsIERST1AsIFJFTE9BRCwgU0hVVERPV04sIFBST0NFU1MsIEZJTEUsIFJFRkVSRU5DRVMs IElOREVYLCBBTFRFUiwgU0hPVyBEQVRBQkFTRVMsIFNVUEVSLCBDUkVBVEUgVEVNUE9SQVJZIFRB QkxFUywgTE9DSyBUQUJMRVMsIEVYRUNVVEUsIFJFUExJQ0FUSU9OIFNMQVZFLCBSRVBMSUNBVElP TiBDTElFTlQsIENSRUFURSBWSUVXLCBTSE9XIFZJRVcsIENSRUFURSBST1VUSU5FLCBBTFRFUiBS T1VUSU5FLCBDUkVBVEUgVVNFUiwgRVZFTlQgT04gKi4qIFRPICd0ZXN0X3llc3ByaXZzJ0AnbG9j YWxob3N0JyBJREVOVElGSUVEIEJZIFBBU1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5 MTgzRjM3NEE1NENBMjU3NicKK0dSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERBVEUsIERFTEVURSwg Q1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxFLCBSRUZFUkVOQ0VT LCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRFIFRFTVBPUkFSWSBU QUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFWRSwgUkVQTElDQVRJ T04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9VVElORSwgQUxURVIg Uk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5ULCBDUkVBVEUgVEFCTEVTUEFDRSBPTiAqLiogVE8g J3Rlc3RfeWVzcHJpdnMnQCdsb2NhbGhvc3QnIElERU5USUZJRUQgQlkgUEFTU1dPUkQgJypDNDk3 MzVEMDE2QTA5OUMwQ0YxMDRFRjkxODNGMzc0QTU0Q0EyNTc2JwogY29ubmVjdChsb2NhbGhvc3Qs dGVzdF95ZXNwcml2cyxQV0QsdGVzdCxNQVNURVJfTVlQT1JULE1BU1RFUl9NWVNPQ0spOwogc2Vs ZWN0IGN1cnJlbnRfdXNlcjsKIGN1cnJlbnRfdXNlcgpAQCAtNjEwLDcgKzYxMCw3IEBAIHJvb3RA bG9jYWxob3N0CiBncmFudCBUUklHR0VSIG9uIHByaXZfZGIuKiB0byB0ZXN0X3llc3ByaXZzQGxv Y2FsaG9zdDsKIHNob3cgZ3JhbnRzIGZvciB0ZXN0X3llc3ByaXZzQGxvY2FsaG9zdDsKIEdyYW50 cyBmb3IgdGVzdF95ZXNwcml2c0Bsb2NhbGhvc3QKLUdSQU5UIFNFTEVDVCwgSU5TRVJULCBVUERB VEUsIERFTEVURSwgQ1JFQVRFLCBEUk9QLCBSRUxPQUQsIFNIVVRET1dOLCBQUk9DRVNTLCBGSUxF LCBSRUZFUkVOQ0VTLCBJTkRFWCwgQUxURVIsIFNIT1cgREFUQUJBU0VTLCBTVVBFUiwgQ1JFQVRF IFRFTVBPUkFSWSBUQUJMRVMsIExPQ0sgVEFCTEVTLCBFWEVDVVRFLCBSRVBMSUNBVElPTiBTTEFW RSwgUkVQTElDQVRJT04gQ0xJRU5ULCBDUkVBVEUgVklFVywgU0hPVyBWSUVXLCBDUkVBVEUgUk9V VElORSwgQUxURVIgUk9VVElORSwgQ1JFQVRFIFVTRVIsIEVWRU5UIE9OICouKiBUTyAndGVzdF95 ZXNwcml2cydAJ2xvY2FsaG9zdCcgSURFTlRJRklFRCBCWSBQQVNTV09SRCAnKkM0OTczNUQwMTZB MDk5QzBDRjEwNEVGOTE4M0YzNzRBNTRDQTI1NzYnCitHUkFOVCBTRUxFQ1QsIElOU0VSVCwgVVBE QVRFLCBERUxFVEUsIENSRUFURSwgRFJPUCwgUkVMT0FELCBTSFVURE9XTiwgUFJPQ0VTUywgRklM RSwgUkVGRVJFTkNFUywgSU5ERVgsIEFMVEVSLCBTSE9XIERBVEFCQVNFUywgU1VQRVIsIENSRUFU RSBURU1QT1JBUlkgVEFCTEVTLCBMT0NLIFRBQkxFUywgRVhFQ1VURSwgUkVQTElDQVRJT04gU0xB VkUsIFJFUExJQ0FUSU9OIENMSUVOVCwgQ1JFQVRFIFZJRVcsIFNIT1cgVklFVywgQ1JFQVRFIFJP VVRJTkUsIEFMVEVSIFJPVVRJTkUsIENSRUFURSBVU0VSLCBFVkVOVCwgQ1JFQVRFIFRBQkxFU1BB Q0UgT04gKi4qIFRPICd0ZXN0X3llc3ByaXZzJ0AnbG9jYWxob3N0JyBJREVOVElGSUVEIEJZIFBB U1NXT1JEICcqQzQ5NzM1RDAxNkEwOTlDMENGMTA0RUY5MTgzRjM3NEE1NENBMjU3NicKIEdSQU5U IFRSSUdHRVIgT04gYHByaXZfZGJgLiogVE8gJ3Rlc3RfeWVzcHJpdnMnQCdsb2NhbGhvc3QnCiAK IHRyaWdnZXIgcHJpdmlsZWdlIG9uIGRiIGxldmVsIGZvciBjcmVhdGU6Cgo9PT0gbW9kaWZpZWQg ZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbmRiX2Z1bmNfdmlldy5yZXN1bHQnCi0t LSBhL215c3FsLXRlc3Qvc3VpdGUvZnVuY3NfMS9yL25kYl9mdW5jX3ZpZXcucmVzdWx0CTIwMDgt MDYtMTkgMTg6NTY6NDggKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9mdW5jc18xL3IvbmRi X2Z1bmNfdmlldy5yZXN1bHQJMjAwOC0wNy0xNSAwMDowNjo0MyArMDAwMApAQCAtMzMwNSw5ICsz MzA1LDkgQEAgTlVMTAlOVUxMCTEKIC0zMzMzLjMzCS0zMzMzLjMzMzMJMzAKIFdhcm5pbmdzOgog V2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJycKLUVycm9y CTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFTIERF Q0lNQUwoMzcsMikpJyBhdCByb3cgMQorV2FybmluZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBm b3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKIFdh cm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcnCi1FcnJvcgkx MjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2RvdWJsZSBBUyBERUNJ TUFMKDM3LDIpKScgYXQgcm93IDEKK1dhcm5pbmcJMTI2NAlPdXQgb2YgcmFuZ2UgdmFsdWUgZm9y IGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0IHJvdyAxCiBTSE9X IENSRUFURSBWSUVXIHYxOwogVmlldwlDcmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAlj b2xsYXRpb25fY29ubmVjdGlvbgogdjEJQ1JFQVRFIEFMR09SSVRITT1VTkRFRklORUQgREVGSU5F Uj1gcm9vdGBAYGxvY2FsaG9zdGAgU1FMIFNFQ1VSSVRZIERFRklORVIgVklFVyBgdjFgIEFTIHNl bGVjdCBjYXN0KGB0MV92YWx1ZXNgLmBteV9kb3VibGVgIGFzIGRlY2ltYWwoMzcsMikpIEFTIGBD QVNUKG15X2RvdWJsZSBBUyBERUNJTUFMKDM3LDIpKWAsYHQxX3ZhbHVlc2AuYG15X2RvdWJsZWAg QVMgYG15X2RvdWJsZWAsYHQxX3ZhbHVlc2AuYGlkYCBBUyBgaWRgIGZyb20gYHQxX3ZhbHVlc2AJ bGF0aW4xCWxhdGluMV9zd2VkaXNoX2NpCkBAIC0zMzIzLDkgKzMzMjMsOSBAQCBOVUxMCU5VTEwJ MQogLTMzMzMuMzMJLTMzMzMuMzMzMwkzMAogV2FybmluZ3M6CiBXYXJuaW5nCTEyOTIJVHJ1bmNh dGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnJwotRXJyb3IJMTI2NAlPdXQgb2YgcmFuZ2Ug dmFsdWUgZm9yIGNvbHVtbiAnQ0FTVChteV9kb3VibGUgQVMgREVDSU1BTCgzNywyKSknIGF0IHJv dyAxCitXYXJuaW5nCTEyNjQJT3V0IG9mIHJhbmdlIHZhbHVlIGZvciBjb2x1bW4gJ0NBU1QobXlf ZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cgMQogV2FybmluZwkxMjkyCVRydW5jYXRl ZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJycKLUVycm9yCTEyNjQJT3V0IG9mIHJhbmdlIHZh bHVlIGZvciBjb2x1bW4gJ0NBU1QobXlfZG91YmxlIEFTIERFQ0lNQUwoMzcsMikpJyBhdCByb3cg MQorV2FybmluZwkxMjY0CU91dCBvZiByYW5nZSB2YWx1ZSBmb3IgY29sdW1uICdDQVNUKG15X2Rv dWJsZSBBUyBERUNJTUFMKDM3LDIpKScgYXQgcm93IDEKIERST1AgVklFVyB2MTsKIAogCkBAIC0z Mzk0LDkgKzMzOTQsOSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMu MzMzMwkyOQogV2FybmluZ3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAn JyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2 YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRl Y2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5j b3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5n CTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0x CitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycg YXQgcm93IC0xCiBTSE9XIENSRUFURSBWSUVXIHYxOwogVmlldwlDcmVhdGUgVmlldwljaGFyYWN0 ZXJfc2V0X2NsaWVudAljb2xsYXRpb25fY29ubmVjdGlvbgogdjEJQ1JFQVRFIEFMR09SSVRITT1V TkRFRklORUQgREVGSU5FUj1gcm9vdGBAYGxvY2FsaG9zdGAgU1FMIFNFQ1VSSVRZIERFRklORVIg VklFVyBgdjFgIEFTIHNlbGVjdCBjYXN0KGB0MV92YWx1ZXNgLmBteV92YXJiaW5hcnlfMTAwMGAg YXMgZGVjaW1hbCgzNywyKSkgQVMgYENBU1QobXlfdmFyYmluYXJ5XzEwMDAgQVMgREVDSU1BTCgz NywyKSlgLGB0MV92YWx1ZXNgLmBteV92YXJiaW5hcnlfMTAwMGAgQVMgYG15X3ZhcmJpbmFyeV8x MDAwYCxgdDFfdmFsdWVzYC5gaWRgIEFTIGBpZGAgZnJvbSBgdDFfdmFsdWVzYAlsYXRpbjEJbGF0 aW4xX3N3ZWRpc2hfY2kKQEAgLTM0MTEsOSArMzQxMSw5IEBAIE5VTEwJTlVMTAkxCiAtMS4wMAkt MQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI5CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3Jy ZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJy b3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cg LTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAn JyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9y IGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1 ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIERST1AgVklFVyB2MTsKIAogCkBAIC0zNDMw LDExICszNDMwLDExIEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4z MzMzCTI4CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcn IGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwg dmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVk IGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnJwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1h bCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJl Y3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5 MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICc8LS0tLS0tLS0zMCBjaGFyYWN0 ZXJzLS0tLS0tLT4nCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3Ig Y29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVl OiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNv cnJlY3QgREVDSU1BTCB2YWx1ZTogJyAtLS3vv73vv73vv70qJC0tICcKIFdhcm5pbmcJMTI5MglU cnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICctMScKIFdhcm5pbmcJMTI5MglUcnVu Y2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICctMzMzMy4zMzMzJwpAQCAtMzQ1MiwxMSAr MzQ1MiwxMSBAQCBOVUxMCU5VTEwJMQogLTEuMDAJLTEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAACTUKIC0zMzMzLjMzCS0zMzMzLjMzMzMAAAAAAAAAAAAAAAAAAAAAAAAAAAkyOAogV2Fybmlu Z3M6Ci1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcn IGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3Ig Y29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVD SU1BTCB2YWx1ZTogJycKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZv ciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFs dWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGlu Y29ycmVjdCBERUNJTUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFjdGVycy0tLS0tLS0+Jwot RXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCBy b3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVt biAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwg dmFsdWU6ICcgLS0t77+977+977+9KiQtLSAnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29y cmVjdCBERUNJTUFMIHZhbHVlOiAnLTEnCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVj dCBERUNJTUFMIHZhbHVlOiAnLTMzMzMuMzMzMycKQEAgLTM0NzYsOSArMzQ3Niw5IEBAIE5VTEwJ TlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI3CiBXYXJuaW5nczoKLUVy cm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcn IGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNv bHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTog JycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1h bCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJl Y3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFNIT1cgQ1JFQVRF IFZJRVcgdjE7CiBWaWV3CUNyZWF0ZSBWaWV3CWNoYXJhY3Rlcl9zZXRfY2xpZW50CWNvbGxhdGlv bl9jb25uZWN0aW9uCiB2MQlDUkVBVEUgQUxHT1JJVEhNPVVOREVGSU5FRCBERUZJTkVSPWByb290 YEBgbG9jYWxob3N0YCBTUUwgU0VDVVJJVFkgREVGSU5FUiBWSUVXIGB2MWAgQVMgc2VsZWN0IGNh c3QoYHQxX3ZhbHVlc2AuYG15X3ZhcmNoYXJfMTAwMGAgYXMgZGVjaW1hbCgzNywyKSkgQVMgYENB U1QobXlfdmFyY2hhcl8xMDAwIEFTIERFQ0lNQUwoMzcsMikpYCxgdDFfdmFsdWVzYC5gbXlfdmFy Y2hhcl8xMDAwYCBBUyBgbXlfdmFyY2hhcl8xMDAwYCxgdDFfdmFsdWVzYC5gaWRgIEFTIGBpZGAg ZnJvbSBgdDFfdmFsdWVzYAlsYXRpbjEJbGF0aW4xX3N3ZWRpc2hfY2kKQEAgLTM0OTMsOSArMzQ5 Myw5IEBAIE5VTEwJTlVMTAkxCiAtMS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI3CiBX YXJuaW5nczoKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1 bW4gJycgYXQgcm93IC0xCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBm b3IgY29sdW1uICcnIGF0IHJvdyAtMQotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1 ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVj aW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNv cnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJ MTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEK IERST1AgVklFVyB2MTsKIAogCkBAIC0zNTEyLDExICszNTEyLDExIEBAIE5VTEwJTlVMTAkxCiAt MS4wMAktMQk1CiAtMzMzMy4zMwktMzMzMy4zMzMzCTI2CiBXYXJuaW5nczoKLUVycm9yCTEzNjYJ SW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJu aW5nCTEzNjYJSW5jb3JyZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93 IC0xCiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1h bCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJl Y3QgZGVjaW1hbCB2YWx1ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5 MglUcnVuY2F0ZWQgaW5jb3JyZWN0IERFQ0lNQUwgdmFsdWU6ICc8LS0tLS0tLS0zMCBjaGFyYWN0 ZXJzLS0tLS0tLT4nCi1FcnJvcgkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3Ig Y29sdW1uICcnIGF0IHJvdyAtMQorV2FybmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVl OiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNv cnJlY3QgREVDSU1BTCB2YWx1ZTogJyAtLS3vv73vv73vv70qJC0tICAgICAgICAgICAnCiBTSE9X IENSRUFURSBWSUVXIHYxOwogVmlldwlDcmVhdGUgVmlldwljaGFyYWN0ZXJfc2V0X2NsaWVudAlj b2xsYXRpb25fY29ubmVjdGlvbgpAQCAtMzUzMiwxMSArMzUzMiwxMSBAQCBOVUxMCU5VTEwJMQog LTEuMDAJLTEJNQogLTMzMzMuMzMJLTMzMzMuMzMzMwkyNgogV2FybmluZ3M6Ci1FcnJvcgkxMzY2 CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJvdyAtMQorV2Fy bmluZwkxMzY2CUluY29ycmVjdCBkZWNpbWFsIHZhbHVlOiAnJyBmb3IgY29sdW1uICcnIGF0IHJv dyAtMQogV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgREVDSU1BTCB2YWx1ZTogJyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICcKLUVycm9yCTEzNjYJSW5jb3JyZWN0IGRlY2lt YWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCitXYXJuaW5nCTEzNjYJSW5jb3Jy ZWN0IGRlY2ltYWwgdmFsdWU6ICcnIGZvciBjb2x1bW4gJycgYXQgcm93IC0xCiBXYXJuaW5nCTEy OTIJVHJ1bmNhdGVkIGluY29ycmVjdCBERUNJTUFMIHZhbHVlOiAnPC0tLS0tLS0tMzAgY2hhcmFj dGVycy0tLS0tLS0+JwotRXJyb3IJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1ZTogJycgZm9y IGNvbHVtbiAnJyBhdCByb3cgLTEKK1dhcm5pbmcJMTM2NglJbmNvcnJlY3QgZGVjaW1hbCB2YWx1 ZTogJycgZm9yIGNvbHVtbiAnJyBhdCByb3cgLTEKIFdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5j b3JyZWN0IERFQ0lNQUwgdmFsdWU6ICcgLS0t77+977+977+9KiQtLSAgICAgICAgICAgJwogRFJP UCBWSUVXIHYxOwogCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9u ZGJfYmFzaWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL25kYi9yL25kYl9iYXNpYy5y ZXN1bHQJMjAwNy0xMS0xMiAxMjoyNTozNCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL25k Yi9yL25kYl9iYXNpYy5yZXN1bHQJMjAwOC0wOC0wNiAyMjoxNjowNyArMDAwMApAQCAtNzgzLDYg Kzc4Myw3IEBAIGYxCWYyCWYzCiAyMjIyMjIJYmJiYmJiCTIKIGRyb3AgdGFibGUgdDE7CiBJbGxl Z2FsIG5kYiBlcnJvciBjb2RlOiAxMTg2CitNeVNRTCBlcnJvciBjb2RlIDExODYgKEVSX0ZMVVNI X01BU1RFUl9CSU5MT0dfQ0xPU0VEKTogQmlubG9nIGNsb3NlZCwgY2Fubm90IFJFU0VUIE1BU1RF UgogQ1JFQVRFIFRBQkxFIHQxICgKIGEgVkFSQklOQVJZKDQwKSBOT1QgTlVMTCwKIGIgVkFSQ0hB UiAoMjU2KSBDSEFSQUNURVIgU0VUIFVURjggTk9UIE5VTEwsCgo9PT0gbW9kaWZpZWQgZmlsZSAn bXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfYml0ZmllbGQucmVzdWx0JwotLS0gYS9teXNxbC10 ZXN0L3N1aXRlL25kYi9yL25kYl9iaXRmaWVsZC5yZXN1bHQJMjAwNy0wOC0yNyAwODoxNDoyNCAr MDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL25kYi9yL25kYl9iaXRmaWVsZC5yZXN1bHQJMjAw OC0wNy0xNSAwMDowNjo0MyArMDAwMApAQCAtMjI2LDcgKzIyNiw3IEBAIGIgaW50CiBFUlJPUiBI WTAwMDogQ2FuJ3QgY3JlYXRlIHRhYmxlICd0ZXN0LnQxJyAoZXJybm86IDkwNikKIHNob3cgd2Fy bmluZ3M7CiBMZXZlbAlDb2RlCU1lc3NhZ2UKLUVycm9yCTEyOTYJR290IGVycm9yIDkwNiAnVW5z dXBwb3J0ZWQgYXR0cmlidXRlIHR5cGUgaW4gaW5kZXgnIGZyb20gTkRCCitXYXJuaW5nCTEyOTYJ R290IGVycm9yIDkwNiAnVW5zdXBwb3J0ZWQgYXR0cmlidXRlIHR5cGUgaW4gaW5kZXgnIGZyb20g TkRCCiBFcnJvcgkxMDA1CUNhbid0IGNyZWF0ZSB0YWJsZSAndGVzdC50MScgKGVycm5vOiA5MDYp CiBjcmVhdGUgdGFibGUgdDEgKAogcGsxIGludCBub3QgbnVsbCBwcmltYXJ5IGtleSwKQEAgLTIz Niw3ICsyMzYsNyBAQCBrZXkoYikKIEVSUk9SIEhZMDAwOiBDYW4ndCBjcmVhdGUgdGFibGUgJ3Rl c3QudDEnIChlcnJubzogOTA2KQogc2hvdyB3YXJuaW5nczsKIExldmVsCUNvZGUJTWVzc2FnZQot RXJyb3IJMTI5NglHb3QgZXJyb3IgOTA2ICdVbnN1cHBvcnRlZCBhdHRyaWJ1dGUgdHlwZSBpbiBp bmRleCcgZnJvbSBOREIKK1dhcm5pbmcJMTI5NglHb3QgZXJyb3IgOTA2ICdVbnN1cHBvcnRlZCBh dHRyaWJ1dGUgdHlwZSBpbiBpbmRleCcgZnJvbSBOREIKIEVycm9yCTEwMDUJQ2FuJ3QgY3JlYXRl IHRhYmxlICd0ZXN0LnQxJyAoZXJybm86IDkwNikKIGNyZWF0ZSB0YWJsZSB0MSAoCiBwazEgaW50 IHByaW1hcnkga2V5LAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvbmRiL3Iv bmRiX2RkX2RkbC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRiX2RkX2Rk bC5yZXN1bHQJMjAwNy0xMC0yNiAyMDo0MDo0OCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRl L25kYi9yL25kYl9kZF9kZGwucmVzdWx0CTIwMDgtMDctMjUgMTg6NDQ6MjAgKzAwMDAKQEAgLTE1 LDcgKzE1LDcgQEAgRU5HSU5FIE5EQjsKIEVSUk9SIEhZMDAwOiBGYWlsZWQgdG8gY3JlYXRlIExP R0ZJTEUgR1JPVVAKIFNIT1cgV0FSTklOR1M7CiBMZXZlbAlDb2RlCU1lc3NhZ2UKLUVycm9yCTEy OTYJR290IGVycm9yIDE1MTQgJ0N1cnJlbnRseSB0aGVyZSBpcyBhIGxpbWl0IG9mIG9uZSBsb2dm aWxlIGdyb3VwJyBmcm9tIE5EQgorV2FybmluZwkxMjk2CUdvdCBlcnJvciAxNTE0ICdDdXJyZW50 bHkgdGhlcmUgaXMgYSBsaW1pdCBvZiBvbmUgbG9nZmlsZSBncm91cCcgZnJvbSBOREIKIEVycm9y CTE1MjgJRmFpbGVkIHRvIGNyZWF0ZSBMT0dGSUxFIEdST1VQCiBDUkVBVEUgTE9HRklMRSBHUk9V UCBsZzEKIEFERCBVTkRPRklMRSAndW5kb2ZpbGUuZGF0JwpAQCAtMjM2LDMgKzIzNiw3OSBAQCBl bmdpbmUgbmRiOwogRVJST1IgSFkwMDA6IEZhaWxlZCB0byBkcm9wIFRBQkxFU1BBQ0UKIGRyb3Ag bG9nZmlsZSBncm91cCBsZzEKIGVuZ2luZSBuZGI7CisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgRW5kIDUuMSB0 ZXN0CisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCisKKyMgLS0KKyMgLS0gV0wjNDMwMDogRGVmaW5lIHByaXZpbGVnZXMg Zm9yIHRhYmxlc3BhY2VzLgorIyAtLQorR1JBTlQgQ1JFQVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRP IG15c3FsdGVzdF91MUBsb2NhbGhvc3Q7CisKK0RST1AgREFUQUJBU0UgSUYgRVhJU1RTIG15c3Fs dGVzdDI7CitDUkVBVEUgREFUQUJBU0UgbXlzcWx0ZXN0MjsKK0dSQU5UIEFMTCBQUklWSUxFR0VT IE9OIG15c3FsdGVzdDIuKiBUTyBteXNxbHRlc3RfdTJAbG9jYWxob3N0OworCisjIC0tIENvbm5l Y3Rpb246IG15c3FsdGVzdF91MUBsb2NhbGhvc3QKKworIyAtLSBHcmFudHMgZm9yIG15c3FsdGVz dF91MUBsb2NhbGhvc3Q6CitTSE9XIEdSQU5UUzsKK0dyYW50cyBmb3IgbXlzcWx0ZXN0X3UxQGxv Y2FsaG9zdAorR1JBTlQgQ1JFQVRFIFRBQkxFU1BBQ0UgT04gKi4qIFRPICdteXNxbHRlc3RfdTEn QCdsb2NhbGhvc3QnCisKKyMgLS0gQ2hlY2sgQ1JFQVRFIExPR0ZJTEUgR1JPVVAuLi4KK0NSRUFU RSBMT0dGSUxFIEdST1VQIGxnMQorQUREIFVORE9GSUxFICd1bmRvZmlsZS5kYXQnCitJTklUSUFM X1NJWkUgMU0KK1VORE9fQlVGRkVSX1NJWkUgPSAxTQorRU5HSU5FID0gTkRCOworCisjIC0tIENo ZWNrIEFMVEVSIExPR0ZJTEUgR1JPVVAuLi4KK0FMVEVSIExPR0ZJTEUgR1JPVVAgbGcxCitBREQg VU5ET0ZJTEUgJ3VuZG9maWxlMDIuZGF0JworSU5JVElBTF9TSVpFIDFNCitFTkdJTkUgPSBOREI7 CisKKyMgLS0gQ2hlY2sgQ1JFQVRFIFRBQkxFU1BBQ0UuLi4KK0NSRUFURSBUQUJMRVNQQUNFIHRz MQorQUREIERBVEFGSUxFICdkYXRhZmlsZS5kYXQnCitVU0UgTE9HRklMRSBHUk9VUCBsZzEKK0lO SVRJQUxfU0laRSAxTQorRU5HSU5FID0gTkRCOworCisjIC0tIENoZWNrIEFMVEVSIFRBQkxFU1BB Q0UuLi4KK0FMVEVSIFRBQkxFU1BBQ0UgdHMxCitEUk9QIERBVEFGSUxFICdkYXRhZmlsZS5kYXQn CitJTklUSUFMX1NJWkUgMU0KK0VOR0lORSA9IE5EQjsKKworIyAtLSBDb25uZWN0aW9uOiBteXNx bHRlc3RfdTJAbG9jYWxob3N0CisKKyMgLS0gR3JhbnRzIGZvciBteXNxbHRlc3RfdTJAbG9jYWxo b3N0OgorU0hPVyBHUkFOVFM7CitHcmFudHMgZm9yIG15c3FsdGVzdF91MkBsb2NhbGhvc3QKK0dS QU5UIFVTQUdFIE9OICouKiBUTyAnbXlzcWx0ZXN0X3UyJ0AnbG9jYWxob3N0JworR1JBTlQgQUxM IFBSSVZJTEVHRVMgT04gYG15c3FsdGVzdDJgLiogVE8gJ215c3FsdGVzdF91MidAJ2xvY2FsaG9z dCcKK0NSRUFURSBUQUJMRSB0MShjIElOVCkgVEFCTEVTUEFDRSB0czE7CitEUk9QIFRBQkxFIHQx OworCisjIC0tIENvbm5lY3Rpb246IG15c3FsdGVzdF91MUBsb2NhbGhvc3QKKworCisjIC0tIENo ZWNrIERST1AgVEFCTEVTUEFDRS4uLgorRFJPUCBUQUJMRVNQQUNFIHRzMSAKK0VOR0lORSA9IE5E QjsKKworIyAtLSBDaGVjayBEUk9QIExPR0ZJTEUgR1JPVVAuLi4KK0RST1AgTE9HRklMRSBHUk9V UCBsZzEgCitFTkdJTkUgPSBOREI7CisKKyMgLS0gQ29ubmVjdGlvbjogcm9vdEBsb2NhbGhvc3QK KworRFJPUCBVU0VSIG15c3FsdGVzdF91MUBsb2NhbGhvc3Q7CitEUk9QIFVTRVIgbXlzcWx0ZXN0 X3UyQGxvY2FsaG9zdDsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBFbmQgNi4wIHRlc3QKKyMgLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K Cj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL25kYi9yL25kYl9naXMucmVzdWx0 JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL25kYi9yL25kYl9naXMucmVzdWx0CTIwMDctMTItMTgg MTg6MDc6NDEgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfZ2lzLnJlc3Vs dAkyMDA4LTA3LTE1IDAwOjA2OjQzICswMDAwCkBAIC00NjUsNyArNDY1LDcgQEAgZHJvcCB0YWJs ZSB0MTsKIEVuZCBvZiA0LjEgdGVzdHMKIENSRUFURSBUQUJMRSB0MSAobmFtZSBWQVJDSEFSKDEw MCksIHNxdWFyZSBHRU9NRVRSWSk7CiBXYXJuaW5nczoKLUVycm9yCTE0NzgJVGFibGUgc3RvcmFn ZSBlbmdpbmUgJ25kYmNsdXN0ZXInIGRvZXMgbm90IHN1cHBvcnQgdGhlIGNyZWF0ZSBvcHRpb24g J0JpbmxvZyBvZiB0YWJsZSB3aXRoIEJMT0IgYXR0cmlidXRlIGFuZCBubyBQSycKK1dhcm5pbmcJ MTQ3OAlUYWJsZSBzdG9yYWdlIGVuZ2luZSAnbmRiY2x1c3RlcicgZG9lcyBub3Qgc3VwcG9ydCB0 aGUgY3JlYXRlIG9wdGlvbiAnQmlubG9nIG9mIHRhYmxlIHdpdGggQkxPQiBhdHRyaWJ1dGUgYW5k IG5vIFBLJwogSU5TRVJUIElOVE8gdDEgVkFMVUVTKCJjZW50ZXIiLCBHZW9tRnJvbVRleHQoJ1BP TFlHT04gKCggMCAwLCAwIDIsIDIgMiwgMiAwLCAwIDApKScpKTsKIElOU0VSVCBJTlRPIHQxIFZB TFVFUygic21hbGwiLCAgR2VvbUZyb21UZXh0KCdQT0xZR09OICgoIDAgMCwgMCAxLCAxIDEsIDEg MCwgMCAwKSknKSk7CiBJTlNFUlQgSU5UTyB0MSBWQUxVRVMoImJpZyIsICAgIEdlb21Gcm9tVGV4 dCgnUE9MWUdPTiAoKCAwIDAsIDAgMywgMyAzLCAzIDAsIDAgMCkpJykpOwpAQCAtMTAxNyw3ICsx MDE3LDcgQEAgZHJvcCB0YWJsZSB0MTsKIEVuZCBvZiA0LjEgdGVzdHMKIENSRUFURSBUQUJMRSB0 MSAobmFtZSBWQVJDSEFSKDEwMCksIHNxdWFyZSBHRU9NRVRSWSk7CiBXYXJuaW5nczoKLUVycm9y CTE0NzgJVGFibGUgc3RvcmFnZSBlbmdpbmUgJ25kYmNsdXN0ZXInIGRvZXMgbm90IHN1cHBvcnQg dGhlIGNyZWF0ZSBvcHRpb24gJ0JpbmxvZyBvZiB0YWJsZSB3aXRoIEJMT0IgYXR0cmlidXRlIGFu ZCBubyBQSycKK1dhcm5pbmcJMTQ3OAlUYWJsZSBzdG9yYWdlIGVuZ2luZSAnbmRiY2x1c3Rlcicg ZG9lcyBub3Qgc3VwcG9ydCB0aGUgY3JlYXRlIG9wdGlvbiAnQmlubG9nIG9mIHRhYmxlIHdpdGgg QkxPQiBhdHRyaWJ1dGUgYW5kIG5vIFBLJwogSU5TRVJUIElOVE8gdDEgVkFMVUVTKCJjZW50ZXIi LCBHZW9tRnJvbVRleHQoJ1BPTFlHT04gKCggMCAwLCAwIDIsIDIgMiwgMiAwLCAwIDApKScpKTsK IElOU0VSVCBJTlRPIHQxIFZBTFVFUygic21hbGwiLCAgR2VvbUZyb21UZXh0KCdQT0xZR09OICgo IDAgMCwgMCAxLCAxIDEsIDEgMCwgMCAwKSknKSk7CiBJTlNFUlQgSU5UTyB0MSBWQUxVRVMoImJp ZyIsICAgIEdlb21Gcm9tVGV4dCgnUE9MWUdPTiAoKCAwIDAsIDAgMywgMyAzLCAzIDAsIDAgMCkp JykpOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRiX211bHRp X3Jvdy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRiX211bHRpX3Jvdy5y ZXN1bHQJMjAwNy0xMS0wMSAxNDowODowMCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL25k Yi9yL25kYl9tdWx0aV9yb3cucmVzdWx0CTIwMDgtMDctMTUgMDA6MDY6NDMgKzAwMDAKQEAgLTYz LDYgKzYzLDYgQEAgdDQKIGRyb3AgdGFibGUgdDEsIHQyLCB0MywgdDQ7CiBkcm9wIHRhYmxlIGlm IGV4aXN0cyB0MSwgdDMsIHQ0OwogV2FybmluZ3M6Ci1FcnJvcgkxNTUJVGFibGUgJ3Rlc3QudDEn IGRvZXNuJ3QgZXhpc3QKLUVycm9yCTE1NQlUYWJsZSAndGVzdC50MycgZG9lc24ndCBleGlzdAot RXJyb3IJMTU1CVRhYmxlICd0ZXN0LnQ0JyBkb2Vzbid0IGV4aXN0CitXYXJuaW5nCTE1NQlUYWJs ZSAndGVzdC50MScgZG9lc24ndCBleGlzdAorV2FybmluZwkxNTUJVGFibGUgJ3Rlc3QudDMnIGRv ZXNuJ3QgZXhpc3QKK1dhcm5pbmcJMTU1CVRhYmxlICd0ZXN0LnQ0JyBkb2Vzbid0IGV4aXN0Cgo9 PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfcGFydGl0aW9uX2Vy cm9yLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9uZGIvci9uZGJfcGFydGl0aW9uX2Vy cm9yLnJlc3VsdAkyMDA3LTA2LTI3IDEyOjI4OjAyICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3Vp dGUvbmRiL3IvbmRiX3BhcnRpdGlvbl9lcnJvci5yZXN1bHQJMjAwOC0wNy0xNSAwMDowNjo0MyAr MDAwMApAQCAtMTQsNyArMTQsNyBAQCBwYXJ0aXRpb24geDMgdmFsdWVzIGxlc3MgdGhhbiAoMjAp IG5vZGVnCiBFUlJPUiBIWTAwMDogQ2FuJ3QgY3JlYXRlIHRhYmxlICd0ZXN0LnQxJyAoZXJybm86 IDE0MCkKIHNob3cgd2FybmluZ3M7CiBMZXZlbAlDb2RlCU1lc3NhZ2UKLUVycm9yCTEyOTYJR290 IGVycm9yIDc3MSAnR2l2ZW4gTk9ERUdST1VQIGRvZXNuJ3QgZXhpc3QgaW4gdGhpcyBjbHVzdGVy JyBmcm9tIE5EQgorV2FybmluZwkxMjk2CUdvdCBlcnJvciA3NzEgJ0dpdmVuIE5PREVHUk9VUCBk b2Vzbid0IGV4aXN0IGluIHRoaXMgY2x1c3RlcicgZnJvbSBOREIKIEVycm9yCTEwMDUJQ2FuJ3Qg Y3JlYXRlIHRhYmxlICd0ZXN0LnQxJyAoZXJybm86IDE0MCkKIENSRUFURSBUQUJMRSB0MSAoCiBh IGludCBub3QgbnVsbCwKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL25kYi9y L25kYl9zaW5nbGVfdXNlci5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRi X3NpbmdsZV91c2VyLnJlc3VsdAkyMDA3LTEwLTI2IDIwOjQwOjQ4ICswMDAwCisrKyBiL215c3Fs LXRlc3Qvc3VpdGUvbmRiL3IvbmRiX3NpbmdsZV91c2VyLnJlc3VsdAkyMDA4LTA3LTE1IDAwOjA2 OjQzICswMDAwCkBAIC0xMCw3ICsxMCw3IEBAIEVOR0lORT1OREI7CiBFUlJPUiBIWTAwMDogRmFp bGVkIHRvIGNyZWF0ZSBMT0dGSUxFIEdST1VQCiBzaG93IHdhcm5pbmdzOwogTGV2ZWwJQ29kZQlN ZXNzYWdlCi1FcnJvcgkxMjk2CUdvdCBlcnJvciAyOTkgJ09wZXJhdGlvbiBub3QgYWxsb3dlZCBv ciBhYm9ydGVkIGR1ZSB0byBzaW5nbGUgdXNlciBtb2RlJyBmcm9tIE5EQgorV2FybmluZwkxMjk2 CUdvdCBlcnJvciAyOTkgJ09wZXJhdGlvbiBub3QgYWxsb3dlZCBvciBhYm9ydGVkIGR1ZSB0byBz aW5nbGUgdXNlciBtb2RlJyBmcm9tIE5EQgogRXJyb3IJMTUyOAlGYWlsZWQgdG8gY3JlYXRlIExP R0ZJTEUgR1JPVVAKIGNyZWF0ZSB0YWJsZSB0MSAoYSBpbnQga2V5LCBiIGludCB1bmlxdWUsIGMg aW50KSBlbmdpbmUgbmRiOwogQ1JFQVRFIExPR0ZJTEUgR1JPVVAgbGcxCkBAIC0yNiwxNCArMjYs MTQgQEAgRU5HSU5FIE5EQjsKIEVSUk9SIEhZMDAwOiBGYWlsZWQgdG8gY3JlYXRlIFRBQkxFU1BB Q0UKIHNob3cgd2FybmluZ3M7CiBMZXZlbAlDb2RlCU1lc3NhZ2UKLUVycm9yCTEyOTYJR290IGVy cm9yIDI5OSAnT3BlcmF0aW9uIG5vdCBhbGxvd2VkIG9yIGFib3J0ZWQgZHVlIHRvIHNpbmdsZSB1 c2VyIG1vZGUnIGZyb20gTkRCCitXYXJuaW5nCTEyOTYJR290IGVycm9yIDI5OSAnT3BlcmF0aW9u IG5vdCBhbGxvd2VkIG9yIGFib3J0ZWQgZHVlIHRvIHNpbmdsZSB1c2VyIG1vZGUnIGZyb20gTkRC CiBFcnJvcgkxNTI4CUZhaWxlZCB0byBjcmVhdGUgVEFCTEVTUEFDRQogRFJPUCBMT0dGSUxFIEdS T1VQIGxnMSAKIEVOR0lORSA9TkRCOwogRVJST1IgSFkwMDA6IEZhaWxlZCB0byBkcm9wIExPR0ZJ TEUgR1JPVVAKIHNob3cgd2FybmluZ3M7CiBMZXZlbAlDb2RlCU1lc3NhZ2UKLUVycm9yCTEyOTYJ R290IGVycm9yIDI5OSAnT3BlcmF0aW9uIG5vdCBhbGxvd2VkIG9yIGFib3J0ZWQgZHVlIHRvIHNp bmdsZSB1c2VyIG1vZGUnIGZyb20gTkRCCitXYXJuaW5nCTEyOTYJR290IGVycm9yIDI5OSAnT3Bl cmF0aW9uIG5vdCBhbGxvd2VkIG9yIGFib3J0ZWQgZHVlIHRvIHNpbmdsZSB1c2VyIG1vZGUnIGZy b20gTkRCCiBFcnJvcgkxNTI5CUZhaWxlZCB0byBkcm9wIExPR0ZJTEUgR1JPVVAKIENSRUFURSBU QUJMRVNQQUNFIHRzMQogQUREIERBVEFGSUxFICdkYXRhZmlsZS5kYXQnCkBAIC00Niw3ICs0Niw3 IEBAIEVOR0lORSBOREI7CiBFUlJPUiBIWTAwMDogRmFpbGVkIHRvIGFsdGVyOiAgRFJPUCBEQVRB RklMRQogc2hvdyB3YXJuaW5nczsKIExldmVsCUNvZGUJTWVzc2FnZQotRXJyb3IJMTI5NglHb3Qg ZXJyb3IgMjk5ICdPcGVyYXRpb24gbm90IGFsbG93ZWQgb3IgYWJvcnRlZCBkdWUgdG8gc2luZ2xl IHVzZXIgbW9kZScgZnJvbSBOREIKK1dhcm5pbmcJMTI5NglHb3QgZXJyb3IgMjk5ICdPcGVyYXRp b24gbm90IGFsbG93ZWQgb3IgYWJvcnRlZCBkdWUgdG8gc2luZ2xlIHVzZXIgbW9kZScgZnJvbSBO REIKIEVycm9yCTE1MzMJRmFpbGVkIHRvIGFsdGVyOiAgRFJPUCBEQVRBRklMRQogQUxURVIgVEFC TEVTUEFDRSB0czEKIERST1AgREFUQUZJTEUgJ2RhdGFmaWxlLmRhdCcKQEAgLTU2LDcgKzU2LDcg QEAgRU5HSU5FIE5EQjsKIEVSUk9SIEhZMDAwOiBGYWlsZWQgdG8gZHJvcCBUQUJMRVNQQUNFCiBz aG93IHdhcm5pbmdzOwogTGV2ZWwJQ29kZQlNZXNzYWdlCi1FcnJvcgkxMjk2CUdvdCBlcnJvciAy OTkgJ09wZXJhdGlvbiBub3QgYWxsb3dlZCBvciBhYm9ydGVkIGR1ZSB0byBzaW5nbGUgdXNlciBt b2RlJyBmcm9tIE5EQgorV2FybmluZwkxMjk2CUdvdCBlcnJvciAyOTkgJ09wZXJhdGlvbiBub3Qg YWxsb3dlZCBvciBhYm9ydGVkIGR1ZSB0byBzaW5nbGUgdXNlciBtb2RlJyBmcm9tIE5EQgogRXJy b3IJMTUyOQlGYWlsZWQgdG8gZHJvcCBUQUJMRVNQQUNFCiBEUk9QIFRBQkxFU1BBQ0UgdHMxCiBF TkdJTkUgTkRCOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvbmRiL3QvbmRi X2RkX2RkbC50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL25kYi90L25kYl9kZF9kZGwudGVz dAkyMDA3LTA4LTIyIDEzOjU0OjEwICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvbmRiL3Qv bmRiX2RkX2RkbC50ZXN0CTIwMDgtMDctMjQgMDc6NDQ6MjEgKzAwMDAKQEAgLTM2Nyw0ICszNjcs MTAzIEBAIGVuZ2luZSBuZGI7CiAtLWV4ZWMgcm0gJE1ZU1FMVEVTVF9WQVJESVIvdG1wL3QxLmZy bQogCiAKLSMgRW5kIDUuMSB0ZXN0CistLWVjaG8KKy0tZWNobyAjIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCistLWVjaG8g IyBFbmQgNS4xIHRlc3QKKy0tZWNobyAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy0tZWNobworLS1lY2hvICMgLS0K Ky0tZWNobyAjIC0tIFdMIzQzMDA6IERlZmluZSBwcml2aWxlZ2VzIGZvciB0YWJsZXNwYWNlcy4K Ky0tZWNobyAjIC0tCisKK0dSQU5UIENSRUFURSBUQUJMRVNQQUNFIE9OICouKiBUTyBteXNxbHRl c3RfdTFAbG9jYWxob3N0OworCistLWVjaG8KKworLS1kaXNhYmxlX3dhcm5pbmdzCitEUk9QIERB VEFCQVNFIElGIEVYSVNUUyBteXNxbHRlc3QyOworLS1lbmFibGVfd2FybmluZ3MKKworQ1JFQVRF IERBVEFCQVNFIG15c3FsdGVzdDI7CisKK0dSQU5UIEFMTCBQUklWSUxFR0VTIE9OIG15c3FsdGVz dDIuKiBUTyBteXNxbHRlc3RfdTJAbG9jYWxob3N0OworCistLWVjaG8KKy0tZWNobyAjIC0tIENv bm5lY3Rpb246IG15c3FsdGVzdF91MUBsb2NhbGhvc3QKKy0tZWNobworLS1jb25uZWN0KGNvbjEs IGxvY2FsaG9zdCwgbXlzcWx0ZXN0X3UxLCwpCisKKy0tZWNobyAjIC0tIEdyYW50cyBmb3IgbXlz cWx0ZXN0X3UxQGxvY2FsaG9zdDoKK1NIT1cgR1JBTlRTOworCistLWVjaG8KKy0tZWNobyAjIC0t IENoZWNrIENSRUFURSBMT0dGSUxFIEdST1VQLi4uCitDUkVBVEUgTE9HRklMRSBHUk9VUCBsZzEK K0FERCBVTkRPRklMRSAndW5kb2ZpbGUuZGF0JworSU5JVElBTF9TSVpFIDFNCitVTkRPX0JVRkZF Ul9TSVpFID0gMU0KK0VOR0lORSA9IE5EQjsKKworLS1lY2hvCistLWVjaG8gIyAtLSBDaGVjayBB TFRFUiBMT0dGSUxFIEdST1VQLi4uCitBTFRFUiBMT0dGSUxFIEdST1VQIGxnMQorQUREIFVORE9G SUxFICd1bmRvZmlsZTAyLmRhdCcKK0lOSVRJQUxfU0laRSAxTQorRU5HSU5FID0gTkRCOworCist LWVjaG8KKy0tZWNobyAjIC0tIENoZWNrIENSRUFURSBUQUJMRVNQQUNFLi4uCitDUkVBVEUgVEFC TEVTUEFDRSB0czEKK0FERCBEQVRBRklMRSAnZGF0YWZpbGUuZGF0JworVVNFIExPR0ZJTEUgR1JP VVAgbGcxCitJTklUSUFMX1NJWkUgMU0KK0VOR0lORSA9IE5EQjsKKworLS1lY2hvCistLWVjaG8g IyAtLSBDaGVjayBBTFRFUiBUQUJMRVNQQUNFLi4uCitBTFRFUiBUQUJMRVNQQUNFIHRzMQorRFJP UCBEQVRBRklMRSAnZGF0YWZpbGUuZGF0JworSU5JVElBTF9TSVpFIDFNCitFTkdJTkUgPSBOREI7 CisKKy0tZWNobworLS1lY2hvICMgLS0gQ29ubmVjdGlvbjogbXlzcWx0ZXN0X3UyQGxvY2FsaG9z dAorLS1lY2hvCistLWNvbm5lY3QoY29uMiwgbG9jYWxob3N0LCBteXNxbHRlc3RfdTIsLG15c3Fs dGVzdDIpCisKKy0tZWNobyAjIC0tIEdyYW50cyBmb3IgbXlzcWx0ZXN0X3UyQGxvY2FsaG9zdDoK K1NIT1cgR1JBTlRTOworCitDUkVBVEUgVEFCTEUgdDEoYyBJTlQpIFRBQkxFU1BBQ0UgdHMxOwor CitEUk9QIFRBQkxFIHQxOworCistLWVjaG8KKy0tZWNobyAjIC0tIENvbm5lY3Rpb246IG15c3Fs dGVzdF91MUBsb2NhbGhvc3QKKy0tZWNobworLS1jb25uZWN0aW9uIGNvbjEKKworLS1lY2hvCist LWVjaG8gIyAtLSBDaGVjayBEUk9QIFRBQkxFU1BBQ0UuLi4KK0RST1AgVEFCTEVTUEFDRSB0czEg CitFTkdJTkUgPSBOREI7CisKKy0tZWNobworLS1lY2hvICMgLS0gQ2hlY2sgRFJPUCBMT0dGSUxF IEdST1VQLi4uCitEUk9QIExPR0ZJTEUgR1JPVVAgbGcxIAorRU5HSU5FID0gTkRCOworCistLWVj aG8KKy0tZWNobyAjIC0tIENvbm5lY3Rpb246IHJvb3RAbG9jYWxob3N0CistLWVjaG8KKy0tY29u bmVjdGlvbiBkZWZhdWx0CistLWRpc2Nvbm5lY3QgY29uMQorCitEUk9QIFVTRVIgbXlzcWx0ZXN0 X3UxQGxvY2FsaG9zdDsKK0RST1AgVVNFUiBteXNxbHRlc3RfdTJAbG9jYWxob3N0OworCistLWVj aG8KKy0tZWNobyAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCistLWVjaG8gIyBFbmQgNi4wIHRlc3QKKy0tZWNobyAjIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9ycGwvci9ycGxfRUVf ZXJyLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9ycGwvci9ycGxfRUVfZXJyLnJlc3Vs dAkyMDA3LTA2LTI3IDEyOjI4OjAyICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvcnBsL3Iv cnBsX0VFX2Vyci5yZXN1bHQJMjAwOC0wNy0xNCAxMjo0OToxOSArMDAwMApAQCAtOCw0ICs4LDQg QEAgY3JlYXRlIHRhYmxlIHQxIChhIGludCkgZW5naW5lPW15aXNhbTsKIGZsdXNoIHRhYmxlczsK IGRyb3AgdGFibGUgaWYgZXhpc3RzIHQxOwogV2FybmluZ3M6Ci1FcnJvcgkyCUNhbid0IGZpbmQg ZmlsZTogJ3QxJyAoZXJybm86IDIpCitXYXJuaW5nCTIJQ2FuJ3QgZmluZCBmaWxlOiAndDEnIChl cnJubzogMikKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3QvY3R5cGVfbGRtbC50ZXN0 JwotLS0gYS9teXNxbC10ZXN0L3QvY3R5cGVfbGRtbC50ZXN0CTIwMDctMTAtMjIgMTE6NDM6MzIg KzAwMDAKKysrIGIvbXlzcWwtdGVzdC90L2N0eXBlX2xkbWwudGVzdAkyMDA4LTA3LTI0IDExOjMz OjM1ICswMDAwCkBAIC03NywzICs3NywyMSBAQCBzZWxlY3QgaGV4KGMxKSBhcyBoLCBjMSBmcm9t IHQxIG9yZGVyIGJ5CiBzZWxlY3QgZ3JvdXBfY29uY2F0KGhleChjMSkgb3JkZXIgYnkgaGV4KGMx KSkgZnJvbSB0MSBncm91cCBieSBjMTsKIHNlbGVjdCBncm91cF9jb25jYXQoYzEgb3JkZXIgYnkg aGV4KGMxKSBTRVBBUkFUT1IgJycpIGZyb20gdDEgZ3JvdXAgYnkgYzE7CiBkcm9wIHRhYmxlIHQx OworCisKKy0tIGVjaG8gVGhlIGZvbGxvd2luZyB0ZXN0cyBjaGVjayB0aGF0IHR3by1ieXRlIGNv bGxhdGlvbiBJRHMgd29yaworLS0gVGhlIGZpbGUgLi4vc3RkLWRhdGEvSW5kZXgueG1sIGhhcyBh IG51bWJlciBvZiBjb2xsYXRpb25zIHdpdGggaGlnaCBJRHMuCisKKyMgVGVzdCB0aGF0IHRoZSAi SUQiIGNvbHVtbiBpbiBJX1MgYW5kIFNIT1cgcXVlcmllcyBjYW4gaGFuZGxlIHR3byBieXRlcwor c2VsZWN0ICogZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEuY29sbGF0aW9ucyB3aGVyZSBpZD4yNTYg b3JkZXIgYnkgaWQ7CitzaG93IGNvbGxhdGlvbiBsaWtlICcldGVzdCUnOworCisjIFRlc3QgdGhh dCB0d28tYnl0ZSBjb2xsYXRpb24gSUQgaXMgY29ycmVjdGx5IHRyYW5zZmVyZWQgdG8gdGhlIGNs aWVudCBzaWRlLgorc2hvdyBjb2xsYXRpb24gbGlrZSAndWNzMl92bl9jaSc7CitjcmVhdGUgdGFi bGUgdDEgKGMxIGNoYXIoMSkgY2hhcmFjdGVyIHNldCB1Y3MyIGNvbGxhdGUgdWNzMl92bl9jaSk7 CitpbnNlcnQgaW50byB0MSB2YWx1ZXMgKDB4MDA2MSk7CistLWVuYWJsZV9tZXRhZGF0YQorc2V0 IEBAY2hhcmFjdGVyX3NldF9yZXN1bHRzPU5VTEw7CitzZWxlY3QgKiBmcm9tIHQxOworLS1kaXNh YmxlX21ldGFkYXRhCitkcm9wIHRhYmxlIHQxOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRl c3QvdC9mdW5jX2lmLnRlc3QnCi0tLSBhL215c3FsLXRlc3QvdC9mdW5jX2lmLnRlc3QJMjAwNy0w Mi0xMiAyMDo1OToyOSArMDAwMAorKysgYi9teXNxbC10ZXN0L3QvZnVuY19pZi50ZXN0CTIwMDgt MDctMzAgMTE6MDc6MzcgKzAwMDAKQEAgLTEwOCwzICsxMDgsNDYgQEAgZHJvcCB0YWJsZSB0MTsK IHNlbGVjdCBpZigwLCAxODQ0Njc0NDA3MzcwOTU1MTYxMCwgMTg0NDY3NDQwNzM3MDk1NTE2MTAp OwogCiAKKyMKKyMgQnVnICMzNzY2MjogbmVzdGVkIGlmKCkgaW5zaWRlIHN1bSgpIGlzIHBhcnNl ZCBpbiBleHBvbmVudGlhbCB0aW1lCisjCisKK0NSRUFURSBUQUJMRSB0MShhIERFQ0lNQUwoMTAs MykpOworCisjIGNoZWNrIDogc2hvdWxkIGJlIGZhc3QuIG1vcmUgdGhhbiBmZXcgc2VjcyBtZWFu cyBmYWlsdXJlLgorU0VMRUNUIHQxLmEsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYo KFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJP VU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5E KHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQx LmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEs Mik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9 MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSks IDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIs CisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisg SUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYo KFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJP VU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5E KHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQx LmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEs Mik9MSksIDIsCisgSUYoKFJPVU5EKHQxLmEsMik9MSksIDIsMCkpKSkpKSkpKSkpKSkpKSkpKSkp KSkpKSkpKSkpKSArIDEKK0ZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKy0tZWNobyBFbmQg b2YgNS4wIHRlc3RzCgo9PT0gYWRkZWQgZmlsZSAnbXlzcWwtdGVzdC90L2ltcGxpY2l0X2NvbW1p dC50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3QvaW1wbGljaXRfY29tbWl0LnRlc3QJMTk3MC0wMS0w MSAwMDowMDowMCArMDAwMAorKysgYi9teXNxbC10ZXN0L3QvaW1wbGljaXRfY29tbWl0LnRlc3QJ MjAwOC0wNy0yNyAxMzoxNDo0NiArMDAwMApAQCAtMCwwICsxLDExNzIgQEAKK3NvdXJjZSBpbmNs dWRlL2hhdmVfaW5ub2RiLmluYzsKK3NvdXJjZSBpbmNsdWRlL25vdF9lbWJlZGRlZC5pbmM7CisK K1NFVCBHTE9CQUwgRVZFTlRfU0NIRURVTEVSID0gT0ZGOworU0VUIEJJTkxPR19GT1JNQVQgPSBT VEFURU1FTlQ7CisKK0xFVCAkT0xEX0RCPSBgU0VMRUNUIERBVEFCQVNFKClgOworCitDUkVBVEUg REFUQUJBU0UgZGIxOworVVNFIGRiMTsKK0NSRUFURSBUQUJMRSB0MSAoYSBJTlQsIEtFWSBhKGEp KSBFTkdJTkU9SU5OT0RCOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgxKSwoMiksKDMpLCg0KSwo NSk7CitDUkVBVEUgVEFCTEUgdDMgKGEgSU5UKSBFTkdJTkU9TXlJU0FNOworSU5TRVJUIElOVE8g dDMgU0VMRUNUICogRlJPTSB0MTsKK0NSRUFURSBUQUJMRSB0cmFucyAoYSBJTlQpIEVOR0lORT1J Tk5PREI7CisKK0RFTElNSVRFUiB8OworCitDUkVBVEUgUFJPQ0VEVVJFIHRlc3RfaWZfY29tbWl0 KCkKK0JFR0lOCisgIFJPTExCQUNLOworICBTRUxFQ1QgSUYgKENPVU5UKCopID4gMCwgIllFUyIs ICJOTyIpIEFTICJJTVBMSUNJVCBDT01NSVQiIEZST00gdHJhbnM7CisgIERFTEVURSBGUk9NIHRy YW5zOworICBDT01NSVQ7CitFTkR8CisKK0RFTElNSVRFUiA7fAorCitTRVQgQVVUT0NPTU1JVCA9 IEZBTFNFOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NFTEVDVAorLS1lY2hvICMKKwor bGV0ICRzdGF0ZW1lbnQ9CisgIHNlbGVjdCAxIGFzIHJlcyBmcm9tIHQxIHdoZXJlICgxKSBpbiAo c2VsZWN0ICogZnJvbSB0MSk7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVy LmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9DUkVBVEVfVEFCTEUgTElLRQorLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGNyZWF0ZSB0YWJsZSB0MiBsaWtlIHQxOworc291 cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVj aG8gIyBTUUxDT01fU0hPV19DUkVBVEUKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBz aG93IGNyZWF0ZSB0YWJsZSB0MjsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxw ZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0RST1BfVEFCTEUKKy0tZWNobyAj CisKK2xldCAkc3RhdGVtZW50PQorICBkcm9wIHRhYmxlIHQyOworc291cmNlIGluY2x1ZGUvaW1w bGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQ1JF QVRFX1RBQkxFIFRFTVBPUkFSWQorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGNyZWF0 ZSB0ZW1wb3JhcnkgdGFibGUgdDIgYXMgc2VsZWN0ICogZnJvbSB0MTsKK3NvdXJjZSBpbmNsdWRl L2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09N X0RST1BfVEFCTEUgVEVNUE9SQVJZCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgZHJv cCB0ZW1wb3JhcnkgdGFibGUgdDI7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVs cGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9DUkVBVEVfVEFCTEUKKy0tZWNo byAjCisKK2xldCAkc3RhdGVtZW50PQorICBjcmVhdGUgdGFibGUgdDIgYXMgc2VsZWN0ICogZnJv bSB0MTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVj aG8gIworLS1lY2hvICMgU1FMQ09NX1VQREFURQorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9 CisgIHVwZGF0ZSB0MiBzZXQgYT1hKzEgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9tIHQxKTsK K3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIwor LS1lY2hvICMgU1FMQ09NX0lOU0VSVAorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGlu c2VydCBpbnRvIHQyIHNldCBhPSgoMSkgaW4gKHNlbGVjdCAqIGZyb20gdDEpKTsKK3NvdXJjZSBp bmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMg U1FMQ09NX0lOU0VSVF9TRUxFQ1QKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBpbnNl cnQgaW50byB0MiBzZWxlY3QgKiBmcm9tIHQxOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29t bWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fUkVQTEFDRQorLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHJlcGxhY2UgdDIgc2V0IGE9KCgxKSBpbiAoc2Vs ZWN0ICogZnJvbSB0MSkpOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5p bmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fUkVQTEFDRV9TRUxFQ1QKKy0tZWNobyAj CisKK2xldCAkc3RhdGVtZW50PQorICByZXBsYWNlIHQyIHNlbGVjdCAqIGZyb20gdDE7Citzb3Vy Y2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNo byAjIFNRTENPTV9ERUxFVEUKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBkZWxldGUg ZnJvbSB0MiB3aGVyZSAoMSkgaW4gKHNlbGVjdCAqIGZyb20gdDEpOworc291cmNlIGluY2x1ZGUv aW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01f REVMRVRFX01VTFRJCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgZGVsZXRlIHQyLCB0 MyBmcm9tIHQyLCB0MyB3aGVyZSAoMSkgaW4gKHNlbGVjdCAqIGZyb20gdDEpOworc291cmNlIGlu Y2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBT UUxDT01fVVBEQVRFX01VTFRJCistLWVjaG8gIworCitzZWxlY3QgKiBmcm9tIHQyOworbGV0ICRz dGF0ZW1lbnQ9CisgIHVwZGF0ZSB0MiwgdDMgc2V0IHQzLmE9dDIuYSwgdDIuYT1udWxsIHdoZXJl ICgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSk7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21t aXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9MT0FECistLWVjaG8g IworCitjcmVhdGUgdGFibGUgdDQgKGEgdmFyY2hhcigxMDApKTsKKworbGV0ICRzdGF0ZW1lbnQ9 CisgIGxvYWQgZGF0YSBpbmZpbGUgJy4uL3N0ZF9kYXRhX2xuL3dvcmRzLmRhdCcgaW50byB0YWJs ZSB0NDsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCitkcm9w IHRhYmxlIHQ0OworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfREFUQUJBU0VTCist LWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBkYXRhYmFzZXMgd2hlcmUgKDEpIGlu IChzZWxlY3QgKiBmcm9tIHQxKTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxw ZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfVEFCTEVTCistLWVjaG8g IworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyB0YWJsZXMgd2hlcmUgKDEpIGluIChzZWxlY3Qg KiBmcm9tIHQxKTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOwor CistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfRklFTERTCistLWVjaG8gIworCitsZXQg JHN0YXRlbWVudD0KKyAgc2hvdyBmaWVsZHMgZnJvbSB0MSB3aGVyZSAoMSkgaW4gKHNlbGVjdCAq IGZyb20gdDEpOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisK Ky0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fU0hPV19LRVlTCistLWVjaG8gIworCitsZXQgJHN0 YXRlbWVudD0KKyAgc2hvdyBrZXlzIGZyb20gdDEgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9t IHQxKTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVj aG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfVkFSSUFCTEVTCistLWVjaG8gIworCitsZXQgJHN0 YXRlbWVudD0KKyAgc2hvdyB2YXJpYWJsZXMgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9tIHQx KTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8g IworLS1lY2hvICMgU1FMQ09NX1NIT1dfU1RBVFVTCistLWVjaG8gIworCisjCisjIEJ1ZyMzNzkw OAorIworI2xldCAkc3RhdGVtZW50PQorIyAgc2hvdyBzdGF0dXMgd2hlcmUgKDEpIGluIChzZWxl Y3QgKiBmcm9tIHQxKTsKKyNzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmlu YzsKKyMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX0VOR0lORV9NVVRFWAorLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgZW5naW5lIGFsbCBtdXRleDsKK3NvdXJj ZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hv ICMgU1FMQ09NX1NIT1dfUFJPQ0VTU0xJU1QKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQor ICBzaG93IHByb2Nlc3NsaXN0Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBl ci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fU0hPV19FTkdJTkVfTE9HUworLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgZW5naW5lIGFsbCBsb2dzOworc291cmNl IGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8g IyBTUUxDT01fU0hPV19FTkdJTkVfU1RBVFVTCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0K KyAgc2hvdyBlbmdpbmUgYWxsIHN0YXR1czsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1p dF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfQ0hBUlNFVFMK Ky0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBzaG93IGNoYXJzZXQgd2hlcmUgKDEpIGlu IChzZWxlY3QgKiBmcm9tIHQxKTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxw ZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfQ09MTEFUSU9OUworLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgY29sbGF0aW9uIHdoZXJlICgxKSBpbiAo c2VsZWN0ICogZnJvbSB0MSk7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVy LmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX1RBQkxFX1NUQVRVUworLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgdGFibGUgc3RhdHVzIHdoZXJlICgxKSBp biAoc2VsZWN0ICogZnJvbSB0MSk7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVs cGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX1RSSUdHRVJTCistLWVj aG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyB0cmlnZ2VycyB3aGVyZSAoMSkgaW4gKHNl bGVjdCAqIGZyb20gdDEpOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5p bmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fU0hPV19PUEVOX1RBQkxFUworLS1lY2hv ICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgb3BlbiB0YWJsZXMgd2hlcmUgKDEpIGluIChz ZWxlY3QgKiBmcm9tIHQxKTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIu aW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfU1RBVFVTX1BST0MKKy0tZWNo byAjCisKKyMKKyMgQnVnIzM3OTA4CisjCisjbGV0ICRzdGF0ZW1lbnQ9CisjICBzaG93IHByb2Nl ZHVyZSBzdGF0dXMgd2hlcmUgKDEpIGluIChzZWxlY3QgKiBmcm9tIHQxKTsKKyNzb3VyY2UgaW5j bHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKyMKKworLS1lY2hvICMKKy0tZWNobyAj IFNRTENPTV9TSE9XX1NUQVRVU19GVU5DCistLWVjaG8gIworCisjCisjIEJ1ZyMzNzkwOAorIwor I2xldCAkc3RhdGVtZW50PQorIyAgc2hvdyBmdW5jdGlvbiBzdGF0dXMgd2hlcmUgKDEpIGluIChz ZWxlY3QgKiBmcm9tIHQxKTsKKyNzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVy LmluYzsKKyMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TRVRfT1BUSU9OCistLWVjaG8g IworCitsZXQgJHN0YXRlbWVudD0KKyAgc2V0IEBhPSgoMSkgaW4gKHNlbGVjdCAqIGZyb20gdDEp KTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8g IworLS1lY2hvICMgU1FMQ09NX0RPCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgZG8g KCgxKSBpbiAoc2VsZWN0ICogZnJvbSB0MSkpOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29t bWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQ0FMTAorLS1lY2hv ICMKKworY3JlYXRlIHByb2NlZHVyZSBwMShhIGludCkgYmVnaW4gZW5kOworCisjCisjIEJ1ZyMz Nzk0OQorIworI2xldCAkc3RhdGVtZW50PQorIyAgY2FsbCBwMSgoMSkgaW4gKHNlbGVjdCAqIGZy b20gdDEpKTsKKyNzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKyMK KworZHJvcCBwcm9jZWR1cmUgcDE7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQ1JFQVRF X1ZJRVcKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBjcmVhdGUgdmlldyB2MSBhcyBz ZWxlY3QgKiBmcm9tIHQxOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5p bmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQUxURVJfVklFVworLS1lY2hvICMKKwor bGV0ICRzdGF0ZW1lbnQ9CisgIGFsdGVyIHZpZXcgdjEgYXMgc2VsZWN0IDI7Citzb3VyY2UgaW5j bHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNR TENPTV9EUk9QX1ZJRVcKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBkcm9wIHZpZXcg djE7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hv ICMKKy0tZWNobyAjIFNRTENPTV9DUkVBVEVfSU5ERVgKKy0tZWNobyAjCisKK2xldCAkc3RhdGVt ZW50PQorICBjcmVhdGUgaW5kZXggaWR4MSBvbiB0MShhKTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxp Y2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0RST1Bf SU5ERVgKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBkcm9wIGluZGV4IGlkeDEgb24g dDE7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hv ICMKKy0tZWNobyAjIFNRTENPTV9BTFRFUl9UQUJMRQorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1l bnQ9CisgIGFsdGVyIHRhYmxlIHQxIGFkZCBjb2x1bW4gYiBpbnQ7Citzb3VyY2UgaW5jbHVkZS9p bXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGFsdGVyIHRh YmxlIHQxIGNoYW5nZSBiIGMgaW50Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hl bHBlci5pbmM7CisKK2xldCAkc3RhdGVtZW50PQorICBhbHRlciB0YWJsZSB0MSBkcm9wIGNvbHVt biBjOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNo byAjCistLWVjaG8gIyBTUUxDT01fQUxURVJfVEFCTEUgVEVNUE9SQVJZCistLWVjaG8gIworCitj cmVhdGUgdGVtcG9yYXJ5IHRhYmxlIHQ0IChhIGludCk7CisKK2xldCAkc3RhdGVtZW50PQorICBh bHRlciB0YWJsZSB0MSBhZGQgY29sdW1uIGIgaW50Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRf Y29tbWl0X2hlbHBlci5pbmM7CisKK2xldCAkc3RhdGVtZW50PQorICBhbHRlciB0YWJsZSB0MSBj aGFuZ2UgYiBjIGludDsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5j OworCitsZXQgJHN0YXRlbWVudD0KKyAgYWx0ZXIgdGFibGUgdDEgZHJvcCBjb2x1bW4gYzsKK3Nv dXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCitkcm9wIHRhYmxlIHQ0 OworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1RSVU5DQVRFCistLWVjaG8gIworCitpbnNl cnQgaW50byB0MiBzZWxlY3QgKiBmcm9tIHQxOworbGV0ICRzdGF0ZW1lbnQ9CisgIHRydW5jYXRl IHRhYmxlIHQyOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7Citp bnNlcnQgaW50byB0MiBzZWxlY3QgKiBmcm9tIHQxOworCistLWVjaG8gIworLS1lY2hvICMgU1FM Q09NX1RSVU5DQVRFIFRFTVBPUkFSWQorLS1lY2hvICMKKworY3JlYXRlIHRlbXBvcmFyeSB0YWJs ZSB0NCBhcyBzZWxlY3QgKiBmcm9tIHQxOworbGV0ICRzdGF0ZW1lbnQ9CisgIHRydW5jYXRlIHRh YmxlIHQ0Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7Citkcm9w IHRlbXBvcmFyeSB0YWJsZSB0NDsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX01B U1RFUl9TVEFUCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBtYXN0ZXIgc3Rh dHVzOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNo byAjCistLWVjaG8gIyBTUUxDT01fU0hPV19TTEFWRV9TVEFUCistLWVjaG8gIworCitsZXQgJHN0 YXRlbWVudD0KKyAgc2hvdyBzbGF2ZSBzdGF0dXM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9j b21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9HUkFOVAorLS1l Y2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGdyYW50IGFsbCBvbiB0ZXN0LnQxIHRvIG15c3Fs dGVzdF8yQGxvY2FsaG9zdCB3aXRoIGdyYW50IG9wdGlvbjsKK3NvdXJjZSBpbmNsdWRlL2ltcGxp Y2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1JFVk9L RQorLS1lY2hvICMKK2xldCAkc3RhdGVtZW50PQorICByZXZva2Ugc2VsZWN0IG9uIHRlc3QudDEg ZnJvbSBteXNxbHRlc3RfMkBsb2NhbGhvc3Q7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21t aXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9SRVZPS0VfQUxMCist LWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgcmV2b2tlIGFsbCBvbiB0ZXN0LnQxIGZyb20g bXlzcWx0ZXN0XzJAbG9jYWxob3N0Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hl bHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fU0hPV19HUkFOVFMKKy0tZWNo byAjCisKK2xldCAkc3RhdGVtZW50PQorICBzaG93IGdyYW50czsKK3NvdXJjZSBpbmNsdWRlL2lt cGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBncmFu dHMgZm9yIGN1cnJlbnRfdXNlcigpOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hl bHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fTE9DS19UQUJMRVMKKy0tZWNo byAjCisKK2xldCAkc3RhdGVtZW50PQorICBsb2NrIHRhYmxlcyB0MSB3cml0ZSwgdHJhbnMgd3Jp dGU7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hv ICMKKy0tZWNobyAjIFNRTENPTV9VTkxPQ0tfVEFCTEVTCistLWVjaG8gIworCitsZXQgJHN0YXRl bWVudD0KKyAgdW5sb2NrIHRhYmxlczsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9o ZWxwZXIuaW5jOworCisjCisjIE1pc3NpbmcgdGVzdCBmb3IgbG9jayB0YWJsZXMgdHJhbnNhY3Rp b25hbC4KKyMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9DUkVBVEVfREIKKy0tZWNobyAj CisKK2xldCAkc3RhdGVtZW50PQorICBjcmVhdGUgZGF0YWJhc2UgZGIyOworc291cmNlIGluY2x1 ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxD T01fQ0hBTkdFX0RCCistLWVjaG8gIworCitjcmVhdGUgdGFibGUgZGIyLnQxIChhIGludCk7Citp bnNlcnQgaW50byBkYjIudDEgdmFsdWVzICgxKTsKK2NvbW1pdDsKKworbGV0ICRzdGF0ZW1lbnQ9 CisgIHVzZSBkYjI7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsK KworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX0NSRUFURV9EQgorLS1lY2hvICMKKwor bGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgY3JlYXRlIGRhdGFiYXNlIGRiMjsKK3NvdXJjZSBpbmNs dWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FM Q09NX0FMVEVSX0RCCistLWVjaG8gIworCisjbGV0ICRzdGF0ZW1lbnQ9CisjICBhbHRlciBkYXRh YmFzZSBkYjIgY2hhcmFjdGVyIHNldCBrb2k4cjsKKyNzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9j b21taXRfaGVscGVyLmluYzsKKworI2xldCAkc3RhdGVtZW50PQorIyAgYWx0ZXIgZGF0YWJhc2Ug ZGIyIGNvbGxhdGUgY3AxMjUxX2dlbmVyYWxfY3M7Cisjc291cmNlIGluY2x1ZGUvaW1wbGljaXRf Y29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQUxURVJfREJf VVBHUkFERQorLS1lY2hvICMKKworI2xldCAkc3RhdGVtZW50PQorIyAgYWx0ZXIgZGF0YWJhc2Ug YCNteXNxbDUwI2RiM2AgdXBncmFkZSBkYXRhIGRpcmVjdG9yeSBuYW1lOworI3NvdXJjZSBpbmNs dWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FM Q09NX0RST1BfREIKKy0tZWNobyAjCisKK3VzZSBkYjE7CisKK2xldCAkc3RhdGVtZW50PQorICBk cm9wIGRhdGFiYXNlIGRiMjsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIu aW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1JFUEFJUgorLS1lY2hvICMKKworbGV0 ICRzdGF0ZW1lbnQ9CisgIHJlcGFpciB0YWJsZSB0MjsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0 X2NvbW1pdF9oZWxwZXIuaW5jOworCitsZXQgJHN0YXRlbWVudD0KKyAgcmVwYWlyIHRhYmxlIHQy IHVzZV9mcm07Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKwor LS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9PUFRJTUlaRQorLS1lY2hvICMKKworbGV0ICRzdGF0 ZW1lbnQ9CisgIG9wdGltaXplIHRhYmxlIHQxOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29t bWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQ0hFQ0sKKy0tZWNo byAjCisKK2xldCAkc3RhdGVtZW50PQorICBjaGVjayB0YWJsZSB0MTsKK3NvdXJjZSBpbmNsdWRl L2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCitsZXQgJHN0YXRlbWVudD0KKyAgY2hlY2sg dGFibGUgdDEgZXh0ZW5kZWQ7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVy LmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9BU1NJR05fVE9fS0VZQ0FDSEUKKy0t ZWNobyAjCisKK3NldCBnbG9iYWwga2V5Y2FjaGUua2V5X2J1ZmZlcl9zaXplPTEyOCoxMDI0Owor CitsZXQgJHN0YXRlbWVudD0KKyAgY2FjaGUgaW5kZXggdDMgaW4ga2V5Y2FjaGU7Citzb3VyY2Ug aW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworc2V0IGdsb2JhbCBrZXljYWNo ZS5rZXlfYnVmZmVyX3NpemU9MDsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9QUkVMT0FE X0tFWVMKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBsb2FkIGluZGV4IGludG8gY2Fj aGUgdDM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1l Y2hvICMKKy0tZWNobyAjIFNRTENPTV9GTFVTSAorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9 CisgIGZsdXNoIGxvY2FsIHByaXZpbGVnZXM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21t aXRfaGVscGVyLmluYzsKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGZsdXNoIHByaXZpbGVnZXM7Citz b3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0t ZWNobyAjIFNRTENPTV9LSUxMCistLWVjaG8gIworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09N X0FOQUxZWkUKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBhbmFseXplIHRhYmxlIHQx Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAj CistLWVjaG8gIyBTUUxDT01fUk9MTEJBQ0sKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQor ICByb2xsYmFjazsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOwor CistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1JPTExCQUNLX1RPX1NBVkVQT0lOVAorLS1lY2hv ICMKKworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0NPTU1JVAorLS1lY2hvICMKKworbGV0 ICRzdGF0ZW1lbnQ9CisgIGNvbW1pdDsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9o ZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NBVkVQT0lOVAorLS1lY2hv ICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNhdmVwb2ludCBzcDE7Citzb3VyY2UgaW5jbHVkZS9p bXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9S RUxFQVNFX1NBVkVQT0lOVAorLS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9T TEFWRV9TVEFSVAorLS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TTEFWRV9T VE9QCistLWVjaG8gIworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0JFR0lOCistLWVjaG8g IworCitsZXQgJHN0YXRlbWVudD0KKyAgYmVnaW47Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9j b21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9DSEFOR0VfTUFT VEVSCistLWVjaG8gIworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1JFTkFNRV9UQUJMRQor LS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHJlbmFtZSB0YWJsZSB0MyB0byB0NDsKK3Nv dXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCitsZXQgJHN0YXRlbWVu dD0KKyAgcmVuYW1lIHRhYmxlIHQ0IHRvIHQzOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29t bWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fUkVTRVQKKy0tZWNo byAjCisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fUFVSR0UKKy0tZWNobyAjCisKKy0tZWNo byAjCistLWVjaG8gIyBTUUxDT01fUFVSR0VfQkVGT1JFCistLWVjaG8gIworCistLWVjaG8gIwor LS1lY2hvICMgU1FMQ09NX1NIT1dfQklOTE9HUworLS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNo byAjIFNRTENPTV9IQV9PUEVOCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgaGFuZGxl ciB0MSBvcGVuIGFzIGhhMTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIu aW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0hBX1JFQUQKKy0tZWNobyAjCisKK2xl dCAkc3RhdGVtZW50PQorICBoYW5kbGVyIGhhMSByZWFkIGEgZmlyc3Q7Citzb3VyY2UgaW5jbHVk ZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENP TV9IQV9DTE9TRQorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGhhbmRsZXIgaGExIGNs b3NlOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNo byAjCistLWVjaG8gIyBTUUxDT01fU0hPV19TTEFWRV9IT1NUUworLS1lY2hvICMKKworbGV0ICRz dGF0ZW1lbnQ9CisgIHNob3cgc2xhdmUgaG9zdHM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9j b21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX0JJTkxP R19FVkVOVFMKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBzaG93IGJpbmxvZyBldmVu dHM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hv ICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX05FV19NQVNURVIKKy0tZWNobyAjCisKKy0tZWNobyAj CistLWVjaG8gIyBTUUxDT01fU0hPV19XQVJOUworLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9 CisgIHNob3cgd2FybmluZ3M7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVy LmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9FTVBUWV9RVUVSWQorLS1lY2hvICMK KworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX0VSUk9SUworLS1lY2hvICMKKworbGV0 ICRzdGF0ZW1lbnQ9CisgIHNob3cgZXJyb3JzOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29t bWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fU0hPV19TVE9SQUdF X0VOR0lORVMKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBzaG93IGVuZ2luZXM7Citz b3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0t ZWNobyAjIFNRTENPTV9TSE9XX1BSSVZJTEVHRVMKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50 PQorICBzaG93IHByaXZpbGVnZXM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVs cGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9IRUxQCistLWVjaG8gIworCits ZXQgJHN0YXRlbWVudD0KKyAgaGVscCAnZm9vJzsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2Nv bW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0NSRUFURV9VU0VS CistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgY3JlYXRlIHVzZXIgdHJ4dXNyMTsKK3Nv dXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1l Y2hvICMgU1FMQ09NX1JFTkFNRV9VU0VSCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAg cmVuYW1lIHVzZXIgJ3RyeHVzcjEnIHRvICd0cnh1c3IyJzsKK3NvdXJjZSBpbmNsdWRlL2ltcGxp Y2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0RST1Bf VVNFUgorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGRyb3AgdXNlciB0cnh1c3IyOwor c291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAjCist LWVjaG8gIyBTUUxDT01fQ0hFQ0tTVU0KKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBj aGVja3N1bSB0YWJsZSB0MTsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIu aW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0NSRUFURV9QUk9DRURVUkUKKy0tZWNo byAjCisKK2xldCAkc3RhdGVtZW50PQorICBjcmVhdGUgcHJvY2VkdXJlIHAxKGEgaW50KSBiZWdp biBlbmQ7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1l Y2hvICMKKy0tZWNobyAjIFNRTENPTV9BTFRFUl9QUk9DRURVUkUKKy0tZWNobyAjCisKK2xldCAk c3RhdGVtZW50PQorICBhbHRlciBwcm9jZWR1cmUgcDEgY29tbWVudCAnZm9vYmFyJzsKK3NvdXJj ZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hv ICMgU1FMQ09NX1NIT1dfQ1JFQVRFX1BST0MKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQor ICBzaG93IGNyZWF0ZSBwcm9jZWR1cmUgcDE7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21t aXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX1NUQVRVU19Q Uk9DCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBwcm9jZWR1cmUgc3RhdHVz Oworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0tZWNobyAj CistLWVjaG8gIyBTUUxDT01fU0hPV19QUk9DX0NPREUKKy0tZWNobyAjCisKKyMKKyMgQXZhaWxh YmxlIG9ubHkgb24gc2VydmVycyB3aXRoIGRlYnVnZ2luZyBzdXBwb3J0LgorIworCistLWRpc2Fi bGVfYWJvcnRfb25fZXJyb3IKK2xldCAkc3RhdGVtZW50PQorICBzaG93IHByb2NlZHVyZSBjb2Rl IHAxOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CistLWVuYWJs ZV9hYm9ydF9vbl9lcnJvcgorCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX0RST1BfUFJPQ0VE VVJFCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgZHJvcCBwcm9jZWR1cmUgcDE7Citz b3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0t ZWNobyAjIFNRTENPTV9DUkVBVEVfRlVOQ1RJT04KKy0tZWNobyAjCisKKy0tZWNobyAjCistLWVj aG8gIyBTUUxDT01fRFJPUF9GVU5DVElPTgorLS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNobyAj IFNRTENPTV9DUkVBVEVfU1BGVU5DVElPTgorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9Cisg IGNyZWF0ZSBmdW5jdGlvbiBmMSgpIHJldHVybnMgaW50IHJldHVybiA2OTsKK3NvdXJjZSBpbmNs dWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FM Q09NX0FMVEVSX0ZVTkNUSU9OCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgYWx0ZXIg ZnVuY3Rpb24gZjEgY29tbWVudCAnY29tbWVudCc7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9j b21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX0NSRUFU RV9GVU5DCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBjcmVhdGUgZnVuY3Rp b24gZjE7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1l Y2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX1NUQVRVU19GVU5DCistLWVjaG8gIworCitsZXQg JHN0YXRlbWVudD0KKyAgc2hvdyBmdW5jdGlvbiBzdGF0dXMgbGlrZSAnJWYlJzsKK3NvdXJjZSBp bmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMg U1FMQ09NX1NIT1dfRlVOQ19DT0RFCistLWVjaG8gIworCisjCisjIEF2YWlsYWJsZSBvbmx5IG9u IHNlcnZlcnMgd2l0aCBkZWJ1Z2dpbmcgc3VwcG9ydC4KKyMKKworLS1kaXNhYmxlX2Fib3J0X29u X2Vycm9yCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBmdW5jdGlvbiBjb2RlIGYxOworc291cmNl IGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CistLWVuYWJsZV9hYm9ydF9vbl9l cnJvcgorCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1BSRVBBUkUKKy0tZWNobyAjCisKK2xl dCAkc3RhdGVtZW50PQorICBwcmVwYXJlIHN0bXQxIGZyb20gImluc2VydCBpbnRvIHQxIHZhbHVl cyAoNSkiOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7CisKKy0t ZWNobyAjCistLWVjaG8gIyBTUUxDT01fRVhFQ1VURQorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1l bnQ9CisgIGV4ZWN1dGUgc3RtdDE7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVs cGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9ERUFMTE9DQVRFX1BSRVBBUkUK Ky0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBkZWFsbG9jYXRlIHByZXBhcmUgc3RtdDE7 Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMK Ky0tZWNobyAjIFNRTENPTV9DUkVBVEVfVFJJR0dFUgorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1l bnQ9CisgIGNyZWF0ZSB0cmlnZ2VyIHRyZzEgYmVmb3JlIGluc2VydCBvbiB0MSBmb3IgZWFjaCBy b3cgc2V0IEBhOj0xOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5pbmM7 CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fU0hPV19DUkVBVEVfVFJJR0dFUgorLS1lY2hv ICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIHNob3cgY3JlYXRlIHRyaWdnZXIgdHJnMTsKK3NvdXJj ZSBpbmNsdWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hv ICMgU1FMQ09NX0RST1BfVFJJR0dFUgorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9CisgIGRy b3AgdHJpZ2dlciB0cmcxOworc291cmNlIGluY2x1ZGUvaW1wbGljaXRfY29tbWl0X2hlbHBlci5p bmM7CisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fWEFfU1RBUlQKKy0tZWNobyAjCisKKy0t ZWNobyAjCistLWVjaG8gIyBTUUxDT01fWEFfRU5ECistLWVjaG8gIworCistLWVjaG8gIworLS1l Y2hvICMgU1FMQ09NX1hBX1BSRVBBUkUKKy0tZWNobyAjCisKKy0tZWNobyAjCistLWVjaG8gIyBT UUxDT01fWEFfQ09NTUlUCistLWVjaG8gIworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1hB X1JPTExCQUNLCistLWVjaG8gIworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1hBX1JFQ09W RVIKKy0tZWNobyAjCisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fQUxURVJfVEFCTEVTUEFD RQorLS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9JTlNUQUxMX1BMVUdJTgor LS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX1BMVUdJTlMKKy0tZWNo byAjCisKKy0tZWNobyAjCistLWVjaG8gIyBTUUxDT01fVU5JTlNUQUxMX1BMVUdJTgorLS1lY2hv ICMKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX0FVVEhPUlMKKy0tZWNobyAjCisK K2xldCAkc3RhdGVtZW50PQorICBzaG93IGF1dGhvcnM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNp dF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9CSU5MT0df QkFTRTY0X0VWRU5UCistLWVjaG8gIworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1df Q09OVFJJQlVUT1JTCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBjb250cmli dXRvcnM7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1l Y2hvICMKKy0tZWNobyAjIFNRTENPTV9DUkVBVEVfU0VSVkVSCistLWVjaG8gIworCistLWVjaG8g IworLS1lY2hvICMgU1FMQ09NX0FMVEVSX1NFUlZFUgorLS1lY2hvICMKKworLS1lY2hvICMKKy0t ZWNobyAjIFNRTENPTV9EUk9QX1NFUlZFUgorLS1lY2hvICMKKworLS1lY2hvICMKKy0tZWNobyAj IFNRTENPTV9DUkVBVEVfRVZFTlQKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50PQorICBjcmVh dGUgZXZlbnQgZXYxIG9uIHNjaGVkdWxlIGV2ZXJ5IDEgc2Vjb25kIGRvIGluc2VydCBpbnRvIHQx IHZhbHVlcyAoNik7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsK KworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9BTFRFUl9FVkVOVAorLS1lY2hvICMKKworbGV0 ICRzdGF0ZW1lbnQ9CisgIGFsdGVyIGV2ZW50IGV2MSByZW5hbWUgdG8gZXYyIGRpc2FibGU7Citz b3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0t ZWNobyAjIFNRTENPTV9TSE9XX0NSRUFURV9FVkVOVAorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1l bnQ9CisgIHNob3cgY3JlYXRlIGV2ZW50IGV2MjsKK3NvdXJjZSBpbmNsdWRlL2ltcGxpY2l0X2Nv bW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FMQ09NX1NIT1dfRVZFTlRT CistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBldmVudHM7Citzb3VyY2UgaW5j bHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNR TENPTV9EUk9QX0VWRU5UCistLWVjaG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgZHJvcCBldmVu dCBldjI7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKworLS1l Y2hvICMKKy0tZWNobyAjIFNRTENPTV9CQUNLVVAKKy0tZWNobyAjCisKK2xldCAkc3RhdGVtZW50 PQorICBiYWNrdXAgZGF0YWJhc2UgZGIxIHRvICdiYWNrdXBfZGIxLmJhJzsKK3NvdXJjZSBpbmNs dWRlL2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLWVjaG8gIworLS1lY2hvICMgU1FM Q09NX1NIT1dfQVJDSElWRQorLS1lY2hvICMKKworIworIyAtLWVycm9yIEVSX05PVF9BTExPV0VE X0NPTU1BTkQKKyMKKyNsZXQgJHN0YXRlbWVudD0KKyMgIHNob3cgYmFja3VwICdiYWNrdXBfZGIx LmJhJzsKKyNzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVscGVyLmluYzsKKyMKKwor LS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9SRVNUT1JFCistLWVjaG8gIworCitsZXQgJHN0YXRl bWVudD0KKyAgcmVzdG9yZSBmcm9tICdiYWNrdXBfZGIxLmJhJzsKK3NvdXJjZSBpbmNsdWRlL2lt cGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCistLXJlbW92ZV9maWxlICRNWVNRTFRFU1RfVkFS RElSL21hc3Rlci1kYXRhL2JhY2t1cF9kYjEuYmEKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENP TV9CQUNLVVBfVEVTVAorLS1lY2hvICMKKworIyBCQUNLVVBfVEVTVAorCistLWVjaG8gIworLS1l Y2hvICMgU1FMQ09NX1NIT1dfUFJPRklMRQorLS1lY2hvICMKKworbGV0ICRzdGF0ZW1lbnQ9Cisg IHNob3cgcHJvZmlsZSBtZW1vcnk7Citzb3VyY2UgaW5jbHVkZS9pbXBsaWNpdF9jb21taXRfaGVs cGVyLmluYzsKKworLS1lY2hvICMKKy0tZWNobyAjIFNRTENPTV9TSE9XX1BST0ZJTEVTCistLWVj aG8gIworCitsZXQgJHN0YXRlbWVudD0KKyAgc2hvdyBwcm9maWxlczsKK3NvdXJjZSBpbmNsdWRl L2ltcGxpY2l0X2NvbW1pdF9oZWxwZXIuaW5jOworCitEUk9QIFRBQkxFIHQxOworRFJPUCBUQUJM RSB0MjsKK0RST1AgVEFCTEUgdDM7CitldmFsIFVTRSAkT0xEX0RCOworRFJPUCBEQVRBQkFTRSBk YjE7CisKKy0tZWNobyBFbmQgb2YgdGVzdHMKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0 L3QvcGVycm9yLnRlc3QnCi0tLSBhL215c3FsLXRlc3QvdC9wZXJyb3IudGVzdAkyMDA2LTA4LTAx IDA5OjI5OjEwICswMDAwCisrKyBiL215c3FsLXRlc3QvdC9wZXJyb3IudGVzdAkyMDA4LTA4LTA1 IDIzOjI2OjE4ICswMDAwCkBAIC0xNywzICsxNywxNyBAQCBlbmFibGVfcXVlcnlfbG9nOwogIyBB cyB0aGVyZSBpcyBubyBlcnJvciBjb2RlIGRlZmluZWQgZm9yIDEwMDAwLCBleHBlY3QgZXJyb3IK IC0tZXJyb3IgMQogLS1leGVjICRNWV9QRVJST1IgMTAwMDAgMj4mMQorCisjCisjIEJ1ZyMxMDE0 MyAoUGVycm9yIG5vdCBzaG93aW5nIGVycm9yIGRlc2NyaXB0aW9uKQorIworCisjIHRlc3QgcmVw b3J0ZWQgY2FzZQorLS1leGVjICRNWV9QRVJST1IgMTA2MiAyPiYxCisKKyMgdGVzdCBlcnJvcnMg dGhhdCBjb250YWluIGNoYXJhY3RlcnMgdG8gZXNjYXBlIGluIHRoZSB0ZXh0LgorLS1leGVjICRN WV9QRVJST1IgMTA3NiAyPiYxCistLWV4ZWMgJE1ZX1BFUlJPUiAxNDU5IDI+JjEKKy0tZXhlYyAk TVlfUEVSUk9SIDE0NjEgMj4mMQorCisKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3Qv c3Vic2VsZWN0LnRlc3QnCi0tLSBhL215c3FsLXRlc3QvdC9zdWJzZWxlY3QudGVzdAkyMDA4LTA3 LTEwIDIzOjI5OjI3ICswMDAwCisrKyBiL215c3FsLXRlc3QvdC9zdWJzZWxlY3QudGVzdAkyMDA4 LTA3LTMxIDExOjM3OjA3ICswMDAwCkBAIC0zNDQzLDcgKzM0NDMsMjEgQEAgU0VMRUNUICogRlJP TSB0MiBXSEVSRSBiIE5PVCBJTiAoU0VMRUNUIAogCiBEUk9QIFRBQkxFIHQxLHQyOwogCi0tLWVj aG8gRW5kIG9mIDUuMCB0ZXN0cy4KKworIworIyBCdWcgIzM4MTkxOiBTZXJ2ZXIgY3Jhc2ggd2l0 aCBzdWJxdWVyeSBjb250YWluaW5nIERJU1RJTkNUIGFuZCBPUkRFUiBCWQorIworCitDUkVBVEUg VEFCTEUgdDEocGsgaW50IFBSSU1BUlkgS0VZLCBhIGludCwgSU5ERVggaWR4KGEpKTsKK0lOU0VS VCBJTlRPIHQxIFZBTFVFUyAoMSwgMTApLCAoMywgMzApLCAoMiwgMjApOworQ1JFQVRFIFRBQkxF IHQyKHBrIGludCBQUklNQVJZIEtFWSwgYSBpbnQsIGIgaW50LCBJTkRFWCBpZHhhKGEpKTsKK0lO U0VSVCBJTlRPIHQyIFZBTFVFUyAoMiwgMjAsIDcwMCksICgxLCAxMCwgMjAwKSwgKDQsIDEwLCAx MDApOworU0VMRUNUICogRlJPTSB0MQorICAgV0hFUkUgRVhJU1RTIChTRUxFQ1QgRElTVElOQ1Qg YSBGUk9NIHQyIFdIRVJFIHQxLmEgPCB0Mi5hIE9SREVSIEJZIGIpOworRFJPUCBUQUJMRSB0MSx0 MjsKKworLS1lY2hvIEVuZCBvZiA1LjEgdGVzdHMuCisKIAogIwogIyBCdWcjMzMyMDQ6IElOVE8g aXMgYWxsb3dlZCBpbiBzdWJzZWxlY3QsIGNhdXNpbmcgaW5jb25zaXN0ZW50IHJlc3VsdHMKCj09 PSBtb2RpZmllZCBmaWxlICdteXN5cy9jaGFyc2V0LmMnCi0tLSBhL215c3lzL2NoYXJzZXQuYwky MDA4LTAyLTE5IDIxOjUzOjMzICswMDAwCisrKyBiL215c3lzL2NoYXJzZXQuYwkyMDA4LTA3LTI0 IDExOjMzOjM1ICswMDAwCkBAIC00MTAsNyArNDEwLDcgQEAgY2hhciAqZ2V0X2NoYXJzZXRzX2Rp cihjaGFyICpidWYpCiAgIERCVUdfUkVUVVJOKHJlcyk7CiB9CiAKLUNIQVJTRVRfSU5GTyAqYWxs X2NoYXJzZXRzWzI1Nl07CitDSEFSU0VUX0lORk8gKmFsbF9jaGFyc2V0c1tNWV9BTExfQ0hBUlNF VFNfU0laRV07CiBDSEFSU0VUX0lORk8gKmRlZmF1bHRfY2hhcnNldF9pbmZvID0gJm15X2NoYXJz ZXRfbGF0aW4xOwogCiB2b2lkIGFkZF9jb21waWxlZF9jb2xsYXRpb24oQ0hBUlNFVF9JTkZPICpj cykKCj09PSBtb2RpZmllZCBmaWxlICdzY3JpcHRzL215c3FsX3N5c3RlbV90YWJsZXMuc3FsJwot LS0gYS9zY3JpcHRzL215c3FsX3N5c3RlbV90YWJsZXMuc3FsCTIwMDgtMDctMDkgMTg6Mzc6NDIg KzAwMDAKKysrIGIvc2NyaXB0cy9teXNxbF9zeXN0ZW1fdGFibGVzLnNxbAkyMDA4LTA4LTA3IDAz OjA1OjMzICswMDAwCkBAIC0xMyw3ICsxMyw3IEBAIHNldCBAaGFkX2RiX3RhYmxlPSBAQHdhcm5p bmdfY291bnQgIT0gMDsKIENSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIGhvc3QgKCAgSG9zdCBj aGFyKDYwKSBiaW5hcnkgREVGQVVMVCAnJyBOT1QgTlVMTCwgRGIgY2hhcig2NCkgYmluYXJ5IERF RkFVTFQgJycgTk9UIE5VTEwsIFNlbGVjdF9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4 X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIEluc2VydF9wcml2IGVudW0oJ04nLCdZ JykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIFVwZGF0ZV9w cml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9U IE5VTEwsIERlbGV0ZV9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kg REVGQVVMVCAnTicgTk9UIE5VTEwsIENyZWF0ZV9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1 dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIERyb3BfcHJpdiBlbnVtKCdOJywn WScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBHcmFudF9w cml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9U IE5VTEwsIFJlZmVyZW5jZXNfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFs X2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBJbmRleF9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFU RSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIEFsdGVyX3ByaXYgZW51bSgn TicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgQ3Jl YXRlX3RtcF90YWJsZV9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kg REVGQVVMVCAnTicgTk9UIE5VTEwsIExvY2tfdGFibGVzX3ByaXYgZW51bSgnTicsJ1knKSBDT0xM QVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgQ3JlYXRlX3ZpZXdfcHJp diBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBO VUxMLCBTaG93X3ZpZXdfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2Np IERFRkFVTFQgJ04nIE5PVCBOVUxMLCBDcmVhdGVfcm91dGluZV9wcml2IGVudW0oJ04nLCdZJykg Q09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIEFsdGVyX3JvdXRp bmVfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04n IE5PVCBOVUxMLCBFeGVjdXRlX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJh bF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgVHJpZ2dlcl9wcml2IGVudW0oJ04nLCdZJykgQ09M TEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIFBSSU1BUlkgS0VZIEhv c3QgKEhvc3QsRGIpICkgZW5naW5lPU15SVNBTSBDSEFSQUNURVIgU0VUIHV0ZjggQ09MTEFURSB1 dGY4X2JpbiBjb21tZW50PSdIb3N0IHByaXZpbGVnZXM7ICBNZXJnZWQgd2l0aCBkYXRhYmFzZSBw cml2aWxlZ2VzJzsKIAogCi1DUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyB1c2VyICggICBIb3N0 IGNoYXIoNjApIGJpbmFyeSBERUZBVUxUICcnIE5PVCBOVUxMLCBVc2VyIGNoYXIoMTYpIGJpbmFy eSBERUZBVUxUICcnIE5PVCBOVUxMLCBQYXNzd29yZCBjaGFyKDQxKSBjaGFyYWN0ZXIgc2V0IGxh dGluMSBjb2xsYXRlIGxhdGluMV9iaW4gREVGQVVMVCAnJyBOT1QgTlVMTCwgU2VsZWN0X3ByaXYg ZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVM TCwgSW5zZXJ0X3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZB VUxUICdOJyBOT1QgTlVMTCwgVXBkYXRlX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0Zjhf Z2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgRGVsZXRlX3ByaXYgZW51bSgnTicsJ1kn KSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgQ3JlYXRlX3By aXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1Qg TlVMTCwgRHJvcF9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVG QVVMVCAnTicgTk9UIE5VTEwsIFJlbG9hZF9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4 X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIFNodXRkb3duX3ByaXYgZW51bSgnTics J1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgUHJvY2Vz c19wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicg Tk9UIE5VTEwsIEZpbGVfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2Np IERFRkFVTFQgJ04nIE5PVCBOVUxMLCBHcmFudF9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1 dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIFJlZmVyZW5jZXNfcHJpdiBlbnVt KCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBJ bmRleF9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAn TicgTk9UIE5VTEwsIEFsdGVyX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJh bF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgU2hvd19kYl9wcml2IGVudW0oJ04nLCdZJykgQ09M TEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIFN1cGVyX3ByaXYgZW51 bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwg Q3JlYXRlX3RtcF90YWJsZV9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxf Y2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIExvY2tfdGFibGVzX3ByaXYgZW51bSgnTicsJ1knKSBD T0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgRXhlY3V0ZV9wcml2 IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5V TEwsIFJlcGxfc2xhdmVfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2Np IERFRkFVTFQgJ04nIE5PVCBOVUxMLCBSZXBsX2NsaWVudF9wcml2IGVudW0oJ04nLCdZJykgQ09M TEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIENyZWF0ZV92aWV3X3By aXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1Qg TlVMTCwgU2hvd192aWV3X3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9j aSBERUZBVUxUICdOJyBOT1QgTlVMTCwgQ3JlYXRlX3JvdXRpbmVfcHJpdiBlbnVtKCdOJywnWScp IENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBBbHRlcl9yb3V0 aW5lX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdO JyBOT1QgTlVMTCwgQ3JlYXRlX3VzZXJfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9n ZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBFdmVudF9wcml2IGVudW0oJ04nLCdZJykg Q09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIFRyaWdnZXJfcHJp diBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBO VUxMLCBzc2xfdHlwZSBlbnVtKCcnLCdBTlknLCdYNTA5JywgJ1NQRUNJRklFRCcpIENPTExBVEUg dXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJycgTk9UIE5VTEwsIHNzbF9jaXBoZXIgQkxPQiBOT1Qg TlVMTCwgeDUwOV9pc3N1ZXIgQkxPQiBOT1QgTlVMTCwgeDUwOV9zdWJqZWN0IEJMT0IgTk9UIE5V TEwsIG1heF9xdWVzdGlvbnMgaW50KDExKSB1bnNpZ25lZCBERUZBVUxUIDAgIE5PVCBOVUxMLCBt YXhfdXBkYXRlcyBpbnQoMTEpIHVuc2lnbmVkIERFRkFVTFQgMCAgTk9UIE5VTEwsIG1heF9jb25u ZWN0aW9ucyBpbnQoMTEpIHVuc2lnbmVkIERFRkFVTFQgMCAgTk9UIE5VTEwsIG1heF91c2VyX2Nv bm5lY3Rpb25zIGludCgxMSkgdW5zaWduZWQgREVGQVVMVCAwICBOT1QgTlVMTCwgUFJJTUFSWSBL RVkgSG9zdCAoSG9zdCxVc2VyKSApIGVuZ2luZT1NeUlTQU0gQ0hBUkFDVEVSIFNFVCB1dGY4IENP TExBVEUgdXRmOF9iaW4gY29tbWVudD0nVXNlcnMgYW5kIGdsb2JhbCBwcml2aWxlZ2VzJzsKK0NS RUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIHVzZXIgKCAgIEhvc3QgY2hhcig2MCkgYmluYXJ5IERF RkFVTFQgJycgTk9UIE5VTEwsIFVzZXIgY2hhcigxNikgYmluYXJ5IERFRkFVTFQgJycgTk9UIE5V TEwsIFBhc3N3b3JkIGNoYXIoNDEpIGNoYXJhY3RlciBzZXQgbGF0aW4xIGNvbGxhdGUgbGF0aW4x X2JpbiBERUZBVUxUICcnIE5PVCBOVUxMLCBTZWxlY3RfcHJpdiBlbnVtKCdOJywnWScpIENPTExB VEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBJbnNlcnRfcHJpdiBlbnVt KCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBV cGRhdGVfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQg J04nIE5PVCBOVUxMLCBEZWxldGVfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5l cmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBDcmVhdGVfcHJpdiBlbnVtKCdOJywnWScpIENP TExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBEcm9wX3ByaXYgZW51 bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwg UmVsb2FkX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxU ICdOJyBOT1QgTlVMTCwgU2h1dGRvd25fcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9n ZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBQcm9jZXNzX3ByaXYgZW51bSgnTicsJ1kn KSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgRmlsZV9wcml2 IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5V TEwsIEdyYW50X3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZB VUxUICdOJyBOT1QgTlVMTCwgUmVmZXJlbmNlc19wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1 dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIEluZGV4X3ByaXYgZW51bSgnTics J1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgQWx0ZXJf cHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5P VCBOVUxMLCBTaG93X2RiX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9j aSBERUZBVUxUICdOJyBOT1QgTlVMTCwgU3VwZXJfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUg dXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBDcmVhdGVfdG1wX3RhYmxlX3By aXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1Qg TlVMTCwgTG9ja190YWJsZXNfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFs X2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBFeGVjdXRlX3ByaXYgZW51bSgnTicsJ1knKSBDT0xM QVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgUmVwbF9zbGF2ZV9wcml2 IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5V TEwsIFJlcGxfY2xpZW50X3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9j aSBERUZBVUxUICdOJyBOT1QgTlVMTCwgQ3JlYXRlX3ZpZXdfcHJpdiBlbnVtKCdOJywnWScpIENP TExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBTaG93X3ZpZXdfcHJp diBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBO VUxMLCBDcmVhdGVfcm91dGluZV9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVy YWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIEFsdGVyX3JvdXRpbmVfcHJpdiBlbnVtKCdOJywn WScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2NpIERFRkFVTFQgJ04nIE5PVCBOVUxMLCBDcmVhdGVf dXNlcl9wcml2IGVudW0oJ04nLCdZJykgQ09MTEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAn TicgTk9UIE5VTEwsIEV2ZW50X3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJh bF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCwgVHJpZ2dlcl9wcml2IGVudW0oJ04nLCdZJykgQ09M TEFURSB1dGY4X2dlbmVyYWxfY2kgREVGQVVMVCAnTicgTk9UIE5VTEwsIENyZWF0ZV90YWJsZXNw YWNlX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdO JyBOT1QgTlVMTCwgc3NsX3R5cGUgZW51bSgnJywnQU5ZJywnWDUwOScsICdTUEVDSUZJRUQnKSBD T0xMQVRFIHV0ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICcnIE5PVCBOVUxMLCBzc2xfY2lwaGVyIEJM T0IgTk9UIE5VTEwsIHg1MDlfaXNzdWVyIEJMT0IgTk9UIE5VTEwsIHg1MDlfc3ViamVjdCBCTE9C IE5PVCBOVUxMLCBtYXhfcXVlc3Rpb25zIGludCgxMSkgdW5zaWduZWQgREVGQVVMVCAwICBOT1Qg TlVMTCwgbWF4X3VwZGF0ZXMgaW50KDExKSB1bnNpZ25lZCBERUZBVUxUIDAgIE5PVCBOVUxMLCBt YXhfY29ubmVjdGlvbnMgaW50KDExKSB1bnNpZ25lZCBERUZBVUxUIDAgIE5PVCBOVUxMLCBtYXhf dXNlcl9jb25uZWN0aW9ucyBpbnQoMTEpIHVuc2lnbmVkIERFRkFVTFQgMCAgTk9UIE5VTEwsIFBS SU1BUlkgS0VZIEhvc3QgKEhvc3QsVXNlcikgKSBlbmdpbmU9TXlJU0FNIENIQVJBQ1RFUiBTRVQg dXRmOCBDT0xMQVRFIHV0ZjhfYmluIGNvbW1lbnQ9J1VzZXJzIGFuZCBnbG9iYWwgcHJpdmlsZWdl cyc7CiAKIC0tIFJlbWVtYmVyIGZvciBsYXRlciBpZiB1c2VyIHRhYmxlIGFscmVhZHkgZXhpc3Rl ZAogc2V0IEBoYWRfdXNlcl90YWJsZT0gQEB3YXJuaW5nX2NvdW50ICE9IDA7Cgo9PT0gbW9kaWZp ZWQgZmlsZSAnc2NyaXB0cy9teXNxbF9zeXN0ZW1fdGFibGVzX2RhdGEuc3FsJwotLS0gYS9zY3Jp cHRzL215c3FsX3N5c3RlbV90YWJsZXNfZGF0YS5zcWwJMjAwNy0xMi0xMCAxMToyMTo0MSArMDAw MAorKysgYi9zY3JpcHRzL215c3FsX3N5c3RlbV90YWJsZXNfZGF0YS5zcWwJMjAwOC0wNy0yNCAw Nzo0NDoyMSArMDAwMApAQCAtMjEsOSArMjEsOSBAQCBEUk9QIFRBQkxFIHRtcF9kYjsKIC0tIGZy b20gbG9jYWwgbWFjaGluZSBpZiAidXNlcnMiIHRhYmxlIGRpZG4ndCBleGlzdCBiZWZvcmUKIENS RUFURSBURU1QT1JBUlkgVEFCTEUgdG1wX3VzZXIgTElLRSB1c2VyOwogc2V0IEBjdXJyZW50X2hv c3RuYW1lPSBAQGhvc3RuYW1lOwotSU5TRVJUIElOVE8gdG1wX3VzZXIgVkFMVUVTICgnbG9jYWxo b3N0Jywncm9vdCcsJycsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZ JywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1kn LCdZJywnWScsJ1knLCcnLCcnLCcnLCcnLDAsMCwwLDApOwotUkVQTEFDRSBJTlRPIHRtcF91c2Vy IFZBTFVFUyAoQGN1cnJlbnRfaG9zdG5hbWUsJ3Jvb3QnLCcnLCdZJywnWScsJ1knLCdZJywnWScs J1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywn WScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnJywnJywnJywnJywwLDAsMCwwKTsK LVJFUExBQ0UgSU5UTyB0bXBfdXNlciBWQUxVRVMgKCcxMjcuMC4wLjEnLCdyb290JywnJywnWScs J1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywn WScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJycsJycs JycsJycsMCwwLDAsMCk7CitJTlNFUlQgSU5UTyB0bXBfdXNlciBWQUxVRVMgKCdsb2NhbGhvc3Qn LCdyb290JywnJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZ JywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1kn LCdZJywnWScsJ1knLCcnLCcnLCcnLCcnLDAsMCwwLDApOworUkVQTEFDRSBJTlRPIHRtcF91c2Vy IFZBTFVFUyAoQGN1cnJlbnRfaG9zdG5hbWUsJ3Jvb3QnLCcnLCdZJywnWScsJ1knLCdZJywnWScs J1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywn WScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJycsJycsJycsJycsMCwwLDAs MCk7CitSRVBMQUNFIElOVE8gdG1wX3VzZXIgVkFMVUVTICgnMTI3LjAuMC4xJywncm9vdCcsJycs J1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywn WScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZJywnWScsJ1knLCdZ JywnJywnJywnJywnJywwLDAsMCwwKTsKIElOU0VSVCBJTlRPIHRtcF91c2VyIChob3N0LHVzZXIp IFZBTFVFUyAoJ2xvY2FsaG9zdCcsJycpOwogSU5TRVJUIElOVE8gdG1wX3VzZXIgKGhvc3QsdXNl cikgVkFMVUVTIChAY3VycmVudF9ob3N0bmFtZSwnJyk7CiBJTlNFUlQgSU5UTyB1c2VyIFNFTEVD VCAqIEZST00gdG1wX3VzZXIgV0hFUkUgQGhhZF91c2VyX3RhYmxlPTA7Cgo9PT0gbW9kaWZpZWQg ZmlsZSAnc2NyaXB0cy9teXNxbF9zeXN0ZW1fdGFibGVzX2ZpeC5zcWwnCi0tLSBhL3NjcmlwdHMv bXlzcWxfc3lzdGVtX3RhYmxlc19maXguc3FsCTIwMDgtMDQtMjkgMDQ6Mzc6MjIgKzAwMDAKKysr IGIvc2NyaXB0cy9teXNxbF9zeXN0ZW1fdGFibGVzX2ZpeC5zcWwJMjAwOC0wOC0wNyAwMzowNToz MyArMDAwMApAQCAtMjE2LDYgKzIxNiw1MiBAQCBBTFRFUiBUQUJMRSBmdW5jCiAgIE1PRElGWSB0 eXBlIGVudW0gKCdmdW5jdGlvbicsJ2FnZ3JlZ2F0ZScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2Np IE5PVCBOVUxMOwogCiAjCisjIENvbnZlcnQgbWlzY2VsbGFuZW91cyB0YWJsZXMgdG8gVVRGLTgu CisjCisjIFRhYmxlcyBjb21pbmcgZnJvbSBhIG9sZCB2ZXJzaW9uIG1pZ2h0IGhhdmUgdGhlIDMt Ynl0ZSBVbmljb2RlCisjIGNoYXJhY3RlciBzZXQgZm9ybWVybHkga25vd24gYXMgdXRmOC4KKyMK KworQUxURVIgVEFCTEUgaGVscF9jYXRlZ29yeSBDT05WRVJUIFRPIENIQVJBQ1RFUiBTRVQgdXRm ODsKK0FMVEVSIFRBQkxFIGhlbHBfa2V5d29yZCBDT05WRVJUIFRPIENIQVJBQ1RFUiBTRVQgdXRm ODsKK0FMVEVSIFRBQkxFIGhlbHBfcmVsYXRpb24gQ09OVkVSVCBUTyBDSEFSQUNURVIgU0VUIHV0 Zjg7CitBTFRFUiBUQUJMRSBzZXJ2ZXJzIENPTlZFUlQgVE8gQ0hBUkFDVEVSIFNFVCB1dGY4Owor QUxURVIgVEFCTEUgdGltZV96b25lIENPTlZFUlQgVE8gQ0hBUkFDVEVSIFNFVCB1dGY4OworQUxU RVIgVEFCTEUgdGltZV96b25lX2xlYXBfc2Vjb25kIENPTlZFUlQgVE8gQ0hBUkFDVEVSIFNFVCB1 dGY4OworQUxURVIgVEFCTEUgdGltZV96b25lX25hbWUgQ09OVkVSVCBUTyBDSEFSQUNURVIgU0VU IHV0Zjg7CitBTFRFUiBUQUJMRSB0aW1lX3pvbmVfdHJhbnNpdGlvbiBDT05WRVJUIFRPIENIQVJB Q1RFUiBTRVQgdXRmODsKK0FMVEVSIFRBQkxFIHRpbWVfem9uZV90cmFuc2l0aW9uX3R5cGUgQ09O VkVSVCBUTyBDSEFSQUNURVIgU0VUIHV0Zjg7CisKKyMgQnVnIzMxMjkxOiBBdm9pZCBjb252ZXJz aW9uIGZyb20gdGV4dCB0byBtZWRpdW10ZXh0CitBTFRFUiBUQUJMRSBoZWxwX3RvcGljCisgIE1P RElGWSBkZXNjcmlwdGlvbiB0ZXh0IE5PVCBOVUxMLAorICBNT0RJRlkgZXhhbXBsZSB0ZXh0IE5P VCBOVUxMLAorQ09OVkVSVCBUTyBDSEFSQUNURVIgU0VUIHV0Zjg7CisKKyMKKyMgQ29udmVydCBs b2cgdGFibGVzIHRvIFVURi04LgorIworCitTRVQgQG9sZF9sb2dfc3RhdGUgPSBAQGdsb2JhbC5n ZW5lcmFsX2xvZzsKK1NFVCBHTE9CQUwgZ2VuZXJhbF9sb2cgPSAnT0ZGJzsKK0FMVEVSIFRBQkxF IGdlbmVyYWxfbG9nIENPTlZFUlQgVE8gQ0hBUkFDVEVSIFNFVCB1dGY4OworU0VUIEdMT0JBTCBn ZW5lcmFsX2xvZyA9IEBvbGRfbG9nX3N0YXRlOworCitTRVQgQG9sZF9sb2dfc3RhdGUgPSBAQGds b2JhbC5zbG93X3F1ZXJ5X2xvZzsKK1NFVCBHTE9CQUwgc2xvd19xdWVyeV9sb2cgPSAnT0ZGJzsK K0FMVEVSIFRBQkxFIHNsb3dfbG9nIENPTlZFUlQgVE8gQ0hBUkFDVEVSIFNFVCB1dGY4OworU0VU IEdMT0JBTCBzbG93X3F1ZXJ5X2xvZyA9IEBvbGRfbG9nX3N0YXRlOworCisjCisjIENvbnZlcnQg cGx1Z2luIHRhYmxlIHRvIFVURi04IHdpdGggYmluYXJ5IGNvbGxhdGlvbi4KKyMKKworQUxURVIg VEFCTEUgcGx1Z2luCisgIE1PRElGWSBuYW1lIGNoYXIoNjQpIENPTExBVEUgdXRmOF9iaW4gTk9U IE5VTEwgREVGQVVMVCAnJywKKyAgTU9ESUZZIGRsIGNoYXIoMTI4KSBDT0xMQVRFIHV0ZjhfYmlu IE5PVCBOVUxMIERFRkFVTFQgJycsCisgIENPTlZFUlQgVE8gQ0hBUkFDVEVSIFNFVCB1dGY4IENP TExBVEUgdXRmOF9iaW47CisKKyMKICMgRGV0ZWN0IHdoZXRoZXIgd2UgaGFkIENyZWF0ZV92aWV3 X3ByaXYKICMKIFNFVCBAaGFkQ3JlYXRlVmlld1ByaXY6PTA7CkBAIC00MzEsNiArNDc3LDEzIEBA IEFMVEVSIFRBQkxFIGRiIE1PRElGWSBFdmVudF9wcml2IGVudW0oJ04KICMKICMgRVZFTlQgdGFi bGUKICMKKworIworIyBXQVJOSU5HOiBCZXdhcmUgdGhhdCBzb21lIGNvbHVtbnMgYXJlIGFkZGVk IGFuZCBtb2RpZmllZCBtdWx0aXBsZQorIyB0aW1lcy4gV2hldGhlciBhZGRpbmcgb3IgbW9kaWZ5 aW5nIHRoZSBjb2x1bW4sIGl0J3Mgc3BlY2lmaWNhdGlvbgorIyBzaG91bGQgYWx3YXlzIGJlIHRo ZSBzYW1lLgorIworCiBBTFRFUiBUQUJMRSBldmVudCBEUk9QIFBSSU1BUlkgS0VZOwogQUxURVIg VEFCTEUgZXZlbnQgQUREIFBSSU1BUlkgS0VZKGRiLCBuYW1lKTsKICMgQWRkIHNxbF9tb2RlIGNv bHVtbiBqdXN0IGluIGNhc2UuCkBAIC00OTksNiArNTUyLDIwIEBAIEFMVEVSIFRBQkxFIGV2ZW50 IEFERCBib2R5X3V0ZjggbG9uZ2Jsb2IKICAgICAgICAgICAgICAgICAgICAgICBBRlRFUiBkYl9j b2xsYXRpb247CiBBTFRFUiBUQUJMRSBldmVudCBNT0RJRlkgYm9keV91dGY4IGxvbmdibG9iIERF RkFVTFQgTlVMTDsKIAorIworIyBDb252ZXJ0IGV2ZW50IHRhYmxlIHRvIFVURi04IHdpdGggYmlu YXJ5IGNvbGxhdGlvbi4KKyMKKworQUxURVIgVEFCTEUgZXZlbnQKKyAgQ09OVkVSVCBUTyBDSEFS QUNURVIgU0VUIHV0Zjg7CitBTFRFUiBUQUJMRSBldmVudAorICBNT0RJRlkgdGltZV96b25lIGNo YXIoNjQpIENIQVJBQ1RFUiBTRVQgbGF0aW4xIE5PVCBOVUxMIERFRkFVTFQgJ1NZU1RFTScsCisg IE1PRElGWSBkYiBjaGFyKDY0KSBDSEFSQUNURVIgU0VUIHV0ZjggQ09MTEFURSB1dGY4X2JpbiBO T1QgTlVMTCBERUZBVUxUICcnLAorICBNT0RJRlkgZGVmaW5lciBjaGFyKDc3KSBDSEFSQUNURVIg U0VUIHV0ZjggQ09MTEFURSB1dGY4X2JpbiBOT1QgTlVMTCBERUZBVUxUICcnLAorICBNT0RJRlkg Y29tbWVudCBjaGFyKDY0KSBDSEFSQUNURVIgU0VUIHV0ZjggQ09MTEFURSB1dGY4X2JpbiBOT1Qg TlVMTCBERUZBVUxUICcnLAorICBNT0RJRlkgY2hhcmFjdGVyX3NldF9jbGllbnQgY2hhcigzMikg Q0hBUkFDVEVSIFNFVCB1dGY4IENPTExBVEUgdXRmOF9iaW4gREVGQVVMVCBOVUxMLAorICBNT0RJ RlkgY29sbGF0aW9uX2Nvbm5lY3Rpb24gY2hhcigzMikgQ0hBUkFDVEVSIFNFVCB1dGY4IENPTExB VEUgdXRmOF9iaW4gREVGQVVMVCBOVUxMLAorICBNT0RJRlkgZGJfY29sbGF0aW9uIGNoYXIoMzIp IENIQVJBQ1RFUiBTRVQgdXRmOCBDT0xMQVRFIHV0ZjhfYmluIERFRkFVTFQgTlVMTDsKIAogIwog IyBUUklHR0VSIHByaXZpbGVnZQpAQCAtNTIwLDYgKzU4NywxOCBAQCBBTFRFUiBUQUJMRSB0YWJs ZXNfcHJpdiBNT0RJRlkgVGFibGVfcHJpCiAKIFVQREFURSB1c2VyIFNFVCBUcmlnZ2VyX3ByaXY9 U3VwZXJfcHJpdiBXSEVSRSBAaGFkVHJpZ2dlclByaXYgPSAwOwogCisjCisjIHVzZXIuQ3JlYXRl X3RhYmxlc3BhY2VfcHJpdgorIworCitTRVQgQGhhZENyZWF0ZVRhYmxlc3BhY2VQcml2IDo9IDA7 CitTRUxFQ1QgQGhhZENyZWF0ZVRhYmxlc3BhY2VQcml2IDo9MSBGUk9NIHVzZXIgV0hFUkUgQ3Jl YXRlX3RhYmxlc3BhY2VfcHJpdiBMSUtFICclJzsKKworQUxURVIgVEFCTEUgdXNlciBBREQgQ3Jl YXRlX3RhYmxlc3BhY2VfcHJpdiBlbnVtKCdOJywnWScpIENPTExBVEUgdXRmOF9nZW5lcmFsX2Np IERFRkFVTFQgJ04nIE5PVCBOVUxMIEFGVEVSIFRyaWdnZXJfcHJpdjsKK0FMVEVSIFRBQkxFIHVz ZXIgTU9ESUZZIENyZWF0ZV90YWJsZXNwYWNlX3ByaXYgZW51bSgnTicsJ1knKSBDT0xMQVRFIHV0 ZjhfZ2VuZXJhbF9jaSBERUZBVUxUICdOJyBOT1QgTlVMTCBBRlRFUiBUcmlnZ2VyX3ByaXY7CisK K1VQREFURSB1c2VyIFNFVCBDcmVhdGVfdGFibGVzcGFjZV9wcml2ID0gU3VwZXJfcHJpdiBXSEVS RSBAaGFkQ3JlYXRlVGFibGVzcGFjZVByaXYgPSAwOworCiAjIEFjdGl2YXRlIHRoZSBuZXcsIHBv c3NpYmxlIG1vZGlmaWVkIHByaXZpbGVnZSB0YWJsZXMKICMgVGhpcyBzaG91bGQgbm90IGJlIG5l ZWRlZCwgYnV0IGdpdmVzIHVzIHNvbWUgZXh0cmEgdGVzdGluZyB0aGF0IHRoZSBhYm92ZQogIyBj aGFuZ2VzIHdhcyBjb3JyZWN0Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL2V2ZW50cy5jYycKLS0t IGEvc3FsL2V2ZW50cy5jYwkyMDA4LTA3LTE3IDE5OjU1OjE4ICswMDAwCisrKyBiL3NxbC9ldmVu dHMuY2MJMjAwOC0wNy0yNiAxNjozODoyMCArMDAwMApAQCAtMzYzLDE1ICszNjMsNiBAQCBFdmVu dHM6OmNyZWF0ZV9ldmVudChUSEQgKnRoZCwgRXZlbnRfcGFyCiAgIGludCByZXQ7CiAgIERCVUdf RU5URVIoIkV2ZW50czo6Y3JlYXRlX2V2ZW50Iik7CiAKLSAgLyoKLSAgICBMZXQncyBjb21taXQg dGhlIHRyYW5zYWN0aW9uIGZpcnN0IC0gTXlTUUwgbWFudWFsIHNwZWNpZmllcwotICAgIHRoYXQg YSBEREwgaXNzdWVzIGFuIGltcGxpY2l0IGNvbW1pdCwgYW5kIGl0IGRvZXNuJ3Qgc2F5ICJzdWNj ZXNzZnVsCi0gICAgRERMIiwgc28gdGhhdCBhbiBpbXBsaWNpdCBjb21taXQgaXMgYSBwcm9wZXJ0 eSBvZiBhbnkgc3VjY2Vzc2Z1bGx5Ci0gICAgcGFyc2VkIERETCBzdGF0ZW1lbnQuCi0gICovCi0g IGlmIChlbmRfYWN0aXZlX3RyYW5zKHRoZCkpCi0gICAgREJVR19SRVRVUk4oVFJVRSk7Ci0KICAg aWYgKGNoZWNrX2lmX3N5c3RlbV90YWJsZXNfZXJyb3IoKSkKICAgICBEQlVHX1JFVFVSTihUUlVF KTsKIApAQCAtNDY3LDEzICs0NTgsNiBAQCBFdmVudHM6OnVwZGF0ZV9ldmVudChUSEQgKnRoZCwg RXZlbnRfcGFyCiAKICAgREJVR19FTlRFUigiRXZlbnRzOjp1cGRhdGVfZXZlbnQiKTsKIAotICAv KgotICAgIEZvciBjb25zaXN0ZW5jeSwgaW1wbGljaXQgQ09NTUlUIHNob3VsZCBiZSB0aGUgZmly c3QgdGhpbmcgaW4gdGhlCi0gICAgZXhlY3V0aW9uIGNoYWluLgotICAqLwotICBpZiAoZW5kX2Fj dGl2ZV90cmFucyh0aGQpKQotICAgIERCVUdfUkVUVVJOKFRSVUUpOwotCiAgIGlmIChjaGVja19p Zl9zeXN0ZW1fdGFibGVzX2Vycm9yKCkpCiAgICAgREJVR19SRVRVUk4oVFJVRSk7CiAKQEAgLTU5 MCwyMCArNTc0LDYgQEAgRXZlbnRzOjpkcm9wX2V2ZW50KFRIRCAqdGhkLCBMRVhfU1RSSU5HIAog ICBpbnQgcmV0OwogICBEQlVHX0VOVEVSKCJFdmVudHM6OmRyb3BfZXZlbnQiKTsKIAotICAvKgot ICAgIEluIE15U1FMLCBEREwgbXVzdCBhbHdheXMgY29tbWl0OiBzaW5jZSBteXNxbC4qIHRhYmxl cyBhcmUKLSAgICBub24tdHJhbnNhY3Rpb25hbCwgd2UgbXVzdCBtb2RpZnkgdGhlbSBvdXRzaWRl IGEgdHJhbnNhY3Rpb24KLSAgICB0byBub3QgYnJlYWsgYXRvbWljaXR5LgotICAgIEJ1dCB0aGUg c2Vjb25kIGFuZCBtb3JlIGltcG9ydGFudCByZWFzb24gdG8gY29tbWl0IGhlcmUKLSAgICByZWdh cmRsZXNzIHdoZXRoZXIgd2UncmUgYWN0dWFsbHkgY2hhbmdpbmcgbXlzcWwuZXZlbnQgdGFibGUK LSAgICBvciBub3QgaXMgcmVwbGljYXRpb246IGVuZF9hY3RpdmVfdHJhbnMgc3luY3MgdGhlIGJp bmFyeSBsb2csCi0gICAgYW5kIHVubGVzcyB3ZSBydW4gRERMIGluIGl0J3Mgb3duIHRyYW5zYWN0 aW9uIGl0IG1heSBzaW1wbHkKLSAgICBuZXZlciBhcHBlYXIgb24gdGhlIHNsYXZlIGluIGNhc2Ug dGhlIG91dHNpZGUgdHJhbnNhY3Rpb24KLSAgICByb2xscyBiYWNrLgotICAqLwotICBpZiAoZW5k X2FjdGl2ZV90cmFucyh0aGQpKQotICAgIERCVUdfUkVUVVJOKFRSVUUpOwotCiAgIGlmIChjaGVj a19pZl9zeXN0ZW1fdGFibGVzX2Vycm9yKCkpCiAgICAgREJVR19SRVRVUk4oVFJVRSk7CiAKCj09 PSBtb2RpZmllZCBmaWxlICdzcWwvZmllbGQuY2MnCi0tLSBhL3NxbC9maWVsZC5jYwkyMDA4LTA3 LTI0IDE0OjMzOjEwICswMDAwCisrKyBiL3NxbC9maWVsZC5jYwkyMDA4LTA3LTI1IDE3OjIxOjU1 ICswMDAwCkBAIC0yNTk1LDcgKzI1OTUsNyBAQCBpbnQgRmllbGRfbmV3X2RlY2ltYWw6OnN0b3Jl KGNvbnN0IGNoYXIgCiAgICAgU3RyaW5nIGZyb21fYXNfc3RyOwogICAgIGZyb21fYXNfc3RyLmNv cHkoZnJvbSwgbGVuZ3RoLCAmbXlfY2hhcnNldF9iaW4pOwogCi0gICAgcHVzaF93YXJuaW5nX3By aW50Zih0YWJsZS0+aW5fdXNlLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICBw dXNoX3dhcm5pbmdfcHJpbnRmKHRhYmxlLT5pbl91c2UsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVM X1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICBFUl9UUlVOQ0FURURfV1JPTkdfVkFMVUVf Rk9SX0ZJRUxELAogICAgICAgICAgICAgICAgICAgICAgICAgRVIoRVJfVFJVTkNBVEVEX1dST05H X1ZBTFVFX0ZPUl9GSUVMRCksCiAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjaW1hbCIsIGZy b21fYXNfc3RyLmNfcHRyKCksIGZpZWxkX25hbWUsCkBAIC02MTk4LDExICs2MTk4LDkgQEAgY2hl Y2tfc3RyaW5nX2NvcHlfZXJyb3IoRmllbGRfc3RyICpmaWVsZAogICAgICp0Kys9ICcuJzsKICAg fQogICAqdD0gJ1wwJzsKLSAgcHVzaF93YXJuaW5nX3ByaW50ZihmaWVsZC0+dGFibGUtPmluX3Vz ZSwgCi0gICAgICAgICAgICAgICAgICAgICAgZmllbGQtPnRhYmxlLT5pbl91c2UtPmFib3J0X29u X3dhcm5pbmcgPwotICAgICAgICAgICAgICAgICAgICAgIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVM X0VSUk9SIDoKKyAgcHVzaF93YXJuaW5nX3ByaW50ZihmaWVsZC0+dGFibGUtPmluX3VzZSwKICAg ICAgICAgICAgICAgICAgICAgICBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAotICAgICAg ICAgICAgICAgICAgICAgIEVSX1RSVU5DQVRFRF9XUk9OR19WQUxVRV9GT1JfRklFTEQsIAorICAg ICAgICAgICAgICAgICAgICAgIEVSX1RSVU5DQVRFRF9XUk9OR19WQUxVRV9GT1JfRklFTEQsCiAg ICAgICAgICAgICAgICAgICAgICAgRVIoRVJfVFJVTkNBVEVEX1dST05HX1ZBTFVFX0ZPUl9GSUVM RCksCiAgICAgICAgICAgICAgICAgICAgICAgInN0cmluZyIsIHRtcCwgZmllbGQtPmZpZWxkX25h bWUsCiAgICAgICAgICAgICAgICAgICAgICAgKHVsb25nKSBmaWVsZC0+dGFibGUtPmluX3VzZS0+ cm93X2NvdW50KTsKQEAgLTYyMzksNyArNjIzNyw3IEBAIEZpZWxkX2xvbmdzdHI6OnJlcG9ydF9p Zl9pbXBvcnRhbnRfZGF0YSgKICAgICBpZiAodGVzdF9pZl9pbXBvcnRhbnRfZGF0YShmaWVsZF9j aGFyc2V0LCBwdHIsIGVuZCkpCiAgICAgewogICAgICAgaWYgKHRhYmxlLT5pbl91c2UtPmFib3J0 X29uX3dhcm5pbmcpCi0gICAgICAgIHNldF93YXJuaW5nKE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVM X0VSUk9SLCBFUl9EQVRBX1RPT19MT05HLCAxKTsKKyAgICAgICAgc2V0X3dhcm5pbmcoTVlTUUxf RVJST1I6OldBUk5fTEVWRUxfV0FSTiwgRVJfREFUQV9UT09fTE9ORywgMSk7CiAgICAgICBlbHNl CiAgICAgICAgIHNldF93YXJuaW5nKE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sIFdBUk5f REFUQV9UUlVOQ0FURUQsIDEpOwogICAgICAgcmV0dXJuIDI7CkBAIC02MzA5LDcgKzYzMDcsNyBA QCBpbnQgRmllbGRfc3RyOjpzdG9yZShkb3VibGUgbnIpCiAgIGlmIChlcnJvcikKICAgewogICAg IGlmICh0YWJsZS0+aW5fdXNlLT5hYm9ydF9vbl93YXJuaW5nKQotICAgICAgc2V0X3dhcm5pbmco TVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsIEVSX0RBVEFfVE9PX0xPTkcsIDEpOworICAg ICAgc2V0X3dhcm5pbmcoTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwgRVJfREFUQV9UT09f TE9ORywgMSk7CiAgICAgZWxzZQogICAgICAgc2V0X3dhcm5pbmcoTVlTUUxfRVJST1I6OldBUk5f TEVWRUxfV0FSTiwgV0FSTl9EQVRBX1RSVU5DQVRFRCwgMSk7CiAgIH0KQEAgLTg3OTQsNyArODc5 Miw3IEBAIGludCBGaWVsZF9iaXQ6OnN0b3JlKGNvbnN0IGNoYXIgKmZyb20sIHUKICAgICBzZXRf cmVjX2JpdHMoKDEgPDwgYml0X2xlbikgLSAxLCBiaXRfcHRyLCBiaXRfb2ZzLCBiaXRfbGVuKTsK ICAgICBtZW1zZXQocHRyLCAweGZmLCBieXRlc19pbl9yZWMpOwogICAgIGlmICh0YWJsZS0+aW5f dXNlLT5yZWFsbHlfYWJvcnRfb25fd2FybmluZygpKQotICAgICAgc2V0X3dhcm5pbmcoTVlTUUxf RVJST1I6OldBUk5fTEVWRUxfRVJST1IsIEVSX0RBVEFfVE9PX0xPTkcsIDEpOworICAgICAgc2V0 X3dhcm5pbmcoTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwgRVJfREFUQV9UT09fTE9ORywg MSk7CiAgICAgZWxzZQogICAgICAgc2V0X3dhcm5pbmcoTVlTUUxfRVJST1I6OldBUk5fTEVWRUxf V0FSTiwgRVJfV0FSTl9EQVRBX09VVF9PRl9SQU5HRSwgMSk7CiAgICAgcmV0dXJuIDE7CkBAIC05 MjA1LDcgKzkyMDMsNyBAQCBpbnQgRmllbGRfYml0X2FzX2NoYXI6OnN0b3JlKGNvbnN0IGNoYXIg CiAgICAgaWYgKGJpdHMpCiAgICAgICAqcHRyJj0gKCgxIDw8IGJpdHMpIC0gMSk7IC8qIHNldCBm aXJzdCB1Y2hhciAqLwogICAgIGlmICh0YWJsZS0+aW5fdXNlLT5yZWFsbHlfYWJvcnRfb25fd2Fy bmluZygpKQotICAgICAgc2V0X3dhcm5pbmcoTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1Is IEVSX0RBVEFfVE9PX0xPTkcsIDEpOworICAgICAgc2V0X3dhcm5pbmcoTVlTUUxfRVJST1I6OldB Uk5fTEVWRUxfV0FSTiwgRVJfREFUQV9UT09fTE9ORywgMSk7CiAgICAgZWxzZQogICAgICAgc2V0 X3dhcm5pbmcoTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwgRVJfV0FSTl9EQVRBX09VVF9P Rl9SQU5HRSwgMSk7CiAgICAgcmV0dXJuIDE7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL2hhX25k YmNsdXN0ZXIuY2MnCi0tLSBhL3NxbC9oYV9uZGJjbHVzdGVyLmNjCTIwMDgtMDYtMjggMTE6MDA6 NTkgKzAwMDAKKysrIGIvc3FsL2hhX25kYmNsdXN0ZXIuY2MJMjAwOC0wNy0xNCAxMjo0OToxOSAr MDAwMApAQCAtMjM5LDExICsyMzksMTEgQEAgc3RhdGljIGludCBuZGJfdG9fbXlzcWxfZXJyb3Io Y29uc3QgTmRiRQogICAgIC0gVXNlZCBieSByZXBsaWNhdGlvbiB0byBzZWUgaWYgdGhlIGVycm9y IHdhcyB0ZW1wb3JhcnkKICAgKi8KICAgaWYgKG5kYmVyci0+c3RhdHVzID09IE5kYkVycm9yOjpU ZW1wb3JhcnlFcnJvcikKLSAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1cnJlbnRfdGhkLCBNWVNR TF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1cnJl bnRfdGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogCQkJRVJfR0VUX1RFTVBPUkFS WV9FUlJNU0csIEVSKEVSX0dFVF9URU1QT1JBUllfRVJSTVNHKSwKIAkJCW5kYmVyci0+Y29kZSwg bmRiZXJyLT5tZXNzYWdlLCAiTkRCIik7CiAgIGVsc2UKLSAgICBwdXNoX3dhcm5pbmdfcHJpbnRm KGN1cnJlbnRfdGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICBwdXNoX3dh cm5pbmdfcHJpbnRmKGN1cnJlbnRfdGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAog CQkJRVJfR0VUX0VSUk1TRywgRVIoRVJfR0VUX0VSUk1TRyksCiAJCQluZGJlcnItPmNvZGUsIG5k YmVyci0+bWVzc2FnZSwgIk5EQiIpOwogICByZXR1cm4gZXJyb3I7CkBAIC00ODAsNyArNDgwLDcg QEAgc3RhdGljIHZvaWQgc2V0X25kYl9lcnIoVEhEICp0aGQsIGNvbnN0IAogICB7CiAgICAgY2hh ciBidWZbRk5fUkVGTEVOXTsKICAgICBuZGJfZXJyb3Jfc3RyaW5nKHRoZF9uZGItPm1fZXJyb3Jf Y29kZSwgYnVmLCBzaXplb2YoYnVmKSk7Ci0gICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1Z U1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgIHB1c2hfd2FybmluZ19wcmludGYodGhk LCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogCQkJRVJfR0VUX0VSUk1TRywgRVIoRVJf R0VUX0VSUk1TRyksCiAJCQl0aGRfbmRiLT5tX2Vycm9yX2NvZGUsIGJ1ZiwgIk5EQiIpOwogICB9 CkBAIC01ODY0LDcgKzU4NjQsNyBAQCBpbnQgaGFfbmRiY2x1c3Rlcjo6Y3JlYXRlKGNvbnN0IGNo YXIgKm5hCiAgIGVsc2UgaWYgKGNyZWF0ZV9pbmZvLT50YWJsZXNwYWNlICYmIAogICAgICAgICAg ICBjcmVhdGVfaW5mby0+ZGVmYXVsdF9zdG9yYWdlX21lZGlhID09IEhBX1NNX01FTU9SWSkKICAg ewotICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9F UlJPUiwKKyAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVW RUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAgICAgIEVSX0lMTEVHQUxfSEFfQ1JFQVRFX09Q VElPTiwKICAgICAgICAgICAgICAgICAgICAgICAgIEVSKEVSX0lMTEVHQUxfSEFfQ1JFQVRFX09Q VElPTiksCiAgICAgICAgICAgICAgICAgICAgICAgICBuZGJjbHVzdGVyX2h0b25fbmFtZSwKQEAg LTU4ODcsNyArNTg4Nyw3IEBAIGludCBoYV9uZGJjbHVzdGVyOjpjcmVhdGUoY29uc3QgY2hhciAq bmEKICAgICB7CiAgICAgICBpZiAoa2V5X3BhcnQtPmZpZWxkLT5maWVsZF9zdG9yYWdlX3R5cGUo KSA9PSBIQV9TTV9ESVNLKQogICAgICAgewotICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRo ZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgICAgIHB1c2hfd2FybmluZ19w cmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEVSX0lMTEVHQUxfSEFfQ1JFQVRFX09QVElPTiwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBFUihFUl9JTExFR0FMX0hBX0NSRUFURV9PUFRJT04pLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgIG5kYmNsdXN0ZXJfaHRvbl9uYW1lLApAQCAtNjE0Myw3ICs2MTQz LDcgQEAgaW50IGhhX25kYmNsdXN0ZXI6OmNyZWF0ZV9pbmRleChUSEQgKnRoZAogICBjYXNlIE9S REVSRURfSU5ERVg6CiAgICAgaWYgKGtleV9pbmZvLT5hbGdvcml0aG0gPT0gSEFfS0VZX0FMR19I QVNIKQogICAgIHsKLSAgICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6 V0FSTl9MRVZFTF9FUlJPUiwKKyAgICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9F UlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogCQkJICBFUl9JTExFR0FMX0hBX0NSRUFURV9PUFRJT04s CiAJCQkgIEVSKEVSX0lMTEVHQUxfSEFfQ1JFQVRFX09QVElPTiksCiAJCQkgIG5kYmNsdXN0ZXJf aHRvbl9uYW1lLApAQCAtNjIxNiw3ICs2MjE2LDcgQEAgaW50IGhhX25kYmNsdXN0ZXI6OmNyZWF0 ZV9uZGJfaW5kZXgoVEhEIAogICAgIEZpZWxkICpmaWVsZD0ga2V5X3BhcnQtPmZpZWxkOwogICAg IGlmIChmaWVsZC0+ZmllbGRfc3RvcmFnZV90eXBlKCkgPT0gSEFfU01fRElTSykKICAgICB7Ci0g ICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJS T1IsCisgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVW RUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgRVJfSUxMRUdBTF9IQV9DUkVBVEVf T1BUSU9OLAogICAgICAgICAgICAgICAgICAgICAgICAgICBFUihFUl9JTExFR0FMX0hBX0NSRUFU RV9PUFRJT04pLAogICAgICAgICAgICAgICAgICAgICAgICAgICBuZGJjbHVzdGVyX2h0b25fbmFt ZSwKQEAgLTEwNjMyLDcgKzEwNjMyLDcgQEAgdWludCBoYV9uZGJjbHVzdGVyOjpzZXRfdXBfcGFy dGl0aW9uX2luZgogICB7CiAgICAgaWYgKCFjdXJyZW50X3RoZC0+dmFyaWFibGVzLm5ld19tb2Rl KQogICAgIHsKLSAgICAgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VS Uk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50 X3RoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgRVJfSUxMRUdBTF9IQV9DUkVBVEVfT1BUSU9OLAogICAgICAgICAgICAgICAgICAgICAg ICAgICBFUihFUl9JTExFR0FMX0hBX0NSRUFURV9PUFRJT04pLAogICAgICAgICAgICAgICAgICAg ICAgICAgICBuZGJjbHVzdGVyX2h0b25fbmFtZSwKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvaGFf bmRiY2x1c3Rlcl9iaW5sb2cuY2MnCi0tLSBhL3NxbC9oYV9uZGJjbHVzdGVyX2JpbmxvZy5jYwky MDA4LTA2LTIwIDEzOjExOjIwICswMDAwCisrKyBiL3NxbC9oYV9uZGJjbHVzdGVyX2JpbmxvZy5j YwkyMDA4LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC0xMTk2LDcgKzExOTYsNyBAQCBuZGJjbHVz dGVyX3VwZGF0ZV9zbG9jayhUSEQgKnRoZCwKICAgfQogCiAgIGlmIChuZGJfZXJyb3IpCi0gICAg cHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAor ICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJO LAogICAgICAgICAgICAgICAgICAgICAgICAgRVJfR0VUX0VSUk1TRywgRVIoRVJfR0VUX0VSUk1T RyksCiAgICAgICAgICAgICAgICAgICAgICAgICBuZGJfZXJyb3ItPmNvZGUsCiAgICAgICAgICAg ICAgICAgICAgICAgICBuZGJfZXJyb3ItPm1lc3NhZ2UsCkBAIC0xNTQyLDcgKzE1NDIsNyBAQCBl cnI6CiAgIH0KIGVuZDoKICAgaWYgKG5kYl9lcnJvcikKLSAgICBwdXNoX3dhcm5pbmdfcHJpbnRm KHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgcHVzaF93YXJuaW5nX3By aW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAg ICAgICAgICBFUl9HRVRfRVJSTVNHLCBFUihFUl9HRVRfRVJSTVNHKSwKICAgICAgICAgICAgICAg ICAgICAgICAgIG5kYl9lcnJvci0+Y29kZSwKICAgICAgICAgICAgICAgICAgICAgICAgIG5kYl9l cnJvci0+bWVzc2FnZSwKQEAgLTI5NzAsNyArMjk3MCw3IEBAIG5kYmNsdXN0ZXJfY3JlYXRlX2V2 ZW50KFRIRCAqdGhkLCBOZGIgKm4KICAgICAgICAgICAgICAgICAgICAgICAid2l0aCBCTE9CIGF0 dHJpYnV0ZSBhbmQgbm8gUEsgaXMgbm90IHN1cHBvcnRlZCIsCiAgICAgICAgICAgICAgICAgICAg ICAgc2hhcmUtPmtleSk7CiAgICAgICBpZiAocHVzaF93YXJuaW5nKQotICAgICAgICBwdXNoX3dh cm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgICAg IHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVSX0lMTEVHQUxfSEFfQ1JFQVRFX09QVElPTiwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFUihFUl9JTExFR0FMX0hBX0NSRUFURV9PUFRJ T04pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kYmNsdXN0ZXJfaHRvbl9uYW1lLApA QCAtMzAyMiw3ICszMDIyLDcgQEAgbmRiY2x1c3Rlcl9jcmVhdGVfZXZlbnQoVEhEICp0aGQsIE5k YiAqbgogICAgICAgICBmYWlsZWQsIHByaW50IGEgd2FybmluZwogICAgICAgKi8KICAgICAgIGlm IChwdXNoX3dhcm5pbmcgPiAxKQotICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlT UUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgICAgIHB1c2hfd2FybmluZ19wcmludGYo dGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEVSX0dFVF9FUlJNU0csIEVSKEVSX0dFVF9FUlJNU0cpLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGRpY3QtPmdldE5kYkVycm9yKCkuY29kZSwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBkaWN0LT5nZXROZGJFcnJvcigpLm1lc3NhZ2UsICJOREIiKTsKQEAgLTMwNTAs NyArMzA1MCw3IEBAIG5kYmNsdXN0ZXJfY3JlYXRlX2V2ZW50KFRIRCAqdGhkLCBOZGIgKm4KICAg ICAgICAgZGljdC0+ZHJvcEV2ZW50KG15X2V2ZW50LmdldE5hbWUoKSwgMSkpCiAgICAgewogICAg ICAgaWYgKHB1c2hfd2FybmluZyA+IDEpCi0gICAgICAgIHB1c2hfd2FybmluZ19wcmludGYodGhk LCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICAgICAgcHVzaF93YXJuaW5nX3By aW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgRVJfR0VUX0VSUk1TRywgRVIoRVJfR0VUX0VSUk1TRyksCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZGljdC0+Z2V0TmRiRXJyb3IoKS5jb2RlLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGRpY3QtPmdldE5kYkVycm9yKCkubWVzc2FnZSwgIk5EQiIpOwpAQCAt MzA2OSw3ICszMDY5LDcgQEAgbmRiY2x1c3Rlcl9jcmVhdGVfZXZlbnQoVEhEICp0aGQsIE5kYiAq bgogICAgIGlmIChkaWN0LT5jcmVhdGVFdmVudChteV9ldmVudCkpCiAgICAgewogICAgICAgaWYg KHB1c2hfd2FybmluZyA+IDEpCi0gICAgICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNR TF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0 aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgRVJfR0VUX0VSUk1TRywgRVIoRVJfR0VUX0VSUk1TRyksCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZGljdC0+Z2V0TmRiRXJyb3IoKS5jb2RlLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGRpY3QtPmdldE5kYkVycm9yKCkubWVzc2FnZSwgIk5EQiIpOwpAQCAtMzA4Miw3 ICszMDgyLDcgQEAgbmRiY2x1c3Rlcl9jcmVhdGVfZXZlbnQoVEhEICp0aGQsIE5kYiAqbgogICAg ICAgREJVR19SRVRVUk4oLTEpOwogICAgIH0KICNpZmRlZiBOREJfQklOTE9HX0VYVFJBX1dBUk5J TkdTCi0gICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVM X0VSUk9SLAorICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9M RVZFTF9XQVJOLAogICAgICAgICAgICAgICAgICAgICAgICAgRVJfR0VUX0VSUk1TRywgRVIoRVJf R0VUX0VSUk1TRyksCiAgICAgICAgICAgICAgICAgICAgICAgICAwLCAiTkRCIEJpbmxvZzogUmVt b3ZlZCB0cmFpbGluZyBldmVudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAiTkRCIik7CkBA IC0zMTk2LDcgKzMxOTYsNyBAQCBuZGJjbHVzdGVyX2NyZWF0ZV9ldmVudF9vcHMoVEhEICp0aGQs IE5ECiAgICAgewogICAgICAgc3FsX3ByaW50X2Vycm9yKCJOREIgQmlubG9nOiBDcmVhdGluZyBO ZGJFdmVudE9wZXJhdGlvbiBmYWlsZWQgZm9yIgogICAgICAgICAgICAgICAgICAgICAgICIgJXMi LGV2ZW50X25hbWUpOwotICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9S OjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FM X0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIEVSX0dF VF9FUlJNU0csIEVSKEVSX0dFVF9FUlJNU0cpLAogICAgICAgICAgICAgICAgICAgICAgICAgICBu ZGItPmdldE5kYkVycm9yKCkuY29kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRiLT5n ZXROZGJFcnJvcigpLm1lc3NhZ2UsCkBAIC0zMjU4LDcgKzMyNTgsNyBAQCBuZGJjbHVzdGVyX2Ny ZWF0ZV9ldmVudF9vcHMoVEhEICp0aGQsIE5ECiAgICAgICAgICAgICBzcWxfcHJpbnRfZXJyb3Io Ik5EQiBCaW5sb2c6IENyZWF0aW5nIE5kYkV2ZW50T3BlcmF0aW9uIgogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICIgYmxvYiBmaWVsZCAldSBoYW5kbGVzIGZhaWxlZCAoY29kZT0lZCkgZm9y ICVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqLCBvcC0+Z2V0TmRiRXJyb3IoKS5j b2RlLCBldmVudF9uYW1lKTsKLSAgICAgICAgICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBN WVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICAgICAgICAgIHB1c2hfd2FybmluZ19w cmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBFUl9HRVRfRVJSTVNHLCBFUihFUl9HRVRfRVJSTVNHKSwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgb3AtPmdldE5kYkVycm9yKCkuY29kZSwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgb3AtPmdldE5kYkVycm9yKCkubWVzc2FnZSwKQEAg LTMyOTksNyArMzI5OSw3IEBAIG5kYmNsdXN0ZXJfY3JlYXRlX2V2ZW50X29wcyhUSEQgKnRoZCwg TkQKICAgICAgICAgcmV0cmllcz0gMDsKICAgICAgIGlmIChyZXRyaWVzID09IDApCiAgICAgICB7 Ci0gICAgICAgIHB1c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZF TF9FUlJPUiwKKyAgICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpX QVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVJfR0VUX0VSUk1T RywgRVIoRVJfR0VUX0VSUk1TRyksIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wLT5n ZXROZGJFcnJvcigpLmNvZGUsIG9wLT5nZXROZGJFcnJvcigpLm1lc3NhZ2UsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIk5EQiIpOwpAQCAtMzM3Niw3ICszMzc2LDcgQEAgbmRiY2x1c3Rl cl9kcm9wX2V2ZW50KFRIRCAqdGhkLCBOZGIgKm5kYgogICAgIGlmIChkaWN0LT5nZXROZGJFcnJv cigpLmNvZGUgIT0gNDcxMCkKICAgICB7CiAgICAgICAvKiBkcm9wIGV2ZW50IGZhaWxlZCBmb3Ig c29tZSByZWFzb24sIGlzc3VlIGEgd2FybmluZyAqLwotICAgICAgcHVzaF93YXJuaW5nX3ByaW50 Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgcHVzaF93YXJuaW5n X3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAg ICAgICAgICAgICAgIEVSX0dFVF9FUlJNU0csIEVSKEVSX0dFVF9FUlJNU0cpLAogICAgICAgICAg ICAgICAgICAgICAgICAgICBkaWN0LT5nZXROZGJFcnJvcigpLmNvZGUsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgIGRpY3QtPmdldE5kYkVycm9yKCkubWVzc2FnZSwgIk5EQiIpOwoKPT09IG1v ZGlmaWVkIGZpbGUgJ3NxbC9oYW5kbGVyLmNjJwotLS0gYS9zcWwvaGFuZGxlci5jYwkyMDA4LTA3 LTIzIDExOjI4OjIwICswMDAwCisrKyBiL3NxbC9oYW5kbGVyLmNjCTIwMDgtMDctMjUgMTc6MjE6 NTUgKzAwMDAKQEAgLTkyMSw3ICs5MjEsNyBAQCBpbnQgaGFfcHJlcGFyZShUSEQgKnRoZCkKICAg VEhEX1RSQU5TICp0cmFucz1hbGwgPyAmdGhkLT50cmFuc2FjdGlvbi5hbGwgOiAmdGhkLT50cmFu c2FjdGlvbi5zdG10OwogICBIYV90cnhfaW5mbyAqaGFfaW5mbz0gdHJhbnMtPmhhX2xpc3Q7CiAg IERCVUdfRU5URVIoImhhX3ByZXBhcmUiKTsKLSNpZmRlZiBVU0lOR19UUkFOU0FDVElPTlMKKwog ICBpZiAoaGFfaW5mbykKICAgewogICAgIGZvciAoOyBoYV9pbmZvOyBoYV9pbmZvPSBoYV9pbmZv LT5uZXh0KCkpCkBAIC05NDcsNyArOTQ3LDcgQEAgaW50IGhhX3ByZXBhcmUoVEhEICp0aGQpCiAg ICAgICB9CiAgICAgfQogICB9Ci0jZW5kaWYgLyogVVNJTkdfVFJBTlNBQ1RJT05TICovCisKICAg REJVR19SRVRVUk4oZXJyb3IpOwogfQogCkBAIC0xMDY4LDcgKzEwNjgsNyBAQCBpbnQgaGFfY29t bWl0X3RyYW5zKFRIRCAqdGhkLCBib29sIGFsbCkKICAgICBteV9lcnJvcihFUl9DT01NSVRfTk9U X0FMTE9XRURfSU5fU0ZfT1JfVFJHLCBNWUYoMCkpOwogICAgIERCVUdfUkVUVVJOKDIpOwogICB9 Ci0jaWZkZWYgVVNJTkdfVFJBTlNBQ1RJT05TCisKICAgaWYgKGhhX2luZm8pCiAgIHsKICAgICB1 aW50IHJ3X2hhX2NvdW50OwpAQCAtMTE0OCw3ICsxMTQ4LDcgQEAgZW5kOgogICAgIGlmIChyd190 cmFucykKICAgICAgIHN0YXJ0X3dhaXRpbmdfZ2xvYmFsX3JlYWRfbG9jayh0aGQpOwogICB9Ci0j ZW5kaWYgLyogVVNJTkdfVFJBTlNBQ1RJT05TICovCisKICAgREJVR19SRVRVUk4oZXJyb3IpOwog fQogCkBAIC0xMTYzLDcgKzExNjMsNyBAQCBpbnQgaGFfY29tbWl0X29uZV9waGFzZShUSEQgKnRo ZCwgYm9vbCBhCiAgIGJvb2wgaXNfcmVhbF90cmFucz1hbGwgfHwgdGhkLT50cmFuc2FjdGlvbi5h bGwuaGFfbGlzdCA9PSAwOwogICBIYV90cnhfaW5mbyAqaGFfaW5mbz0gdHJhbnMtPmhhX2xpc3Qs ICpoYV9pbmZvX25leHQ7CiAgIERCVUdfRU5URVIoImhhX2NvbW1pdF9vbmVfcGhhc2UiKTsKLSNp ZmRlZiBVU0lOR19UUkFOU0FDVElPTlMKKwogICBpZiAoaGFfaW5mbykKICAgewogICAgIGZvciAo OyBoYV9pbmZvOyBoYV9pbmZvPSBoYV9pbmZvX25leHQpCkBAIC0xMTkzLDcgKzExOTMsNyBAQCBp bnQgaGFfY29tbWl0X29uZV9waGFzZShUSEQgKnRoZCwgYm9vbCBhCiAgICAgICB0aGQtPnRyYW5z YWN0aW9uLmNsZWFudXAoKTsKICAgICB9CiAgIH0KLSNlbmRpZiAvKiBVU0lOR19UUkFOU0FDVElP TlMgKi8KKwogICBEQlVHX1JFVFVSTihlcnJvcik7CiB9CiAKQEAgLTEyMjYsNyArMTIyNiw3IEBA IGludCBoYV9yb2xsYmFja190cmFucyhUSEQgKnRoZCwgYm9vbCBhbGwKICAgICBteV9lcnJvcihF Ul9DT01NSVRfTk9UX0FMTE9XRURfSU5fU0ZfT1JfVFJHLCBNWUYoMCkpOwogICAgIERCVUdfUkVU VVJOKDEpOwogICB9Ci0jaWZkZWYgVVNJTkdfVFJBTlNBQ1RJT05TCisKICAgaWYgKGhhX2luZm8p CiAgIHsKICAgICAvKiBDbG9zZSBhbGwgY3Vyc29ycyB0aGF0IGNhbiBub3Qgc3Vydml2ZSBST0xM QkFDSyAqLwpAQCAtMTI1Niw3ICsxMjU2LDcgQEAgaW50IGhhX3JvbGxiYWNrX3RyYW5zKFRIRCAq dGhkLCBib29sIGFsbAogICAgICAgdGhkLT50cmFuc2FjdGlvbi5jbGVhbnVwKCk7CiAgICAgfQog ICB9Ci0jZW5kaWYgLyogVVNJTkdfVFJBTlNBQ1RJT05TICovCisKICAgaWYgKGFsbCkKICAgICB0 aGQtPnRyYW5zYWN0aW9uX3JvbGxiYWNrX3JlcXVlc3Q9IEZBTFNFOwogCkBAIC0xMjkxLDcgKzEy OTEsNyBAQCBpbnQgaGFfcm9sbGJhY2tfdHJhbnMoVEhEICp0aGQsIGJvb2wgYWxsCiBpbnQgaGFf YXV0b2NvbW1pdF9vcl9yb2xsYmFjayhUSEQgKnRoZCwgaW50IGVycm9yKQogewogICBEQlVHX0VO VEVSKCJoYV9hdXRvY29tbWl0X29yX3JvbGxiYWNrIik7Ci0jaWZkZWYgVVNJTkdfVFJBTlNBQ1RJ T05TCisKICAgaWYgKHRoZC0+dHJhbnNhY3Rpb24uc3RtdC5oYV9saXN0KQogICB7CiAgICAgaWYg KCFlcnJvcikKQEAgLTEzMDgsNyArMTMwOCw3IEBAIGludCBoYV9hdXRvY29tbWl0X29yX3JvbGxi YWNrKFRIRCAqdGhkLCAKIAogICAgIHRoZC0+dmFyaWFibGVzLnR4X2lzb2xhdGlvbj10aGQtPnNl c3Npb25fdHhfaXNvbGF0aW9uOwogICB9Ci0jZW5kaWYKKwogICBEQlVHX1JFVFVSTihlcnJvcik7 CiB9CiAKQEAgLTE3MTQsNyArMTcxNCw3IEBAIGludCBoYV9zYXZlcG9pbnQoVEhEICp0aGQsIFNB VkVQT0lOVCAqc3YKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdGhk LT50cmFuc2FjdGlvbi5hbGwpOwogICBIYV90cnhfaW5mbyAqaGFfaW5mbz0gdHJhbnMtPmhhX2xp c3Q7CiAgIERCVUdfRU5URVIoImhhX3NhdmVwb2ludCIpOwotI2lmZGVmIFVTSU5HX1RSQU5TQUNU SU9OUworCiAgIGZvciAoOyBoYV9pbmZvOyBoYV9pbmZvPSBoYV9pbmZvLT5uZXh0KCkpCiAgIHsK ICAgICBpbnQgZXJyOwpAQCAtMTczOCw3ICsxNzM4LDcgQEAgaW50IGhhX3NhdmVwb2ludChUSEQg KnRoZCwgU0FWRVBPSU5UICpzdgogICAgIGVuZ2luZXMgYXJlIHByZXBlbmRlZCB0byB0aGUgYmVn aW5uaW5nIG9mIHRoZSBsaXN0LgogICAqLwogICBzdi0+aGFfbGlzdD0gdHJhbnMtPmhhX2xpc3Q7 Ci0jZW5kaWYgLyogVVNJTkdfVFJBTlNBQ1RJT05TICovCisKICAgREJVR19SRVRVUk4oZXJyb3Ip OwogfQogCkBAIC0xOTI5LDcgKzE5MjksNyBAQCBpbnQgaGFfZGVsZXRlX3RhYmxlKFRIRCAqdGhk LCBoYW5kbGVydG9uCiAgICAgICBYWFg6IHNob3VsZCB3ZSBjb252ZXJ0ICphbGwqIGVycm9ycyB0 byB3YXJuaW5ncyBoZXJlPwogICAgICAgV2hhdCBpZiB0aGUgZXJyb3IgaXMgZmF0YWw/CiAgICAg Ki8KLSAgICBwdXNoX3dhcm5pbmcodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwg ZXJyb3IsCisgICAgcHVzaF93YXJuaW5nKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FS TiwgZXJyb3IsCiAgICAgICAgICAgICAgICAgaGFfZGVsZXRlX3RhYmxlX2Vycm9yX2hhbmRsZXIu YnVmZik7CiAgIH0KICAgZGVsZXRlIGZpbGU7CkBAIC00Mzc3LDYgKzQzNzcsNyBAQCB2b2lkIERz TXJyX2ltcGw6OmRzbXJyX2Nsb3NlKCkKICAgREJVR19FTlRFUigiRHNNcnJfaW1wbDo6ZHNtcnJf Y2xvc2UiKTsKICAgaWYgKGgyKQogICB7CisgICAgaDItPmhhX2luZGV4X29yX3JuZF9lbmQoKTsK ICAgICBoMi0+aGFfZXh0ZXJuYWxfbG9jayhjdXJyZW50X3RoZCwgRl9VTkxDSyk7CiAgICAgaDIt PmNsb3NlKCk7CiAgICAgZGVsZXRlIGgyOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9oYW5kbGVy LmgnCi0tLSBhL3NxbC9oYW5kbGVyLmgJMjAwOC0wNi0zMCAyMDoyMTo0MSArMDAwMAorKysgYi9z cWwvaGFuZGxlci5oCTIwMDgtMDctMTEgMTY6MjI6NDQgKzAwMDAKQEAgLTMwLDggKzMwLDYgQEAK ICNkZWZpbmUgTk9fSEFTSAkJCQkvKiBOb3QgeWV0IGltcGxlbWVudGVkICovCiAjZW5kaWYKIAot I2RlZmluZSBVU0lOR19UUkFOU0FDVElPTlMKLQogLy8gdGhlIGZvbGxvd2luZyBpcyBmb3IgY2hl Y2tpbmcgdGFibGVzCiAKICNkZWZpbmUgSEFfQURNSU5fQUxSRUFEWV9ET05FCSAgMQpAQCAtMTQw OCw3ICsxNDA2LDcgQEAgcHVibGljOgogICB2aXJ0dWFsIH5oYW5kbGVyKHZvaWQpCiAgIHsKICAg ICBEQlVHX0FTU0VSVChsb2NrZWQgPT0gRkFMU0UpOwotICAgIC8qIFRPRE86IERCVUdfQVNTRVJU KGluaXRlZCA9PSBOT05FKTsgKi8KKyAgICBEQlVHX0FTU0VSVChpbml0ZWQgPT0gTk9ORSk7CiAg IH0KICAgdmlydHVhbCBoYW5kbGVyICpjbG9uZShNRU1fUk9PVCAqbWVtX3Jvb3QpOwogICAvKiog VGhpcyBpcyBjYWxsZWQgYWZ0ZXIgY3JlYXRlIHRvIGFsbG93IHVzIHRvIHNldCB1cCBjYWNoZWQg dmFyaWFibGVzICovCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL2l0ZW0uY2MnCi0tLSBhL3NxbC9p dGVtLmNjCTIwMDgtMDctMjEgMDM6NTU6MDkgKzAwMDAKKysrIGIvc3FsL2l0ZW0uY2MJMjAwOC0w OC0wNyAwMzowNTozMyArMDAwMApAQCAtNDM2LDggKzQzNiwxMSBAQCB1aW50IEl0ZW06OmRlY2lt YWxfcHJlY2lzaW9uKCkgY29uc3QKICAgSXRlbV9yZXN1bHQgcmVzdHlwZT0gcmVzdWx0X3R5cGUo KTsKIAogICBpZiAoKHJlc3R5cGUgPT0gREVDSU1BTF9SRVNVTFQpIHx8IChyZXN0eXBlID09IElO VF9SRVNVTFQpKQotICAgIHJldHVybiBtaW4obXlfZGVjaW1hbF9sZW5ndGhfdG9fcHJlY2lzaW9u KG1heF9sZW5ndGgsIGRlY2ltYWxzLCB1bnNpZ25lZF9mbGFnKSwKLSAgICAgICAgICAgICAgIERF Q0lNQUxfTUFYX1BSRUNJU0lPTik7CisgIHsKKyAgICB1aW50IHByZWM9IAorICAgICAgbXlfZGVj aW1hbF9sZW5ndGhfdG9fcHJlY2lzaW9uKG1heF9sZW5ndGgsIGRlY2ltYWxzLCB1bnNpZ25lZF9m bGFnKTsKKyAgICByZXR1cm4gbWluKHByZWMsIERFQ0lNQUxfTUFYX1BSRUNJU0lPTik7CisgIH0K ICAgcmV0dXJuIG1pbihtYXhfbGVuZ3RoLCBERUNJTUFMX01BWF9QUkVDSVNJT04pOwogfQogCkBA IC00NTA5LDcgKzQ1MTIsNiBAQCBTdHJpbmcgKkl0ZW06OmNoZWNrX3dlbGxfZm9ybWVkX3Jlc3Vs dChTCiAgIHsKICAgICBUSEQgKnRoZD0gY3VycmVudF90aGQ7CiAgICAgY2hhciBoZXhidWZbN107 Ci0gICAgZW51bSBNWVNRTF9FUlJPUjo6ZW51bV93YXJuaW5nX2xldmVsIGxldmVsOwogICAgIHVp bnQgZGlmZj0gc3RyLT5sZW5ndGgoKSAtIHdsZW47CiAgICAgc2V0X2lmX3NtYWxsZXIoZGlmZiwg Myk7CiAgICAgb2N0ZXQyaGV4KGhleGJ1Ziwgc3RyLT5wdHIoKSArIHdsZW4sIGRpZmYpOwpAQCAt NDUyMiwxNyArNDUyNCwxNiBAQCBTdHJpbmcgKkl0ZW06OmNoZWNrX3dlbGxfZm9ybWVkX3Jlc3Vs dChTCiAgICAgaWYgKCh0aGQtPnZhcmlhYmxlcy5zcWxfbW9kZSAmCiAgICAgICAgICAoTU9ERV9T VFJJQ1RfVFJBTlNfVEFCTEVTIHwgTU9ERV9TVFJJQ1RfQUxMX1RBQkxFUykpKQogICAgIHsKLSAg ICAgIGxldmVsPSBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUjsKICAgICAgIG51bGxfdmFs dWU9IDE7CiAgICAgICBzdHI9IDA7CiAgICAgfQogICAgIGVsc2UKICAgICB7Ci0gICAgICBsZXZl bD0gTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTjsKICAgICAgIHN0ci0+bGVuZ3RoKHdsZW4p OwogICAgIH0KLSAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgbGV2ZWwsIEVSX0lOVkFMSURf Q0hBUkFDVEVSX1NUUklORywKLSAgICAgICAgICAgICAgICAgICAgICAgIEVSKEVSX0lOVkFMSURf Q0hBUkFDVEVSX1NUUklORyksIGNzLT5jc25hbWUsIGhleGJ1Zik7CisgICAgcHVzaF93YXJuaW5n X3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCisgICAgICAgICAgICAg ICAgICAgICAgICBFUl9JTlZBTElEX0NIQVJBQ1RFUl9TVFJJTkcsIEVSKEVSX0lOVkFMSURfQ0hB UkFDVEVSX1NUUklORyksCisgICAgICAgICAgICAgICAgICAgICAgICBjcy0+Y3NuYW1lLCBoZXhi dWYpOwogICB9CiAgIHJldHVybiBzdHI7CiB9CkBAIC03MDMwLDggKzcwMzEsOSBAQCBib29sIEl0 ZW1fdHlwZV9ob2xkZXI6OmpvaW5fdHlwZXMoVEhEICp0CiAgIGlmIChGaWVsZDo6cmVzdWx0X21l cmdlX3R5cGUoZmxkX3R5cGUpID09IERFQ0lNQUxfUkVTVUxUKQogICB7CiAgICAgZGVjaW1hbHM9 IG1pbihtYXgoZGVjaW1hbHMsIGl0ZW0tPmRlY2ltYWxzKSwgREVDSU1BTF9NQVhfU0NBTEUpOwot ICAgIGludCBwcmVjaXNpb249IG1pbihtYXgocHJldl9kZWNpbWFsX2ludF9wYXJ0LCBpdGVtLT5k ZWNpbWFsX2ludF9wYXJ0KCkpCi0gICAgICAgICAgICAgICAgICAgICAgICsgZGVjaW1hbHMsIERF Q0lNQUxfTUFYX1BSRUNJU0lPTik7CisgICAgaW50IGl0ZW1faW50X3BhcnQ9IGl0ZW0tPmRlY2lt YWxfaW50X3BhcnQoKTsKKyAgICBpbnQgaXRlbV9wcmVjID0gbWF4KHByZXZfZGVjaW1hbF9pbnRf cGFydCwgaXRlbV9pbnRfcGFydCkgKyBkZWNpbWFsczsKKyAgICBpbnQgcHJlY2lzaW9uPSBtaW4o aXRlbV9wcmVjLCBERUNJTUFMX01BWF9QUkVDSVNJT04pOwogICAgIHVuc2lnbmVkX2ZsYWcmPSBp dGVtLT51bnNpZ25lZF9mbGFnOwogICAgIG1heF9sZW5ndGg9IG15X2RlY2ltYWxfcHJlY2lzaW9u X3RvX2xlbmd0aChwcmVjaXNpb24sIGRlY2ltYWxzLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZF9mbGFnKTsKCj09PSBtb2RpZmllZCBmaWxl ICdzcWwvaXRlbV9jbXBmdW5jLmNjJwotLS0gYS9zcWwvaXRlbV9jbXBmdW5jLmNjCTIwMDgtMDct MTUgMTI6MTc6MDEgKzAwMDAKKysrIGIvc3FsL2l0ZW1fY21wZnVuYy5jYwkyMDA4LTA3LTMxIDEx OjM3OjA3ICswMDAwCkBAIC0yMjI3LDggKzIyMjcsMTEgQEAgSXRlbV9mdW5jX2lmbnVsbDo6Zml4 X2xlbmd0aF9hbmRfZGVjKCkKIAogdWludCBJdGVtX2Z1bmNfaWZudWxsOjpkZWNpbWFsX3ByZWNp c2lvbigpIGNvbnN0CiB7Ci0gIGludCBtYXhfaW50X3BhcnQ9bWF4KGFyZ3NbMF0tPmRlY2ltYWxf aW50X3BhcnQoKSxhcmdzWzFdLT5kZWNpbWFsX2ludF9wYXJ0KCkpOwotICByZXR1cm4gbWluKG1h eF9pbnRfcGFydCArIGRlY2ltYWxzLCBERUNJTUFMX01BWF9QUkVDSVNJT04pOworICBpbnQgYXJn MF9pbnRfcGFydD0gYXJnc1swXS0+ZGVjaW1hbF9pbnRfcGFydCgpOworICBpbnQgYXJnMV9pbnRf cGFydD0gYXJnc1sxXS0+ZGVjaW1hbF9pbnRfcGFydCgpOworICBpbnQgbWF4X2ludF9wYXJ0PSBt YXgoYXJnMF9pbnRfcGFydCwgYXJnMV9pbnRfcGFydCk7CisgIGludCBwcmVjaXNpb249IG1heF9p bnRfcGFydCArIGRlY2ltYWxzOworICByZXR1cm4gbWluKHByZWNpc2lvbiwgREVDSU1BTF9NQVhf UFJFQ0lTSU9OKTsKIH0KIAogCkBAIC0yNDA5LDggKzI0MTIsOSBAQCBJdGVtX2Z1bmNfaWY6OmZp eF9sZW5ndGhfYW5kX2RlYygpCiAKIHVpbnQgSXRlbV9mdW5jX2lmOjpkZWNpbWFsX3ByZWNpc2lv bigpIGNvbnN0CiB7Ci0gIGludCBwcmVjaXNpb249KG1heChhcmdzWzFdLT5kZWNpbWFsX2ludF9w YXJ0KCksYXJnc1syXS0+ZGVjaW1hbF9pbnRfcGFydCgpKSsKLSAgICAgICAgICAgICAgICAgZGVj aW1hbHMpOworICBpbnQgYXJnMV9wcmVjPSBhcmdzWzFdLT5kZWNpbWFsX2ludF9wYXJ0KCk7Cisg IGludCBhcmcyX3ByZWM9IGFyZ3NbMl0tPmRlY2ltYWxfaW50X3BhcnQoKTsKKyAgaW50IHByZWNp c2lvbj1tYXgoYXJnMV9wcmVjLGFyZzJfcHJlYykgKyBkZWNpbWFsczsKICAgcmV0dXJuIG1pbihw cmVjaXNpb24sIERFQ0lNQUxfTUFYX1BSRUNJU0lPTik7CiB9CiAKCj09PSBtb2RpZmllZCBmaWxl ICdzcWwvaXRlbV9mdW5jLmNjJwotLS0gYS9zcWwvaXRlbV9mdW5jLmNjCTIwMDgtMDctMDkgMDc6 MTI6NDMgKzAwMDAKKysrIGIvc3FsL2l0ZW1fZnVuYy5jYwkyMDA4LTA4LTA3IDAzOjA1OjMzICsw MDAwCkBAIC02MTksNyArNjE5LDcgQEAgdm9pZCBJdGVtX2Z1bmM6OnNpZ25hbF9kaXZpZGVfYnlf bnVsbCgpCiB7CiAgIFRIRCAqdGhkPSBjdXJyZW50X3RoZDsKICAgaWYgKHRoZC0+dmFyaWFibGVz LnNxbF9tb2RlICYgTU9ERV9FUlJPUl9GT1JfRElWSVNJT05fQllfWkVSTykKLSAgICBwdXNoX3dh cm5pbmcodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwgRVJfRElWSVNJT05fQllf WkVSTywKKyAgICBwdXNoX3dhcm5pbmcodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJO LCBFUl9ESVZJU0lPTl9CWV9aRVJPLAogICAgICAgICAgICAgICAgICBFUihFUl9ESVZJU0lPTl9C WV9aRVJPKSk7CiAgIG51bGxfdmFsdWU9IDE7CiB9CkBAIC0xMDc0LDcgKzEwNzQsNyBAQCBteV9k ZWNpbWFsICpJdGVtX2RlY2ltYWxfdHlwZWNhc3Q6OnZhbF9kCiAgIHJldHVybiBkZWM7CiAKIGVy cjoKLSAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldBUk5f TEVWRUxfRVJST1IsCisgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VS Uk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgRVJfV0FSTl9EQVRB X09VVF9PRl9SQU5HRSwKICAgICAgICAgICAgICAgICAgICAgICBFUihFUl9XQVJOX0RBVEFfT1VU X09GX1JBTkdFKSwKICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCAxKTsKQEAgLTExNTYsOSAr MTE1NiwxMCBAQCBteV9kZWNpbWFsICpJdGVtX2Z1bmNfcGx1czo6ZGVjaW1hbF9vcChtCiB2b2lk IEl0ZW1fZnVuY19hZGRpdGl2ZV9vcDo6cmVzdWx0X3ByZWNpc2lvbigpCiB7CiAgIGRlY2ltYWxz PSBtYXgoYXJnc1swXS0+ZGVjaW1hbHMsIGFyZ3NbMV0tPmRlY2ltYWxzKTsKLSAgaW50IG1heF9p bnRfcGFydD0gbWF4KGFyZ3NbMF0tPmRlY2ltYWxfcHJlY2lzaW9uKCkgLSBhcmdzWzBdLT5kZWNp bWFscywKLSAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3NbMV0tPmRlY2ltYWxfcHJlY2lzaW9u KCkgLSBhcmdzWzFdLT5kZWNpbWFscyk7Ci0gIGludCBwcmVjaXNpb249IG1pbihtYXhfaW50X3Bh cnQgKyAxICsgZGVjaW1hbHMsIERFQ0lNQUxfTUFYX1BSRUNJU0lPTik7CisgIGludCBhcmcxX2lu dD0gYXJnc1swXS0+ZGVjaW1hbF9wcmVjaXNpb24oKSAtIGFyZ3NbMF0tPmRlY2ltYWxzOworICBp bnQgYXJnMl9pbnQ9IGFyZ3NbMV0tPmRlY2ltYWxfcHJlY2lzaW9uKCkgLSBhcmdzWzFdLT5kZWNp bWFsczsKKyAgaW50IGVzdF9wcmVjPSBtYXgoYXJnMV9pbnQsIGFyZzJfaW50KSArIDEgKyBkZWNp bWFsczsKKyAgaW50IHByZWNpc2lvbj0gbWluKGVzdF9wcmVjLCBERUNJTUFMX01BWF9QUkVDSVNJ T04pOwogCiAgIC8qIEludGVnZXIgb3BlcmF0aW9ucyBrZWVwIHVuc2lnbmVkX2ZsYWcgaWYgb25l IG9mIGFyZ3VtZW50cyBpcyB1bnNpZ25lZCAqLwogICBpZiAocmVzdWx0X3R5cGUoKSA9PSBJTlRf UkVTVUxUKQpAQCAtMTI2OSw4ICsxMjcwLDggQEAgdm9pZCBJdGVtX2Z1bmNfbXVsOjpyZXN1bHRf cHJlY2lzaW9uKCkKICAgZWxzZQogICAgIHVuc2lnbmVkX2ZsYWc9IGFyZ3NbMF0tPnVuc2lnbmVk X2ZsYWcgJiBhcmdzWzFdLT51bnNpZ25lZF9mbGFnOwogICBkZWNpbWFscz0gbWluKGFyZ3NbMF0t PmRlY2ltYWxzICsgYXJnc1sxXS0+ZGVjaW1hbHMsIERFQ0lNQUxfTUFYX1NDQUxFKTsKLSAgaW50 IHByZWNpc2lvbj0gbWluKGFyZ3NbMF0tPmRlY2ltYWxfcHJlY2lzaW9uKCkgKyBhcmdzWzFdLT5k ZWNpbWFsX3ByZWNpc2lvbigpLAotICAgICAgICAgICAgICAgICAgICAgREVDSU1BTF9NQVhfUFJF Q0lTSU9OKTsKKyAgdWludCBlc3RfcHJlYyA9IGFyZ3NbMF0tPmRlY2ltYWxfcHJlY2lzaW9uKCkg KyBhcmdzWzFdLT5kZWNpbWFsX3ByZWNpc2lvbigpOworICB1aW50IHByZWNpc2lvbj0gbWluKGVz dF9wcmVjLCBERUNJTUFMX01BWF9QUkVDSVNJT04pOwogICBtYXhfbGVuZ3RoPSBteV9kZWNpbWFs X3ByZWNpc2lvbl90b19sZW5ndGgocHJlY2lzaW9uLCBkZWNpbWFscyx1bnNpZ25lZF9mbGFnKTsK IH0KIApAQCAtMTMxNyw4ICsxMzE4LDggQEAgbXlfZGVjaW1hbCAqSXRlbV9mdW5jX2Rpdjo6ZGVj aW1hbF9vcChteQogCiB2b2lkIEl0ZW1fZnVuY19kaXY6OnJlc3VsdF9wcmVjaXNpb24oKQogewot ICB1aW50IHByZWNpc2lvbj1taW4oYXJnc1swXS0+ZGVjaW1hbF9wcmVjaXNpb24oKSArIHByZWNf aW5jcmVtZW50LAotICAgICAgICAgICAgICAgICAgICAgREVDSU1BTF9NQVhfUFJFQ0lTSU9OKTsK KyAgdWludCBhcmdfcHJlYz0gYXJnc1swXS0+ZGVjaW1hbF9wcmVjaXNpb24oKSArIHByZWNfaW5j cmVtZW50OworICB1aW50IHByZWNpc2lvbj1taW4oYXJnX3ByZWMsIERFQ0lNQUxfTUFYX1BSRUNJ U0lPTik7CiAgIC8qIEludGVnZXIgb3BlcmF0aW9ucyBrZWVwIHVuc2lnbmVkX2ZsYWcgaWYgb25l IG9mIGFyZ3VtZW50cyBpcyB1bnNpZ25lZCAqLwogICBpZiAocmVzdWx0X3R5cGUoKSA9PSBJTlRf UkVTVUxUKQogICAgIHVuc2lnbmVkX2ZsYWc9IGFyZ3NbMF0tPnVuc2lnbmVkX2ZsYWcgfCBhcmdz WzFdLT51bnNpZ25lZF9mbGFnOwpAQCAtMzczOSw3ICszNzQwLDcgQEAgbG9uZ2xvbmcgSXRlbV9m dW5jX2JlbmNobWFyazo6dmFsX2ludCgpCiAgICAgewogICAgICAgY2hhciBidWZmWzIyXTsKICAg ICAgIGxsc3RyKCgobG9uZ2xvbmcpIGxvb3BfY291bnQpLCBidWZmKTsKLSAgICAgIHB1c2hfd2Fy bmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAor ICAgICAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldBUk5f TEVWRUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgRVJfV1JPTkdfVkFMVUVfRk9S X1RZUEUsIEVSKEVSX1dST05HX1ZBTFVFX0ZPUl9UWVBFKSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgImNvdW50IiwgYnVmZiwgImJlbmNobWFyayIpOwogICAgIH0KCj09PSBtb2RpZmllZCBm aWxlICdzcWwvaXRlbV9zdHJmdW5jLmNjJwotLS0gYS9zcWwvaXRlbV9zdHJmdW5jLmNjCTIwMDgt MDctMjMgMDk6NDM6NTAgKzAwMDAKKysrIGIvc3FsL2l0ZW1fc3RyZnVuYy5jYwkyMDA4LTA3LTI1 IDE3OjIxOjU1ICswMDAwCkBAIC0yNDksNyArMjQ5LDcgQEAgU3RyaW5nICpJdGVtX2Z1bmNfc2hh Mjo6dmFsX3N0cihTdHJpbmcgKgogICBkZWZhdWx0OgogICAgIGlmICghYXJnc1sxXS0+Y29uc3Rf aXRlbSgpKQogICAgICAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwKLSAgICAgICAg TVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgICAgIE1ZU1FMX0VSUk9SOjpXQVJO X0xFVkVMX1dBUk4sCiAgICAgICAgIEVSX1dST05HX1BBUkFNRVRFUlNfVE9fTkFUSVZFX0ZDVCwK ICAgICAgICAgRVIoRVJfV1JPTkdfUEFSQU1FVEVSU19UT19OQVRJVkVfRkNUKSwgInNoYTIiKTsK ICAgICBudWxsX3ZhbHVlPSBUUlVFOwpAQCAtMjc2LDcgKzI3Niw3IEBAIFN0cmluZyAqSXRlbV9m dW5jX3NoYTI6OnZhbF9zdHIoU3RyaW5nICoKIAogI2Vsc2UKICAgcHVzaF93YXJuaW5nX3ByaW50 ZihjdXJyZW50X3RoZCwKLSAgICBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICBN WVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgIEVSX0ZFQVRVUkVfRElTQUJMRUQsCiAg ICAgRVIoRVJfRkVBVFVSRV9ESVNBQkxFRCksCiAgICAgInNoYTIiLCAiLS13aXRoLXNzbCIpOwpA QCAtMzE0LDcgKzMxNCw3IEBAIHZvaWQgSXRlbV9mdW5jX3NoYTI6OmZpeF9sZW5ndGhfYW5kX2Rl YygKICNlbmRpZgogICBkZWZhdWx0OgogICAgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90 aGQsCi0gICAgICBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICAgIE1ZU1FMX0VS Uk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICBFUl9XUk9OR19QQVJBTUVURVJTX1RPX05BVElW RV9GQ1QsCiAgICAgICBFUihFUl9XUk9OR19QQVJBTUVURVJTX1RPX05BVElWRV9GQ1QpLCAic2hh MiIpOwogICB9CkBAIC0zMzMsNyArMzMzLDcgQEAgdm9pZCBJdGVtX2Z1bmNfc2hhMjo6Zml4X2xl bmd0aF9hbmRfZGVjKAogICAgICAgREVSSVZBVElPTl9DT0VSQ0lCTEUpOwogI2Vsc2UKICAgcHVz aF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwKLSAgICBNWVNRTF9FUlJPUjo6V0FSTl9MRVZF TF9FUlJPUiwKKyAgICBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgIEVSX0ZFQVRV UkVfRElTQUJMRUQsCiAgICAgRVIoRVJfRkVBVFVSRV9ESVNBQkxFRCksCiAgICAgInNoYTIiLCAi LS13aXRoLXNzbCIpOwpAQCAtNjcxLDExICs2NzEsMTEgQEAgU3RyaW5nICpJdGVtX2Z1bmNfZGVz X2VuY3J5cHQ6OnZhbF9zdHIoUwogICByZXR1cm4gJnRtcF92YWx1ZTsKIAogZXJyb3I6Ci0gIHB1 c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJS T1IsCisgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsTVlTUUxfRVJST1I6OldBUk5f TEVWRUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZSwgRVIoY29kZSksCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICJkZXNfZW5jcnlwdCIpOwogI2Vsc2UKLSAgcHVzaF93 YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCxNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwK KyAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCxNWVNRTF9FUlJPUjo6V0FSTl9MRVZF TF9XQVJOLAogICAgICAgICAgICAgICAgICAgICAgIEVSX0ZFQVRVUkVfRElTQUJMRUQsIEVSKEVS X0ZFQVRVUkVfRElTQUJMRUQpLAogICAgICAgICAgICAgICAgICAgICAgICJkZXNfZW5jcnlwdCIs ICItLXdpdGgtc3NsIik7CiAjZW5kaWYJLyogSEFWRV9PUEVOU1NMICovCkBAIC03NDgsMTIgKzc0 OCwxMiBAQCBTdHJpbmcgKkl0ZW1fZnVuY19kZXNfZGVjcnlwdDo6dmFsX3N0cihTCiAgIHJldHVy biAmdG1wX3ZhbHVlOwogCiBlcnJvcjoKLSAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3Ro ZCxNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgcHVzaF93YXJuaW5nX3ByaW50Zihj dXJyZW50X3RoZCxNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgICAgICAgICAgICAg ICAgICAgICAgICBjb2RlLCBFUihjb2RlKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImRl c19kZWNyeXB0Iik7CiB3cm9uZ19rZXk6CiAjZWxzZQotICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1 cnJlbnRfdGhkLE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICBwdXNoX3dhcm5pbmdf cHJpbnRmKGN1cnJlbnRfdGhkLE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAg ICAgICAgICAgICAgICAgRVJfRkVBVFVSRV9ESVNBQkxFRCwgRVIoRVJfRkVBVFVSRV9ESVNBQkxF RCksCiAgICAgICAgICAgICAgICAgICAgICAgImRlc19kZWNyeXB0IiwgIi0td2l0aC1zc2wiKTsK ICNlbmRpZgkvKiBIQVZFX09QRU5TU0wgKi8KQEAgLTM0ODgsNyArMzQ4OCw3IEBAIFN0cmluZyAq SXRlbV9mdW5jX2NvbXByZXNzOjp2YWxfc3RyKFN0cmkKIAkJICAgICAoY29uc3QgQnl0ZWYqKXJl cy0+cHRyKCksIHJlcy0+bGVuZ3RoKCkpKSAhPSBaX09LKQogICB7CiAgICAgY29kZT0gZXJyPT1a X01FTV9FUlJPUiA/IEVSX1pMSUJfWl9NRU1fRVJST1IgOiBFUl9aTElCX1pfQlVGX0VSUk9SOwot ICAgIHB1c2hfd2FybmluZyhjdXJyZW50X3RoZCxNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJP Uixjb2RlLEVSKGNvZGUpKTsKKyAgICBwdXNoX3dhcm5pbmcoY3VycmVudF90aGQsTVlTUUxfRVJS T1I6OldBUk5fTEVWRUxfV0FSTixjb2RlLEVSKGNvZGUpKTsKICAgICBudWxsX3ZhbHVlPSAxOwog ICAgIHJldHVybiAwOwogICB9CkBAIC0zNTI2LDcgKzM1MjYsNyBAQCBTdHJpbmcgKkl0ZW1fZnVu Y191bmNvbXByZXNzOjp2YWxfc3RyKFN0CiAgIC8qIElmIGxlbmd0aCBpcyBsZXNzIHRoYW4gNCBi eXRlcywgZGF0YSBpcyBjb3JydXB0ICovCiAgIGlmIChyZXMtPmxlbmd0aCgpIDw9IDQpCiAgIHsK LSAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1cnJlbnRfdGhkLE1ZU1FMX0VSUk9SOjpXQVJOX0xF VkVMX0VSUk9SLAorICAgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsTVlTUUxfRVJS T1I6OldBUk5fTEVWRUxfV0FSTiwKIAkJCUVSX1pMSUJfWl9EQVRBX0VSUk9SLAogCQkJRVIoRVJf WkxJQl9aX0RBVEFfRVJST1IpKTsKICAgICBnb3RvIGVycjsKQEAgLTM1MzYsNyArMzUzNiw3IEBA IFN0cmluZyAqSXRlbV9mdW5jX3VuY29tcHJlc3M6OnZhbF9zdHIoU3QKICAgbmV3X3NpemU9IHVp bnQ0a29ycihyZXMtPnB0cigpKSAmIDB4M0ZGRkZGRkY7CiAgIGlmIChuZXdfc2l6ZSA+IGN1cnJl bnRfdGhkLT52YXJpYWJsZXMubWF4X2FsbG93ZWRfcGFja2V0KQogICB7Ci0gICAgcHVzaF93YXJu aW5nX3ByaW50ZihjdXJyZW50X3RoZCxNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAg ICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1cnJlbnRfdGhkLE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVM X1dBUk4sCiAJCQlFUl9UT09fQklHX0ZPUl9VTkNPTVBSRVNTLAogCQkJRVIoRVJfVE9PX0JJR19G T1JfVU5DT01QUkVTUyksCiAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50X3RoZC0+dmFy aWFibGVzLm1heF9hbGxvd2VkX3BhY2tldCk7CkBAIC0zNTU0LDcgKzM1NTQsNyBAQCBTdHJpbmcg Kkl0ZW1fZnVuY191bmNvbXByZXNzOjp2YWxfc3RyKFN0CiAKICAgY29kZT0gKChlcnIgPT0gWl9C VUZfRVJST1IpID8gRVJfWkxJQl9aX0JVRl9FUlJPUiA6CiAJICgoZXJyID09IFpfTUVNX0VSUk9S KSA/IEVSX1pMSUJfWl9NRU1fRVJST1IgOiBFUl9aTElCX1pfREFUQV9FUlJPUikpOwotICBwdXNo X3dhcm5pbmcoY3VycmVudF90aGQsTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsY29kZSxF Uihjb2RlKSk7CisgIHB1c2hfd2FybmluZyhjdXJyZW50X3RoZCxNWVNRTF9FUlJPUjo6V0FSTl9M RVZFTF9XQVJOLGNvZGUsRVIoY29kZSkpOwogCiBlcnI6CiAgIG51bGxfdmFsdWU9IDE7Cgo9PT0g bW9kaWZpZWQgZmlsZSAnc3FsL2l0ZW1fc3Vic2VsZWN0LmNjJwotLS0gYS9zcWwvaXRlbV9zdWJz ZWxlY3QuY2MJMjAwOC0wNy0xMCAyMzoyOToyNyArMDAwMAorKysgYi9zcWwvaXRlbV9zdWJzZWxl Y3QuY2MJMjAwOC0wNy0yNCAxMDowMDo1NiArMDAwMApAQCAtMjIwMiw3ICsyMjAyLDggQEAgdm9p ZCBzdWJzZWxlY3RfdW5pcXVlc3VicXVlcnlfZW5naW5lOjpmaQogICBEQlVHX0FTU0VSVCgwKTsK IH0KIAotaW50ICBpbml0X3JlYWRfcmVjb3JkX3NlcShKT0lOX1RBQiAqdGFiKTsKK2ludCAgcmVh ZF9maXJzdF9yZWNvcmRfc2VxKEpPSU5fVEFCICp0YWIpOworaW50IHJyX3NlcXVlbnRpYWwoUkVB RF9SRUNPUkQgKmluZm8pOwogaW50IGpvaW5fcmVhZF9hbHdheXNfa2V5X29yX251bGwoSk9JTl9U QUIgKnRhYik7CiBpbnQgam9pbl9yZWFkX25leHRfc2FtZV9vcl9udWxsKFJFQURfUkVDT1JEICpp bmZvKTsKIApAQCAtMjI4OCw3ICsyMjg5LDggQEAgaW50IHN1YnNlbGVjdF9zaW5nbGVfc2VsZWN0 X2VuZ2luZTo6ZXhlYwogICAgICAgICAgICAgICAvKiBDaGFuZ2UgdGhlIGFjY2VzcyBtZXRob2Qg dG8gZnVsbCB0YWJsZSBzY2FuICovCiAgICAgICAgICAgICAgIHRhYi0+c2F2ZV9yZWFkX2ZpcnN0 X3JlY29yZD0gdGFiLT5yZWFkX2ZpcnN0X3JlY29yZDsKICAgICAgICAgICAgICAgdGFiLT5zYXZl X3JlYWRfcmVjb3JkPSB0YWItPnJlYWRfcmVjb3JkLnJlYWRfcmVjb3JkOwotICAgICAgICAgICAg ICB0YWItPnJlYWRfZmlyc3RfcmVjb3JkPSBpbml0X3JlYWRfcmVjb3JkX3NlcTsKKyAgICAgICAg ICAgICAgdGFiLT5yZWFkX3JlY29yZC5yZWFkX3JlY29yZD0gcnJfc2VxdWVudGlhbDsKKyAgICAg ICAgICAgICAgdGFiLT5yZWFkX2ZpcnN0X3JlY29yZD0gcmVhZF9maXJzdF9yZWNvcmRfc2VxOwog ICAgICAgICAgICAgICB0YWItPnJlYWRfcmVjb3JkLnJlY29yZD0gdGFiLT50YWJsZS0+cmVjb3Jk WzBdOwogICAgICAgICAgICAgICB0YWItPnJlYWRfcmVjb3JkLnRoZD0gam9pbi0+dGhkOwogICAg ICAgICAgICAgICB0YWItPnJlYWRfcmVjb3JkLnJlZl9sZW5ndGg9IHRhYi0+dGFibGUtPmZpbGUt PnJlZl9sZW5ndGg7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL2l0ZW1fdGltZWZ1bmMuY2MnCi0t LSBhL3NxbC9pdGVtX3RpbWVmdW5jLmNjCTIwMDgtMDMtMDUgMTA6MzI6NDkgKzAwMDAKKysrIGIv c3FsL2l0ZW1fdGltZWZ1bmMuY2MJMjAwOC0wNy0xNCAxMjo0OToxOSArMDAwMApAQCAtNjAyLDcg KzYwMiw3IEBAIGVycjoKICAgewogICAgIGNoYXIgYnVmZlsxMjhdOwogICAgIHN0cm1ha2UoYnVm ZiwgdmFsX2JlZ2luLCBtaW4obGVuZ3RoLCBzaXplb2YoYnVmZiktMSkpOwotICAgIHB1c2hfd2Fy bmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAor ICAgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xF VkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICBFUl9XUk9OR19WQUxVRV9GT1JfVFlQ RSwgRVIoRVJfV1JPTkdfVkFMVUVfRk9SX1RZUEUpLAogICAgICAgICAgICAgICAgICAgICAgICAg ZGF0ZV90aW1lX3R5cGUsIGJ1ZmYsICJzdHJfdG9fZGF0ZSIpOwogICB9Cgo9PT0gbW9kaWZpZWQg ZmlsZSAnc3FsL2xvZy5jYycKLS0tIGEvc3FsL2xvZy5jYwkyMDA4LTA3LTIyIDEwOjUxOjEzICsw MDAwCisrKyBiL3NxbC9sb2cuY2MJMjAwOC0wNy0yNSAxNzoyMTo1NSArMDAwMApAQCAtMjg3NSw3 ICsyODc1LDcgQEAgYm9vbCBNWVNRTF9CSU5fTE9HOjpyZXNldF9sb2dzKFRIRCogdGhkKQogICAg ICAgfQogICAgICAgZWxzZQogICAgICAgewotICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1 cnJlbnRfdGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9FUlJPUiwKKyAgICAgICAgcHVzaF93 YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFUl9CSU5MT0dfUFVSR0VfRkFUQUxfRVJSLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhIHByb2JsZW0gd2l0aCBkZWxldGluZyAlczsg IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb25zaWRlciBleGFtaW5pbmcgY29ycmVz cG9uZGVuY2UgIgpAQCAtMjkwNiw3ICsyOTA2LDcgQEAgYm9vbCBNWVNRTF9CSU5fTE9HOjpyZXNl dF9sb2dzKFRIRCogdGhkKQogICAgIH0KICAgICBlbHNlCiAgICAgewotICAgICAgcHVzaF93YXJu aW5nX3ByaW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisg ICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKGN1cnJlbnRfdGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9M RVZFTF9XQVJOLAogICAgICAgICAgICAgICAgICAgICAgICAgICBFUl9CSU5MT0dfUFVSR0VfRkFU QUxfRVJSLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYSBwcm9ibGVtIHdpdGggZGVsZXRp bmcgJXM7ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbnNpZGVyIGV4YW1pbmluZyBj b3JyZXNwb25kZW5jZSAiCkBAIC0zMTM1LDcgKzMxMzUsNyBAQCBpbnQgTVlTUUxfQklOX0xPRzo6 cHVyZ2VfbG9ncyhjb25zdCBjaGFyCiAgICAgICAgICovCiAgICAgICAgIGlmICh0aGQpCiAgICAg ICAgIHsKLSAgICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldB Uk5fTEVWRUxfRVJST1IsCisgICAgICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FM X0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF Ul9CSU5MT0dfUFVSR0VfRkFUQUxfRVJSLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImEgcHJvYmxlbSB3aXRoIGdldHRpbmcgaW5mbyBvbiBiZWluZyBwdXJnZWQgJXM7ICIKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJjb25zaWRlciBleGFtaW5pbmcgY29ycmVzcG9uZGVu Y2UgIgpAQCAtMzE4MSw3ICszMTgxLDcgQEAgaW50IE1ZU1FMX0JJTl9MT0c6OnB1cmdlX2xvZ3Mo Y29uc3QgY2hhcgogICAgICAgICB7CiAgICAgICAgICAgaWYgKHRoZCkKICAgICAgICAgICB7Ci0g ICAgICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVW RUxfRVJST1IsCisgICAgICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJS T1I6OldBUk5fTEVWRUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVJf QklOTE9HX1BVUkdFX0ZBVEFMX0VSUiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImEgcHJvYmxlbSB3aXRoIGRlbGV0aW5nICVzOyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJjb25zaWRlciBleGFtaW5pbmcgY29ycmVzcG9uZGVuY2UgIgpAQCAtMzI5Niw3ICsz Mjk2LDcgQEAgaW50IE1ZU1FMX0JJTl9MT0c6OnB1cmdlX2xvZ3NfYmVmb3JlX2RhdAogICAgICAg ICAqLwogICAgICAgICBpZiAodGhkKQogICAgICAgICB7Ci0gICAgICAgICAgcHVzaF93YXJuaW5n X3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgICAgIHB1 c2hfd2FybmluZ19wcmludGYodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgRVJfQklOTE9HX1BVUkdFX0ZBVEFMX0VSUiwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhIHByb2JsZW0gd2l0aCBnZXR0aW5nIGluZm8g b24gYmVpbmcgcHVyZ2VkICVzOyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29u c2lkZXIgZXhhbWluaW5nIGNvcnJlc3BvbmRlbmNlICIKQEAgLTMzMzYsNyArMzMzNiw3IEBAIGlu dCBNWVNRTF9CSU5fTE9HOjpwdXJnZV9sb2dzX2JlZm9yZV9kYXQKICAgICAgICAgewogICAgICAg ICAgIGlmICh0aGQpCiAgICAgICAgICAgewotICAgICAgICAgICAgcHVzaF93YXJuaW5nX3ByaW50 Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgICAgICAgcHVzaF93 YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEVSX0JJTkxPR19QVVJHRV9GQVRBTF9FUlIsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhIHByb2JsZW0gd2l0aCBkZWxldGluZyAlczsg IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29uc2lkZXIgZXhhbWluaW5nIGNv cnJlc3BvbmRlbmNlICIKQEAgLTM5MzgsNyArMzkzOCw2IEBAIGJvb2wgTVlTUUxfQklOX0xPRzo6 d3JpdGUoTG9nX2V2ZW50ICpldmUKICAgICB9CiAjZW5kaWYgLyogSEFWRV9SRVBMSUNBVElPTiAq LwogCi0jaWYgZGVmaW5lZChVU0lOR19UUkFOU0FDVElPTlMpIAogICAgIC8qCiAgICAgICBTaG91 bGQgd2Ugd3JpdGUgdG8gdGhlIGJpbmxvZyBjYWNoZSBvciB0byB0aGUgYmlubG9nIG9uIGRpc2s/ CiAgICAgICBXcml0ZSB0byB0aGUgYmlubG9nIGNhY2hlIGlmOgpAQCAtMzk3Myw3ICszOTcyLDcg QEAgYm9vbCBNWVNRTF9CSU5fTE9HOjp3cml0ZShMb2dfZXZlbnQgKmV2ZQogICAgICAgICBMT0NL X2xvZy4KICAgICAgICovCiAgICAgfQotI2VuZGlmIC8qIFVTSU5HX1RSQU5TQUNUSU9OUyAqLwor CiAgICAgREJVR19QUklOVCgiaW5mbyIsKCJldmVudCB0eXBlOiAlZCIsZXZlbnRfaW5mby0+Z2V0 X3R5cGVfY29kZSgpKSk7CiAKICAgICAvKgoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9sb2dfZXZl bnQuY2MnCi0tLSBhL3NxbC9sb2dfZXZlbnQuY2MJMjAwOC0wNy0xMCAyMzoyOToyNyArMDAwMAor KysgYi9zcWwvbG9nX2V2ZW50LmNjCTIwMDgtMDctMjQgMTA6MDA6NTYgKzAwMDAKQEAgLTMwOTQs NyArMzA5NCw2IEBAIGludCBGb3JtYXRfZGVzY3JpcHRpb25fbG9nX2V2ZW50Ojpkb19hcHAKIHsK ICAgREJVR19FTlRFUigiRm9ybWF0X2Rlc2NyaXB0aW9uX2xvZ19ldmVudDo6ZG9fYXBwbHlfZXZl bnQiKTsKIAotI2lmZGVmIFVTSU5HX1RSQU5TQUNUSU9OUwogICAvKgogICAgIEFzIGEgdHJhbnNh Y3Rpb24gTkVWRVIgc3BhbnMgb24gMiBvciBtb3JlIGJpbmxvZ3M6CiAgICAgaWYgd2UgaGF2ZSBh biBhY3RpdmUgdHJhbnNhY3Rpb24gYXQgdGhpcyBwb2ludCwgdGhlIG1hc3RlciBkaWVkCkBAIC0z MTE2LDcgKzMxMTUsNyBAQCBpbnQgRm9ybWF0X2Rlc2NyaXB0aW9uX2xvZ19ldmVudDo6ZG9fYXBw CiAgICAgICAgICAgICAgICAgIml0cyBiaW5hcnkgbG9nLCB0aHVzIHJvbGxlZCBiYWNrIHRvby4i KTsgCiAgICAgY29uc3RfY2FzdDxSZWxheV9sb2dfaW5mbyo+KHJsaSktPmNsZWFudXBfY29udGV4 dCh0aGQsIDEpOwogICB9Ci0jZW5kaWYKKwogICAvKgogICAgIElmIHRoaXMgZXZlbnQgY29tZXMg ZnJvbSBvdXJzZWx2ZXMsIHRoZXJlIGlzIG5vIGNsZWFuaW5nIHRhc2sgdG8KICAgICBwZXJmb3Jt LCB3ZSBkb24ndCBjYWxsIFN0YXJ0X2xvZ19ldmVudF92Mzo6ZG9fYXBwbHlfZXZlbnQoKQoKPT09 IG1vZGlmaWVkIGZpbGUgJ3NxbC9tZGwuY2MnCi0tLSBhL3NxbC9tZGwuY2MJMjAwOC0wNi0yMCAx MzoxMToyMCArMDAwMAorKysgYi9zcWwvbWRsLmNjCTIwMDgtMDctMDcgMTU6NTE6MjAgKzAwMDAK QEAgLTI0NSw4ICsyNDUsOSBAQCB2b2lkIG1kbF9jb250ZXh0X21lcmdlKE1ETF9DT05URVhUICpk c3QsCiAKICAgIEBwYXJhbSAgbG9ja19kYXRhICBQb2ludGVyIHRvIGFuIE1ETF9MT0NLX0RBVEEg b2JqZWN0IHRvIGluaXRpYWxpemUKICAgIEBwYXJhbSAga2V5X2J1ZmYgICBQb2ludGVyIHRvIHRo ZSBidWZmZXIgZm9yIGtleSBmb3IgdGhlIGxvY2sgcmVxdWVzdAotICAgICAgICAgICAgICAgICAg ICAgIChzaG91bGQgYmUgYXQgbGVhc3Qgc3RybGVuKGRiKSArIHN0cmxlbihuYW1lKQotICAgICAg ICAgICAgICAgICAgICAgICsgMiBieXRlcywgb3IsIGlmIHRoZSBsZW5ndGhzIGFyZSBub3Qga25v d24sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUFYX0RCTkFNRV9MRU5HVEgpCisgICAg ICAgICAgICAgICAgICAgICAgKHNob3VsZCBiZSBhdCBsZWFzdCA0KyBzdHJsZW4oZGIpICsgMSAr IHN0cmxlbihuYW1lKQorICAgICAgICAgICAgICAgICAgICAgICsgMSBieXRlcywgb3IsIGlmIHRo ZSBsZW5ndGhzIGFyZSBub3Qga25vd24sCisgICAgICAgICAgICAgICAgICAgICAgTUFYX01ETEtF WV9MRU5HVEgpCiAgICBAcGFyYW0gIHR5cGUgICAgICAgSWQgb2YgdHlwZSBvZiBvYmplY3QgdG8g YmUgbG9ja2VkCiAgICBAcGFyYW0gIGRiICAgICAgICAgTmFtZSBvZiBkYXRhYmFzZSB0byB3aGlj aCB0aGUgb2JqZWN0IGJlbG9uZ3MKICAgIEBwYXJhbSAgbmFtZSAgICAgICBOYW1lIG9mIG9mIHRo ZSBvYmplY3QKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvbXlfZGVjaW1hbC5jYycKLS0tIGEvc3Fs L215X2RlY2ltYWwuY2MJMjAwOC0wNS0xMyAyMzo0Mjo0MyArMDAwMAorKysgYi9zcWwvbXlfZGVj aW1hbC5jYwkyMDA4LTA3LTE0IDEyOjQ5OjE5ICswMDAwCkBAIC00NywxMSArNDcsMTEgQEAgaW50 IGRlY2ltYWxfb3BlcmF0aW9uX3Jlc3VsdHMoaW50IHJlc3VsdAogCQkJIkRFQ0lNQUwiLCAiIik7 CiAgICAgYnJlYWs7CiAgIGNhc2UgRV9ERUNfRElWX1pFUk86Ci0gICAgcHVzaF93YXJuaW5nX3By aW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgcHVz aF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FS TiwKIAkJCUVSX0RJVklTSU9OX0JZX1pFUk8sIEVSKEVSX0RJVklTSU9OX0JZX1pFUk8pKTsKICAg ICBicmVhazsKICAgY2FzZSBFX0RFQ19CQURfTlVNOgotICAgIHB1c2hfd2FybmluZ19wcmludGYo Y3VycmVudF90aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgIHB1c2hfd2Fy bmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAJ CQlFUl9UUlVOQ0FURURfV1JPTkdfVkFMVUVfRk9SX0ZJRUxELAogCQkJRVIoRVJfVFJVTkNBVEVE X1dST05HX1ZBTFVFX0ZPUl9GSUVMRCksCiAJCQkiZGVjaW1hbCIsICIiLCAiIiwgKGxvbmcpLTEp OwoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9teXNxbF9wcml2LmgnCi0tLSBhL3NxbC9teXNxbF9w cml2LmgJMjAwOC0wNy0yNSAxNToxMDoxNCArMDAwMAorKysgYi9zcWwvbXlzcWxfcHJpdi5oCTIw MDgtMDgtMDcgMDM6MDU6MzMgKzAwMDAKQEAgLTIxMTIsOCArMjExMiw4IEBAIGV4dGVybiBzdHJ1 Y3QgbXlfb3B0aW9uIG15X2xvbmdfb3B0aW9uc1sKIGV4dGVybiBjb25zdCBMRVhfU1RSSU5HIHZp ZXdfdHlwZTsKIGV4dGVybiBzY2hlZHVsZXJfZnVuY3Rpb25zIHRocmVhZF9zY2hlZHVsZXI7CiBl eHRlcm4gVFlQRUxJQiB0aHJlYWRfaGFuZGxpbmdfdHlwZWxpYjsKLWV4dGVybiB1aW50OCB1Y191 cGRhdGVfcXVlcmllc1tTUUxDT01fRU5EKzFdOwogZXh0ZXJuIHVpbnQgc3FsX2NvbW1hbmRfZmxh Z3NbXTsKK2V4dGVybiB1aW50IHNlcnZlcl9jb21tYW5kX2ZsYWdzW107CiBleHRlcm4gVFlQRUxJ QiBsb2dfb3V0cHV0X3R5cGVsaWI7CiAKIC8qIG9wdGlvbmFsIHRoaW5ncywgaGF2ZV8qIHZhcmlh YmxlcyAqLwoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9zZXRfdmFyLmNjJwotLS0gYS9zcWwvc2V0 X3Zhci5jYwkyMDA4LTA3LTIyIDEwOjU3OjQ4ICswMDAwCisrKyBiL3NxbC9zZXRfdmFyLmNjCTIw MDgtMDctMjUgMTc6MjE6NTUgKzAwMDAKQEAgLTEyNzksMTIgKzEyNzksMTAgQEAgc3RhdGljIHZv aWQgZml4X3RoZF9tZW1fcm9vdChUSEQgKnRoZCwgZQogCiBzdGF0aWMgdm9pZCBmaXhfdHJhbnNf bWVtX3Jvb3QoVEhEICp0aGQsIGVudW1fdmFyX3R5cGUgdHlwZSkKIHsKLSNpZmRlZiBVU0lOR19U UkFOU0FDVElPTlMKICAgaWYgKHR5cGUgIT0gT1BUX0dMT0JBTCkKICAgICByZXNldF9yb290X2Rl ZmF1bHRzKCZ0aGQtPnRyYW5zYWN0aW9uLm1lbV9yb290LAogICAgICAgICAgICAgICAgICAgICAg ICAgdGhkLT52YXJpYWJsZXMudHJhbnNfYWxsb2NfYmxvY2tfc2l6ZSwKICAgICAgICAgICAgICAg ICAgICAgICAgIHRoZC0+dmFyaWFibGVzLnRyYW5zX3ByZWFsbG9jX3NpemUpOwotI2VuZGlmCiB9 CiAKIAoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9zaGFyZS9lcnJtc2cudHh0JwotLS0gYS9zcWwv c2hhcmUvZXJybXNnLnR4dAkyMDA4LTA3LTE4IDEzOjMwOjUzICswMDAwCisrKyBiL3NxbC9zaGFy ZS9lcnJtc2cudHh0CTIwMDgtMDgtMDYgMTQ6Mzk6MDMgKzAwMDAKQEAgLTQ3MTgsNyArNDcxOCw3 IEBAIEVSX1NMQVZFX0lHTk9SRURfVEFCTEUgIAogICAgICAgICBzd2UgIlNsYXYgU1FMIHRy77+9 ZGVuIGlnbm9yZXJhZGUgZnLvv71nYW4gcGdhIGVuIHJlcGxpY2F0ZS0qLXRhYmxlIHJlZ2VsIgog RVJfSU5DT1JSRUNUX0dMT0JBTF9MT0NBTF9WQVIgIAogICAgICAgICBlbmcgIlZhcmlhYmxlICcl LS4xOTJzJyBpcyBhICVzIHZhcmlhYmxlIgotICAgICAgICBzZXJiaWFuICJJbmNvcnJlY3QgZm9y ZWlnbiBrZXkgZGVmaW5pdGlvbiBmb3IgJyUtLjE5MnMnOiAlcyIKKyAgICAgICAgc2VyYmlhbiAi UHJvbWVubGppdmEgJyUtLjE5MnMnIGplICVzIHByb21lbmxqaXZhIgogICAgICAgICBnZXIgIlZh cmlhYmxlICclLS4xOTJzJyBpc3QgZWluZSAlcy1WYXJpYWJsZSIKICAgICAgICAgbmxhICJWYXJp YWJlbGUgJyUtLjE5MnMnIGlzIGdlZW4gJXMgdmFyaWFiZWxlIgogICAgICAgICBzcGEgIlZhcmlh YmxlICclLS4xOTJzJyBlcyB1bmEgJXMgdmFyaWFibGUiCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3Fs L3NwX2hlYWQuY2MnCi0tLSBhL3NxbC9zcF9oZWFkLmNjCTIwMDgtMDgtMDEgMTU6Mzg6MDUgKzAw MDAKKysrIGIvc3FsL3NwX2hlYWQuY2MJMjAwOC0wOC0wNyAxODozNzo1NSArMDAwMApAQCAtMTkz Myw3ICsxOTMzLDE1IEBAIHNwX2hlYWQ6OmV4ZWN1dGVfcHJvY2VkdXJlKFRIRCAqdGhkLCBMaXMK ICAgICAgIHdlJ2xsIGxlYXZlIGl0IGhlcmUuCiAgICAgKi8KICAgICBpZiAoIXRoZC0+aW5fc3Vi X3N0bXQpCisgICAgeworICAgICAgdGhkLT5sZXgtPnVuaXQuY2xlYW51cCgpOworCisgICAgICB0 aGRfcHJvY19pbmZvKHRoZCwgImNsb3NpbmcgdGFibGVzIik7CiAgICAgICBjbG9zZV90aHJlYWRf dGFibGVzKHRoZCk7CisgICAgICB0aGRfcHJvY19pbmZvKHRoZCwgMCk7CisKKyAgICAgIHRoZC0+ cm9sbGJhY2tfaXRlbV90cmVlX2NoYW5nZXMoKTsKKyAgICB9CiAKICAgICBEQlVHX1BSSU5UKCJp bmZvIiwoIiAlLipzOiBldmFsIGFyZ3MgZG9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgIChp bnQpIG1fbmFtZS5sZW5ndGgsIG1fbmFtZS5zdHIpKTsKCj09PSBtb2RpZmllZCBmaWxlICdzcWwv c3FsX2FjbC5jYycKLS0tIGEvc3FsL3NxbF9hY2wuY2MJMjAwOC0wNy0xNyAxOTo1NToxOCArMDAw MAorKysgYi9zcWwvc3FsX2FjbC5jYwkyMDA4LTA4LTA3IDAzOjA1OjMzICswMDAwCkBAIC00NTY1 LDEzICs0NTY1LDEzIEBAIHN0YXRpYyBjb25zdCBjaGFyICpjb21tYW5kX2FycmF5W109CiAgICJB TFRFUiIsICJTSE9XIERBVEFCQVNFUyIsICJTVVBFUiIsICJDUkVBVEUgVEVNUE9SQVJZIFRBQkxF UyIsCiAgICJMT0NLIFRBQkxFUyIsICJFWEVDVVRFIiwgIlJFUExJQ0FUSU9OIFNMQVZFIiwgIlJF UExJQ0FUSU9OIENMSUVOVCIsCiAgICJDUkVBVEUgVklFVyIsICJTSE9XIFZJRVciLCAiQ1JFQVRF IFJPVVRJTkUiLCAiQUxURVIgUk9VVElORSIsCi0gICJDUkVBVEUgVVNFUiIsICJFVkVOVCIsICJU UklHR0VSIgorICAiQ1JFQVRFIFVTRVIiLCAiRVZFTlQiLCAiVFJJR0dFUiIsICJDUkVBVEUgVEFC TEVTUEFDRSIKIH07CiAKIHN0YXRpYyB1aW50IGNvbW1hbmRfbGVuZ3Roc1tdPQogewogICA2LCA2 LCA2LCA2LCA2LCA0LCA2LCA4LCA3LCA0LCA1LCAxMCwgNSwgNSwgMTQsIDUsIDIzLCAxMSwgNywg MTcsIDE4LCAxMSwgOSwKLSAgMTQsIDEzLCAxMSwgNSwgNworICAxNCwgMTMsIDExLCA1LCA3LCAx NwogfTsKIAogCkBAIC01ODExLDcgKzU4MTEsNiBAQCBib29sIG15c3FsX2Ryb3BfdXNlcihUSEQg KnRoZCwgTGlzdCA8TEVYCiAKICAgd2hpbGUgKCh0bXBfdXNlcl9uYW1lPSB1c2VyX2xpc3QrKykp CiAgIHsKLSAgICB1c2VyX25hbWU9IGdldF9jdXJyZW50X3VzZXIodGhkLCB0bXBfdXNlcl9uYW1l KTsKICAgICBpZiAoISh1c2VyX25hbWU9IGdldF9jdXJyZW50X3VzZXIodGhkLCB0bXBfdXNlcl9u YW1lKSkpCiAgICAgewogICAgICAgcmVzdWx0PSBUUlVFOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3Nx bC9zcWxfYWNsLmgnCi0tLSBhL3NxbC9zcWxfYWNsLmgJMjAwOC0wMy0yOCAxMzozMzozMSArMDAw MAorKysgYi9zcWwvc3FsX2FjbC5oCTIwMDgtMDctMjQgMDc6NDQ6MjEgKzAwMDAKQEAgLTQzLDYg KzQzLDcgQEAKICNkZWZpbmUgQ1JFQVRFX1VTRVJfQUNMICgxTCA8PCAyNSkKICNkZWZpbmUgRVZF TlRfQUNMICAgICAgICgxTCA8PCAyNikKICNkZWZpbmUgVFJJR0dFUl9BQ0wgICAgICgxTCA8PCAy NykKKyNkZWZpbmUgQ1JFQVRFX1RBQkxFU1BBQ0VfQUNMICgxTCA8PCAyOCkKIC8qCiAgIGRvbid0 IGZvcmdldCB0byB1cGRhdGUKICAgMS4gc3RhdGljIHN0cnVjdCBzaG93X3ByaXZpbGVnZXNfc3Qg c3lzX3ByaXZpbGVnZXNbXQpAQCAtNzksNyArODAsOCBAQAogIFJFRkVSRU5DRVNfQUNMIHwgSU5E RVhfQUNMIHwgQUxURVJfQUNMIHwgU0hPV19EQl9BQ0wgfCBTVVBFUl9BQ0wgfCBcCiAgQ1JFQVRF X1RNUF9BQ0wgfCBMT0NLX1RBQkxFU19BQ0wgfCBSRVBMX1NMQVZFX0FDTCB8IFJFUExfQ0xJRU5U X0FDTCB8IFwKICBFWEVDVVRFX0FDTCB8IENSRUFURV9WSUVXX0FDTCB8IFNIT1dfVklFV19BQ0wg fCBDUkVBVEVfUFJPQ19BQ0wgfCBcCi0gQUxURVJfUFJPQ19BQ0wgfCBDUkVBVEVfVVNFUl9BQ0wg fCBFVkVOVF9BQ0wgfCBUUklHR0VSX0FDTCkKKyBBTFRFUl9QUk9DX0FDTCB8IENSRUFURV9VU0VS X0FDTCB8IEVWRU5UX0FDTCB8IFRSSUdHRVJfQUNMIHwgXAorIENSRUFURV9UQUJMRVNQQUNFX0FD TCkKIAogI2RlZmluZSBERUZBVUxUX0NSRUFURV9QUk9DX0FDTFMgXAogKEFMVEVSX1BST0NfQUNM IHwgRVhFQ1VURV9BQ0wpCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL3NxbF9jYWNoZS5jYycKLS0t IGEvc3FsL3NxbF9jYWNoZS5jYwkyMDA4LTA3LTI1IDE1OjEwOjE0ICswMDAwCisrKyBiL3NxbC9z cWxfY2FjaGUuY2MJMjAwOC0wOC0wNyAwMzowNTozMyArMDAwMApAQCAtMTE3Nyw4ICsxMTc3LDgg QEAgZW5kOgogICB0byB0aGUgdXNlci4KIAogICBSRVNVTFRTCi0gICAgICAgIDEJUXVlcnkgd2Fz IG5vdCBjYWNoZWQuCi0JMAlUaGUgcXVlcnkgd2FzIGNhY2hlZCBhbmQgdXNlciB3YXMgc2VudCB0 aGUgcmVzdWx0LgorICAgICAgICAxCVRoZSBxdWVyeSB3YXMgY2FjaGVkIGFuZCB1c2VyIHdhcyBz ZW50IHRoZSByZXN1bHQuCisJMAlRdWVyeSB3YXMgbm90IGNhY2hlZC4KIAktMQlUaGUgcXVlcnkg d2FzIGNhY2hlZCBidXQgd2UgZGlkbid0IGhhdmUgcmlnaHRzIHRvIHVzZSBpdC4KIAkJTm8gZXJy b3IgaXMgc2VudCB0byB0aGUgY2xpZW50IHlldC4KIAoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9z cWxfY2xhc3MuY2MnCi0tLSBhL3NxbC9zcWxfY2xhc3MuY2MJMjAwOC0wNy0yNCAwODoyNjoyNCAr MDAwMAorKysgYi9zcWwvc3FsX2NsYXNzLmNjCTIwMDgtMDctMjUgMTc6MjE6NTUgKzAwMDAKQEAg LTc5MywxMSArNzkzLDkgQEAgdm9pZCBUSEQ6OmluaXRfZm9yX3F1ZXJpZXMoKQogCiAgIHJlc2V0 X3Jvb3RfZGVmYXVsdHMobWVtX3Jvb3QsIHZhcmlhYmxlcy5xdWVyeV9hbGxvY19ibG9ja19zaXpl LAogICAgICAgICAgICAgICAgICAgICAgIHZhcmlhYmxlcy5xdWVyeV9wcmVhbGxvY19zaXplKTsK LSNpZmRlZiBVU0lOR19UUkFOU0FDVElPTlMKICAgcmVzZXRfcm9vdF9kZWZhdWx0cygmdHJhbnNh Y3Rpb24ubWVtX3Jvb3QsCiAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGVzLnRyYW5zX2Fs bG9jX2Jsb2NrX3NpemUsCiAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGVzLnRyYW5zX3By ZWFsbG9jX3NpemUpOwotI2VuZGlmCiAgIHRyYW5zYWN0aW9uLnhpZF9zdGF0ZS54aWQubnVsbCgp OwogICB0cmFuc2FjdGlvbi54aWRfc3RhdGUuaW5fdGhkPTE7CiB9CkBAIC05MzksOSArOTM3LDcg QEAgVEhEOjp+VEhEKCkKICAgbWFpbl9zZWN1cml0eV9jdHguZGVzdHJveSgpOwogICBzYWZlRnJl ZShkYik7CiAgIGZyZWVfcm9vdCgmd2Fybl9yb290LE1ZRigwKSk7Ci0jaWZkZWYgVVNJTkdfVFJB TlNBQ1RJT05TCiAgIGZyZWVfcm9vdCgmdHJhbnNhY3Rpb24ubWVtX3Jvb3QsTVlGKDApKTsKLSNl bmRpZgogICBteXN5c192YXI9MDsJCQkJCS8vIFNhZmV0eSAoc2hvdWxkbid0IGJlIG5lZWRlZCkK ICAgcHRocmVhZF9tdXRleF9kZXN0cm95KCZMT0NLX2RlbGV0ZSk7CiAjaWZuZGVmIERCVUdfT0ZG Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL3NxbF9jbGFzcy5oJwotLS0gYS9zcWwvc3FsX2NsYXNz LmgJMjAwOC0wNy0xOCAxMzozMDo1MyArMDAwMAorKysgYi9zcWwvc3FsX2NsYXNzLmgJMjAwOC0w Ny0yNiAxNjozODoyMCArMDAwMApAQCAtMTU0OSwxOSArMTU0OSwxMyBAQCBwdWJsaWM6CiAgICAg ewogICAgICAgY2hhbmdlZF90YWJsZXM9IDA7CiAgICAgICBzYXZlcG9pbnRzPSAwOwotI2lmZGVm IFVTSU5HX1RSQU5TQUNUSU9OUwogICAgICAgZnJlZV9yb290KCZtZW1fcm9vdCxNWUYoTVlfS0VF UF9QUkVBTExPQykpOwotI2VuZGlmCiAgICAgfQogICAgIHN0X3RyYW5zYWN0aW9ucygpCiAgICAg ewotI2lmZGVmIFVTSU5HX1RSQU5TQUNUSU9OUwogICAgICAgYnplcm8oKGNoYXIqKXRoaXMsIHNp emVvZigqdGhpcykpOwogICAgICAgeGlkX3N0YXRlLnhpZC5udWxsKCk7CiAgICAgICBpbml0X3Nx bF9hbGxvYygmbWVtX3Jvb3QsIEFMTE9DX1JPT1RfTUlOX0JMT0NLX1NJWkUsIDApOwotI2Vsc2UK LSAgICAgIHhpZF9zdGF0ZS54YV9zdGF0ZT0gWEFfTk9UUjsKLSNlbmRpZgogICAgIH0KICAgfSB0 cmFuc2FjdGlvbjsKICAgRmllbGQgICAgICAqZHVwX2ZpZWxkOwpAQCAtMjA4MCwxMSArMjA3NCw3 IEBAIHB1YmxpYzoKICAgfQogICBpbmxpbmUgYm9vbCBhY3RpdmVfdHJhbnNhY3Rpb24oKQogICB7 Ci0jaWZkZWYgVVNJTkdfVFJBTlNBQ1RJT05TCiAgICAgcmV0dXJuIHNlcnZlcl9zdGF0dXMgJiBT RVJWRVJfU1RBVFVTX0lOX1RSQU5TOwotI2Vsc2UKLSAgICByZXR1cm4gMDsKLSNlbmRpZgogICB9 CiAgIGlubGluZSBib29sIGZpbGxfZGVyaXZlZF90YWJsZXMoKQogICB7CkBAIC0zMDQxLDExICsz MDMxLDExIEBAIHB1YmxpYzoKIAogLyogQml0cyBpbiBzcWxfY29tbWFuZF9mbGFncyAqLwogCi0j ZGVmaW5lIENGX0NIQU5HRVNfREFUQQkJMQotI2RlZmluZSBDRl9IQVNfUk9XX0NPVU5UCTIKLSNk ZWZpbmUgQ0ZfU1RBVFVTX0NPTU1BTkQJNAotI2RlZmluZSBDRl9TSE9XX1RBQkxFX0NPTU1BTkQJ OAotI2RlZmluZSBDRl9XUklURV9MT0dTX0NPTU1BTkQgIDE2CisjZGVmaW5lIENGX0NIQU5HRVNf REFUQSAgICAgICAgICAgKDFVIDw8IDApCisjZGVmaW5lIENGX0hBU19ST1dfQ09VTlQgICAgICAg ICAgKDFVIDw8IDEpCisjZGVmaW5lIENGX1NUQVRVU19DT01NQU5EICAgICAgICAgKDFVIDw8IDIp CisjZGVmaW5lIENGX1NIT1dfVEFCTEVfQ09NTUFORCAgICAgKDFVIDw8IDMpCisjZGVmaW5lIENG X1dSSVRFX0xPR1NfQ09NTUFORCAgICAgKDFVIDw8IDQpCiAvKioKICAgTXVzdCBiZSBzZXQgZm9y IFNRTCBzdGF0ZW1lbnRzIHRoYXQgbWF5IGNvbnRhaW4KICAgSXRlbSBleHByZXNzaW9ucyBhbmQv b3IgdXNlIGpvaW5zIGFuZCB0YWJsZXMuCkBAIC0zMDU5LDcgKzMwNDksNTQgQEAgcHVibGljOgog ICByZXByZXBhcmUuIENvbnNlcXVlbnRseSwgY29tcGxleCBpdGVtIGV4cHJlc3Npb25zIGFuZAog ICBqb2lucyBhcmUgY3VycmVudGx5IHByb2hpYml0ZWQgaW4gdGhlc2Ugc3RhdGVtZW50cy4KICov Ci0jZGVmaW5lIENGX1JFRVhFQ1VUSU9OX0ZSQUdJTEUgMzIKKyNkZWZpbmUgQ0ZfUkVFWEVDVVRJ T05fRlJBR0lMRSAgICAoMVUgPDwgNSkKKy8qKgorICBJbXBsaWNpdGx5IGNvbW1pdCBiZWZvcmUg dGhlIFNRTCBzdGF0ZW1lbnQgaXMgZXhlY3V0ZWQuCisKKyAgU3RhdGVtZW50cyBtYXJrZWQgd2l0 aCB0aGlzIGZsYWcgd2lsbCBjYXVzZSBhbnkgYWN0aXZlCisgIHRyYW5zYWN0aW9uIHRvIGVuZCAo Y29tbWl0KSBiZWZvcmUgcHJvY2VlZGluZyB3aXRoIHRoZQorICBjb21tYW5kIGV4ZWN1dGlvbi4K KworICBUaGlzIGZsYWcgc2hvdWxkIGJlIHNldCBmb3Igc3RhdGVtZW50cyB0aGF0IHByb2JhYmx5 IGNhbid0CisgIGJlIHJvbGxlZCBiYWNrIG9yIHRoYXQgZG8gbm90IGV4cGVjdCBhbnkgcHJldmlv dXNseSBtZXRhZGF0YQorICBsb2NrZWQgdGFibGVzLgorKi8KKyNkZWZpbmUgQ0ZfSU1QTElDVF9D T01NSVRfQkVHSU4gICAoMVUgPDwgNikKKy8qKgorICBJbXBsaWNpdGx5IGNvbW1pdCBhZnRlciB0 aGUgU1FMIHN0YXRlbWVudC4KKworICBTdGF0ZW1lbnRzIG1hcmtlZCB3aXRoIHRoaXMgZmxhZyBh cmUgYXV0b21hdGljYWxseSBjb21taXR0ZWQKKyAgYXQgdGhlIGVuZCBvZiB0aGUgc3RhdGVtZW50 LgorCisgIFRoaXMgZmxhZyBzaG91bGQgYmUgc2V0IGZvciBzdGF0ZW1lbnRzIHRoYXQgd2lsbCBp bXBsaWNpdGx5CisgIG9wZW4gYW5kIHRha2UgbWV0YWRhdGEgbG9ja3Mgb24gc3lzdGVtIHRhYmxl cyB0aGF0IHNob3VsZCBub3QKKyAgYmUgY2FycmllZCBmb3IgdGhlIHdob2xlIGR1cmF0aW9uIG9m IGEgYWN0aXZlIHRyYW5zYWN0aW9uLgorKi8KKyNkZWZpbmUgQ0ZfSU1QTElDSVRfQ09NTUlUX0VO RCAgICAoMVUgPDwgNykKKy8qKgorICBDRl9JTVBMSUNUX0NPTU1JVF9CRUdJTiBhbmQgQ0ZfSU1Q TElDSVRfQ09NTUlUX0VORCBhcmUgdXNlZAorICB0byBlbnN1cmUgdGhhdCB0aGUgYWN0aXZlIHRy YW5zYWN0aW9uIGlzIGltcGxpY2l0bHkgY29tbWl0dGVkCisgIGJlZm9yZSBhbmQgYWZ0ZXIgZXZl cnkgRERMIHN0YXRlbWVudCBhbmQgYW55IHN0YXRlbWVudCB0aGF0CisgIG1vZGlmaWVzIG91ciBj dXJyZW50bHkgbm9uLXRyYW5zYWN0aW9uYWwgc3lzdGVtIHRhYmxlcy4KKyovCisjZGVmaW5lIENG X0FVVE9fQ09NTUlUX1RSQU5TICAoQ0ZfSU1QTElDVF9DT01NSVRfQkVHSU4gfCBDRl9JTVBMSUNJ VF9DT01NSVRfRU5EKQorCisvKiBCaXRzIGluIHNlcnZlcl9jb21tYW5kX2ZsYWdzICovCisKKy8q KgorICBTa2lwIHRoZSBpbmNyZWFzZSBvZiB0aGUgZ2xvYmFsIHF1ZXJ5IGlkIGNvdW50ZXIuIENv bW1vbmx5IHNldCBmb3IKKyAgY29tbWFuZHMgdGhhdCBhcmUgc3RhdGVsZXNzICh3b24ndCBjYXVz ZSBhbnkgY2hhbmdlIG9uIHRoZSBzZXJ2ZXIKKyAgaW50ZXJuYWwgc3RhdGVzKS4KKyovCisjZGVm aW5lIENGX1NLSVBfUVVFUllfSUQgICAgICAgICgxVSA8PCAwKQorCisvKioKKyAgU2tpcCB0aGUg aW5jcmVhc2Ugb2YgdGhlIG51bWJlciBvZiBzdGF0ZW1lbnRzIHRoYXQgY2xpZW50cyBoYXZlCisg IHNlbnQgdG8gdGhlIHNlcnZlci4gQ29tbW9ubHkgdXNlZCBmb3IgY29tbWFuZHMgdGhhdCB3aWxs IGNhdXNlCisgIGEgc3RhdGVtZW50IHRvIGJlIGV4ZWN1dGVkIGJ1dCB0aGUgc3RhdGVtZW50IG1p Z2h0IGhhdmUgbm90IGJlZW4KKyAgc2VudCBieSB0aGUgdXNlciAoaWU6IHN0b3JlZCBwcm9jZWR1 cmUpLgorKi8KKyNkZWZpbmUgQ0ZfU0tJUF9RVUVTVElPTlMgICAgICAgKDFVIDw8IDEpCiAKIC8q IEZ1bmN0aW9ucyBpbiBzcWxfY2xhc3MuY2MgKi8KIAoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9z cWxfZGVsZXRlLmNjJwotLS0gYS9zcWwvc3FsX2RlbGV0ZS5jYwkyMDA4LTA3LTE4IDEzOjMwOjUz ICswMDAwCisrKyBiL3NxbC9zcWxfZGVsZXRlLmNjCTIwMDgtMDctMjYgMTY6Mzg6MjAgKzAwMDAK QEAgLTExMDUsMTIgKzExMDUsNiBAQCB0cnVuY19ieV9kZWw6CiAgIGVycm9yPSBteXNxbF9kZWxl dGUodGhkLCB0YWJsZV9saXN0LCAoQ09ORCopIDAsIChTUUxfTElTVCopIDAsCiAgICAgICAgICAg ICAgICAgICAgICAgSEFfUE9TX0VSUk9SLCBMTCgwKSwgVFJVRSk7CiAgIGhhX2VuYWJsZV90cmFu c2FjdGlvbih0aGQsIFRSVUUpOwotICAvKgotICAgIFNhZmV0eSwgaW4gY2FzZSB0aGUgZW5naW5l IGlnbm9yZWQgaGFfZW5hYmxlX3RyYW5zYWN0aW9uKEZBTFNFKQotICAgIGFib3ZlLiBBbHNvIGNs ZWFycyB0aGQtPnRyYW5zYWN0aW9uLiouCi0gICovCi0gIGVycm9yPSBoYV9hdXRvY29tbWl0X29y X3JvbGxiYWNrKHRoZCwgZXJyb3IpOwotICBoYV9jb21taXQodGhkKTsKICAgdGhkLT5vcHRpb25z PSBzYXZlX29wdGlvbnM7CiAgIHRoZC0+Y3VycmVudF9zdG10X2JpbmxvZ19yb3dfYmFzZWQ9IHNh dmVfYmlubG9nX3Jvd19iYXNlZDsKICAgREJVR19SRVRVUk4oZXJyb3IpOwoKPT09IG1vZGlmaWVk IGZpbGUgJ3NxbC9zcWxfcGFyc2UuY2MnCi0tLSBhL3NxbC9zcWxfcGFyc2UuY2MJMjAwOC0wNy0y OCAxNzozMTowNCArMDAwMAorKysgYi9zcWwvc3FsX3BhcnNlLmNjCTIwMDgtMDgtMDcgMDM6MDU6 MzMgKzAwMDAKQEAgLTE4MSw2ICsxODEsNTAgQEAgc3RhdGljIGJvb2wgc29tZV9ub25fdGVtcF90 YWJsZV90b19iZV91cAogfQogCiAKKy8qCisgIEltcGxpY2l0bHkgY29tbWl0IGEgYWN0aXZlIHRy YW5zYWN0aW9uIGlmIHN0YXRlbWVudCByZXF1aXJlcyBzby4KKworICBAcGFyYW0gdGhkICAgIFRo cmVhZCBoYW5kbGUuCisgIEBwYXJhbSBtYXNrICAgQml0bWFzayB1c2VkIGZvciB0aGUgU1FMIGNv bW1hbmQgbWF0Y2guCisKKyovCitzdGF0aWMgYm9vbCBvcHRfaW1wbGljaXRfY29tbWl0KFRIRCAq dGhkLCB1aW50IG1hc2spCit7CisgIExFWCAqbGV4PSB0aGQtPmxleDsKKyAgYm9vbCByZXM9IEZB TFNFLCBza2lwPSBGQUxTRTsKKyAgREJVR19FTlRFUigib3B0X2ltcGxpY2l0X2NvbW1pdCIpOwor CisgIGlmICghKHNxbF9jb21tYW5kX2ZsYWdzW2xleC0+c3FsX2NvbW1hbmRdICYgbWFzaykpCisg ICAgREJVR19SRVRVUk4oRkFMU0UpOworCisgIHN3aXRjaCAobGV4LT5zcWxfY29tbWFuZCkgewor ICBjYXNlIFNRTENPTV9EUk9QX1RBQkxFOgorICAgIHNraXA9IGxleC0+ZHJvcF90ZW1wb3Jhcnk7 CisgICAgYnJlYWs7CisgIGNhc2UgU1FMQ09NX0FMVEVSX1RBQkxFOgorICBjYXNlIFNRTENPTV9D UkVBVEVfVEFCTEU6CisgICAgLyogSWYgQ1JFQVRFIFRBQkxFIG9mIG5vbi10ZW1wb3JhcnkgdGFi bGUsIGRvIGltcGxpY2l0IGNvbW1pdCAqLworICAgIHNraXA9IChsZXgtPmNyZWF0ZV9pbmZvLm9w dGlvbnMgJiBIQV9MRVhfQ1JFQVRFX1RNUF9UQUJMRSk7CisgICAgYnJlYWs7CisgIGNhc2UgU1FM Q09NX1NFVF9PUFRJT046CisgICAgc2tpcD0gbGV4LT5hdXRvY29tbWl0ID8gRkFMU0UgOiBUUlVF OworICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGJyZWFrOworICB9CisKKyAgaWYgKCFza2lw KQorICB7CisgICAgLyogQ29tbWl0IG9yIHJvbGxiYWNrIHRoZSBzdGF0ZW1lbnQgdHJhbnNhY3Rp b24uICovCisgICAgaGFfYXV0b2NvbW1pdF9vcl9yb2xsYmFjayh0aGQsIHRoZC0+aXNfZXJyb3Io KSk7CisgICAgLyogQ29tbWl0IHRoZSBub3JtYWwgdHJhbnNhY3Rpb24gaWYgb25lIGlzIGFjdGl2 ZS4gKi8KKyAgICByZXM9IGVuZF9hY3RpdmVfdHJhbnModGhkKTsKKyAgfQorCisgIERCVUdfUkVU VVJOKHJlcyk7Cit9CisKKwogLyoqCiAgIE1hcmsgYWxsIGNvbW1hbmRzIHRoYXQgc29tZWhvdyBj aGFuZ2VzIGEgdGFibGUuCiAKQEAgLTE5NSwyNyArMjM5LDQ1IEBAIHN0YXRpYyBib29sIHNvbWVf bm9uX3RlbXBfdGFibGVfdG9fYmVfdXAKICovCiAKIHVpbnQgc3FsX2NvbW1hbmRfZmxhZ3NbU1FM Q09NX0VORCsxXTsKK3VpbnQgc2VydmVyX2NvbW1hbmRfZmxhZ3NbQ09NX0VORCsxXTsKIAogdm9p ZCBpbml0X3VwZGF0ZV9xdWVyaWVzKHZvaWQpCiB7Ci0gIGJ6ZXJvKCh1Y2hhciopICZzcWxfY29t bWFuZF9mbGFncywgc2l6ZW9mKHNxbF9jb21tYW5kX2ZsYWdzKSk7CisgIC8qIEluaXRpYWxpemUg dGhlIHNlcnZlciBjb21tYW5kIGZsYWdzIGFycmF5LiAqLworICBtZW1zZXQoc2VydmVyX2NvbW1h bmRfZmxhZ3MsIDAsIHNpemVvZihzZXJ2ZXJfY29tbWFuZF9mbGFncykpOwogCi0gIHNxbF9jb21t YW5kX2ZsYWdzW1NRTENPTV9DUkVBVEVfVEFCTEVdPSAgIENGX0NIQU5HRVNfREFUQSB8IENGX1JF RVhFQ1VUSU9OX0ZSQUdJTEU7Ci0gIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9DUkVBVEVfSU5E RVhdPSAgIENGX0NIQU5HRVNfREFUQTsKLSAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0FMVEVS X1RBQkxFXT0gICAgQ0ZfQ0hBTkdFU19EQVRBIHwgQ0ZfV1JJVEVfTE9HU19DT01NQU5EOwotICBz cWxfY29tbWFuZF9mbGFnc1tTUUxDT01fVFJVTkNBVEVdPSAgICAgICBDRl9DSEFOR0VTX0RBVEEg fCBDRl9XUklURV9MT0dTX0NPTU1BTkQ7Ci0gIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9EUk9Q X1RBQkxFXT0gICAgIENGX0NIQU5HRVNfREFUQTsKKyAgc2VydmVyX2NvbW1hbmRfZmxhZ3NbQ09N X1NUQVRJU1RJQ1NdPSBDRl9TS0lQX1FVRVJZX0lEIHwgQ0ZfU0tJUF9RVUVTVElPTlM7CisgIHNl cnZlcl9jb21tYW5kX2ZsYWdzW0NPTV9QSU5HXT0gICAgICAgQ0ZfU0tJUF9RVUVSWV9JRCB8IENG X1NLSVBfUVVFU1RJT05TOworICBzZXJ2ZXJfY29tbWFuZF9mbGFnc1tDT01fU1RNVF9QUkVQQVJF XT0gQ0ZfU0tJUF9RVUVTVElPTlM7CisgIHNlcnZlcl9jb21tYW5kX2ZsYWdzW0NPTV9TVE1UX0NM T1NFXT0gICBDRl9TS0lQX1FVRVNUSU9OUzsKKyAgc2VydmVyX2NvbW1hbmRfZmxhZ3NbQ09NX1NU TVRfUkVTRVRdPSAgIENGX1NLSVBfUVVFU1RJT05TOworCisgIC8qIEluaXRpYWxpemUgdGhlIHNx bCBjb21tYW5kIGZsYWdzIGFycmF5LiAqLworICBtZW1zZXQoc3FsX2NvbW1hbmRfZmxhZ3MsIDAs IHNpemVvZihzcWxfY29tbWFuZF9mbGFncykpOworCisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENP TV9DUkVBVEVfVEFCTEVdPSAgIENGX0NIQU5HRVNfREFUQSB8IENGX1JFRVhFQ1VUSU9OX0ZSQUdJ TEUgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDRl9BVVRP X0NPTU1JVF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0NSRUFURV9JTkRFWF09 ICAgQ0ZfQ0hBTkdFU19EQVRBIHwgQ0ZfQVVUT19DT01NSVRfVFJBTlM7CisgIHNxbF9jb21tYW5k X2ZsYWdzW1NRTENPTV9BTFRFUl9UQUJMRV09ICAgIENGX0NIQU5HRVNfREFUQSB8IENGX1dSSVRF X0xPR1NfQ09NTUFORCB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fVFJV TkNBVEVdPSAgICAgICBDRl9DSEFOR0VTX0RBVEEgfCBDRl9XUklURV9MT0dTX0NPTU1BTkQgfAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDRl9BVVRPX0NPTU1J VF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0RST1BfVEFCTEVdPSAgICAgQ0Zf Q0hBTkdFU19EQVRBIHwgQ0ZfQVVUT19DT01NSVRfVFJBTlM7CiAgIHNxbF9jb21tYW5kX2ZsYWdz W1NRTENPTV9MT0FEXT0gICAgICAgICAgIENGX0NIQU5HRVNfREFUQSB8IENGX1JFRVhFQ1VUSU9O X0ZSQUdJTEU7Ci0gIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9DUkVBVEVfREJdPSAgICAgIENG X0NIQU5HRVNfREFUQTsKLSAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0RST1BfREJdPSAgICAg ICAgQ0ZfQ0hBTkdFU19EQVRBOwotICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fUkVOQU1FX1RB QkxFXT0gICBDRl9DSEFOR0VTX0RBVEE7CisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9DUkVB VEVfREJdPSAgICAgIENGX0NIQU5HRVNfREFUQSB8IENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBz cWxfY29tbWFuZF9mbGFnc1tTUUxDT01fRFJPUF9EQl09ICAgICAgICBDRl9DSEFOR0VTX0RBVEEg fCBDRl9BVVRPX0NPTU1JVF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0FMVEVS X0RCX1VQR1JBREVdPSBDRl9BVVRPX0NPTU1JVF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3Nb U1FMQ09NX1JFTkFNRV9UQUJMRV09ICAgQ0ZfQ0hBTkdFU19EQVRBIHwgQ0ZfQVVUT19DT01NSVRf VFJBTlM7CiAgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9SRVNUT1JFXT0gICAgICAgIENGX0NI QU5HRVNfREFUQTsKLSAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0RST1BfSU5ERVhdPSAgICAg Q0ZfQ0hBTkdFU19EQVRBOwotICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fQ1JFQVRFX1ZJRVdd PSAgICBDRl9DSEFOR0VTX0RBVEEgfCBDRl9SRUVYRUNVVElPTl9GUkFHSUxFOwotICBzcWxfY29t bWFuZF9mbGFnc1tTUUxDT01fRFJPUF9WSUVXXT0gICAgICBDRl9DSEFOR0VTX0RBVEE7Ci0gIHNx bF9jb21tYW5kX2ZsYWdzW1NRTENPTV9DUkVBVEVfRVZFTlRdPSAgIENGX0NIQU5HRVNfREFUQTsK LSAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0FMVEVSX0VWRU5UXT0gICAgQ0ZfQ0hBTkdFU19E QVRBOwotICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fRFJPUF9FVkVOVF09ICAgICBDRl9DSEFO R0VTX0RBVEE7CisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9EUk9QX0lOREVYXT0gICAgIENG X0NIQU5HRVNfREFUQSB8IENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFn c1tTUUxDT01fQ1JFQVRFX1ZJRVddPSAgICBDRl9DSEFOR0VTX0RBVEEgfCBDRl9SRUVYRUNVVElP Tl9GUkFHSUxFIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Q0ZfQVVUT19DT01NSVRfVFJBTlM7CisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9EUk9QX1ZJ RVddPSAgICAgIENGX0NIQU5HRVNfREFUQSB8IENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxf Y29tbWFuZF9mbGFnc1tTUUxDT01fQ1JFQVRFX1RSSUdHRVJdPSBDRl9BVVRPX0NPTU1JVF9UUkFO UzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0RST1BfVFJJR0dFUl09ICAgQ0ZfQVVUT19D T01NSVRfVFJBTlM7CisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9DUkVBVEVfRVZFTlRdPSAg IENGX0NIQU5HRVNfREFUQSB8IENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9m bGFnc1tTUUxDT01fQUxURVJfRVZFTlRdPSAgICBDRl9DSEFOR0VTX0RBVEEgfCBDRl9BVVRPX0NP TU1JVF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0RST1BfRVZFTlRdPSAgICAg Q0ZfQ0hBTkdFU19EQVRBIHwgQ0ZfQVVUT19DT01NSVRfVFJBTlM7CiAKICAgc3FsX2NvbW1hbmRf ZmxhZ3NbU1FMQ09NX1VQREFURV09CSAgICBDRl9DSEFOR0VTX0RBVEEgfCBDRl9IQVNfUk9XX0NP VU5UIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0ZfUkVF WEVDVVRJT05fRlJBR0lMRTsKQEAgLTIzNCw3ICsyOTYsOCBAQCB2b2lkIGluaXRfdXBkYXRlX3F1 ZXJpZXModm9pZCkKICAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX1JFUExBQ0VfU0VMRUNUXT0g Q0ZfQ0hBTkdFU19EQVRBIHwgQ0ZfSEFTX1JPV19DT1VOVCB8CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIENGX1JFRVhFQ1VUSU9OX0ZSQUdJTEU7CiAgIHNxbF9j b21tYW5kX2ZsYWdzW1NRTENPTV9TRUxFQ1RdPSAgICAgICAgIENGX1JFRVhFQ1VUSU9OX0ZSQUdJ TEU7Ci0gIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9TRVRfT1BUSU9OXT0gICAgIENGX1JFRVhF Q1VUSU9OX0ZSQUdJTEU7CisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9TRVRfT1BUSU9OXT0g ICAgIENGX1JFRVhFQ1VUSU9OX0ZSQUdJTEUgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBDRl9BVVRPX0NPTU1JVF9UUkFOUzsKICAgc3FsX2NvbW1hbmRfZmxh Z3NbU1FMQ09NX0RPXT0gICAgICAgICAgICAgQ0ZfUkVFWEVDVVRJT05fRlJBR0lMRTsKIAogICBz cWxfY29tbWFuZF9mbGFnc1tTUUxDT01fU0hPV19TVEFUVVNfUFJPQ109IENGX1NUQVRVU19DT01N QU5EIHwgQ0ZfUkVFWEVDVVRJT05fRlJBR0lMRTsKQEAgLTI5OCw5ICszNjEsMzIgQEAgdm9pZCBp bml0X3VwZGF0ZV9xdWVyaWVzKHZvaWQpCiAgICAgVGhlIGZvbGxvd2luZyBhZG1pbiB0YWJsZSBv cGVyYXRpb25zIGFyZSBhbGxvd2VkCiAgICAgb24gbG9nIHRhYmxlcy4KICAgKi8KLSAgc3FsX2Nv bW1hbmRfZmxhZ3NbU1FMQ09NX1JFUEFJUl09ICAgICAgICAgICBDRl9XUklURV9MT0dTX0NPTU1B TkQ7Ci0gIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9PUFRJTUlaRV09ICAgICAgICAgQ0ZfV1JJ VEVfTE9HU19DT01NQU5EOwotICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fQU5BTFlaRV09ICAg ICAgICAgIENGX1dSSVRFX0xPR1NfQ09NTUFORDsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09N X1JFUEFJUl09ICAgICAgICAgICBDRl9XUklURV9MT0dTX0NPTU1BTkQgfAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOwor ICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fT1BUSU1JWkVdPSAgICAgICAgIENGX1dSSVRFX0xP R1NfQ09NTUFORCB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQ0ZfQVVUT19DT01NSVRfVFJBTlM7CisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9BTkFM WVpFXT0gICAgICAgICAgQ0ZfV1JJVEVfTE9HU19DT01NQU5EIHwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDRl9BVVRPX0NPTU1JVF9UUkFOUzsKKworICBz cWxfY29tbWFuZF9mbGFnc1tTUUxDT01fQ1JFQVRFX1VTRVJdPSAgICAgIENGX0FVVE9fQ09NTUlU X1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fRFJPUF9VU0VSXT0gICAgICAgIENG X0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fUkVOQU1FX1VT RVJdPSAgICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFnc1tTUUxD T01fUkVWT0tFX0FMTF09ICAgICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFu ZF9mbGFnc1tTUUxDT01fUkVWT0tFXT0gICAgICAgICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOwor ICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fR1JBTlRdPSAgICAgICAgICAgIENGX0FVVE9fQ09N TUlUX1RSQU5TOworCisgIHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9DUkVBVEVfUFJPQ0VEVVJF XT0gICBDRl9BVVRPX0NPTU1JVF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0NS RUFURV9TUEZVTkNUSU9OXT0gIENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9m bGFnc1tTUUxDT01fQUxURVJfUFJPQ0VEVVJFXT0gICAgQ0ZfQVVUT19DT01NSVRfVFJBTlM7Cisg IHNxbF9jb21tYW5kX2ZsYWdzW1NRTENPTV9BTFRFUl9GVU5DVElPTl09ICAgICBDRl9BVVRPX0NP TU1JVF9UUkFOUzsKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0FTU0lHTl9UT19LRVlDQUNI RV09IENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fUFJF TE9BRF9LRVlTXT0gICAgICAgQ0ZfQVVUT19DT01NSVRfVFJBTlM7CisKKyAgc3FsX2NvbW1hbmRf ZmxhZ3NbU1FMQ09NX0ZMVVNIXT0gICAgICAgICAgICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOwor ICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01fQ0hFQ0tdPSAgICAgICAgICAgICAgQ0ZfQVVUT19D T01NSVRfVFJBTlM7CisKKyAgc3FsX2NvbW1hbmRfZmxhZ3NbU1FMQ09NX0JBQ0tVUF09ICAgICAg ICAgICAgIENGX0FVVE9fQ09NTUlUX1RSQU5TOworICBzcWxfY29tbWFuZF9mbGFnc1tTUUxDT01f UkVTVE9SRV09ICAgICAgICAgICAgQ0ZfQVVUT19DT01NSVRfVFJBTlM7CiB9CiAKIApAQCAtNDU5 LDkgKzU0NSw3IEBAIHB0aHJlYWRfaGFuZGxlcl90IGhhbmRsZV9ib290c3RyYXAodm9pZCAKICAg ICAgIGJyZWFrOwogCiAgICAgZnJlZV9yb290KHRoZC0+bWVtX3Jvb3QsTVlGKE1ZX0tFRVBfUFJF QUxMT0MpKTsKLSNpZmRlZiBVU0lOR19UUkFOU0FDVElPTlMKICAgICBmcmVlX3Jvb3QoJnRoZC0+ dHJhbnNhY3Rpb24ubWVtX3Jvb3QsTVlGKE1ZX0tFRVBfUFJFQUxMT0MpKTsKLSNlbmRpZgogICB9 CiAKIGVuZDoKQEAgLTgzOSwyOCArOTIzLDE0IEBAIGJvb2wgZGlzcGF0Y2hfY29tbWFuZChlbnVt IGVudW1fc2VydmVyX2MKICAgdGhkLT5zZXRfdGltZSgpOwogICBwdGhyZWFkX211dGV4X2xvY2so JkxPQ0tfdGhyZWFkX2NvdW50KTsKICAgdGhkLT5xdWVyeV9pZD0gZ2xvYmFsX3F1ZXJ5X2lkOwot Ci0gIHN3aXRjaCggY29tbWFuZCApIHsKLSAgLyogSWdub3JlIHRoZXNlIHN0YXRlbWVudHMuICov Ci0gIGNhc2UgQ09NX1NUQVRJU1RJQ1M6Ci0gIGNhc2UgQ09NX1BJTkc6Ci0gICAgYnJlYWs7Ci0g IC8qIE9ubHkgaW5jcmVhc2UgaWQgb24gdGhlc2Ugc3RhdGVtZW50cyBidXQgZG9uJ3QgY291bnQg dGhlbS4gKi8KLSAgY2FzZSBDT01fU1RNVF9QUkVQQVJFOiAKLSAgY2FzZSBDT01fU1RNVF9DTE9T RToKLSAgY2FzZSBDT01fU1RNVF9SRVNFVDoKKyAgaWYgKCEoc2VydmVyX2NvbW1hbmRfZmxhZ3Nb Y29tbWFuZF0gJiBDRl9TS0lQX1FVRVJZX0lEKSkKICAgICBuZXh0X3F1ZXJ5X2lkKCk7Ci0gICAg YnJlYWs7Ci0gIC8qIEluY3JlYXNlIGlkIGFuZCBjb3VudCBhbGwgb3RoZXIgc3RhdGVtZW50cy4g Ki8KLSAgZGVmYXVsdDoKLSAgICBzdGF0aXN0aWNfaW5jcmVtZW50KHRoZC0+c3RhdHVzX3Zhci5x dWVzdGlvbnMsICZMT0NLX3N0YXR1cyk7Ci0gICAgbmV4dF9xdWVyeV9pZCgpOwotICB9Ci0KICAg dGhyZWFkX3J1bm5pbmcrKzsKLSAgLyogVE9ETzogc2V0IHRoZC0+bGV4LT5zcWxfY29tbWFuZCB0 byBTUUxDT01fRU5EIGhlcmUgKi8KICAgcHRocmVhZF9tdXRleF91bmxvY2soJkxPQ0tfdGhyZWFk X2NvdW50KTsKIAorICBpZiAoIShzZXJ2ZXJfY29tbWFuZF9mbGFnc1tjb21tYW5kXSAmIENGX1NL SVBfUVVFU1RJT05TKSkKKyAgICBzdGF0aXN0aWNfaW5jcmVtZW50KHRoZC0+c3RhdHVzX3Zhci5x dWVzdGlvbnMsICZMT0NLX3N0YXR1cyk7CisKICAgLyoqCiAgICAgQ2xlYXIgdGhlIHNldCBvZiBm bGFncyB0aGF0IGFyZSBleHBlY3RlZCB0byBiZSBjbGVhcmVkIGF0IHRoZQogICAgIGJlZ2lubmlu ZyBvZiBlYWNoIGNvbW1hbmQuCkBAIC0xMjU2LDExICsxMzI2LDE2IEBAIGJvb2wgZGlzcGF0Y2hf Y29tbWFuZChlbnVtIGVudW1fc2VydmVyX2MKICAgICBib29sIG5vdF91c2VkOwogICAgIHN0YXR1 c192YXJfaW5jcmVtZW50KHRoZC0+c3RhdHVzX3Zhci5jb21fc3RhdFtTUUxDT01fRkxVU0hdKTsK ICAgICB1bG9uZyBvcHRpb25zPSAodWxvbmcpICh1Y2hhcikgcGFja2V0WzBdOworICAgIGlmIChl bmRfYWN0aXZlX3RyYW5zKHRoZCkpCisgICAgICBicmVhazsKICAgICBpZiAoY2hlY2tfZ2xvYmFs X2FjY2Vzcyh0aGQsUkVMT0FEX0FDTCkpCiAgICAgICBicmVhazsKICAgICBnZW5lcmFsX2xvZ19w cmludCh0aGQsIGNvbW1hbmQsIE51bGxTKTsKLSAgICBpZiAoIXJlbG9hZF9hY2xfYW5kX2NhY2hl KHRoZCwgb3B0aW9ucywgKFRBQkxFX0xJU1QqKSAwLCAmbm90X3VzZWQpKQotICAgICAgbXlfb2so dGhkKTsKKyAgICBpZiAocmVsb2FkX2FjbF9hbmRfY2FjaGUodGhkLCBvcHRpb25zLCAoVEFCTEVf TElTVCopIDAsICZub3RfdXNlZCkpCisgICAgICBicmVhazsKKyAgICBpZiAoZW5kX2FjdGl2ZV90 cmFucyh0aGQpKQorICAgICAgYnJlYWs7CisgICAgbXlfb2sodGhkKTsKICAgICBicmVhazsKICAg fQogI2lmbmRlZiBFTUJFRERFRF9MSUJSQVJZCkBAIC0xOTUzLDEwICsyMDI4LDIwIEBAIG15c3Fs X2V4ZWN1dGVfY29tbWFuZChUSEQgKnRoZCkKICNpZmRlZiBIQVZFX1JFUExJQ0FUSU9OCiAgIH0g LyogZW5kaWYgdW5saWtlbHkgc2xhdmUgKi8KICNlbmRpZgorCiAgIHN0YXR1c192YXJfaW5jcmVt ZW50KHRoZC0+c3RhdHVzX3Zhci5jb21fc3RhdFtsZXgtPnNxbF9jb21tYW5kXSk7CiAKICAgREJV R19BU1NFUlQodGhkLT50cmFuc2FjdGlvbi5zdG10Lm1vZGlmaWVkX25vbl90cmFuc190YWJsZSA9 PSBGQUxTRSk7Ci0gIAorCisgIC8qCisgICAgRW5kIGEgYWN0aXZlIHRyYW5zYWN0aW9uIHNvIHRo YXQgdGhpcyBjb21tYW5kIHdpbGwgaGF2ZSBpdCdzCisgICAgb3duIHRyYW5zYWN0aW9uIGFuZCB3 aWxsIGFsc28gc3luYyB0aGUgYmluYXJ5IGxvZy4gSWYgYSBEREwgaXMKKyAgICBub3QgcnVuIGlu IGl0J3Mgb3duIHRyYW5zYWN0aW9uIGl0IG1heSBzaW1wbHkgbmV2ZXIgYXBwZWFyIG9uCisgICAg dGhlIHNsYXZlIGluIGNhc2UgdGhlIG91dHNpZGUgdHJhbnNhY3Rpb24gcm9sbHMgYmFjay4KKyAg Ki8KKyAgaWYgKG9wdF9pbXBsaWNpdF9jb21taXQodGhkLCBDRl9JTVBMSUNUX0NPTU1JVF9CRUdJ TikpCisgICAgZ290byBlcnJvcjsKKwogICBzd2l0Y2ggKGxleC0+c3FsX2NvbW1hbmQpIHsKIAog ICBjYXNlIFNRTENPTV9TSE9XX0VWRU5UUzoKQEAgLTIyNTksMTUgKzIzNDQsNiBAQCBteXNxbF9l eGVjdXRlX2NvbW1hbmQoVEhEICp0aGQpCiAgICAgfQogICBjYXNlIFNRTENPTV9DUkVBVEVfVEFC TEU6CiAgIHsKLSAgICAvKiBJZiBDUkVBVEUgVEFCTEUgb2Ygbm9uLXRlbXBvcmFyeSB0YWJsZSwg ZG8gaW1wbGljaXQgY29tbWl0ICovCi0gICAgaWYgKCEobGV4LT5jcmVhdGVfaW5mby5vcHRpb25z ICYgSEFfTEVYX0NSRUFURV9UTVBfVEFCTEUpKQotICAgIHsKLSAgICAgIGlmIChlbmRfYWN0aXZl X3RyYW5zKHRoZCkpCi0gICAgICB7Ci0JcmVzPSAtMTsKLQlicmVhazsKLSAgICAgIH0KLSAgICB9 CiAgICAgREJVR19BU1NFUlQoZmlyc3RfdGFibGUgPT0gYWxsX3RhYmxlcyAmJiBmaXJzdF90YWJs ZSAhPSAwKTsKICAgICBib29sIGxpbmtfdG9fbG9jYWw7CiAgICAgLy8gU2tpcCBmaXJzdCB0YWJs ZSwgd2hpY2ggaXMgdGhlIHRhYmxlIHdlIGFyZSBjcmVhdGluZwpAQCAtMjQ4Nyw4ICsyNTYzLDYg QEAgZW5kX3dpdGhfcmVzdG9yZV9saXN0OgogICAgIERCVUdfQVNTRVJUKGZpcnN0X3RhYmxlID09 IGFsbF90YWJsZXMgJiYgZmlyc3RfdGFibGUgIT0gMCk7CiAgICAgaWYgKGNoZWNrX29uZV90YWJs ZV9hY2Nlc3ModGhkLCBJTkRFWF9BQ0wsIGFsbF90YWJsZXMpKQogICAgICAgZ290byBlcnJvcjsg LyogcHVyZWNvdjogaW5zcGVjdGVkICovCi0gICAgaWYgKGVuZF9hY3RpdmVfdHJhbnModGhkKSkK LSAgICAgIGdvdG8gZXJyb3I7CiAgICAgLyoKICAgICAgIEN1cnJlbnRseSBDUkVBVEUgSU5ERVgg b3IgRFJPUCBJTkRFWCBjYXVzZSBhIGZ1bGwgdGFibGUgcmVidWlsZAogICAgICAgYW5kIHRodXMg Y2xhc3NpZnkgYXMgc2xvdyBhZG1pbmlzdHJhdGl2ZSBzdGF0ZW1lbnRzIGp1c3QgbGlrZQpAQCAt MjYxMiw5ICsyNjg2LDYgQEAgZW5kX3dpdGhfcmVzdG9yZV9saXN0OgogICAgICAgICBwdXNoX3dh cm5pbmcodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLCAwLAogICAgICAgICAgICAg ICAgICAgICAgIklOREVYIERJUkVDVE9SWSBvcHRpb24gaWdub3JlZCIpOwogICAgICAgY3JlYXRl X2luZm8uZGF0YV9maWxlX25hbWU9IGNyZWF0ZV9pbmZvLmluZGV4X2ZpbGVfbmFtZT0gTlVMTDsK LSAgICAgIC8qIEFMVEVSIFRBQkxFIGVuZHMgcHJldmlvdXMgdHJhbnNhY3Rpb24gKi8KLSAgICAg IGlmIChlbmRfYWN0aXZlX3RyYW5zKHRoZCkpCi0JZ290byBlcnJvcjsKIAogICAgICAgaWYgKCF0 aGQtPmxvY2tlZF90YWJsZXNfbW9kZSAmJgogICAgICAgICAgICEobmVlZF9zdGFydF93YWl0aW5n PSAhd2FpdF9pZl9nbG9iYWxfcmVhZF9sb2NrKHRoZCwgMCwgMSkpKQpAQCAtMjY2MSwxMyArMjcz MiwxMyBAQCBlbmRfd2l0aF9yZXN0b3JlX2xpc3Q6CiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAg fQogCi0gICAgICBERExfYmxvY2tlci0+Y2hlY2tfRERMX2Jsb2NrZXIodGhkKTsKLSAgICBpZiAo ZW5kX2FjdGl2ZV90cmFucyh0aGQpIHx8IG15c3FsX3JlbmFtZV90YWJsZXModGhkLCBmaXJzdF90 YWJsZSwgMCkpCi0gICAgICB7Ci0gICAgICAgIERETF9ibG9ja2VyLT5lbmRfRERMKCk7Ci0gICAg ICAgIGdvdG8gZXJyb3I7Ci0gICAgICB9CisgICAgRERMX2Jsb2NrZXItPmNoZWNrX0RETF9ibG9j a2VyKHRoZCk7CisgICAgaWYgKG15c3FsX3JlbmFtZV90YWJsZXModGhkLCBmaXJzdF90YWJsZSwg MCkpCisgICAgewogICAgICAgRERMX2Jsb2NrZXItPmVuZF9EREwoKTsKKyAgICAgIGdvdG8gZXJy b3I7CisgICAgfQorICAgIERETF9ibG9ja2VyLT5lbmRfRERMKCk7CiAgICAgYnJlYWs7CiAgIH0K ICNpZm5kZWYgRU1CRURERURfTElCUkFSWQpAQCAtMzA0MCwxMSArMzExMSw2IEBAIGVuZF93aXRo X3Jlc3RvcmVfbGlzdDoKICAgICBicmVhazsKICAgfQogICBjYXNlIFNRTENPTV9UUlVOQ0FURToK LSAgICBpZiAoZW5kX2FjdGl2ZV90cmFucyh0aGQpKQotICAgIHsKLSAgICAgIHJlcz0gLTE7Ci0g ICAgICBicmVhazsKLSAgICB9CiAgICAgREJVR19BU1NFUlQoZmlyc3RfdGFibGUgPT0gYWxsX3Rh YmxlcyAmJiBmaXJzdF90YWJsZSAhPSAwKTsKICAgICBpZiAoY2hlY2tfb25lX3RhYmxlX2FjY2Vz cyh0aGQsIERST1BfQUNMLCBhbGxfdGFibGVzKSkKICAgICAgIGdvdG8gZXJyb3I7CkBAIC0zMTQ1 LDggKzMyMTEsNiBAQCBlbmRfd2l0aF9yZXN0b3JlX2xpc3Q6CiAgICAgewogICAgICAgaWYgKGNo ZWNrX3RhYmxlX2FjY2Vzcyh0aGQsIERST1BfQUNMLCBhbGxfdGFibGVzLCBGQUxTRSwgRkFMU0Us IFVJTlRfTUFYKSkKIAlnb3RvIGVycm9yOwkJCQkvKiBwdXJlY292OiBpbnNwZWN0ZWQgKi8KLSAg ICAgIGlmIChlbmRfYWN0aXZlX3RyYW5zKHRoZCkpCi0gICAgICAgIGdvdG8gZXJyb3I7CiAgICAg fQogICAgIGVsc2UKICAgICB7CkBAIC0zMjQzLDkgKzMzMDcsNiBAQCBlbmRfd2l0aF9yZXN0b3Jl X2xpc3Q6CiAgIHsKICAgICBMaXN0PHNldF92YXJfYmFzZT4gKmxleF92YXJfbGlzdD0gJmxleC0+ dmFyX2xpc3Q7CiAKLSAgICBpZiAobGV4LT5hdXRvY29tbWl0ICYmIGVuZF9hY3RpdmVfdHJhbnMo dGhkKSkKLSAgICAgIGdvdG8gZXJyb3I7Ci0KICAgICBpZiAoKGNoZWNrX3RhYmxlX2FjY2Vzcyh0 aGQsIFNFTEVDVF9BQ0wsIGFsbF90YWJsZXMsIEZBTFNFLCBGQUxTRSwgVUlOVF9NQVgpIHx8CiAJ IG9wZW5fYW5kX2xvY2tfdGFibGVzKHRoZCwgYWxsX3RhYmxlcykpKQogICAgICAgZ290byBlcnJv cjsKQEAgLTMzODcsMTEgKzM0NDgsNiBAQCBlbmRfd2l0aF9yZXN0b3JlX2xpc3Q6CiAgICAgICBw cmVwYXJlZCBzdGF0ZW1lbnQtIHNhZmUuCiAgICAgKi8KICAgICBIQV9DUkVBVEVfSU5GTyBjcmVh dGVfaW5mbyhsZXgtPmNyZWF0ZV9pbmZvKTsKLSAgICBpZiAoZW5kX2FjdGl2ZV90cmFucyh0aGQp KQotICAgIHsKLSAgICAgIHJlcz0gLTE7Ci0gICAgICBicmVhazsKLSAgICB9CiAgICAgY2hhciAq YWxpYXM7CiAgICAgaWYgKCEoYWxpYXM9dGhkLT5zdHJtYWtlKGxleC0+bmFtZS5zdHIsIGxleC0+ bmFtZS5sZW5ndGgpKSB8fAogICAgICAgICBjaGVja19kYl9uYW1lKCZsZXgtPm5hbWUpKQpAQCAt MzQyNiwxMSArMzQ4Miw2IEBAIGVuZF93aXRoX3Jlc3RvcmVfbGlzdDoKICAgfQogICBjYXNlIFNR TENPTV9EUk9QX0RCOgogICB7Ci0gICAgaWYgKGVuZF9hY3RpdmVfdHJhbnModGhkKSkKLSAgICB7 Ci0gICAgICByZXM9IC0xOwotICAgICAgYnJlYWs7Ci0gICAgfQogICAgIGlmIChjaGVja19kYl9u YW1lKCZsZXgtPm5hbWUpKQogICAgIHsKICAgICAgIG15X2Vycm9yKEVSX1dST05HX0RCX05BTUUs IE1ZRigwKSwgbGV4LT5uYW1lLnN0cik7CkBAIC0zNDY5LDExICszNTIwLDYgQEAgZW5kX3dpdGhf cmVzdG9yZV9saXN0OgogICBjYXNlIFNRTENPTV9BTFRFUl9EQl9VUEdSQURFOgogICB7CiAgICAg TEVYX1NUUklORyAqZGI9ICYgbGV4LT5uYW1lOwotICAgIGlmIChlbmRfYWN0aXZlX3RyYW5zKHRo ZCkpCi0gICAgewotICAgICAgcmVzPSAxOwotICAgICAgYnJlYWs7Ci0gICAgfQogI2lmZGVmIEhB VkVfUkVQTElDQVRJT04KICAgICBpZiAodGhkLT5zbGF2ZV90aHJlYWQgJiYgCiAgICAgICAgKCFy cGxfZmlsdGVyLT5kYl9vayhkYi0+c3RyKSB8fApAQCAtMzY0MCw4ICszNjg2LDYgQEAgZW5kX3dp dGhfcmVzdG9yZV9saXN0OgogICAgIGlmIChjaGVja19hY2Nlc3ModGhkLCBJTlNFUlRfQUNMLCAi bXlzcWwiLCAwLCAxLCAxLCAwKSAmJgogICAgICAgICBjaGVja19nbG9iYWxfYWNjZXNzKHRoZCxD UkVBVEVfVVNFUl9BQ0wpKQogICAgICAgYnJlYWs7Ci0gICAgaWYgKGVuZF9hY3RpdmVfdHJhbnMo dGhkKSkKLSAgICAgIGdvdG8gZXJyb3I7CiAgICAgLyogQ29uZGl0aW9uYWxseSB3cml0ZXMgdG8g YmlubG9nICovCiAgICAgaWYgKCEocmVzPSBteXNxbF9jcmVhdGVfdXNlcih0aGQsIGxleC0+dXNl cnNfbGlzdCkpKQogICAgICAgbXlfb2sodGhkKTsKQEAgLTM2NTIsOCArMzY5Niw2IEBAIGVuZF93 aXRoX3Jlc3RvcmVfbGlzdDoKICAgICBpZiAoY2hlY2tfYWNjZXNzKHRoZCwgREVMRVRFX0FDTCwg Im15c3FsIiwgMCwgMSwgMSwgMCkgJiYKICAgICAgICAgY2hlY2tfZ2xvYmFsX2FjY2Vzcyh0aGQs Q1JFQVRFX1VTRVJfQUNMKSkKICAgICAgIGJyZWFrOwotICAgIGlmIChlbmRfYWN0aXZlX3RyYW5z KHRoZCkpCi0gICAgICBnb3RvIGVycm9yOwogICAgIC8qIENvbmRpdGlvbmFsbHkgd3JpdGVzIHRv IGJpbmxvZyAqLwogICAgIGlmICghKHJlcz0gbXlzcWxfZHJvcF91c2VyKHRoZCwgbGV4LT51c2Vy c19saXN0KSkpCiAgICAgICBteV9vayh0aGQpOwpAQCAtMzY2NCw4ICszNzA2LDYgQEAgZW5kX3dp dGhfcmVzdG9yZV9saXN0OgogICAgIGlmIChjaGVja19hY2Nlc3ModGhkLCBVUERBVEVfQUNMLCAi bXlzcWwiLCAwLCAxLCAxLCAwKSAmJgogICAgICAgICBjaGVja19nbG9iYWxfYWNjZXNzKHRoZCxD UkVBVEVfVVNFUl9BQ0wpKQogICAgICAgYnJlYWs7Ci0gICAgaWYgKGVuZF9hY3RpdmVfdHJhbnMo dGhkKSkKLSAgICAgIGdvdG8gZXJyb3I7CiAgICAgLyogQ29uZGl0aW9uYWxseSB3cml0ZXMgdG8g YmlubG9nICovCiAgICAgaWYgKCEocmVzPSBteXNxbF9yZW5hbWVfdXNlcih0aGQsIGxleC0+dXNl cnNfbGlzdCkpKQogICAgICAgbXlfb2sodGhkKTsKQEAgLTM2NzMsOCArMzcxMyw2IEBAIGVuZF93 aXRoX3Jlc3RvcmVfbGlzdDoKICAgfQogICBjYXNlIFNRTENPTV9SRVZPS0VfQUxMOgogICB7Ci0g ICAgaWYgKGVuZF9hY3RpdmVfdHJhbnModGhkKSkKLSAgICAgIGdvdG8gZXJyb3I7CiAgICAgaWYg KGNoZWNrX2FjY2Vzcyh0aGQsIFVQREFURV9BQ0wsICJteXNxbCIsIDAsIDEsIDEsIDApICYmCiAg ICAgICAgIGNoZWNrX2dsb2JhbF9hY2Nlc3ModGhkLENSRUFURV9VU0VSX0FDTCkpCiAgICAgICBi cmVhazsKQEAgLTM2ODYsOSArMzcyNCw2IEBAIGVuZF93aXRoX3Jlc3RvcmVfbGlzdDoKICAgY2Fz ZSBTUUxDT01fUkVWT0tFOgogICBjYXNlIFNRTENPTV9HUkFOVDoKICAgewotICAgIGlmIChlbmRf YWN0aXZlX3RyYW5zKHRoZCkpCi0gICAgICBnb3RvIGVycm9yOwotCiAgICAgaWYgKGNoZWNrX2Fj Y2Vzcyh0aGQsIGxleC0+Z3JhbnQgfCBsZXgtPmdyYW50X3RvdF9jb2wgfCBHUkFOVF9BQ0wsCiAJ CSAgICAgZmlyc3RfdGFibGUgPyAgZmlyc3RfdGFibGUtPmRiIDogc2VsZWN0X2xleC0+ZGIsCiAJ CSAgICAgZmlyc3RfdGFibGUgPyAmZmlyc3RfdGFibGUtPmdyYW50LnByaXZpbGVnZSA6IDAsCkBA IC00MDM5LDkgKzQwNzQsNiBAQCBlbmRfd2l0aF9yZXN0b3JlX2xpc3Q6CiAgICAgICAgICAgICAg ICAgICAgICBpc19zY2hlbWFfZGIobGV4LT5zcGhlYWQtPm1fZGIuc3RyKSkpCiAgICAgICBnb3Rv IGNyZWF0ZV9zcF9lcnJvcjsKIAotICAgIGlmIChlbmRfYWN0aXZlX3RyYW5zKHRoZCkpCi0gICAg ICBnb3RvIGNyZWF0ZV9zcF9lcnJvcjsKLQogICAgIG5hbWU9IGxleC0+c3BoZWFkLT5uYW1lKCZu YW1lbGVuKTsKICNpZmRlZiBIQVZFX0RMT1BFTgogICAgIGlmIChsZXgtPnNwaGVhZC0+bV90eXBl ID09IFRZUEVfRU5VTV9GVU5DVElPTikKQEAgLTQyMzYsOCArNDI2OCw2IEBAIGNyZWF0ZV9zcF9l cnJvcjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxleC0+c3FsX2NvbW1hbmQg PT0gU1FMQ09NX0FMVEVSX1BST0NFRFVSRSwgMCkpCiAJICBnb3RvIGVycm9yOwogCi0gICAgICAg IGlmIChlbmRfYWN0aXZlX3RyYW5zKHRoZCkpIAotICAgICAgICAgIGdvdG8gZXJyb3I7CiAJbWVt Y3B5KCZsZXgtPnNwX2NoaXN0aWNzLCAmY2hpc3RpY3MsIHNpemVvZihsZXgtPnNwX2NoaXN0aWNz KSk7CiAgICAgICAgIGlmICgoc3AtPm1fdHlwZSA9PSBUWVBFX0VOVU1fRlVOQ1RJT04pICYmCiAg ICAgICAgICAgICAhdHJ1c3RfZnVuY3Rpb25fY3JlYXRvcnMgJiYgIG15c3FsX2Jpbl9sb2cuaXNf b3BlbigpICYmCkBAIC00NDU1LDE2ICs0NDg1LDEyIEBAIGNyZWF0ZV9zcF9lcnJvcjoKICAgICAg ICAgTm90ZTogU1FMQ09NX0NSRUFURV9WSUVXIGFsc28gaGFuZGxlcyAnQUxURVIgVklFVycgY29t bWFuZHMKICAgICAgICAgYXMgc3BlY2lmaWVkIHRocm91Z2ggdGhlIHRoZC0+bGV4LT5jcmVhdGVf dmlld19tb2RlIGZsYWcuCiAgICAgICAqLwotICAgICAgaWYgKGVuZF9hY3RpdmVfdHJhbnModGhk KSkKLSAgICAgICAgZ290byBlcnJvcjsKLQogICAgICAgcmVzPSBteXNxbF9jcmVhdGVfdmlldyh0 aGQsIGZpcnN0X3RhYmxlLCB0aGQtPmxleC0+Y3JlYXRlX3ZpZXdfbW9kZSk7CiAgICAgICBicmVh azsKICAgICB9CiAgIGNhc2UgU1FMQ09NX0RST1BfVklFVzoKICAgICB7Ci0gICAgICBpZiAoY2hl Y2tfdGFibGVfYWNjZXNzKHRoZCwgRFJPUF9BQ0wsIGFsbF90YWJsZXMsIEZBTFNFLCBGQUxTRSwg VUlOVF9NQVgpIHx8Ci0gICAgICAgICAgZW5kX2FjdGl2ZV90cmFucyh0aGQpKQorICAgICAgaWYg KGNoZWNrX3RhYmxlX2FjY2Vzcyh0aGQsIERST1BfQUNMLCBhbGxfdGFibGVzLCBGQUxTRSwgRkFM U0UsIFVJTlRfTUFYKSkKICAgICAgICAgZ290byBlcnJvcjsKICAgICAgIC8qIENvbmRpdGlvbmFs bHkgd3JpdGVzIHRvIGJpbmxvZy4gKi8KICAgICAgIHJlcz0gbXlzcWxfZHJvcF92aWV3KHRoZCwg Zmlyc3RfdGFibGUsIHRoZC0+bGV4LT5kcm9wX21vZGUpOwpAQCAtNDQ3Miw5ICs0NDk4LDYgQEAg Y3JlYXRlX3NwX2Vycm9yOgogICAgIH0KICAgY2FzZSBTUUxDT01fQ1JFQVRFX1RSSUdHRVI6CiAg IHsKLSAgICBpZiAoZW5kX2FjdGl2ZV90cmFucyh0aGQpKQotICAgICAgZ290byBlcnJvcjsKLQog ICAgIC8qIENvbmRpdGlvbmFsbHkgd3JpdGVzIHRvIGJpbmxvZy4gKi8KICAgICByZXM9IG15c3Fs X2NyZWF0ZV9vcl9kcm9wX3RyaWdnZXIodGhkLCBhbGxfdGFibGVzLCAxKTsKIApAQCAtNDQ4Miw5 ICs0NTA1LDYgQEAgY3JlYXRlX3NwX2Vycm9yOgogICB9CiAgIGNhc2UgU1FMQ09NX0RST1BfVFJJ R0dFUjoKICAgewotICAgIGlmIChlbmRfYWN0aXZlX3RyYW5zKHRoZCkpCi0gICAgICBnb3RvIGVy cm9yOwotCiAgICAgLyogQ29uZGl0aW9uYWxseSB3cml0ZXMgdG8gYmlubG9nLiAqLwogICAgIHJl cz0gbXlzcWxfY3JlYXRlX29yX2Ryb3BfdHJpZ2dlcih0aGQsIGFsbF90YWJsZXMsIDApOwogICAg IGJyZWFrOwpAQCAtNDY2Miw3ICs0NjgyLDcgQEAgY3JlYXRlX3NwX2Vycm9yOgogICAgIHJlcz0g bXlzcWxfeGFfcmVjb3Zlcih0aGQpOwogICAgIGJyZWFrOwogICBjYXNlIFNRTENPTV9BTFRFUl9U QUJMRVNQQUNFOgotICAgIGlmIChjaGVja19hY2Nlc3ModGhkLCBBTFRFUl9BQ0wsIHRoZC0+ZGIs IDAsIDEsIDAsIHRoZC0+ZGIgPyBpc19zY2hlbWFfZGIodGhkLT5kYikgOiAwKSkKKyAgICBpZiAo Y2hlY2tfZ2xvYmFsX2FjY2Vzcyh0aGQsIENSRUFURV9UQUJMRVNQQUNFX0FDTCkpCiAgICAgICBi cmVhazsKICAgICBpZiAoIShyZXM9IG15c3FsX2FsdGVyX3RhYmxlc3BhY2UodGhkLCBsZXgtPmFs dGVyX3RhYmxlc3BhY2VfaW5mbykpKQogICAgICAgbXlfb2sodGhkKTsKQEAgLTQ3ODksNiArNDgw OSwxMiBAQCBmaW5pc2g6CiAgICAgKi8KICAgICBzdGFydF93YWl0aW5nX2dsb2JhbF9yZWFkX2xv Y2sodGhkKTsKICAgfQorCisgIC8qIElmIGNvbW1pdCBmYWlscywgd2Ugc2hvdWxkIGJlIGFibGUg dG8gcmVzZXQgdGhlIE9LIHN0YXR1cy4gKi8KKyAgdGhkLT5tYWluX2RhLmNhbl9vdmVyd3JpdGVf c3RhdHVzPSBUUlVFOworICBvcHRfaW1wbGljaXRfY29tbWl0KHRoZCwgQ0ZfSU1QTElDSVRfQ09N TUlUX0VORCk7CisgIHRoZC0+bWFpbl9kYS5jYW5fb3ZlcndyaXRlX3N0YXR1cz0gRkFMU0U7CisK ICAgREJVR19SRVRVUk4ocmVzIHx8IHRoZC0+aXNfZXJyb3IoKSk7CiAKIGVycm9yOgpAQCAtNjY0 NSwxNSArNjY3MSwyNCBAQCBib29sIHJlbG9hZF9hY2xfYW5kX2NhY2hlKFRIRCAqdGhkLCB1bG9u CiAgICAgICB0aGQtPnN0b3JlX2dsb2JhbHMoKTsKICAgICAgIGxleF9zdGFydCh0aGQpOwogICAg IH0KKyAgICAKICAgICBpZiAodGhkKQogICAgIHsKLSAgICAgIGlmIChhY2xfcmVsb2FkKHRoZCkp Ci0gICAgICAgIHJlc3VsdD0gMTsKLSAgICAgIGlmIChncmFudF9yZWxvYWQodGhkKSkKKyAgICAg IGJvb2wgcmVsb2FkX2FjbF9mYWlsZWQ9IGFjbF9yZWxvYWQodGhkKTsKKyAgICAgIGJvb2wgcmVs b2FkX2dyYW50c19mYWlsZWQ9IGdyYW50X3JlbG9hZCh0aGQpOworICAgICAgYm9vbCByZWxvYWRf c2VydmVyc19mYWlsZWQ9IHNlcnZlcnNfcmVsb2FkKHRoZCk7CisgICAgICAKKyAgICAgIGlmIChy ZWxvYWRfYWNsX2ZhaWxlZCB8fCByZWxvYWRfZ3JhbnRzX2ZhaWxlZCB8fCByZWxvYWRfc2VydmVy c19mYWlsZWQpCisgICAgICB7CiAgICAgICAgIHJlc3VsdD0gMTsKLSAgICAgIGlmIChzZXJ2ZXJz X3JlbG9hZCh0aGQpKQotICAgICAgICByZXN1bHQ9IDE7IC8qIHB1cmVjb3Y6IGluc3BlY3RlZCAq LworICAgICAgICAvKgorICAgICAgICAgIFdoZW4gYW4gZXJyb3IgaXMgcmV0dXJuZWQsIG15X21l c3NhZ2UgbWF5IGhhdmUgbm90IGJlZW4gY2FsbGVkIGFuZAorICAgICAgICAgIHRoZSBjbGllbnQg d2lsbCBoYW5nIHdhaXRpbmcgZm9yIGEgcmVzcG9uc2UuCisgICAgICAgICovCisgICAgICAgIG15 X2Vycm9yKEVSX1VOS05PV05fRVJST1IsIE1ZRigwKSwgIkZMVVNIIFBSSVZJTEVHRVMgZmFpbGVk Iik7CisgICAgICB9CiAgICAgfQorCiAgICAgaWYgKHRtcF90aGQpCiAgICAgewogICAgICAgZGVs ZXRlIHRtcF90aGQ7CkBAIC02NzM0LDggKzY3NjksMTAgQEAgYm9vbCByZWxvYWRfYWNsX2FuZF9j YWNoZShUSEQgKnRoZCwgdWxvbgogICAgICAgdG1wX3dyaXRlX3RvX2JpbmxvZz0gMDsKICAgICAg IGlmIChsb2NrX2dsb2JhbF9yZWFkX2xvY2sodGhkKSkKIAlyZXR1cm4gMTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLy8gS2lsbGVkCi0gICAgICByZXN1bHQ9IGNsb3NlX2NhY2hlZF90 YWJsZXModGhkLCB0YWJsZXMsIEZBTFNFLCAob3B0aW9ucyAmIFJFRlJFU0hfRkFTVCkgPwotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNFIDogVFJVRSk7CisgICAgICBpZiAo Y2xvc2VfY2FjaGVkX3RhYmxlcyh0aGQsIHRhYmxlcywgRkFMU0UsIChvcHRpb25zICYgUkVGUkVT SF9GQVNUKSA/CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRkFMU0UgOiBUUlVF KSkKKyAgICAgICAgICByZXN1bHQ9IDE7CisgICAgICAKICAgICAgIGlmIChtYWtlX2dsb2JhbF9y ZWFkX2xvY2tfYmxvY2tfY29tbWl0KHRoZCkpIC8vIEtpbGxlZAogICAgICAgewogICAgICAgICAv KiBEb24ndCBsZWF2ZSB0aGluZ3MgaW4gYSBoYWxmLWxvY2tlZCBzdGF0ZSAqLwpAQCAtNjc5Nyw4 ICs2ODM0LDggQEAgYm9vbCByZWxvYWRfYWNsX2FuZF9jYWNoZShUSEQgKnRoZCwgdWxvbgogI2lm ZGVmIE9QRU5TU0wKICAgIGlmIChvcHRpb25zICYgUkVGUkVTSF9ERVNfS0VZX0ZJTEUpCiAgICB7 Ci0gICAgIGlmIChkZXNfa2V5X2ZpbGUpCi0gICAgICAgcmVzdWx0PWxvYWRfZGVzX2tleV9maWxl KGRlc19rZXlfZmlsZSk7CisgICAgIGlmIChkZXNfa2V5X2ZpbGUgJiYgbG9hZF9kZXNfa2V5X2Zp bGUoZGVzX2tleV9maWxlKSkKKyAgICAgICAgIHJlc3VsdD0gMTsKICAgIH0KICNlbmRpZgogI2lm ZGVmIEhBVkVfUkVQTElDQVRJT04KCj09PSBtb2RpZmllZCBmaWxlICdzcWwvc3FsX3NlbGVjdC5j YycKLS0tIGEvc3FsL3NxbF9zZWxlY3QuY2MJMjAwOC0wNy0yNSAxNToxMDoxNCArMDAwMAorKysg Yi9zcWwvc3FsX3NlbGVjdC5jYwkyMDA4LTA4LTA3IDAzOjA1OjMzICswMDAwCkBAIC0xNTgyLDEz ICsxNTgyLDEzIEBAIEpPSU46Om9wdGltaXplKCkKICAgfQogICBpZiAoY29uc3RfdGFibGVzICYm ICF0aGQtPmxvY2tlZF90YWJsZXNfbW9kZSAmJgogICAgICAgIShzZWxlY3Rfb3B0aW9ucyAmIFNF TEVDVF9OT19VTkxPQ0spKQotICAgIG15c3FsX3VubG9ja19zb21lX3RhYmxlcyh0aGQsIHRhYmxl LCBjb25zdF90YWJsZXMpOworICAgIG15c3FsX3VubG9ja19zb21lX3RhYmxlcyh0aGQsIGFsbF90 YWJsZXMsIGNvbnN0X3RhYmxlcyk7CiAgIGlmICghY29uZHMgJiYgb3V0ZXJfam9pbikKICAgewog ICAgIC8qIEhhbmRsZSB0aGUgY2FzZSB3aGVyZSB3ZSBoYXZlIGFuIE9VVEVSIEpPSU4gd2l0aG91 dCBhIFdIRVJFICovCiAgICAgY29uZHM9bmV3IEl0ZW1faW50KChsb25nbG9uZykgMSwxKTsJLy8g QWx3YXlzIHRydWUKICAgfQotICBzZWxlY3Q9IG1ha2Vfc2VsZWN0KCp0YWJsZSwgY29uc3RfdGFi bGVfbWFwLAorICBzZWxlY3Q9IG1ha2Vfc2VsZWN0KCphbGxfdGFibGVzLCBjb25zdF90YWJsZV9t YXAsCiAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfdGFibGVfbWFwLCBjb25kcywgMSwgJmVy cm9yKTsKICAgaWYgKGVycm9yKQogICB7CQkJCQkJLyogcHVyZWNvdjogaW5zcGVjdGVkICovCkBA IC00MjE2LDcgKzQyMTYsNyBAQCBtYWtlX2pvaW5fc3RhdGlzdGljcyhKT0lOICpqb2luLCBUQUJM RV9MCiAKICAgam9pbi0+am9pbl90YWI9c3RhdDsKICAgam9pbi0+bWFwMnRhYmxlPXN0YXRfcmVm OwotICBqb2luLT50YWJsZT0gam9pbi0+YWxsX3RhYmxlcz10YWJsZV92ZWN0b3I7CisgIGpvaW4t PmFsbF90YWJsZXM9IHRhYmxlX3ZlY3RvcjsKICAgam9pbi0+Y29uc3RfdGFibGVzPWNvbnN0X2Nv dW50OwogICBqb2luLT5mb3VuZF9jb25zdF90YWJsZV9tYXA9Zm91bmRfY29uc3RfdGFibGVfbWFw OwogCkBAIC02OTQ0LDcgKzY5NDQsNyBAQCBnZXRfYmVzdF9jb21iaW5hdGlvbihKT0lOICpqb2lu KQogICB7CiAgICAgVEFCTEUgKmZvcm07CiAgICAgKmo9ICpqb2luLT5iZXN0X3Bvc2l0aW9uc1t0 YWJsZW5yXS50YWJsZTsKLSAgICBmb3JtPWpvaW4tPnRhYmxlW3RhYmxlbnJdPWotPnRhYmxlOwor ICAgIGZvcm09am9pbi0+YWxsX3RhYmxlc1t0YWJsZW5yXT1qLT50YWJsZTsKICAgICB1c2VkX3Rh Ymxlc3w9IGZvcm0tPm1hcDsKICAgICBmb3JtLT5yZWdpbmZvLmpvaW5fdGFiPWo7CiAgICAgaWYg KCEqai0+b25fZXhwcl9yZWYpCkBAIC03MjIzLDcgKzcyMjMsNyBAQCBtYWtlX3NpbXBsZV9qb2lu KEpPSU4gKmpvaW4sVEFCTEUgKnRtcF90CiAgIGpvaW5fdGFiPSBqb2luLT5qb2luX3RhYl9yZWV4 ZWM7CiAKICAgam9pbi0+am9pbl90YWI9am9pbl90YWI7Ci0gIGpvaW4tPnRhYmxlPXRhYmxlcHRy OyB0YWJsZXB0clswXT10bXBfdGFibGU7CisgIGpvaW4tPmFsbF90YWJsZXM9dGFibGVwdHI7IHRh YmxlcHRyWzBdPXRtcF90YWJsZTsKICAgam9pbi0+dGFibGVzPTE7CiAgIGpvaW4tPmNvbnN0X3Rh Ymxlcz0wOwogICBqb2luLT5jb25zdF90YWJsZV9tYXA9MDsKQEAgLTg2NTAsMjQgKzg2NTAsMjMg QEAgdm9pZCBKT0lOOjpjbGVhbnVwKGJvb2wgZnVsbCkKIHsKICAgREJVR19FTlRFUigiSk9JTjo6 Y2xlYW51cCIpOwogCi0gIGlmICh0YWJsZSkKKyAgaWYgKGFsbF90YWJsZXMpCiAgIHsKICAgICBK T0lOX1RBQiAqdGFiLCplbmQ7CiAgICAgLyoKICAgICAgIE9ubHkgYSBzb3J0ZWQgdGFibGUgbWF5 IGJlIGNhY2hlZC4gIFRoaXMgc29ydGVkIHRhYmxlIGlzIGFsd2F5cyB0aGUKLSAgICAgIGZpcnN0 IG5vbiBjb25zdCB0YWJsZSBpbiBqb2luLT50YWJsZQorICAgICAgZmlyc3Qgbm9uIGNvbnN0IHRh YmxlIGluIGpvaW4tPmFsbF90YWJsZXMKICAgICAqLwogICAgIGlmICh0YWJsZXMgPiBjb25zdF90 YWJsZXMpIC8vIFRlc3QgZm9yIG5vdC1jb25zdCB0YWJsZXMKICAgICB7Ci0gICAgICBmcmVlX2lv X2NhY2hlKHRhYmxlW2NvbnN0X3RhYmxlc10pOwotICAgICAgZmlsZXNvcnRfZnJlZV9idWZmZXJz KHRhYmxlW2NvbnN0X3RhYmxlc10sZnVsbCk7CisgICAgICBmcmVlX2lvX2NhY2hlKGFsbF90YWJs ZXNbY29uc3RfdGFibGVzXSk7CisgICAgICBmaWxlc29ydF9mcmVlX2J1ZmZlcnMoYWxsX3RhYmxl c1tjb25zdF90YWJsZXNdLGZ1bGwpOwogICAgIH0KIAogICAgIGlmIChmdWxsKQogICAgIHsKICAg ICAgIGZvciAodGFiPSBqb2luX3RhYiwgZW5kPSB0YWIrdGFibGVzOyB0YWIgIT0gZW5kOyB0YWIr KykKIAl0YWItPmNsZWFudXAoKTsKLSAgICAgIHRhYmxlPSAwOwogICAgIH0KICAgICBlbHNlCiAg ICAgewpAQCAtODY4OCw2ICs4Njg3LDEyIEBAIHZvaWQgSk9JTjo6Y2xlYW51cChib29sIGZ1bGwp CiAgICAgaWYgKHRtcF9qb2luKQogICAgICAgdG1wX3RhYmxlX3BhcmFtLmNvcHlfZmllbGQ9IDA7 CiAgICAgZ3JvdXBfZmllbGRzLmRlbGV0ZV9lbGVtZW50cygpOworICAgIC8qIAorICAgICAgRW5z dXJlIHRoYXQgdGhlIGFib3ZlIGRlbGV0ZV9lbGVtZW50cygpIHdvdWxkIG5vdCBiZSBjYWxsZWQK KyAgICAgIHR3aWNlIGZvciB0aGUgc2FtZSBsaXN0LgorICAgICovCisgICAgaWYgKHRtcF9qb2lu ICYmIHRtcF9qb2luICE9IHRoaXMpCisgICAgICB0bXBfam9pbi0+Z3JvdXBfZmllbGRzPSBncm91 cF9maWVsZHM7CiAgICAgLyoKICAgICAgIFdlIGNhbid0IGNhbGwgZGVsZXRlX2VsZW1lbnRzKCkg b24gY29weV9mdW5jcyBhcyB0aGlzIHdpbGwgY2F1c2UKICAgICAgIHByb2JsZW1zIGluIGZyZWVf ZWxlbWVudHMoKSBhcyBzb21lIG9mIHRoZSBlbGVtZW50cyBhcmUgdGhlbiBkZWxldGVkLgpAQCAt ODk4OCw3ICs4OTkzLDcgQEAgc3RhdGljIHZvaWQgY2xlYXJfdGFibGVzKEpPSU4gKmpvaW4pCiAg ICAgYXJlIG5vdCByZS1jYWxjdWxhdGVkLgogICAqLwogICBmb3IgKHVpbnQgaT1qb2luLT5jb25z dF90YWJsZXMgOyBpIDwgam9pbi0+dGFibGVzIDsgaSsrKQotICAgIG1hcmtfYXNfbnVsbF9yb3co am9pbi0+dGFibGVbaV0pOwkJLy8gQWxsIGZpZWxkcyBhcmUgTlVMTAorICAgIG1hcmtfYXNfbnVs bF9yb3coam9pbi0+YWxsX3RhYmxlc1tpXSk7CQkvLyBBbGwgZmllbGRzIGFyZSBOVUxMCiB9CiAK IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKgpAQCAtMTMzOTMsMjYgKzEzMzk4LDcgQEAgZG9fc2VsZWN0 KEpPSU4gKmpvaW4sTGlzdDxJdGVtPiAqZmllbGRzLAogICBpZiAoZXJyb3IgPT0gTkVTVEVEX0xP T1BfTk9fTU9SRV9ST1dTKQogICAgIGVycm9yPSBORVNURURfTE9PUF9PSzsKIAotICBpZiAoZXJy b3IgPT0gTkVTVEVEX0xPT1BfT0spCi0gIHsKLSAgICAvKgotICAgICAgU2ljOiB0aGlzIGJyYW5j aCB3b3JrcyBldmVuIGlmIHJjICE9IDAsIGUuZy4gd2hlbgotICAgICAgc2VuZF9kYXRhIGFib3Zl IHJldHVybnMgYW4gZXJyb3IuCi0gICAgKi8KLSAgICBpZiAoIXRhYmxlKQkJCQkJLy8gSWYgc2Vu ZGluZyBkYXRhIHRvIGNsaWVudAotICAgIHsKLSAgICAgIC8qCi0JVGhlIGZvbGxvd2luZyB3aWxs IHVubG9jayBhbGwgY3Vyc29ycyBpZiB0aGUgY29tbWFuZCB3YXNuJ3QgYW4KLQl1cGRhdGUgY29t bWFuZAotICAgICAgKi8KLSAgICAgIGpvaW4tPmpvaW5fZnJlZSgpOwkJCS8vIFVubG9jayBhbGwg Y3Vyc29ycwotICAgICAgaWYgKGpvaW4tPnJlc3VsdC0+c2VuZF9lb2YoKSkKLQlyYz0gMTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRG9uJ3Qgc2VuZCBlcnJvcgotICAgIH0K LSAgICBEQlVHX1BSSU5UKCJpbmZvIiwoIiVsZCByZWNvcmRzIG91dHB1dCIsIChsb25nKSBqb2lu LT5zZW5kX3JlY29yZHMpKTsKLSAgfQotICBlbHNlCi0gICAgcmM9IC0xOworCiAgIGlmICh0YWJs ZSkKICAgewogICAgIGludCB0bXAsIG5ld19lcnJubz0gMDsKQEAgLTEzNDI5LDYgKzEzNDE1LDI5 IEBAIGRvX3NlbGVjdChKT0lOICpqb2luLExpc3Q8SXRlbT4gKmZpZWxkcywKICAgICBpZiAobmV3 X2Vycm5vKQogICAgICAgdGFibGUtPmZpbGUtPnByaW50X2Vycm9yKG5ld19lcnJubyxNWUYoMCkp OwogICB9CisgIGVsc2UKKyAgeworICAgIC8qCisgICAgICBUaGUgZm9sbG93aW5nIHdpbGwgdW5s b2NrIGFsbCBjdXJzb3JzIGlmIHRoZSBjb21tYW5kIHdhc24ndCBhbgorICAgICAgdXBkYXRlIGNv bW1hbmQKKyAgICAqLworICAgIGpvaW4tPmpvaW5fZnJlZSgpOwkJCS8vIFVubG9jayBhbGwgY3Vy c29ycworICB9CisgIGlmIChlcnJvciA9PSBORVNURURfTE9PUF9PSykKKyAgeworICAgIC8qCisg ICAgICBTaWM6IHRoaXMgYnJhbmNoIHdvcmtzIGV2ZW4gaWYgcmMgIT0gMCwgZS5nLiB3aGVuCisg ICAgICBzZW5kX2RhdGEgYWJvdmUgcmV0dXJucyBhbiBlcnJvci4KKyAgICAqLworICAgIGlmICgh dGFibGUpCQkJCQkvLyBJZiBzZW5kaW5nIGRhdGEgdG8gY2xpZW50CisgICAgeworICAgICAgaWYg KGpvaW4tPnJlc3VsdC0+c2VuZF9lb2YoKSkKKwlyYz0gMTsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLy8gRG9uJ3Qgc2VuZCBlcnJvcgorICAgIH0KKyAgICBEQlVHX1BSSU5UKCJp bmZvIiwoIiVsZCByZWNvcmRzIG91dHB1dCIsIChsb25nKSBqb2luLT5zZW5kX3JlY29yZHMpKTsK KyAgfQorICBlbHNlCisgICAgcmM9IC0xOwogI2lmbmRlZiBEQlVHX09GRgogICBpZiAocmMpCiAg IHsKQEAgLTE0NDUxLDEwICsxNDQ2MCw4IEBAIGpvaW5faW5pdF9xdWlja19yZWFkX3JlY29yZChK T0lOX1RBQiAqdGEKIH0KIAogCi1pbnQgcnJfc2VxdWVudGlhbChSRUFEX1JFQ09SRCAqaW5mbyk7 Ci1pbnQgaW5pdF9yZWFkX3JlY29yZF9zZXEoSk9JTl9UQUIgKnRhYikKK2ludCByZWFkX2ZpcnN0 X3JlY29yZF9zZXEoSk9JTl9UQUIgKnRhYikKIHsKLSAgdGFiLT5yZWFkX3JlY29yZC5yZWFkX3Jl Y29yZD0gcnJfc2VxdWVudGlhbDsKICAgaWYgKHRhYi0+cmVhZF9yZWNvcmQuZmlsZS0+aGFfcm5k X2luaXQoMSkpCiAgICAgcmV0dXJuIDE7CiAgIHJldHVybiAoKnRhYi0+cmVhZF9yZWNvcmQucmVh ZF9yZWNvcmQpKCZ0YWItPnJlYWRfcmVjb3JkKTsKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvc3Fs X3NlbGVjdC5oJwotLS0gYS9zcWwvc3FsX3NlbGVjdC5oCTIwMDgtMDYtMDUgMTY6MTE6MjIgKzAw MDAKKysrIGIvc3FsL3NxbF9zZWxlY3QuaAkyMDA4LTA3LTExIDE2OjIyOjQ0ICswMDAwCkBAIC00 MTMsNyArNDEzLDcgQEAgcHVibGljOgogICBKT0lOX1RBQiAqam9pbl90YWIsKipiZXN0X3JlZjsK ICAgSk9JTl9UQUIgKiptYXAydGFibGU7ICAgIC8vLzwgbWFwcGluZyBiZXR3ZWVuIHRhYmxlIGlu ZGV4ZXMgYW5kIEpPSU5fVEFCcwogICBKT0lOX1RBQiAqam9pbl90YWJfc2F2ZTsgLy8vPCBzYXZl ZCBqb2luX3RhYiBmb3Igc3VicXVlcnkgcmVleGVjdXRpb24KLSAgVEFCTEUgICAgKip0YWJsZSwq KmFsbF90YWJsZXM7CisgIFRBQkxFICAgICoqYWxsX3RhYmxlczsKICAgLyoqCiAgICAgVGhlIHRh YmxlIHdoaWNoIGhhcyBhbiBpbmRleCB0aGF0IGFsbG93cyB0byBwcm9kdWNlIHRoZSByZXF1cmll ZCBvcmRlcmluZy4KICAgICBBIHNwZWNpYWwgdmFsdWUgb2YgMHgxIG1lYW5zIHRoYXQgdGhlIG9y ZGVyaW5nIHdpbGwgYmUgcHJvZHVjZWQgYnkKQEAgLTU2OCw3ICs1NjgsNyBAQCBwdWJsaWM6CiAg ICAgICAgc2VsZWN0X3Jlc3VsdCAqcmVzdWx0X2FyZykKICAgewogICAgIGpvaW5fdGFiPSBqb2lu X3RhYl9zYXZlPSAwOwotICAgIHRhYmxlPSAwOworICAgIGFsbF90YWJsZXM9IDA7CiAgICAgdGFi bGVzPSAwOwogICAgIGNvbnN0X3RhYmxlcz0gMDsKICAgICBqb2luX2xpc3Q9IDA7Cgo9PT0gbW9k aWZpZWQgZmlsZSAnc3FsL3NxbF9zaG93LmNjJwotLS0gYS9zcWwvc3FsX3Nob3cuY2MJMjAwOC0w Ni0zMCAwOTo1OTo1OSArMDAwMAorKysgYi9zcWwvc3FsX3Nob3cuY2MJMjAwOC0wNy0yOSAxMjow ODowMSArMDAwMApAQCAtMzEwLDYgKzMxMCw3IEBAIHN0YXRpYyBzdHJ1Y3Qgc2hvd19wcml2aWxl Z2VzX3N0IHN5c19wcmkKICAgeyJTaHV0ZG93biIsIlNlcnZlciBBZG1pbiIsICJUbyBzaHV0IGRv d24gdGhlIHNlcnZlciJ9LAogICB7IlN1cGVyIiwiU2VydmVyIEFkbWluIiwiVG8gdXNlIEtJTEwg dGhyZWFkLCBTRVQgR0xPQkFMLCBDSEFOR0UgTUFTVEVSLCBldGMuIn0sCiAgIHsiVHJpZ2dlciIs IlRhYmxlcyIsICJUbyB1c2UgdHJpZ2dlcnMifSwKKyAgeyJDcmVhdGUgdGFibGVzcGFjZSIsICJT ZXJ2ZXIgQWRtaW4iLCAiVG8gY3JlYXRlL2FsdGVyL2Ryb3AgdGFibGVzcGFjZXMifSwKICAgeyJV cGRhdGUiLCAiVGFibGVzIiwgICJUbyB1cGRhdGUgZXhpc3Rpbmcgcm93cyJ9LAogICB7IlVzYWdl IiwiU2VydmVyIEFkbWluIiwiTm8gcHJpdmlsZWdlcyAtIGFsbG93IGNvbm5lY3Qgb25seSJ9LAog ICB7TnVsbFMsIE51bGxTLCBOdWxsU30KQEAgLTM5OTksNyArNDAwMCw5IEBAIGludCBmaWxsX3Nj aGVtYV9jaGFyc2V0cyhUSEQgKnRoZCwgVEFCTEUKICAgVEFCTEUgKnRhYmxlPSB0YWJsZXMtPnRh YmxlOwogICBDSEFSU0VUX0lORk8gKnNjcz0gc3lzdGVtX2NoYXJzZXRfaW5mbzsKIAotICBmb3Ig KGNzPSBhbGxfY2hhcnNldHMgOyBjcyA8IGFsbF9jaGFyc2V0cysyNTUgOyBjcysrKQorICBmb3Ig KGNzPSBhbGxfY2hhcnNldHMgOworICAgICAgIGNzIDwgYWxsX2NoYXJzZXRzICsgYXJyYXlfZWxl bWVudHMoYWxsX2NoYXJzZXRzKSA7CisgICAgICAgY3MrKykKICAgewogICAgIENIQVJTRVRfSU5G TyAqdG1wX2NzPSBjc1swXTsKICAgICBpZiAodG1wX2NzICYmICh0bXBfY3MtPnN0YXRlICYgTVlf Q1NfUFJJTUFSWSkgJiYKQEAgLTQwNzgsNyArNDA4MSw5IEBAIGludCBmaWxsX3NjaGVtYV9jb2xs YXRpb24oVEhEICp0aGQsIFRBQkwKICAgY29uc3QgY2hhciAqd2lsZD0gdGhkLT5sZXgtPndpbGQg PyB0aGQtPmxleC0+d2lsZC0+cHRyKCkgOiBOdWxsUzsKICAgVEFCTEUgKnRhYmxlPSB0YWJsZXMt PnRhYmxlOwogICBDSEFSU0VUX0lORk8gKnNjcz0gc3lzdGVtX2NoYXJzZXRfaW5mbzsKLSAgZm9y IChjcz0gYWxsX2NoYXJzZXRzIDsgY3MgPCBhbGxfY2hhcnNldHMrMjU1IDsgY3MrKyApCisgIGZv ciAoY3M9IGFsbF9jaGFyc2V0cyA7CisgICAgICAgY3MgPCBhbGxfY2hhcnNldHMgKyBhcnJheV9l bGVtZW50cyhhbGxfY2hhcnNldHMpICA7CisgICAgICAgY3MrKyApCiAgIHsKICAgICBDSEFSU0VU X0lORk8gKipjbDsKICAgICBDSEFSU0VUX0lORk8gKnRtcF9jcz0gY3NbMF07CkBAIC00MDg2LDcg KzQwOTEsOSBAQCBpbnQgZmlsbF9zY2hlbWFfY29sbGF0aW9uKFRIRCAqdGhkLCBUQUJMCiAgICAg ICAgICAodG1wX2NzLT5zdGF0ZSAmIE1ZX0NTX0hJRERFTikgfHwKICAgICAgICAgISh0bXBfY3Mt PnN0YXRlICYgTVlfQ1NfUFJJTUFSWSkpCiAgICAgICBjb250aW51ZTsKLSAgICBmb3IgKGNsPSBh bGxfY2hhcnNldHM7IGNsIDwgYWxsX2NoYXJzZXRzKzI1NSA7Y2wgKyspCisgICAgZm9yIChjbD0g YWxsX2NoYXJzZXRzOworICAgICAgICAgY2wgPCBhbGxfY2hhcnNldHMgKyBhcnJheV9lbGVtZW50 cyhhbGxfY2hhcnNldHMpICA7CisgICAgICAgICBjbCArKykKICAgICB7CiAgICAgICBDSEFSU0VU X0lORk8gKnRtcF9jbD0gY2xbMF07CiAgICAgICBpZiAoIXRtcF9jbCB8fCAhKHRtcF9jbC0+c3Rh dGUgJiBNWV9DU19BVkFJTEFCTEUpIHx8CkBAIC00MTE5LDE0ICs0MTI2LDE4IEBAIGludCBmaWxs X3NjaGVtYV9jb2xsX2NoYXJzZXRfYXBwKFRIRCAqdGgKICAgQ0hBUlNFVF9JTkZPICoqY3M7CiAg IFRBQkxFICp0YWJsZT0gdGFibGVzLT50YWJsZTsKICAgQ0hBUlNFVF9JTkZPICpzY3M9IHN5c3Rl bV9jaGFyc2V0X2luZm87Ci0gIGZvciAoY3M9IGFsbF9jaGFyc2V0cyA7IGNzIDwgYWxsX2NoYXJz ZXRzKzI1NSA7IGNzKysgKQorICBmb3IgKGNzPSBhbGxfY2hhcnNldHMgOworICAgICAgIGNzIDwg YWxsX2NoYXJzZXRzICsgYXJyYXlfZWxlbWVudHMoYWxsX2NoYXJzZXRzKSA7CisgICAgICAgY3Mr KyApCiAgIHsKICAgICBDSEFSU0VUX0lORk8gKipjbDsKICAgICBDSEFSU0VUX0lORk8gKnRtcF9j cz0gY3NbMF07CiAgICAgaWYgKCF0bXBfY3MgfHwgISh0bXBfY3MtPnN0YXRlICYgTVlfQ1NfQVZB SUxBQkxFKSB8fAogICAgICAgICAhKHRtcF9jcy0+c3RhdGUgJiBNWV9DU19QUklNQVJZKSkKICAg ICAgIGNvbnRpbnVlOwotICAgIGZvciAoY2w9IGFsbF9jaGFyc2V0czsgY2wgPCBhbGxfY2hhcnNl dHMrMjU1IDtjbCArKykKKyAgICBmb3IgKGNsPSBhbGxfY2hhcnNldHM7CisgICAgICAgICBjbCA8 IGFsbF9jaGFyc2V0cyArIGFycmF5X2VsZW1lbnRzKGFsbF9jaGFyc2V0cykgOworICAgICAgICAg Y2wgKyspCiAgICAgewogICAgICAgQ0hBUlNFVF9JTkZPICp0bXBfY2w9IGNsWzBdOwogICAgICAg aWYgKCF0bXBfY2wgfHwgISh0bXBfY2wtPnN0YXRlICYgTVlfQ1NfQVZBSUxBQkxFKSB8fAoKPT09 IG1vZGlmaWVkIGZpbGUgJ3NxbC9zcWxfdGFibGUuY2MnCi0tLSBhL3NxbC9zcWxfdGFibGUuY2MJ MjAwOC0wNy0xOCAxMzozMDo1MyArMDAwMAorKysgYi9zcWwvc3FsX3RhYmxlLmNjCTIwMDgtMDct MjYgMTY6Mzg6MjAgKzAwMDAKQEAgLTQxNTUsOCArNDE1NSw2IEBAIHN0YXRpYyBib29sIG15c3Fs X2FkbWluX3RhYmxlKFRIRCogdGhkLCAKICAgQ0hBUlNFVF9JTkZPICpjcz0gc3lzdGVtX2NoYXJz ZXRfaW5mbzsKICAgREJVR19FTlRFUigibXlzcWxfYWRtaW5fdGFibGUiKTsKIAotICBpZiAoZW5k X2FjdGl2ZV90cmFucyh0aGQpKQotICAgIERCVUdfUkVUVVJOKDEpOwogICBmaWVsZF9saXN0LnB1 c2hfYmFjayhpdGVtID0gbmV3IEl0ZW1fZW1wdHlfc3RyaW5nKCJUYWJsZSIsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkFNRV9DSEFSX0xFTiAq IDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y3MpKTsKQEAgLTQyNDcsMTIgKzQyNDUsMTIgQEAgc3RhdGljIGJvb2wgbXlzcWxfYWRtaW5fdGFi bGUoVEhEKiB0aGQsIAogICAgIHsKICAgICAgIERCVUdfUFJJTlQoImFkbWluIiwgKCJvcGVuIHRh YmxlIGZhaWxlZCIpKTsKICAgICAgIGlmICghdGhkLT53YXJuX2xpc3QuZWxlbWVudHMpCi0gICAg ICAgIHB1c2hfd2FybmluZyh0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAg ICAgICBwdXNoX3dhcm5pbmcodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAg ICAgICAgICAgICAgICAgICAgRVJfQ0hFQ0tfTk9fU1VDSF9UQUJMRSwgRVIoRVJfQ0hFQ0tfTk9f U1VDSF9UQUJMRSkpOwogICAgICAgLyogaWYgaXQgd2FzIGEgdmlldyB3aWxsIGNoZWNrIG1kNSBz dW0gKi8KICAgICAgIGlmICh0YWJsZS0+dmlldyAmJgogICAgICAgICAgIHZpZXdfY2hlY2tzdW0o dGhkLCB0YWJsZSkgPT0gSEFfQURNSU5fV1JPTkdfQ0hFQ0tTVU0pCi0gICAgICAgIHB1c2hfd2Fy bmluZyh0aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgICBwdXNoX3dh cm5pbmcodGhkLCBNWVNRTF9FUlJPUjo6V0FSTl9MRVZFTF9XQVJOLAogICAgICAgICAgICAgICAg ICAgICAgRVJfVklFV19DSEVDS1NVTSwgRVIoRVJfVklFV19DSEVDS1NVTSkpOwogICAgICAgcmVz dWx0X2NvZGU9IEhBX0FETUlOX0NPUlJVUFQ7CiAgICAgICBnb3RvIHNlbmRfcmVzdWx0OwpAQCAt NzE2MSw3ICs3MTU5LDcgQEAgZXJyOgogICAgIH0KICAgICBib29sIHNhdmVfYWJvcnRfb25fd2Fy bmluZz0gdGhkLT5hYm9ydF9vbl93YXJuaW5nOwogICAgIHRoZC0+YWJvcnRfb25fd2FybmluZz0g VFJVRTsKLSAgICBtYWtlX3RydW5jYXRlZF92YWx1ZV93YXJuaW5nKHRoZCwgTVlTUUxfRVJST1I6 OldBUk5fTEVWRUxfRVJST1IsCisgICAgbWFrZV90cnVuY2F0ZWRfdmFsdWVfd2FybmluZyh0aGQs IE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBmX3ZhbCwgc3RybGVuZ3RoKGZfdmFsKSwgdF90eXBlLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgYWx0ZXJfaW5mby0+ZGF0ZXRpbWVfZmllbGQtPmZpZWxkX25hbWUp OwogICAgIHRoZC0+YWJvcnRfb25fd2FybmluZz0gc2F2ZV9hYm9ydF9vbl93YXJuaW5nOwoKPT09 IG1vZGlmaWVkIGZpbGUgJ3NxbC9zcWxfdGFibGVzcGFjZS5jYycKLS0tIGEvc3FsL3NxbF90YWJs ZXNwYWNlLmNjCTIwMDgtMDYtMzAgMjA6MjE6NDEgKzAwMDAKKysrIGIvc3FsL3NxbF90YWJsZXNw YWNlLmNjCTIwMDgtMDctMTQgMTI6NDk6MTkgKzAwMDAKQEAgLTMxLDcgKzMxLDcgQEAgaW50IG15 c3FsX2FsdGVyX3RhYmxlc3BhY2UoVEhEICp0aGQsIHN0XwogICB7CiAgICAgaHRvbj0gaGFfZGVm YXVsdF9oYW5kbGVydG9uKHRoZCk7CiAgICAgaWYgKHRzX2luZm8tPnN0b3JhZ2VfZW5naW5lICE9 IDApCi0gICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVW RUxfRVJST1IsCisgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldB Uk5fTEVWRUxfV0FSTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgRVJfV0FSTl9VU0lOR19P VEhFUl9IQU5ETEVSLAogICAgICAgICAgICAgICAgICAgICAgICAgICBFUihFUl9XQVJOX1VTSU5H X09USEVSX0hBTkRMRVIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICBodG9uX25hbWUoaHRv biktPnN0ciwKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvc3FsX3lhY2MueXknCi0tLSBhL3NxbC9z cWxfeWFjYy55eQkyMDA4LTA4LTAxIDE1OjM4OjA1ICswMDAwCisrKyBiL3NxbC9zcWxfeWFjYy55 eQkyMDA4LTA4LTA3IDE4OjM3OjU1ICswMDAwCkBAIC0xMjg5NCw2ICsxMjg5NCw3IEBAIG9iamVj dF9wcml2aWxlZ2U6CiAgICAgICAgIHwgQ1JFQVRFIFVTRVIgICAgICAgICAgICAgeyBMZXgtPmdy YW50IHw9IENSRUFURV9VU0VSX0FDTDsgfQogICAgICAgICB8IEVWRU5UX1NZTSAgICAgICAgICAg ICAgIHsgTGV4LT5ncmFudCB8PSBFVkVOVF9BQ0w7fQogICAgICAgICB8IFRSSUdHRVJfU1lNICAg ICAgICAgICAgIHsgTGV4LT5ncmFudCB8PSBUUklHR0VSX0FDTDsgfQorICAgICAgICB8IENSRUFU RSBUQUJMRVNQQUNFICAgICAgIHsgTGV4LT5ncmFudCB8PSBDUkVBVEVfVEFCTEVTUEFDRV9BQ0w7 IH0KICAgICAgICAgOwogCiBvcHRfYW5kOgoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC90YWJsZS5j YycKLS0tIGEvc3FsL3RhYmxlLmNjCTIwMDgtMDctMjUgMTU6MTA6MTQgKzAwMDAKKysrIGIvc3Fs L3RhYmxlLmNjCTIwMDgtMDgtMDcgMDM6MDU6MzMgKzAwMDAKQEAgLTczNiw3ICs3MzYsOCBAQCBz dGF0aWMgaW50IG9wZW5fYmluYXJ5X2ZybShUSEQgKnRoZCwgVEFCCiAgICAgc2hhcmUtPnRyYW5z YWN0aW9uYWw9IChoYV9jaG9pY2UpIChoZWFkWzM5XSAmIDMpOwogICAgIHNoYXJlLT5wYWdlX2No ZWNrc3VtPSAoaGFfY2hvaWNlKSAoKGhlYWRbMzldID4+IDIpICYgMyk7CiAgICAgc2hhcmUtPnJv d190eXBlPSAocm93X3R5cGUpIGhlYWRbNDBdOwotICAgIHNoYXJlLT50YWJsZV9jaGFyc2V0PSBn ZXRfY2hhcnNldCgodWludCkgaGVhZFszOF0sTVlGKDApKTsKKyAgICBzaGFyZS0+dGFibGVfY2hh cnNldD0gZ2V0X2NoYXJzZXQoKCgodWludCkgaGVhZFs0MV0pIDw8IDgpICsgCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQpIGhlYWRbMzhdLE1ZRigwKSk7CiAg ICAgc2hhcmUtPm51bGxfZmllbGRfZmlyc3Q9IDE7CiAgIH0KICAgaWYgKCFzaGFyZS0+dGFibGVf Y2hhcnNldCkKQEAgLTEyNzMsMTIgKzEyNzQsMTMgQEAgc3RhdGljIGludCBvcGVuX2JpbmFyeV9m cm0oVEhEICp0aGQsIFRBQgogICAgICAgfQogICAgICAgZWxzZQogICAgICAgewotICAgICAgICBp ZiAoIXN0cnBvc1sxNF0pCisgICAgICAgIHVpbnQgY3NpZD0gc3RycG9zWzE0XSArICgoKHVpbnQp IHN0cnBvc1sxMV0pIDw8IDgpOworICAgICAgICBpZiAoIWNzaWQpCiAgICAgICAgICAgY2hhcnNl dD0gJm15X2NoYXJzZXRfYmluOwotICAgICAgICBlbHNlIGlmICghKGNoYXJzZXQ9Z2V0X2NoYXJz ZXQoKHVpbnQpIHN0cnBvc1sxNF0sIE1ZRigwKSkpKQorICAgICAgICBlbHNlIGlmICghKGNoYXJz ZXQ9IGdldF9jaGFyc2V0KGNzaWQsIE1ZRigwKSkpKQogICAgICAgICB7CiAgICAgICAgICAgZXJy b3I9IDU7IC8vIFVua25vd24gb3IgdW5hdmFpbGFibGUgY2hhcnNldAotICAgICAgICAgIGVycmFy Zz0gKGludCkgc3RycG9zWzE0XTsKKyAgICAgICAgICBlcnJhcmc9IChpbnQpIGNzaWQ7CiAgICAg ICAgICAgZ290byBlcnI7CiAgICAgICAgIH0KICAgICAgIH0KQEAgLTEzNTEsNyArMTM1Myw3IEBA IHN0YXRpYyBpbnQgb3Blbl9iaW5hcnlfZnJtKFRIRCAqdGhkLCBUQUIKICAgICAgICAgICAgICAg ICAgICAgICAiUGxlYXNlIGRvIFwiQUxURVIgVEFCTEUgJyVzJyBGT1JDRVwiIHRvIGZpeCBpdCEi LAogICAgICAgICAgICAgICAgICAgICAgIHNoYXJlLT5maWVsZG5hbWVzLnR5cGVfbmFtZXNbaV0s IHNoYXJlLT50YWJsZV9uYW1lLnN0ciwKICAgICAgICAgICAgICAgICAgICAgICBzaGFyZS0+dGFi bGVfbmFtZS5zdHIpOwotICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FMX0VSUk9S OjpXQVJOX0xFVkVMX0VSUk9SLAorICAgICAgcHVzaF93YXJuaW5nX3ByaW50Zih0aGQsIE1ZU1FM X0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIEVSX0NS QVNIRURfT05fVVNBR0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJGb3VuZCBpbmNvbXBh dGlibGUgREVDSU1BTCBmaWVsZCAnJXMnIGluICVzOyAiCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICJQbGVhc2UgZG8gXCJBTFRFUiBUQUJMRSAnJXMnIEZPUkNFXCIgdG8gZml4IGl0ISIsCkBA IC0xNTU0LDcgKzE1NTYsNyBAQCBzdGF0aWMgaW50IG9wZW5fYmluYXJ5X2ZybShUSEQgKnRoZCwg VEFCCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBsZWFzZSBkbyBcIkFMVEVSIFRBQkxF ICclcycgRk9SQ0UgXCIgdG8gZml4IGl0ISIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c2hhcmUtPnRhYmxlX25hbWUuc3RyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYXJl LT50YWJsZV9uYW1lLnN0cik7Ci0gICAgICAgICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRoZCwg TVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgICAgICAgICBwdXNoX3dhcm5pbmdf cHJpbnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgRVJfQ1JBU0hFRF9PTl9VU0FHRSwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIkZvdW5kIHdyb25nIGtleSBkZWZpbml0aW9uIGluICVzOyAiCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQbGVhc2UgZG8gXCJBTFRFUiBUQUJMRSAnJXMn IEZPUkNFXCIgdG8gZml4ICIKQEAgLTI1NzAsOCArMjU3Miw3IEBAIEZpbGUgY3JlYXRlX2ZybShU SEQgKnRoZCwgY29uc3QgY2hhciAqbmEKIAogICBpZiAoKGZpbGU9IG15X2NyZWF0ZShuYW1lLCBD UkVBVEVfTU9ERSwgY3JlYXRlX2ZsYWdzLCBNWUYoMCkpKSA+PSAwKQogICB7Ci0gICAgdWludCBr ZXlfbGVuZ3RoLCB0bXBfa2V5X2xlbmd0aDsKLSAgICB1aW50IHRtcDsKKyAgICB1aW50IGtleV9s ZW5ndGgsIHRtcF9rZXlfbGVuZ3RoLCB0bXAsIGNzaWQ7CiAgICAgYnplcm8oKGNoYXIqKSBmaWxl aW5mbyw2NCk7CiAgICAgLyogaGVhZGVyICovCiAgICAgZmlsZWluZm9bMF09KHVjaGFyKSAyNTQ7 CkBAIC0yNjIwLDEzICsyNjIxLDE0IEBAIEZpbGUgY3JlYXRlX2ZybShUSEQgKnRoZCwgY29uc3Qg Y2hhciAqbmEKICAgICBmaWxlaW5mb1szMl09MDsJCQkJLy8gTm8gZmlsZW5hbWUgYW55bW9yZQog ICAgIGZpbGVpbmZvWzMzXT01OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWFyayBm b3IgNS4wIGZybSBmaWxlCiAgICAgaW50NHN0b3JlKGZpbGVpbmZvKzM0LGNyZWF0ZV9pbmZvLT5h dmdfcm93X2xlbmd0aCk7Ci0gICAgZmlsZWluZm9bMzhdPSAoY3JlYXRlX2luZm8tPmRlZmF1bHRf dGFibGVfY2hhcnNldCA/Ci0JCSAgIGNyZWF0ZV9pbmZvLT5kZWZhdWx0X3RhYmxlX2NoYXJzZXQt Pm51bWJlciA6IDApOworICAgIGNzaWQ9IChjcmVhdGVfaW5mby0+ZGVmYXVsdF90YWJsZV9jaGFy c2V0ID8KKyAgICAgICAgICAgY3JlYXRlX2luZm8tPmRlZmF1bHRfdGFibGVfY2hhcnNldC0+bnVt YmVyIDogMCk7CisgICAgZmlsZWluZm9bMzhdPSAodWNoYXIpIGNzaWQ7CiAgICAgZmlsZWluZm9b MzldPSAodWNoYXIpICgodWludCkgY3JlYXRlX2luZm8tPnRyYW5zYWN0aW9uYWwgfAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgKCh1aW50KSBjcmVhdGVfaW5mby0+cGFnZV9jaGVja3N1bSA8 PCAyKSk7CiAgICAgZmlsZWluZm9bNDBdPSAodWNoYXIpIGNyZWF0ZV9pbmZvLT5yb3dfdHlwZTsK ICAgICAvKiBOZXh0IGZldyBieXRlcyB3aGVyZSBmb3IgUkFJRCBzdXBwb3J0ICovCi0gICAgZmls ZWluZm9bNDFdPSAwOworICAgIGZpbGVpbmZvWzQxXT0gKHVjaGFyKSAoY3NpZCA+PiA4KTsKICAg ICBmaWxlaW5mb1s0Ml09IDA7CiAgICAgZmlsZWluZm9bNDNdPSAwOwogICAgIGZpbGVpbmZvWzQ0 XT0gMDsKQEAgLTM1MTksNyArMzUyMSw3IEBAIGludCBUQUJMRV9MSVNUOjp2aWV3X2NoZWNrX29w dGlvbihUSEQgKnQKICAgICBUQUJMRV9MSVNUICptYWluX3ZpZXc9IHRvcF90YWJsZSgpOwogICAg IGlmIChpZ25vcmVfZmFpbHVyZSkKICAgICB7Ci0gICAgICBwdXNoX3dhcm5pbmdfcHJpbnRmKHRo ZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfRVJST1IsCisgICAgICBwdXNoX3dhcm5pbmdfcHJp bnRmKHRoZCwgTVlTUUxfRVJST1I6OldBUk5fTEVWRUxfV0FSTiwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgRVJfVklFV19DSEVDS19GQUlMRUQsIEVSKEVSX1ZJRVdfQ0hFQ0tfRkFJTEVEKSwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbl92aWV3LT52aWV3X2RiLnN0ciwgbWFpbl92 aWV3LT52aWV3X25hbWUuc3RyKTsKICAgICAgIHJldHVybihWSUVXX0NIRUNLX1NLSVApOwoKPT09 IG1vZGlmaWVkIGZpbGUgJ3NxbC91bmlyZWcuY2MnCi0tLSBhL3NxbC91bmlyZWcuY2MJMjAwOC0w NS0yOSAxNTo0NDoxMSArMDAwMAorKysgYi9zcWwvdW5pcmVnLmNjCTIwMDgtMDctMjQgMTE6MzM6 MzUgKzAwMDAKQEAgLTg3NCwyMCArODc0LDI3IEBAIHN0YXRpYyBib29sIHBhY2tfZmllbGRzKEZp bGUgZmlsZSwgTGlzdDwKICAgICByZWNwb3M9IGZpZWxkLT5vZmZzZXQrMSArICh1aW50KSBkYXRh X29mZnNldDsKICAgICBpbnQzc3RvcmUoYnVmZis1LHJlY3Bvcyk7CiAgICAgaW50MnN0b3JlKGJ1 ZmYrOCxmaWVsZC0+cGFja19mbGFnKTsKLSAgICBpbnQyc3RvcmUoYnVmZisxMCxmaWVsZC0+dW5p cmVnX2NoZWNrKTsKKyAgICBEQlVHX0FTU0VSVChmaWVsZC0+dW5pcmVnX2NoZWNrIDwgMjU2KTsK KyAgICBidWZmWzEwXT0gKHVjaGFyKSBmaWVsZC0+dW5pcmVnX2NoZWNrOwogICAgIGJ1ZmZbMTJd PSAodWNoYXIpIGZpZWxkLT5pbnRlcnZhbF9pZDsKICAgICBidWZmWzEzXT0gKHVjaGFyKSBmaWVs ZC0+c3FsX3R5cGU7IAogICAgIGlmIChmaWVsZC0+c3FsX3R5cGUgPT0gTVlTUUxfVFlQRV9HRU9N RVRSWSkKICAgICB7CisgICAgICBidWZmWzExXT0gMDsKICAgICAgIGJ1ZmZbMTRdPSAodWNoYXIp IGZpZWxkLT5nZW9tX3R5cGU7CiAjaWZuZGVmIEhBVkVfU1BBVElBTAogICAgICAgREJVR19BU1NF UlQoMCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2hvdWxkIG5ld2VyIGhhcHBlbgog I2VuZGlmCiAgICAgfQogICAgIGVsc2UgaWYgKGZpZWxkLT5jaGFyc2V0KSAKKyAgICB7CisgICAg ICBidWZmWzExXT0gKHVjaGFyKSAoZmllbGQtPmNoYXJzZXQtPm51bWJlciA+PiA4KTsKICAgICAg IGJ1ZmZbMTRdPSAodWNoYXIpIGZpZWxkLT5jaGFyc2V0LT5udW1iZXI7CisgICAgfQogICAgIGVs c2UKLSAgICAgIGJ1ZmZbMTRdPSAwOwkJCQkvLyBOdW1lcmljYWwKKyAgICB7CisgICAgICBidWZm WzExXT0gYnVmZlsxNF09IDA7CQkJLy8gTnVtZXJpY2FsCisgICAgfQogICAgIGludDJzdG9yZShi dWZmKzE1LCBmaWVsZC0+Y29tbWVudC5sZW5ndGgpOwogICAgIGNvbW1lbnRfbGVuZ3RoKz0gZmll bGQtPmNvbW1lbnQubGVuZ3RoOwogICAgIHNldF9pZl9iaWdnZXIoaW50X2NvdW50LGZpZWxkLT5p bnRlcnZhbF9pZCk7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9teWlzYW0vZnRfc3RhdGlj LmMnCi0tLSBhL3N0b3JhZ2UvbXlpc2FtL2Z0X3N0YXRpYy5jCTIwMDgtMDQtMjggMTY6MjQ6MDUg KzAwMDAKKysrIGIvc3RvcmFnZS9teWlzYW0vZnRfc3RhdGljLmMJMjAwOC0wNy0yNCAxMTozMzoz NSArMDAwMApAQCAtMzAsOCArMzAsOCBAQCBjb25zdCBIQV9LRVlTRUcgZnRfa2V5c2Vnc1tGVF9T RUdTXT17CiAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv KiBCaXQgcG9zICovCiAgIEhBX1ZBUl9MRU5HVEhfUEFSVCB8IEhBX1BBQ0tfS0VZLCAgICAgICAg ICAgICAvKiBmbGFnICovCiAgIEhBX0ZUX01BWEJZVEVMRU4sICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAvKiBsZW5ndGggKi8KLSAgSEFfS0VZVFlQRV9WQVJURVhUMiwgICAgICAgICAgICAg ICAgICAgICAgICAgIC8qIHR5cGUgKi8KICAgNjMsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIGxhbmd1YWdlICh3aWxsIGJlIG92ZXJ3cml0dGVuKSAqLworICBI QV9LRVlUWVBFX1ZBUlRFWFQyLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHlwZSAqLwog ICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbnVsbF9i aXQgKi8KICAgMiwgMCwgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q IGJpdF9zdGFydCwgYml0X2VuZCwgYml0X2xlbmd0aCAqLwogfSwKQEAgLTQxLDcgKzQxLDcgQEAg Y29uc3QgSEFfS0VZU0VHIGZ0X2tleXNlZ3NbRlRfU0VHU109ewogICAgICAgYmUgcGFja2VkIGlu IGFueSB3YXksIG90aGVyd2lzZSB3X3NlYXJjaCgpIHdvbid0IGJlIGFibGUgdG8KICAgICAgIHVw ZGF0ZSBrZXkgZW50cnkgJ2luIHZpdm8nCiAgICAgKi8KLSAgMCwgMCwgMCwgMCwgSEFfTk9fU09S VCwgSEFfRlRfV0xFTiwgSEFfRlRfV1RZUEUsIDYzLCAwLCAwLCAwLCAwCisgIDAsIDAsIDAsIDAs IEhBX05PX1NPUlQsIEhBX0ZUX1dMRU4sIDYzLCBIQV9GVF9XVFlQRSwgMCwgMCwgMCwgMAogfQog fTsKIAoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvbXlpc2FtL21pX29wZW4uYycKLS0tIGEv c3RvcmFnZS9teWlzYW0vbWlfb3Blbi5jCTIwMDgtMDctMDkgMDc6MTI6NDMgKzAwMDAKKysrIGIv c3RvcmFnZS9teWlzYW0vbWlfb3Blbi5jCTIwMDgtMDctMjQgMTE6MzM6MzUgKzAwMDAKQEAgLTEx OTQsMTAgKzExOTQsMTAgQEAgaW50IG1pX2tleXNlZ193cml0ZShGaWxlIGZpbGUsIGNvbnN0IEhB XwogICB1bG9uZyBwb3M7CiAKICAgKnB0cisrPSBrZXlzZWctPnR5cGU7Ci0gICpwdHIrKz0ga2V5 c2VnLT5sYW5ndWFnZTsKKyAgKnB0cisrPSBrZXlzZWctPmxhbmd1YWdlICYgMHhGRjsgLyogQ29s bGF0aW9uIElELCBsb3cgYnl0ZSAqLwogICAqcHRyKys9IGtleXNlZy0+bnVsbF9iaXQ7CiAgICpw dHIrKz0ga2V5c2VnLT5iaXRfc3RhcnQ7Ci0gICpwdHIrKz0ga2V5c2VnLT5iaXRfZW5kOworICAq cHRyKys9IGtleXNlZy0+bGFuZ3VhZ2UgPj4gODsgLyogQ29sbGF0aW9uIElELCBoaWdoIGJ5dGUg Ki8KICAgKnB0cisrPSBrZXlzZWctPmJpdF9sZW5ndGg7CiAgIG1pX2ludDJzdG9yZShwdHIsa2V5 c2VnLT5mbGFnKTsJcHRyKz0yOwogICBtaV9pbnQyc3RvcmUocHRyLGtleXNlZy0+bGVuZ3RoKTsJ cHRyKz0yOwpAQCAtMTIxNiwxMiArMTIxNiwxMyBAQCB1Y2hhciAqbWlfa2V5c2VnX3JlYWQodWNo YXIgKnB0ciwgSEFfS0VZCiAgICBrZXlzZWctPmxhbmd1YWdlCT0gKnB0cisrOwogICAga2V5c2Vn LT5udWxsX2JpdAk9ICpwdHIrKzsKICAgIGtleXNlZy0+Yml0X3N0YXJ0CT0gKnB0cisrOwotICAg a2V5c2VnLT5iaXRfZW5kCT0gKnB0cisrOworICAga2V5c2VnLT5sYW5ndWFnZQkrPSAoKHVpbnQx NikgKCpwdHIrKykpIDw8IDg7CiAgICBrZXlzZWctPmJpdF9sZW5ndGggICA9ICpwdHIrKzsKICAg IGtleXNlZy0+ZmxhZwkJPSBtaV91aW50MmtvcnIocHRyKTsgIHB0ciArPTI7CiAgICBrZXlzZWct Pmxlbmd0aAk9IG1pX3VpbnQya29ycihwdHIpOyAgcHRyICs9MjsKICAgIGtleXNlZy0+c3RhcnQJ PSBtaV91aW50NGtvcnIocHRyKTsgIHB0ciArPTQ7CiAgICBrZXlzZWctPm51bGxfcG9zCT0gbWlf dWludDRrb3JyKHB0cik7ICBwdHIgKz00OworICAga2V5c2VnLT5iaXRfZW5kPSAwOwogICAga2V5 c2VnLT5jaGFyc2V0PTA7CQkJCS8qIFdpbGwgYmUgZmlsbGVkIGluIGxhdGVyICovCiAgICBpZiAo a2V5c2VnLT5udWxsX2JpdCkKICAgICAga2V5c2VnLT5iaXRfcG9zPSAodWludDE2KShrZXlzZWct Pm51bGxfcG9zICsgKGtleXNlZy0+bnVsbF9iaXQgPT0gNykpOwoKPT09IG1vZGlmaWVkIGZpbGUg J3N0b3JhZ2UvbXlpc2FtbXJnL2hhX215aXNhbW1yZy5jYycKLS0tIGEvc3RvcmFnZS9teWlzYW1t cmcvaGFfbXlpc2FtbXJnLmNjCTIwMDgtMDctMDkgMDc6MTI6NDMgKzAwMDAKKysrIGIvc3RvcmFn ZS9teWlzYW1tcmcvaGFfbXlpc2FtbXJnLmNjCTIwMDgtMDctMjQgMTA6MDA6NTYgKzAwMDAKQEAg LTE1Myw3ICsxNTMsNyBAQCBleHRlcm4gIkMiIHZvaWQgbXlyZ19wcmludF93cm9uZ190YWJsZShj CiAgIGJ1ZltkYi5sZW5ndGhdPSAnLic7CiAgIG1lbWNweShidWYgKyBkYi5sZW5ndGggKyAxLCBu YW1lLnN0ciwgbmFtZS5sZW5ndGgpOwogICBidWZbZGIubGVuZ3RoICsgbmFtZS5sZW5ndGggKyAx XT0gMDsKLSAgcHVzaF93YXJuaW5nX3ByaW50ZihjdXJyZW50X3RoZCwgTVlTUUxfRVJST1I6OldB Uk5fTEVWRUxfRVJST1IsCisgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FM X0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCiAgICAgICAgICAgICAgICAgICAgICAgRVJfQURNSU5f V1JPTkdfTVJHX1RBQkxFLCBFUihFUl9BRE1JTl9XUk9OR19NUkdfVEFCTEUpLAogICAgICAgICAg ICAgICAgICAgICAgIGJ1Zik7CiB9Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RyaW5ncy9jb25mX3Rv X3NyYy5jJwotLS0gYS9zdHJpbmdzL2NvbmZfdG9fc3JjLmMJMjAwNy0wOC0yNCAyMzoyNTo1MCAr MDAwMAorKysgYi9zdHJpbmdzL2NvbmZfdG9fc3JjLmMJMjAwOC0wNy0yNCAxMTozMzozNSArMDAw MApAQCAtMjMsNyArMjMsNyBAQAogI2RlZmluZSBST1cxNl9MRU4JOAogI2RlZmluZSBNQVhfQlVG CQk2NCoxMDI0CiAKLXN0YXRpYyBDSEFSU0VUX0lORk8gYWxsX2NoYXJzZXRzWzI1Nl07CitzdGF0 aWMgQ0hBUlNFVF9JTkZPIGFsbF9jaGFyc2V0c1s1MTJdOwogCiAKIHZvaWQKQEAgLTYzLDcgKzYz LDkgQEAgcHJpbnRfYXJyYXkxNihGSUxFICpmLCBjb25zdCBjaGFyICpzZXQsIAogc3RhdGljIGlu dCBnZXRfY2hhcnNldF9udW1iZXIoY29uc3QgY2hhciAqY2hhcnNldF9uYW1lKQogewogICBDSEFS U0VUX0lORk8gKmNzOwotICBmb3IgKGNzPSBhbGxfY2hhcnNldHM7IGNzIDwgYWxsX2NoYXJzZXRz KzI1NTsgKytjcykKKyAgZm9yIChjcz0gYWxsX2NoYXJzZXRzOworICAgICAgIGNzIDwgYWxsX2No YXJzZXRzICsgYXJyYXlfZWxlbWVudHMoYWxsX2NoYXJzZXRzKTsKKyAgICAgICBjcysrKQogICB7 CiAgICAgaWYgKCBjcy0+bmFtZSAmJiAhc3RyY21wKGNzLT5uYW1lLCBjaGFyc2V0X25hbWUpKQog ICAgICAgcmV0dXJuIGNzLT5udW1iZXI7CkBAIC0yOTAsNyArMjkyLDkgQEAgbWFpbihpbnQgYXJn YywgY2hhciAqKmFyZ3YgIF9fYXR0cmlidXRlXwogICBzcHJpbnRmKGZpbGVuYW1lLCIlcy8lcyIs YXJndlsxXSwiSW5kZXgueG1sIik7CiAgIG15X3JlYWRfY2hhcnNldF9maWxlKGZpbGVuYW1lKTsK ICAgCi0gIGZvciAoY3M9YWxsX2NoYXJzZXRzOyBjcyA8IGFsbF9jaGFyc2V0cysyNTY7IGNzKysp CisgIGZvciAoY3M9IGFsbF9jaGFyc2V0czsKKyAgICAgICBjcyA8IGFsbF9jaGFyc2V0cyArIGFy cmF5X2VsZW1lbnRzKGFsbF9jaGFyc2V0cyk7CisgICAgICAgY3MrKykKICAgewogICAgIGlmIChj cy0+bnVtYmVyICYmICEoY3MtPnN0YXRlICYgTVlfQ1NfQ09NUElMRUQpKQogICAgIHsKQEAgLTMx NSw3ICszMTksOSBAQCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndiAgX19hdHRyaWJ1dGVfCiAg IGZwcmludGYoZiwiI2luY2x1ZGUgPG1fY3R5cGUuaD5cblxuIik7CiAgIAogICAKLSAgZm9yIChj cz1hbGxfY2hhcnNldHM7IGNzIDwgYWxsX2NoYXJzZXRzKzI1NjsgY3MrKykKKyAgZm9yIChjcz0g YWxsX2NoYXJzZXRzOworICAgICAgIGNzIDwgYWxsX2NoYXJzZXRzICsgYXJyYXlfZWxlbWVudHMo YWxsX2NoYXJzZXRzKTsKKyAgICAgICBjcysrKQogICB7CiAgICAgaWYgKHNpbXBsZV9jc19pc19m dWxsKGNzKSkKICAgICB7CkBAIC0zMzIsNyArMzM4LDkgQEAgbWFpbihpbnQgYXJnYywgY2hhciAq KmFyZ3YgIF9fYXR0cmlidXRlXwogICB9CiAgIAogICBmcHJpbnRmKGYsIkNIQVJTRVRfSU5GTyBj b21waWxlZF9jaGFyc2V0c1tdID0ge1xuIik7Ci0gIGZvciAoY3M9YWxsX2NoYXJzZXRzOyBjcyA8 IGFsbF9jaGFyc2V0cysyNTY7IGNzKyspCisgIGZvciAoY3M9IGFsbF9jaGFyc2V0czsKKyAgICAg ICBjcyA8IGFsbF9jaGFyc2V0cyArIGFycmF5X2VsZW1lbnRzKGFsbF9jaGFyc2V0cyk7CisgICAg ICAgY3MrKykKICAgewogICAgIGlmIChzaW1wbGVfY3NfaXNfZnVsbChjcykpCiAgICAgewoKPT09 IG1vZGlmaWVkIGZpbGUgJ3Rlc3RzL215c3FsX2NsaWVudF90ZXN0LmMnCi0tLSBhL3Rlc3RzL215 c3FsX2NsaWVudF90ZXN0LmMJMjAwOC0wNi0yOCAxMTowMDo1OSArMDAwMAorKysgYi90ZXN0cy9t eXNxbF9jbGllbnRfdGVzdC5jCTIwMDgtMDctMjYgMTY6Mzg6MjAgKzAwMDAKQEAgLTE3ODI4LDYg KzE3ODI4LDU5IEBAIHN0YXRpYyB2b2lkIHRlc3RfYnVnMzYwMDQoKQogICBEQlVHX1ZPSURfUkVU VVJOOwogfQogCisvKioKKyAgVGVzdCB0aGF0IENPTV9SRUZSRVNIIGlzc3VlcyBhIGltcGxpY2l0 IGNvbW1pdC4KKyovCisKK3N0YXRpYyB2b2lkIHRlc3Rfd2w0Mjg0XzEoKQoreworICBpbnQgcmM7 CisgIE1ZU1FMX1JPVyByb3c7CisgIE1ZU1FMX1JFUyAqcmVzdWx0OworCisgIERCVUdfRU5URVIo InRlc3Rfd2w0Mjg0XzEiKTsKKyAgbXloZWFkZXIoInRlc3Rfd2w0Mjg0XzEiKTsKKworICAvKiBz ZXQgQVVUT0NPTU1JVCB0byBPRkYgKi8KKyAgcmM9IG15c3FsX2F1dG9jb21taXQobXlzcWwsIEZB TFNFKTsKKyAgbXlxdWVyeShyYyk7CisKKyAgcmM9IG15c3FsX3F1ZXJ5KG15c3FsLCAiRFJPUCBU QUJMRSBJRiBFWElTVFMgdHJhbnMiKTsKKyAgbXlxdWVyeShyYyk7CisKKyAgcmM9IG15c3FsX3F1 ZXJ5KG15c3FsLCAiQ1JFQVRFIFRBQkxFIHRyYW5zIChhIElOVCkgRU5HSU5FPSBJbm5vREIiKTsK KyAgbXlxdWVyeShyYyk7CisKKyAgcmM9IG15c3FsX3F1ZXJ5KG15c3FsLCAiSU5TRVJUIElOVE8g dHJhbnMgVkFMVUVTKDEpIik7CisgIG15cXVlcnkocmMpOworCisgIHJjPSBteXNxbF9yZWZyZXNo KG15c3FsLCBSRUZSRVNIX0dSQU5UIHwgUkVGUkVTSF9UQUJMRVMpOworICBteXF1ZXJ5KHJjKTsK KworICByYz0gbXlzcWxfcm9sbGJhY2sobXlzcWwpOworICBteXF1ZXJ5KHJjKTsKKworICByYz0g bXlzcWxfcXVlcnkobXlzcWwsICJTRUxFQ1QgKiBGUk9NIHRyYW5zIik7CisgIG15cXVlcnkocmMp OworCisgIHJlc3VsdD0gbXlzcWxfdXNlX3Jlc3VsdChteXNxbCk7CisgIG15dGVzdChyZXN1bHQp OworCisgIHJvdz0gbXlzcWxfZmV0Y2hfcm93KHJlc3VsdCk7CisgIG15dGVzdChyb3cpOworCisg IG15c3FsX2ZyZWVfcmVzdWx0KHJlc3VsdCk7CisKKyAgLyogc2V0IEFVVE9DT01NSVQgdG8gT0ZG ICovCisgIHJjPSBteXNxbF9hdXRvY29tbWl0KG15c3FsLCBGQUxTRSk7CisgIG15cXVlcnkocmMp OworCisgIHJjPSBteXNxbF9xdWVyeShteXNxbCwgIkRST1AgVEFCTEUgdHJhbnMiKTsKKyAgbXlx dWVyeShyYyk7CisKKyAgREJVR19WT0lEX1JFVFVSTjsKK30KKwogLyoKICAgUmVhZCBhbmQgcGFy c2UgYXJndW1lbnRzIGFuZCBNeVNRTCBvcHRpb25zIGZyb20gbXkuY25mCiAqLwpAQCAtMTgxMzks NiArMTgxOTIsNyBAQCBzdGF0aWMgc3RydWN0IG15X3Rlc3RzX3N0IG15X3Rlc3RzW109IHsKICAg eyAidGVzdF93bDQxNjZfMyIsIHRlc3Rfd2w0MTY2XzMgfSwKICAgeyAidGVzdF93bDQxNjZfNCIs IHRlc3Rfd2w0MTY2XzQgfSwKICAgeyAidGVzdF9idWczNjAwNCIsIHRlc3RfYnVnMzYwMDQgfSwK KyAgeyAidGVzdF93bDQyODRfMSIsIHRlc3Rfd2w0Mjg0XzEgfSwKICAgeyAwLCAwIH0KIH07CiAK Cg==