From: Date: March 9 2009 9:42am Subject: bzr commit into mysql-5.1-bugteam branch (zhenxing.he:2837) Bug#37416 Bug#39843 Bug#40363 Bug#40657 Bug#41305 Bug#41465 Bug#42790 List-Archive: http://lists.mysql.com/commits/68591 X-Bug: 37416,39843,40363,40657,41305,41465,42790 Message-Id: <200903090842.n298ggdM018688@hezx-dev.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 I0F0IGZpbGU6Ly8vbWVkaWEvc2RiMi9oZXp4L3dvcmsvbXlzcWwvYnpyd29yay9iMjIwODIvNS4x LWJ1Z3RlYW0vCgogMjgzNyBIZSBaaGVueGluZwkyMDA5LTAzLTA5IFttZXJnZV0KICAgICAgQXV0 byBtZXJnZQptb2RpZmllZDoKICBteXNxbC10ZXN0L3IvbG9jay5yZXN1bHQKICBteXNxbC10ZXN0 L3IvbWVyZ2UucmVzdWx0CiAgbXlzcWwtdGVzdC9yL3BzLnJlc3VsdAogIG15c3FsLXRlc3Qvci9z dHJpY3QucmVzdWx0CiAgbXlzcWwtdGVzdC9yL3ZhcmlhYmxlcy5yZXN1bHQKICBteXNxbC10ZXN0 L3N1aXRlL3N5c192YXJzL3IvYXV0b19pbmNyZW1lbnRfaW5jcmVtZW50X2Jhc2ljLnJlc3VsdAog IG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9hdXRvX2luY3JlbWVudF9pbmNyZW1lbnRfZnVu Yy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvYXV0b19pbmNyZW1lbnRfb2Zm c2V0X2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9hdXRvX2luY3Jl bWVudF9vZmZzZXRfZnVuYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvY29u Y3VycmVudF9pbnNlcnRfYmFzaWMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9y L2Nvbm5lY3RfdGltZW91dF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJz L3IvZGVmYXVsdF93ZWVrX2Zvcm1hdF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5 c192YXJzL3IvZGVsYXllZF9pbnNlcnRfdGltZW91dF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0 L3N1aXRlL3N5c192YXJzL3IvZGl2X3ByZWNpc2lvbl9pbmNyZW1lbnRfYmFzaWMucmVzdWx0CiAg bXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2V4cGlyZV9sb2dzX2RheXNfYmFzaWMucmVzdWx0 CiAgbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2dyb3VwX2NvbmNhdF9tYXhfbGVuX2Jhc2lj LnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9pbnRlcmFjdGl2ZV90aW1lb3V0 X2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfYWxsb3dlZF9w YWNrZXRfYmFzaWMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL21heF9iaW5s b2dfc2l6ZV9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbWF4X2Nv bm5lY3Rpb25zX2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhf ZGVsYXllZF90aHJlYWRzX2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9tYXhfZXJyb3JfY291bnRfYmFzaWMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFy cy9yL21heF9pbnNlcnRfZGVsYXllZF90aHJlYWRzX2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qv c3VpdGUvc3lzX3ZhcnMvci9tYXhfbGVuZ3RoX2Zvcl9zb3J0X2RhdGFfYmFzaWMucmVzdWx0CiAg bXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL21heF9wcmVwYXJlZF9zdG10X2NvdW50X2Jhc2lj LnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfcmVsYXlfbG9nX3NpemVf YmFzaWMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL21heF9zb3J0X2xlbmd0 aF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbWF4X3NwX3JlY3Vy c2lvbl9kZXB0aF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbXlp c2FtX2RhdGFfcG9pbnRlcl9zaXplX2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lz X3ZhcnMvci9uZXRfYnVmZmVyX2xlbmd0aF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRl L3N5c192YXJzL3IvbmV0X3JlYWRfdGltZW91dF9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1 aXRlL3N5c192YXJzL3IvbmV0X3dyaXRlX3RpbWVvdXRfYmFzaWMucmVzdWx0CiAgbXlzcWwtdGVz dC9zdWl0ZS9zeXNfdmFycy9yL29wdGltaXplcl9wcnVuZV9sZXZlbF9iYXNpYy5yZXN1bHQKICBt eXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Ivb3B0aW1pemVyX3NlYXJjaF9kZXB0aF9iYXNpYy5y ZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvcHJlbG9hZF9idWZmZXJfc2l6ZV9i YXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvcmVhZF9idWZmZXJfc2l6 ZV9iYXNpYy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvcmVhZF9ybmRfYnVm ZmVyX3NpemVfYmFzaWMucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3NsYXZl X25ldF90aW1lb3V0X2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9z bG93X2xhdW5jaF90aW1lX2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci90YWJsZV9kZWZpbml0aW9uX2NhY2hlX2Jhc2ljLnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUv c3lzX3ZhcnMvci90YWJsZV9sb2NrX3dhaXRfdGltZW91dF9iYXNpYy5yZXN1bHQKICBteXNxbC10 ZXN0L3N1aXRlL3N5c192YXJzL3IvdGFibGVfb3Blbl9jYWNoZV9iYXNpYy5yZXN1bHQKICBteXNx bC10ZXN0L3QvbG9jay50ZXN0CiAgbXlzcWwtdGVzdC90L21lcmdlLnRlc3QKICBteXNxbC10ZXN0 L3Qvc3RyaWN0LnRlc3QKICBteXNxbC10ZXN0L3QvdmFyaWFibGVzLnRlc3QKICBzcWwvbG9nLmNj CiAgc3FsL215c3FsZC5jYwogIHNxbC9zZXRfdmFyLmNjCiAgc3FsL3NoYXJlL2Vycm1zZy50eHQK ICBzcWwvc3FsX2NhY2hlLmNjCiAgc3FsL3NxbF9sZXguY2MKICBzcWwvc3FsX2xleC5oCiAgc3Fs L3NxbF9wYXJzZS5jYwogIHNxbC9zcWxfeWFjYy55eQogIHNxbC91bmlyZWcuY2MKICBzdG9yYWdl L215aXNhbW1yZy9oYV9teWlzYW1tcmcuY2MKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0 L3IvbG9jay5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9sb2NrLnJlc3VsdAkyMDA3LTA4LTAy IDA5OjU5OjAyICswMDAwCisrKyBiL215c3FsLXRlc3Qvci9sb2NrLnJlc3VsdAkyMDA5LTAzLTA1 IDE0OjIyOjMzICswMDAwCkBAIC0xNjYsNCArMTY2LDMxIEBAIEVSUk9SIEhZMDAwOiBWaWV3J3Mg U0VMRUNUIHJlZmVycyB0byBhIHQKIENsZWFudXAuCiAKIGRyb3AgdGFibGUgdDIsIHQzOworIwor IyBCdWcjMzk4NDMgREVMRVRFIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byB0YWJsZSBpbiBzdWJx dWVyeSBpbiB3aGVyZSBjbGF1c2UKKyMKK0RST1AgVEFCTEUgSUYgRVhJU1RTIHQxLHQyOworQ1JF QVRFIFRBQkxFIHQxICgKK3RhYmxlMV9yb3dpZCBTTUFMTElOVCBOT1QgTlVMTAorKTsKK0NSRUFU RSBUQUJMRSB0MiAoCit0YWJsZTJfcm93aWQgU01BTExJTlQgTk9UIE5VTEwKKyk7CitJTlNFUlQg SU5UTyB0MSBWQUxVRVMgKDEpOworSU5TRVJUIElOVE8gdDIgVkFMVUVTICgxKTsKK0xPQ0sgVEFC TEVTIHQxIFdSSVRFLCB0MiBSRUFEOworIyBTdWItc2VsZWN0IHNob3VsZCBub3QgdHJ5IHRvIGFx dWlyZSBhIHdyaXRlIGxvY2suCitERUxFVEUgRlJPTSB0MSAKK1dIRVJFIEVYSVNUUyAKKyggCitT RUxFQ1QgJ3gnIAorRlJPTSB0MgorV0hFUkUgdDEudGFibGUxX3Jvd2lkID0gdDIudGFibGUyX3Jv d2lkCispIDsKKyMgV2hpbGUgaW1wbGVtZW50aW5nIHRoZSBwYXRjaCB3ZSBkaWRuJ3QgYnJlYWsg b2xkIGJlaGF2aW9yOworIyBUaGUgZm9sbG93aW5nIHN1Yi1zZWxlY3Qgc2hvdWxkIHN0aWxsIHJl cXVpcmVzIGEgd3JpdGUgbG9jazoKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgMSBJTiAoU0VMRUNU ICogRlJPTSB0MiBGT1IgVVBEQVRFKTsKK0VSUk9SIEhZMDAwOiBUYWJsZSAndDInIHdhcyBsb2Nr ZWQgd2l0aCBhIFJFQUQgbG9jayBhbmQgY2FuJ3QgYmUgdXBkYXRlZAorVU5MT0NLIFRBQkxFUzsK K0RST1AgVEFCTEUgdDEsdDI7CiBFbmQgb2YgNS4xIHRlc3RzLgoKPT09IG1vZGlmaWVkIGZpbGUg J215c3FsLXRlc3Qvci9tZXJnZS5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvci9tZXJnZS5yZXN1 bHQJMjAwOS0wMi0xMiAxMDoyNToxMiArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvbWVyZ2UucmVz dWx0CTIwMDktMDMtMDQgMDk6MTg6MDcgKzAwMDAKQEAgLTIxMDMsNCArMjEwMywxNiBAQCBhCiBV TkxPQ0sgVEFCTEVTOwogIyBkcm9wIHRoZSBjcmVhdGVkIHRhYmxlcwogRFJPUCBUQUJMRSB0MSwg dDIsIHQzOworIyBpbnNlcnQgZHVwbGljYXRlIHZhbHVlIGluIGNoaWxkIHRhYmxlIHdoaWxlIG1l cmdlIHRhYmxlIGRvZXNuJ3QgaGF2ZSBrZXkKK2NyZWF0ZSB0YWJsZSB0MSAoCitjb2wxIGludCgx MCksCitwcmltYXJ5IGtleSAoY29sMSkKKykgRU5HSU5FPU15SVNBTSBERUZBVUxUIENIQVJTRVQ9 bGF0aW4xOworQ1JFQVRFIFRBQkxFIG0xICgKK2NvbDEgaW50KDEwKSBOT1QgTlVMTAorKSBFTkdJ TkU9TVJHX015SVNBTSBERUZBVUxUIENIQVJTRVQ9bGF0aW4xIElOU0VSVF9NRVRIT0Q9TEFTVCBV TklPTj0odDEpOworaW5zZXJ0IGludG8gbTEgKGNvbDEpIHZhbHVlcyAoMSk7CitpbnNlcnQgaW50 byBtMSAoY29sMSkgdmFsdWVzICgxKTsKK0VSUk9SIDIzMDAwOiBEdXBsaWNhdGUgZW50cnkgJycg Zm9yIGtleSAnKlVOS05PV04qJworZHJvcCB0YWJsZSBtMSwgdDE7CiBFbmQgb2YgNS4xIHRlc3Rz Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL3BzLnJlc3VsdCcKLS0tIGEvbXlzcWwt dGVzdC9yL3BzLnJlc3VsdAkyMDA5LTAzLTAzIDAwOjExOjI1ICswMDAwCisrKyBiL215c3FsLXRl c3Qvci9wcy5yZXN1bHQJMjAwOS0wMy0wNiAxNToxMTozNCArMDAwMApAQCAtODAzLDYgKzgwMyw4 IEBAIHNlbGVjdCBAQG1heF9wcmVwYXJlZF9zdG10X2NvdW50OwogQEBtYXhfcHJlcGFyZWRfc3Rt dF9jb3VudAogMTYzODIKIHNldCBnbG9iYWwgbWF4X3ByZXBhcmVkX3N0bXRfY291bnQ9LTE7CitX YXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9wcmVwYXJlZF9z dG10X2NvdW50IHZhbHVlOiAnLTEnCiBzZWxlY3QgQEBtYXhfcHJlcGFyZWRfc3RtdF9jb3VudDsK IEBAbWF4X3ByZXBhcmVkX3N0bXRfY291bnQKIDAKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10 ZXN0L3Ivc3RyaWN0LnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9yL3N0cmljdC5yZXN1bHQJMjAw OC0xMi0wMSAwNDoxNzo1MiArMDAwMAorKysgYi9teXNxbC10ZXN0L3Ivc3RyaWN0LnJlc3VsdAky MDA5LTAzLTA1IDExOjIwOjAxICswMDAwCkBAIC0xMzA1LDcgKzEzMDUsNyBAQCBzZXQgQEBzcWxf bW9kZT0ndHJhZGl0aW9uYWwnOwogY3JlYXRlIHRhYmxlIHQxIChpIGludCkKIGNvbW1lbnQgJzEy MzQ1Njc4OSoxMjM0NTY3ODkqMTIzNDU2Nzg5KjEyMzQ1Njc4OSoxMjM0NTY3ODkqCiAgICAgICAg ICAxMjM0NTY3ODkqMTIzNDU2Nzg5KjEyMzQ1Njc4OSoxMjM0NTY3ODkqMTIzNDU2Nzg5Kic7Ci1F UlJPUiBIWTAwMDogVG9vIGxvbmcgY29tbWVudCBmb3IgdGFibGUgJ3QxJworRVJST1IgSFkwMDA6 IENvbW1lbnQgZm9yIHRhYmxlICd0MScgaXMgdG9vIGxvbmcgKG1heCA9IDYwKQogY3JlYXRlIHRh YmxlIHQxICgKIGkgaW50IGNvbW1lbnQKICcxMjM0NTY3ODkqMTIzNDU2Nzg5KjEyMzQ1Njc4OSox MjM0NTY3ODkqCkBAIC0xMzE1LDcgKzEzMTUsNyBAQCBpIGludCBjb21tZW50CiAgMTIzNDU2Nzg5 KjEyMzQ1Njc4OSoxMjM0NTY3ODkqMTIzNDU2Nzg5KgogIDEyMzQ1Njc4OSoxMjM0NTY3ODkqMTIz NDU2Nzg5KjEyMzQ1Njc4OSoKICAxMjM0NTY3ODkqMTIzNDU2Nzg5KjEyMzQ1Njc4OSoxMjM0NTY3 ODkqJyk7Ci1FUlJPUiBIWTAwMDogVG9vIGxvbmcgY29tbWVudCBmb3IgZmllbGQgJ2knCitFUlJP UiBIWTAwMDogQ29tbWVudCBmb3IgZmllbGQgJ2knIGlzIHRvbyBsb25nIChtYXggPSAyNTUpCiBz ZXQgQEBzcWxfbW9kZT0gQG9yZ19tb2RlOwogY3JlYXRlIHRhYmxlIHQxCiAoaSBpbnQgY29tbWVu dApAQCAtMTMyNyw3ICsxMzI3LDcgQEAgY3JlYXRlIHRhYmxlIHQxCiAgIDEyMzQ1Njc4OSoxMjM0 NTY3ODkqMTIzNDU2Nzg5KjEyMzQ1Njc4OSoKICAgMTIzNDU2Nzg5KjEyMzQ1Njc4OSoxMjM0NTY3 ODkqMTIzNDU2Nzg5KicpOwogV2FybmluZ3M6Ci1XYXJuaW5nCTExMDUJVW5rbm93biBlcnJvcgor V2FybmluZwkxNjI5CUNvbW1lbnQgZm9yIGZpZWxkICdpJyBpcyB0b28gbG9uZyAobWF4ID0gMjU1 KQogc2VsZWN0IGNvbHVtbl9uYW1lLCBjb2x1bW5fY29tbWVudCBmcm9tIGluZm9ybWF0aW9uX3Nj aGVtYS5jb2x1bW5zIHdoZXJlCiB0YWJsZV9zY2hlbWEgPSAndGVzdCcgYW5kIHRhYmxlX25hbWUg PSAndDEnOwogY29sdW1uX25hbWUJY29sdW1uX2NvbW1lbnQKCj09PSBtb2RpZmllZCBmaWxlICdt eXNxbC10ZXN0L3IvdmFyaWFibGVzLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9yL3ZhcmlhYmxl cy5yZXN1bHQJMjAwOS0wMy0wNSAxMTozNDowMiArMDAwMAorKysgYi9teXNxbC10ZXN0L3IvdmFy aWFibGVzLnJlc3VsdAkyMDA5LTAzLTA2IDE1OjExOjM0ICswMDAwCkBAIC03NTMsNyArNzUzLDcg QEAgVkFSSUFCTEVfTkFNRQlWQVJJQUJMRV9WQUxVRQogTVlJU0FNX0RBVEFfUE9JTlRFUl9TSVpF CTcKIFNFVCBHTE9CQUwgdGFibGVfb3Blbl9jYWNoZT0tMTsKIFdhcm5pbmdzOgotV2FybmluZwkx MjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgdGFibGVfb3Blbl9jYWNoZSB2YWx1ZTogJzAnCitXYXJu aW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCB0YWJsZV9vcGVuX2NhY2hlIHZhbHVlOiAnLTEn CiBTSE9XIFZBUklBQkxFUyBMSUtFICd0YWJsZV9vcGVuX2NhY2hlJzsKIFZhcmlhYmxlX25hbWUJ VmFsdWUKIHRhYmxlX29wZW5fY2FjaGUJMQpAQCAtMTM4OSw4ICsxMzg5LDQxIEBAIFNFVCBAQHNl c3Npb24udGhyZWFkX3N0YWNrPSA3OwogRVJST1IgSFkwMDA6IFZhcmlhYmxlICd0aHJlYWRfc3Rh Y2snIGlzIGEgcmVhZCBvbmx5IHZhcmlhYmxlCiBTRVQgQEBnbG9iYWwudGhyZWFkX3N0YWNrPSA3 OwogRVJST1IgSFkwMDA6IFZhcmlhYmxlICd0aHJlYWRfc3RhY2snIGlzIGEgcmVhZCBvbmx5IHZh cmlhYmxlCitTRUxFQ1QgQEBnbG9iYWwuZXhwaXJlX2xvZ3NfZGF5cyBJTlRPIEBvbGRfZWxkOwor U0VUIEdMT0JBTCBleHBpcmVfbG9nc19kYXlzID0gLTE7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5 MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGV4cGlyZV9sb2dzX2RheXMgdmFsdWU6ICctMScKK25lZWRz IHRvJ3ZlIGJlZW4gYWRqdXN0ZWQgKDApCitTRUxFQ1QgQEBnbG9iYWwuZXhwaXJlX2xvZ3NfZGF5 czsKK0BAZ2xvYmFsLmV4cGlyZV9sb2dzX2RheXMKKzAKK1NFVCBHTE9CQUwgZXhwaXJlX2xvZ3Nf ZGF5cyA9IDExOworU0VUIEBvbGRfbW9kZT1AQHNxbF9tb2RlOworU0VUIFNFU1NJT04gc3FsX21v ZGUgPSAnVFJBRElUSU9OQUwnOworU0VUIEdMT0JBTCBleHBpcmVfbG9nc19kYXlzID0gMTAwOwor RVJST1IgNDIwMDA6IFZhcmlhYmxlICdleHBpcmVfbG9nc19kYXlzJyBjYW4ndCBiZSBzZXQgdG8g dGhlIHZhbHVlIG9mICcxMDAnCituZWVkcyB0byBiZSB1bmNoYW5nZWQgKDExKQorU0VMRUNUIEBA Z2xvYmFsLmV4cGlyZV9sb2dzX2RheXM7CitAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzCisxMQor U0VUIFNFU1NJT04gc3FsX21vZGUgPSBAb2xkX21vZGU7CitTRVQgR0xPQkFMIGV4cGlyZV9sb2dz X2RheXMgPSAxMDA7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IGV4cGlyZV9sb2dzX2RheXMgdmFsdWU6ICcxMDAnCituZWVkcyB0byd2ZSBiZWVuIGFkanVzdGVk ICg5OSkKK1NFTEVDVCBAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzOworQEBnbG9iYWwuZXhwaXJl X2xvZ3NfZGF5cworOTkKK1NFVCBHTE9CQUwgZXhwaXJlX2xvZ3NfZGF5cyA9IDExOworU0VUIEdM T0JBTCBleHBpcmVfbG9nc19kYXlzID0gOTk7CituZWVkcyB0byBwYXNzIHdpdGggbm8gd2Fybmlu Z3MgKDk5KQorU0VMRUNUIEBAZ2xvYmFsLmV4cGlyZV9sb2dzX2RheXM7CitAQGdsb2JhbC5leHBp cmVfbG9nc19kYXlzCis5OQorU0VUIEdMT0JBTCBleHBpcmVfbG9nc19kYXlzID0gQG9sZF9lbGQ7 CiBzZWxlY3QgQEBzdG9yYWdlX2VuZ2luZTsKIENhdGFsb2cJRGF0YWJhc2UJVGFibGUJVGFibGVf YWxpYXMJQ29sdW1uCUNvbHVtbl9hbGlhcwlUeXBlCUxlbmd0aAlNYXggbGVuZ3RoCUlzX251bGwJ RmxhZ3MJRGVjaW1hbHMJQ2hhcnNldG5yCiBkZWYJCQkJCUBAc3RvcmFnZV9lbmdpbmUJMjUzCTYJ NglOCTEJMzEJOAogQEBzdG9yYWdlX2VuZ2luZQogTXlJU0FNCitFbmQgb2YgNS4xIHRlc3RzCgo9 PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2F1dG9faW5jcmVt ZW50X2luY3JlbWVudF9iYXNpYy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3Zh cnMvci9hdXRvX2luY3JlbWVudF9pbmNyZW1lbnRfYmFzaWMucmVzdWx0CTIwMDgtMTItMTkgMTU6 MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2F1dG9faW5jcmVt ZW50X2luY3JlbWVudF9iYXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAt NjEsNyArNjEsNyBAQCBTRUxFQ1QgQEBnbG9iYWwuYXV0b19pbmNyZW1lbnRfaW5jcmVtZW50CiAx CiBTRVQgQEBnbG9iYWwuYXV0b19pbmNyZW1lbnRfaW5jcmVtZW50ID0gLTEwMjQ7CiBXYXJuaW5n czoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGF1dG8taW5jcmVtZW50LWluY3Jl bWVudCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBhdXRvX2lu Y3JlbWVudF9pbmNyZW1lbnQgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5hdXRvX2lu Y3JlbWVudF9pbmNyZW1lbnQ7CiBAQGdsb2JhbC5hdXRvX2luY3JlbWVudF9pbmNyZW1lbnQKIDEK QEAgLTg5LDcgKzg5LDcgQEAgU0VMRUNUIEBAc2Vzc2lvbi5hdXRvX2luY3JlbWVudF9pbmNyZW1l bgogMQogU0VUIEBAc2Vzc2lvbi5hdXRvX2luY3JlbWVudF9pbmNyZW1lbnQgPSAtMjsKIFdhcm5p bmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgYXV0by1pbmNyZW1lbnQtaW5j cmVtZW50IHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGF1dG9f aW5jcmVtZW50X2luY3JlbWVudCB2YWx1ZTogJy0yJwogU0VMRUNUIEBAc2Vzc2lvbi5hdXRvX2lu Y3JlbWVudF9pbmNyZW1lbnQ7CiBAQHNlc3Npb24uYXV0b19pbmNyZW1lbnRfaW5jcmVtZW50CiAx Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2F1dG9faW5j cmVtZW50X2luY3JlbWVudF9mdW5jLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNf dmFycy9yL2F1dG9faW5jcmVtZW50X2luY3JlbWVudF9mdW5jLnJlc3VsdAkyMDA4LTEyLTE5IDE1 OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9hdXRvX2luY3Jl bWVudF9pbmNyZW1lbnRfZnVuYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAt MTY5LDcgKzE2OSw3IEBAIGlkCW5hbWUKICMjIFZlcmlmeWluZyBiZWhhdmlvciBvZiB2YXJpYWJs ZSB3aXRoIG5lZ2F0aXZlIHZhbHVlICMjCiBTRVQgQEBhdXRvX2luY3JlbWVudF9pbmNyZW1lbnQg PSAtMTA7CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGF1dG8t aW5jcmVtZW50LWluY3JlbWVudCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGlu Y29ycmVjdCBhdXRvX2luY3JlbWVudF9pbmNyZW1lbnQgdmFsdWU6ICctMTAnCiBJTlNFUlQgaW50 byB0MShuYW1lKSB2YWx1ZXMoJ1JlY29yZF8xNycpOwogSU5TRVJUIGludG8gdDEobmFtZSkgdmFs dWVzKCdSZWNvcmRfMTgnKTsKIFNFTEVDVCAqIGZyb20gdDE7Cgo9PT0gbW9kaWZpZWQgZmlsZSAn bXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2F1dG9faW5jcmVtZW50X29mZnNldF9iYXNpYy5y ZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9hdXRvX2luY3JlbWVudF9v ZmZzZXRfYmFzaWMucmVzdWx0CTIwMDgtMTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwt dGVzdC9zdWl0ZS9zeXNfdmFycy9yL2F1dG9faW5jcmVtZW50X29mZnNldF9iYXNpYy5yZXN1bHQJ MjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtNjEsNyArNjEsNyBAQCBTRUxFQ1QgQEBnbG9i YWwuYXV0b19pbmNyZW1lbnRfb2Zmc2V0OwogMQogU0VUIEBAZ2xvYmFsLmF1dG9faW5jcmVtZW50 X29mZnNldCA9IC0xMDI0OwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29y cmVjdCBhdXRvLWluY3JlbWVudC1vZmZzZXQgdmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRydW5j YXRlZCBpbmNvcnJlY3QgYXV0b19pbmNyZW1lbnRfb2Zmc2V0IHZhbHVlOiAnLTEwMjQnCiBTRUxF Q1QgQEBnbG9iYWwuYXV0b19pbmNyZW1lbnRfb2Zmc2V0OwogQEBnbG9iYWwuYXV0b19pbmNyZW1l bnRfb2Zmc2V0CiAxCkBAIC05NCw3ICs5NCw3IEBAIFNFTEVDVCBAQHNlc3Npb24uYXV0b19pbmNy ZW1lbnRfb2Zmc2V0OwogMQogU0VUIEBAc2Vzc2lvbi5hdXRvX2luY3JlbWVudF9vZmZzZXQgPSAt MjsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgYXV0by1pbmNy ZW1lbnQtb2Zmc2V0IHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IGF1dG9faW5jcmVtZW50X29mZnNldCB2YWx1ZTogJy0yJwogU0VMRUNUIEBAc2Vzc2lvbi5hdXRv X2luY3JlbWVudF9vZmZzZXQ7CiBAQHNlc3Npb24uYXV0b19pbmNyZW1lbnRfb2Zmc2V0CiAxCgo9 PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2F1dG9faW5jcmVt ZW50X29mZnNldF9mdW5jLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9y L2F1dG9faW5jcmVtZW50X29mZnNldF9mdW5jLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICsw MDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9hdXRvX2luY3JlbWVudF9vZmZz ZXRfZnVuYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtMTc4LDcgKzE3OCw3 IEBAIGlkCW5hbWUKICMjIEFzc2lnbmluZyAtdmUgdmFsdWUgdG8gdmFyaWFibGUgIyMgCiBTRVQg QEBhdXRvX2luY3JlbWVudF9vZmZzZXQgPSAtMTA7CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglU cnVuY2F0ZWQgaW5jb3JyZWN0IGF1dG8taW5jcmVtZW50LW9mZnNldCB2YWx1ZTogJzAnCitXYXJu aW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBhdXRvX2luY3JlbWVudF9vZmZzZXQgdmFsdWU6 ICctMTAnCiBTRUxFQ1QgQEBhdXRvX2luY3JlbWVudF9vZmZzZXQgPSAtMTA7CiBAQGF1dG9faW5j cmVtZW50X29mZnNldCA9IC0xMAogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3Vp dGUvc3lzX3ZhcnMvci9jb25jdXJyZW50X2luc2VydF9iYXNpYy5yZXN1bHQnCi0tLSBhL215c3Fs LXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9jb25jdXJyZW50X2luc2VydF9iYXNpYy5yZXN1bHQJMjAw OC0xMi0xOSAxNToxMjoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Iv Y29uY3VycmVudF9pbnNlcnRfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6NDMgKzAwMDAK QEAgLTI4LDYgKzI4LDggQEAgU0VMRUNUIEBAZ2xvYmFsLmNvbmN1cnJlbnRfaW5zZXJ0OwogMgog JyMtLS0tLS0tLS0tLS0tLS0tLS0tLUZOX0RZTlZBUlNfMDE4XzA0LS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSMnCiBTRVQgQEBnbG9iYWwuY29uY3VycmVudF9pbnNlcnQgPSAtMTsKK1dhcm5pbmdz OgorV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgY29uY3VycmVudF9pbnNlcnQgdmFs dWU6ICctMScKIFNlbGVjdCBAQGdsb2JhbC5jb25jdXJyZW50X2luc2VydDsKIEBAZ2xvYmFsLmNv bmN1cnJlbnRfaW5zZXJ0CiAwCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9z eXNfdmFycy9yL2Nvbm5lY3RfdGltZW91dF9iYXNpYy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qv c3VpdGUvc3lzX3ZhcnMvci9jb25uZWN0X3RpbWVvdXRfYmFzaWMucmVzdWx0CTIwMDgtMTItMTkg MTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2Nvbm5lY3Rf dGltZW91dF9iYXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtMzUsNyAr MzUsNyBAQCBTRUxFQ1QgQEBnbG9iYWwuY29ubmVjdF90aW1lb3V0OwogMgogU0VUIEBAZ2xvYmFs LmNvbm5lY3RfdGltZW91dCA9IC0xMDI0OwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNh dGVkIGluY29ycmVjdCBjb25uZWN0X3RpbWVvdXQgdmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRy dW5jYXRlZCBpbmNvcnJlY3QgY29ubmVjdF90aW1lb3V0IHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1Qg QEBnbG9iYWwuY29ubmVjdF90aW1lb3V0OwogQEBnbG9iYWwuY29ubmVjdF90aW1lb3V0CiAyCgo9 PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2RlZmF1bHRfd2Vl a19mb3JtYXRfYmFzaWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Iv ZGVmYXVsdF93ZWVrX2Zvcm1hdF9iYXNpYy5yZXN1bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAw MAorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvZGVmYXVsdF93ZWVrX2Zvcm1hdF9i YXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtNjQsNiArNjQsOCBAQCBT RUxFQ1QgQEBnbG9iYWwuZGVmYXVsdF93ZWVrX2Zvcm1hdDsKIEBAZ2xvYmFsLmRlZmF1bHRfd2Vl a19mb3JtYXQKIDcKIFNFVCBAQGdsb2JhbC5kZWZhdWx0X3dlZWtfZm9ybWF0ID0gLTEwMjQ7CitX YXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGRlZmF1bHRfd2Vla19m b3JtYXQgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5kZWZhdWx0X3dlZWtfZm9ybWF0 OwogQEBnbG9iYWwuZGVmYXVsdF93ZWVrX2Zvcm1hdAogMApAQCAtMTAwLDYgKzEwMiw4IEBAIFNF TEVDVCBAQHNlc3Npb24uZGVmYXVsdF93ZWVrX2Zvcm1hdDsKIEBAc2Vzc2lvbi5kZWZhdWx0X3dl ZWtfZm9ybWF0CiA3CiBTRVQgQEBzZXNzaW9uLmRlZmF1bHRfd2Vla19mb3JtYXQgPSAtMjsKK1dh cm5pbmdzOgorV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgZGVmYXVsdF93ZWVrX2Zv cm1hdCB2YWx1ZTogJy0yJwogU0VMRUNUIEBAc2Vzc2lvbi5kZWZhdWx0X3dlZWtfZm9ybWF0Owog QEBzZXNzaW9uLmRlZmF1bHRfd2Vla19mb3JtYXQKIDAKCj09PSBtb2RpZmllZCBmaWxlICdteXNx bC10ZXN0L3N1aXRlL3N5c192YXJzL3IvZGVsYXllZF9pbnNlcnRfdGltZW91dF9iYXNpYy5yZXN1 bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9kZWxheWVkX2luc2VydF90aW1l b3V0X2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci9kZWxheWVkX2luc2VydF90aW1lb3V0X2Jhc2ljLnJlc3VsdAky MDA5LTAyLTI3IDIwOjQzOjQzICswMDAwCkBAIC0zNSw3ICszNSw3IEBAIFNFTEVDVCBAQGdsb2Jh bC5kZWxheWVkX2luc2VydF90aW1lb3V0OwogMQogU0VUIEBAZ2xvYmFsLmRlbGF5ZWRfaW5zZXJ0 X3RpbWVvdXQgPSAtMTAyNDsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNv cnJlY3QgZGVsYXllZF9pbnNlcnRfdGltZW91dCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1 bmNhdGVkIGluY29ycmVjdCBkZWxheWVkX2luc2VydF90aW1lb3V0IHZhbHVlOiAnLTEwMjQnCiBT RUxFQ1QgQEBnbG9iYWwuZGVsYXllZF9pbnNlcnRfdGltZW91dDsKIEBAZ2xvYmFsLmRlbGF5ZWRf aW5zZXJ0X3RpbWVvdXQKIDEKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5 c192YXJzL3IvZGl2X3ByZWNpc2lvbl9pbmNyZW1lbnRfYmFzaWMucmVzdWx0JwotLS0gYS9teXNx bC10ZXN0L3N1aXRlL3N5c192YXJzL3IvZGl2X3ByZWNpc2lvbl9pbmNyZW1lbnRfYmFzaWMucmVz dWx0CTIwMDgtMTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9zeXNf dmFycy9yL2Rpdl9wcmVjaXNpb25faW5jcmVtZW50X2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIw OjQzOjQzICswMDAwCkBAIC03OCw2ICs3OCw4IEBAIFNFTEVDVCBAQGdsb2JhbC5kaXZfcHJlY2lz aW9uX2luY3JlbWVudDsKIEBAZ2xvYmFsLmRpdl9wcmVjaXNpb25faW5jcmVtZW50CiAzMAogU0VU IEBAZ2xvYmFsLmRpdl9wcmVjaXNpb25faW5jcmVtZW50ID0gLTEwMjQ7CitXYXJuaW5nczoKK1dh cm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGRpdl9wcmVjaXNpb25faW5jcmVtZW50IHZh bHVlOiAnLTEwMjQnCiBTRUxFQ1QgQEBnbG9iYWwuZGl2X3ByZWNpc2lvbl9pbmNyZW1lbnQ7CiBA QGdsb2JhbC5kaXZfcHJlY2lzaW9uX2luY3JlbWVudAogMApAQCAtMTAwLDYgKzEwMiw4IEBAIFNF TEVDVCBAQHNlc3Npb24uZGl2X3ByZWNpc2lvbl9pbmNyZW1lbnQKIEBAc2Vzc2lvbi5kaXZfcHJl Y2lzaW9uX2luY3JlbWVudAogMzAKIFNFVCBAQHNlc3Npb24uZGl2X3ByZWNpc2lvbl9pbmNyZW1l bnQgPSAtMjsKK1dhcm5pbmdzOgorV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgZGl2 X3ByZWNpc2lvbl9pbmNyZW1lbnQgdmFsdWU6ICctMicKIFNFTEVDVCBAQHNlc3Npb24uZGl2X3By ZWNpc2lvbl9pbmNyZW1lbnQ7CiBAQHNlc3Npb24uZGl2X3ByZWNpc2lvbl9pbmNyZW1lbnQKIDAK Cj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvZXhwaXJlX2xv Z3NfZGF5c19iYXNpYy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9l eHBpcmVfbG9nc19kYXlzX2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisr KyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9leHBpcmVfbG9nc19kYXlzX2Jhc2ljLnJl c3VsdAkyMDA5LTAyLTI3IDIwOjQzOjQzICswMDAwCkBAIC0zMiw2ICszMiw4IEBAIFNFTEVDVCBA QGdsb2JhbC5leHBpcmVfbG9nc19kYXlzOwogMjEKICcjLS0tLS0tLS0tLS0tLS0tLS0tLS1GTl9E WU5WQVJTXzAyOV8wNC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jJwogU0VUIEBAZ2xvYmFsLmV4 cGlyZV9sb2dzX2RheXMgPSAtMTsKK1dhcm5pbmdzOgorV2FybmluZwkxMjkyCVRydW5jYXRlZCBp bmNvcnJlY3QgZXhwaXJlX2xvZ3NfZGF5cyB2YWx1ZTogJy0xJwogU0VMRUNUIEBAZ2xvYmFsLmV4 cGlyZV9sb2dzX2RheXM7CiBAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzCiAwCkBAIC01Myw2ICs1 NSw4IEBAIFNFTEVDVCBAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzOwogQEBnbG9iYWwuZXhwaXJl X2xvZ3NfZGF5cwogOTkKIFNFVCBAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzID0gLTEwMjQ7CitX YXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGV4cGlyZV9sb2dzX2Rh eXMgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzOwogQEBn bG9iYWwuZXhwaXJlX2xvZ3NfZGF5cwogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qv c3VpdGUvc3lzX3ZhcnMvci9ncm91cF9jb25jYXRfbWF4X2xlbl9iYXNpYy5yZXN1bHQnCi0tLSBh L215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9ncm91cF9jb25jYXRfbWF4X2xlbl9iYXNpYy5y ZXN1bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5 c192YXJzL3IvZ3JvdXBfY29uY2F0X21heF9sZW5fYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6 NDM6NDMgKzAwMDAKQEAgLTY1LDcgKzY1LDcgQEAgU0VMRUNUIEBAZ2xvYmFsLmdyb3VwX2NvbmNh dF9tYXhfbGVuOwogNAogU0VUIEBAZ2xvYmFsLmdyb3VwX2NvbmNhdF9tYXhfbGVuID0gLTEwMjQ7 CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGdyb3VwX2NvbmNh dF9tYXhfbGVuIHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGdy b3VwX2NvbmNhdF9tYXhfbGVuIHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1QgQEBnbG9iYWwuZ3JvdXBf Y29uY2F0X21heF9sZW47CiBAQGdsb2JhbC5ncm91cF9jb25jYXRfbWF4X2xlbgogNApAQCAtOTEs NyArOTEsNyBAQCBTRUxFQ1QgQEBzZXNzaW9uLmdyb3VwX2NvbmNhdF9tYXhfbGVuOwogNAogU0VU IEBAc2Vzc2lvbi5ncm91cF9jb25jYXRfbWF4X2xlbiA9IC0yOwogV2FybmluZ3M6Ci1XYXJuaW5n CTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBncm91cF9jb25jYXRfbWF4X2xlbiB2YWx1ZTogJzAn CitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBncm91cF9jb25jYXRfbWF4X2xlbiB2 YWx1ZTogJy0yJwogU0VMRUNUIEBAc2Vzc2lvbi5ncm91cF9jb25jYXRfbWF4X2xlbjsKIEBAc2Vz c2lvbi5ncm91cF9jb25jYXRfbWF4X2xlbgogNAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci9pbnRlcmFjdGl2ZV90aW1lb3V0X2Jhc2ljLnJlc3VsdCcKLS0t IGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2ludGVyYWN0aXZlX3RpbWVvdXRfYmFzaWMu cmVzdWx0CTIwMDgtMTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9z eXNfdmFycy9yL2ludGVyYWN0aXZlX3RpbWVvdXRfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6 NDM6NDMgKzAwMDAKQEAgLTYxLDcgKzYxLDcgQEAgU0VMRUNUIEBAZ2xvYmFsLmludGVyYWN0aXZl X3RpbWVvdXQ7CiAxCiBTRVQgQEBnbG9iYWwuaW50ZXJhY3RpdmVfdGltZW91dCA9IC0xMDI0Owog V2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBpbnRlcmFjdGl2ZV90 aW1lb3V0IHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IGludGVy YWN0aXZlX3RpbWVvdXQgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5pbnRlcmFjdGl2 ZV90aW1lb3V0OwogQEBnbG9iYWwuaW50ZXJhY3RpdmVfdGltZW91dAogMQpAQCAtODksNyArODks NyBAQCBTRUxFQ1QgQEBzZXNzaW9uLmludGVyYWN0aXZlX3RpbWVvdXQ7CiAxCiBTRVQgQEBzZXNz aW9uLmludGVyYWN0aXZlX3RpbWVvdXQgPSAtMjsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRy dW5jYXRlZCBpbmNvcnJlY3QgaW50ZXJhY3RpdmVfdGltZW91dCB2YWx1ZTogJzAnCitXYXJuaW5n CTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBpbnRlcmFjdGl2ZV90aW1lb3V0IHZhbHVlOiAnLTIn CiBTRUxFQ1QgQEBzZXNzaW9uLmludGVyYWN0aXZlX3RpbWVvdXQ7CiBAQHNlc3Npb24uaW50ZXJh Y3RpdmVfdGltZW91dAogMQoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvc3lz X3ZhcnMvci9tYXhfYWxsb3dlZF9wYWNrZXRfYmFzaWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0 L3N1aXRlL3N5c192YXJzL3IvbWF4X2FsbG93ZWRfcGFja2V0X2Jhc2ljLnJlc3VsdAkyMDA4LTEy LTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhf YWxsb3dlZF9wYWNrZXRfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6NDMgKzAwMDAKQEAg LTc2LDcgKzc2LDcgQEAgU0VMRUNUIEBAZ2xvYmFsLm1heF9hbGxvd2VkX3BhY2tldDsKIDEwMjQK IFNFVCBAQGdsb2JhbC5tYXhfYWxsb3dlZF9wYWNrZXQgPSAtMTAyNDsKIFdhcm5pbmdzOgotV2Fy bmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbWF4X2FsbG93ZWRfcGFja2V0IHZhbHVlOiAn MCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9hbGxvd2VkX3BhY2tldCB2 YWx1ZTogJy0xMDI0JwogU0VMRUNUIEBAZ2xvYmFsLm1heF9hbGxvd2VkX3BhY2tldDsKIEBAZ2xv YmFsLm1heF9hbGxvd2VkX3BhY2tldAogMTAyNAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfYmlubG9nX3NpemVfYmFzaWMucmVzdWx0JwotLS0gYS9t eXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbWF4X2JpbmxvZ19zaXplX2Jhc2ljLnJlc3VsdAky MDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9tYXhfYmlubG9nX3NpemVfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6NDMgKzAwMDAK QEAgLTM5LDcgKzM5LDcgQEAgU0VMRUNUIEBAZ2xvYmFsLm1heF9iaW5sb2dfc2l6ZTsKICcjLS0t LS0tLS0tLS0tLS0tLS0tLS1GTl9EWU5WQVJTXzA3Ml8wNC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0jJwogU0VUIEBAZ2xvYmFsLm1heF9iaW5sb2dfc2l6ZSA9IC0xOwogV2FybmluZ3M6Ci1XYXJu aW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBtYXhfYmlubG9nX3NpemUgdmFsdWU6ICcwJwor V2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbWF4X2JpbmxvZ19zaXplIHZhbHVlOiAn LTEnCiBTRUxFQ1QgQEBnbG9iYWwubWF4X2JpbmxvZ19zaXplOwogQEBnbG9iYWwubWF4X2Jpbmxv Z19zaXplCiA0MDk2CkBAIC01Niw3ICs1Niw3IEBAIFNFTEVDVCBAQGdsb2JhbC5tYXhfYmlubG9n X3NpemU7CiAxMDczNzQxODI0CiBTRVQgQEBnbG9iYWwubWF4X2JpbmxvZ19zaXplID0gLTEwMjQ7 CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9iaW5sb2df c2l6ZSB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBtYXhfYmlu bG9nX3NpemUgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5tYXhfYmlubG9nX3NpemU7 CiBAQGdsb2JhbC5tYXhfYmlubG9nX3NpemUKIDQwOTYKCj09PSBtb2RpZmllZCBmaWxlICdteXNx bC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbWF4X2Nvbm5lY3Rpb25zX2Jhc2ljLnJlc3VsdCcKLS0t IGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL21heF9jb25uZWN0aW9uc19iYXNpYy5yZXN1 bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192 YXJzL3IvbWF4X2Nvbm5lY3Rpb25zX2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIwOjQzOjQzICsw MDAwCkBAIC0zOSw3ICszOSw3IEBAIFNFTEVDVCBAQGdsb2JhbC5tYXhfY29ubmVjdGlvbnM7CiAn Iy0tLS0tLS0tLS0tLS0tLS0tLS0tRk5fRFlOVkFSU18wNzRfMDQtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tIycKIFNFVCBAQGdsb2JhbC5tYXhfY29ubmVjdGlvbnMgPSAtMTsKIFdhcm5pbmdzOgot V2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbWF4X2Nvbm5lY3Rpb25zIHZhbHVlOiAn MCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9jb25uZWN0aW9ucyB2YWx1 ZTogJy0xJwogU0VMRUNUIEBAZ2xvYmFsLm1heF9jb25uZWN0aW9uczsKIEBAZ2xvYmFsLm1heF9j b25uZWN0aW9ucwogMQpAQCAtNTYsNyArNTYsNyBAQCBTRUxFQ1QgQEBnbG9iYWwubWF4X2Nvbm5l Y3Rpb25zOwogMTAwMDAwCiBTRVQgQEBnbG9iYWwubWF4X2Nvbm5lY3Rpb25zID0gLTEwMjQ7CiBX YXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9jb25uZWN0aW9u cyB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBtYXhfY29ubmVj dGlvbnMgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5tYXhfY29ubmVjdGlvbnM7CiBA QGdsb2JhbC5tYXhfY29ubmVjdGlvbnMKIDEKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0 L3N1aXRlL3N5c192YXJzL3IvbWF4X2RlbGF5ZWRfdGhyZWFkc19iYXNpYy5yZXN1bHQnCi0tLSBh L215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfZGVsYXllZF90aHJlYWRzX2Jhc2ljLnJl c3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lz X3ZhcnMvci9tYXhfZGVsYXllZF90aHJlYWRzX2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIwOjQz OjQzICswMDAwCkBAIC03NiwxMCArNzYsMTQgQEAgU0VMRUNUIEBAc2Vzc2lvbi5tYXhfZGVsYXll ZF90aHJlYWRzOwogMTYzODMKICcjLS0tLS0tLS0tLS0tLS0tLS0tRk5fRFlOVkFSU18wNzVfMDUt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMnCiBTRVQgQEBnbG9iYWwubWF4X2RlbGF5ZWRfdGhyZWFk cyA9IC0xMDI0OworV2FybmluZ3M6CitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBt YXhfZGVsYXllZF90aHJlYWRzIHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1QgQEBnbG9iYWwubWF4X2Rl bGF5ZWRfdGhyZWFkczsKIEBAZ2xvYmFsLm1heF9kZWxheWVkX3RocmVhZHMKIDAKIFNFVCBAQGds b2JhbC5tYXhfZGVsYXllZF90aHJlYWRzID0gLTE7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglU cnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9kZWxheWVkX3RocmVhZHMgdmFsdWU6ICctMScKIFNFTEVD VCBAQGdsb2JhbC5tYXhfZGVsYXllZF90aHJlYWRzOwogQEBnbG9iYWwubWF4X2RlbGF5ZWRfdGhy ZWFkcwogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9t YXhfZXJyb3JfY291bnRfYmFzaWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192 YXJzL3IvbWF4X2Vycm9yX2NvdW50X2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICsw MDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfZXJyb3JfY291bnRfYmFz aWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6NDMgKzAwMDAKQEAgLTYzLDEwICs2MywxNCBAQCBT RUxFQ1QgQEBzZXNzaW9uLm1heF9lcnJvcl9jb3VudDsKIDY1NTM0CiAnIy0tLS0tLS0tLS0tLS0t LS0tLUZOX0RZTlZBUlNfMDc2XzA1LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jJwogU0VUIEBAZ2xv YmFsLm1heF9lcnJvcl9jb3VudCA9IC0xOworV2FybmluZ3M6CitXYXJuaW5nCTEyOTIJVHJ1bmNh dGVkIGluY29ycmVjdCBtYXhfZXJyb3JfY291bnQgdmFsdWU6ICctMScKIFNFTEVDVCBAQGdsb2Jh bC5tYXhfZXJyb3JfY291bnQ7CiBAQGdsb2JhbC5tYXhfZXJyb3JfY291bnQKIDAKIFNFVCBAQGds b2JhbC5tYXhfZXJyb3JfY291bnQgPSAtMTAyNDsKK1dhcm5pbmdzOgorV2FybmluZwkxMjkyCVRy dW5jYXRlZCBpbmNvcnJlY3QgbWF4X2Vycm9yX2NvdW50IHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1Qg QEBnbG9iYWwubWF4X2Vycm9yX2NvdW50OwogQEBnbG9iYWwubWF4X2Vycm9yX2NvdW50CiAwCkBA IC05Myw2ICs5Nyw4IEBAIFNFTEVDVCBAQGdsb2JhbC5tYXhfZXJyb3JfY291bnQ7CiBAQGdsb2Jh bC5tYXhfZXJyb3JfY291bnQKIDY1NTM1CiBTRVQgQEBzZXNzaW9uLm1heF9lcnJvcl9jb3VudCA9 IC0xOworV2FybmluZ3M6CitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBtYXhfZXJy b3JfY291bnQgdmFsdWU6ICctMScKIFNFTEVDVCBAQHNlc3Npb24ubWF4X2Vycm9yX2NvdW50Owog QEBzZXNzaW9uLm1heF9lcnJvcl9jb3VudAogMApAQCAtMTAyLDYgKzEwOCw4IEBAIFNFTEVDVCBA QHNlc3Npb24ubWF4X2Vycm9yX2NvdW50OwogQEBzZXNzaW9uLm1heF9lcnJvcl9jb3VudAogNjU1 MzUKIFNFVCBAQHNlc3Npb24ubWF4X2Vycm9yX2NvdW50ID0gLTI7CitXYXJuaW5nczoKK1dhcm5p bmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9lcnJvcl9jb3VudCB2YWx1ZTogJy0yJwog U0VMRUNUIEBAc2Vzc2lvbi5tYXhfZXJyb3JfY291bnQ7CiBAQHNlc3Npb24ubWF4X2Vycm9yX2Nv dW50CiAwCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL21h eF9pbnNlcnRfZGVsYXllZF90aHJlYWRzX2Jhc2ljLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9z dWl0ZS9zeXNfdmFycy9yL21heF9pbnNlcnRfZGVsYXllZF90aHJlYWRzX2Jhc2ljLnJlc3VsdAky MDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9tYXhfaW5zZXJ0X2RlbGF5ZWRfdGhyZWFkc19iYXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0 Mzo0MyArMDAwMApAQCAtNzcsMTAgKzc3LDE0IEBAIFNFTEVDVCBAQHNlc3Npb24ubWF4X2luc2Vy dF9kZWxheWVkX3RocmUKIDE2MzgzCiAnIy0tLS0tLS0tLS0tLS0tLS0tLUZOX0RZTlZBUlNfMDc4 XzA1LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jJwogU0VUIEBAZ2xvYmFsLm1heF9pbnNlcnRfZGVs YXllZF90aHJlYWRzID0gLTEwMjQ7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQg aW5jb3JyZWN0IG1heF9pbnNlcnRfZGVsYXllZF90aHJlYWRzIHZhbHVlOiAnLTEwMjQnCiBTRUxF Q1QgQEBnbG9iYWwubWF4X2luc2VydF9kZWxheWVkX3RocmVhZHM7CiBAQGdsb2JhbC5tYXhfaW5z ZXJ0X2RlbGF5ZWRfdGhyZWFkcwogMAogU0VUIEBAZ2xvYmFsLm1heF9pbnNlcnRfZGVsYXllZF90 aHJlYWRzID0gLTE7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IG1heF9pbnNlcnRfZGVsYXllZF90aHJlYWRzIHZhbHVlOiAnLTEnCiBTRUxFQ1QgQEBnbG9iYWwu bWF4X2luc2VydF9kZWxheWVkX3RocmVhZHM7CiBAQGdsb2JhbC5tYXhfaW5zZXJ0X2RlbGF5ZWRf dGhyZWFkcwogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9tYXhfbGVuZ3RoX2Zvcl9zb3J0X2RhdGFfYmFzaWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0 L3N1aXRlL3N5c192YXJzL3IvbWF4X2xlbmd0aF9mb3Jfc29ydF9kYXRhX2Jhc2ljLnJlc3VsdAky MDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9tYXhfbGVuZ3RoX2Zvcl9zb3J0X2RhdGFfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6 NDMgKzAwMDAKQEAgLTcxLDcgKzcxLDcgQEAgU0VMRUNUIEBAc2Vzc2lvbi5tYXhfbGVuZ3RoX2Zv cl9zb3J0X2RhdAogJyMtLS0tLS0tLS0tLS0tLS0tLS1GTl9EWU5WQVJTXzA4MF8wNS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tIycKIFNFVCBAQGdsb2JhbC5tYXhfbGVuZ3RoX2Zvcl9zb3J0X2RhdGEg PSAtMTAyNDsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbWF4 X2xlbmd0aF9mb3Jfc29ydF9kYXRhIHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQg aW5jb3JyZWN0IG1heF9sZW5ndGhfZm9yX3NvcnRfZGF0YSB2YWx1ZTogJy0xMDI0JwogU0VMRUNU IEBAZ2xvYmFsLm1heF9sZW5ndGhfZm9yX3NvcnRfZGF0YTsKIEBAZ2xvYmFsLm1heF9sZW5ndGhf Zm9yX3NvcnRfZGF0YQogNApAQCAtMTExLDcgKzExMSw3IEBAIFNFTEVDVCBAQHNlc3Npb24ubWF4 X2xlbmd0aF9mb3Jfc29ydF9kYXQKIDgzODg2MDgKIFNFVCBAQHNlc3Npb24ubWF4X2xlbmd0aF9m b3Jfc29ydF9kYXRhID0gLTE7CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5j b3JyZWN0IG1heF9sZW5ndGhfZm9yX3NvcnRfZGF0YSB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJ VHJ1bmNhdGVkIGluY29ycmVjdCBtYXhfbGVuZ3RoX2Zvcl9zb3J0X2RhdGEgdmFsdWU6ICctMScK IFNFTEVDVCBAQHNlc3Npb24ubWF4X2xlbmd0aF9mb3Jfc29ydF9kYXRhOwogQEBzZXNzaW9uLm1h eF9sZW5ndGhfZm9yX3NvcnRfZGF0YQogNAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qv c3VpdGUvc3lzX3ZhcnMvci9tYXhfcHJlcGFyZWRfc3RtdF9jb3VudF9iYXNpYy5yZXN1bHQnCi0t LSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfcHJlcGFyZWRfc3RtdF9jb3VudF9i YXNpYy5yZXN1bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1 aXRlL3N5c192YXJzL3IvbWF4X3ByZXBhcmVkX3N0bXRfY291bnRfYmFzaWMucmVzdWx0CTIwMDkt MDItMjcgMjA6NDM6NDMgKzAwMDAKQEAgLTM2LDYgKzM2LDggQEAgU0VMRUNUIEBAZ2xvYmFsLm1h eF9wcmVwYXJlZF9zdG10X2NvdW50OwogNjU1MzUKICcjLS0tLS0tLS0tLS0tLS0tLS0tLS1GTl9E WU5WQVJTXzA4MV8wNC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jJwogU0VUIEBAZ2xvYmFsLm1h eF9wcmVwYXJlZF9zdG10X2NvdW50ID0gLTE7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVu Y2F0ZWQgaW5jb3JyZWN0IG1heF9wcmVwYXJlZF9zdG10X2NvdW50IHZhbHVlOiAnLTEnCiBTRUxF Q1QgQEBnbG9iYWwubWF4X3ByZXBhcmVkX3N0bXRfY291bnQ7CiBAQGdsb2JhbC5tYXhfcHJlcGFy ZWRfc3RtdF9jb3VudAogMApAQCAtNTEsNiArNTMsOCBAQCBTRUxFQ1QgQEBnbG9iYWwubWF4X3By ZXBhcmVkX3N0bXRfY291bnQ7CiBAQGdsb2JhbC5tYXhfcHJlcGFyZWRfc3RtdF9jb3VudAogMTA0 ODU3NgogU0VUIEBAZ2xvYmFsLm1heF9wcmVwYXJlZF9zdG10X2NvdW50ID0gLTEwMjQ7CitXYXJu aW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9wcmVwYXJlZF9zdG10 X2NvdW50IHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1QgQEBnbG9iYWwubWF4X3ByZXBhcmVkX3N0bXRf Y291bnQ7CiBAQGdsb2JhbC5tYXhfcHJlcGFyZWRfc3RtdF9jb3VudAogMAoKPT09IG1vZGlmaWVk IGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfcmVsYXlfbG9nX3NpemVfYmFz aWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbWF4X3JlbGF5X2xv Z19zaXplX2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3Fs LXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfcmVsYXlfbG9nX3NpemVfYmFzaWMucmVzdWx0CTIw MDktMDItMjcgMjA6NDM6NDMgKzAwMDAKQEAgLTM4LDYgKzM4LDggQEAgU0VMRUNUIEBAZ2xvYmFs Lm1heF9yZWxheV9sb2dfc2l6ZTsKICdCdWcjIDM0ODc3OiBJbnZhbGlkIFZhbHVlcyBhcmUgY29t aW5nIGluIHZhcmlhYmxlIG9uIGFzc2lnbmluZyB2YWxpZCB2YWx1ZXMnOwogJyMtLS0tLS0tLS0t LS0tLS0tLS0tLUZOX0RZTlZBUlNfMDgyXzA0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMnCiBT RVQgQEBnbG9iYWwubWF4X3JlbGF5X2xvZ19zaXplID0gLTE7CitXYXJuaW5nczoKK1dhcm5pbmcJ MTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9yZWxheV9sb2dfc2l6ZSB2YWx1ZTogJy0xJwog U0VMRUNUIEBAZ2xvYmFsLm1heF9yZWxheV9sb2dfc2l6ZTsKIEBAZ2xvYmFsLm1heF9yZWxheV9s b2dfc2l6ZQogMApAQCAtNTMsNiArNTUsOCBAQCBTRUxFQ1QgQEBnbG9iYWwubWF4X3JlbGF5X2xv Z19zaXplOwogQEBnbG9iYWwubWF4X3JlbGF5X2xvZ19zaXplCiAxMDczNzQxODI0CiBTRVQgQEBn bG9iYWwubWF4X3JlbGF5X2xvZ19zaXplID0gLTEwMjQ7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5 MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9yZWxheV9sb2dfc2l6ZSB2YWx1ZTogJy0xMDI0Jwog U0VMRUNUIEBAZ2xvYmFsLm1heF9yZWxheV9sb2dfc2l6ZTsKIEBAZ2xvYmFsLm1heF9yZWxheV9s b2dfc2l6ZQogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9tYXhfc29ydF9sZW5ndGhfYmFzaWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5 c192YXJzL3IvbWF4X3NvcnRfbGVuZ3RoX2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1 ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhfc29ydF9sZW5ndGhf YmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6NDMgKzAwMDAKQEAgLTcxLDcgKzcxLDcgQEAg U0VMRUNUIEBAc2Vzc2lvbi5tYXhfc29ydF9sZW5ndGg7CiAnIy0tLS0tLS0tLS0tLS0tLS0tLUZO X0RZTlZBUlNfMDg0XzA1LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jJwogU0VUIEBAZ2xvYmFsLm1h eF9zb3J0X2xlbmd0aCA9IC0xMDI0OwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVk IGluY29ycmVjdCBtYXhfc29ydF9sZW5ndGggdmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRydW5j YXRlZCBpbmNvcnJlY3QgbWF4X3NvcnRfbGVuZ3RoIHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1QgQEBn bG9iYWwubWF4X3NvcnRfbGVuZ3RoOwogQEBnbG9iYWwubWF4X3NvcnRfbGVuZ3RoCiA0CkBAIC0x MTEsNyArMTExLDcgQEAgU0VMRUNUIEBAc2Vzc2lvbi5tYXhfc29ydF9sZW5ndGg7CiA4Mzg4NjA4 CiBTRVQgQEBzZXNzaW9uLm1heF9zb3J0X2xlbmd0aCA9IC0xOwogV2FybmluZ3M6Ci1XYXJuaW5n CTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBtYXhfc29ydF9sZW5ndGggdmFsdWU6ICcwJworV2Fy bmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbWF4X3NvcnRfbGVuZ3RoIHZhbHVlOiAnLTEn CiBTRUxFQ1QgQEBzZXNzaW9uLm1heF9zb3J0X2xlbmd0aDsKIEBAc2Vzc2lvbi5tYXhfc29ydF9s ZW5ndGgKIDQKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Iv bWF4X3NwX3JlY3Vyc2lvbl9kZXB0aF9iYXNpYy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3Vp dGUvc3lzX3ZhcnMvci9tYXhfc3BfcmVjdXJzaW9uX2RlcHRoX2Jhc2ljLnJlc3VsdAkyMDA4LTEy LTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9tYXhf c3BfcmVjdXJzaW9uX2RlcHRoX2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIwOjQzOjQzICswMDAw CkBAIC03NCw2ICs3NCw4IEBAIFNFTEVDVCBAQHNlc3Npb24ubWF4X3NwX3JlY3Vyc2lvbl9kZXB0 aDsKIDE1MAogJyMtLS0tLS0tLS0tLS0tLS0tLS1GTl9EWU5WQVJTXzA4NV8wNS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tIycKIFNFVCBAQGdsb2JhbC5tYXhfc3BfcmVjdXJzaW9uX2RlcHRoID0gLTEw MjQ7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9zcF9y ZWN1cnNpb25fZGVwdGggdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5tYXhfc3BfcmVj dXJzaW9uX2RlcHRoOwogQEBnbG9iYWwubWF4X3NwX3JlY3Vyc2lvbl9kZXB0aAogMApAQCAtODQs NiArODYsOCBAQCBTRUxFQ1QgQEBnbG9iYWwubWF4X3NwX3JlY3Vyc2lvbl9kZXB0aDsKIEBAZ2xv YmFsLm1heF9zcF9yZWN1cnNpb25fZGVwdGgKIDI1NQogU0VUIEBAZ2xvYmFsLm1heF9zcF9yZWN1 cnNpb25fZGVwdGggPSAtMTsKK1dhcm5pbmdzOgorV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNv cnJlY3QgbWF4X3NwX3JlY3Vyc2lvbl9kZXB0aCB2YWx1ZTogJy0xJwogU0VMRUNUIEBAZ2xvYmFs Lm1heF9zcF9yZWN1cnNpb25fZGVwdGg7CiBAQGdsb2JhbC5tYXhfc3BfcmVjdXJzaW9uX2RlcHRo CiAwCkBAIC0xMTAsNiArMTE0LDggQEAgU0VMRUNUIEBAc2Vzc2lvbi5tYXhfc3BfcmVjdXJzaW9u X2RlcHRoOwogQEBzZXNzaW9uLm1heF9zcF9yZWN1cnNpb25fZGVwdGgKIDI1NQogU0VUIEBAc2Vz c2lvbi5tYXhfc3BfcmVjdXJzaW9uX2RlcHRoID0gLTE7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5 MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG1heF9zcF9yZWN1cnNpb25fZGVwdGggdmFsdWU6ICctMScK IFNFTEVDVCBAQHNlc3Npb24ubWF4X3NwX3JlY3Vyc2lvbl9kZXB0aDsKIEBAc2Vzc2lvbi5tYXhf c3BfcmVjdXJzaW9uX2RlcHRoCiAwCkBAIC0xMjAsNiArMTI2LDggQEAgU0VMRUNUIEBAc2Vzc2lv bi5tYXhfc3BfcmVjdXJzaW9uX2RlcHRoOwogQEBzZXNzaW9uLm1heF9zcF9yZWN1cnNpb25fZGVw dGgKIDI1NQogU0VUIEBAc2Vzc2lvbi5tYXhfc3BfcmVjdXJzaW9uX2RlcHRoID0gLTAwMTsKK1dh cm5pbmdzOgorV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbWF4X3NwX3JlY3Vyc2lv bl9kZXB0aCB2YWx1ZTogJy0xJwogU0VMRUNUIEBAc2Vzc2lvbi5tYXhfc3BfcmVjdXJzaW9uX2Rl cHRoOwogQEBzZXNzaW9uLm1heF9zcF9yZWN1cnNpb25fZGVwdGgKIDAKCj09PSBtb2RpZmllZCBm aWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbXlpc2FtX2RhdGFfcG9pbnRlcl9zaXpl X2Jhc2ljLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL215aXNhbV9k YXRhX3BvaW50ZXJfc2l6ZV9iYXNpYy5yZXN1bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAwMAor KysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbXlpc2FtX2RhdGFfcG9pbnRlcl9zaXpl X2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIwOjQzOjQzICswMDAwCkBAIC00OCw3ICs0OCw3IEBA IEVSUk9SIEhZMDAwOiBWYXJpYWJsZSAnbXlpc2FtX2RhdGFfcG9pbnQKICcjLS0tLS0tLS0tLS0t LS0tLS0tRk5fRFlOVkFSU18wOTNfMDUtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMnCiBTRVQgQEBn bG9iYWwubXlpc2FtX2RhdGFfcG9pbnRlcl9zaXplID0gLTE7CiBXYXJuaW5nczoKLVdhcm5pbmcJ MTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IG15aXNhbV9kYXRhX3BvaW50ZXJfc2l6ZSB2YWx1ZTog JzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBteWlzYW1fZGF0YV9wb2ludGVy X3NpemUgdmFsdWU6ICctMScKIFNFTEVDVCBAQGdsb2JhbC5teWlzYW1fZGF0YV9wb2ludGVyX3Np emU7CiBAQGdsb2JhbC5teWlzYW1fZGF0YV9wb2ludGVyX3NpemUKIDIKCj09PSBtb2RpZmllZCBm aWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbmV0X2J1ZmZlcl9sZW5ndGhfYmFzaWMu cmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbmV0X2J1ZmZlcl9sZW5n dGhfYmFzaWMucmVzdWx0CTIwMDgtMTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVz dC9zdWl0ZS9zeXNfdmFycy9yL25ldF9idWZmZXJfbGVuZ3RoX2Jhc2ljLnJlc3VsdAkyMDA5LTAy LTI3IDIwOjQzOjQzICswMDAwCkBAIC01MCw3ICs1MCw3IEBAIFNFTEVDVCBAQGdsb2JhbC5uZXRf YnVmZmVyX2xlbmd0aDsKIDEwMjQKIFNFVCBAQGdsb2JhbC5uZXRfYnVmZmVyX2xlbmd0aCA9IC0x MDI0OwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBuZXRfYnVm ZmVyX2xlbmd0aCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBu ZXRfYnVmZmVyX2xlbmd0aCB2YWx1ZTogJy0xMDI0JwogU0VMRUNUIEBAZ2xvYmFsLm5ldF9idWZm ZXJfbGVuZ3RoOwogQEBnbG9iYWwubmV0X2J1ZmZlcl9sZW5ndGgKIDEwMjQKCj09PSBtb2RpZmll ZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbmV0X3JlYWRfdGltZW91dF9iYXNp Yy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9uZXRfcmVhZF90aW1l b3V0X2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci9uZXRfcmVhZF90aW1lb3V0X2Jhc2ljLnJlc3VsdAkyMDA5LTAy LTI3IDIwOjQzOjQzICswMDAwCkBAIC02MSw3ICs2MSw3IEBAIFNFTEVDVCBAQGdsb2JhbC5uZXRf cmVhZF90aW1lb3V0OwogMQogU0VUIEBAZ2xvYmFsLm5ldF9yZWFkX3RpbWVvdXQgPSAtMTAyNDsK IFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgbmV0X3JlYWRfdGlt ZW91dCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBuZXRfcmVh ZF90aW1lb3V0IHZhbHVlOiAnLTEwMjQnCiBTRUxFQ1QgQEBnbG9iYWwubmV0X3JlYWRfdGltZW91 dDsKIEBAZ2xvYmFsLm5ldF9yZWFkX3RpbWVvdXQKIDEKQEAgLTg5LDcgKzg5LDcgQEAgU0VMRUNU IEBAc2Vzc2lvbi5uZXRfcmVhZF90aW1lb3V0OwogMQogU0VUIEBAc2Vzc2lvbi5uZXRfcmVhZF90 aW1lb3V0ID0gLTI7CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IG5ldF9yZWFkX3RpbWVvdXQgdmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNv cnJlY3QgbmV0X3JlYWRfdGltZW91dCB2YWx1ZTogJy0yJwogU0VMRUNUIEBAc2Vzc2lvbi5uZXRf cmVhZF90aW1lb3V0OwogQEBzZXNzaW9uLm5ldF9yZWFkX3RpbWVvdXQKIDEKCj09PSBtb2RpZmll ZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbmV0X3dyaXRlX3RpbWVvdXRfYmFz aWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvbmV0X3dyaXRlX3Rp bWVvdXRfYmFzaWMucmVzdWx0CTIwMDgtMTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwt dGVzdC9zdWl0ZS9zeXNfdmFycy9yL25ldF93cml0ZV90aW1lb3V0X2Jhc2ljLnJlc3VsdAkyMDA5 LTAyLTI3IDIwOjQzOjQzICswMDAwCkBAIC02MSw3ICs2MSw3IEBAIFNFTEVDVCBAQGdsb2JhbC5u ZXRfd3JpdGVfdGltZW91dDsKIDEKIFNFVCBAQGdsb2JhbC5uZXRfd3JpdGVfdGltZW91dCA9IC0x MDI0OwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBuZXRfd3Jp dGVfdGltZW91dCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBu ZXRfd3JpdGVfdGltZW91dCB2YWx1ZTogJy0xMDI0JwogU0VMRUNUIEBAZ2xvYmFsLm5ldF93cml0 ZV90aW1lb3V0OwogQEBnbG9iYWwubmV0X3dyaXRlX3RpbWVvdXQKIDEKQEAgLTg5LDcgKzg5LDcg QEAgU0VMRUNUIEBAc2Vzc2lvbi5uZXRfd3JpdGVfdGltZW91dDsKIDEKIFNFVCBAQHNlc3Npb24u bmV0X3dyaXRlX3RpbWVvdXQgPSAtMjsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRl ZCBpbmNvcnJlY3QgbmV0X3dyaXRlX3RpbWVvdXQgdmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRy dW5jYXRlZCBpbmNvcnJlY3QgbmV0X3dyaXRlX3RpbWVvdXQgdmFsdWU6ICctMicKIFNFTEVDVCBA QHNlc3Npb24ubmV0X3dyaXRlX3RpbWVvdXQ7CiBAQHNlc3Npb24ubmV0X3dyaXRlX3RpbWVvdXQK IDEKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Ivb3B0aW1p emVyX3BydW5lX2xldmVsX2Jhc2ljLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNf dmFycy9yL29wdGltaXplcl9wcnVuZV9sZXZlbF9iYXNpYy5yZXN1bHQJMjAwOC0xMi0xOSAxNTox MjoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Ivb3B0aW1pemVyX3By dW5lX2xldmVsX2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIwOjQzOjQzICswMDAwCkBAIC04MSw2 ICs4MSw4IEBAIEVSUk9SIDQyMDAwOiBJbmNvcnJlY3QgYXJndW1lbnQgdHlwZSB0byAKIFNFVCBA QGdsb2JhbC5vcHRpbWl6ZXJfcHJ1bmVfbGV2ZWwgPSBGRUxTRTsKIEVSUk9SIDQyMDAwOiBJbmNv cnJlY3QgYXJndW1lbnQgdHlwZSB0byB2YXJpYWJsZSAnb3B0aW1pemVyX3BydW5lX2xldmVsJwog U0VUIEBAZ2xvYmFsLm9wdGltaXplcl9wcnVuZV9sZXZlbCA9IC0xMDI0OworV2FybmluZ3M6CitX YXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBvcHRpbWl6ZXJfcHJ1bmVfbGV2ZWwgdmFs dWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5vcHRpbWl6ZXJfcHJ1bmVfbGV2ZWw7CiBAQGds b2JhbC5vcHRpbWl6ZXJfcHJ1bmVfbGV2ZWwKIDAKQEAgLTEwNyw2ICsxMDksOCBAQCBFUlJPUiA0 MjAwMDogSW5jb3JyZWN0IGFyZ3VtZW50IHR5cGUgdG8gCiBTRVQgQEBzZXNzaW9uLm9wdGltaXpl cl9wcnVuZV9sZXZlbCA9ICdPRk4nOwogRVJST1IgNDIwMDA6IEluY29ycmVjdCBhcmd1bWVudCB0 eXBlIHRvIHZhcmlhYmxlICdvcHRpbWl6ZXJfcHJ1bmVfbGV2ZWwnCiBTRVQgQEBzZXNzaW9uLm9w dGltaXplcl9wcnVuZV9sZXZlbCA9IC0yOworV2FybmluZ3M6CitXYXJuaW5nCTEyOTIJVHJ1bmNh dGVkIGluY29ycmVjdCBvcHRpbWl6ZXJfcHJ1bmVfbGV2ZWwgdmFsdWU6ICctMicKIFNFTEVDVCBA QHNlc3Npb24ub3B0aW1pemVyX3BydW5lX2xldmVsOwogQEBzZXNzaW9uLm9wdGltaXplcl9wcnVu ZV9sZXZlbAogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9vcHRpbWl6ZXJfc2VhcmNoX2RlcHRoX2Jhc2ljLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9z dWl0ZS9zeXNfdmFycy9yL29wdGltaXplcl9zZWFyY2hfZGVwdGhfYmFzaWMucmVzdWx0CTIwMDgt MTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL29w dGltaXplcl9zZWFyY2hfZGVwdGhfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6NDM6NDMgKzAw MDAKQEAgLTcyLDYgKzcyLDggQEAgU0VMRUNUIEBAZ2xvYmFsLm9wdGltaXplcl9zZWFyY2hfZGVw dGg7CiBAQGdsb2JhbC5vcHRpbWl6ZXJfc2VhcmNoX2RlcHRoCiA2MwogU0VUIEBAZ2xvYmFsLm9w dGltaXplcl9zZWFyY2hfZGVwdGggPSAtMTsKK1dhcm5pbmdzOgorV2FybmluZwkxMjkyCVRydW5j YXRlZCBpbmNvcnJlY3Qgb3B0aW1pemVyX3NlYXJjaF9kZXB0aCB2YWx1ZTogJy0xJwogU0VMRUNU IEBAZ2xvYmFsLm9wdGltaXplcl9zZWFyY2hfZGVwdGg7CiBAQGdsb2JhbC5vcHRpbWl6ZXJfc2Vh cmNoX2RlcHRoCiAwCkBAIC05OCw2ICsxMDAsOCBAQCBTRUxFQ1QgQEBzZXNzaW9uLm9wdGltaXpl cl9zZWFyY2hfZGVwdGg7CiBAQHNlc3Npb24ub3B0aW1pemVyX3NlYXJjaF9kZXB0aAogNjMKIFNF VCBAQHNlc3Npb24ub3B0aW1pemVyX3NlYXJjaF9kZXB0aCA9IC0yOworV2FybmluZ3M6CitXYXJu aW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBvcHRpbWl6ZXJfc2VhcmNoX2RlcHRoIHZhbHVl OiAnLTInCiBTRUxFQ1QgQEBzZXNzaW9uLm9wdGltaXplcl9zZWFyY2hfZGVwdGg7CiBAQHNlc3Np b24ub3B0aW1pemVyX3NlYXJjaF9kZXB0aAogMAoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci9wcmVsb2FkX2J1ZmZlcl9zaXplX2Jhc2ljLnJlc3VsdCcKLS0t IGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3ByZWxvYWRfYnVmZmVyX3NpemVfYmFzaWMu cmVzdWx0CTIwMDgtMTItMTkgMTU6MTI6MTUgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9z eXNfdmFycy9yL3ByZWxvYWRfYnVmZmVyX3NpemVfYmFzaWMucmVzdWx0CTIwMDktMDItMjcgMjA6 NDM6NDMgKzAwMDAKQEAgLTc3LDcgKzc3LDcgQEAgU0VMRUNUIEBAZ2xvYmFsLnByZWxvYWRfYnVm ZmVyX3NpemU7CiAxMDI0CiBTRVQgQEBnbG9iYWwucHJlbG9hZF9idWZmZXJfc2l6ZSA9IC0xOwog V2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBwcmVsb2FkX2J1ZmZl cl9zaXplIHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IHByZWxv YWRfYnVmZmVyX3NpemUgdmFsdWU6ICctMScKIFNFTEVDVCBAQGdsb2JhbC5wcmVsb2FkX2J1ZmZl cl9zaXplOwogQEBnbG9iYWwucHJlbG9hZF9idWZmZXJfc2l6ZQogMTAyNApAQCAtMTExLDcgKzEx MSw3IEBAIFNFTEVDVCBAQHNlc3Npb24ucHJlbG9hZF9idWZmZXJfc2l6ZTsKIDEwMjQKIFNFVCBA QHNlc3Npb24ucHJlbG9hZF9idWZmZXJfc2l6ZSA9IC0yOwogV2FybmluZ3M6Ci1XYXJuaW5nCTEy OTIJVHJ1bmNhdGVkIGluY29ycmVjdCBwcmVsb2FkX2J1ZmZlcl9zaXplIHZhbHVlOiAnMCcKK1dh cm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IHByZWxvYWRfYnVmZmVyX3NpemUgdmFsdWU6 ICctMicKIFNFTEVDVCBAQHNlc3Npb24ucHJlbG9hZF9idWZmZXJfc2l6ZTsKIEBAc2Vzc2lvbi5w cmVsb2FkX2J1ZmZlcl9zaXplCiAxMDI0Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9z dWl0ZS9zeXNfdmFycy9yL3JlYWRfYnVmZmVyX3NpemVfYmFzaWMucmVzdWx0JwotLS0gYS9teXNx bC10ZXN0L3N1aXRlL3N5c192YXJzL3IvcmVhZF9idWZmZXJfc2l6ZV9iYXNpYy5yZXN1bHQJMjAw OS0wMS0yMiAxMDoxNDoxNiArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Iv cmVhZF9idWZmZXJfc2l6ZV9iYXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApA QCAtODEsNyArODEsNyBAQCBTRUxFQ1QgQEBnbG9iYWwucmVhZF9idWZmZXJfc2l6ZT0gODIwMCBP CiAxCiBTRVQgQEBnbG9iYWwucmVhZF9idWZmZXJfc2l6ZSA9IC0xMDI0OwogV2FybmluZ3M6Ci1X YXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCByZWFkX2J1ZmZlcl9zaXplIHZhbHVlOiAn MCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IHJlYWRfYnVmZmVyX3NpemUgdmFs dWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC5yZWFkX2J1ZmZlcl9zaXplPSA4MjAwIE9SIEBA Z2xvYmFsLnJlYWRfYnVmZmVyX3NpemU9IDgyMjggOwogQEBnbG9iYWwucmVhZF9idWZmZXJfc2l6 ZT0gODIwMCBPUiBAQGdsb2JhbC5yZWFkX2J1ZmZlcl9zaXplPSA4MjI4CiAxCkBAIC0xMDksNyAr MTA5LDcgQEAgU0VMRUNUIEBAc2Vzc2lvbi5yZWFkX2J1ZmZlcl9zaXplPSA4MjAwIAogMQogU0VU IEBAc2Vzc2lvbi5yZWFkX2J1ZmZlcl9zaXplID0gLTI7CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5 MglUcnVuY2F0ZWQgaW5jb3JyZWN0IHJlYWRfYnVmZmVyX3NpemUgdmFsdWU6ICcwJworV2Fybmlu ZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3QgcmVhZF9idWZmZXJfc2l6ZSB2YWx1ZTogJy0yJwog U0VMRUNUIEBAc2Vzc2lvbi5yZWFkX2J1ZmZlcl9zaXplPSA4MjAwIE9SIEBAc2Vzc2lvbi5yZWFk X2J1ZmZlcl9zaXplPSA4MjI4IDsKIEBAc2Vzc2lvbi5yZWFkX2J1ZmZlcl9zaXplPSA4MjAwIE9S IEBAc2Vzc2lvbi5yZWFkX2J1ZmZlcl9zaXplPSA4MjI4CiAxCgo9PT0gbW9kaWZpZWQgZmlsZSAn bXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3JlYWRfcm5kX2J1ZmZlcl9zaXplX2Jhc2ljLnJl c3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3JlYWRfcm5kX2J1ZmZlcl9z aXplX2Jhc2ljLnJlc3VsdAkyMDA5LTAxLTIyIDEwOjE0OjE2ICswMDAwCisrKyBiL215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci9yZWFkX3JuZF9idWZmZXJfc2l6ZV9iYXNpYy5yZXN1bHQJMjAw OS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtODMsNyArODMsNyBAQCBTRUxFQ1QgQEBnbG9iYWwu cmVhZF9ybmRfYnVmZmVyX3NpemU9IDgyCiAxCiBTRVQgQEBnbG9iYWwucmVhZF9ybmRfYnVmZmVy X3NpemUgPSAtMTAyNDsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJl Y3QgcmVhZF9ybmRfYnVmZmVyX3NpemUgdmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRydW5jYXRl ZCBpbmNvcnJlY3QgcmVhZF9ybmRfYnVmZmVyX3NpemUgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBA QGdsb2JhbC5yZWFkX3JuZF9idWZmZXJfc2l6ZT0gODIwMCBPUiBAQGdsb2JhbC5yZWFkX3JuZF9i dWZmZXJfc2l6ZT0gODIyODsKIEBAZ2xvYmFsLnJlYWRfcm5kX2J1ZmZlcl9zaXplPSA4MjAwIE9S IEBAZ2xvYmFsLnJlYWRfcm5kX2J1ZmZlcl9zaXplPSA4MjI4CiAxCkBAIC0xMTEsNyArMTExLDcg QEAgU0VMRUNUIEBAc2Vzc2lvbi5yZWFkX3JuZF9idWZmZXJfc2l6ZT0gOAogMQogU0VUIEBAc2Vz c2lvbi5yZWFkX3JuZF9idWZmZXJfc2l6ZSA9IC0yOwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJ VHJ1bmNhdGVkIGluY29ycmVjdCByZWFkX3JuZF9idWZmZXJfc2l6ZSB2YWx1ZTogJzAnCitXYXJu aW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCByZWFkX3JuZF9idWZmZXJfc2l6ZSB2YWx1ZTog Jy0yJwogU0VMRUNUIEBAc2Vzc2lvbi5yZWFkX3JuZF9idWZmZXJfc2l6ZT0gODIwMCBPUiBAQHNl c3Npb24ucmVhZF9ybmRfYnVmZmVyX3NpemU9IDgyMjg7CiBAQHNlc3Npb24ucmVhZF9ybmRfYnVm ZmVyX3NpemU9IDgyMDAgT1IgQEBzZXNzaW9uLnJlYWRfcm5kX2J1ZmZlcl9zaXplPSA4MjI4CiAx Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3NsYXZlX25l dF90aW1lb3V0X2Jhc2ljLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9y L3NsYXZlX25ldF90aW1lb3V0X2Jhc2ljLnJlc3VsdAkyMDA5LTAxLTI5IDE2OjU5OjQ2ICswMDAw CisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci9zbGF2ZV9uZXRfdGltZW91dF9iYXNp Yy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtNTgsMTMgKzU4LDEzIEBAIEVS Uk9SIEhZMDAwOiBWYXJpYWJsZSAnc2xhdmVfbmV0X3RpbWVvdXQKICcjLS0tLS0tLS0tLS0tLS0t LS0tRk5fRFlOVkFSU18xNDZfMDUtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMnCiBTRVQgQEBnbG9i YWwuc2xhdmVfbmV0X3RpbWVvdXQgPSAtMTsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5j YXRlZCBpbmNvcnJlY3Qgc2xhdmVfbmV0X3RpbWVvdXQgdmFsdWU6ICcwJworV2FybmluZwkxMjky CVRydW5jYXRlZCBpbmNvcnJlY3Qgc2xhdmVfbmV0X3RpbWVvdXQgdmFsdWU6ICctMScKIFNFTEVD VCBAQGdsb2JhbC5zbGF2ZV9uZXRfdGltZW91dDsKIEBAZ2xvYmFsLnNsYXZlX25ldF90aW1lb3V0 CiAxCiBTRVQgQEBnbG9iYWwuc2xhdmVfbmV0X3RpbWVvdXQgPSAtMjE0NzQ4MzY0ODsKIFdhcm5p bmdzOgotV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3Qgc2xhdmVfbmV0X3RpbWVvdXQg dmFsdWU6ICcwJworV2FybmluZwkxMjkyCVRydW5jYXRlZCBpbmNvcnJlY3Qgc2xhdmVfbmV0X3Rp bWVvdXQgdmFsdWU6ICctMjE0NzQ4MzY0OCcKIFNFTEVDVCBAQGdsb2JhbC5zbGF2ZV9uZXRfdGlt ZW91dDsKIEBAZ2xvYmFsLnNsYXZlX25ldF90aW1lb3V0CiAxCgo9PT0gbW9kaWZpZWQgZmlsZSAn bXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3Nsb3dfbGF1bmNoX3RpbWVfYmFzaWMucmVzdWx0 JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Ivc2xvd19sYXVuY2hfdGltZV9iYXNp Yy5yZXN1bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRl L3N5c192YXJzL3Ivc2xvd19sYXVuY2hfdGltZV9iYXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0 Mzo0MyArMDAwMApAQCAtMzYsNiArMzYsOCBAQCBTRUxFQ1QgQEBnbG9iYWwuc2xvd19sYXVuY2hf dGltZTsKIDY1NTM2CiAnIy0tLS0tLS0tLS0tLS0tLS0tLS0tRk5fRFlOVkFSU18xNTBfMDQtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tIycKIFNFVCBAQGdsb2JhbC5zbG93X2xhdW5jaF90aW1lID0g LTE7CitXYXJuaW5nczoKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IHNsb3dfbGF1 bmNoX3RpbWUgdmFsdWU6ICctMScKIFNFTEVDVCBAQGdsb2JhbC5zbG93X2xhdW5jaF90aW1lOwog QEBnbG9iYWwuc2xvd19sYXVuY2hfdGltZQogMApAQCAtNTcsNiArNTksOCBAQCBTRUxFQ1QgQEBn bG9iYWwuc2xvd19sYXVuY2hfdGltZTsKIEBAZ2xvYmFsLnNsb3dfbGF1bmNoX3RpbWUKIDMxNTM2 MDAwCiBTRVQgQEBnbG9iYWwuc2xvd19sYXVuY2hfdGltZSA9IC0xMDI0OworV2FybmluZ3M6CitX YXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCBzbG93X2xhdW5jaF90aW1lIHZhbHVlOiAn LTEwMjQnCiBTRUxFQ1QgQEBnbG9iYWwuc2xvd19sYXVuY2hfdGltZTsKIEBAZ2xvYmFsLnNsb3df bGF1bmNoX3RpbWUKIDAKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192 YXJzL3IvdGFibGVfZGVmaW5pdGlvbl9jYWNoZV9iYXNpYy5yZXN1bHQnCi0tLSBhL215c3FsLXRl c3Qvc3VpdGUvc3lzX3ZhcnMvci90YWJsZV9kZWZpbml0aW9uX2NhY2hlX2Jhc2ljLnJlc3VsdAky MDA4LTEyLTE5IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci90YWJsZV9kZWZpbml0aW9uX2NhY2hlX2Jhc2ljLnJlc3VsdAkyMDA5LTAyLTI3IDIwOjQzOjQz ICswMDAwCkBAIC00NSw3ICs0NSw3IEBAIFNFTEVDVCBAQGdsb2JhbC50YWJsZV9kZWZpbml0aW9u X2NhY2hlOwogMjU2CiBTRVQgQEBnbG9iYWwudGFibGVfZGVmaW5pdGlvbl9jYWNoZSA9IC0xMDI0 OwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCB0YWJsZV9kZWZp bml0aW9uX2NhY2hlIHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IHRhYmxlX2RlZmluaXRpb25fY2FjaGUgdmFsdWU6ICctMTAyNCcKIFNFTEVDVCBAQGdsb2JhbC50 YWJsZV9kZWZpbml0aW9uX2NhY2hlOwogQEBnbG9iYWwudGFibGVfZGVmaW5pdGlvbl9jYWNoZQog MjU2Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3RhYmxl X2xvY2tfd2FpdF90aW1lb3V0X2Jhc2ljLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9z eXNfdmFycy9yL3RhYmxlX2xvY2tfd2FpdF90aW1lb3V0X2Jhc2ljLnJlc3VsdAkyMDA4LTEyLTE5 IDE1OjEyOjE1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvci90YWJsZV9s b2NrX3dhaXRfdGltZW91dF9iYXNpYy5yZXN1bHQJMjAwOS0wMi0yNyAyMDo0Mzo0MyArMDAwMApA QCAtMzcsMTMgKzM3LDEzIEBAIFNFTEVDVCBAQGdsb2JhbC50YWJsZV9sb2NrX3dhaXRfdGltZW91 dCAKICcjLS0tLS0tLS0tLS0tLS0tLS0tLS1GTl9EWU5WQVJTXzAwMV8wNC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0jJwogU0VUIEBAZ2xvYmFsLnRhYmxlX2xvY2tfd2FpdF90aW1lb3V0ID0gLTE7 CiBXYXJuaW5nczoKLVdhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0IHRhYmxlX2xvY2tf d2FpdF90aW1lb3V0IHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IHRhYmxlX2xvY2tfd2FpdF90aW1lb3V0IHZhbHVlOiAnLTEnCiBTRVQgQEBnbG9iYWwudGFibGVf bG9ja193YWl0X3RpbWVvdXQ9IDEwMDAwMDAwMDAwMDsKIFdhcm5pbmdzOgogV2FybmluZwkxMjky CVRydW5jYXRlZCBpbmNvcnJlY3QgdGFibGVfbG9ja193YWl0X3RpbWVvdXQgdmFsdWU6ICcxMDAw MDAwMDAwMDAnCiBTRVQgQEBnbG9iYWwudGFibGVfbG9ja193YWl0X3RpbWVvdXQ9IC0xMDI0Owog V2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCB0YWJsZV9sb2NrX3dh aXRfdGltZW91dCB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCB0 YWJsZV9sb2NrX3dhaXRfdGltZW91dCB2YWx1ZTogJy0xMDI0JwogU0VUIEBAZ2xvYmFsLnRhYmxl X2xvY2tfd2FpdF90aW1lb3V0PSAwOwogV2FybmluZ3M6CiBXYXJuaW5nCTEyOTIJVHJ1bmNhdGVk IGluY29ycmVjdCB0YWJsZV9sb2NrX3dhaXRfdGltZW91dCB2YWx1ZTogJzAnCgo9PT0gbW9kaWZp ZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL3RhYmxlX29wZW5fY2FjaGVfYmFz aWMucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvdGFibGVfb3Blbl9j YWNoZV9iYXNpYy5yZXN1bHQJMjAwOC0xMi0xOSAxNToxMjoxNSArMDAwMAorKysgYi9teXNxbC10 ZXN0L3N1aXRlL3N5c192YXJzL3IvdGFibGVfb3Blbl9jYWNoZV9iYXNpYy5yZXN1bHQJMjAwOS0w Mi0yNyAyMDo0Mzo0MyArMDAwMApAQCAtMzksNyArMzksNyBAQCBTRUxFQ1QgQEBnbG9iYWwudGFi bGVfb3Blbl9jYWNoZSA7CiAnIy0tLS0tLS0tLS0tLS0tLS0tLS0tRk5fRFlOVkFSU18wMDFfMDQt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIycKIFNFVCBAQGdsb2JhbC50YWJsZV9vcGVuX2NhY2hl ICA9IC0xOwogV2FybmluZ3M6Ci1XYXJuaW5nCTEyOTIJVHJ1bmNhdGVkIGluY29ycmVjdCB0YWJs ZV9vcGVuX2NhY2hlIHZhbHVlOiAnMCcKK1dhcm5pbmcJMTI5MglUcnVuY2F0ZWQgaW5jb3JyZWN0 IHRhYmxlX29wZW5fY2FjaGUgdmFsdWU6ICctMScKIFNFTEVDVCBAQGdsb2JhbC50YWJsZV9vcGVu X2NhY2hlICA7CiBAQGdsb2JhbC50YWJsZV9vcGVuX2NhY2hlCiAxCkBAIC01MSw3ICs1MSw3IEBA IFNFTEVDVCBAQGdsb2JhbC50YWJsZV9vcGVuX2NhY2hlIDsKIDUyNDI4OAogU0VUIEBAZ2xvYmFs LnRhYmxlX29wZW5fY2FjaGUgPSAtMTAyNDsKIFdhcm5pbmdzOgotV2FybmluZwkxMjkyCVRydW5j YXRlZCBpbmNvcnJlY3QgdGFibGVfb3Blbl9jYWNoZSB2YWx1ZTogJzAnCitXYXJuaW5nCTEyOTIJ VHJ1bmNhdGVkIGluY29ycmVjdCB0YWJsZV9vcGVuX2NhY2hlIHZhbHVlOiAnLTEwMjQnCiBTRUxF Q1QgQEBnbG9iYWwudGFibGVfb3Blbl9jYWNoZSA7CiBAQGdsb2JhbC50YWJsZV9vcGVuX2NhY2hl CiAxCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC90L2xvY2sudGVzdCcKLS0tIGEvbXlz cWwtdGVzdC90L2xvY2sudGVzdAkyMDA3LTA4LTAyIDA5OjU5OjAyICswMDAwCisrKyBiL215c3Fs LXRlc3QvdC9sb2NrLnRlc3QJMjAwOS0wMy0wNSAxNDoyMjozMyArMDAwMApAQCAtMjE0LDQgKzIx NCwzNCBAQCBjcmVhdGUgdmlldyB2X2J1ZzU3MTkgYXMgc2VsZWN0ICogZnJvbSB0CiAtLWVjaG8K IGRyb3AgdGFibGUgdDIsIHQzOwogCistLWVjaG8gIworLS1lY2hvICMgQnVnIzM5ODQzIERFTEVU RSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gdGFibGUgaW4gc3VicXVlcnkgaW4gd2hlcmUgY2xh dXNlCistLWVjaG8gIworLS1kaXNhYmxlX3dhcm5pbmdzCitEUk9QIFRBQkxFIElGIEVYSVNUUyB0 MSx0MjsKKy0tZW5hYmxlX3dhcm5pbmdzCitDUkVBVEUgVEFCTEUgdDEgKAordGFibGUxX3Jvd2lk IFNNQUxMSU5UIE5PVCBOVUxMCispOworQ1JFQVRFIFRBQkxFIHQyICgKK3RhYmxlMl9yb3dpZCBT TUFMTElOVCBOT1QgTlVMTAorKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMSk7CitJTlNFUlQg SU5UTyB0MiBWQUxVRVMgKDEpOworTE9DSyBUQUJMRVMgdDEgV1JJVEUsIHQyIFJFQUQ7CistLWVj aG8gIyBTdWItc2VsZWN0IHNob3VsZCBub3QgdHJ5IHRvIGFxdWlyZSBhIHdyaXRlIGxvY2suCitE RUxFVEUgRlJPTSB0MSAKK1dIRVJFIEVYSVNUUyAKKyggCitTRUxFQ1QgJ3gnIAorRlJPTSB0Mgor V0hFUkUgdDEudGFibGUxX3Jvd2lkID0gdDIudGFibGUyX3Jvd2lkCispIDsKKy0tZWNobyAjIFdo aWxlIGltcGxlbWVudGluZyB0aGUgcGF0Y2ggd2UgZGlkbid0IGJyZWFrIG9sZCBiZWhhdmlvcjsK Ky0tZWNobyAjIFRoZSBmb2xsb3dpbmcgc3ViLXNlbGVjdCBzaG91bGQgc3RpbGwgcmVxdWlyZXMg YSB3cml0ZSBsb2NrOgorLS1lcnJvciBFUl9UQUJMRV9OT1RfTE9DS0VEX0ZPUl9XUklURQorU0VM RUNUICogRlJPTSB0MSBXSEVSRSAxIElOIChTRUxFQ1QgKiBGUk9NIHQyIEZPUiBVUERBVEUpOwor VU5MT0NLIFRBQkxFUzsKK0RST1AgVEFCTEUgdDEsdDI7CisKIC0tZWNobyBFbmQgb2YgNS4xIHRl c3RzLgoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3QvdC9tZXJnZS50ZXN0JwotLS0gYS9t eXNxbC10ZXN0L3QvbWVyZ2UudGVzdAkyMDA5LTAyLTEyIDEwOjI1OjEyICswMDAwCisrKyBiL215 c3FsLXRlc3QvdC9tZXJnZS50ZXN0CTIwMDktMDMtMDQgMDk6MTg6MDcgKzAwMDAKQEAgLTE0OTYs NCArMTQ5NiwyMiBAQCBVTkxPQ0sgVEFCTEVTOwogLS1lY2hvICMgZHJvcCB0aGUgY3JlYXRlZCB0 YWJsZXMKIERST1AgVEFCTEUgdDEsIHQyLCB0MzsKIAorIworIyBCdWcgIzQxMzA1IHNlcnZlciBj cmFzaGVzIHdoZW4gaW5zZXJ0aW5nIGR1cGxpY2F0ZSByb3cgaW50byBhIG1lcmdlIHRhYmxlCisj CistLWVjaG8gIyBpbnNlcnQgZHVwbGljYXRlIHZhbHVlIGluIGNoaWxkIHRhYmxlIHdoaWxlIG1l cmdlIHRhYmxlIGRvZXNuJ3QgaGF2ZSBrZXkKK2NyZWF0ZSB0YWJsZSB0MSAoCisgICAgICAgIGNv bDEgaW50KDEwKSwKKyAgICAgICAgcHJpbWFyeSBrZXkgKGNvbDEpCispIEVOR0lORT1NeUlTQU0g REVGQVVMVCBDSEFSU0VUPWxhdGluMTsKKworQ1JFQVRFIFRBQkxFIG0xICgKKyAgY29sMSBpbnQo MTApIE5PVCBOVUxMCispIEVOR0lORT1NUkdfTXlJU0FNIERFRkFVTFQgQ0hBUlNFVD1sYXRpbjEg SU5TRVJUX01FVEhPRD1MQVNUIFVOSU9OPSh0MSk7CisKK2luc2VydCBpbnRvIG0xIChjb2wxKSB2 YWx1ZXMgKDEpOworLS1lcnJvciBFUl9EVVBfRU5UUlkKK2luc2VydCBpbnRvIG0xIChjb2wxKSB2 YWx1ZXMgKDEpOworCitkcm9wIHRhYmxlIG0xLCB0MTsKIC0tZWNobyBFbmQgb2YgNS4xIHRlc3Rz Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC90L3N0cmljdC50ZXN0JwotLS0gYS9teXNx bC10ZXN0L3Qvc3RyaWN0LnRlc3QJMjAwOC0xMi0wMSAwNDoxNzo1MiArMDAwMAorKysgYi9teXNx bC10ZXN0L3Qvc3RyaWN0LnRlc3QJMjAwOS0wMy0wNSAxMToyMDowMSArMDAwMApAQCAtMTE2Mywx MSArMTE2MywxMSBAQCBzZXQgQEBzcWxfbW9kZT0gQG9yZ19tb2RlOwogIyBCdWcgIzEzOTM0IFNp bGVudCB0cnVuY2F0aW9uIG9mIHRhYmxlIGNvbW1lbnRzCiAjCiBzZXQgQEBzcWxfbW9kZT0ndHJh ZGl0aW9uYWwnOwotLS1lcnJvciAxMTA1CistLWVycm9yIEVSX1RPT19MT05HX1RBQkxFX0NPTU1F TlQKIGNyZWF0ZSB0YWJsZSB0MSAoaSBpbnQpCiBjb21tZW50ICcxMjM0NTY3ODkqMTIzNDU2Nzg5 KjEyMzQ1Njc4OSoxMjM0NTY3ODkqMTIzNDU2Nzg5KgogICAgICAgICAgMTIzNDU2Nzg5KjEyMzQ1 Njc4OSoxMjM0NTY3ODkqMTIzNDU2Nzg5KjEyMzQ1Njc4OSonOwotLS1lcnJvciAxMTA1CistLWVy cm9yIEVSX1RPT19MT05HX0ZJRUxEX0NPTU1FTlQKIGNyZWF0ZSB0YWJsZSB0MSAoCiBpIGludCBj b21tZW50CiAnMTIzNDU2Nzg5KjEyMzQ1Njc4OSoxMjM0NTY3ODkqMTIzNDU2Nzg5KgoKPT09IG1v ZGlmaWVkIGZpbGUgJ215c3FsLXRlc3QvdC92YXJpYWJsZXMudGVzdCcKLS0tIGEvbXlzcWwtdGVz dC90L3ZhcmlhYmxlcy50ZXN0CTIwMDktMDMtMDUgMTE6MzQ6MDIgKzAwMDAKKysrIGIvbXlzcWwt dGVzdC90L3ZhcmlhYmxlcy50ZXN0CTIwMDktMDMtMDYgMTU6MTE6MzQgKzAwMDAKQEAgLTExMjMs OCArMTEyMyw0NCBAQCBTRVQgQEBnbG9iYWwudGhyZWFkX3N0YWNrPSA3OwogIwogCiAjCisjIEJ1 ZyAjNDA2NTcgLSBhc3NlcnRpb24gd2l0aCBvdXQgb2YgcmFuZ2UgdmFyaWFibGVzIGFuZCB0cmFk aXRpb25hbCBzcWxfbW9kZQorIworCitTRUxFQ1QgQEBnbG9iYWwuZXhwaXJlX2xvZ3NfZGF5cyBJ TlRPIEBvbGRfZWxkOworCitTRVQgR0xPQkFMIGV4cGlyZV9sb2dzX2RheXMgPSAtMTsKKy0tZWNo byBuZWVkcyB0byd2ZSBiZWVuIGFkanVzdGVkICgwKQorU0VMRUNUIEBAZ2xvYmFsLmV4cGlyZV9s b2dzX2RheXM7CisKK1NFVCBHTE9CQUwgZXhwaXJlX2xvZ3NfZGF5cyA9IDExOworU0VUIEBvbGRf bW9kZT1AQHNxbF9tb2RlOworU0VUIFNFU1NJT04gc3FsX21vZGUgPSAnVFJBRElUSU9OQUwnOwor LS1lcnJvciBFUl9XUk9OR19WQUxVRV9GT1JfVkFSCitTRVQgR0xPQkFMIGV4cGlyZV9sb2dzX2Rh eXMgPSAxMDA7CistLWVjaG8gbmVlZHMgdG8gYmUgdW5jaGFuZ2VkICgxMSkKK1NFTEVDVCBAQGds b2JhbC5leHBpcmVfbG9nc19kYXlzOworU0VUIFNFU1NJT04gc3FsX21vZGUgPSBAb2xkX21vZGU7 CisKK1NFVCBHTE9CQUwgZXhwaXJlX2xvZ3NfZGF5cyA9IDEwMDsKKy0tZWNobyBuZWVkcyB0byd2 ZSBiZWVuIGFkanVzdGVkICg5OSkKK1NFTEVDVCBAQGdsb2JhbC5leHBpcmVfbG9nc19kYXlzOwor CitTRVQgR0xPQkFMIGV4cGlyZV9sb2dzX2RheXMgPSAxMTsKK1NFVCBHTE9CQUwgZXhwaXJlX2xv Z3NfZGF5cyA9IDk5OworLS1lY2hvIG5lZWRzIHRvIHBhc3Mgd2l0aCBubyB3YXJuaW5ncyAoOTkp CitTRUxFQ1QgQEBnbG9iYWwuZXhwaXJlX2xvZ3NfZGF5czsKKworIyBjbGVhbnVwCitTRVQgR0xP QkFMIGV4cGlyZV9sb2dzX2RheXMgPSBAb2xkX2VsZDsKKworCisjCiAjIEJ1ZyM0MTAzMCBXcm9u ZyBtZXRhIGRhdGEgKGluY29ycmVjdCBmaWVsZGxlbikKICMKKwogLS1lbmFibGVfbWV0YWRhdGEK IHNlbGVjdCBAQHN0b3JhZ2VfZW5naW5lOwogLS1kaXNhYmxlX21ldGFkYXRhCisKKworLS1lY2hv IEVuZCBvZiA1LjEgdGVzdHMKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvbG9nLmNjJwotLS0gYS9z cWwvbG9nLmNjCTIwMDktMDEtMjMgMTI6MjI6MDUgKzAwMDAKKysrIGIvc3FsL2xvZy5jYwkyMDA5 LTAzLTA1IDA5OjQ4OjAzICswMDAwCkBAIC00NjUwLDEwICs0NjUwLDE0IEBAIGJvb2wgZmx1c2hf ZXJyb3JfbG9nKCkKICAgICAgIHVjaGFyIGJ1ZltJT19TSVpFXTsKIAogICAgICAgZnJlb3Blbihl cnJfdGVtcCwiYSsiLHN0ZGVycik7CisgICAgICBzZXRidWYoc3RkZXJyLCBOVUxMKTsKICAgICAg ICh2b2lkKSBteV9kZWxldGUoZXJyX3JlbmFtZWQsIE1ZRigwKSk7CiAgICAgICBteV9yZW5hbWUo bG9nX2Vycm9yX2ZpbGUsZXJyX3JlbmFtZWQsTVlGKDApKTsKICAgICAgIGlmIChmcmVvcGVuKGxv Z19lcnJvcl9maWxlLCJhKyIsc3Rkb3V0KSkKKyAgICAgIHsKICAgICAgICAgZnJlb3Blbihsb2df ZXJyb3JfZmlsZSwiYSsiLHN0ZGVycik7CisgICAgICAgIHNldGJ1ZihzdGRlcnIsIE5VTEwpOwor ICAgICAgfQogCiAgICAgICBpZiAoKGZkID0gbXlfb3BlbihlcnJfdGVtcCwgT19SRE9OTFksIE1Z RigwKSkpID49IDApCiAgICAgICB7CkBAIC00NjY5LDcgKzQ2NzMsMTAgQEAgYm9vbCBmbHVzaF9l cnJvcl9sb2coKQogI2Vsc2UKICAgIG15X3JlbmFtZShsb2dfZXJyb3JfZmlsZSxlcnJfcmVuYW1l ZCxNWUYoMCkpOwogICAgaWYgKGZyZW9wZW4obG9nX2Vycm9yX2ZpbGUsImErIixzdGRvdXQpKQor ICAgewogICAgICBmcmVvcGVuKGxvZ19lcnJvcl9maWxlLCJhKyIsc3RkZXJyKTsKKyAgICAgc2V0 YnVmKHN0ZGVyciwgTlVMTCk7CisgICB9CiAgICBlbHNlCiAgICAgIHJlc3VsdD0gMTsKICNlbmRp ZgoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9teXNxbGQuY2MnCi0tLSBhL3NxbC9teXNxbGQuY2MJ MjAwOS0wMi0yNSAwODo0OTowMiArMDAwMAorKysgYi9zcWwvbXlzcWxkLmNjCTIwMDktMDMtMDUg MDk6NDg6MDMgKzAwMDAKQEAgLTM3MDMsNyArMzcwMywxMCBAQCBzdGF0aWMgaW50IGluaXRfc2Vy dmVyX2NvbXBvbmVudHMoKQogI2lmbmRlZiBFTUJFRERFRF9MSUJSQVJZCiAgICAgICBpZiAoZnJl b3Blbihsb2dfZXJyb3JfZmlsZSwgImErIiwgc3Rkb3V0KSkKICNlbmRpZgorICAgICAgewogICAg ICAgICBmcmVvcGVuKGxvZ19lcnJvcl9maWxlLCAiYSsiLCBzdGRlcnIpOworICAgICAgICBzZXRi dWYoc3RkZXJyLCBOVUxMKTsKKyAgICAgIH0KICAgICB9CiAgIH0KIApAQCAtNDMzMSw2ICs0MzM0 LDcgQEAgd2UgZm9yY2Ugc2VydmVyIGlkIHRvIDIsIGJ1dCB0aGlzIE15U1FMIAogICB7CiAgICAg ZnJlb3Blbihsb2dfZXJyb3JfZmlsZSwiYSsiLHN0ZG91dCk7CiAgICAgZnJlb3Blbihsb2dfZXJy b3JfZmlsZSwiYSsiLHN0ZGVycik7CisgICAgc2V0YnVmKHN0ZGVyciwgTlVMTCk7CiAgICAgRnJl ZUNvbnNvbGUoKTsJCQkJLy8gUmVtb3ZlIHdpbmRvdwogICB9CiAjZW5kaWYKCj09PSBtb2RpZmll ZCBmaWxlICdzcWwvc2V0X3Zhci5jYycKLS0tIGEvc3FsL3NldF92YXIuY2MJMjAwOS0wMy0wNSAx ODozOTowMiArMDAwMAorKysgYi9zcWwvc2V0X3Zhci5jYwkyMDA5LTAzLTA2IDE1OjExOjM0ICsw MDAwCkBAIC0xMzUsOCArMTM1LDYgQEAgc3RhdGljIGludCBjaGVja19tYXhfZGVsYXllZF90aHJl YWRzKFRIRAogc3RhdGljIHZvaWQgZml4X3RoZF9tZW1fcm9vdChUSEQgKnRoZCwgZW51bV92YXJf dHlwZSB0eXBlKTsKIHN0YXRpYyB2b2lkIGZpeF90cmFuc19tZW1fcm9vdChUSEQgKnRoZCwgZW51 bV92YXJfdHlwZSB0eXBlKTsKIHN0YXRpYyB2b2lkIGZpeF9zZXJ2ZXJfaWQoVEhEICp0aGQsIGVu dW1fdmFyX3R5cGUgdHlwZSk7Ci1zdGF0aWMgdWxvbmdsb25nIGZpeF91bnNpZ25lZChUSEQgKiwg dWxvbmdsb25nLCBjb25zdCBzdHJ1Y3QgbXlfb3B0aW9uICopOwotc3RhdGljIGJvb2wgZ2V0X3Vu c2lnbmVkKFRIRCAqdGhkLCBzZXRfdmFyICp2YXIpOwogYm9vbCB0aHJvd19ib3VuZHNfd2Fybmlu ZyhUSEQgKnRoZCwgYm9vbCBmaXhlZCwgYm9vbCB1bnNpZ25kLAogICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBjaGFyICpuYW1lLCBsb25nbG9uZyB2YWwpOwogc3RhdGljIEtFWV9DQUNI RSAqY3JlYXRlX2tleV9jYWNoZShjb25zdCBjaGFyICpuYW1lLCB1aW50IGxlbmd0aCk7CkBAIC0x MzcxLDYgKzEzNjksMTkgQEAgc3RhdGljIHZvaWQgZml4X3NlcnZlcl9pZChUSEQgKnRoZCwgZW51 bQogfQogCiAKKy8qKgorICBUaHJvdyB3YXJuaW5nIChlcnJvciBpbiBTVFJJQ1QgbW9kZSkgaWYg dmFsdWUgZm9yIHZhcmlhYmxlIG5lZWRlZCBib3VuZGluZy4KKyAgT25seSBjYWxsIGZyb20gY2hl Y2soKSwgbm90IHVwZGF0ZSgpLCBiZWNhdXNlIGFuIGVycm9yIGluIHVwZGF0ZSgpIHdvdWxkIGJl CisgIGJhZCBtb2pvLiBQbHVnLWluIGludGVyZmFjZSBhbHNvIHVzZXMgdGhpcy4KKworICBAcGFy YW0gdGhkICAgICAgdGhyZWFkIGhhbmRsZQorICBAcGFyYW0gZml4ZWQgICAgZGlkIHdlIGhhdmUg dG8gY29ycmVjdCB0aGUgdmFsdWU/ICh0aHJvdyB3YXJuL2VyciBpZiBzbykKKyAgQHBhcmFtIHVu c2lnbmQgIGlzIHZhbHVlJ3MgdHlwZSB1bnNpZ25lZD8KKyAgQHBhcmFtIG5hbWUgICAgIHZhcmlh YmxlJ3MgbmFtZQorICBAcGFyYW0gdmFsICAgICAgdmFyaWFibGUncyB2YWx1ZQorCisgIEByZXR2 YWwgICAgICAgICBUUlVFIG9uIGVycm9yLCBGQUxTRSBvdGhlcndpc2UgKHdhcm5pbmcgb3IgT0sp CisgKi8KIGJvb2wgdGhyb3dfYm91bmRzX3dhcm5pbmcoVEhEICp0aGQsIGJvb2wgZml4ZWQsIGJv b2wgdW5zaWduZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbmFtZSwg bG9uZ2xvbmcgdmFsKQogewpAQCAtMTM5NiwyNiArMTQwNywxMjcgQEAgYm9vbCB0aHJvd19ib3Vu ZHNfd2FybmluZyhUSEQgKnRoZCwgYm9vbAogICByZXR1cm4gRkFMU0U7CiB9CiAKLXN0YXRpYyB1 bG9uZ2xvbmcgZml4X3Vuc2lnbmVkKFRIRCAqdGhkLCB1bG9uZ2xvbmcgbnVtLAorCisvKioKKyAg Y2hlY2sgYW4gdW5zaWduZWQgdXNlci1zdXBwbGllZCB2YWx1ZSBmb3IgYSBzeXN0ZW12YXJpYWJs ZSBhZ2FpbnN0IGJvdW5kcy4KKworICBUT0RPOiBUaGlzIGlzIGEgd3JhcHBlciBmdW5jdGlvbiB0 byBjYWxsIGNsaXBwaW5nIGZyb20gd2l0aGluIGFuIHVwZGF0ZSgpCisgICAgICAgIGZ1bmN0aW9u LiAgQ2FsbGluZyBib3VuZHMgZnJvbSB3aXRoaW4gdXBkYXRlKCkgaXMgZmFpciBnYW1lIGluIHRo ZW9yeSwKKyAgICAgICAgYnV0IHdlIGNhbiBvbmx5IHNlbmQgd2FybmluZ3MgZnJvbSBpbiB0aGVy ZSwgbm90IGVycm9ycywgYW5kIGJlc2lkZXMsCisgICAgICAgIGl0IHZpb2xhdGVzIG91ciBtb2Rl bCBvZiBzZXBhcmF0aW5nIGNoZWNrIGZyb20gdXBkYXRlIHBoYXNlLgorICAgICAgICBUbyBhdm9p ZCBicmVha2luZyBvdXQgb2YgdGhlIHNlcnZlciB3aXRoIGFuIEFTU0VSVCgpIGluIHN0cmljdCBt b2RlLAorICAgICAgICB3ZSBwcmV0ZW5kIHdlJ3JlIG5vdCBpbiBzdHJpY3QgbW9kZSB3aGVuIHdl IGdvIHRocm91Z2ggaGVyZS4gQnVnIzQzMjMzCisgICAgICAgIHdhcyBvcGVuZWQgdG8gcmVtaW5k IHVzIHRvIHJlcGxhY2UgdGhpcyBrbHVkZ2Ugd2l0aCBUaGUgUmlnaHQgVGhpbmcsCisgICAgICAg IHdoaWNoIG9mIGNvdXJzZSBpcyB0byBkbyB0aGUgY2hlY2sgaW4gdGhlIGFjdHVhbCBjaGVjayBw aGFzZSwgYW5kIHRoZW4KKyAgICAgICAgdGhyb3cgYW4gZXJyb3Igb3Igd2FybmluZyBhY2NvcmRp bmdseS4KKworICBAcGFyYW0gdGhkICAgICAgICAgICAgIHRocmVhZCBoYW5kbGUKKyAgQHBhcmFt IG51bSAgICAgICAgICAgICB0aGUgdmFsdWUgdG8gbGltaXQKKyAgQHBhcmFtIG9wdGlvbl9saW1p dHMgICB0aGUgYm91bmRzLXJlY29yZCwgb3IgTlVMTCBpZiBub25lCisgKi8KK3N0YXRpYyB2b2lk IGJvdW5kX3Vuc2lnbmVkKFRIRCAqdGhkLCB1bG9uZ2xvbmcgKm51bSwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBteV9vcHRpb24gKm9wdGlvbl9saW1pdHMpCiB7 Ci0gIG15X2Jvb2wgZml4ZWQ9IEZBTFNFOwotICB1bG9uZ2xvbmcgb3V0PSBnZXRvcHRfdWxsX2xp bWl0X3ZhbHVlKG51bSwgb3B0aW9uX2xpbWl0cywgJmZpeGVkKTsKKyAgaWYgKG9wdGlvbl9saW1p dHMpCisgIHsKKyAgICBteV9ib29sICAgZml4ZWQgICAgID0gRkFMU0U7CisgICAgdWxvbmdsb25n IHVuYWRqdXN0ZWQ9ICpudW07CiAKLSAgdGhyb3dfYm91bmRzX3dhcm5pbmcodGhkLCBmaXhlZCwg VFJVRSwgb3B0aW9uX2xpbWl0cy0+bmFtZSwgKGxvbmdsb25nKSBudW0pOwotICByZXR1cm4gb3V0 OworICAgICpudW09IGdldG9wdF91bGxfbGltaXRfdmFsdWUodW5hZGp1c3RlZCwgb3B0aW9uX2xp bWl0cywgJmZpeGVkKTsKKworICAgIGlmIChmaXhlZCkKKyAgICB7CisgICAgICB1bG9uZyBzc209 IHRoZC0+dmFyaWFibGVzLnNxbF9tb2RlOworICAgICAgdGhkLT52YXJpYWJsZXMuc3FsX21vZGUm PSB+TU9ERV9TVFJJQ1RfQUxMX1RBQkxFUzsKKyAgICAgIHRocm93X2JvdW5kc193YXJuaW5nKHRo ZCwgZml4ZWQsIFRSVUUsIG9wdGlvbl9saW1pdHMtPm5hbWUsIHVuYWRqdXN0ZWQpOworICAgICAg dGhkLT52YXJpYWJsZXMuc3FsX21vZGU9IHNzbTsKKyAgICB9CisgIH0KIH0KIAotc3RhdGljIGJv b2wgZ2V0X3Vuc2lnbmVkKFRIRCAqdGhkLCBzZXRfdmFyICp2YXIpCi17CisKKy8qKgorICBHZXQg dW5zaWduZWQgc3lzdGVtLXZhcmlhYmxlLgorICBOZWdhdGl2ZSB2YWx1ZSBkb2VzIG5vdCB3cmFw IGFyb3VuZCwgYnV0IGJlY29tZXMgemVyby4KKyAgQ2hlY2sgdXNlci1zdXBwbGllZCB2YWx1ZSBm b3IgYSBzeXN0ZW12YXJpYWJsZSBhZ2FpbnN0IGJvdW5kcy4KKyAgSWYgd2UgbmVlZGVkIHRvIGFk anVzdCB0aGUgdmFsdWUsIHRocm93IGEgd2FybmluZyBvciBlcnJvciBkZXBlbmRpbmcKKyAgb24g U1FMLW1vZGUuCisKKyAgQHBhcmFtIHRoZCAgICAgICAgICAgICB0aHJlYWQgaGFuZGxlCisgIEBw YXJhbSB2YXIgICAgICAgICAgICAgdGhlIHN5c3RlbS12YXJpYWJsZSB0byBnZXQKKyAgQHBhcmFt IHVzZXJfbWF4ICAgICAgICBhIGxpbWl0IGdpdmVuIHdpdGggLS1tYXhpbXVtLXZhcmlhYmxlLW5h bWU9Li4uIG9yIDAKKyAgQHBhcmFtIHZhcl90eXBlICAgICAgICBmdW5jdGlvbiB3aWxsIGJvdW5k IG9uIHN5c3RlbXMgd2hlcmUgbmVjZXNzYXJ5LgorCisgIEByZXR2YWwgICAgICAgICAgICAgICAg VFJVRSBvbiBlcnJvciwgRkFMU0Ugb3RoZXJ3aXNlICh3YXJuaW5nIG9yIE9LKQorICovCitzdGF0 aWMgYm9vbCBnZXRfdW5zaWduZWQoVEhEICp0aGQsIHNldF92YXIgKnZhciwgdWxvbmdsb25nIHVz ZXJfbWF4LAorICAgICAgICAgICAgICAgICAgICAgICAgIHVsb25nIHZhcl90eXBlKQoreworICBp bnQgICAgICAgICAgICAgICAgICAgICB3YXJuaW5ncz0gMDsKKyAgdWxvbmdsb25nICAgICAgICAg ICAgICAgdW5hZGp1c3RlZDsKKyAgY29uc3Qgc3RydWN0IG15X29wdGlvbiAqbGltaXRzPSB2YXIt PnZhci0+b3B0aW9uX2xpbWl0czsKKyAgc3RydWN0IG15X29wdGlvbiAgICAgICAgZmFsbGJhY2s7 CisKKyAgLyogZ2V0X3Vuc2lnbmVkKCkgKi8KICAgaWYgKHZhci0+dmFsdWUtPnVuc2lnbmVkX2Zs YWcpCiAgICAgdmFyLT5zYXZlX3Jlc3VsdC51bG9uZ2xvbmdfdmFsdWU9ICh1bG9uZ2xvbmcpIHZh ci0+dmFsdWUtPnZhbF9pbnQoKTsKICAgZWxzZQogICB7CiAgICAgbG9uZ2xvbmcgdj0gdmFyLT52 YWx1ZS0+dmFsX2ludCgpOwogICAgIHZhci0+c2F2ZV9yZXN1bHQudWxvbmdsb25nX3ZhbHVlPSAo dWxvbmdsb25nKSAoKHYgPCAwKSA/IDAgOiB2KTsKKyAgICBpZiAodiA8IDApCisgICAgeworICAg ICAgd2FybmluZ3MrKzsKKyAgICAgIGlmICh0aHJvd19ib3VuZHNfd2FybmluZyh0aGQsIFRSVUUs IEZBTFNFLCB2YXItPnZhci0+bmFtZSwgdikpCisgICAgICAgIHJldHVybiBUUlVFOyAgLyogd2Fy bmluZyB3YXMgcHJvbW90ZWQgdG8gZXJyb3IsIGdpdmUgdXAgKi8KKyAgICB9CiAgIH0KLSAgcmV0 dXJuIDA7CisKKyAgdW5hZGp1c3RlZD0gdmFyLT5zYXZlX3Jlc3VsdC51bG9uZ2xvbmdfdmFsdWU7 CisKKyAgLyogbWF4LCBpZiBhbnkgKi8KKworICBpZiAoKHVzZXJfbWF4ID4gMCkgJiYgKHVuYWRq dXN0ZWQgPiB1c2VyX21heCkpCisgIHsKKyAgICB2YXItPnNhdmVfcmVzdWx0LnVsb25nbG9uZ192 YWx1ZT0gdXNlcl9tYXg7CisKKyAgICBpZiAoKHdhcm5pbmdzID09IDApICYmIHRocm93X2JvdW5k c193YXJuaW5nKHRoZCwgVFJVRSwgVFJVRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHZhci0+dmFyLT5uYW1lLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvbmdsb25nKSB1bmFkanVzdGVkKSkKKyAgICAg IHJldHVybiBUUlVFOworCisgICAgd2FybmluZ3MrKzsKKyAgfQorCisgIC8qCisgICAgaWYgdGhl IHN5c3ZhciBkb2Vzbid0IGhhdmUgYSBwcm9wZXIgYm91bmRzIHJlY29yZCBidXQgdGhlIGNoZWNr CisgICAgZnVuY3Rpb24gd291bGQgbGlrZSBib3VuZGluZyB0byBVTE9ORyB3aGVyZSBpdHMgc2l6 ZSBkaWZmZXJzIGZyb20KKyAgICB0aGF0IG9mIFVMT05HTE9ORywgd2UgbWFrZSB1cCBhIGJvZ3Vz IGxpbWl0cyByZWNvcmQgaGVyZSBhbmQgbGV0CisgICAgdGhlIHVzdWFsIHN1c3BlY3RzIGhhbmRs ZSB0aGUgYWN0dWFsIGxpbWl0aW5nLgorICAqLworCisgIGlmICghbGltaXRzICYmIHZhcl90eXBl ICE9IEdFVF9VTEwpCisgIHsKKyAgICBiemVybygmZmFsbGJhY2ssIHNpemVvZihmYWxsYmFjaykp OworICAgIGZhbGxiYWNrLnZhcl90eXBlPSB2YXJfdHlwZTsKKyAgICBsaW1pdHM9ICZmYWxsYmFj azsKKyAgfQorCisgIC8qIGZpeF91bnNpZ25lZCgpICovCisgIGlmIChsaW1pdHMpCisgIHsKKyAg ICBteV9ib29sICAgZml4ZWQ7CisKKyAgICB2YXItPnNhdmVfcmVzdWx0LnVsb25nbG9uZ192YWx1 ZT0gZ2V0b3B0X3VsbF9saW1pdF92YWx1ZSh2YXItPnNhdmVfcmVzdWx0LgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsb25nbG9u Z192YWx1ZSwKKwkJCQkJCQkgICAgIGxpbWl0cywgJmZpeGVkKTsKKworICAgIGlmICgod2Fybmlu Z3MgPT0gMCkgJiYgdGhyb3dfYm91bmRzX3dhcm5pbmcodGhkLCBmaXhlZCwgVFJVRSwgbGltaXRz LT5uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KGxvbmdsb25nKSB1bmFkanVzdGVkKSkKKyAgICAgIHJldHVybiBUUlVFOworICB9CisKKyAgcmV0 dXJuIEZBTFNFOwogfQogCiAKQEAgLTE0MjksMjkgKzE1NDEsMTMgQEAgc3lzX3Zhcl9sb25nX3B0 cihzeXNfdmFyX2NoYWluICpjaGFpbiwgYwogCiBib29sIHN5c192YXJfbG9uZ19wdHJfZ2xvYmFs OjpjaGVjayhUSEQgKnRoZCwgc2V0X3ZhciAqdmFyKQogewotICByZXR1cm4gZ2V0X3Vuc2lnbmVk KHRoZCwgdmFyKTsKKyAgcmV0dXJuIGdldF91bnNpZ25lZCh0aGQsIHZhciwgMCwgR0VUX1VMT05H KTsKIH0KIAogYm9vbCBzeXNfdmFyX2xvbmdfcHRyX2dsb2JhbDo6dXBkYXRlKFRIRCAqdGhkLCBz ZXRfdmFyICp2YXIpCiB7Ci0gIHVsb25nbG9uZyB0bXA9IHZhci0+c2F2ZV9yZXN1bHQudWxvbmds b25nX3ZhbHVlOwogICBwdGhyZWFkX211dGV4X2xvY2soZ3VhcmQpOwotICBpZiAob3B0aW9uX2xp bWl0cykKLSAgICAqdmFsdWU9ICh1bG9uZykgZml4X3Vuc2lnbmVkKHRoZCwgdG1wLCBvcHRpb25f bGltaXRzKTsKLSAgZWxzZQotICB7Ci0jaWYgU0laRU9GX0xPTkcgPCBTSVpFT0ZfTE9OR19MT05H Ci0gICAgLyogQXZvaWQgb3ZlcmZsb3dzIG9uIDMyIGJpdCBzeXN0ZW1zICovCi0gICAgaWYgKHRt cCA+IFVMT05HX01BWCkKLSAgICB7Ci0gICAgICB0bXA9IFVMT05HX01BWDsKLSAgICAgIHRocm93 X2JvdW5kc193YXJuaW5nKHRoZCwgVFJVRSwgVFJVRSwgbmFtZSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgIChsb25nbG9uZykgdmFyLT5zYXZlX3Jlc3VsdC51bG9uZ2xvbmdfdmFsdWUpOwot ICAgIH0KLSNlbmRpZgotICAgICp2YWx1ZT0gKHVsb25nKSB0bXA7Ci0gIH0KLQorICAqdmFsdWU9 ICh1bG9uZykgdmFyLT5zYXZlX3Jlc3VsdC51bG9uZ2xvbmdfdmFsdWU7CiAgIHB0aHJlYWRfbXV0 ZXhfdW5sb2NrKGd1YXJkKTsKICAgcmV0dXJuIDA7CiB9CkBAIC0xNDcxLDEwICsxNTY3LDggQEAg Ym9vbCBzeXNfdmFyX3Vsb25nbG9uZ19wdHI6OnVwZGF0ZShUSEQgKgogewogICB1bG9uZ2xvbmcg dG1wPSB2YXItPnNhdmVfcmVzdWx0LnVsb25nbG9uZ192YWx1ZTsKICAgcHRocmVhZF9tdXRleF9s b2NrKCZMT0NLX2dsb2JhbF9zeXN0ZW1fdmFyaWFibGVzKTsKLSAgaWYgKG9wdGlvbl9saW1pdHMp Ci0gICAgKnZhbHVlPSAodWxvbmdsb25nKSBmaXhfdW5zaWduZWQodGhkLCB0bXAsIG9wdGlvbl9s aW1pdHMpOwotICBlbHNlCi0gICAgKnZhbHVlPSAodWxvbmdsb25nKSB0bXA7CisgIGJvdW5kX3Vu c2lnbmVkKHRoZCwgJnRtcCwgb3B0aW9uX2xpbWl0cyk7CisgICp2YWx1ZT0gKHVsb25nbG9uZykg dG1wOwogICBwdGhyZWFkX211dGV4X3VubG9jaygmTE9DS19nbG9iYWxfc3lzdGVtX3ZhcmlhYmxl cyk7CiAgIHJldHVybiAwOwogfQpAQCAtMTUyNCwzNiArMTYxOCwxOCBAQCB1Y2hhciAqc3lzX3Zh cl9lbnVtX2NvbnN0Ojp2YWx1ZV9wdHIoVEhECiAKIGJvb2wgc3lzX3Zhcl90aGRfdWxvbmc6OmNo ZWNrKFRIRCAqdGhkLCBzZXRfdmFyICp2YXIpCiB7Ci0gIHJldHVybiAoZ2V0X3Vuc2lnbmVkKHRo ZCwgdmFyKSB8fAotICAgICAgICAgIChjaGVja19mdW5jICYmICgqY2hlY2tfZnVuYykodGhkLCB2 YXIpKSk7CisgIGlmIChnZXRfdW5zaWduZWQodGhkLCB2YXIsIG1heF9zeXN0ZW1fdmFyaWFibGVz LipvZmZzZXQsIEdFVF9VTE9ORykpCisgICAgcmV0dXJuIFRSVUU7CisgIERCVUdfQVNTRVJUKHZh ci0+c2F2ZV9yZXN1bHQudWxvbmdsb25nX3ZhbHVlIDw9IFVMT05HX01BWCk7CisgIHJldHVybiAo KGNoZWNrX2Z1bmMgJiYgKCpjaGVja19mdW5jKSh0aGQsIHZhcikpKTsKIH0KIAogYm9vbCBzeXNf dmFyX3RoZF91bG9uZzo6dXBkYXRlKFRIRCAqdGhkLCBzZXRfdmFyICp2YXIpCiB7Ci0gIHVsb25n bG9uZyB0bXA9IHZhci0+c2F2ZV9yZXN1bHQudWxvbmdsb25nX3ZhbHVlOwotCi0gIC8qIERvbid0 IHVzZSBiaWdnZXIgdmFsdWUgdGhhbiBnaXZlbiB3aXRoIC0tbWF4aW11bS12YXJpYWJsZS1uYW1l PS4uICovCi0gIGlmICh0bXAgPiBtYXhfc3lzdGVtX3ZhcmlhYmxlcy4qb2Zmc2V0KQotICB7Ci0g ICAgdGhyb3dfYm91bmRzX3dhcm5pbmcodGhkLCBUUlVFLCBUUlVFLCBuYW1lLCAobG9uZ2xvbmcp IHRtcCk7Ci0gICAgdG1wPSBtYXhfc3lzdGVtX3ZhcmlhYmxlcy4qb2Zmc2V0OwotICB9Ci0KLSAg aWYgKG9wdGlvbl9saW1pdHMpCi0gICAgdG1wPSBmaXhfdW5zaWduZWQodGhkLCB0bXAsIG9wdGlv bl9saW1pdHMpOwotI2lmIFNJWkVPRl9MT05HIDwgU0laRU9GX0xPTkdfTE9ORwotICBlbHNlIGlm ICh0bXAgPiBVTE9OR19NQVgpCi0gIHsKLSAgICB0bXA9IFVMT05HX01BWDsKLSAgICB0aHJvd19i b3VuZHNfd2FybmluZyh0aGQsIFRSVUUsIFRSVUUsIG5hbWUsIChsb25nbG9uZykgdmFyLT5zYXZl X3Jlc3VsdC51bG9uZ2xvbmdfdmFsdWUpOwotICB9Ci0jZW5kaWYKLQotICBEQlVHX0FTU0VSVCh0 bXAgPD0gVUxPTkdfTUFYKTsKICAgaWYgKHZhci0+dHlwZSA9PSBPUFRfR0xPQkFMKQotICAgIGds b2JhbF9zeXN0ZW1fdmFyaWFibGVzLipvZmZzZXQ9ICh1bG9uZykgdG1wOworICAgIGdsb2JhbF9z eXN0ZW1fdmFyaWFibGVzLipvZmZzZXQ9ICh1bG9uZykgdmFyLT5zYXZlX3Jlc3VsdC51bG9uZ2xv bmdfdmFsdWU7CiAgIGVsc2UKLSAgICB0aGQtPnZhcmlhYmxlcy4qb2Zmc2V0PSAodWxvbmcpIHRt cDsKKyAgICB0aGQtPnZhcmlhYmxlcy4qb2Zmc2V0PSAodWxvbmcpIHZhci0+c2F2ZV9yZXN1bHQu dWxvbmdsb25nX3ZhbHVlOwogCiAgIHJldHVybiAwOwogfQpAQCAtMTU5MSw4ICsxNjY3LDggQEAg Ym9vbCBzeXNfdmFyX3RoZF9oYV9yb3dzOjp1cGRhdGUoVEhEICp0aAogICBpZiAoKGhhX3Jvd3Mp IHRtcCA+IG1heF9zeXN0ZW1fdmFyaWFibGVzLipvZmZzZXQpCiAgICAgdG1wPSBtYXhfc3lzdGVt X3ZhcmlhYmxlcy4qb2Zmc2V0OwogCi0gIGlmIChvcHRpb25fbGltaXRzKQotICAgIHRtcD0gKGhh X3Jvd3MpIGZpeF91bnNpZ25lZCh0aGQsIHRtcCwgb3B0aW9uX2xpbWl0cyk7CisgIGJvdW5kX3Vu c2lnbmVkKHRoZCwgJnRtcCwgb3B0aW9uX2xpbWl0cyk7CisKICAgaWYgKHZhci0+dHlwZSA9PSBP UFRfR0xPQkFMKQogICB7CiAgICAgLyogTG9jayBpcyBuZWVkZWQgdG8gbWFrZSB0aGluZ3Mgc2Fm ZSBvbiAzMiBiaXQgc3lzdGVtcyAqLwpAQCAtMTYzMywyNyArMTcwOSwyMSBAQCB1Y2hhciAqc3lz X3Zhcl90aGRfaGFfcm93czo6dmFsdWVfcHRyKFRICiAKIGJvb2wgc3lzX3Zhcl90aGRfdWxvbmds b25nOjpjaGVjayhUSEQgKnRoZCwgc2V0X3ZhciAqdmFyKQogewotICByZXR1cm4gZ2V0X3Vuc2ln bmVkKHRoZCwgdmFyKTsKKyAgcmV0dXJuIGdldF91bnNpZ25lZCh0aGQsIHZhciwgbWF4X3N5c3Rl bV92YXJpYWJsZXMuKm9mZnNldCwgR0VUX1VMTCk7CiB9CiAKIGJvb2wgc3lzX3Zhcl90aGRfdWxv bmdsb25nOjp1cGRhdGUoVEhEICp0aGQsICBzZXRfdmFyICp2YXIpCiB7Ci0gIHVsb25nbG9uZyB0 bXA9IHZhci0+c2F2ZV9yZXN1bHQudWxvbmdsb25nX3ZhbHVlOwotCi0gIGlmICh0bXAgPiBtYXhf c3lzdGVtX3ZhcmlhYmxlcy4qb2Zmc2V0KQotICAgIHRtcD0gbWF4X3N5c3RlbV92YXJpYWJsZXMu Km9mZnNldDsKLQotICBpZiAob3B0aW9uX2xpbWl0cykKLSAgICB0bXA9IGZpeF91bnNpZ25lZCh0 aGQsIHRtcCwgb3B0aW9uX2xpbWl0cyk7CiAgIGlmICh2YXItPnR5cGUgPT0gT1BUX0dMT0JBTCkK ICAgewogICAgIC8qIExvY2sgaXMgbmVlZGVkIHRvIG1ha2UgdGhpbmdzIHNhZmUgb24gMzIgYml0 IHN5c3RlbXMgKi8KICAgICBwdGhyZWFkX211dGV4X2xvY2soJkxPQ0tfZ2xvYmFsX3N5c3RlbV92 YXJpYWJsZXMpOwotICAgIGdsb2JhbF9zeXN0ZW1fdmFyaWFibGVzLipvZmZzZXQ9ICh1bG9uZ2xv bmcpIHRtcDsKKyAgICBnbG9iYWxfc3lzdGVtX3ZhcmlhYmxlcy4qb2Zmc2V0PSAodWxvbmdsb25n KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhci0+c2F2ZV9yZXN1bHQu dWxvbmdsb25nX3ZhbHVlOwogICAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZMT0NLX2dsb2JhbF9z eXN0ZW1fdmFyaWFibGVzKTsKICAgfQogICBlbHNlCi0gICAgdGhkLT52YXJpYWJsZXMuKm9mZnNl dD0gKHVsb25nbG9uZykgdG1wOworICAgIHRoZC0+dmFyaWFibGVzLipvZmZzZXQ9ICh1bG9uZ2xv bmcpIHZhci0+c2F2ZV9yZXN1bHQudWxvbmdsb25nX3ZhbHVlOwogICByZXR1cm4gMDsKIH0KIApA QCAtMjI4NSwxMCArMjM1NSwxMCBAQCBib29sIHN5c192YXJfa2V5X2J1ZmZlcl9zaXplOjp1cGRh dGUoVEhECiAgICAgZ290byBlbmQ7CiAgIH0KIAotICBrZXlfY2FjaGUtPnBhcmFtX2J1ZmZfc2l6 ZT0KLSAgICAodWxvbmdsb25nKSBmaXhfdW5zaWduZWQodGhkLCB0bXAsIG9wdGlvbl9saW1pdHMp OworICBib3VuZF91bnNpZ25lZCh0aGQsICZ0bXAsIG9wdGlvbl9saW1pdHMpOworICBrZXlfY2Fj aGUtPnBhcmFtX2J1ZmZfc2l6ZT0gKHVsb25nbG9uZykgdG1wOwogCi0gIC8qIElmIGtleSBjYWNo ZSBkaWRuJ3QgZXhpc3RlZCBpbml0aWFsaXplIGl0LCBlbHNlIHJlc2l6ZSBpdCAqLworICAvKiBJ ZiBrZXkgY2FjaGUgZGlkbid0IGV4aXN0IGluaXRpYWxpemUgaXQsIGVsc2UgcmVzaXplIGl0ICov CiAgIGtleV9jYWNoZS0+aW5faW5pdD0gMTsKICAgcHRocmVhZF9tdXRleF91bmxvY2soJkxPQ0tf Z2xvYmFsX3N5c3RlbV92YXJpYWJsZXMpOwogCkBAIC0yMzE0LDcgKzIzODQsNyBAQCBlbmQ6CiAq LwogYm9vbCBzeXNfdmFyX2tleV9jYWNoZV9sb25nOjp1cGRhdGUoVEhEICp0aGQsIHNldF92YXIg KnZhcikKIHsKLSAgdWxvbmcgdG1wPSAodWxvbmcpIHZhci0+dmFsdWUtPnZhbF9pbnQoKTsKKyAg dWxvbmdsb25nIHRtcD0gdmFyLT52YWx1ZS0+dmFsX2ludCgpOwogICBMRVhfU1RSSU5HICpiYXNl X25hbWU9ICZ2YXItPmJhc2U7CiAgIGJvb2wgZXJyb3I9IDA7CiAKQEAgLTIzMzksOCArMjQwOSw4 IEBAIGJvb2wgc3lzX3Zhcl9rZXlfY2FjaGVfbG9uZzo6dXBkYXRlKFRIRCAKICAgaWYgKGtleV9j YWNoZS0+aW5faW5pdCkKICAgICBnb3RvIGVuZDsKIAotICAqKCh1bG9uZyopICgoKGNoYXIqKSBr ZXlfY2FjaGUpICsgb2Zmc2V0KSk9Ci0gICAgKHVsb25nKSBmaXhfdW5zaWduZWQodGhkLCB0bXAs IG9wdGlvbl9saW1pdHMpOworICBib3VuZF91bnNpZ25lZCh0aGQsICZ0bXAsIG9wdGlvbl9saW1p dHMpOworICAqKCh1bG9uZyopICgoKGNoYXIqKSBrZXlfY2FjaGUpICsgb2Zmc2V0KSk9ICh1bG9u ZykgdG1wOwogCiAgIC8qCiAgICAgRG9uJ3QgY3JlYXRlIGEgbmV3IGtleSBjYWNoZSBpZiBpdCBk aWRuJ3QgZXhpc3QKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvc2hhcmUvZXJybXNnLnR4dCcKLS0t IGEvc3FsL3NoYXJlL2Vycm1zZy50eHQJMjAwOS0wMi0yNiAxNDowMTo1NyArMDAwMAorKysgYi9z cWwvc2hhcmUvZXJybXNnLnR4dAkyMDA5LTAzLTA1IDExOjIwOjAxICswMDAwCkBAIC02MTY5LDMg KzYxNjksMTEgQEAgRVJfQ09ORkxJQ1RfRk5fUEFSU0VfRVJST1IKICAgICAgICAgZW5nICJFcnJv ciBpbiBwYXJzaW5nIGNvbmZsaWN0IGZ1bmN0aW9uLiBNZXNzYWdlOiAlLS42NHMiCiBFUl9FWENF UFRJT05TX1dSSVRFX0VSUk9SCiAgICAgICAgIGVuZyAiV3JpdGUgdG8gZXhjZXB0aW9ucyB0YWJs ZSBmYWlsZWQuIE1lc3NhZ2U6ICUtLjEyOHMiIgorCitFUl9UT09fTE9OR19UQUJMRV9DT01NRU5U CisgIGVuZyAiQ29tbWVudCBmb3IgdGFibGUgJyUtLjY0cycgaXMgdG9vIGxvbmcgKG1heCA9ICVs dSkiCisgIHBvciAiQ29tZW5077+9byBwYXJhIGEgdGFiZWxhICclLS42NHMnIO+/vW9uZ28gZGVt YWlzIChtYXggPSAlbHUpIgorCitFUl9UT09fTE9OR19GSUVMRF9DT01NRU5UCisgIGVuZyAiQ29t bWVudCBmb3IgZmllbGQgJyUtLjY0cycgaXMgdG9vIGxvbmcgKG1heCA9ICVsdSkiCisgIHBvciAi Q29tZW5077+9byBwYXJhIG8gY2FtcG8gJyUtLjY0cycg77+9b25nbyBkZW1haXMgKG1heCA9ICVs dSkiCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3FsL3NxbF9jYWNoZS5jYycKLS0tIGEvc3FsL3NxbF9j YWNoZS5jYwkyMDA5LTAyLTE5IDIxOjA5OjM1ICswMDAwCisrKyBiL3NxbC9zcWxfY2FjaGUuY2MJ MjAwOS0wMy0wNiAxMDoxOTowMiArMDAwMApAQCAtNDE4LDYgKzQxOCw0MyBAQCBUWVBFTElCIHF1 ZXJ5X2NhY2hlX3R5cGVfdHlwZWxpYj0KICAgYXJyYXlfZWxlbWVudHMocXVlcnlfY2FjaGVfdHlw ZV9uYW1lcyktMSwiIiwgcXVlcnlfY2FjaGVfdHlwZV9uYW1lcywgTlVMTAogfTsKIAorCisvKioK KyAgSGVscGVyIGZ1bmN0aW9uIGZvciBkZXRlcm1pbmUgaWYgYSBTRUxFQ1Qgc3RhdGVtZW50IGhh cyBhIFNRTF9OT19DQUNIRQorICBkaXJlY3RpdmUuCisgIAorICBAcGFyYW0gc3FsIEEgcG9pbnRl ciB0byB0aGUgZmlyc3Qgd2hpdGUgc3BhY2UgY2hhcmFjdGVyIGFmdGVyIFNFTEVDVAorICAKKyAg QHJldHVybgorICAgQHJldHZhbCBUUlVFIFRoZSBjaGFyYWN0ZXIgc3RyaW5nIGNvbnRhaW5zIFNR TF9OT19DQUNIRQorICAgQHJldHZhbCBGQUxTRSBObyBkaXJlY3RpdmUgZm91bmQuCisqLworIAor c3RhdGljIGJvb2wgaGFzX25vX2NhY2hlX2RpcmVjdGl2ZShjaGFyICpzcWwpCit7CisgIGludCBp PTA7CisgIHdoaWxlIChzcWxbaV0gPT0gJyAnKQorICAgICsraTsKKyAgICAKKyAgaWYgKG15X3Rv dXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2ldKSAgICA9PSAnUycgJiYKKyAgICAgIG15 X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krMV0pICA9PSAnUScgJiYKKyAgICAg IG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krMl0pICA9PSAnTCcgJiYKKyAg ICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krM10pICA9PSAnXycgJiYK KyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krNF0pICA9PSAnTicg JiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krNV0pICA9PSAn TycgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krNl0pICA9 PSAnXycgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2krN10p ICA9PSAnQycgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3FsW2kr OF0pICA9PSAnQScgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywgc3Fs W2krOV0pICA9PSAnQycgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5mbywg c3FsW2krMTBdKSA9PSAnSCcgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRfaW5m bywgc3FsW2krMTFdKSA9PSAnRScgJiYKKyAgICAgIG15X3RvdXBwZXIoc3lzdGVtX2NoYXJzZXRf aW5mbywgc3FsW2krMTJdKSA9PSAnICcpCisgICAgcmV0dXJuIFRSVUU7CisgIAorICByZXR1cm4g RkFMU0U7ICAgICAgIAorfQorCisKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogIFF1ZXJ5X2NhY2hl X2Jsb2NrX3RhYmxlIG1ldGhvZChzKQogKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0xMjMzLDYg KzEyNzAsMTYgQEAgUXVlcnlfY2FjaGU6OnNlbmRfcmVzdWx0X3RvX2NsaWVudChUSEQgKgogICAg ICAgREJVR19QUklOVCgicWNhY2hlIiwgKCJUaGUgc3RhdGVtZW50IGlzIG5vdCBhIFNFTEVDVDsg Tm90IGNhY2hlZCIpKTsKICAgICAgIGdvdG8gZXJyOwogICAgIH0KKyAgICAKKyAgICBpZiAocXVl cnlfbGVuZ3RoID4gMjAgJiYgaGFzX25vX2NhY2hlX2RpcmVjdGl2ZSgmc3FsW2krNl0pKQorICAg IHsKKyAgICAgIC8qCisgICAgICAgIFdlIGRvIG5vdCBpbmNyZWFzZSAncmVmdXNlZCcgc3RhdGlz dGljcyBoZXJlIHNpbmNlIGl0IHdpbGwgYmUgZG9uZQorICAgICAgICBsYXRlciB3aGVuIHRoZSBx dWVyeSBpcyBwYXJzZWQuCisgICAgICAqLworICAgICAgREJVR19QUklOVCgicWNhY2hlIiwgKCJU aGUgc3RhdGVtZW50IGhhcyBhIFNRTF9OT19DQUNIRSBkaXJlY3RpdmUiKSk7CisgICAgICBnb3Rv IGVycjsKKyAgICB9CiAgIH0KIAogICBTVFJVQ1RfTE9DSygmc3RydWN0dXJlX2d1YXJkX211dGV4 KTsKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvc3FsX2xleC5jYycKLS0tIGEvc3FsL3NxbF9sZXgu Y2MJMjAwOS0wMS0wNSAxNjoxMDoyMCArMDAwMAorKysgYi9zcWwvc3FsX2xleC5jYwkyMDA5LTAz LTA1IDE0OjIyOjMzICswMDAwCkBAIC0xNTU5LDYgKzE1NTksNyBAQCB2b2lkIHN0X3NlbGVjdF9s ZXg6OmluaXRfcXVlcnkoKQogICBleGNsdWRlX2Zyb21fdGFibGVfdW5pcXVlX3Rlc3Q9IG5vX3dy YXBfdmlld19pdGVtPSBGQUxTRTsKICAgbmVzdF9sZXZlbD0gMDsKICAgbGlua19uZXh0PSAwOwor ICBsb2NrX29wdGlvbj0gVExfUkVBRF9ERUZBVUxUOwogfQogCiB2b2lkIHN0X3NlbGVjdF9sZXg6 OmluaXRfc2VsZWN0KCkKCj09PSBtb2RpZmllZCBmaWxlICdzcWwvc3FsX2xleC5oJwotLS0gYS9z cWwvc3FsX2xleC5oCTIwMDktMDEtMTUgMTg6MTE6MjUgKzAwMDAKKysrIGIvc3FsL3NxbF9sZXgu aAkyMDA5LTAzLTA1IDE0OjIyOjMzICswMDAwCkBAIC02ODgsNiArNjg4LDE1IEBAIHB1YmxpYzoK ICAgaW50IGN1cl9wb3NfaW5fc2VsZWN0X2xpc3Q7CiAKICAgTGlzdDx1ZGZfZnVuYz4gICAgIHVk Zl9saXN0OyAgICAgICAgICAgICAgICAgIC8qIHVkZiBmdW5jdGlvbiBjYWxscyBzdGFjayAqLwor CisgIC8qKgorICAgIFBlciBzdWItcXVlcnkgbG9ja2luZyBzdHJhdGVneS4KKyAgICBOb3RlOiBU aGlzIHZhcmlhYmxlIG1pZ2h0IGludGVyZmVyIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgc3RhdGVt ZW50LWxldmVsCisgICAgdmFyaWFibGUgTGV4Ojpsb2NrX29wdGlvbiBiZWNhdXNlIG9uIGhvdyBk aWZmZXJlbnQgcGFyc2VyIHJ1bGVzIGRlcGVuZAorICAgIG9uIGVhY2hvdGhlci4KKyAgKi8KKyAg dGhyX2xvY2tfdHlwZSBsb2NrX29wdGlvbjsKKwogICAvKiAKICAgICBUaGlzIGlzIGEgY29weSBv ZiB0aGUgb3JpZ2luYWwgSk9JTiBVU0lORyBsaXN0IHRoYXQgY29tZXMgZnJvbQogICAgIHRoZSBw YXJzZXIuIFRoZSBwYXJzZXIgOgoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9zcWxfcGFyc2UuY2Mn Ci0tLSBhL3NxbC9zcWxfcGFyc2UuY2MJMjAwOS0wMy0wNSAxMDoyMzo0NiArMDAwMAorKysgYi9z cWwvc3FsX3BhcnNlLmNjCTIwMDktMDMtMDYgMDk6NTI6NDMgKzAwMDAKQEAgLTU1ODAsNiArNTU4 MCwxNCBAQCB2b2lkIG15c3FsX3Jlc2V0X3RoZF9mb3JfbmV4dF9jb21tYW5kKFRICiB9CiAKIAor LyoqCisgIFJlc2V0cyB0aGUgbGV4LT5jdXJyZW50X3NlbGVjdCBvYmplY3QuCisgIEBub3RlIEl0 IGlzIGFzc3VtZWQgdGhhdCBsZXgtPmN1cnJlbnRfc2VsZWN0ICE9IE5VTEwKKworICBUaGlzIGZ1 bmN0aW9uIGlzIGEgd3JhcHBlciBhcm91bmQgc2VsZWN0X2xleC0+aW5pdF9zZWxlY3QoKSB3aXRo IGFuIGFkZGVkCisgIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBzaXR1YXRpb24gd2hlbiB1c2luZyBJ TlRPIE9VVEZJTEUgYW5kIExPQUQgREFUQS4KKyovCisKIHZvaWQKIG15c3FsX2luaXRfc2VsZWN0 KExFWCAqbGV4KQogewpAQCAtNTU5NCw2ICs1NjAyLDE4IEBAIG15c3FsX2luaXRfc2VsZWN0KExF WCAqbGV4KQogfQogCiAKKy8qKgorICBVc2VkIHRvIGFsbG9jYXRlIGEgbmV3IFNFTEVDVF9MRVgg b2JqZWN0IG9uIHRoZSBjdXJyZW50IHRoZCBtZW1fcm9vdCBhbmQKKyAgbGluayBpdCBpbnRvIHRo ZSByZWxldmFudCBsaXN0cy4KKworICBUaGlzIGZ1bmN0aW9uIGlzIGFsd2F5cyBmb2xsb3dlZCBi eSBteXNxbF9pbml0X3NlbGVjdC4KKworICBAc2VlIG15c3FsX2luaXRfc2VsZWN0CisKKyAgQHJl dHZhbCBUUlVFIEFuIGVycm9yIG9jY3VycmVkCisgIEByZXR2YWwgRkFMU0UgVGhlIG5ldyBTRUxF Q1RfTEVYIHdhcyBzdWNjZXNzZnVsbHkgYWxsb2NhdGVkLgorKi8KKwogYm9vbAogbXlzcWxfbmV3 X3NlbGVjdChMRVggKmxleCwgYm9vbCBtb3ZlX2Rvd24pCiB7CkBAIC02NDExLDcgKzY0MzEsNiBA QCB2b2lkIHN0X3NlbGVjdF9sZXg6OnNldF9sb2NrX2Zvcl90YWJsZXMoCiAgIERCVUdfRU5URVIo InNldF9sb2NrX2Zvcl90YWJsZXMiKTsKICAgREJVR19QUklOVCgiZW50ZXIiLCAoImxvY2tfdHlw ZTogJWQgIGZvcl91cGRhdGU6ICVkIiwgbG9ja190eXBlLAogCQkgICAgICAgZm9yX3VwZGF0ZSkp OwotCiAgIGZvciAoVEFCTEVfTElTVCAqdGFibGVzPSAoVEFCTEVfTElTVCopIHRhYmxlX2xpc3Qu Zmlyc3Q7CiAgICAgICAgdGFibGVzOwogICAgICAgIHRhYmxlcz0gdGFibGVzLT5uZXh0X2xvY2Fs KQoKPT09IG1vZGlmaWVkIGZpbGUgJ3NxbC9zcWxfeWFjYy55eScKLS0tIGEvc3FsL3NxbF95YWNj Lnl5CTIwMDktMDItMTYgMTE6Mzg6MTUgKzAwMDAKKysrIGIvc3FsL3NxbF95YWNjLnl5CTIwMDkt MDMtMDUgMTQ6MjI6MzMgKzAwMDAKQEAgLTY0ODksNyArNjQ4OSw4IEBAIHNlbGVjdF9vcHRpb246 CiAgICAgICAgICAgewogICAgICAgICAgICAgaWYgKGNoZWNrX3NpbXBsZV9zZWxlY3QoKSkKICAg ICAgICAgICAgICAgTVlTUUxfWVlBQk9SVDsKLSAgICAgICAgICAgIExleC0+bG9ja19vcHRpb249 IFRMX1JFQURfSElHSF9QUklPUklUWTsKKyAgICAgICAgICAgIExleC0+bG9ja19vcHRpb249ICBU TF9SRUFEX0hJR0hfUFJJT1JJVFk7CisgICAgICAgICAgICBMZXgtPmN1cnJlbnRfc2VsZWN0LT5s b2NrX29wdGlvbj0gVExfUkVBRF9ISUdIX1BSSU9SSVRZOwogICAgICAgICAgIH0KICAgICAgICAg fCBESVNUSU5DVCAgICAgICAgIHsgU2VsZWN0LT5vcHRpb25zfD0gU0VMRUNUX0RJU1RJTkNUOyB9 CiAgICAgICAgIHwgU1FMX1NNQUxMX1JFU1VMVCB7IFNlbGVjdC0+b3B0aW9uc3w9IFNFTEVDVF9T TUFMTF9SRVNVTFQ7IH0KQEAgLTY1MzUsNiArNjUzNiw3IEBAIHNlbGVjdF9sb2NrX3R5cGU6CiAg ICAgICAgICAgewogICAgICAgICAgICAgTEVYICpsZXg9TGV4OwogICAgICAgICAgICAgbGV4LT5j dXJyZW50X3NlbGVjdC0+c2V0X2xvY2tfZm9yX3RhYmxlcyhUTF9XUklURSk7CisgICAgICAgICAg ICBsZXgtPmN1cnJlbnRfc2VsZWN0LT5sb2NrX29wdGlvbj0gVExfV1JJVEU7CiAgICAgICAgICAg ICBsZXgtPnNhZmVfdG9fY2FjaGVfcXVlcnk9MDsKICAgICAgICAgICB9CiAgICAgICAgIHwgTE9D S19TWU0gSU5fU1lNIFNIQVJFX1NZTSBNT0RFX1NZTQpAQCAtNjU0Miw2ICs2NTQ0LDcgQEAgc2Vs ZWN0X2xvY2tfdHlwZToKICAgICAgICAgICAgIExFWCAqbGV4PUxleDsKICAgICAgICAgICAgIGxl eC0+Y3VycmVudF9zZWxlY3QtPgogICAgICAgICAgICAgICBzZXRfbG9ja19mb3JfdGFibGVzKFRM X1JFQURfV0lUSF9TSEFSRURfTE9DS1MpOworICAgICAgICAgICAgbGV4LT5jdXJyZW50X3NlbGVj dC0+bG9ja19vcHRpb249IFRMX1JFQURfV0lUSF9TSEFSRURfTE9DS1M7CiAgICAgICAgICAgICBs ZXgtPnNhZmVfdG9fY2FjaGVfcXVlcnk9MDsKICAgICAgICAgICB9CiAgICAgICAgIDsKQEAgLTEy OTA5LDYgKzEyOTEyLDE4IEBAIHN1YnNlbGVjdF9zdGFydDoKIHN1YnNlbGVjdF9lbmQ6CiAgICAg ICAgICAgewogICAgICAgICAgICAgTEVYICpsZXg9TGV4OworICAgICAgICAgICAgLyoKKyAgICAg ICAgICAgICAgU2V0IHRoZSByZXF1aXJlZCBsb2NrIGxldmVsIGZvciB0aGUgdGFibGVzIGFzc29j aWF0ZWQgd2l0aCB0aGUKKyAgICAgICAgICAgICAgY3VycmVudCBzdWItc2VsZWN0LiBUaGlzIHdp bGwgb3ZlcndyaXRlIHByZXZpb3VzIGxvY2sgb3B0aW9ucyBzZXQKKyAgICAgICAgICAgICAgdXNp bmcgc3Rfc2VsZWN0X2xleDo6YWRkX3RhYmxlX3RvX2xpc3QgaW4gYW55IG9mIHRoZSBmb2xsb3dp bmcKKyAgICAgICAgICAgICAgcnVsZXM6IHNpbmdsZV9tdWx0aSwgdGFibGVfd2lsZF9vbmUsIGxv YWRfZGF0YSwgdGFibGVfYWxpYXNfcmVmLAorICAgICAgICAgICAgICB0YWJsZV9mYWN0b3IuCisg ICAgICAgICAgICAgIFRoZSBkZWZhdWx0IGxvY2sgbGV2ZWwgaXMgVExfUkVBRF9ERUZBVUxUIGJ1 dCBpdCBjYW4gYmUgbW9kaWZpZWQKKyAgICAgICAgICAgICAgd2l0aCBxdWVyeSBvcHRpb25zIHNw ZWNpZmljIGZvciBhIGNlcnRhaW4gKHN1Yi0pU0VMRUNULgorICAgICAgICAgICAgKi8KKyAgICAg ICAgICAgIGxleC0+Y3VycmVudF9zZWxlY3QtPgorICAgICAgICAgICAgICBzZXRfbG9ja19mb3Jf dGFibGVzKGxleC0+Y3VycmVudF9zZWxlY3QtPmxvY2tfb3B0aW9uKTsKKwogICAgICAgICAgICAg bGV4LT5wb3BfY29udGV4dCgpOwogICAgICAgICAgICAgU0VMRUNUX0xFWCAqY2hpbGQ9IGxleC0+ Y3VycmVudF9zZWxlY3Q7CiAgICAgICAgICAgICBsZXgtPmN1cnJlbnRfc2VsZWN0ID0gbGV4LT5j dXJyZW50X3NlbGVjdC0+cmV0dXJuX2FmdGVyX3BhcnNpbmcoKTsKCj09PSBtb2RpZmllZCBmaWxl ICdzcWwvdW5pcmVnLmNjJwotLS0gYS9zcWwvdW5pcmVnLmNjCTIwMDktMDEtMjYgMTU6Mjc6NTEg KzAwMDAKKysrIGIvc3FsL3VuaXJlZy5jYwkyMDA5LTAzLTA1IDExOjIwOjAxICswMDAwCkBAIC0y MjksMTYgKzIyOSwxNiBAQCBib29sIG15c3FsX2NyZWF0ZV9mcm0oVEhEICp0aGQsIGNvbnN0IGNo CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlX2lu Zm8tPmNvbW1lbnQubGVuZ3RoLCA2MCk7CiAgIGlmICh0bXBfbGVuIDwgY3JlYXRlX2luZm8tPmNv bW1lbnQubGVuZ3RoKQogICB7Ci0gICAgKHZvaWQpIG15X3NucHJpbnRmKGJ1ZmYsIHNpemVvZihi dWZmKSwgIlRvbyBsb25nIGNvbW1lbnQgZm9yIHRhYmxlICclcyciLAotICAgICAgICAgICAgICAg ICAgICAgICB0YWJsZSk7CiAgICAgaWYgKCh0aGQtPnZhcmlhYmxlcy5zcWxfbW9kZSAmCiAgICAg ICAgICAoTU9ERV9TVFJJQ1RfVFJBTlNfVEFCTEVTIHwgTU9ERV9TVFJJQ1RfQUxMX1RBQkxFUykp KQogICAgIHsKLSAgICAgIG15X21lc3NhZ2UoRVJfVU5LTk9XTl9FUlJPUiwgYnVmZiwgTVlGKDAp KTsKKyAgICAgIG15X2Vycm9yKEVSX1RPT19MT05HX1RBQkxFX0NPTU1FTlQsIE1ZRigwKSwgdGFi bGUsIHRtcF9sZW4pOwogICAgICAgZ290byBlcnI7CiAgICAgfQogICAgIHB1c2hfd2FybmluZ19w cmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VSUk9SOjpXQVJOX0xFVkVMX1dBUk4sCi0gICAgICAg ICAgICAgICAgICAgICAgICBFUl9VTktOT1dOX0VSUk9SLCBFUihFUl9VTktOT1dOX0VSUk9SKSwg YnVmZik7CisgICAgICAgICAgICAgICAgICAgICAgICBFUl9UT09fTE9OR19UQUJMRV9DT01NRU5U LAorICAgICAgICAgICAgICAgICAgICAgICAgRVIoRVJfVE9PX0xPTkdfVEFCTEVfQ09NTUVOVCks CisgICAgICAgICAgICAgICAgICAgICAgICB0YWJsZSwgdG1wX2xlbik7CiAgICAgY3JlYXRlX2lu Zm8tPmNvbW1lbnQubGVuZ3RoPSB0bXBfbGVuOwogICB9CiAKQEAgLTYxMywxNyArNjEzLDE2IEBA IHN0YXRpYyBib29sIHBhY2tfaGVhZGVyKHVjaGFyICpmb3JtaW5mbywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjU1KTsKICAgICBpZiAodG1w X2xlbiA8IGZpZWxkLT5jb21tZW50Lmxlbmd0aCkKICAgICB7Ci0gICAgICBjaGFyIGJ1ZmZbMTI4 XTsKLSAgICAgICh2b2lkKSBteV9zbnByaW50ZihidWZmLHNpemVvZihidWZmKSwgIlRvbyBsb25n IGNvbW1lbnQgZm9yIGZpZWxkICclcyciLAotICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxk LT5maWVsZF9uYW1lKTsKICAgICAgIGlmICgoY3VycmVudF90aGQtPnZhcmlhYmxlcy5zcWxfbW9k ZSAmCiAJICAgKE1PREVfU1RSSUNUX1RSQU5TX1RBQkxFUyB8IE1PREVfU1RSSUNUX0FMTF9UQUJM RVMpKSkKICAgICAgIHsKLSAgICAgICAgbXlfbWVzc2FnZShFUl9VTktOT1dOX0VSUk9SLCBidWZm LCBNWUYoMCkpOworICAgICAgICBteV9lcnJvcihFUl9UT09fTE9OR19GSUVMRF9DT01NRU5ULCBN WUYoMCksIGZpZWxkLT5maWVsZF9uYW1lLCB0bXBfbGVuKTsKIAlEQlVHX1JFVFVSTigxKTsKICAg ICAgIH0KICAgICAgIHB1c2hfd2FybmluZ19wcmludGYoY3VycmVudF90aGQsIE1ZU1FMX0VSUk9S OjpXQVJOX0xFVkVMX1dBUk4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgIEVSX1VOS05PV05f RVJST1IsIEVSKEVSX1VOS05PV05fRVJST1IpLCBidWZmKTsKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgRVJfVE9PX0xPTkdfRklFTERfQ09NTUVOVCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgRVIoRVJfVE9PX0xPTkdfRklFTERfQ09NTUVOVCksCisgICAgICAgICAgICAgICAgICAgICAg ICAgIGZpZWxkLT5maWVsZF9uYW1lLCB0bXBfbGVuKTsKICAgICAgIGZpZWxkLT5jb21tZW50Lmxl bmd0aD0gdG1wX2xlbjsKICAgICB9CiAKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL215aXNh bW1yZy9oYV9teWlzYW1tcmcuY2MnCi0tLSBhL3N0b3JhZ2UvbXlpc2FtbXJnL2hhX215aXNhbW1y Zy5jYwkyMDA5LTAyLTEyIDExOjEyOjA3ICswMDAwCisrKyBiL3N0b3JhZ2UvbXlpc2FtbXJnL2hh X215aXNhbW1yZy5jYwkyMDA5LTAzLTA0IDA5OjE4OjA3ICswMDAwCkBAIC04NzIsNiArODcyLDE2 IEBAIGludCBoYV9teWlzYW1tcmc6OmluZm8odWludCBmbGFnKQogICAgIHRhYmxlLT5zLT5jcmFz aGVkPSAxOwogI2VuZGlmCiAgIHN0YXRzLmRhdGFfZmlsZV9sZW5ndGg9IG1yZ19pbmZvLmRhdGFf ZmlsZV9sZW5ndGg7CisgIGlmIChtcmdfaW5mby5lcnJrZXkgPj0gdGFibGVfc2hhcmUtPmtleXMp IAorICB7CisgICAgLyoKKyAgICAgSWYgdmFsdWUgb2YgZXJya2V5IGlzIGhpZ2hlciB0aGFuIHRo ZSBudW1iZXIgb2Yga2V5cworICAgICBvbiB0aGUgdGFibGUgc2V0IGVycmtleSB0byBNQVhfS0VZ LiBUaGlzIHdpbGwgYmUKKyAgICAgdHJlYXRlZCBhcyB1bmtub3duIGtleSBjYXNlIGFuZCBlcnJv ciBtZXNzYWdlIGdlbmVyYXRvcgorICAgICB3b24ndCB0cnkgdG8gbG9jYXRlIGtleSBjYXVzaW5n IHNlZ21lbnRhdGlvbiBmYXVsdC4KKyAgICAqLworICAgIG1yZ19pbmZvLmVycmtleT0gTUFYX0tF WTsKKyAgfQogICBlcnJrZXk9IG1yZ19pbmZvLmVycmtleTsKICAgdGFibGUtPnMtPmtleXNfaW5f dXNlLnNldF9wcmVmaXgodGFibGUtPnMtPmtleXMpOwogICBzdGF0cy5tZWFuX3JlY19sZW5ndGg9 IG1yZ19pbmZvLnJlY2xlbmd0aDsKCg==