From: Date: September 10 2008 11:42pm Subject: bzr push into mysql-6.0-falcon branch (klewis:2813 to 2824) Bug#38947 List-Archive: http://lists.mysql.com/commits/53743 X-Bug: 38947 Message-Id: <200809102142.m8ALg0x4007412@mail.mysql.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 IDI4MjQgS2V2aW4gTGV3aXMJMjAwOC0wOS0xMAogICAgICBCdWcjIEFkZCBhbiBleGNsdXNpdmUg bG9jayBvbiBEYXRhYmFzZTo6c3luY1NjYXZlbmdlIGluIAogICAgICBEYXRhYmFzZTo6dHJ1bmNh dGVUYWJsZSBiZWZvcmUgdGhlIGxvY2sgb2YgVGFibGU6OnN5bmNPYmplY3QKICAgICAganVzdCBp biBjYXNlIHRoZSB0cnVuY2F0ZVRhYmxlIHByb2Nlc3MgaGFzIHRvIGNhbGwgCiAgICAgIERhdGFi YXNlOjpmb3JjZVJlY29yZFNjYXZlbmdlLiAgc3luY1NjYXZlbmdlIG11c3QgYmUgbG9ja2VkIAog ICAgICBiZWZvcmUgVGFibGU6OnN5bmNPYmplY3QgYmVjYXVzZSB0aGUgc2NhdmVuZ2VyIGRvZXMg aXQgdGhhdCB3YXkuCiAgICAgIAogICAgICBBY2NvcmRpbmcgdG8gdGhlIERlYWRsb2NrIERldGVj dG9yLCBzeW5jU2NhdmVuZ2UgbXVzdCBhbHNvIGJlIAogICAgICBsb2NrZWQgYmVmb3JlIERhdGFi YXNlOjpzeW5jVGFibGVzLgptb2RpZmllZDoKICBzdG9yYWdlL2ZhbGNvbi9EYXRhYmFzZS5jcHAK CiAyODIzIEtldmluIExld2lzCTIwMDgtMDktMTAKICAgICAgSW1wcm92ZW1lbnRzIHRvIHRoZSBE ZWFkbG9jayBEZXRlY3RvciBpbiBTeW5jSGFuZGxlci4KICAgICAgS2VlcCB0cmFjayBvZiB3aGV0 aGVyIGEgbG9jYXRpb24gbG9ja3MgYSBTeW5jT2JqZWN0IGluIAogICAgICBleGNsdXNpdmUgb2Yg U2hhcmVkIG1vZGUuCiAgICAgIFNob3cgdGhhdCBpbiB0aGUgcHV0cHV0LgogICAgICBFbGltaW5h dGUgcG9zc2libGUgZGVhZGxvY2tzIHdoZXJlIHRoZSBzZWNvbmQgU3luY09iamVjdCAKICAgICAg b2NjdXJzIGJvdGggYmVmb3JlIGFuZCBhZnRlciB0aGUgZmlyc3QsIGJ1dCBvbmx5IHdpdGhpbiAK ICAgICAgdGhlIHNhbWUgY2FsbCBzdGFjay4gIFRoaXMgaXMgT0sgYXMgbG9uZyBhcyB0aGUgbG9j ayBkb2VzIAogICAgICBub3Qgc3RhcnQgd2l0aCBTaGFyZWQgYW5kIHJpc2VzIHVwIHRvIEV4Y2x1 c2l2ZS4KbW9kaWZpZWQ6CiAgc3RvcmFnZS9mYWxjb24vU3luY0hhbmRsZXIuY3BwCiAgc3RvcmFn ZS9mYWxjb24vU3luY0hhbmRsZXIuaAogIHN0b3JhZ2UvZmFsY29uL1N5bmNPYmplY3QuY3BwCgog MjgyMiBLZXZpbiBMZXdpcwkyMDA4LTA5LTEwCiAgICAgIFZhcmlvdXMgY2xlYW51cCBjaGFuZ2Vz Cm1vZGlmaWVkOgogIHN0b3JhZ2UvZmFsY29uL0NhY2hlLmNwcAogIHN0b3JhZ2UvZmFsY29uL0Nh Y2hlLmgKICBzdG9yYWdlL2ZhbGNvbi9JbmRleC5jcHAKICBzdG9yYWdlL2ZhbGNvbi9TZXJpYWxM b2dGaWxlLmNwcAogIHN0b3JhZ2UvZmFsY29uL1RyYW5zYWN0aW9uLmNwcAoKIDI4MjEgQ2hyaXN0 b3BoZXIgUG93ZXJzCTIwMDgtMDktMTAKICAgICAgQnVnICMzOTM1MCBGYWxjb246IFJlbGVhc2lu ZyBkZWZlcnJlZCBpbmRleGVzIGNhdXNlcyBjcmFzaAogICAgICAgICAgCiAgICAgIFJlc3RvcmVk IERlZmVycmVkSW5kZXggYWRkUmVmL3JlbGVhc2VSZWYgdG8gVHJhbnNhY3Rpb24uCm1vZGlmaWVk OgogIHN0b3JhZ2UvZmFsY29uL0RlZmVycmVkSW5kZXguY3BwCiAgc3RvcmFnZS9mYWxjb24vRGVm ZXJyZWRJbmRleFdhbGtlci5jcHAKICBzdG9yYWdlL2ZhbGNvbi9UcmFuc2FjdGlvbi5jcHAKCiAy ODIwIENocmlzdG9waGVyIFBvd2VycwkyMDA4LTA5LTEwCiAgICAgIEJ1ZyAjMzkzNTAgRmFsY29u OiBSZWxlYXNpbmcgZGVmZXJyZWQgaW5kZXhlcyBjYXVzZXMgY3Jhc2gKICAgICAgICAKICAgICAg Rml4ZWQgcmVncmVzc2lvbiB0byBsYXN0IGNvbW1pdCB0aGF0IHByZXZlbnRlZCBkZWZlcnJlZCBp bmRleGVzIGZyb20gYmVpbmcgcmVsZWFzZWQuCm1vZGlmaWVkOgogIHN0b3JhZ2UvZmFsY29uL1Ry YW5zYWN0aW9uLmNwcAoKIDI4MTkgSm9obiBILiBFbWJyZXRzZW4JMjAwOC0wOS0xMCBbbWVyZ2Vd CiAgICAgIE1lcmdpbmcgaHR0cDovL2xpc3RzLm15c3FsLmNvbS9jb21taXRzLzUzNzA0IGludG8g dXBkYXRlZCBmYWxjb24tdGVhbSBicmFuY2guCiAgICAgICJGaXggdGVzdCBzZWdtZW50IGZvciBB TFRFUiBPTkxJTkUgQUREIFVOSVFVRSBJTkRFWCBpbiBmYWxjb25fb25saW5lX2luZGV4LnRlc3Qu Igptb2RpZmllZDoKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9vbmxpbmVfaW5k ZXgucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fb25saW5lX2luZGV4 LnRlc3QKCiAyODE4IEhha2FuIEt1ZWN1ZWt5aWxtYXoJMjAwOC0wOS0xMCBbbWVyZ2VdCiAgICAg IE1lcmdlLgptb2RpZmllZDoKICBzdG9yYWdlL2ZhbGNvbi9oYV9mYWxjb24uY3BwCgogMjgxNyBI YWthbiBLdWVjdWVreWlsbWF6CTIwMDgtMDktMTAgW21lcmdlXQogICAgICBNZXJnZS4KcmVtb3Zl ZDoKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9zZWxlY3RfZXhjZXJwdC5yZXN1 bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9zZWxlY3RfZXhjZXJwdC50ZXN0 CmFkZGVkOgogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2luZGV4X2RhdGF0eXBl cy5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9vbmxpbmVfaW5kZXgu cmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25faW5kZXhfZGF0YXR5cGVz LnRlc3QKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9vbmxpbmVfaW5kZXgudGVz dAptb2RpZmllZDoKICBzdG9yYWdlL2ZhbGNvbi9DYWNoZS5jcHAKICBzdG9yYWdlL2ZhbGNvbi9D b25maWd1cmF0aW9uLmNwcAogIHN0b3JhZ2UvZmFsY29uL0RlZmVycmVkSW5kZXguY3BwCiAgc3Rv cmFnZS9mYWxjb24vU3RvcmFnZVRhYmxlLmNwcAogIHN0b3JhZ2UvZmFsY29uL1N0b3JhZ2VUYWJs ZVNoYXJlLmNwcAogIHN0b3JhZ2UvZmFsY29uL1N0b3JhZ2VUYWJsZVNoYXJlLmgKICBzdG9yYWdl L2ZhbGNvbi9UcmFuc2FjdGlvbi5jcHAKICBzdG9yYWdlL2ZhbGNvbi9UcmFuc2FjdGlvbi5oCiAg c3RvcmFnZS9mYWxjb24vaGFfZmFsY29uLmNwcAogIHN0b3JhZ2UvZmFsY29uL2hhX2ZhbGNvbi5o CgogMjgxNiBIYWthbiBLdWVjdWVreWlsbWF6CTIwMDgtMDktMDkKICAgICAgQWRkZWQgY29tbWVu dCBhYm91dCBzdHVwaWQgYW5kIG1pc2xlYWRpbmcKICAgICAgc2VydmVyIGxldmVsIGVycm9yIG1l c3NhZ2UuCm1vZGlmaWVkOgogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18y NDAyNC5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjQwMjQu dGVzdAoKIDI4MTUgSGFrYW4gS3VlY3Vla3lpbG1hegkyMDA4LTA5LTA5CiAgICAgIFJlc2N1ZWQg MyB0ZXN0cyBmcm9tIGZhbGNvbl90ZWFtIHRlc3Qgc3VpdGUuCiAgICAgIAogICAgICBDbGVhbmVk IHVwIHRlc3QgY2FzZXMgYW5kIGFkZGVkIG9uZSAtYmlnLnRlc3QgdmVyc2lvbiBvZgogICAgICBm YWxjb25fYnVnXzIyMjA3LnRlc3QuCmFkZGVkOgogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3Iv ZmFsY29uX2J1Z18yMjIwNy1iaWcucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9m YWxjb25fYnVnXzIyMjA3LWJpZy50ZXN0CnJlbmFtZWQ6CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxj b25fdGVhbS9yL2ZhbGNvbl9idWdfMjIxODkucmVzdWx0ID0+IG15c3FsLXRlc3Qvc3VpdGUvZmFs Y29uL3IvZmFsY29uX2J1Z18yMjE4OS5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90 ZWFtL3IvZmFsY29uX2J1Z18yMjIwNy5yZXN1bHQgPT4gbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24v ci9mYWxjb25fYnVnXzIyMjA3LnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0v ci9mYWxjb25fYnVnXzI0MDI0LnJlc3VsdCA9PiBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2Zh bGNvbl9idWdfMjQwMjQucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb25fdGVhbS90L2Zh bGNvbl9idWdfMjIxODkudGVzdCA9PiBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9i dWdfMjIxODkudGVzdAogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0vdC9mYWxjb25fYnVn XzIyMjA3LnRlc3QgPT4gbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fYnVnXzIyMjA3 LnRlc3QKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFtL3QvZmFsY29uX2J1Z18yNDAyNC50 ZXN0ID0+IG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3QvZmFsY29uX2J1Z18yNDAyNC50ZXN0Cm1v ZGlmaWVkOgogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18yMjk3Mi5yZXN1 bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2Rpc2FibGVkLmRlZgogIG15c3FsLXRlc3Qv c3VpdGUvZmFsY29uL3QvZmFsY29uX2J1Z18yMjk3Mi50ZXN0CiAgbXlzcWwtdGVzdC9zdWl0ZS9m YWxjb25fdGVhbS9yL2ZhbGNvbl9idWdfMjM5NDUucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9m YWxjb25fdGVhbS90L2ZhbGNvbl9idWdfMjM5NDUudGVzdAogIG15c3FsLXRlc3Qvc3VpdGUvZmFs Y29uL3IvZmFsY29uX2J1Z18yMjE4OS5yZXN1bHQKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9y L2ZhbGNvbl9idWdfMjIyMDcucmVzdWx0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vci9mYWxj b25fYnVnXzI0MDI0LnJlc3VsdAogIG15c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3QvZmFsY29uX2J1 Z18yMjE4OS50ZXN0CiAgbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fYnVnXzIyMjA3 LnRlc3QKICBteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjQwMjQudGVzdAoK IDI4MTQgVmxhZGlzbGF2IFZhaW50cm91YgkyMDA4LTA5LTA4CiAgICAgIEJ1ZyMzODk0NyAtZG9u J3Qgc2lnbmFsIHdhaXRpbmcgdGhyZWFkIHVudGlsIHRoZSB2ZXJ5IGVuZCBvZiByb2xsYmFjaygp LCB0byBhdm9pZCByYWNlcy4KbW9kaWZpZWQ6CiAgc3RvcmFnZS9mYWxjb24vVHJhbnNhY3Rpb24u Y3BwCgogMjgxMyBWbGFkaXNsYXYgVmFpbnRyb3ViCTIwMDgtMDktMDgKICAgICAgQWRkIG1pc3Np bmcgZGVwZW5kZW5jeSB0byBwZXJyb3IgIHRvIGF2b2lkICBjb21waWxlIGVycm9yIGluIG11bHRp cHJvY2Vzc29yIGJ1aWxkcwptb2RpZmllZDoKICBleHRyYS9DTWFrZUxpc3RzLnR4dAoKPT09IG1v ZGlmaWVkIGZpbGUgJ01ha2VmaWxlLmFtJwotLS0gYS9NYWtlZmlsZS5hbQkyMDA4LTA3LTI0IDEx OjU1OjQ5ICswMDAwCisrKyBiL01ha2VmaWxlLmFtCTIwMDgtMDktMDQgMDk6MjI6MTYgKzAwMDAK QEAgLTYzLDcgKzYzLDggQEAgZGlzdC1ob29rOgogCQktLWRhdGFkaXI9JChkaXN0ZGlyKS93aW4v ZGF0YSBcCiAJCS0tc3JjZGlyPSQodG9wX3NyY2RpcikKIAotYWxsLWxvY2FsOgkJYWJpX2NoZWNr CisjIFRPRE86IHVuY29tbWVudCBhYmlfY2hlY2sgKG5leHQgbGluZSkgaWYgeW91IGdldCBhIG1l cmdlIGNvbmZsaWN0IGhlcmUuCisjYWxsLWxvY2FsOgkJYWJpX2NoZWNrCiAKIHRhZ3M6CiAJc3Vw cG9ydC1maWxlcy9idWlsZC10YWdzCgo9PT0gbW9kaWZpZWQgZmlsZSAnY2xpZW50L215c3FsZHVt cC5jJwotLS0gYS9jbGllbnQvbXlzcWxkdW1wLmMJMjAwOC0wNS0yOSAxNTo0NDoxMSArMDAwMAor KysgYi9jbGllbnQvbXlzcWxkdW1wLmMJMjAwOC0wOS0wNCAwOToyMjoxNiArMDAwMApAQCAtMzY4 NCw2ICszNjg0LDcgQEAgc3RhdGljIGludCBkdW1wX3RhYmxlc3BhY2VzKGNoYXIqIHRzX3doZQog ICAgICAgICAgICAgICAgICAgICAgICIgRVhUUkEiCiAgICAgICAgICAgICAgICAgICAgICAgIiBG Uk9NIElORk9STUFUSU9OX1NDSEVNQS5GSUxFUyIKICAgICAgICAgICAgICAgICAgICAgICAiIFdI RVJFIEZJTEVfVFlQRSA9ICdVTkRPIExPRyciCisgICAgICAgICAgICAgICAgICAgICAgIiBBTkQg RU5HSU5FICE9ICdGYWxjb24nIgogICAgICAgICAgICAgICAgICAgICAgICIgQU5EIEZJTEVfTkFN RSBJUyBOT1QgTlVMTCIsCiAgICAgICAgICAgICAgICAgICAgICAgMjU2LCAxMDI0KTsKICAgaWYo dHNfd2hlcmUpCkBAIC0zNzgwLDcgKzM3ODEsOCBAQCBzdGF0aWMgaW50IGR1bXBfdGFibGVzcGFj ZXMoY2hhciogdHNfd2hlCiAgICAgICAgICAgICAgICAgICAgICAgIiBJTklUSUFMX1NJWkUsIgog ICAgICAgICAgICAgICAgICAgICAgICIgRU5HSU5FIgogICAgICAgICAgICAgICAgICAgICAgICIg RlJPTSBJTkZPUk1BVElPTl9TQ0hFTUEuRklMRVMiCi0gICAgICAgICAgICAgICAgICAgICAgIiBX SEVSRSBGSUxFX1RZUEUgPSAnREFUQUZJTEUnIiwKKyAgICAgICAgICAgICAgICAgICAgICAiIFdI RVJFIEZJTEVfVFlQRSA9ICdEQVRBRklMRSciCisgICAgICAgICAgICAgICAgICAgICAgIiBBTkQg RU5HSU5FICE9ICdGYWxjb24nIiwKICAgICAgICAgICAgICAgICAgICAgICAyNTYsIDEwMjQpOwog CiAgIGlmKHRzX3doZXJlKQoKPT09IG1vZGlmaWVkIGZpbGUgJ2V4dHJhL0NNYWtlTGlzdHMudHh0 JwotLS0gYS9leHRyYS9DTWFrZUxpc3RzLnR4dAkyMDA4LTA0LTAyIDE3OjUyOjExICswMDAwCisr KyBiL2V4dHJhL0NNYWtlTGlzdHMudHh0CTIwMDgtMDktMDggMTI6MDc6MTUgKzAwMDAKQEAgLTQy LDYgKzQyLDcgQEAgQUREX0VYRUNVVEFCTEUobXlfcHJpbnRfZGVmYXVsdHMgbXlfcHJpbgogVEFS R0VUX0xJTktfTElCUkFSSUVTKG15X3ByaW50X2RlZmF1bHRzIHN0cmluZ3MgbXlzeXMgZGVidWcg ZGJ1ZyB0YW9jcnlwdCB3czJfMzIpCiAKIEFERF9FWEVDVVRBQkxFKHBlcnJvciBwZXJyb3IuYykK K0FERF9ERVBFTkRFTkNJRVMocGVycm9yIEdlbkVycm9yKQogVEFSR0VUX0xJTktfTElCUkFSSUVT KHBlcnJvciBzdHJpbmdzIG15c3lzIGRlYnVnIGRidWcgd3MyXzMyKQogCiBBRERfRVhFQ1VUQUJM RShyZXNvbHZlaXAgcmVzb2x2ZWlwLmMpCgo9PT0gcmVuYW1lZCBmaWxlICdteXNxbC10ZXN0L3N1 aXRlL2ZhbGNvbl90ZWFtL3IvZmFsY29uX2J1Z18yMjE4OS5yZXN1bHQnID0+ICdteXNxbC10ZXN0 L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9idWdfMjIxODkucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0 L3N1aXRlL2ZhbGNvbl90ZWFtL3IvZmFsY29uX2J1Z18yMjE4OS5yZXN1bHQJMjAwOC0wNC0yOCAx MToyMTo1MiArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9idWdf MjIxODkucmVzdWx0CTIwMDgtMDktMDkgMDg6MzA6MTggKzAwMDAKQEAgLTMzLDExICszMywxMiBA QCB4MQl4MgogMQkxCiAjIFN3aXRjaCB0byBjb25uZWN0aW9uIGNvbm4xCiBVUERBVEUgeDEgU0VU IHgxID0gMCwgeDIgPSA1OworRVJST1IgMjMwMDA6IER1cGxpY2F0ZSBlbnRyeSAnMCcgZm9yIGtl eSAnUFJJTUFSWScKIElOU0VSVCBJTlRPIHgxIFZBTFVFUyAoMCw2KTsKK0VSUk9SIDIzMDAwOiBE dXBsaWNhdGUgZW50cnkgJzAnIGZvciBrZXkgJ1BSSU1BUlknCiAjIFN3aXRjaCB0byBjb25uZWN0 aW9uIGRlZmF1bHQKIFJPTExCQUNLOwogIyBTd2l0Y2ggdG8gY29ubmVjdGlvbiBjb25uMQotRVJS T1IgMjMwMDA6IER1cGxpY2F0ZSBlbnRyeSAnMCcgZm9yIGtleSAnUFJJTUFSWScKIElOU0VSVCBJ TlRPIHgxIFZBTFVFUyAoMCw2KTsKIEVSUk9SIDIzMDAwOiBEdXBsaWNhdGUgZW50cnkgJzAnIGZv ciBrZXkgJ1BSSU1BUlknCiBJTlNFUlQgSU5UTyB4MSBWQUxVRVMgKDAsNik7Cgo9PT0gYWRkZWQg ZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vci9mYWxjb25fYnVnXzIyMjA3LWJpZy5yZXN1 bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18yMjIwNy1iaWcu cmVzdWx0CTE5NzAtMDEtMDEgMDA6MDA6MDAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9m YWxjb24vci9mYWxjb25fYnVnXzIyMjA3LWJpZy5yZXN1bHQJMjAwOC0wOS0wOSAwODozMDoxOCAr MDAwMApAQCAtMCwwICsxLDE1MCBAQAorKioqIEJ1ZyAjMjIyMDcgKioqCitTRVQgQEBzdG9yYWdl X2VuZ2luZSA9ICdGYWxjb24nOworRFJPUCBUQUJMRSBJRiBFWElTVFMgdDE7CitDUkVBVEUgVEFC TEUgdDEgKGMxIHZhcmNoYXIoNTApLCBjMiBpbnQsIGMzIGNoYXIoMSkpOworSU5TRVJUIElOVE8g dDEgVkFMVUVTIChyZXBlYXQoJ0EnLCA1MCksIDAsICdBJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxV RVMgKHJlcGVhdCgnQicsIDUwKSwgMCwgJ0InKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAocmVw ZWF0KCdDJywgNTApLCAwLCAnQycpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTIChyZXBlYXQoJ0Qn LCA1MCksIDAsICdEJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKHJlcGVhdCgnRScsIDUwKSwg MCwgJ0UnKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAocmVwZWF0KCdGJywgNTApLCAwLCAnRicp OworSU5TRVJUIElOVE8gdDEgVkFMVUVTIChyZXBlYXQoJ0cnLCA1MCksIDAsICdHJyk7CitJTlNF UlQgSU5UTyB0MSBWQUxVRVMgKHJlcGVhdCgnSCcsIDUwKSwgMCwgJ0gnKTsKK0lOU0VSVCBJTlRP IHQxIFZBTFVFUyAocmVwZWF0KCdJJywgNTApLCAwLCAnSScpOworSU5TRVJUIElOVE8gdDEgVkFM VUVTIChyZXBlYXQoJ0onLCA1MCksIDAsICdKJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKHJl cGVhdCgnSycsIDUwKSwgMCwgJ0snKTsKK0NPTU1JVDsKK1NFTEVDVCBjMSBmcm9tIHQxOworYzEK KzE1MDAwMF9fX19BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCisxNTAw MDBfX19fQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQgorMTUwMDAwX19f X0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MKKzE1MDAwMF9fX19ERERE RERERERERERERERERERERERERERERERERERERERERERERERECisxNTAwMDBfX19fRUVFRUVFRUVF RUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRQorMTUwMDAwX19fX0ZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKKzE1MDAwMF9fX19HR0dHR0dHR0dHR0dHR0dHR0dH R0dHR0dHR0dHR0dHR0dHR0dHR0dHCisxNTAwMDBfX19fSEhISEhISEhISEhISEhISEhISEhISEhI SEhISEhISEhISEhISEhISAorMTUwMDAwX19fX0lJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJ SUlJSUlJSUlJSUkKKzE1MDAwMF9fX19KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpK SkpKSkpKCisxNTAwMDBfX19fS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL SworU0VMRUNUIGMxIGZyb20gdDE7CitjMQorMzAwMDAwX19fX0FBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUEKKzMwMDAwMF9fX19CQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCCiszMDAwMDBfX19fQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQworMzAwMDAwX19fX0RERERERERERERERERERERERERERERERERERERERERERERE REREREQKKzMwMDAwMF9fX19FRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVF CiszMDAwMDBfX19fRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgorMzAw MDAwX19fX0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cKKzMwMDAwMF9f X19ISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhICiszMDAwMDBfX19fSUlJ SUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSQorMzAwMDAwX19fX0pKSkpKSkpK SkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkoKKzMwMDAwMF9fX19LS0tLS0tLS0tLS0tL S0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLCitTRUxFQ1QgYzEgZnJvbSB0MTsKK2MxCis0NTAw MDBfX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorNDUwMDAwX19f X0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKKzQ1MDAwMF9fX19DQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCis0NTAwMDBfX19fRERERERERERE RERERERERERERERERERERERERERERERERERERERERAorNDUwMDAwX19fX0VFRUVFRUVFRUVFRUVF RUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUUKKzQ1MDAwMF9fX19GRkZGRkZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGRkZGRkZGRkZGRkZGCis0NTAwMDBfX19fR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dH R0dHR0dHR0dHR0dHR0dHRworNDUwMDAwX19fX0hISEhISEhISEhISEhISEhISEhISEhISEhISEhI SEhISEhISEhISEgKKzQ1MDAwMF9fX19JSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJ SUlJSUlJCis0NTAwMDBfX19fSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpK SgorNDUwMDAwX19fX0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0sKK1NF TEVDVCBjMSBmcm9tIHQxOworYzEKKzYwMDAwMF9fX19BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBCis2MDAwMDBfX19fQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQgorNjAwMDAwX19fX0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0MKKzYwMDAwMF9fX19ERERERERERERERERERERERERERERERERERERERERERERERERERERE Cis2MDAwMDBfX19fRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRQorNjAw MDAwX19fX0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKKzYwMDAwMF9f X19HR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHCis2MDAwMDBfX19fSEhI SEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISAorNjAwMDAwX19fX0lJSUlJSUlJ SUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUkKKzYwMDAwMF9fX19KSkpKSkpKSkpKSkpK SkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKCis2MDAwMDBfX19fS0tLS0tLS0tLS0tLS0tLS0tL S0tLS0tLS0tLS0tLS0tLS0tLS0tLSworU0VMRUNUIGMxIGZyb20gdDE7CitjMQorNzUwMDAwX19f X0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKKzc1MDAwMF9fX19CQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCCis3NTAwMDBfX19fQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQworNzUwMDAwX19fX0RERERERERERERERERE REREREREREREREREREREREREREREREREREQKKzc1MDAwMF9fX19FRUVFRUVFRUVFRUVFRUVFRUVF RUVFRUVFRUVFRUVFRUVFRUVFRUVFCis3NTAwMDBfX19fRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGRkZGRkZGRgorNzUwMDAwX19fX0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dH R0dHR0dHR0dHR0cKKzc1MDAwMF9fX19ISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhI SEhISEhICis3NTAwMDBfX19fSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJ SQorNzUwMDAwX19fX0pKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkoKKzc1 MDAwMF9fX19LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLCitTRUxFQ1Qg YzEgZnJvbSB0MTsKK2MxCis5MDAwMDBfX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQQorOTAwMDAwX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkIKKzkwMDAwMF9fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Cis5MDAwMDBfX19fRERERERERERERERERERERERERERERERERERERERERERERERERERERAorOTAw MDAwX19fX0VFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUUKKzkwMDAwMF9f X19GRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCis5MDAwMDBfX19fR0dH R0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRworOTAwMDAwX19fX0hISEhISEhI SEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEgKKzkwMDAwMF9fX19JSUlJSUlJSUlJSUlJ SUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJCis5MDAwMDBfX19fSkpKSkpKSkpKSkpKSkpKSkpK SkpKSkpKSkpKSkpKSkpKSkpKSkpKSgorOTAwMDAwX19fX0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL S0tLS0tLS0tLS0tLS0tLS0sKK1NFTEVDVCBjMSBmcm9tIHQxOworYzEKKzEwNTAwMDBfX19BQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCisxMDUwMDAwX19fQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQgorMTA1MDAwMF9fX0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MKKzEwNTAwMDBfX19ERERERERERERERERERERERERE RERERERERERERERERERERERERERECisxMDUwMDAwX19fRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVF RUVFRUVFRUVFRUVFRUVFRQorMTA1MDAwMF9fX0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGRkYKKzEwNTAwMDBfX19HR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dH R0dHR0dHCisxMDUwMDAwX19fSEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhI SAorMTA1MDAwMF9fX0lJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUkKKzEw NTAwMDBfX19KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKCisxMDUwMDAw X19fS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSworU0VMRUNUIGMxIGZy b20gdDE7CitjMQorMTIwMDAwMF9fX0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUEKKzEyMDAwMDBfX19CQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC CisxMjAwMDAwX19fQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQworMTIw MDAwMF9fX0REREREREREREREREREREREREREREREREREREREREREREREREREREQKKzEyMDAwMDBf X19FRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFCisxMjAwMDAwX19fRkZG RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgorMTIwMDAwMF9fX0dHR0dHR0dH R0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cKKzEyMDAwMDBfX19ISEhISEhISEhISEhI SEhISEhISEhISEhISEhISEhISEhISEhISEhICisxMjAwMDAwX19fSUlJSUlJSUlJSUlJSUlJSUlJ SUlJSUlJSUlJSUlJSUlJSUlJSUlJSQorMTIwMDAwMF9fX0pKSkpKSkpKSkpKSkpKSkpKSkpKSkpK SkpKSkpKSkpKSkpKSkpKSkoKKzEyMDAwMDBfX19LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL S0tLS0tLS0tLS0tLCitTRUxFQ1QgYzEgZnJvbSB0MTsKK2MxCisxMzUwMDAwX19fQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorMTM1MDAwMF9fX0JCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKKzEzNTAwMDBfX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCisxMzUwMDAwX19fRERERERERERERERERERERERERERERERE RERERERERERERERERERERAorMTM1MDAwMF9fX0VFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVF RUVFRUVFRUVFRUUKKzEzNTAwMDBfX19GRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZG RkZGRkZGCisxMzUwMDAwX19fR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dH RworMTM1MDAwMF9fX0hISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEgKKzEz NTAwMDBfX19JSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJCisxMzUwMDAw X19fSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSgorMTM1MDAwMF9fX0tL S0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0sKK1NFTEVDVCBjMSBmcm9tIHQx OworYzEKKzE1MDAwMDBfX19BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB CisxNTAwMDAwX19fQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQgorMTUw MDAwMF9fX0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MKKzE1MDAwMDBf X19ERERERERERERERERERERERERERERERERERERERERERERERERERERECisxNTAwMDAwX19fRUVF RUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRQorMTUwMDAwMF9fX0ZGRkZGRkZG RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKKzE1MDAwMDBfX19HR0dHR0dHR0dHR0dH R0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHCisxNTAwMDAwX19fSEhISEhISEhISEhISEhISEhI SEhISEhISEhISEhISEhISEhISEhISAorMTUwMDAwMF9fX0lJSUlJSUlJSUlJSUlJSUlJSUlJSUlJ SUlJSUlJSUlJSUlJSUlJSUkKKzE1MDAwMDBfX19KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpK SkpKSkpKSkpKSkpKCisxNTAwMDAwX19fS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL S0tLS0tLSworU0VMRUNUIGNvdW50KCopIEZST00gdDE7Citjb3VudCgqKQorMTEKK0RST1AgVEFC TEUgdDE7Cgo9PT0gcmVuYW1lZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFtL3Iv ZmFsY29uX2J1Z18yMjIwNy5yZXN1bHQnID0+ICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2Zh bGNvbl9idWdfMjIyMDcucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFt L3IvZmFsY29uX2J1Z18yMjIwNy5yZXN1bHQJMjAwOC0wNC0yMCAwMDowNToxNyArMDAwMAorKysg Yi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9idWdfMjIyMDcucmVzdWx0CTIwMDgt MDktMDkgMDg6MzA6MTggKzAwMDAKQEAgLTEsNCArMSw1IEBACi1TRVQgU1RPUkFHRV9FTkdJTkUg PSAnRmFsY29uJzsKKyoqKiBCdWcgIzIyMjA3ICoqKgorU0VUIEBAc3RvcmFnZV9lbmdpbmUgPSAn RmFsY29uJzsKIERST1AgVEFCTEUgSUYgRVhJU1RTIHQxOwogQ1JFQVRFIFRBQkxFIHQxIChjMSB2 YXJjaGFyKDUwKSwgYzIgaW50LCBjMyBjaGFyKDEpKTsKIElOU0VSVCBJTlRPIHQxIFZBTFVFUyAo cmVwZWF0KCdBJywgNTApLCAwLCAnQScpOwpAQCAtNyw1MiArOCw1NSBAQCBJTlNFUlQgSU5UTyB0 MSBWQUxVRVMgKHJlcGVhdCgnQycsIDUwKSwgCiBDT01NSVQ7CiBTRUxFQ1QgYzEgZnJvbSB0MTsK IGMxCisyNTAwX19fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQor MjUwMF9fX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKKzI1MDBf X19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCitTRUxFQ1QgYzEg ZnJvbSB0MTsKK2MxCiA1MDAwX19fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQQogNTAwMF9fX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkIKIDUwMDBfX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCiBT RUxFQ1QgYzEgZnJvbSB0MTsKIGMxCis3NTAwX19fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQQorNzUwMF9fX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQkIKKzc1MDBfX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDCitTRUxFQ1QgYzEgZnJvbSB0MTsKK2MxCiAxMDAwMF9fX19fQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQogMTAwMDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkIKIDEwMDAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDCiBTRUxFQ1QgYzEgZnJvbSB0MTsKIGMxCisxMjUwMF9fX19fQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorMTI1MDBfX19fX0JCQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKKzEyNTAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCitTRUxFQ1QgYzEgZnJvbSB0MTsKK2MxCiAxNTAwMF9f X19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQogMTUwMDBfX19fX0JC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKIDE1MDAwX19fX19DQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCiBTRUxFQ1QgYzEgZnJvbSB0MTsKIGMx CisxNzUwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorMTc1 MDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKKzE3NTAwX19f X19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCitTRUxFQ1QgYzEgZnJv bSB0MTsKK2MxCiAyMDAwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQQogMjAwMDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIK IDIwMDAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCiBTRUxF Q1QgYzEgZnJvbSB0MTsKIGMxCisyMjUwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQQorMjI1MDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkJCQkIKKzIyNTAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDCitTRUxFQ1QgYzEgZnJvbSB0MTsKK2MxCiAyNTAwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQQogMjUwMDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCQkIKIDI1MDAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDCi1TRUxFQ1QgYzEgZnJvbSB0MTsKLWMxCi0zMDAwMF9fX19fQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQotMzAwMDBfX19fX0JCQkJCQkJCQkJCQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKLTMwMDAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCi1TRUxFQ1QgYzEgZnJvbSB0MTsKLWMxCi0zNTAwMF9fX19f QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQotMzUwMDBfX19fX0JCQkJC QkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKLTM1MDAwX19fX19DQ0NDQ0NDQ0ND Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCi1TRUxFQ1QgYzEgZnJvbSB0MTsKLWMxCi00 MDAwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQotNDAwMDBf X19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKLTQwMDAwX19fX19D Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCi1TRUxFQ1QgYzEgZnJvbSB0 MTsKLWMxCi00NTAwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QQotNDUwMDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKLTQ1 MDAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCi1TRUxFQ1Qg YzEgZnJvbSB0MTsKLWMxCi01MDAwMF9fX19fQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQQotNTAwMDBfX19fX0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJC QkJCQkIKLTUwMDAwX19fX19DQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ND CitTRUxFQ1QgY291bnQoKikgRlJPTSB0MTsKK2NvdW50KCopCiszCiBEUk9QIFRBQkxFIHQxOwoK PT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18y Mjk3Mi5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18y Mjk3Mi5yZXN1bHQJMjAwOC0wNy0xNSAwMDowNjo0MyArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1 aXRlL2ZhbGNvbi9yL2ZhbGNvbl9idWdfMjI5NzIucmVzdWx0CTIwMDgtMDktMDkgMDg6MzA6MTgg KzAwMDAKQEAgLTEsMTAgKzEsMjEgQEAKLUNSRUFURSBUQUJMRSB0MShhIElOVCkgRU5HSU5FPUZh bGNvbjsKKyoqKiBCdWcgIzIyOTcyICoqKgorU0VUIEBAc3RvcmFnZV9lbmdpbmUgPSAnRmFsY29u JzsKK0RST1AgVEFCTEUgSUYgRVhJU1RTIHQxOworQ1JFQVRFIFRBQkxFIHQxKGEgaW50KTsKKyMg RXN0YWJsaXNoIGNvbm5lY3Rpb24gY29ubjEgKHJvb3QpCisjIFN3aXRjaCB0byBjb25uZWN0aW9u IGNvbm4xCiBTVEFSVCBUUkFOU0FDVElPTjsKIElOU0VSVCBJTlRPIHQxIFZBTFVFUygxKTsKKyMg U3dpdGNoIHRvIGNvbm5lY3Rpb24gZGVmYXVsdAogRFJPUCBUQUJMRSB0MTsKIEVSUk9SIDQyUzAy OiBVbmtub3duIHRhYmxlICd0MScKIFNIT1cgV0FSTklOR1M7CiBMZXZlbAlDb2RlCU1lc3NhZ2UK IFdhcm5pbmcJMTc4CUNhbid0IGV4ZWN1dGUgdGhlIGdpdmVuIGNvbW1hbmQgYmVjYXVzZSB5b3Ug aGF2ZSBhY3RpdmUgbG9ja2VkIHRhYmxlcyBvciBhbiBhY3RpdmUgdHJhbnNhY3Rpb24KKyMgU3dp dGNoIHRvIGNvbm5lY3Rpb24gY29ubjEKIENPTU1JVDsKK1NFTEVDVCBjb3VudCgqKSBGUk9NIHQx OworY291bnQoKikKKzEKKyMgU3dpdGNoIHRvIGNvbm5lY3Rpb24gZGVmYXVsdAogRFJPUCBUQUJM RSB0MTsKCj09PSByZW5hbWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0vci9m YWxjb25fYnVnXzI0MDI0LnJlc3VsdCcgPT4gJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFs Y29uX2J1Z18yNDAyNC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0v ci9mYWxjb25fYnVnXzI0MDI0LnJlc3VsdAkyMDA4LTA0LTIwIDAwOjA1OjE3ICswMDAwCisrKyBi L215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18yNDAyNC5yZXN1bHQJMjAwOC0w OS0wOSAxNDo1OTo0MCArMDAwMApAQCAtMSwyMyArMSwzMSBAQAogKioqIEJ1ZyAjMjQwMjQgKioq Ci1TRVQgU0VTU0lPTiBTVE9SQUdFX0VOR0lORSA9IEZhbGNvbjsKK1NFVCBAQHN0b3JhZ2VfZW5n aW5lID0gJ0ZhbGNvbic7CiBEUk9QIFRBQkxFIElGIEVYSVNUUyB0MTsKLUNSRUFURSBUQUJMRSB0 MShhIElOVCBOT1QgTlVMTCwgYiBJTlQsIHByaW1hcnkga2V5KGEpKTsKK0NSRUFURSBUQUJMRSB0 MShhIGludCwgYiBpbnQsIHByaW1hcnkga2V5KGEpKTsKIElOU0VSVCBJTlRPIHQxKGEpIFZBTFVF UyAoMSk7CiBDT01NSVQ7Ci1TRVQgQVVUT0NPTU1JVCA9IDA7CisjIEVzdGFibGlzaCBjb25uZWN0 aW9uIGNvbm4xICh1c2VyPXJvb3QpCisjIFN3aXRjaCB0byBjb25uZWN0aW9uIGRlZmF1bHQKK1NF VCBAQGF1dG9jb21taXQgPSAwOwogVVBEQVRFIHQxIFNFVCBiID0gNSBXSEVSRSBhID0gMTsKLSMg RXN0YWJsaXNoIHNlc3Npb24gY29uMSAodXNlcj1yb290KQorIyBTd2l0Y2ggdG8gY29ubmVjdGlv biBjb25uMQogSU5TRVJUIElOVE8gdDEoYSkgVkFMVUVTKDcpOwogQ09NTUlUOwogU0VMRUNUICog RlJPTSB0MTsKIGEJYgogMQlOVUxMCiA3CU5VTEwKKyEhISBFcnJvciBtZXNzYWdlIGlzIHRvdGFs IGNyYXAhCishISEgU29tZXRoaW5nIGxpa2UgIkNhbm5vdCBkcm9wIGxvY2tlZCB0YWJsZSIgb3Ig c2ltaWxhciB3b3VsZCBiZSBmaW5lLAorISEhIEJ1dCBuZXZlciB0aGUgbWlzbGVhZGluZyAgICBF UlJPUiA0MlMwMjogVW5rbm93biB0YWJsZSAndDEnLgogRFJPUCBUQUJMRSB0MTsKLSEhISBFcnJv ciBtZXNzYWdlIGhhcyB0byBiZSBkZWNpZGVkLgotISEhIFNvbWV0aGluZyBsaWtlICJDYW5ub3Qg ZHJvcCBsb2NrZWQgdGFibGUiIG9yIHNpbWlsYXIgd291bGQgYmUgZmluZS4KLSEhISBCdXQgbmV2 ZXIgdGhlIG1pc2xlYWRpbmcgICAgRVJST1IgNDJTMDI6IFVua25vd24gdGFibGUgJ3QxJwotQ09N TUlUOwotIyBTd2l0Y2ggdG8gc2Vzc2lvbiBkZWZhdWx0IGFuZCBkaXNjb25uZWN0IHNlc3Npb24g Y29uMQorRVJST1IgNDJTMDI6IFVua25vd24gdGFibGUgJ3QxJworU0hPVyBXQVJOSU5HUzsKK0xl dmVsCUNvZGUJTWVzc2FnZQorV2FybmluZwkxNzgJQ2FuJ3QgZXhlY3V0ZSB0aGUgZ2l2ZW4gY29t bWFuZCBiZWNhdXNlIHlvdSBoYXZlIGFjdGl2ZSBsb2NrZWQgdGFibGVzIG9yIGFuIGFjdGl2ZSB0 cmFuc2FjdGlvbgorU0VMRUNUIGNvdW50KCopIEZST00gdDE7Citjb3VudCgqKQorMgorIyBTd2l0 Y2ggdG8gY29ubmVjdGlvbiBkZWZhdWx0CiBDT01NSVQ7CiBEUk9QIFRBQkxFIHQxOwoKPT09IGFk ZGVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18zODMwNC5yZXN1 bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX2J1Z18zODMwNC5yZXN1 bHQJMTk3MC0wMS0wMSAwMDowMDowMCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNv bi9yL2ZhbGNvbl9idWdfMzgzMDQucmVzdWx0CTIwMDgtMDktMDggMTE6NTE6MTkgKzAwMDAKQEAg LTAsMCArMSw2NDYgQEAKKyoqKiBCdWcgIzwzODMwND4gKioqCitTRVQgQEBzdG9yYWdlX2VuZ2lu ZSA9ICdGYWxjb24nOworRFJPUCBUQUJMRSBJRiBFWElTVFMgdDE7CitTRVQgTE9DQUwgU1FMX01P REU9IiI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVF UyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7Civi lJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1Ag VEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFU RSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMw KSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgn aXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzC u+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NF VCBMT0NBTCBTUUxfTU9ERT0iU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEg KGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVy IHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScp LCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzC quKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FM X01PREU9IlNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRB QkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNo YXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycp LCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc 4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExP Q0FMIFNRTF9NT0RFPSJOT19CQUNLU0xBU0hfRVNDQVBFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDi lJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNl dCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAo J3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKU nOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01P REU9Ik5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJM RSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFy YWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwg KCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKU pOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NB TCBTUUxfTU9ERT0iTk9fQkFDS1NMQVNIX0VTQ0FQRVMsU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitD UkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hh cigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMn KSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK9 4pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7 CitTRVQgTE9DQUwgU1FMX01PREU9Ik5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFOU19U QUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKU nMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJ TlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitT RUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMK K2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJIjsK K0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJj aGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhp cycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pSc wr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0 MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSSxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUg VEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkg Y2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lz JyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvi lJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQg TE9DQUwgU1FMX01PREU9IkFOU0ksU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUg dDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFj dGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgn YScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTi lJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwg U1FMX01PREU9IkFOU0ksU1RSSUNUX1RSQU5TX1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitD UkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hh cigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMn KSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK9 4pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7 CitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0ksTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOworQ1JFQVRF IFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzAp IGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdp cycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK7 4pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VU IExPQ0FMIFNRTF9NT0RFPSJBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9BTExfVEFC TEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWV YCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KU nMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBU QUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxT VFJJQ1RfVFJBTlNfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KU nOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJU IElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNU ICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcwor YQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSSxOT19CQUNL U0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NS RUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFy KDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycp LCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3i lJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsK K1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSV9RVU9URVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pSc w7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQg dXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0 ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzi lZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RF PSJBTlNJX1FVT1RFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzD seKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1 dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rl c3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9 IkFOU0lfUVVPVEVTLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pSc w7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQg dXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0 ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzi lZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RF PSJBTlNJX1FVT1RFUyxTVFJJQ1RfVFJBTlNfVEFCTEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NS RUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFy KDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycp LCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3i lJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsK K1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSV9RVU9URVMsTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOwor Q1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNo YXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlz JyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzC veKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQx OworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyxT VFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzi lKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJ TlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAq IEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EK K3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVTLE5P X0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQx IChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3Rl ciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2En KSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pSc wqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNR TF9NT0RFPSJBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFC TEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzC u+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5T RVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VM RUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitp cworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSV9RVU9U RVMsQU5TSSI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKU nOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZB TFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7 CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RS T1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVTLEFOU0ksU1RSSUNU X0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pSc wqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0 MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9N IHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0 CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxBTlNJLFNU UklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc 4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQg SU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1Qg KiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCith Cit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxB TlNJLFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxF IHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJh Y3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAo J2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk 4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FM IFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTIjsKK0NSRUFU RSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMw KSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgn aXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzC u+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NF VCBMT0NBTCBTUUxfTU9ERT0iQU5TSV9RVU9URVMsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxT VFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzi lKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJ TlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAq IEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EK K3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVTLEFO U0ksTk9fQkFDS1NMQVNIX0VTQ0FQRVMsU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFC TEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hh cmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyks ICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzi lKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9D QUwgU1FMX01PREU9IkFOU0lfUVVPVEVTLEFOU0ksTk9fQkFDS1NMQVNIX0VTQ0FQRVMsU1RSSUNU X1RSQU5TX1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzD seKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1 dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rl c3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9 IlBJUEVTX0FTX0NPTkNBVCI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzi lKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJ TlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAq IEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EK K3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNB VCxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvi lJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VS VCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVD VCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMK K2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NP TkNBVCxTVFJJQ1RfVFJBTlNfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3i lJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOwor SU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOwor U0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlz CitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNf QVNfQ09OQ0FULFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRF IFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzAp IGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdp cycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK7 4pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VU IExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOwor Q1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNo YXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlz JyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzC veKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQx OworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsTk9fQkFDS1NMQVNIX0VTQ0FQ RVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK7 4pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNF UlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxF Q1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lz CithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19D T05DQVQsTk9fQkFDS1NMQVNIX0VTQ0FQRVMsU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUg VEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkg Y2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lz JyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvi lJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQg TE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJ Q1RfVFJBTlNfVEFCTEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKU nMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0 IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgn dGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc 4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9E RT0iUElQRVNfQVNfQ09OQ0FULEFOU0kiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKU nMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJ TlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitT RUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMK K2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19B U19DT05DQVQsQU5TSSxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzD seKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1 dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rl c3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9 IlBJUEVTX0FTX0NPTkNBVCxBTlNJLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxF IHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJh Y3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAo J2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk 4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FM IFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSSxTVFJJQ1RfVFJBTlNfVEFCTEVTLFNUUklD VF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKU nMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8g dDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJP TSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVz dAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FULEFO U0ksTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKU nMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJ TlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitT RUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMK K2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19B U19DT05DQVQsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitD UkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hh cigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMn KSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK9 4pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7 CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJLE5PX0JBQ0tTTEFTSF9F U0NBUEVTLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzC veKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7 CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7 CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3Ro aXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBF U19BU19DT05DQVQsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVT LFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KU nOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJU IElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNU ICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcwor YQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09O Q0FULEFOU0lfUVVPVEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKU pOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElO VE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICog RlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQor dGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FU LEFOU0lfUVVPVEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx 4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0 ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVz dCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWV Cit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0i UElQRVNfQVNfQ09OQ0FULEFOU0lfUVVPVEVTLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRF IFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzAp IGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdp cycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK7 4pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VU IExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSV9RVU9URVMsU1RSSUNUX1RSQU5T X1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK9 4pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsK K0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsK K1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhp cworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVT X0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyI7CitDUkVBVEUgVEFC TEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hh cmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyks ICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzi lKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9D QUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVND QVBFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pSc wrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lO U0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NF TEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcwor aXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FT X0NPTkNBVCxBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFC TEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWV YCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KU nMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBU QUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FULEFOU0lfUVVPVEVT LE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJM RVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVg IHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMg KCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pSc w7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRB QkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSV9RVU9URVMs QU5TSSI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVF UyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7Civi lJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1Ag VEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RF UyxBTlNJLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3i lJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOwor SU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOwor U0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVCit0aGlz CitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNf QVNfQ09OQ0FULEFOU0lfUVVPVEVTLEFOU0ksU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUg VEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkg Y2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lz JyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvi lJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQg TE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxBTlNJLFNUUklDVF9U UkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7Hi lJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRm OCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0 Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUK K3RoaXMKK2lzCithCit0ZXN0CitEUk9QIFRBQkxFIHQxOworU0VUIExPQ0FMIFNRTF9NT0RFPSJQ SVBFU19BU19DT05DQVQsQU5TSV9RVU9URVMsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyI7CitD UkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hh cigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMn KSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CivilJzDseKUnMK9 4pScwrvilJzilKTilJzCquKUnOKVlQordGhpcworaXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7 CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxBTlNJLE5P X0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAo YOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIg c2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyks ICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKK+KUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq 4pSc4pWVCit0aGlzCitpcworYQordGVzdAorRFJPUCBUQUJMRSB0MTsKK1NFVCBMT0NBTCBTUUxf TU9ERT0iUElQRVNfQVNfQ09OQ0FULEFOU0lfUVVPVEVTLEFOU0ksTk9fQkFDS1NMQVNIX0VTQ0FQ RVMsU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pSc wrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lO U0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NF TEVDVCAqIEZST00gdDE7CivilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlQordGhpcwor aXMKK2EKK3Rlc3QKK0RST1AgVEFCTEUgdDE7CitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FT X0NPTkNBVCxBTlNJX1FVT1RFUyxBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFO U19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzC veKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7 CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7 CitTRUxFQ1QgKiBGUk9NIHQxOwor4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZUKK3Ro aXMKK2lzCithCit0ZXN0CitTRUxFQ1QgY291bnQoKikgRlJPTSB0MTsKK2NvdW50KCopCis0CitE Uk9QIFRBQkxFIHQxOwoKPT09IGFkZGVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3Iv ZmFsY29uX2luZGV4X2RhdGF0eXBlcy5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFs Y29uL3IvZmFsY29uX2luZGV4X2RhdGF0eXBlcy5yZXN1bHQJMTk3MC0wMS0wMSAwMDowMDowMCAr MDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9pbmRleF9kYXRhdHlw ZXMucmVzdWx0CTIwMDgtMDktMDQgMTg6Mzg6NDggKzAwMDAKQEAgLTAsMCArMSw5MzkgQEAKK1NF VCBAQHN0b3JhZ2VfZW5naW5lID0gJ0ZhbGNvbic7CitEUk9QIFRBQkxFIElGIEVYSVNUUyB0MTsK K0RST1AgVEFCTEUgSUYgRVhJU1RTIHQyOworQ1JFQVRFIFRBQkxFIHQxICgKK2FfaW50ICAgICAg IElOVCAgICAgICAgICAgICAgICAgTk9UIE5VTEwgQVVUT19JTkNSRU1FTlQgUFJJTUFSWSBLRVks IAorYV90aW55aW50ICAgVElOWUlOVCwKK2FfYmlnaW50ICAgIEJJR0lOVCwKK2FfZmxvYXQgICAg IEZMT0FULAorYV9kb3VibGUgICAgRE9VQkxFLAorYV9kZWNpbWFsICAgREVDSU1BTCgxMCwyKSwK K2FfZGF0ZSAgICAgIERBVEUsCithX3RpbWUgICAgICBUSU1FLAorYV9kYXRldGltZSAgREFURVRJ TUUsCithX3RpbWVzdGFtcCBUSU1FU1RBTVAgICAgICAgICAgIE5PVCBOVUxMIERFRkFVTFQgMCwK K2FfeWVhciAgICAgIFlFQVIsCithX2NoYXIgICAgICBDSEFSKDEwKSwKK2FfdmFyY2hhciAgIFZB UkNIQVIoMjU1KSwKK2FfYmluYXJ5ICAgIEJJTkFSWSg4KSwKK2FfdmFyYmluYXJ5IFZBUkJJTkFS WSgyNTUpLAorYV9lbnVtICAgICAgRU5VTSgnZW51bVZhbHVlT25lJywgJ2VudW1WYWx1ZVR3bycs ICdlbnVtVmFsdWVUaHJlZScpCispOworU0hPVyBDUkVBVEUgVEFCTEUgdDE7CitUYWJsZQlDcmVh dGUgVGFibGUKK3QxCUNSRUFURSBUQUJMRSBgdDFgICgKKyAgYGFfaW50YCBpbnQoMTEpIE5PVCBO VUxMIEFVVE9fSU5DUkVNRU5ULAorICBgYV90aW55aW50YCB0aW55aW50KDQpIERFRkFVTFQgTlVM TCwKKyAgYGFfYmlnaW50YCBiaWdpbnQoMjApIERFRkFVTFQgTlVMTCwKKyAgYGFfZmxvYXRgIGZs b2F0IERFRkFVTFQgTlVMTCwKKyAgYGFfZG91YmxlYCBkb3VibGUgREVGQVVMVCBOVUxMLAorICBg YV9kZWNpbWFsYCBkZWNpbWFsKDEwLDIpIERFRkFVTFQgTlVMTCwKKyAgYGFfZGF0ZWAgZGF0ZSBE RUZBVUxUIE5VTEwsCisgIGBhX3RpbWVgIHRpbWUgREVGQVVMVCBOVUxMLAorICBgYV9kYXRldGlt ZWAgZGF0ZXRpbWUgREVGQVVMVCBOVUxMLAorICBgYV90aW1lc3RhbXBgIHRpbWVzdGFtcCBOT1Qg TlVMTCBERUZBVUxUICcwMDAwLTAwLTAwIDAwOjAwOjAwJywKKyAgYGFfeWVhcmAgeWVhcig0KSBE RUZBVUxUIE5VTEwsCisgIGBhX2NoYXJgIGNoYXIoMTApIERFRkFVTFQgTlVMTCwKKyAgYGFfdmFy Y2hhcmAgdmFyY2hhcigyNTUpIERFRkFVTFQgTlVMTCwKKyAgYGFfYmluYXJ5YCBiaW5hcnkoOCkg REVGQVVMVCBOVUxMLAorICBgYV92YXJiaW5hcnlgIHZhcmJpbmFyeSgyNTUpIERFRkFVTFQgTlVM TCwKKyAgYGFfZW51bWAgZW51bSgnZW51bVZhbHVlT25lJywnZW51bVZhbHVlVHdvJywnZW51bVZh bHVlVGhyZWUnKSBERUZBVUxUIE5VTEwsCisgIFBSSU1BUlkgS0VZIChgYV9pbnRgKQorKSBFTkdJ TkU9RmFsY29uIERFRkFVTFQgQ0hBUlNFVD1sYXRpbjEKK0NSRUFURSBUQUJMRSB0MiAoCithX2lu dCAgICAgICBJTlQgTk9UIE5VTEwgQVVUT19JTkNSRU1FTlQgUFJJTUFSWSBLRVksCithX2JpdCAg ICAgICBCSVQoOCkpOworU0hPVyBDUkVBVEUgVEFCTEUgdDI7CitUYWJsZQlDcmVhdGUgVGFibGUK K3QyCUNSRUFURSBUQUJMRSBgdDJgICgKKyAgYGFfaW50YCBpbnQoMTEpIE5PVCBOVUxMIEFVVE9f SU5DUkVNRU5ULAorICBgYV9iaXRgIGJpdCg4KSBERUZBVUxUIE5VTEwsCisgIFBSSU1BUlkgS0VZ IChgYV9pbnRgKQorKSBFTkdJTkU9RmFsY29uIERFRkFVTFQgQ0hBUlNFVD1sYXRpbjEKK0lOU0VS VCBJTlRPIHQxICgKK2FfdGlueWludCwgYV9iaWdpbnQsIAorYV9mbG9hdCwgYV9kb3VibGUsIGFf ZGVjaW1hbCwgYV9kYXRlLAorYV90aW1lLCBhX2RhdGV0aW1lLCBhX3RpbWVzdGFtcCwgYV95ZWFy LAorYV9jaGFyLCBhX3ZhcmNoYXIsIGFfYmluYXJ5LCBhX3ZhcmJpbmFyeSwKK2FfZW51bSkgCitW QUxVRVMgCisoCisxMjcsIDkyMjMzNzIwMzY4NTQ3NzU4MDcsCis5OTkuOTksIDk5OS4xMjM0NTY3 ODksIDExMS45OSwgJzIwMDgtMDctMDknLCAKKycxMTozMDowMCcsICcyMDA4LTA3LTA5IDExOjMw OjAwJywgJzIwMDgtMDctMDkgMTE6MzA6MDAnLCAnMjAwOCcsCisnYVRlc3RDaGFyJywgJ2FUZXN0 VmFyQ2hhcicsICdhVGVzdEJpbicsICdhVGVzdFZhckJpbmFyeScsIAorJ2VudW1WYWx1ZU9uZScK KyAgICApLAorKAorMTI2LCA5MjIzMzcyMDM2ODU0Nzc1ODA2LAorOTk4Ljg4LCA5OTkuMjM0NTY3 ODkxLCAxMTIuMDAsICcyMDA4LTA3LTEwJywgCisnMTI6MzA6MTAnLCAnMjAwOC0wNy0xMCAxMjoz MDoxMCcsICcyMDA4LTA3LTEwIDEyOjMwOjEwJywgJzIwMDknLAorJ2JUZXN0Q2hhcicsICdiVGVz dFZhckNoYXInLCAnYlRlc3RCaW4nLCAnYlRlc3RWYXJCaW5hcnknLCAKKydlbnVtVmFsdWVUd28n CisgICAgKSwKKygKKzEyNSwgOTIyMzM3MjAzNjg1NDc3NTgwNSwKKzk5Ny43NywgOTk5LjM0NTY3 ODkxMiwgMTEyLjAxLCAnMjAwOC0wNy0xMScsIAorJzEzOjMwOjIwJywgJzIwMDgtMDctMTEgMTM6 MzA6MjAnLCAnMjAwOC0wNy0xMSAxMzozMDoyMCcsICcyMDEwJywKKydjVGVzdENoYXInLCAnY1Rl c3RWYXJDaGFyJywgJ2NUZXN0QmluJywgJ2NUZXN0VmFyQmluYXJ5JywgCisnZW51bVZhbHVlVGhy ZWUnCisgICAgKSwKKygKKzEyNCwgOTIyMzM3MjAzNjg1NDc3NTgwNCwKKzk5Ni42NiwgOTk5LjQ1 Njc4OTEyMywgMTEyLjAyLCAnMjAwOC0wNy0xMicsIAorJzE0OjMwOjMwJywgJzIwMDgtMDctMTIg MTQ6MzA6MzAnLCAnMjAwOC0wNy0xMiAxNDozMDozMCcsICcyMDExJywKKydkVGVzdENoYXInLCAn ZFRlc3RWYXJDaGFyJywgJ2RUZXN0QmluJywgJ2RUZXN0VmFyQmluYXJ5JywgCisnZW51bVZhbHVl T25lJworICAgICksCisoCisxMjMsIDkyMjMzNzIwMzY4NTQ3NzU4MDMsCis5OTUuNTUsIDk5OS41 Njc4OTEyMzQsIDExMi4wMywgJzIwMDgtMDctMTMnLCAKKycxNTozMDo0MCcsICcyMDA4LTA3LTEz IDE1OjMwOjQwJywgJzIwMDgtMDctMTMgMTU6MzA6NDAnLCAnMjAxMicsCisnZVRlc3RDaGFyJywg J2VUZXN0VmFyQ2hhcicsICdlVGVzdEJpbicsICdlVGVzdFZhckJpbmFyeScsIAorJ2VudW1WYWx1 ZVR3bycKKyAgICApOworSU5TRVJUIElOVE8gdDIgKGFfYml0KSBWQUxVRVMgKGInMCcpLCAoYicx JyksIChiJzEwJyksIChiJzExJyksIChiJzEwMCcpOworU0VMRUNUICogRlJPTSB0MTsKK2FfaW50 CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90 aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5h cnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5 OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6 MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RC aW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2 CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDct MTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNo YXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2 ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTExMi4wMQkyMDA4LTA3LTExCTEzOjMwOjIw CTIwMDgtMDctMTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDEwCWNUZXN0Q2hhcglj VGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5hcnkJZW51bVZhbHVlVGhyZWUKKzQJMTI0 CTkyMjMzNzIwMzY4NTQ3NzU4MDQJOTk2LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIwMDgtMDct MTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMTEJ ZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVtVmFsdWVP bmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEyLjAz CTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMw OjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFyeQll bnVtVmFsdWVUd28KK1NFTEVDVCBhX2ludCwgQklOKGFfYml0KzApIEZST00gdDI7CithX2ludAlC SU4oYV9iaXQrMCkKKzEJMAorMgkxCiszCTEwCis0CTExCis1CTEwMAorIy0tLS0tLS0tIFRlc3Q6 IEJJVCAtLS0tLS0tLSMKK0FMVEVSIFRBQkxFIHQyIEFERCBJTkRFWCBpbmRleF9iaXQgKGFfYml0 KTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFf aW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tl ZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MgkwCVBSSU1BUlkJMQlh X2ludAlOVUxMCTIJTlVMTAlOVUxMCQlCVFJFRQkJCit0MgkxCWluZGV4X2JpdAkxCWFfYml0CU5V TEwJMglOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQyIFNFVCBhX2JpdCA9IGIn MTExMTEnOworVVBEQVRFIHQyIFNFVCBhX2JpdCA9IGInMTAxMDEwJyB3aGVyZSBhX2ludCA+IGIn MTAxJzsKK1NFTEVDVCBhX2ludCwgQklOKGFfYml0KzApIEZST00gdDI7CithX2ludAlCSU4oYV9i aXQrMCkKKzEJMAorMgkxCiszCTEwCis0CTExCis1CTEwMAorNgkxMDEwMTAKK1NFTEVDVCBhX2lu dCwgQklOKGFfYml0KzApIEZST00gdDIgV0hFUkUgYV9iaXQgPiBiJzEnIExJTUlUIDE7CithX2lu dAlCSU4oYV9iaXQrMCkKKzMJMTAKK0FMVEVSIFRBQkxFIHQyIERST1AgSU5ERVggaW5kZXhfYml0 OworU0hPVyBJTkRFWEVTIEZST00gdDI7CitUYWJsZQlOb25fdW5pcXVlCUtleV9uYW1lCVNlcV9p bl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJU3ViX3BhcnQJUGFja2Vk CU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3QyCTAJUFJJTUFSWQkxCWFf aW50CU5VTEwJMwlOVUxMCU5VTEwJCUJUUkVFCQkKK1NFTEVDVCBhX2ludCwgQklOKGFfYml0KzAp IEZST00gdDI7CithX2ludAlCSU4oYV9iaXQrMCkKKzEJMAorMgkxCiszCTEwCis0CTExCis1CTEw MAorNgkxMDEwMTAKKyMtLS0tLS0tLSBUZXN0OiBUSU5ZSU5UIC0tLS0tLS0tIworQUxURVIgVEFC TEUgdDEgQUREIElOREVYIGluZGV4X3RpbnlpbnQgKGFfdGlueWludCk7CitTSE9XIElOREVYRVMg RlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9u YW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBl CUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAkyCU5VTEwJ TlVMTAkJQlRSRUUJCQordDEJMQlpbmRleF90aW55aW50CTEJYV90aW55aW50CU5VTEwJMglOVUxM CU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX3RpbnlpbnQgPSA5OTsKK1VQ REFURSB0MSBTRVQgYV90aW55aW50ID0gODggd2hlcmUgYV90aW55aW50ID0gOTk7CitTRUxFQ1Qg KiBGUk9NIHQxIE9SREVSIEJZIGFfdGlueWludDsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlh X2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1l c3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVt Cis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDow MDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNQkxMjMJOTIyMzM3MjAzNjg1NDc3 NTgwMwk5OTUuNTUJOTk5LjU2Nzg5MTIzNAkxMTIuMDMJMjAwOC0wNy0xMwkxNTozMDo0MAkyMDA4 LTA3LTEzIDE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAxMgllVGVzdENoYXIJZVRlc3RW YXJDaGFyCWVUZXN0QmluCWVUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworNAkxMjQJOTIyMzM3 MjAzNjg1NDc3NTgwNAk5OTYuNjYJOTk5LjQ1Njc4OTEyMwkxMTIuMDIJMjAwOC0wNy0xMgkxNDoz MDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAxMQlkVGVzdENo YXIJZFRlc3RWYXJDaGFyCWRUZXN0QmluCWRUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorMwkx MjUJOTIyMzM3MjAzNjg1NDc3NTgwNQk5OTcuNzcJOTk5LjM0NTY3ODkxMgkxMTIuMDEJMjAwOC0w Ny0xMQkxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAx MAljVGVzdENoYXIJY1Rlc3RWYXJDaGFyCWNUZXN0QmluCWNUZXN0VmFyQmluYXJ5CWVudW1WYWx1 ZVRocmVlCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTEx Mi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAx MjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5h cnkJZW51bVZhbHVlVHdvCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIz NDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAw OC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRl c3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfdGlueWlu dCA+IDEgTElNSVQgMTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91Ymxl CWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFf Y2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcy MDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMw OjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hh cglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCitBTFRF UiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X3RpbnlpbnQ7CitTSE9XIElOREVYRVMgRlJPTSB0 MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNv bGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1l bnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAkzCU5VTEwJTlVMTAkJ QlRSRUUJCQorU0VMRUNUICogRlJPTSB0MTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zs b2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3Rh bXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisx CTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4 LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAky MDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZh bHVlT25lCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTEx Mi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAx MjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5h cnkJZW51bVZhbHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1 Njc4OTEyCTExMi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAw OC0wNy0xMSAxMzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rl c3RWYXJCaW5hcnkJZW51bVZhbHVlVGhyZWUKKzQJMTI0CTkyMjMzNzIwMzY4NTQ3NzU4MDQJOTk2 LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIwMDgtMDctMTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAx NDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMTEJZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglk VGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3 NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEyLjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAw OC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0 VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzYJODgJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCisjLS0tLS0tLS0gVGVzdDogQklHSU5UIC0tLS0tLS0tIwor QUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X2JpZ2ludCAoYV9iaWdpbnQpOworU0hPVyBJ TkRFWEVTIEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlD b2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5k ZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3QxCTAJUFJJTUFSWQkxCWFfaW50CU5VTEwJ MwlOVUxMCU5VTEwJCUJUUkVFCQkKK3QxCTEJaW5kZXhfYmlnaW50CTEJYV9iaWdpbnQJTlVMTAkz CU5VTEwJTlVMTAlZRVMJQlRSRUUJCQorSU5TRVJUIElOVE8gdDEgU0VUIGFfYmlnaW50ID0gOTIy MzM3MjAzNjg1NDc3NTgwNDsKK1VQREFURSB0MSBTRVQgYV9iaWdpbnQgPSA5MTExMTExMTExMTEx MTExMTEgd2hlcmUgYV9iaWdpbnQgPSA5MjIzMzcyMDM2ODU0Nzc1ODA0OworU0VMRUNUICogRlJP TSB0MSBPUkRFUiBCWSBhX2JpZ2ludDsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0 CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJ YV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCis2CTg4 CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5 Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIg MTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJ ZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis3CU5VTEwJOTExMTExMTExMTEx MTExMTExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJ OTk1LjU1CTk5OS41Njc4OTEyMzQJMTEyLjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0x MyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hh cgllVGVzdEJpbgllVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4 NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJ MjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNU ZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorMgkxMjYJ OTIyMzM3MjAzNjg1NDc3NTgwNgk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0wNy0x MAkxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOQli VGVzdENoYXIJYlRlc3RWYXJDaGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3 bworMQkxMjcJOTIyMzM3MjAzNjg1NDc3NTgwNwk5OTkuOTkJOTk5LjEyMzQ1Njc4OQkxMTEuOTkJ MjAwOC0wNy0wOQkxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6 MDAJMjAwOAlhVGVzdENoYXIJYVRlc3RWYXJDaGFyCWFUZXN0QmluCWFUZXN0VmFyQmluYXJ5CWVu dW1WYWx1ZU9uZQorU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX2JpZ2ludCA+IDEgTElNSVQgMTsK K2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2Rh dGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJ YV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5 OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkg MTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJ YVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCitBTFRFUiBUQUJMRSB0MSBEUk9Q IElOREVYIGluZGV4X2JpZ2ludDsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3Vu aXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFs aXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50 Cit0MQkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTMJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1Qg KiBGUk9NIHQxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9k ZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFy CWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4 NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJ MjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFU ZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTky MjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJ MTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRl c3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28K KzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIw MDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIw CTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVt VmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIz CTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0x MiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJC aW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTku NTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJ MjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4J ZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAorNwlOVUxMCTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisj LS0tLS0tLS0gVGVzdDogRkxPQVQgLS0tLS0tLS0jCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVgg aW5kZXhfZmxvYXQgKGFfZmxvYXQpOworU0hPVyBJTkRFWEVTIEZST00gdDE7CitUYWJsZQlOb25f dW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGlu YWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1l bnQKK3QxCTAJUFJJTUFSWQkxCWFfaW50CU5VTEwJMwlOVUxMCU5VTEwJCUJUUkVFCQkKK3QxCTEJ aW5kZXhfZmxvYXQJMQlhX2Zsb2F0CU5VTEwJMwlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VS VCBJTlRPIHQxIFNFVCBhX2Zsb2F0ID0gOTk0LjQ0OworVVBEQVRFIHQxIFNFVCBhX2Zsb2F0ID0g OTkzLjMzIHdoZXJlIGFfZmxvYXQgPiA5OTQgQU5EIGFfZmxvYXQgPCA5OTQuNTsKK1NFTEVDVCAq IEZST00gdDEgT1JERVIgQlkgYV9mbG9hdDsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zs b2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3Rh bXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCis2 CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDow MAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxMCTkxMTExMTExMTExMTExMTEx MQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEy LjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1 OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFy eQllbnVtVmFsdWVUd28KKzQJMTI0CTkxMTExMTExMTExMTExMTExMQk5OTYuNjYJOTk5LjQ1Njc4 OTEyMwkxMTIuMDIJMjAwOC0wNy0xMgkxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMDgt MDctMTIgMTQ6MzA6MzAJMjAxMQlkVGVzdENoYXIJZFRlc3RWYXJDaGFyCWRUZXN0QmluCWRUZXN0 VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorMwkxMjUJOTIyMzM3MjAzNjg1NDc3NTgwNQk5OTcuNzcJ OTk5LjM0NTY3ODkxMgkxMTIuMDEJMjAwOC0wNy0xMQkxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMw OjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAxMAljVGVzdENoYXIJY1Rlc3RWYXJDaGFyCWNUZXN0 QmluCWNUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVRocmVlCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1 ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgt MDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZh ckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCisxCTEyNwk5MjIzMzcy MDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMw OjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hh cglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCitTRUxF Q1QgKiBGUk9NIHQxIFdIRVJFIGFfZmxvYXQgPiAxIExJTUlUIDE7CithX2ludAlhX3RpbnlpbnQJ YV9iaWdpbnQJYV9mbG9hdAlhX2RvdWJsZQlhX2RlY2ltYWwJYV9kYXRlCWFfdGltZQlhX2RhdGV0 aW1lCWFfdGltZXN0YW1wCWFfeWVhcglhX2NoYXIJYV92YXJjaGFyCWFfYmluYXJ5CWFfdmFyYmlu YXJ5CWFfZW51bQorMQkxMjcJOTIyMzM3MjAzNjg1NDc3NTgwNwk5OTkuOTkJOTk5LjEyMzQ1Njc4 OQkxMTEuOTkJMjAwOC0wNy0wOQkxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgtMDct MDkgMTE6MzA6MDAJMjAwOAlhVGVzdENoYXIJYVRlc3RWYXJDaGFyCWFUZXN0QmluCWFUZXN0VmFy QmluYXJ5CWVudW1WYWx1ZU9uZQorQUxURVIgVEFCTEUgdDEgRFJPUCBJTkRFWCBpbmRleF9mbG9h dDsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFf aW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tl ZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlh X2ludAlOVUxMCTQJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQxOworYV9pbnQJ YV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3Rp bWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFy eQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5 OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDow MAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJp bglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJ OTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0x MCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hh cgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4 NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJ MjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNU ZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJ OTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEy CTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRU ZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25l Cis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwky MDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0 MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51 bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0w MC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxMCTkxMTEx MTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAw OjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwKKyMtLS0tLS0tLSBUZXN0OiBET1VCTEUgLS0tLS0tLS0jCitBTFRF UiBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfZG91YmxlIChhX2RvdWJsZSk7CitTSE9XIElOREVY RVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVt bl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90 eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAk0CU5V TEwJTlVMTAkJQlRSRUUJCQordDEJMQlpbmRleF9kb3VibGUJMQlhX2RvdWJsZQlOVUxMCTQJTlVM TAlOVUxMCVlFUwlCVFJFRQkJCitJTlNFUlQgSU5UTyB0MSBTRVQgYV9kb3VibGUgPSA5OTkuNjc4 OTEyMzQ1OworVVBEQVRFIHQxIFNFVCBhX2RvdWJsZSA9IDk5OS45OTg4Nzc2NjUgd2hlcmUgYV9k b3VibGUgPSA5OTkuNjc4OTEyMzQ1OworU0VMRUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2RvdWJs ZTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlh X2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNo YXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAorNwlOVUxMCTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM Cis4CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEJMTI3CTkyMjMzNzIwMzY4 NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJ MjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFU ZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTky MjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJ MTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRl c3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28K KzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIw MDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIw CTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVt VmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIz CTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0x MiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJC aW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTku NTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJ MjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4J ZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2 NjUJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfZG91YmxlID4gMSBMSU1J VCAxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFs CWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFy Y2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4 MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0w Ny0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFy Q2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKK0FMVEVSIFRBQkxFIHQx IERST1AgSU5ERVggaW5kZXhfZG91YmxlOworU0hPVyBJTkRFWEVTIEZST00gdDE7CitUYWJsZQlO b25fdW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2Fy ZGluYWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0Nv bW1lbnQKK3QxCTAJUFJJTUFSWQkxCWFfaW50CU5VTEwJNAlOVUxMCU5VTEwJCUJUUkVFCQkKK1NF TEVDVCAqIEZST00gdDE7CithX2ludAlhX3RpbnlpbnQJYV9iaWdpbnQJYV9mbG9hdAlhX2RvdWJs ZQlhX2RlY2ltYWwJYV9kYXRlCWFfdGltZQlhX2RhdGV0aW1lCWFfdGltZXN0YW1wCWFfeWVhcglh X2NoYXIJYV92YXJjaGFyCWFfYmluYXJ5CWFfdmFyYmluYXJ5CWFfZW51bQorMQkxMjcJOTIyMzM3 MjAzNjg1NDc3NTgwNwk5OTkuOTkJOTk5LjEyMzQ1Njc4OQkxMTEuOTkJMjAwOC0wNy0wOQkxMToz MDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOAlhVGVzdENo YXIJYVRlc3RWYXJDaGFyCWFUZXN0QmluCWFUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorMgkx MjYJOTIyMzM3MjAzNjg1NDc3NTgwNgk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0w Ny0xMAkxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAw OQliVGVzdENoYXIJYlRlc3RWYXJDaGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1 ZVR3bworMwkxMjUJOTIyMzM3MjAzNjg1NDc3NTgwNQk5OTcuNzcJOTk5LjM0NTY3ODkxMgkxMTIu MDEJMjAwOC0wNy0xMQkxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMDgtMDctMTEgMTM6 MzA6MjAJMjAxMAljVGVzdENoYXIJY1Rlc3RWYXJDaGFyCWNUZXN0QmluCWNUZXN0VmFyQmluYXJ5 CWVudW1WYWx1ZVRocmVlCis0CTEyNAk5MTExMTExMTExMTExMTExMTEJOTk2LjY2CTk5OS40NTY3 ODkxMjMJMTEyLjAyCTIwMDgtMDctMTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDA4 LTA3LTEyIDE0OjMwOjMwCTIwMTEJZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVz dFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1 CTk5OS41Njc4OTEyMzQJMTEyLjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNToz MDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVz dEJpbgllVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzYJODgJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCis3CU5VTEwJOTExMTExMTExMTExMTExMTExCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwKKzgJTlVMTAlOVUxMCTk5My4zMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0w MCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOQlOVUxMCU5VTEwJTlVM TAk5OTkuOTk4ODc3NjY1CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorIy0tLS0tLS0tIFRlc3Q6IERFQ0lNQUwgLS0t LS0tLS0jCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfZGVjaW1hbCAoYV9kZWNpbWFs KTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFf aW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tl ZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlh X2ludAlOVUxMCTQJTlVMTAlOVUxMCQlCVFJFRQkJCit0MQkxCWluZGV4X2RlY2ltYWwJMQlhX2Rl Y2ltYWwJTlVMTAk0CU5VTEwJTlVMTAlZRVMJQlRSRUUJCQorSU5TRVJUIElOVE8gdDEgU0VUIGFf ZGVjaW1hbCA9IDExMi4wNDsKK1VQREFURSB0MSBTRVQgYV9kZWNpbWFsID0gMTEyLjA1IHdoZXJl IGFfZGVjaW1hbCA9IDExMi4wNDsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIgQlkgYV9kZWNpbWFs OworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFf ZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hh cglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzYJODgJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2NjUJTlVMTAlOVUxMCU5VTEwJTlVM TAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5V TEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6 MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzcJTlVMTAk5MTExMTExMTExMTExMTEx MTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMQkxMjcJOTIyMzM3MjAzNjg1NDc3NTgwNwk5OTku OTkJOTk5LjEyMzQ1Njc4OQkxMTEuOTkJMjAwOC0wNy0wOQkxMTozMDowMAkyMDA4LTA3LTA5IDEx OjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOAlhVGVzdENoYXIJYVRlc3RWYXJDaGFyCWFU ZXN0QmluCWFUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorMgkxMjYJOTIyMzM3MjAzNjg1NDc3 NTgwNgk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0wNy0xMAkxMjozMDoxMAkyMDA4 LTA3LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOQliVGVzdENoYXIJYlRlc3RW YXJDaGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworMwkxMjUJOTIyMzM3 MjAzNjg1NDc3NTgwNQk5OTcuNzcJOTk5LjM0NTY3ODkxMgkxMTIuMDEJMjAwOC0wNy0xMQkxMzoz MDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAxMAljVGVzdENo YXIJY1Rlc3RWYXJDaGFyCWNUZXN0QmluCWNUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVRocmVlCis0 CTEyNAk5MTExMTExMTExMTExMTExMTEJOTk2LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIwMDgt MDctMTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIw MTEJZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVtVmFs dWVPbmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEy LjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1 OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFy eQllbnVtVmFsdWVUd28KKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlO VUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKK1NF TEVDVCAqIEZST00gdDEgV0hFUkUgYV9kZWNpbWFsID4gMSBMSU1JVCAxOworYV9pbnQJYV90aW55 aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9k YXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3Zh cmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0 NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4 LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVz dFZhckJpbmFyeQllbnVtVmFsdWVPbmUKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhf ZGVjaW1hbDsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFt ZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0 CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1B UlkJMQlhX2ludAlOVUxMCTUJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQxOwor YV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0 ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglh X2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5 Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAx MTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglh VGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3 NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAw OC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0 VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMz NzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6 MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RD aGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQor NAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4 LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAky MDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZh bHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTEx Mi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAx NTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5h cnkJZW51bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ MDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxM CTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5 OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlO VUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxM CTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKyMtLS0t LS0tLSBUZXN0OiBEQVRFIC0tLS0tLS0tIworQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4 X2RhdGUgKGFfZGF0ZSk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJ S2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlT dWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJ MAlQUklNQVJZCTEJYV9pbnQJTlVMTAk1CU5VTEwJTlVMTAkJQlRSRUUJCQordDEJMQlpbmRleF9k YXRlCTEJYV9kYXRlCU5VTEwJNQlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQx IFNFVCBhX2RhdGUgPSAnMjAwOC0wNy0xNCc7CitVUERBVEUgdDEgU0VUIGFfZGF0ZSA9ICcyMDA4 LTA4LTE0JyB3aGVyZSBhX2RhdGUgPSAnMjAwOC0wNy0xNCc7CitTRUxFQ1QgKiBGUk9NIHQxIE9S REVSIEJZIGFfZGF0ZTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91Ymxl CWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFf Y2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCis2CTg4CU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTAJTlVMTAlOVUxMCU5VTEwJTlVMTAkxMTIuMDUJTlVMTAlO VUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAorOQlOVUxMCU5VTEwJTlVMTAk5OTkuOTk4ODc3NjY1CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAw MC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOAlOVUxMCU5V TEwJOTkzLjMzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis3CU5VTEwJOTExMTExMTExMTExMTExMTExCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5 OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDow MAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJp bglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJ OTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0x MCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hh cgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4 NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJ MjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNU ZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJ OTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEy CTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRU ZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25l Cis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwky MDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0 MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51 bVZhbHVlVHdvCisxMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorU0VM RUNUICogRlJPTSB0MSBXSEVSRSBhX2RhdGUgPiAnMjAwOC0wMS0wMScgTElNSVQgMTsKK2FfaW50 CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90 aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5h cnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5 OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6 MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RC aW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVY IGluZGV4X2RhdGU7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5 X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJf cGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJMAlQ UklNQVJZCTEJYV9pbnQJTlVMTAk1CU5VTEwJTlVMTAkJQlRSRUUJCQorU0VMRUNUICogRlJPTSB0 MTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlh X2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNo YXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3 CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDct MDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNo YXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCisyCTEyNgk5MjIzMzcyMDM2 ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEw CTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgli VGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCiszCTEyNQk5 MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTExMi4wMQkyMDA4LTA3LTEx CTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDEwCWNU ZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5hcnkJZW51bVZhbHVlVGhy ZWUKKzQJMTI0CTkxMTExMTExMTExMTExMTExMQk5OTYuNjYJOTk5LjQ1Njc4OTEyMwkxMTIuMDIJ MjAwOC0wNy0xMgkxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6 MzAJMjAxMQlkVGVzdENoYXIJZFRlc3RWYXJDaGFyCWRUZXN0QmluCWRUZXN0VmFyQmluYXJ5CWVu dW1WYWx1ZU9uZQorNQkxMjMJOTIyMzM3MjAzNjg1NDc3NTgwMwk5OTUuNTUJOTk5LjU2Nzg5MTIz NAkxMTIuMDMJMjAwOC0wNy0xMwkxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMDgtMDct MTMgMTU6MzA6NDAJMjAxMgllVGVzdENoYXIJZVRlc3RWYXJDaGFyCWVUZXN0QmluCWVUZXN0VmFy QmluYXJ5CWVudW1WYWx1ZVR3bworNgk4OAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzcJ TlVMTAk5MTExMTExMTExMTExMTExMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAw MC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOAlOVUxMCU5V TEwJOTkzLjMzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2 NjUJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCisxMAlOVUxMCU5VTEwJTlVMTAlOVUxMCTExMi4wNQlOVUxMCU5VTEwJ TlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisx MQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5VTEwJMDAwMC0wMC0w MCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorIy0tLS0tLS0tIFRlc3Q6 IFRJTUUgLS0tLS0tLS0jCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfdGltZSAoYV90 aW1lKTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlT ZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBh Y2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJ MQlhX2ludAlOVUxMCTUJTlVMTAlOVUxMCQlCVFJFRQkJCit0MQkxCWluZGV4X3RpbWUJMQlhX3Rp bWUJTlVMTAk1CU5VTEwJTlVMTAlZRVMJQlRSRUUJCQorSU5TRVJUIElOVE8gdDEgU0VUIGFfdGlt ZSA9ICcxNjozMDo1MCc7CitVUERBVEUgdDEgU0VUIGFfdGltZSA9ICcxNzozMTowMCcgd2hlcmUg YV90aW1lID0gJzE2OjMwOjUwJzsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIgQlkgYV90aW1lOwor YV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0 ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglh X2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzcJTlVMTAk5MTExMTExMTExMTExMTExMTEJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgt MTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxMCTAwMDAt MDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxM CU5VTEwJOTk5Ljk5ODg3NzY2NQlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6 MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzgJTlVMTAlOVUxMCTk5My4zMwlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAorNgk4OAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAw MDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEJMTI3CTky MjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJ MTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRl c3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUK KzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIw MDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEw CTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVt VmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJ MTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTEx IDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJp bmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTku NDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJ MjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4J ZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5 NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMg MTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJ ZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCisxMglOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYV90aW1lID4gJzEx OjAwOjAwJyBMSU1JVCAxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3Vi bGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJ YV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMz NzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6 MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RD aGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKK0FM VEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfdGltZTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQx OworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29s bGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVu dAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTYJTlVMTAlOVUxMCQlC VFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxv YXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFt cAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJ MTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgt MDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIw MDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFs dWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEy LjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEy OjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFy eQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2 Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4 LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVz dFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42 Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6 MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRl c3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1 ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgt MDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZh ckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxMCTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVM TAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxM CU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwKKzExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4 LTE0CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAw MDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKyMtLS0tLS0t LSBUZXN0OiBEQVRFVElNRSAtLS0tLS0tLSMKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRFWCBpbmRl eF9kYXRldGltZSAoYV9kYXRldGltZSk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5v bl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJk aW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29t bWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAk2CU5VTEwJTlVMTAkJQlRSRUUJCQordDEJ MQlpbmRleF9kYXRldGltZQkxCWFfZGF0ZXRpbWUJTlVMTAk2CU5VTEwJTlVMTAlZRVMJQlRSRUUJ CQorSU5TRVJUIElOVE8gdDEgU0VUIGFfZGF0ZXRpbWUgPSAnMjAwOC0wNy0xNCAxNjozMDo1MCc7 CitVUERBVEUgdDEgU0VUIGFfZGF0ZXRpbWUgPSAnMjAwOC0wOC0xNCAxNzozMTowMCcgd2hlcmUg YV9kYXRldGltZSA9ICcyMDA4LTA3LTE0IDE2OjMwOjUwJzsKK1NFTEVDVCAqIEZST00gdDEgT1JE RVIgQlkgYV9kYXRldGltZTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91 YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFy CWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCis3CU5VTEwJOTEx MTExMTExMTExMTExMTExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEyCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCTE3OjMxOjAwCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgt MDgtMTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxMCTAw MDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlO VUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6 MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzYJODgJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEJMTI3 CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDct MDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJ YVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVP bmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAw CTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMw OjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQll bnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5 MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3 LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZh ckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5 OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6 MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RC aW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAz CTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDct MTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNo YXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCisxMwlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQgMTc6MzE6MDAJMDAwMC0wMC0wMCAwMDow MDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorU0VMRUNUICogRlJPTSB0MSBXSEVS RSBhX2RhdGV0aW1lID4gJzIwMDgtMDctMTAgMDA6MDA6MDAnIExJTUlUIDE7CithX2ludAlhX3Rp bnlpbnQJYV9iaWdpbnQJYV9mbG9hdAlhX2RvdWJsZQlhX2RlY2ltYWwJYV9kYXRlCWFfdGltZQlh X2RhdGV0aW1lCWFfdGltZXN0YW1wCWFfeWVhcglhX2NoYXIJYV92YXJjaGFyCWFfYmluYXJ5CWFf dmFyYmluYXJ5CWFfZW51bQorMgkxMjYJOTIyMzM3MjAzNjg1NDc3NTgwNgk5OTguODgJOTk5LjIz NDU2Nzg5MQkxMTIuMDAJMjAwOC0wNy0xMAkxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIw MDgtMDctMTAgMTI6MzA6MTAJMjAwOQliVGVzdENoYXIJYlRlc3RWYXJDaGFyCWJUZXN0QmluCWJU ZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworQUxURVIgVEFCTEUgdDEgRFJPUCBJTkRFWCBpbmRl eF9kYXRldGltZTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlf bmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9w YXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBS SU1BUlkJMQlhX2ludAlOVUxMCTYJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQx OworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFf ZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hh cglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJ OTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0w OSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hh cglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4 NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJ MjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJU ZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTky MjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJ MTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rl c3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJl ZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgky MDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDoz MAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51 bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0 CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0x MyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJC aW5hcnkJZW51bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlO VUxMCTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAw LTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVM TAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2 NQlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlO VUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEx CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0CU5VTEwJTlVMTAkwMDAwLTAwLTAw IDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMglOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJMjAwOC0wOC0xNCAxNzozMTowMAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCisjLS0tLS0tLS0gVGVzdDogVElNRVNUQU1QIC0tLS0tLS0tIwor QUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X3RpbWVzdGFtcCAoYV90aW1lc3RhbXApOwor U0hPVyBJTkRFWEVTIEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVlCUtleV9uYW1lCVNlcV9pbl9p bmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJU3ViX3BhcnQJUGFja2VkCU51 bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3QxCTAJUFJJTUFSWQkxCWFfaW50 CU5VTEwJNglOVUxMCU5VTEwJCUJUUkVFCQkKK3QxCTEJaW5kZXhfdGltZXN0YW1wCTEJYV90aW1l c3RhbXAJTlVMTAk2CU5VTEwJTlVMTAkJQlRSRUUJCQorSU5TRVJUIElOVE8gdDEgU0VUIGFfdGlt ZXN0YW1wID0gJzIwMDgtMDctMTQgMTY6MzA6NTAnOworVVBEQVRFIHQxIFNFVCBhX3RpbWVzdGFt cCA9ICcyMDA4LTA4LTE0IDE5OjIwOjIxJyB3aGVyZSBhX3RpbWVzdGFtcCA9ICcyMDA4LTA3LTE0 IDE2OjMwOjUwJzsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIgQlkgYV90aW1lc3RhbXA7CithX2lu dAlhX3RpbnlpbnQJYV9iaWdpbnQJYV9mbG9hdAlhX2RvdWJsZQlhX2RlY2ltYWwJYV9kYXRlCWFf dGltZQlhX2RhdGV0aW1lCWFfdGltZXN0YW1wCWFfeWVhcglhX2NoYXIJYV92YXJjaGFyCWFfYmlu YXJ5CWFfdmFyYmluYXJ5CWFfZW51bQorOAlOVUxMCU5VTEwJOTkzLjMzCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCisxMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQgMTc6 MzE6MDAJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAor MTIJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTc6MzE6MDAJTlVMTAkwMDAwLTAwLTAw IDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMQlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTAJTlVMTAlOVUxMCU5VTEwJTlVMTAkxMTIuMDUJ TlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAorNgk4OAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAt MDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzcJTlVMTAk5MTExMTEx MTExMTExMTExMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDow MDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOQlOVUxMCU5VTEwJTlVMTAk5OTku OTk4ODc3NjY1CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMQkxMjcJOTIyMzM3MjAzNjg1NDc3NTgwNwk5OTkuOTkJ OTk5LjEyMzQ1Njc4OQkxMTEuOTkJMjAwOC0wNy0wOQkxMTozMDowMAkyMDA4LTA3LTA5IDExOjMw OjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOAlhVGVzdENoYXIJYVRlc3RWYXJDaGFyCWFUZXN0 QmluCWFUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorMgkxMjYJOTIyMzM3MjAzNjg1NDc3NTgw Ngk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0wNy0xMAkxMjozMDoxMAkyMDA4LTA3 LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOQliVGVzdENoYXIJYlRlc3RWYXJD aGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworMwkxMjUJOTIyMzM3MjAz Njg1NDc3NTgwNQk5OTcuNzcJOTk5LjM0NTY3ODkxMgkxMTIuMDEJMjAwOC0wNy0xMQkxMzozMDoy MAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAxMAljVGVzdENoYXIJ Y1Rlc3RWYXJDaGFyCWNUZXN0QmluCWNUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVRocmVlCis0CTEy NAk5MTExMTExMTExMTExMTExMTEJOTk2LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIwMDgtMDct MTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMTEJ ZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVtVmFsdWVP bmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEyLjAz CTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMw OjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFyeQll bnVtVmFsdWVUd28KKzE0CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAky MDA4LTA4LTE0IDE5OjIwOjIxCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCitTRUxFQ1Qg KiBGUk9NIHQxIFdIRVJFIGFfdGltZXN0YW1wID4gJzIwMDgtMDctMTAgMDA6MDA6MDAnIExJTUlU IDE7CithX2ludAlhX3RpbnlpbnQJYV9iaWdpbnQJYV9mbG9hdAlhX2RvdWJsZQlhX2RlY2ltYWwJ YV9kYXRlCWFfdGltZQlhX2RhdGV0aW1lCWFfdGltZXN0YW1wCWFfeWVhcglhX2NoYXIJYV92YXJj aGFyCWFfYmluYXJ5CWFfdmFyYmluYXJ5CWFfZW51bQorMgkxMjYJOTIyMzM3MjAzNjg1NDc3NTgw Ngk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0wNy0xMAkxMjozMDoxMAkyMDA4LTA3 LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOQliVGVzdENoYXIJYlRlc3RWYXJD aGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworQUxURVIgVEFCTEUgdDEg RFJPUCBJTkRFWCBpbmRleF90aW1lc3RhbXA7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxl CU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglD YXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhf Q29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAk3CU5VTEwJTlVMTAkJQlRSRUUJCQor U0VMRUNUICogRlJPTSB0MTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91 YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFy CWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIz MzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTEx OjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0 Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCisy CTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4 LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAky MDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZh bHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTEx Mi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAx MzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5h cnkJZW51bVZhbHVlVGhyZWUKKzQJMTI0CTkxMTExMTExMTExMTExMTExMQk5OTYuNjYJOTk5LjQ1 Njc4OTEyMwkxMTIuMDIJMjAwOC0wNy0xMgkxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIw MDgtMDctMTIgMTQ6MzA6MzAJMjAxMQlkVGVzdENoYXIJZFRlc3RWYXJDaGFyCWRUZXN0QmluCWRU ZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorNQkxMjMJOTIyMzM3MjAzNjg1NDc3NTgwMwk5OTUu NTUJOTk5LjU2Nzg5MTIzNAkxMTIuMDMJMjAwOC0wNy0xMwkxNTozMDo0MAkyMDA4LTA3LTEzIDE1 OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAxMgllVGVzdENoYXIJZVRlc3RWYXJDaGFyCWVU ZXN0QmluCWVUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworNgk4OAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzcJTlVMTAk5MTExMTExMTExMTExMTExMTEJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAorOAlOVUxMCU5VTEwJOTkzLjMzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis5CU5VTEwJTlVMTAlO VUxMCTk5OS45OTg4Nzc2NjUJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAw CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMAlOVUxMCU5VTEwJTlVMTAlOVUxMCTEx Mi4wNQlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCisxMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxM CU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAor MTIJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTc6MzE6MDAJTlVMTAkwMDAwLTAwLTAw IDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMwlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQgMTc6MzE6MDAJMDAwMC0wMC0wMCAwMDow MDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTQJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQgMTk6MjA6MjEJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwKKyMtLS0tLS0tLSBUZXN0OiBZRUFSIC0tLS0tLS0tIworQUxURVIgVEFC TEUgdDEgQUREIElOREVYIGluZGV4X3llYXIgKGFfeWVhcik7CitTSE9XIElOREVYRVMgRlJPTSB0 MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNv bGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1l bnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAk3CU5VTEwJTlVMTAkJ QlRSRUUJCQordDEJMQlpbmRleF95ZWFyCTEJYV95ZWFyCU5VTEwJNwlOVUxMCU5VTEwJWUVTCUJU UkVFCQkKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX3llYXIgPSAnMjAxMyc7CitVUERBVEUgdDEgU0VU IGFfeWVhciA9ICcyMDIwJyB3aGVyZSBhX3llYXIgTElLRSAnMjAxMyc7CitTRUxFQ1QgKiBGUk9N IHQxIE9SREVSIEJZIGFfeWVhcjsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFf ZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95 ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCis4CU5VTEwJ TlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE0CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE5OjIwOjIxCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCisxMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgt MTQgMTc6MzE6MDAJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAorMTIJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTc6MzE6MDAJTlVMTAkwMDAw LTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMQlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDow MAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNgk4OAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwKKzcJTlVMTAk5MTExMTExMTExMTExMTExMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAorMTAJTlVMTAlOVUxMCU5VTEwJTlVMTAkxMTIuMDUJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0w MCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOQlOVUxMCU5VTEwJTlVM TAk5OTkuOTk4ODc3NjY1CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMQkxMjcJOTIyMzM3MjAzNjg1NDc3NTgwNwk5 OTkuOTkJOTk5LjEyMzQ1Njc4OQkxMTEuOTkJMjAwOC0wNy0wOQkxMTozMDowMAkyMDA4LTA3LTA5 IDExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOAlhVGVzdENoYXIJYVRlc3RWYXJDaGFy CWFUZXN0QmluCWFUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorMgkxMjYJOTIyMzM3MjAzNjg1 NDc3NTgwNgk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0wNy0xMAkxMjozMDoxMAky MDA4LTA3LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOQliVGVzdENoYXIJYlRl c3RWYXJDaGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworMwkxMjUJOTIy MzM3MjAzNjg1NDc3NTgwNQk5OTcuNzcJOTk5LjM0NTY3ODkxMgkxMTIuMDEJMjAwOC0wNy0xMQkx MzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAxMAljVGVz dENoYXIJY1Rlc3RWYXJDaGFyCWNUZXN0QmluCWNUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVRocmVl Cis0CTEyNAk5MTExMTExMTExMTExMTExMTEJOTk2LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIw MDgtMDctMTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMw CTIwMTEJZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVt VmFsdWVPbmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJ MTEyLjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEz IDE1OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJp bmFyeQllbnVtVmFsdWVUd28KKzE1CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCTIwMjAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCitT RUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfeWVhciA+ICcxOTk5JyBMSU1JVCAxOworYV9pbnQJYV90 aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJ YV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlh X3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4x MjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAky MDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglh VGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5k ZXhfeWVhcjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFt ZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0 CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1B UlkJMQlhX2ludAlOVUxMCTcJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQxOwor YV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0 ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglh X2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5 Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAx MTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglh VGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3 NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAw OC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0 VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMz NzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6 MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RD aGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQor NAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4 LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAky MDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZh bHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTEx Mi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAx NTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5h cnkJZW51bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ MDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxM CTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5 OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlO VUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxM CTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzExCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAw OjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMjAwOC0wOC0xNCAxNzozMTowMAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCisxNAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMjAwOC0wOC0xNCAxOToyMDoyMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTUJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6 MDAJMjAyMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKyMtLS0tLS0tLSBUZXN0OiBDSEFSIC0t LS0tLS0tIworQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X2NoYXIgKGFfY2hhcik7CitT SE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2lu ZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVs bAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJ TlVMTAk3CU5VTEwJTlVMTAkJQlRSRUUJCQordDEJMQlpbmRleF9jaGFyCTEJYV9jaGFyCU5VTEwJ NwlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX2NoYXIgPSAnZlRl c3RDaGFyJzsKK1VQREFURSB0MSBTRVQgYV9jaGFyID0gJ2dUZXN0Q2hhcicgd2hlcmUgYV9jaGFy ID0gJ2ZUZXN0Q2hhcic7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfY2hhcjsKK2FfaW50 CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90 aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5h cnkJYV92YXJiaW5hcnkJYV9lbnVtCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2NjUJTlVM TAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCisxMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOAlO VUxMCU5VTEwJOTkzLjMzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAw OjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis3CU5VTEwJOTExMTExMTExMTExMTEx MTExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzYJODgJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAt MDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEzCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxNzozMTowMAkwMDAwLTAwLTAw IDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxOToyMDoyMQlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTUJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJMjAyMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwK KzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEJMTI3CTkyMjMzNzIwMzY4 NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJ MjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFU ZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTky MjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJ MTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRl c3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28K KzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIw MDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIw CTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVt VmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIz CTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0x MiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJC aW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTku NTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJ MjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4J ZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCisxNglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCWdUZXN0Q2hhcglOVUxMCU5V TEwJTlVMTAlOVUxMCitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfY2hhciA+ICdhZmFsY29uJyBM SU1JVCAxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNp bWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFf dmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3 NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAw OC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0 VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKK0FMVEVSIFRBQkxF IHQxIERST1AgSU5ERVggaW5kZXhfY2hhcjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJ Tm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNh cmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9D b21tZW50Cit0MQkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTgJTlVMTAlOVUxMCQlCVFJFRQkJCitT RUxFQ1QgKiBGUk9NIHQxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3Vi bGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJ YV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMz NzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6 MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RD aGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJ MTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgt MDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIw MDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFs dWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEy LjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEz OjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFy eQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2 Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAw OC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRl c3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41 NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6 MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRl c3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAorNwlOVUxMCTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAt MDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxMCU5V TEwJOTk5Ljk5ODg3NzY2NQlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEy LjA1CU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0CU5VTEwJ TlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisx MglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEzCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxNzozMTowMAkwMDAwLTAwLTAwIDAwOjAw OjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxOToyMDoyMQlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAorMTUJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CTAwMDAtMDAtMDAgMDA6MDA6MDAJMjAyMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE2CU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAw CU5VTEwJZ1Rlc3RDaGFyCU5VTEwJTlVMTAlOVUxMCU5VTEwKKyMtLS0tLS0tLSBUZXN0OiBWQVJD SEFSIC0tLS0tLS0tIworQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X3ZhcmNoYXIgKGFf dmFyY2hhcik7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25h bWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFy dAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklN QVJZCTEJYV9pbnQJTlVMTAk4CU5VTEwJTlVMTAkJQlRSRUUJCQordDEJMQlpbmRleF92YXJjaGFy CTEJYV92YXJjaGFyCU5VTEwJOAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQx IFNFVCBhX3ZhcmNoYXIgPSAnZlRlc3RWYXJDaGFyJzsKK1VQREFURSB0MSBTRVQgYV92YXJjaGFy ID0gJ2dUZXN0VmFyQ2hhcicgd2hlcmUgYV92YXJjaGFyID0gJ2ZUZXN0VmFyQ2hhcic7CitTRUxF Q1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfdmFyY2hhcjsKK2FfaW50CWFfdGlueWludAlhX2JpZ2lu dAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90 aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9l bnVtCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2NjUJTlVMTAlOVUxMCU5VTEwJTlVMTAkw MDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMAlOVUxM CU5VTEwJTlVMTAlOVUxMCTExMi4wNQlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAw CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwKKzgJTlVMTAlOVUxMCTk5My4zMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlO VUxMCTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAw LTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis2CTg4CU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAkyMDA4LTA4LTE0IDE3OjMxOjAwCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwKKzE0CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAkyMDA4LTA4LTE0IDE5OjIwOjIxCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisx NQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDow MDowMAkyMDIwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTYJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlnVGVzdENoYXIJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgt MTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwKKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTEx Ljk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDEx OjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFy eQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1 Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4 LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVz dFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3 CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzoz MDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVz dEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTEx MTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgt MDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZh ckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcy MDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMw OjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hh cgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCisxNwlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDow MAlOVUxMCU5VTEwJZ1Rlc3RWYXJDaGFyCU5VTEwJTlVMTAlOVUxMCitTRUxFQ1QgKiBGUk9NIHQx IFdIRVJFIGFfdmFyY2hhciA+ICdhZmFsY29uJyBMSU1JVCAxOworYV9pbnQJYV90aW55aW50CWFf YmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGlt ZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFy eQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJ MTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5 IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJp bmFyeQllbnVtVmFsdWVPbmUKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfdmFyY2hh cjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFf aW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tl ZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlh X2ludAlOVUxMCTgJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQxOworYV9pbnQJ YV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3Rp bWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFy eQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5 OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDow MAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJp bglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJ OTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0x MCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hh cgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4 NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJ MjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNU ZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJ OTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEy CTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRU ZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25l Cis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwky MDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0 MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51 bVZhbHVlVHdvCis2CTg4CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0w MC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxMCTkxMTEx MTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAw OjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlOVUxMCU5V TEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwKKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxMCTAwMDAt MDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzExCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAw CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAkxNzozMTowMAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwKKzEzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAw OC0wOC0xNCAxNzozMTowMAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCisxNAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAw OC0wOC0xNCAxOToyMDoyMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTUJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJMjAy MAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE2CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJZ1Rlc3RDaGFyCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzE3CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkw MDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlnVGVzdFZhckNoYXIJTlVMTAlOVUxMCU5VTEwK KyMtLS0tLS0tLSBUZXN0OiBCSU5BUlkgLS0tLS0tLS0jCitBTFRFUiBUQUJMRSB0MSBBREQgSU5E RVggaW5kZXhfYmluYXJ5IChhX2JpbmFyeSk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxl CU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglD YXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhf Q29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAk4CU5VTEwJTlVMTAkJQlRSRUUJCQor dDEJMQlpbmRleF9iaW5hcnkJMQlhX2JpbmFyeQlOVUxMCTgJTlVMTAlOVUxMCVlFUwlCVFJFRQkJ CitJTlNFUlQgSU5UTyB0MSBTRVQgYV9iaW5hcnkgPSAnZlRlc3RCaW4nOworVVBEQVRFIHQxIFNF VCBhX2JpbmFyeSA9ICdnVGVzdEJpbicgd2hlcmUgYV9iaW5hcnkgPSAnZlRlc3RCaW4nOworU0VM RUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2JpbmFyeTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2lu dAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90 aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9l bnVtCisxMAlOVUxMCU5VTEwJTlVMTAlOVUxMCTExMi4wNQlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMQlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE3OjMxOjAwCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzkJTlVMTAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlO VUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzgJTlVMTAlOVUxMCTk5My4zMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ MDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxM CTkxMTExMTExMTExMTExMTExMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis2CTg4CU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTQJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTIwMDgtMDgtMTQgMTk6MjA6MjEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwK KzE1CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAw OjAwOjAwCTIwMjAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNglOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCWdUZXN0Q2hh cglOVUxMCU5VTEwJTlVMTAlOVUxMCisxNwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJZ1Rlc3RWYXJDaGFyCU5VTEwJ TlVMTAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxM CTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEJMTI3 CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDct MDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJ YVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVP bmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4OTEJMTEyLjAw CTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMw OjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZhckJpbmFyeQll bnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5OS4zNDU2Nzg5 MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDA4LTA3 LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJpbgljVGVzdFZh ckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5 OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6 MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RC aW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAz CTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDct MTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNo YXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCisxOAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlnVGVzdEJpbglOVUxMCU5VTEwKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYV9iaW5hcnkg PiAnYWZhbGNvbicgTElNSVQgMTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFf ZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95 ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisyCTEyNgk5 MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEw CTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJU ZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdv CitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X2JpbmFyeTsKK1NIT1cgSU5ERVhFUyBG Uk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25h bWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJ Q29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTkJTlVMTAlO VUxMCQlCVFJFRQkJCitTRUxFQ1QgKiBGUk9NIHQxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50 CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3Rp bWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2Vu dW0KKzEJMTI3CTkyMjMzNzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5 CTIwMDgtMDctMDkJMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMw OjAwCTIwMDgJYVRlc3RDaGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQll bnVtVmFsdWVPbmUKKzIJMTI2CTkyMjMzNzIwMzY4NTQ3NzU4MDYJOTk4Ljg4CTk5OS4yMzQ1Njc4 OTEJMTEyLjAwCTIwMDgtMDctMTAJMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA4LTA3 LTEwIDEyOjMwOjEwCTIwMDkJYlRlc3RDaGFyCWJUZXN0VmFyQ2hhcgliVGVzdEJpbgliVGVzdFZh ckJpbmFyeQllbnVtVmFsdWVUd28KKzMJMTI1CTkyMjMzNzIwMzY4NTQ3NzU4MDUJOTk3Ljc3CTk5 OS4zNDU2Nzg5MTIJMTEyLjAxCTIwMDgtMDctMTEJMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoy MAkyMDA4LTA3LTExIDEzOjMwOjIwCTIwMTAJY1Rlc3RDaGFyCWNUZXN0VmFyQ2hhcgljVGVzdEJp bgljVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUaHJlZQorNAkxMjQJOTExMTExMTExMTExMTExMTEx CTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDct MTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDExCWRUZXN0Q2hhcglkVGVzdFZhckNo YXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis1CTEyMwk5MjIzMzcyMDM2 ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4wMwkyMDA4LTA3LTEzCTE1OjMwOjQw CTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDEyCWVUZXN0Q2hhcgll VGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCis2CTg4CU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNwlOVUxMCTkxMTExMTExMTExMTExMTExMQlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwK KzkJTlVMTAlOVUxMCU5VTEwJOTk5Ljk5ODg3NzY2NQlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAt MDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEwCU5VTEwJTlVM TAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAky MDA4LTA4LTE0CU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlO VUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEz CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxNzozMTowMAkw MDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxOToyMDoyMQlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTUJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJMjAyMAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwKKzE2CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAw LTAwLTAwIDAwOjAwOjAwCU5VTEwJZ1Rlc3RDaGFyCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE3CU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAw CU5VTEwJTlVMTAlnVGVzdFZhckNoYXIJTlVMTAlOVUxMCU5VTEwKKzE4CU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlO VUxMCWdUZXN0QmluCU5VTEwJTlVMTAorIy0tLS0tLS0tIFRlc3Q6IFZBUkJJTkFSWSAtLS0tLS0t LSMKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRFWCBpbmRleF92YXJiaW5hcnkgKGFfdmFyYmluYXJ5 KTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFf aW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tl ZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlh X2ludAlOVUxMCTkJTlVMTAlOVUxMCQlCVFJFRQkJCit0MQkxCWluZGV4X3ZhcmJpbmFyeQkxCWFf dmFyYmluYXJ5CU5VTEwJOQlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQxIFNF VCBhX3ZhcmJpbmFyeSA9ICdmVGVzdFZhckJpbmFyeSc7CitVUERBVEUgdDEgU0VUIGFfdmFyYmlu YXJ5ID0gJ2dUZXN0VmFyQmluYXJ5JyB3aGVyZSBhX3ZhcmJpbmFyeSA9ICdmVGVzdFZhckJpbmFy eSc7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfdmFyYmluYXJ5OworYV9pbnQJYV90aW55 aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3VibGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9k YXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJYV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3Zh cmJpbmFyeQlhX2VudW0KKzEwCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTEyLjA1CU5VTEwJTlVMTAlO VUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEy CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTE3OjMxOjAwCU5VTEwJMDAwMC0wMC0wMCAw MDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCTIwMDgtMDgtMTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE0CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE5OjIwOjIxCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2NjUJTlVMTAlOVUxMCU5VTEwJTlVMTAkw MDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4CU5VTEwJ TlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzcJTlVMTAk5MTExMTExMTExMTExMTExMTEJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNgk4OAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwK KzE1CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAw OjAwOjAwCTIwMjAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNglOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCWdUZXN0Q2hh cglOVUxMCU5VTEwJTlVMTAlOVUxMCisxNwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJZ1Rlc3RWYXJDaGFyCU5VTEwJ TlVMTAlOVUxMCisxOAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAw MC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlnVGVzdEJpbglOVUxMCU5VTEwKKzEzCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0wOC0xNCAxNzozMTowMAkwMDAw LTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxCTEyNwk5MjIz MzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTEx OjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0 Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCisy CTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4 LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAky MDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZh bHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTEx Mi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAx MzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5h cnkJZW51bVZhbHVlVGhyZWUKKzQJMTI0CTkxMTExMTExMTExMTExMTExMQk5OTYuNjYJOTk5LjQ1 Njc4OTEyMwkxMTIuMDIJMjAwOC0wNy0xMgkxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIw MDgtMDctMTIgMTQ6MzA6MzAJMjAxMQlkVGVzdENoYXIJZFRlc3RWYXJDaGFyCWRUZXN0QmluCWRU ZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorNQkxMjMJOTIyMzM3MjAzNjg1NDc3NTgwMwk5OTUu NTUJOTk5LjU2Nzg5MTIzNAkxMTIuMDMJMjAwOC0wNy0xMwkxNTozMDo0MAkyMDA4LTA3LTEzIDE1 OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAxMgllVGVzdENoYXIJZVRlc3RWYXJDaGFyCWVU ZXN0QmluCWVUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bworMTkJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJ TlVMTAlnVGVzdFZhckJpbmFyeQlOVUxMCitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfdmFyYmlu YXJ5ID4gJ2FmYWxjb24nIExJTUlUIDE7CithX2ludAlhX3RpbnlpbnQJYV9iaWdpbnQJYV9mbG9h dAlhX2RvdWJsZQlhX2RlY2ltYWwJYV9kYXRlCWFfdGltZQlhX2RhdGV0aW1lCWFfdGltZXN0YW1w CWFfeWVhcglhX2NoYXIJYV92YXJjaGFyCWFfYmluYXJ5CWFfdmFyYmluYXJ5CWFfZW51bQorMgkx MjYJOTIyMzM3MjAzNjg1NDc3NTgwNgk5OTguODgJOTk5LjIzNDU2Nzg5MQkxMTIuMDAJMjAwOC0w Ny0xMAkxMjozMDoxMAkyMDA4LTA3LTEwIDEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAw OQliVGVzdENoYXIJYlRlc3RWYXJDaGFyCWJUZXN0QmluCWJUZXN0VmFyQmluYXJ5CWVudW1WYWx1 ZVR3bworQUxURVIgVEFCTEUgdDEgRFJPUCBJTkRFWCBpbmRleF92YXJiaW5hcnk7CitTSE9XIElO REVYRVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNv bHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRl eF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYV9pbnQJTlVMTAk5 CU5VTEwJTlVMTAkJQlRSRUUJCQorU0VMRUNUICogRlJPTSB0MTsKK2FfaW50CWFfdGlueWludAlh X2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRp bWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5h cnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5 CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0w OSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJC aW5hcnkJZW51bVZhbHVlT25lCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTku MjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJ MjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4J YlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1CTk5 Ny43Nwk5OTkuMzQ1Njc4OTEyCTExMi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDctMTEg MTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNoYXIJ Y1Rlc3RCaW4JY1Rlc3RWYXJCaW5hcnkJZW51bVZhbHVlVGhyZWUKKzQJMTI0CTkxMTExMTExMTEx MTExMTExMQk5OTYuNjYJOTk5LjQ1Njc4OTEyMwkxMTIuMDIJMjAwOC0wNy0xMgkxNDozMDozMAky MDA4LTA3LTEyIDE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAxMQlkVGVzdENoYXIJZFRl c3RWYXJDaGFyCWRUZXN0QmluCWRUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQorNQkxMjMJOTIy MzM3MjAzNjg1NDc3NTgwMwk5OTUuNTUJOTk5LjU2Nzg5MTIzNAkxMTIuMDMJMjAwOC0wNy0xMwkx NTozMDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAxMgllVGVz dENoYXIJZVRlc3RWYXJDaGFyCWVUZXN0QmluCWVUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZVR3bwor Ngk4OAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6 MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzcJTlVMTAk5MTExMTExMTExMTExMTEx MTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOAlOVUxMCU5VTEwJOTkzLjMzCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2NjUJTlVMTAlOVUxMCU5VTEwJTlVM TAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMAlO VUxMCU5VTEwJTlVMTAlOVUxMCTExMi4wNQlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAw OjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMQlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwJMjAwOC0wOC0xNAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTIJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMTc6 MzE6MDAJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCisxMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQgMTc6 MzE6MDAJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAor MTQJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQgMTk6 MjA6MjEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE1CU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCTIwMjAJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCisxNglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCWdUZXN0Q2hhcglOVUxMCU5VTEwJTlVMTAlOVUxM CisxNwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAw MDowMDowMAlOVUxMCU5VTEwJZ1Rlc3RWYXJDaGFyCU5VTEwJTlVMTAlOVUxMCisxOAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxM CU5VTEwJTlVMTAlnVGVzdEJpbglOVUxMCU5VTEwKKzE5CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJ Z1Rlc3RWYXJCaW5hcnkJTlVMTAorIy0tLS0tLS0tIFRlc3Q6IEVOVU0gLS0tLS0tLS0jCitBTFRF UiBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfZW51bSAoYV9iaW5hcnkpOworU0hPVyBJTkRFWEVT IEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5f bmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlw ZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3QxCTAJUFJJTUFSWQkxCWFfaW50CU5VTEwJOQlOVUxM CU5VTEwJCUJUUkVFCQkKK3QxCTEJaW5kZXhfZW51bQkxCWFfYmluYXJ5CU5VTEwJOQlOVUxMCU5V TEwJWUVTCUJUUkVFCQkKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX2VudW0gPSAnZW51bVZhbHVlVGhy ZWUnOworVVBEQVRFIHQxIFNFVCBhX2VudW0gPSAnZW51bVZhbHVlT25lJyB3aGVyZSBhX2VudW0g PSAnZW51bVZhbHVlVGhyZWUnOworU0VMRUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2VudW07Cith X2ludAlhX3RpbnlpbnQJYV9iaWdpbnQJYV9mbG9hdAlhX2RvdWJsZQlhX2RlY2ltYWwJYV9kYXRl CWFfdGltZQlhX2RhdGV0aW1lCWFfdGltZXN0YW1wCWFfeWVhcglhX2NoYXIJYV92YXJjaGFyCWFf YmluYXJ5CWFfdmFyYmluYXJ5CWFfZW51bQorMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIw MDgtMDgtMTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzEzCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAwOC0w OC0xNCAxNzozMTowMAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCisxMglOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkxNzozMTowMAlOVUxMCTAw MDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE1CU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCTIw MjAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxMAlOVUxMCU5VTEwJTlVMTAlOVUxMCTExMi4w NQlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAlOVUxMCis5CU5VTEwJTlVMTAlOVUxMCTk5OS45OTg4Nzc2NjUJTlVMTAlOVUxMCU5VTEwJ TlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis4 CU5VTEwJTlVMTAk5OTMuMzMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6 MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzcJTlVMTAk5MTExMTExMTExMTEx MTExMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorNgk4OAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwKKzE2CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJZ1Rlc3RDaGFyCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE3CU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5V TEwJTlVMTAlnVGVzdFZhckNoYXIJTlVMTAlOVUxMCU5VTEwKKzE4CU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxM CWdUZXN0QmluCU5VTEwJTlVMTAorMTkJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlnVGVzdFZhckJp bmFyeQlOVUxMCisxNAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMjAw OC0wOC0xNCAxOToyMDoyMQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMQkxMjcJOTIy MzM3MjAzNjg1NDc3NTgwNwk5OTkuOTkJOTk5LjEyMzQ1Njc4OQkxMTEuOTkJMjAwOC0wNy0wOQkx MTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOAlhVGVz dENoYXIJYVRlc3RWYXJDaGFyCWFUZXN0QmluCWFUZXN0VmFyQmluYXJ5CWVudW1WYWx1ZU9uZQor NAkxMjQJOTExMTExMTExMTExMTExMTExCTk5Ni42Ngk5OTkuNDU2Nzg5MTIzCTExMi4wMgkyMDA4 LTA3LTEyCTE0OjMwOjMwCTIwMDgtMDctMTIgMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAky MDExCWRUZXN0Q2hhcglkVGVzdFZhckNoYXIJZFRlc3RCaW4JZFRlc3RWYXJCaW5hcnkJZW51bVZh bHVlT25lCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTEx Mi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAx MzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5h cnkJZW51bVZhbHVlT25lCisyMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJZW51bVZhbHVl T25lCis1CTEyMwk5MjIzMzcyMDM2ODU0Nzc1ODAzCTk5NS41NQk5OTkuNTY3ODkxMjM0CTExMi4w MwkyMDA4LTA3LTEzCTE1OjMwOjQwCTIwMDgtMDctMTMgMTU6MzA6NDAJMjAwOC0wNy0xMyAxNToz MDo0MAkyMDEyCWVUZXN0Q2hhcgllVGVzdFZhckNoYXIJZVRlc3RCaW4JZVRlc3RWYXJCaW5hcnkJ ZW51bVZhbHVlVHdvCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3 ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0w Ny0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RW YXJCaW5hcnkJZW51bVZhbHVlVHdvCitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfZW51bSA+ICdh ZmFsY29uJyBMSU1JVCAxOworYV9pbnQJYV90aW55aW50CWFfYmlnaW50CWFfZmxvYXQJYV9kb3Vi bGUJYV9kZWNpbWFsCWFfZGF0ZQlhX3RpbWUJYV9kYXRldGltZQlhX3RpbWVzdGFtcAlhX3llYXIJ YV9jaGFyCWFfdmFyY2hhcglhX2JpbmFyeQlhX3ZhcmJpbmFyeQlhX2VudW0KKzEJMTI3CTkyMjMz NzIwMzY4NTQ3NzU4MDcJOTk5Ljk5CTk5OS4xMjM0NTY3ODkJMTExLjk5CTIwMDgtMDctMDkJMTE6 MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4LTA3LTA5IDExOjMwOjAwCTIwMDgJYVRlc3RD aGFyCWFUZXN0VmFyQ2hhcglhVGVzdEJpbglhVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKK0FM VEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfZW51bTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQx OworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29s bGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVu dAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTEwCU5VTEwJTlVMTAkJ QlRSRUUJCQorU0VMRUNUICogRlJPTSB0MTsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zs b2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3Rh bXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisx CTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4 LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAky MDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZh bHVlT25lCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTEx Mi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAx MjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5h cnkJZW51bVZhbHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1 Njc4OTEyCTExMi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAw OC0wNy0xMSAxMzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rl c3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis0CTEyNAk5MTExMTExMTExMTExMTExMTEJOTk2LjY2 CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIwMDgtMDctMTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDoz MDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMTEJZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVz dEJpbglkVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4 MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEyLjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0w Ny0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFy Q2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28KKzYJODgJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCis3CU5VTEwJOTExMTExMTExMTExMTExMTExCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwKKzgJTlVMTAlOVUxMCTk5My4zMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ MDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOQlOVUxM CU5VTEwJTlVMTAk5OTkuOTk4ODc3NjY1CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAw MDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTAJTlVMTAlOVUxMCU5VTEwJ TlVMTAkxMTIuMDUJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgt MTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxM CU5VTEwKKzEyCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTE3OjMxOjAwCU5VTEwJMDAw MC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTMJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE3OjMxOjAwCTAwMDAtMDAt MDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzE0CU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE5OjIwOjIxCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAkyMDIwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAorMTYJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlnVGVzdENoYXIJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTcJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlO VUxMCWdUZXN0VmFyQ2hhcglOVUxMCU5VTEwJTlVMTAorMTgJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJZ1Rl c3RCaW4JTlVMTAlOVUxMCisxOQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCWdUZXN0VmFyQmluYXJ5 CU5VTEwKKzIwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAw LTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAllbnVtVmFsdWVPbmUKKyMtLS0t LS0tLSBUZXN0OiBBbHRlcm5hdGl2ZSBDUkVBVEUgSU5ERVggLS0tLS0tLS0jCitDUkVBVEUgSU5E RVggaW5kZXhfaW50IG9uIHQxIChhX2ludCk7CitDUkVBVEUgSU5ERVggaW5kZXhfYml0IG9uIHQy IChhX2JpdCk7CitDUkVBVEUgSU5ERVggaW5kZXhfdGlueWludCBvbiB0MSAoYV90aW55aW50KTsK K0NSRUFURSBJTkRFWCBpbmRleF9iaWdpbnQgb24gdDEgKGFfYmlnaW50KTsKK0NSRUFURSBJTkRF WCBpbmRleF9mbG9hdCBvbiB0MSAoYV9mbG9hdCk7CitDUkVBVEUgSU5ERVggaW5kZXhfZG91Ymxl IG9uIHQxIChhX2RvdWJsZSk7CitDUkVBVEUgSU5ERVggaW5kZXhfZGVjaW1hbCBvbiB0MSAoYV9k ZWNpbWFsKTsKK0NSRUFURSBJTkRFWCBpbmRleF9kYXRlIG9uIHQxIChhX2RhdGUpOworQ1JFQVRF IElOREVYIGluZGV4X2RhdGV0aW1lIG9uIHQxIChhX2RhdGV0aW1lKTsKK0NSRUFURSBJTkRFWCBp bmRleF90aW1lc3RhbXAgb24gdDEgKGFfdGltZXN0YW1wKTsKK0NSRUFURSBJTkRFWCBpbmRleF95 ZWFyIG9uIHQxIChhX3llYXIpOworQ1JFQVRFIElOREVYIGluZGV4X2NoYXIgb24gdDEgKGFfY2hh cik7CitDUkVBVEUgSU5ERVggaW5kZXhfdmFyY2hhciBvbiB0MSAoYV92YXJjaGFyKTsKK0NSRUFU RSBJTkRFWCBpbmRleF9iaW5hcnkgb24gdDEgKGFfYmluYXJ5KTsKK0NSRUFURSBJTkRFWCBpbmRl eF92YXJiaW5hcnkgb24gdDEgKGFfdmFyYmluYXJ5KTsKK0NSRUFURSBJTkRFWCBpbmRleF9lbnVt IG9uIHQxIChhX2VudW0pOworU0hPVyBJTkRFWEVTIEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVl CUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJ U3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3Qx CTAJUFJJTUFSWQkxCWFfaW50CU5VTEwJMTAJTlVMTAlOVUxMCQlCVFJFRQkJCit0MQkxCWluZGV4 X2ludAkxCWFfaW50CU5VTEwJMTAJTlVMTAlOVUxMCQlCVFJFRQkJCit0MQkxCWluZGV4X3Rpbnlp bnQJMQlhX3RpbnlpbnQJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK3QxCTEJaW5kZXhf YmlnaW50CTEJYV9iaWdpbnQJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK3QxCTEJaW5k ZXhfZmxvYXQJMQlhX2Zsb2F0CU5VTEwJMTAJTlVMTAlOVUxMCVlFUwlCVFJFRQkJCit0MQkxCWlu ZGV4X2RvdWJsZQkxCWFfZG91YmxlCU5VTEwJMTAJTlVMTAlOVUxMCVlFUwlCVFJFRQkJCit0MQkx CWluZGV4X2RlY2ltYWwJMQlhX2RlY2ltYWwJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkK K3QxCTEJaW5kZXhfZGF0ZQkxCWFfZGF0ZQlOVUxMCTEwCU5VTEwJTlVMTAlZRVMJQlRSRUUJCQor dDEJMQlpbmRleF9kYXRldGltZQkxCWFfZGF0ZXRpbWUJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJU UkVFCQkKK3QxCTEJaW5kZXhfdGltZXN0YW1wCTEJYV90aW1lc3RhbXAJTlVMTAkxMAlOVUxMCU5V TEwJCUJUUkVFCQkKK3QxCTEJaW5kZXhfeWVhcgkxCWFfeWVhcglOVUxMCTEwCU5VTEwJTlVMTAlZ RVMJQlRSRUUJCQordDEJMQlpbmRleF9jaGFyCTEJYV9jaGFyCU5VTEwJMTAJTlVMTAlOVUxMCVlF UwlCVFJFRQkJCit0MQkxCWluZGV4X3ZhcmNoYXIJMQlhX3ZhcmNoYXIJTlVMTAkxMAlOVUxMCU5V TEwJWUVTCUJUUkVFCQkKK3QxCTEJaW5kZXhfYmluYXJ5CTEJYV9iaW5hcnkJTlVMTAkxMAlOVUxM CU5VTEwJWUVTCUJUUkVFCQkKK3QxCTEJaW5kZXhfdmFyYmluYXJ5CTEJYV92YXJiaW5hcnkJTlVM TAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK3QxCTEJaW5kZXhfZW51bQkxCWFfZW51bQlOVUxM CTEwCU5VTEwJTlVMTAlZRVMJQlRSRUUJCQorU0VMRUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2lu dDsKK2FfaW50CWFfdGlueWludAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlh X2RhdGUJYV90aW1lCWFfZGF0ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNo YXIJYV9iaW5hcnkJYV92YXJiaW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3 CTk5OS45OQk5OTkuMTIzNDU2Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDct MDkgMTE6MzA6MDAJMjAwOC0wNy0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNo YXIJYVRlc3RCaW4JYVRlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCisyCTEyNgk5MjIzMzcyMDM2 ODU0Nzc1ODA2CTk5OC44OAk5OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEw CTIwMDgtMDctMTAgMTI6MzA6MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgli VGVzdFZhckNoYXIJYlRlc3RCaW4JYlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCiszCTEyNQk5 MjIzMzcyMDM2ODU0Nzc1ODA1CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTExMi4wMQkyMDA4LTA3LTEx CTEzOjMwOjIwCTIwMDgtMDctMTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDEwCWNU ZXN0Q2hhcgljVGVzdFZhckNoYXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25l Cis0CTEyNAk5MTExMTExMTExMTExMTExMTEJOTk2LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIw MDgtMDctMTIJMTQ6MzA6MzAJMjAwOC0wNy0xMiAxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMw CTIwMTEJZFRlc3RDaGFyCWRUZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVt VmFsdWVPbmUKKzUJMTIzCTkyMjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJ MTEyLjAzCTIwMDgtMDctMTMJMTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEz IDE1OjMwOjQwCTIwMTIJZVRlc3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJp bmFyeQllbnVtVmFsdWVUd28KKzYJODgJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis3CU5V TEwJOTExMTExMTExMTExMTExMTExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAt MDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzgJTlVMTAlOVUxM CTk5My4zMwlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorOQlOVUxMCU5VTEwJTlVMTAk5OTkuOTk4ODc3NjY1 CU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAorMTAJTlVMTAlOVUxMCU5VTEwJTlVMTAkxMTIuMDUJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJ TlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTIwMDgtMDgtMTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEyCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCTE3OjMxOjAwCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAkyMDA4LTA4LTE0IDE3OjMxOjAwCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwKKzE0CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAkyMDA4LTA4LTE0IDE5OjIwOjIxCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisx NQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDow MDowMAkyMDIwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTYJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlnVGVzdENoYXIJ TlVMTAlOVUxMCU5VTEwJTlVMTAorMTcJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCWdUZXN0VmFyQ2hhcglOVUxMCU5V TEwJTlVMTAorMTgJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAt MDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJZ1Rlc3RCaW4JTlVMTAlOVUxMCisxOQlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlO VUxMCU5VTEwJTlVMTAlOVUxMCWdUZXN0VmFyQmluYXJ5CU5VTEwKKzIwCU5VTEwJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAllbnVtVmFsdWVPbmUKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworVGFibGUJ Tm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNh cmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9D b21tZW50Cit0MgkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTMJTlVMTAlOVUxMCQlCVFJFRQkJCit0 MgkxCWluZGV4X2JpdAkxCWFfYml0CU5VTEwJMwlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK1NFTEVD VCBhX2ludCwgQklOKGFfYml0KzApIEZST00gdDIgT1JERVIgQlkgYV9pbnQ7CithX2ludAlCSU4o YV9iaXQrMCkKKzEJMAorMgkxCiszCTEwCis0CTExCis1CTEwMAorNgkxMDEwMTAKKyMtLS0tLS0t LSBUZXN0OiBBbHRlcm5hdGl2ZSBEUk9QIElOREVYIC0tLS0tLS0tIworRFJPUCBJTkRFWCBpbmRl eF9pbnQgb24gdDE7CitEUk9QIElOREVYIGluZGV4X2JpdCBvbiB0MjsKK0RST1AgSU5ERVggaW5k ZXhfdGlueWludCBvbiB0MTsKK0RST1AgSU5ERVggaW5kZXhfYmlnaW50IG9uIHQxOworRFJPUCBJ TkRFWCBpbmRleF9mbG9hdCBvbiB0MTsKK0RST1AgSU5ERVggaW5kZXhfZG91YmxlIG9uIHQxOwor RFJPUCBJTkRFWCBpbmRleF9kZWNpbWFsIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF9kYXRlIG9u IHQxOworRFJPUCBJTkRFWCBpbmRleF9kYXRldGltZSBvbiB0MTsKK0RST1AgSU5ERVggaW5kZXhf dGltZXN0YW1wIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF95ZWFyIG9uIHQxOworRFJPUCBJTkRF WCBpbmRleF9jaGFyIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF92YXJjaGFyIG9uIHQxOworRFJP UCBJTkRFWCBpbmRleF9iaW5hcnkgb24gdDE7CitEUk9QIElOREVYIGluZGV4X3ZhcmJpbmFyeSBv biB0MTsKK0RST1AgSU5ERVggaW5kZXhfZW51bSBvbiB0MTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQx OworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29s bGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVu dAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlhX2ludAlOVUxMCTEwCU5VTEwJTlVMTAkJ QlRSRUUJCQorU0VMRUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2ludDsKK2FfaW50CWFfdGlueWlu dAlhX2JpZ2ludAlhX2Zsb2F0CWFfZG91YmxlCWFfZGVjaW1hbAlhX2RhdGUJYV90aW1lCWFfZGF0 ZXRpbWUJYV90aW1lc3RhbXAJYV95ZWFyCWFfY2hhcglhX3ZhcmNoYXIJYV9iaW5hcnkJYV92YXJi aW5hcnkJYV9lbnVtCisxCTEyNwk5MjIzMzcyMDM2ODU0Nzc1ODA3CTk5OS45OQk5OTkuMTIzNDU2 Nzg5CTExMS45OQkyMDA4LTA3LTA5CTExOjMwOjAwCTIwMDgtMDctMDkgMTE6MzA6MDAJMjAwOC0w Ny0wOSAxMTozMDowMAkyMDA4CWFUZXN0Q2hhcglhVGVzdFZhckNoYXIJYVRlc3RCaW4JYVRlc3RW YXJCaW5hcnkJZW51bVZhbHVlT25lCisyCTEyNgk5MjIzMzcyMDM2ODU0Nzc1ODA2CTk5OC44OAk5 OTkuMjM0NTY3ODkxCTExMi4wMAkyMDA4LTA3LTEwCTEyOjMwOjEwCTIwMDgtMDctMTAgMTI6MzA6 MTAJMjAwOC0wNy0xMCAxMjozMDoxMAkyMDA5CWJUZXN0Q2hhcgliVGVzdFZhckNoYXIJYlRlc3RC aW4JYlRlc3RWYXJCaW5hcnkJZW51bVZhbHVlVHdvCiszCTEyNQk5MjIzMzcyMDM2ODU0Nzc1ODA1 CTk5Ny43Nwk5OTkuMzQ1Njc4OTEyCTExMi4wMQkyMDA4LTA3LTExCTEzOjMwOjIwCTIwMDgtMDct MTEgMTM6MzA6MjAJMjAwOC0wNy0xMSAxMzozMDoyMAkyMDEwCWNUZXN0Q2hhcgljVGVzdFZhckNo YXIJY1Rlc3RCaW4JY1Rlc3RWYXJCaW5hcnkJZW51bVZhbHVlT25lCis0CTEyNAk5MTExMTExMTEx MTExMTExMTEJOTk2LjY2CTk5OS40NTY3ODkxMjMJMTEyLjAyCTIwMDgtMDctMTIJMTQ6MzA6MzAJ MjAwOC0wNy0xMiAxNDozMDozMAkyMDA4LTA3LTEyIDE0OjMwOjMwCTIwMTEJZFRlc3RDaGFyCWRU ZXN0VmFyQ2hhcglkVGVzdEJpbglkVGVzdFZhckJpbmFyeQllbnVtVmFsdWVPbmUKKzUJMTIzCTky MjMzNzIwMzY4NTQ3NzU4MDMJOTk1LjU1CTk5OS41Njc4OTEyMzQJMTEyLjAzCTIwMDgtMDctMTMJ MTU6MzA6NDAJMjAwOC0wNy0xMyAxNTozMDo0MAkyMDA4LTA3LTEzIDE1OjMwOjQwCTIwMTIJZVRl c3RDaGFyCWVUZXN0VmFyQ2hhcgllVGVzdEJpbgllVGVzdFZhckJpbmFyeQllbnVtVmFsdWVUd28K KzYJODgJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAw OjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCis3CU5VTEwJOTExMTExMTExMTExMTEx MTExCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVM TAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwKKzgJTlVMTAlOVUxMCTk5My4zMwlOVUxMCU5VTEwJ TlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAorOQlOVUxMCU5VTEwJTlVMTAk5OTkuOTk4ODc3NjY1CU5VTEwJTlVMTAlOVUxMCU5V TEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTAJ TlVMTAlOVUxMCU5VTEwJTlVMTAkxMTIuMDUJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDow MDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAorMTEJTlVMTAlOVUxMCU5VTEwJTlVM TAlOVUxMCTIwMDgtMDgtMTQJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxM CU5VTEwJTlVMTAlOVUxMCU5VTEwKKzEyCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTE3 OjMxOjAwCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJ TlVMTAorMTMJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE3 OjMxOjAwCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwK KzE0CU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAkyMDA4LTA4LTE0IDE5 OjIwOjIxCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCisxNQlOVUxMCU5VTEwJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAkyMDIwCU5VTEwJTlVM TAlOVUxMCU5VTEwJTlVMTAorMTYJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlO VUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVMTAlnVGVzdENoYXIJTlVMTAlOVUxMCU5VTEwJTlVM TAorMTcJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAg MDA6MDA6MDAJTlVMTAlOVUxMCWdUZXN0VmFyQ2hhcglOVUxMCU5VTEwJTlVMTAorMTgJTlVMTAlO VUxMCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTAwMDAtMDAtMDAgMDA6MDA6MDAJTlVM TAlOVUxMCU5VTEwJZ1Rlc3RCaW4JTlVMTAlOVUxMCisxOQlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAlOVUxMCU5VTEwJMDAwMC0wMC0wMCAwMDowMDowMAlOVUxMCU5VTEwJTlVMTAlOVUxM CWdUZXN0VmFyQmluYXJ5CU5VTEwKKzIwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCU5V TEwJTlVMTAkwMDAwLTAwLTAwIDAwOjAwOjAwCU5VTEwJTlVMTAlOVUxMCU5VTEwJTlVMTAllbnVt VmFsdWVPbmUKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFt ZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0 CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MgkwCVBSSU1B UlkJMQlhX2ludAlOVUxMCTMJTlVMTAlOVUxMCQlCVFJFRQkJCitTRUxFQ1QgYV9pbnQsIEJJTihh X2JpdCswKSBGUk9NIHQyIE9SREVSIEJZIGFfaW50OworYV9pbnQJQklOKGFfYml0KzApCisxCTAK KzIJMQorMwkxMAorNAkxMQorNQkxMDAKKzYJMTAxMDEwCitEUk9QIFRBQkxFIHQxOworRFJPUCBU QUJMRSB0MjsKCj09PSBhZGRlZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNv bl9vbmxpbmVfaW5kZXgucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2Zh bGNvbl9vbmxpbmVfaW5kZXgucmVzdWx0CTE5NzAtMDEtMDEgMDA6MDA6MDAgKzAwMDAKKysrIGIv bXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vci9mYWxjb25fb25saW5lX2luZGV4LnJlc3VsdAkyMDA4 LTA5LTEwIDE1OjA4OjU2ICswMDAwCkBAIC0wLDAgKzEsMzcyIEBACitTRVQgQEBzdG9yYWdlX2Vu Z2luZSA9ICdGYWxjb24nOworRFJPUCBUQUJMRSBJRiBFWElTVFMgdDE7CitEUk9QIFRBQkxFIElG IEVYSVNUUyB0MjsKK0RST1AgVEFCTEUgSUYgRVhJU1RTIHQzOworQ1JFQVRFIFRBQkxFIHQxICgK K2EgaW50IFBSSU1BUlkgS0VZLCAKK2IgVkFSQ0hBUigyNTUpLCAKK2MgaW50LAorZCBDSEFSKDEw KQorKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMCwgJ1Rlc3RSb3cwJywgMCoyLCAnQ2hhcjAn KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMSwgJ1Rlc3RSb3cxJywgMSoyLCAnQ2hhcjEnKTsK K0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoMiwgJ1Rlc3RSb3cyJywgMioyLCAnQ2hhcjInKTsKK0lO U0VSVCBJTlRPIHQxIFZBTFVFUyAoMywgJ1Rlc3RSb3czJywgMyoyLCAnQ2hhcjMnKTsKK0lOU0VS VCBJTlRPIHQxIFZBTFVFUyAoNCwgJ1Rlc3RSb3c0JywgNCoyLCAnQ2hhcjQnKTsKK0lOU0VSVCBJ TlRPIHQxIFZBTFVFUyAoNSwgJ1Rlc3RSb3c1JywgNSoyLCAnQ2hhcjUnKTsKK0lOU0VSVCBJTlRP IHQxIFZBTFVFUyAoNiwgJ1Rlc3RSb3c2JywgNioyLCAnQ2hhcjYnKTsKK0lOU0VSVCBJTlRPIHQx IFZBTFVFUyAoNywgJ1Rlc3RSb3c3JywgNyoyLCAnQ2hhcjcnKTsKK0lOU0VSVCBJTlRPIHQxIFZB TFVFUyAoOCwgJ1Rlc3RSb3c4JywgOCoyLCAnQ2hhcjgnKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVF UyAoOSwgJ1Rlc3RSb3c5JywgOSoyLCAnQ2hhcjknKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAo MTAsICdUZXN0Um93MTAnLCAxMCoyLCAnQ2hhcjEwJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMg KDExLCAnVGVzdFJvdzExJywgMTEqMiwgJ0NoYXIxMScpOworSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgxMiwgJ1Rlc3RSb3cxMicsIDEyKjIsICdDaGFyMTInKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVF UyAoMTMsICdUZXN0Um93MTMnLCAxMyoyLCAnQ2hhcjEzJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxV RVMgKDE0LCAnVGVzdFJvdzE0JywgMTQqMiwgJ0NoYXIxNCcpOworSU5TRVJUIElOVE8gdDEgVkFM VUVTICgxNSwgJ1Rlc3RSb3cxNScsIDE1KjIsICdDaGFyMTUnKTsKK0lOU0VSVCBJTlRPIHQxIFZB TFVFUyAoMTYsICdUZXN0Um93MTYnLCAxNioyLCAnQ2hhcjE2Jyk7CitJTlNFUlQgSU5UTyB0MSBW QUxVRVMgKDE3LCAnVGVzdFJvdzE3JywgMTcqMiwgJ0NoYXIxNycpOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgxOCwgJ1Rlc3RSb3cxOCcsIDE4KjIsICdDaGFyMTgnKTsKK0lOU0VSVCBJTlRPIHQx IFZBTFVFUyAoMTksICdUZXN0Um93MTknLCAxOSoyLCAnQ2hhcjE5Jyk7CitDUkVBVEUgVEFCTEUg dDIgKAorYSBpbnQgUFJJTUFSWSBLRVksIAorYiBpbnQsCitjIGludCwKK2QgVkFSQ0hBUig2NSkK Kyk7CisjLS0tLS0tLS0gSW5zZXJ0aW5nIDMzIHJvd3MgaW50byB0MiAocXVlcnkgbG9nIGRpc2Fi bGVkKSAtLS0tLS0tLSMKK0NSRUFURSBUQUJMRSB0MyAoCithIGludCBQUklNQVJZIEtFWSBBVVRP X0lOQ1JFTUVOVCwgCitiIGludCBERUZBVUxUIDk5OTksCitjIGludCBERUZBVUxUIDg4ODggTk9U IE5VTEwsCitkIGludCBOT1QgTlVMTCwKK2UgVkFSQ0hBUig2NSkKKyk7CisjLS0tLS0tLS0gSW5z ZXJ0aW5nIDEwMDAgcm93cyBpbnRvIHQzLi4uIChxdWVyeSBsb2cgZGlzYWJsZWQpIC0tLS0tLS0t IworIy0tLS0tLS0tIFRlc3RpbmcgaW1wbGljaXQgT05MSU5FIC0tLS0tLS0tIworQUxURVIgVEFC TEUgdDEgQUREIElOREVYIGl4X2IgKGIpOworYWZmZWN0ZWQgcm93czogMAoraW5mbzogUmVjb3Jk czogMCAgRHVwbGljYXRlczogMCAgV2FybmluZ3M6IDAKK0RST1AgSU5ERVggaXhfYiBPTiB0MTsK K2FmZmVjdGVkIHJvd3M6IDAKK2luZm86IFJlY29yZHM6IDAgIER1cGxpY2F0ZXM6IDAgIFdhcm5p bmdzOiAwCitDUkVBVEUgSU5ERVggaXhfYyBPTiB0MSAoYyk7CithZmZlY3RlZCByb3dzOiAwCitp bmZvOiBSZWNvcmRzOiAwICBEdXBsaWNhdGVzOiAwICBXYXJuaW5nczogMAorRFJPUCBJTkRFWCBp eF9jIE9OIHQxOworYWZmZWN0ZWQgcm93czogMAoraW5mbzogUmVjb3JkczogMCAgRHVwbGljYXRl czogMCAgV2FybmluZ3M6IDAKK0FMVEVSIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9iIChiKTsKK2Fm ZmVjdGVkIHJvd3M6IDAKK2luZm86IFJlY29yZHM6IDAgIER1cGxpY2F0ZXM6IDAgIFdhcm5pbmdz OiAwCitTRUxFQ1QgKiBmcm9tIHQzIHdoZXJlIGIgPiA1NTUgT1JERVIgQlkgYSBMSU1JVCA1Owor YQliCWMJZAllCisyNzkJNTU2CTI3OQkyNzcJU29tZVZhcmNoYXIgMjc4IGZvciB0ZXN0aW5nCisy ODAJNTU4CTI4MAkyNzgJU29tZVZhcmNoYXIgMjc5IGZvciB0ZXN0aW5nCisyODEJNTYwCTI4MQky NzkJU29tZVZhcmNoYXIgMjgwIGZvciB0ZXN0aW5nCisyODIJNTYyCTI4MgkyODAJU29tZVZhcmNo YXIgMjgxIGZvciB0ZXN0aW5nCisyODMJNTY0CTI4MwkyODEJU29tZVZhcmNoYXIgMjgyIGZvciB0 ZXN0aW5nCithZmZlY3RlZCByb3dzOiA1CitEUk9QIElOREVYIGl4X2IgT04gdDM7CithZmZlY3Rl ZCByb3dzOiAwCitpbmZvOiBSZWNvcmRzOiAwICBEdXBsaWNhdGVzOiAwICBXYXJuaW5nczogMAor Iy0tLS0tLS0tIFRlc3RpbmcgaW1wbGljaXQgT0ZGTElORSAtLS0tLS0tLSMKK0FMVEVSIFRBQkxF IHQzIEFERCBJTkRFWCBpeF9jIChjKTsKK2FmZmVjdGVkIHJvd3M6IDEwMDAKK2luZm86IFJlY29y ZHM6IDEwMDAgIER1cGxpY2F0ZXM6IDAgIFdhcm5pbmdzOiAwCitEUk9QIElOREVYIGl4X2MgT04g dDM7CithZmZlY3RlZCByb3dzOiAwCitpbmZvOiBSZWNvcmRzOiAwICBEdXBsaWNhdGVzOiAwICBX YXJuaW5nczogMAorQUxURVIgVEFCTEUgdDMgQUREIElOREVYIGl4X2NkIChjLCBkKTsKK2FmZmVj dGVkIHJvd3M6IDEwMDAKK2luZm86IFJlY29yZHM6IDEwMDAgIER1cGxpY2F0ZXM6IDAgIFdhcm5p bmdzOiAwCitEUk9QIElOREVYIGl4X2NkIE9OIHQzOworYWZmZWN0ZWQgcm93czogMAoraW5mbzog UmVjb3JkczogMCAgRHVwbGljYXRlczogMCAgV2FybmluZ3M6IDAKKyMtLS0tLS0tLSBUZXN0aW5n IE9OTElORSBrZXl3b3JkLi4uIC0tLS0tLS0tIworIy0tLS0tLS0tIE9OTElORTogQUxURVIgQURE L0RST1AgSU5ERVggLS0tLS0tLS0jCitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIGl4 X2IgKGIpOworQUxURVIgT05MSU5FIFRBQkxFIHQxIERST1AgSU5ERVggaXhfYjsKKyMtLS0tLS0t LSBPTkxJTkU6IEFMVEVSIEFERC9EUk9QIEtFWSAtLS0tLS0tLSMKK0FMVEVSIE9OTElORSBUQUJM RSB0MSBBREQgS0VZIGl4X2IgKGIpOworQUxURVIgT05MSU5FIFRBQkxFIHQxIERST1AgS0VZIGl4 X2I7CisjLS0tLS0tLS0gT05MSU5FOiBDUkVBVEUvRFJPUCBJTkRFWCAtLS0tLS0tLSMKK0NSRUFU RSBPTkxJTkUgSU5ERVggaXhfYyBPTiB0MSAoYyk7CitEUk9QIE9OTElORSBJTkRFWCBpeF9jIE9O IHQxOworIy0tLS0tLS0tIE9OTElORTogQUREIElOREVYIGRlZmF1bHQgbmFtZSAtLS0tLS0tLSMK K0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgSU5ERVggKGIpOworQUxURVIgT05MSU5FIFRBQkxF IHQxIERST1AgSU5ERVggYjsKKyMtLS0tLS0tLSBPTkxJTkU6IEFMVEVSIEFERCBudWxsYWJsZSB3 aXRoIGRlZmF1bHQgLS0tLS0tLS0jCitBTFRFUiBPTkxJTkUgVEFCTEUgdDMgQUREIElOREVYIGl4 X2IgKGIpOworU0VMRUNUICogZnJvbSB0MyB3aGVyZSBiID4gNTU1IE9SREVSIEJZIGEgTElNSVQg NTsKK2EJYgljCWQJZQorMjc5CTU1NgkyNzkJMjc3CVNvbWVWYXJjaGFyIDI3OCBmb3IgdGVzdGlu ZworMjgwCTU1OAkyODAJMjc4CVNvbWVWYXJjaGFyIDI3OSBmb3IgdGVzdGluZworMjgxCTU2MAky ODEJMjc5CVNvbWVWYXJjaGFyIDI4MCBmb3IgdGVzdGluZworMjgyCTU2MgkyODIJMjgwCVNvbWVW YXJjaGFyIDI4MSBmb3IgdGVzdGluZworMjgzCTU2NAkyODMJMjgxCVNvbWVWYXJjaGFyIDI4MiBm b3IgdGVzdGluZworQUxURVIgT05MSU5FIFRBQkxFIHQzIERST1AgSU5ERVggaXhfYjsKKyMtLS0t LS0tLSBPTkxJTkU6IEFMVEVSIEFERCBub3QtbnVsbCB3aXRoIGRlZmF1bHQgLS0tLS0tLS0jCitB TFRFUiBPTkxJTkUgVEFCTEUgdDMgQUREIElOREVYIGl4X2MgKGMpOworRVJST1IgNDIwMDA6IFRo aXMgdmVyc2lvbiBvZiBNeVNRTCBkb2Vzbid0IHlldCBzdXBwb3J0ICdBTFRFUiBPTkxJTkUgVEFC TEUgdDMgQUREIElOREVYIGl4X2MgKGMpJworIy0tLS0tLS0tIE9OTElORTogQUxURVIgQUREIG5v dC1udWxsIC0tLS0tLS0tIworQUxURVIgT05MSU5FIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9kIChk KTsKK0VSUk9SIDQyMDAwOiBUaGlzIHZlcnNpb24gb2YgTXlTUUwgZG9lc24ndCB5ZXQgc3VwcG9y dCAnQUxURVIgT05MSU5FIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9kIChkKScKKyMtLS0tLS0tLSBP TkxJTkU6IEFMVEVSIEFERCBzYW1lIGtleSBtdWx0aXBsZSB0aW1lcyAtLS0tLS0tLSMKK0FMVEVS IE9OTElORSBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfYyAoYyk7CitBTFRFUiBPTkxJTkUgVEFC TEUgdDEgQUREIElOREVYIGluZGV4X2MgKGMpOworRVJST1IgNDIwMDA6IER1cGxpY2F0ZSBrZXkg bmFtZSAnaW5kZXhfYycKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfYyAo Yyk7CitFUlJPUiA0MjAwMDogRHVwbGljYXRlIGtleSBuYW1lICdpbmRleF9jJworU0hPVyBJTkRF WEVTIEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1 bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhf dHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3QxCTAJUFJJTUFSWQkxCWEJTlVMTAkxMAlOVUxM CU5VTEwJCUJUUkVFCQkKK3QxCTEJaW5kZXhfYwkxCWMJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJU UkVFCQkKKyMtLS0tLS0tLSBPTkxJTkU6IEFMVEVSIERST1Agc2FtZSBrZXkgbXVsdGlwbGUgdGlt ZXMgLS0tLS0tLS0jCitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgRFJPUCBJTkRFWCBpbmRleF9jOwor QUxURVIgT05MSU5FIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfYzsKK0VSUk9SIDQyMDAwOiBD YW4ndCBEUk9QICdpbmRleF9jJzsgY2hlY2sgdGhhdCBjb2x1bW4va2V5IGV4aXN0cworQUxURVIg T05MSU5FIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfYzsKK0VSUk9SIDQyMDAwOiBDYW4ndCBE Uk9QICdpbmRleF9jJzsgY2hlY2sgdGhhdCBjb2x1bW4va2V5IGV4aXN0cworU0hPVyBJTkRFWEVT IEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5f bmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlw ZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3QxCTAJUFJJTUFSWQkxCWEJTlVMTAkxMAlOVUxMCU5V TEwJCUJUUkVFCQkKKyMtLS0tLS0tLSBPTkxJTkU6IEFMVEVSIEFERC9EUk9QIFBSSU1BUlkgS0VZ IC0tLS0tLS0tIworQUxURVIgT05MSU5FIFRBQkxFIHQxIERST1AgUFJJTUFSWSBLRVk7CitFUlJP UiA0MjAwMDogVGhpcyB2ZXJzaW9uIG9mIE15U1FMIGRvZXNuJ3QgeWV0IHN1cHBvcnQgJ0FMVEVS IE9OTElORSBUQUJMRSB0MSBEUk9QIFBSSU1BUlkgS0VZJworQUxURVIgVEFCTEUgdDEgRFJPUCBQ UklNQVJZIEtFWTsKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgUFJJTUFSWSBLRVkgKGMpOwor RVJST1IgNDIwMDA6IFRoaXMgdmVyc2lvbiBvZiBNeVNRTCBkb2Vzbid0IHlldCBzdXBwb3J0ICdB TFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIFBSSU1BUlkgS0VZIChjKScKK1NIT1cgSU5ERVhFUyBG Uk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25h bWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJ Q29tbWVudAlJbmRleF9Db21tZW50CitBTFRFUiBUQUJMRSB0MSBBREQgUFJJTUFSWSBLRVkgKGEp OworIy0tLS0tLS0tIFRlc3Q6IFVOSVFVRSAtLS0tLS0tLSMKK0FMVEVSIE9OTElORSBUQUJMRSB0 MiBBREQgVU5JUVVFIElOREVYIGl4X3VuaXF1ZV9jIChjKTsKK0VYUExBSU4gU0VMRUNUICogRlJP TSB0MiBXSEVSRSBjIDwgMjUgQU5EIGMgPiAyMCBPUkRFUiBCWSBjOworaWQJc2VsZWN0X3R5cGUJ dGFibGUJdHlwZQlwb3NzaWJsZV9rZXlzCWtleQlrZXlfbGVuCXJlZglyb3dzCUV4dHJhCisxCVNJ TVBMRQl0MglyYW5nZQlpeF91bmlxdWVfYwlpeF91bmlxdWVfYwk1CU5VTEwJMQlVc2luZyB3aGVy ZTsgVXNpbmcgZmlsZXNvcnQKK1NFTEVDVCAqIEZST00gdDIgV0hFUkUgYyA8IDI1IEFORCBjID4g MjAgT1JERVIgQlkgYzsKK2EJYgljCWQKKzIwCTQwCTIxCVNvbWVTdHJpbmcgMjAgZm9yIHRlc3Rp bmcKKzIxCTQyCTIyCVNvbWVTdHJpbmcgMjEgZm9yIHRlc3RpbmcKKzIyCTQ0CTIzCVNvbWVTdHJp bmcgMjIgZm9yIHRlc3RpbmcKKzIzCTQ2CTI0CVNvbWVTdHJpbmcgMjMgZm9yIHRlc3RpbmcKK1NI T1cgSU5ERVhFUyBGUk9NIHQyOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5k ZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxs CUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MgkwCVBSSU1BUlkJMQlhCU5VTEwJ MTYJTlVMTAlOVUxMCQlCVFJFRQkJCit0MgkwCWl4X3VuaXF1ZV9jCTEJYwlOVUxMCTE2CU5VTEwJ TlVMTAlZRVMJQlRSRUUJCQorREVTQ1JJQkUgdDI7CitGaWVsZAlUeXBlCU51bGwJS2V5CURlZmF1 bHQJRXh0cmEKK2EJaW50KDExKQlOTwlQUkkJTlVMTAkKK2IJaW50KDExKQlZRVMJCU5VTEwJCitj CWludCgxMSkJWUVTCVVOSQlOVUxMCQorZAl2YXJjaGFyKDY1KQlZRVMJCU5VTEwJCitEUk9QIE9O TElORSBJTkRFWCBpeF91bmlxdWVfYyBPTiB0MjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworVGFi bGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9u CUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRl eF9Db21tZW50Cit0MgkwCVBSSU1BUlkJMQlhCU5VTEwJMTYJTlVMTAlOVUxMCQlCVFJFRQkJCisj LS0tLS0tLS0gVGVzdDogREVTQyAtLS0tLS0tLSMKK0FMVEVSIE9OTElORSBUQUJMRSB0MyBBREQg SU5ERVggaXhfZGVzY19iIChiIERFU0MpOworQUxURVIgT05MSU5FIFRBQkxFIHQzIEFERCBJTkRF WCBpeF9hc2NfYiAoYiBBU0MpOworU0hPVyBJTkRFWEVTIEZST00gdDM7CitUYWJsZQlOb25fdW5p cXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxp dHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQK K3QzCTAJUFJJTUFSWQkxCWEJTlVMTAk1MDAJTlVMTAlOVUxMCQlCVFJFRQkJCit0MwkxCWl4X2Rl c2NfYgkxCWIJTlVMTAk1MDAJTlVMTAlOVUxMCVlFUwlCVFJFRQkJCit0MwkxCWl4X2FzY19iCTEJ YglOVUxMCTUwMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0RST1AgT05MSU5FIElOREVYIGl4X2Rl c2NfYiBPTiB0MzsKK0RST1AgT05MSU5FIElOREVYIGl4X2FzY19iIE9OIHQzOworIy0tLS0tLS0t IFRlc3Q6IEtFWV9CTE9DS19TSVpFIC0tLS0tLS0tIworQUxURVIgT05MSU5FIFRBQkxFIHQxIEFE RCBJTkRFWCBpeF9rZXlibG9ja19iIChiKSBLRVlfQkxPQ0tfU0laRSA9IDA7CitFWFBMQUlOIFNF TEVDVCAqIEZST00gdDEgV0hFUkUgYiBMSUtFICdUZXN0Um93MSUnIE9SREVSIEJZIGI7CitpZAlz ZWxlY3RfdHlwZQl0YWJsZQl0eXBlCXBvc3NpYmxlX2tleXMJa2V5CWtleV9sZW4JcmVmCXJvd3MJ RXh0cmEKKzEJU0lNUExFCXQxCXJhbmdlCWl4X2tleWJsb2NrX2IJaXhfa2V5YmxvY2tfYgkyNTgJ TlVMTAkyCVVzaW5nIHdoZXJlOyBVc2luZyBmaWxlc29ydAorU0VMRUNUICogRlJPTSB0MSBXSEVS RSBiIExJS0UgJ1Rlc3RSb3cxJScgT1JERVIgQlkgYjsKK2EJYgljCWQKKzEJVGVzdFJvdzEJMglD aGFyMQorMTAJVGVzdFJvdzEwCTIwCUNoYXIxMAorMTEJVGVzdFJvdzExCTIyCUNoYXIxMQorMTIJ VGVzdFJvdzEyCTI0CUNoYXIxMgorMTMJVGVzdFJvdzEzCTI2CUNoYXIxMworMTQJVGVzdFJvdzE0 CTI4CUNoYXIxNAorMTUJVGVzdFJvdzE1CTMwCUNoYXIxNQorMTYJVGVzdFJvdzE2CTMyCUNoYXIx NgorMTcJVGVzdFJvdzE3CTM0CUNoYXIxNworMTgJVGVzdFJvdzE4CTM2CUNoYXIxOAorMTkJVGVz dFJvdzE5CTM4CUNoYXIxOQorU0hPVyBJTkRFWEVTIEZST00gdDE7CitUYWJsZQlOb25fdW5pcXVl CUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGluYWxpdHkJ U3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1lbnQKK3Qx CTAJUFJJTUFSWQkxCWEJTlVMTAkxMAlOVUxMCU5VTEwJCUJUUkVFCQkKK3QxCTEJaXhfa2V5Ymxv Y2tfYgkxCWIJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0FMVEVSIE9OTElORSBUQUJM RSB0MSBEUk9QIElOREVYIGl4X2tleWJsb2NrX2I7CisjLS0tLS0tLS0gVGVzdDogQ09NTUVOVCAt LS0tLS0tLSMKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgSU5ERVggaXhfYiAoYikgQ09NTUVO VCAnVGVzdCBjb21tZW50JzsKK0VYUExBSU4gU0VMRUNUICogRlJPTSB0MSBXSEVSRSBiIExJS0Ug J1Rlc3RSb3cxJScgT1JERVIgQlkgYjsKK2lkCXNlbGVjdF90eXBlCXRhYmxlCXR5cGUJcG9zc2li bGVfa2V5cwlrZXkJa2V5X2xlbglyZWYJcm93cwlFeHRyYQorMQlTSU1QTEUJdDEJcmFuZ2UJaXhf YglpeF9iCTI1OAlOVUxMCTIJVXNpbmcgd2hlcmU7IFVzaW5nIGZpbGVzb3J0CitTRUxFQ1QgKiBG Uk9NIHQxIFdIRVJFIGIgTElLRSAnVGVzdFJvdzElJyBPUkRFUiBCWSBiOworYQliCWMJZAorMQlU ZXN0Um93MQkyCUNoYXIxCisxMAlUZXN0Um93MTAJMjAJQ2hhcjEwCisxMQlUZXN0Um93MTEJMjIJ Q2hhcjExCisxMglUZXN0Um93MTIJMjQJQ2hhcjEyCisxMwlUZXN0Um93MTMJMjYJQ2hhcjEzCisx NAlUZXN0Um93MTQJMjgJQ2hhcjE0CisxNQlUZXN0Um93MTUJMzAJQ2hhcjE1CisxNglUZXN0Um93 MTYJMzIJQ2hhcjE2CisxNwlUZXN0Um93MTcJMzQJQ2hhcjE3CisxOAlUZXN0Um93MTgJMzYJQ2hh cjE4CisxOQlUZXN0Um93MTkJMzgJQ2hhcjE5CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxl CU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglD YXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhf Q29tbWVudAordDEJMAlQUklNQVJZCTEJYQlOVUxMCTEwCU5VTEwJTlVMTAkJQlRSRUUJCQordDEJ MQlpeF9iCTEJYglOVUxMCTEwCU5VTEwJTlVMTAlZRVMJQlRSRUUJCVRlc3QgY29tbWVudAorQUxU RVIgT05MSU5FIFRBQkxFIHQxIERST1AgSU5ERVggaXhfYjsKKyMtLS0tLS0tLSBUZXN0OiBNdWx0 aXBsZSBjb2x1bW5zIC0tLS0tLS0tIworQUxURVIgT05MSU5FIFRBQkxFIHQxIEFERCBJTkRFWCBp bmRleF9tdWx0aWNvbCAoYiwgYywgZCk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5v bl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJk aW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29t bWVudAordDEJMAlQUklNQVJZCTEJYQlOVUxMCTEwCU5VTEwJTlVMTAkJQlRSRUUJCQordDEJMQlp bmRleF9tdWx0aWNvbAkxCWIJTlVMTAkyCU5VTEwJTlVMTAlZRVMJQlRSRUUJCQordDEJMQlpbmRl eF9tdWx0aWNvbAkyCWMJTlVMTAk1CU5VTEwJTlVMTAlZRVMJQlRSRUUJCQordDEJMQlpbmRleF9t dWx0aWNvbAkzCWQJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK0VYUExBSU4gU0VMRUNU ICogRlJPTSB0MSBXSEVSRSBiIExJS0UgJ1Rlc3RSb3czJScgQU5EIGMgPSA2IE9SREVSIEJZIGIs IGMsIGQ7CitpZAlzZWxlY3RfdHlwZQl0YWJsZQl0eXBlCXBvc3NpYmxlX2tleXMJa2V5CWtleV9s ZW4JcmVmCXJvd3MJRXh0cmEKKzEJU0lNUExFCXQxCXJhbmdlCWluZGV4X211bHRpY29sCWluZGV4 X211bHRpY29sCTI2MwlOVUxMCTIJVXNpbmcgd2hlcmU7IFVzaW5nIGZpbGVzb3J0CitTRUxFQ1Qg KiBGUk9NIHQxIFdIRVJFIGIgTElLRSAnVGVzdFJvdzMlJyBBTkQgYyA9IDYgT1JERVIgQlkgYiwg YywgZDsKK2EJYgljCWQKKzMJVGVzdFJvdzMJNglDaGFyMworRFJPUCBJTkRFWCBpbmRleF9tdWx0 aWNvbCBPTiB0MTsKKyMtLS0tLS0tLSBUZXN0OiBNdWx0aXBsZSBBREQgSU5ERVggb24gc2FtZSBj b2x1bW4gLS0tLS0tLS0jCitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIGluZGV4XzFk IChkKTsKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfMmQgKGQpOworQ1JF QVRFIE9OTElORSBJTkRFWCBpbmRleF8zZCBPTiB0MSAoZCk7CitTSE9XIElOREVYRVMgRlJPTSB0 MTsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNv bGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1l bnQJSW5kZXhfQ29tbWVudAordDEJMAlQUklNQVJZCTEJYQlOVUxMCTEwCU5VTEwJTlVMTAkJQlRS RUUJCQordDEJMQlpbmRleF8xZAkxCWQJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJUUkVFCQkKK3Qx CTEJaW5kZXhfMmQJMQlkCU5VTEwJMTAJTlVMTAlOVUxMCVlFUwlCVFJFRQkJCit0MQkxCWluZGV4 XzNkCTEJZAlOVUxMCTEwCU5VTEwJTlVMTAlZRVMJQlRSRUUJCQorRFJPUCBPTkxJTkUgSU5ERVgg aW5kZXhfMWQgT04gdDE7CitEUk9QIE9OTElORSBJTkRFWCBpbmRleF8yZCBPTiB0MTsKK0RST1Ag T05MSU5FIElOREVYIGluZGV4XzNkIE9OIHQxOworIy0tLS0tLS0tIFRlc3Q6IE11bHRpcGxlIEFE RCBJTkRFWCBpbiBhIHNpbmdsZSBzdGF0ZW1lbnQgLS0tLS0tLS0jCitBTFRFUiBUQUJMRSB0MSAK K0FERCBJTkRFWCBpbmRleF92YXJjaGFyIChiKSwgCitBREQgSU5ERVggaW5kZXhfaW50IChjKTsK K0FMVEVSIFRBQkxFIHQzIAorQUREIElOREVYIGluZGV4X2ludCAoYiksIAorQUREIElOREVYIGlu ZGV4X211bHRpIChiLGUpLCAKK0FERCBJTkRFWCBpbmRleF92YXJjaGFyIChlKTsKK1NIT1cgSU5E RVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29s dW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4 X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlhCU5VTEwJMTAJTlVM TAlOVUxMCQlCVFJFRQkJCit0MQkxCWluZGV4X3ZhcmNoYXIJMQliCU5VTEwJMTAJTlVMTAlOVUxM CVlFUwlCVFJFRQkJCit0MQkxCWluZGV4X2ludAkxCWMJTlVMTAkxMAlOVUxMCU5VTEwJWUVTCUJU UkVFCQkKK1NIT1cgSU5ERVhFUyBGUk9NIHQzOworVGFibGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlT ZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBh Y2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0MwkwCVBSSU1BUlkJ MQlhCU5VTEwJNTAwCU5VTEwJTlVMTAkJQlRSRUUJCQordDMJMQlpbmRleF9pbnQJMQliCU5VTEwJ NTAwCU5VTEwJTlVMTAlZRVMJQlRSRUUJCQordDMJMQlpbmRleF9tdWx0aQkxCWIJTlVMTAkyNTAJ TlVMTAlOVUxMCVlFUwlCVFJFRQkJCit0MwkxCWluZGV4X211bHRpCTIJZQlOVUxMCTUwMAlOVUxM CU5VTEwJWUVTCUJUUkVFCQkKK3QzCTEJaW5kZXhfdmFyY2hhcgkxCWUJTlVMTAk1MDAJTlVMTAlO VUxMCVlFUwlCVFJFRQkJCisjLS0tLS0tLS0gVGVzdDogTXVsdGlwbGUgRFJPUCBJTkRFWCBpbiBh IHNpbmdsZSBzdGF0ZW1lbnQgLS0tLS0tLS0jCitBTFRFUiBUQUJMRSB0MSAKK0RST1AgSU5ERVgg aW5kZXhfdmFyY2hhciwgCitEUk9QIElOREVYIGluZGV4X2ludDsKK0FMVEVSIFRBQkxFIHQzIAor RFJPUCBJTkRFWCBpbmRleF9pbnQsIAorRFJPUCBJTkRFWCBpbmRleF9tdWx0aSwKK0RST1AgSU5E RVggaW5kZXhfdmFyY2hhcjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFibGUJTm9uX3VuaXF1 ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9uCUNhcmRpbmFsaXR5 CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRleF9Db21tZW50Cit0 MQkwCVBSSU1BUlkJMQlhCU5VTEwJMTAJTlVMTAlOVUxMCQlCVFJFRQkJCitTSE9XIElOREVYRVMg RlJPTSB0MzsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9u YW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBl CUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDMJMAlQUklNQVJZCTEJYQlOVUxMCTUwMAlOVUxMCU5V TEwJCUJUUkVFCQkKKyMtLS0tLS0tLSBUZXN0OiBDb21iaW5lZCBBREQvRFJPUCBJTkRFWCBpbiBh IHNpbmdsZSBzdGF0ZW1lbnQgLS0tLS0tLS0jCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVggaW5k ZXhfaW50IChjKTsKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRFWCBpbmRleF9jaGFyIChkKSwgRFJP UCBJTkRFWCBpbmRleF9pbnQ7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1RhYmxlCU5vbl91bmlx dWUJS2V5X25hbWUJU2VxX2luX2luZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0 eQlTdWJfcGFydAlQYWNrZWQJTnVsbAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAor dDEJMAlQUklNQVJZCTEJYQlOVUxMCTEwCU5VTEwJTlVMTAkJQlRSRUUJCQordDEJMQlpbmRleF9j aGFyCTEJZAlOVUxMCTEwCU5VTEwJTlVMTAlZRVMJQlRSRUUJCQorQUxURVIgVEFCTEUgdDEgRFJP UCBJTkRFWCBpbmRleF9jaGFyOworIy0tLS0tLS0tIFRlc3Q6IEFERCBJTkRFWCBmb2xsb3dlZCBi eSBzb21lIGNvbXBsZXggcXVlcmllcyAtLS0tLS0tLSMKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRF WCBpeF9hIChhKTsKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgSU5ERVggaXhfYiAoYik7CitB TFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIGl4X2MgKGMpOworQUxURVIgT05MSU5FIFRB QkxFIHQyCitBREQgSU5ERVggaXhfYiAoYiksCitBREQgSU5ERVggaXhfZCAoZCk7CitBTFRFUiBP TkxJTkUgVEFCTEUgdDMgQUREIElOREVYIGl4X2IgKGIpOworRVhQTEFJTiBTRUxFQ1QgKiBGUk9N IHQxIFdIRVJFIGEgPSAzIE9SIChjID4gMTAgQU5EIGEgPCAxNSkgT1JERVIgQlkgYTsKK2lkCXNl bGVjdF90eXBlCXRhYmxlCXR5cGUJcG9zc2libGVfa2V5cwlrZXkJa2V5X2xlbglyZWYJcm93cwlF eHRyYQorMQlTSU1QTEUJdDEJcmFuZ2UJUFJJTUFSWSxpeF9hLGl4X2MJUFJJTUFSWQk0CU5VTEwJ MjAJVXNpbmcgd2hlcmU7IFVzaW5nIGZpbGVzb3J0CitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGEg PSAzIE9SIChjID4gMTAgQU5EIGEgPCAxNSkgT1JERVIgQlkgYTsKK2EJYgljCWQKKzMJVGVzdFJv dzMJNglDaGFyMworNglUZXN0Um93NgkxMglDaGFyNgorNwlUZXN0Um93NwkxNAlDaGFyNworOAlU ZXN0Um93OAkxNglDaGFyOAorOQlUZXN0Um93OQkxOAlDaGFyOQorMTAJVGVzdFJvdzEwCTIwCUNo YXIxMAorMTEJVGVzdFJvdzExCTIyCUNoYXIxMQorMTIJVGVzdFJvdzEyCTI0CUNoYXIxMgorMTMJ VGVzdFJvdzEzCTI2CUNoYXIxMworMTQJVGVzdFJvdzE0CTI4CUNoYXIxNAorRVhQTEFJTiBTRUxF Q1QgKiBGUk9NIHQxIFdIRVJFIGEgPSA5OSBPUiBiIExJS0UgJ1Rlc3RSb3c3JSc7CitpZAlzZWxl Y3RfdHlwZQl0YWJsZQl0eXBlCXBvc3NpYmxlX2tleXMJa2V5CWtleV9sZW4JcmVmCXJvd3MJRXh0 cmEKKzEJU0lNUExFCXQxCWluZGV4X21lcmdlCVBSSU1BUlksaXhfYSxpeF9iCVBSSU1BUlksaXhf Ygk0LDI1OAlOVUxMCTMJVXNpbmcgc29ydF91bmlvbihQUklNQVJZLGl4X2IpOyBVc2luZyB3aGVy ZQorU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhID0gOTkgT1IgYiBMSUtFICdUZXN0Um93NyUnOwor YQliCWMJZAorNwlUZXN0Um93NwkxNAlDaGFyNworRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIHQxIFdI RVJFIChhID0gMTAgT1IgYiBMSUtFICdUZXN0Um93MTEnKSBBTkQgZCBMSUtFICdDaGFyJScgT1JE RVIgQlkgYTsKK2lkCXNlbGVjdF90eXBlCXRhYmxlCXR5cGUJcG9zc2libGVfa2V5cwlrZXkJa2V5 X2xlbglyZWYJcm93cwlFeHRyYQorMQlTSU1QTEUJdDEJaW5kZXhfbWVyZ2UJUFJJTUFSWSxpeF9h LGl4X2IJUFJJTUFSWSxpeF9iCTQsMjU4CU5VTEwJMwlVc2luZyBzb3J0X3VuaW9uKFBSSU1BUlks aXhfYik7IFVzaW5nIHdoZXJlOyBVc2luZyBmaWxlc29ydAorU0VMRUNUICogRlJPTSB0MSBXSEVS RSAoYSA9IDEwIE9SIGIgTElLRSAnVGVzdFJvdzExJykgQU5EIGQgTElLRSAnQ2hhciUnIE9SREVS IEJZIGE7CithCWIJYwlkCisxMAlUZXN0Um93MTAJMjAJQ2hhcjEwCisxMQlUZXN0Um93MTEJMjIJ Q2hhcjExCitFWFBMQUlOIFNFTEVDVCAqIEZST00gdDEsIHQyIFdIRVJFICh0MS5hIElOICgxLDIp IE9SIHQxLmIgTElLRSAnVGVzdFJvdzElJykgQU5EIHQxLmM9dDIuYzsKK2lkCXNlbGVjdF90eXBl CXRhYmxlCXR5cGUJcG9zc2libGVfa2V5cwlrZXkJa2V5X2xlbglyZWYJcm93cwlFeHRyYQorMQlT SU1QTEUJdDEJaW5kZXhfbWVyZ2UJUFJJTUFSWSxpeF9hLGl4X2IsaXhfYwlQUklNQVJZLGl4X2IJ NCwyNTgJTlVMTAk0CVVzaW5nIHNvcnRfdW5pb24oUFJJTUFSWSxpeF9iKTsgVXNpbmcgd2hlcmUK KzEJU0lNUExFCXQyCUFMTAlOVUxMCU5VTEwJTlVMTAlOVUxMCTMzCVVzaW5nIHdoZXJlOyBVc2lu ZyBqb2luIGJ1ZmZlcgorU0VMRUNUICogRlJPTSB0MSwgdDIgV0hFUkUgKHQxLmEgSU4gKDEsMikg T1IgdDEuYiBMSUtFICdUZXN0Um93MSUnKSBBTkQgdDEuYz10Mi5jOworYQliCWMJZAlhCWIJYwlk CisxCVRlc3RSb3cxCTIJQ2hhcjEJMQkyCTIJU29tZVN0cmluZyAxIGZvciB0ZXN0aW5nCisyCVRl c3RSb3cyCTQJQ2hhcjIJMwk2CTQJU29tZVN0cmluZyAzIGZvciB0ZXN0aW5nCisxMAlUZXN0Um93 MTAJMjAJQ2hhcjEwCTE5CTM4CTIwCVNvbWVTdHJpbmcgMTkgZm9yIHRlc3RpbmcKKzExCVRlc3RS b3cxMQkyMglDaGFyMTEJMjEJNDIJMjIJU29tZVN0cmluZyAyMSBmb3IgdGVzdGluZworMTIJVGVz dFJvdzEyCTI0CUNoYXIxMgkyMwk0NgkyNAlTb21lU3RyaW5nIDIzIGZvciB0ZXN0aW5nCisxMwlU ZXN0Um93MTMJMjYJQ2hhcjEzCTI1CTUwCTI2CVNvbWVTdHJpbmcgMjUgZm9yIHRlc3RpbmcKKzE0 CVRlc3RSb3cxNAkyOAlDaGFyMTQJMjcJNTQJMjgJU29tZVN0cmluZyAyNyBmb3IgdGVzdGluZwor MTUJVGVzdFJvdzE1CTMwCUNoYXIxNQkyOQk1OAkzMAlTb21lU3RyaW5nIDI5IGZvciB0ZXN0aW5n CisxNglUZXN0Um93MTYJMzIJQ2hhcjE2CTMxCTYyCTMyCVNvbWVTdHJpbmcgMzEgZm9yIHRlc3Rp bmcKK0VYUExBSU4gU0VMRUNUICogRlJPTSB0MSwgdDMgV0hFUkUgdDMuYj0yIEFORCAodDEuYyA9 IHQzLmMgT1IgdDEuYT10My5kKTsKK2lkCXNlbGVjdF90eXBlCXRhYmxlCXR5cGUJcG9zc2libGVf a2V5cwlrZXkJa2V5X2xlbglyZWYJcm93cwlFeHRyYQorMQlTSU1QTEUJdDMJcmVmCWl4X2IJaXhf Ygk1CWNvbnN0CTEwMAkKKzEJU0lNUExFCXQxCUFMTAlQUklNQVJZLGl4X2EsaXhfYwlOVUxMCU5V TEwJTlVMTAkyMAlSYW5nZSBjaGVja2VkIGZvciBlYWNoIHJlY29yZCAoaW5kZXggbWFwOiAweEIp CitTRUxFQ1QgKiBGUk9NIHQxLCB0MyBXSEVSRSB0My5iPTIgQU5EICh0MS5jID0gdDMuYyBPUiB0 MS5hPXQzLmQpOworYQliCWMJZAlhCWIJYwlkCWUKKzAJVGVzdFJvdzAJMAlDaGFyMAkyCTIJMgkw CVNvbWVWYXJjaGFyIDEgZm9yIHRlc3RpbmcKKzEJVGVzdFJvdzEJMglDaGFyMQkyCTIJMgkwCVNv bWVWYXJjaGFyIDEgZm9yIHRlc3RpbmcKK0FMVEVSIE9OTElORSBUQUJMRSB0MSAKK0RST1AgSU5E RVggaXhfYSwKK0RST1AgSU5ERVggaXhfYiwKK0RST1AgSU5ERVggaXhfYzsKK0FMVEVSIE9OTElO RSBUQUJMRSB0MgorRFJPUCBJTkRFWCBpeF9iLAorRFJPUCBJTkRFWCBpeF9kOworQUxURVIgT05M SU5FIFRBQkxFIHQzIERST1AgSU5ERVggaXhfYjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworVGFi bGUJTm9uX3VuaXF1ZQlLZXlfbmFtZQlTZXFfaW5faW5kZXgJQ29sdW1uX25hbWUJQ29sbGF0aW9u CUNhcmRpbmFsaXR5CVN1Yl9wYXJ0CVBhY2tlZAlOdWxsCUluZGV4X3R5cGUJQ29tbWVudAlJbmRl eF9Db21tZW50Cit0MQkwCVBSSU1BUlkJMQlhCU5VTEwJMTAJTlVMTAlOVUxMCQlCVFJFRQkJCitT SE9XIElOREVYRVMgRlJPTSB0MjsKK1RhYmxlCU5vbl91bmlxdWUJS2V5X25hbWUJU2VxX2luX2lu ZGV4CUNvbHVtbl9uYW1lCUNvbGxhdGlvbglDYXJkaW5hbGl0eQlTdWJfcGFydAlQYWNrZWQJTnVs bAlJbmRleF90eXBlCUNvbW1lbnQJSW5kZXhfQ29tbWVudAordDIJMAlQUklNQVJZCTEJYQlOVUxM CTE2CU5VTEwJTlVMTAkJQlRSRUUJCQorU0hPVyBJTkRFWEVTIEZST00gdDM7CitUYWJsZQlOb25f dW5pcXVlCUtleV9uYW1lCVNlcV9pbl9pbmRleAlDb2x1bW5fbmFtZQlDb2xsYXRpb24JQ2FyZGlu YWxpdHkJU3ViX3BhcnQJUGFja2VkCU51bGwJSW5kZXhfdHlwZQlDb21tZW50CUluZGV4X0NvbW1l bnQKK3QzCTAJUFJJTUFSWQkxCWEJTlVMTAk1MDAJTlVMTAlOVUxMCQlCVFJFRQkJCitEUk9QIFRB QkxFIHQxOworRFJPUCBUQUJMRSB0MjsKK0RST1AgVEFCTEUgdDM7Cgo9PT0gcmVtb3ZlZCBmaWxl ICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi9yL2ZhbGNvbl9zZWxlY3RfZXhjZXJwdC5yZXN1bHQn Ci0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3IvZmFsY29uX3NlbGVjdF9leGNlcnB0LnJl c3VsdAkyMDA3LTA5LTIwIDE1OjQ0OjI1ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFs Y29uL3IvZmFsY29uX3NlbGVjdF9leGNlcnB0LnJlc3VsdAkxOTcwLTAxLTAxIDAwOjAwOjAwICsw MDAwCkBAIC0xLDgzICswLDAgQEAKLSoqKiBCdWcgIzI4Njg2ICoqKgotU0VUIEBAc3RvcmFnZV9l bmdpbmUgPSAnRmFsY29uJzsKLURST1AgVEFCTEUgSUYgRVhJU1RTIHQxOwotRFJPUCBUQUJMRSBJ RiBFWElTVFMgdDI7Ci1EUk9QIFRBQkxFIElGIEVYSVNUUyB0MzsKLURST1AgVEFCTEUgSUYgRVhJ U1RTIHQ0OwotRFJPUCBUQUJMRSBJRiBFWElTVFMgdDU7Ci1EUk9QIFRBQkxFIElGIEVYSVNUUyB0 NjsKLUNSRUFURSBUQUJMRSB0MSAoZjEgdmFyY2hhcig2KSBERUZBVUxUIE5VTEwsIGYyIGludCg2 KSBQUklNQVJZIEtFWSBOT1QgTlVMTCk7Ci1DUkVBVEUgVEFCTEUgdDIgKGYzIHZhcmNoYXIoNSkg Tk9UIE5VTEwsIGY0IHZhcmNoYXIoNSkgTk9UIE5VTEwsIFVOSVFVRSBLRVkgdWtleSAoZjMsZjQp KTsKLUlOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJyAyJywgMik7Ci1JTlNFUlQgSU5UTyB0MiBWQUxV RVMgKCcgMicsICcgb25lICcpLCgnIDInLCAnIHR3byAnKTsKLUNSRUFURSBUQUJMRSB0MyAoCi1h dXRvIGludCBub3QgbnVsbCBhdXRvX2luY3JlbWVudCwKLWZsZDEgaW50KDYpIHVuc2lnbmVkIHpl cm9maWxsIERFRkFVTFQgJzAwMDAwMCcgTk9UIE5VTEwsCi1jb21wYW55bnIgdGlueWludCgyKSB1 bnNpZ25lZCB6ZXJvZmlsbCBERUZBVUxUICcwMCcgTk9UIE5VTEwsCi1mbGQzIGNoYXIoMzApIERF RkFVTFQgJycgTk9UIE5VTEwsCi1mbGQ0IGNoYXIoMzUpIERFRkFVTFQgJycgTk9UIE5VTEwsCi1m bGQ1IGNoYXIoMzUpIERFRkFVTFQgJycgTk9UIE5VTEwsCi1mbGQ2IGNoYXIoNCkgREVGQVVMVCAn JyBOT1QgTlVMTCwKLVVOSVFVRSBmbGQxIChmbGQxKSwKLUtFWSBmbGQzIChmbGQzKSwKLVBSSU1B UlkgS0VZIChhdXRvKQotKTsKLUlOU0VSVCBJTlRPIHQzIChmbGQxLCBjb21wYW55bnIpIFZBTFVF UyAoOTk5OTk5LDk5KTsKLUNSRUFURSBUQUJMRSB0NCAoCi1jb21wYW55bnIgdGlueWludCgyKSB1 bnNpZ25lZCB6ZXJvZmlsbCBOT1QgTlVMTCBkZWZhdWx0ICcwMCcsCi1jb21wYW55bmFtZSBjaGFy KDMwKSBOT1QgTlVMTCBkZWZhdWx0ICcnLAotUFJJTUFSWSBLRVkgKGNvbXBhbnluciksCi1VTklR VUUgS0VZIGNvbXBhbnluYW1lKGNvbXBhbnluYW1lKQotKSBNQVhfUk9XUz01MCBQQUNLX0tFWVM9 MSBDT01NRU5UPSdjb21wYW55bmFtZXMnOwotQ1JFQVRFIFRBQkxFIHQ1ICgKLWEgaW50LCBiIHZh cmNoYXIoMzApLAotUFJJTUFSWSBLRVkoYSkKLSk7Ci1JTlNFUlQgSU5UTyB0NSBWQUxVRVMgKDEs J29uZScpOwotSU5TRVJUIElOVE8gdDUgVkFMVUVTICgyLCd0d28nKTsKLUlOU0VSVCBJTlRPIHQ1 IFZBTFVFUyAoMywndGhyZWUnKTsKLUlOU0VSVCBJTlRPIHQ1IFZBTFVFUyAoNCwnZm91cicpOwot Q1JFQVRFIFRBQkxFIHQ2IEFTIFNFTEVDVCAqIEZST00gdDU7Ci1TRUxFQ1QgKiBGUk9NIHQxIExF RlQgSk9JTiB0MiBPTiBmMSA9IGYzOwotZjEJZjIJZjMJZjQKLSAyCTIJIDIJIG9uZSAKLSAyCTIJ IDIJIHR3byAKLVNFTEVDVCB0My5jb21wYW55bnIsY29tcGFueW5hbWUgRlJPTSB0MyBMRUZUIEpP SU4gdDQgVVNJTkcgKGNvbXBhbnlucikgV0hFUkUgdDQuY29tcGFueW5yIElTIE5VTEw7Ci1jb21w YW55bnIJY29tcGFueW5hbWUKLTk5CU5VTEwKLVNFTEVDVCAqIEZST00gdDYgTEVGVCBKT0lOIHQ1 IE9OKHQ1LmEgPSB0Ni5hKSBPUkRFUiBCWSB0Ni5hOwotYQliCWEJYgotMQlvbmUJMQlvbmUKLTIJ dHdvCTIJdHdvCi0zCXRocmVlCTMJdGhyZWUKLTQJZm91cgk0CWZvdXIKLVNFTEVDVCAqIEZST00g dDYgTEVGVCBKT0lOIHQ1IFVTSU5HKGEpIE9SREVSIEJZIHQ2LmE7Ci1hCWIJYgotMQlvbmUJb25l Ci0yCXR3bwl0d28KLTMJdGhyZWUJdGhyZWUKLTQJZm91cglmb3VyCi1TRUxFQ1QgY291bnQoKikg RlJPTSB0MTsKLWNvdW50KCopCi0xCi1TRUxFQ1QgY291bnQoKikgRlJPTSB0MjsKLWNvdW50KCop Ci0yCi1TRUxFQ1QgY291bnQoKikgRlJPTSB0MzsKLWNvdW50KCopCi0xMjAwCi1TRUxFQ1QgY291 bnQoKikgRlJPTSB0NDsKLWNvdW50KCopCi0xMgotU0VMRUNUIGNvdW50KCopIEZST00gdDU7Ci1j b3VudCgqKQotNAotU0VMRUNUIGNvdW50KCopIEZST00gdDY7Ci1jb3VudCgqKQotNAotRFJPUCBU QUJMRSB0MTsKLURST1AgVEFCTEUgdDI7Ci1EUk9QIFRBQkxFIHQzOwotRFJPUCBUQUJMRSB0NDsK LURST1AgVEFCTEUgdDU7Ci1EUk9QIFRBQkxFIHQ2OwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3Fs LXRlc3Qvc3VpdGUvZmFsY29uL3QvZGlzYWJsZWQuZGVmJwotLS0gYS9teXNxbC10ZXN0L3N1aXRl L2ZhbGNvbi90L2Rpc2FibGVkLmRlZgkyMDA4LTA4LTExIDEzOjIyOjUzICswMDAwCisrKyBiL215 c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3QvZGlzYWJsZWQuZGVmCTIwMDgtMDktMDkgMDg6MzA6MTgg KzAwMDAKQEAgLTEwLDUgKzEwLDUgQEAKICMKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCi1mYWxj b25fYnVnXzI4MDk1X0kgIDogQnVnI3h4eHh4IDIwMDgtMDQtMjIgaGFrYW5rIERpc2FibGVkIHVu dGlsIHNvZnQgcmVzdGFydCBpcyBpbiBtYWluIHRyZWUKLWZhbGNvbl9idWdfMjgwOTVfSUkgOiBC dWcjeHh4eHggMjAwOC0wMy0yMiBoYWthbmsgRGlzYWJsZWQgdW50aWwgc29mdCByZXN0YXJ0IGlz IGluIG1haW4gdHJlZQorZmFsY29uX2J1Z18yODA5NV9JICA6IEJ1ZyMzOTIwNSAyMDA4LTA5LTA5 IGhha2FuayBEaXNhYmxlZCB1bnRpbCBzb2Z0IHJlc3RhcnQgaXMgaW4gbWFpbiB0cmVlCitmYWxj b25fYnVnXzI4MDk1X0lJIDogQnVnIzM5MjA1IDIwMDgtMDktMDkgaGFrYW5rIERpc2FibGVkIHVu dGlsIHNvZnQgcmVzdGFydCBpcyBpbiBtYWluIHRyZWUKCj09PSByZW5hbWVkIGZpbGUgJ215c3Fs LXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0vdC9mYWxjb25fYnVnXzIyMTg5LnRlc3QnID0+ICdteXNx bC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjIxODkudGVzdCcKLS0tIGEvbXlzcWwt dGVzdC9zdWl0ZS9mYWxjb25fdGVhbS90L2ZhbGNvbl9idWdfMjIxODkudGVzdAkyMDA4LTA0LTI4 IDExOjIxOjUyICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3QvZmFsY29uX2J1 Z18yMjE4OS50ZXN0CTIwMDgtMDktMDkgMDg6MzA6MTggKzAwMDAKQEAgLTY4LDggKzY4LDEwIEBA IFNFTEVDVCAqIEZST00geDE7CiAKIC0tZWNobyAjIFN3aXRjaCB0byBjb25uZWN0aW9uIGNvbm4x CiBjb25uZWN0aW9uIGNvbm4xOwotLS1zZW5kIFVQREFURSB4MSBTRVQgeDEgPSAwLCB4MiA9IDUK LS0tc2VuZCBJTlNFUlQgSU5UTyB4MSBWQUxVRVMgKDAsNikKKy0tZXJyb3IgRVJfRFVQX0VOVFJZ CitVUERBVEUgeDEgU0VUIHgxID0gMCwgeDIgPSA1OworLS1lcnJvciBFUl9EVVBfRU5UUlkKK0lO U0VSVCBJTlRPIHgxIFZBTFVFUyAoMCw2KTsKIAogLS1lY2hvICMgU3dpdGNoIHRvIGNvbm5lY3Rp b24gZGVmYXVsdAogY29ubmVjdGlvbiBkZWZhdWx0OwpAQCAtNzgsOCArODAsNiBAQCBST0xMQkFD SzsKIC0tZWNobyAjIFN3aXRjaCB0byBjb25uZWN0aW9uIGNvbm4xCiBjb25uZWN0aW9uIGNvbm4x OwogLS1lcnJvciBFUl9EVVBfRU5UUlkKLS0tcmVhcAotLS1lcnJvciBFUl9EVVBfRU5UUlkKIElO U0VSVCBJTlRPIHgxIFZBTFVFUyAoMCw2KTsKIC0tZXJyb3IgRVJfRFVQX0VOVFJZCiBJTlNFUlQg SU5UTyB4MSBWQUxVRVMgKDAsNik7Cgo9PT0gYWRkZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9m YWxjb24vdC9mYWxjb25fYnVnXzIyMjA3LWJpZy50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRl L2ZhbGNvbi90L2ZhbGNvbl9idWdfMjIyMDctYmlnLnRlc3QJMTk3MC0wMS0wMSAwMDowMDowMCAr MDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjIyMDctYmln LnRlc3QJMjAwOC0wOS0wOSAwODozMDoxOCArMDAwMApAQCAtMCwwICsxLDc4IEBACistLXNvdXJj ZSBpbmNsdWRlL2hhdmVfZmFsY29uLmluYworLS1zb3VyY2UgaW5jbHVkZS9iaWdfdGVzdC5pbmMK KworIworIyBCdWcgIzIyMjA3OiBmYWxjb25fcmVjb3JkX2NhY2hlX21lbW9yeV9sZWFrMi50ZXN0 IGxlYWRzIHRvIGNyYXNoIHNvbWV0aW1lcy4KKyMKKyMgUmVjb3JkIGNhY2hlIG1lbW9yeSBsZWFr IHRlc3QgaW5zcGlyZWQgYnkgS2V2aW4uCisjCisjIE5vdGU6IEJpZyB0ZXN0IHZhcmlhbnQKKyMg ICBGb3IgTWFudGlzIGJ1ZyAjMjU3LCBzZXQgdGhlIGlubmVyIGxvb3AgdG8gMTAgYW5kIHRoZSBt aWRkbGUgbG9vcCB0byAxMCwwMDAuCisjICAgV2Ugc2V0IHRoZSBtaWRkbGUgbG9vcCB0byAxNSww MDAgZm9yIHRoaXMgLS1iaWdfdGVzdCB2ZXJzaW9uLgorIworLS1lY2hvICoqKiBCdWcgIzIyMjA3 ICoqKgorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tICMKKyMgLS0tIEluaXRpYWxpc2F0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSAjCitsZXQgJGVuZ2luZSA9ICdGYWxjb24nOworZXZhbCBTRVQgQEBzdG9yYWdl X2VuZ2luZSA9ICRlbmdpbmU7CisKKy0tZGlzYWJsZV93YXJuaW5ncworRFJPUCBUQUJMRSBJRiBF WElTVFMgdDE7CistLWVuYWJsZV93YXJuaW5ncworCitDUkVBVEUgVEFCTEUgdDEgKGMxIHZhcmNo YXIoNTApLCBjMiBpbnQsIGMzIGNoYXIoMSkpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTIChyZXBl YXQoJ0EnLCA1MCksIDAsICdBJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKHJlcGVhdCgnQics IDUwKSwgMCwgJ0InKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAocmVwZWF0KCdDJywgNTApLCAw LCAnQycpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTIChyZXBlYXQoJ0QnLCA1MCksIDAsICdEJyk7 CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKHJlcGVhdCgnRScsIDUwKSwgMCwgJ0UnKTsKK0lOU0VS VCBJTlRPIHQxIFZBTFVFUyAocmVwZWF0KCdGJywgNTApLCAwLCAnRicpOworSU5TRVJUIElOVE8g dDEgVkFMVUVTIChyZXBlYXQoJ0cnLCA1MCksIDAsICdHJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxV RVMgKHJlcGVhdCgnSCcsIDUwKSwgMCwgJ0gnKTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAocmVw ZWF0KCdJJywgNTApLCAwLCAnSScpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTIChyZXBlYXQoJ0on LCA1MCksIDAsICdKJyk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKHJlcGVhdCgnSycsIDUwKSwg MCwgJ0snKTsKK0NPTU1JVDsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBUZXN0ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyBEdXJpbmcgdGhpcyBzZXJpZXMgb2YgdXBkYXRl cywgdGhlcmUgc2hvdWxkIGJlIG5vIGluY3JlYXNlIGluIG1lbW9yeQorIyBzaW5jZSBlYWNoIHBy ZXZpb3VzIHJlY29yZCB2ZXJzaW9uIHNob3VsZCBiZSBmcmVlZCBvbmNlIGl0IGlzIHJlcGxhY2Vk LgorCisjIE91dGVyIGxvb3AgY29udHJvbHMgaG93IG1hbnkgU0VMRUNUcyBhcmUgZG9uZS4KK2xl dCAkaT0gMTA7Cit3aGlsZSAoJGkpIAoreworICAgICMgTWlkZGxlIGxvb3AgY29udHJvbHMgaG93 IG9mdGVuIGEgQ09NTUlUIGlzIGRvbmUuCisgICAgLS1kaXNhYmxlX3F1ZXJ5X2xvZworICAgIGxl dCAkaj0gMTUwMDA7CisgICAgd2hpbGUgKCRqKSAKKyAgICB7CisgICAgICAgICMgSW5uZXIgbG9v cCBjb250cm9scyBob3cgbWFueSBVUERBVEVTIGFyZSBkb25lLgorICAgICAgICBCRUdJTjsKKyAg ICAgICAgbGV0ICRrPSAxMDsKKyAgICAgICAgd2hpbGUgKCRrKSAKKyAgICAgICAgeworICAgICAg ICAgICAgVVBEQVRFIHQxIFNFVCBjMiA9IGMyICsgMSwgYzEgPSBjb25jYXQocnBhZChjb252KGMy LDEwLDEwKSwxMCwnXycpLCByZXBlYXQoYzMsIDQwKSk7CisgICAgICAgICAgICBkZWMgJGs7Cisg ICAgICAgIH0KKyAgICAgICAgZGVjICRqOworICAgICAgICBDT01NSVQ7CisgICAgfQorICAgIC0t ZW5hYmxlX3F1ZXJ5X2xvZworICAgIFNFTEVDVCBjMSBmcm9tIHQxOworICAgIGRlYyAkaTsKK30K KworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSAjCisjIC0tLSBDaGVjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0gIworU0VMRUNUIGNvdW50KCopIEZST00gdDE7CisKKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyAtLS0gRmluYWwgY2xlYW51 cCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAjCisjIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKK0RST1AgVEFCTEUgdDE7 Cgo9PT0gcmVuYW1lZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFtL3QvZmFsY29u X2J1Z18yMjIwNy50ZXN0JyA9PiAnbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fYnVn XzIyMjA3LnRlc3QnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0vdC9mYWxjb25f YnVnXzIyMjA3LnRlc3QJMjAwOC0wNC0yMCAwMDowNToxNyArMDAwMAorKysgYi9teXNxbC10ZXN0 L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjIyMDcudGVzdAkyMDA4LTA5LTA5IDA4OjMwOjE4 ICswMDAwCkBAIC0xLDEyICsxLDIyIEBACiAtLXNvdXJjZSBpbmNsdWRlL2hhdmVfZmFsY29uLmlu YworCisjCisjIEJ1ZyAjMjIyMDc6IGZhbGNvbl9yZWNvcmRfY2FjaGVfbWVtb3J5X2xlYWsyLnRl c3QgbGVhZHMgdG8gY3Jhc2ggc29tZXRpbWVzLgogIwogIyBSZWNvcmQgY2FjaGUgbWVtb3J5IGxl YWsgdGVzdCBpbnNwaXJlZCBieSBLZXZpbi4KICMKICMgTm90ZTogRG8gbm90IHJ1biBpbiByYW1k aXNrIQogIyAgIEZvciBNYW50aXMgYnVnICMyNTcsIHNldCB0aGUgaW5uZXIgbG9vcCB0byAxMCBh bmQgdGhlIG1pZGRsZSBsb29wIHRvIDEwLDAwMC4KLSMgICBXZSBzZXQgdGhlIG1pZGRsZSBsb29w IHRvIDUwMCB0byBjb3BlIHdpdGggcnVuIHRpbWUgb24gdmFyaW91cyBQdXNoYnVpbGQgbWFjaGlu ZXMuCisjICAgV2Ugc2V0IHRoZSBtaWRkbGUgbG9vcCB0byAyNTAgdG8gY29wZSB3aXRoIHJ1biB0 aW1lIG9uIHZhcmlvdXMgUHVzaGJ1aWxkIG1hY2hpbmVzLgogIwotU0VUIFNUT1JBR0VfRU5HSU5F ID0gJ0ZhbGNvbic7CistLWVjaG8gKioqIEJ1ZyAjMjIyMDcgKioqCisKKyMgLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyAtLS0gSW5pdGlh bGlzYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAjCisjIC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKK2xldCAkZW5n aW5lID0gJ0ZhbGNvbic7CitldmFsIFNFVCBAQHN0b3JhZ2VfZW5naW5lID0gJGVuZ2luZTsKKwog LS1kaXNhYmxlX3dhcm5pbmdzCiBEUk9QIFRBQkxFIElGIEVYSVNUUyB0MTsKIC0tZW5hYmxlX3dh cm5pbmdzCkBAIC0yMyw2ICszMyw5IEBAIElOU0VSVCBJTlRPIHQxIFZBTFVFUyAocmVwZWF0KCdD JywgNTApLCAKICNJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKHJlcGVhdCgnSScsIDUwKSwgMCwgJ0kn KTsKIENPTU1JVDsKIAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSAjCisjIC0tLSBUZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0gIwogIyBEdXJpbmcgdGhpcyBzZXJpZXMgb2YgdXBkYXRlcywgdGhl cmUgc2hvdWxkIGJlIG5vIGluY3JlYXNlIGluIG1lbW9yeQogIyBzaW5jZSBlYWNoIHByZXZpb3Vz IHJlY29yZCB2ZXJzaW9uIHNob3VsZCBiZSBmcmVlZCBvbmNlIGl0IGlzIHJlcGxhY2VkLgogCkBA IC0zMCw5ICs0Myw5IEBAIENPTU1JVDsKIGxldCAkaT0gMTA7CiB3aGlsZSAoJGkpIAogewotICAg ICMgTmV4dCBsb29wIGNvbnRyb2xzIGhvdyBvZnRlbiBhIENPTU1JVCBpcyBkb25lCisgICAgIyBN aWRkbGUgbG9vcCBjb250cm9scyBob3cgb2Z0ZW4gYSBDT01NSVQgaXMgZG9uZS4KICAgICAtLWRp c2FibGVfcXVlcnlfbG9nCi0gICAgbGV0ICRqPSA1MDA7CisgICAgbGV0ICRqPSAyNTA7CiAgICAg d2hpbGUgKCRqKSAKICAgICB7CiAgICAgICAgICMgSW5uZXIgbG9vcCBjb250cm9scyBob3cgbWFu eSBVUERBVEVTIGFyZSBkb25lLgpAQCAtNTEsNiArNjQsMTIgQEAgd2hpbGUgKCRpKSAKICAgICBk ZWMgJGk7CiB9CiAKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0gIworIyAtLS0gQ2hlY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC0tLSAjCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tICMKK1NFTEVDVCBjb3VudCgqKSBGUk9NIHQxOwogCi0jIEZpbmFsIGNs ZWFudXAuCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tICMKKyMgLS0tIEZpbmFsIGNsZWFudXAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSAjCiBEUk9QIFRBQkxFIHQxOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRl c3Qvc3VpdGUvZmFsY29uL3QvZmFsY29uX2J1Z18yMjk3Mi50ZXN0JwotLS0gYS9teXNxbC10ZXN0 L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjI5NzIudGVzdAkyMDA3LTExLTI4IDE0OjA3OjI0 ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3QvZmFsY29uX2J1Z18yMjk3Mi50 ZXN0CTIwMDgtMDktMDkgMDg6MzA6MTggKzAwMDAKQEAgLTEsMTUgKzEsNTEgQEAKIC0tc291cmNl IGluY2x1ZGUvaGF2ZV9mYWxjb24uaW5jCi1DUkVBVEUgVEFCTEUgdDEoYSBJTlQpIEVOR0lORT1G YWxjb247Ci1jb25uZWN0IChjb24xLGxvY2FsaG9zdCxyb290LCwpOwotY29ubmVjdGlvbiBjb24x OworCisjCisjIEJ1ZyAjMjI5NzI6IEZhbGNvbjogUGFydGl0aW9uZWQgdGFibGUgd2l0aCBwZW5k aW5nIHRyYW5zYWN0aW9uIGxlYWRzIHRvIHN0cmFuZ2UgZXJyb3IKKyMKKy0tZWNobyAqKiogQnVn ICMyMjk3MiAqKioKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSAjCisjIC0tLSBJbml0aWFsaXNhdGlvbiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0gIworbGV0ICRlbmdpbmUgPSAnRmFsY29uJzsKK2V2YWwgU0VUIEBA c3RvcmFnZV9lbmdpbmUgPSAkZW5naW5lOworCistLWRpc2FibGVfd2FybmluZ3MKK0RST1AgVEFC TEUgSUYgRVhJU1RTIHQxOworLS1lbmFibGVfd2FybmluZ3MKKworQ1JFQVRFIFRBQkxFIHQxKGEg aW50KTsKKworLS1lY2hvICMgRXN0YWJsaXNoIGNvbm5lY3Rpb24gY29ubjEgKHJvb3QpCitjb25u ZWN0IChjb25uMSxsb2NhbGhvc3Qscm9vdCwsKTsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBUZXN0ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworLS1lY2hvICMgU3dpdGNoIHRv IGNvbm5lY3Rpb24gY29ubjEKIFNUQVJUIFRSQU5TQUNUSU9OOwogSU5TRVJUIElOVE8gdDEgVkFM VUVTKDEpOworCistLWVjaG8gIyBTd2l0Y2ggdG8gY29ubmVjdGlvbiBkZWZhdWx0CiBjb25uZWN0 aW9uIGRlZmF1bHQ7Ci0tLWVycm9yIDEwNTEKKy0tZXJyb3IgRVJfQkFEX1RBQkxFX0VSUk9SCiBE Uk9QIFRBQkxFIHQxOwogU0hPVyBXQVJOSU5HUzsKLWNvbm5lY3Rpb24gY29uMTsKKworLS1lY2hv ICMgU3dpdGNoIHRvIGNvbm5lY3Rpb24gY29ubjEKK2Nvbm5lY3Rpb24gY29ubjE7CiBDT01NSVQ7 CisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0gIworIyAtLS0gQ2hlY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC0tLSAjCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tICMKK1NFTEVDVCBjb3VudCgqKSBGUk9NIHQxOworCisjIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKKyMgLS0tIEZpbmFsIGNsZWFu dXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCistLWVjaG8gIyBTd2l0 Y2ggdG8gY29ubmVjdGlvbiBkZWZhdWx0CiBjb25uZWN0aW9uIGRlZmF1bHQ7Ci1kaXNjb25uZWN0 IGNvbjE7CitkaXNjb25uZWN0IGNvbm4xOwogRFJPUCBUQUJMRSB0MTsKCj09PSByZW5hbWVkIGZp bGUgJ215c3FsLXRlc3Qvc3VpdGUvZmFsY29uX3RlYW0vdC9mYWxjb25fYnVnXzI0MDI0LnRlc3Qn ID0+ICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMjQwMjQudGVzdCcKLS0t IGEvbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb25fdGVhbS90L2ZhbGNvbl9idWdfMjQwMjQudGVzdAky MDA4LTA0LTIwIDAwOjA1OjE3ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFsY29uL3Qv ZmFsY29uX2J1Z18yNDAyNC50ZXN0CTIwMDgtMDktMDkgMTQ6NTk6NDAgKzAwMDAKQEAgLTEsMzYg KzEsNjEgQEAKKy0tc291cmNlIGluY2x1ZGUvaGF2ZV9mYWxjb24uaW5jCisKICMKLSMgQnVnIzI0 MDI0IHdyb25nIGVycm9yIG1lc3NhZ2Ugd2hlbiBkcm9wIHRhYmxlICh1c2VkIGJ5IHBlbmRpbmcg dHJhbnNhY3Rpb24pIGZhaWxzCisjIEJ1ZyAjMjQwMjQ6IHdyb25nIGVycm9yIG1lc3NhZ2Ugd2hl biBkcm9wIHRhYmxlICh1c2VkIGJ5IHBlbmRpbmcgdHJhbnNhY3Rpb24pIGZhaWxzCiAjCiAjIFRo aXMgdGVzdCBpcyBhIGRlcml2YXRlIG9mIGEgc3VidGVzdGNhc2UgaW4gbWl4Mi5pbmMuCiAjIFRo ZXJlZm9yZSBwbGVhc2UgZGVsZXRlIHRoaXMgdGVzdCB3aGVuIG1peDJfZmFsY29uIGlzIHB1c2hl ZC4KICMKLQogLS1lY2hvICoqKiBCdWcgIzI0MDI0ICoqKgogCi0KLS0tc291cmNlIGluY2x1ZGUv aGF2ZV9mYWxjb24uaW5jCi1TRVQgU0VTU0lPTiBTVE9SQUdFX0VOR0lORSA9IEZhbGNvbjsKKyMg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwor IyAtLS0gSW5pdGlhbGlzYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAj CisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t ICMKK2xldCAkZW5naW5lID0gJ0ZhbGNvbic7CitldmFsIFNFVCBAQHN0b3JhZ2VfZW5naW5lID0g JGVuZ2luZTsKIAogLS1kaXNhYmxlX3dhcm5pbmdzCiBEUk9QIFRBQkxFIElGIEVYSVNUUyB0MTsK IC0tZW5hYmxlX3dhcm5pbmdzCi1DUkVBVEUgVEFCTEUgdDEoYSBJTlQgTk9UIE5VTEwsIGIgSU5U LCBwcmltYXJ5IGtleShhKSk7CisKK0NSRUFURSBUQUJMRSB0MShhIGludCwgYiBpbnQsIHByaW1h cnkga2V5KGEpKTsKIElOU0VSVCBJTlRPIHQxKGEpIFZBTFVFUyAoMSk7CiBDT01NSVQ7Ci1TRVQg QVVUT0NPTU1JVCA9IDA7CisKKy0tZWNobyAjIEVzdGFibGlzaCBjb25uZWN0aW9uIGNvbm4xICh1 c2VyPXJvb3QpCitjb25uZWN0IChjb25uMSxsb2NhbGhvc3Qscm9vdCwsKTsKKworIyAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBU ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworLS1l Y2hvICMgU3dpdGNoIHRvIGNvbm5lY3Rpb24gZGVmYXVsdAorY29ubmVjdGlvbiBkZWZhdWx0Owor U0VUIEBAYXV0b2NvbW1pdCA9IDA7CiBVUERBVEUgdDEgU0VUIGIgPSA1IFdIRVJFIGEgPSAxOwot LS1lY2hvICMgRXN0YWJsaXNoIHNlc3Npb24gY29uMSAodXNlcj1yb290KQotY29ubmVjdCAoY29u MSxsb2NhbGhvc3Qscm9vdCk7CisKKy0tZWNobyAjIFN3aXRjaCB0byBjb25uZWN0aW9uIGNvbm4x Citjb25uZWN0aW9uIGNvbm4xOwogSU5TRVJUIElOVE8gdDEoYSkgVkFMVUVTKDcpOwogQ09NTUlU OwogU0VMRUNUICogRlJPTSB0MTsKIAotLS1kaXNhYmxlX2Fib3J0X29uX2Vycm9yCistLWVjaG8g ISEhIEVycm9yIG1lc3NhZ2UgaXMgdG90YWwgY3JhcCEKKy0tZWNobyAhISEgU29tZXRoaW5nIGxp a2UgIkNhbm5vdCBkcm9wIGxvY2tlZCB0YWJsZSIgb3Igc2ltaWxhciB3b3VsZCBiZSBmaW5lLAor LS1lY2hvICEhISBCdXQgbmV2ZXIgdGhlIG1pc2xlYWRpbmcgICAgRVJST1IgNDJTMDI6IFVua25v d24gdGFibGUgJ3QxJy4KKy0tZXJyb3IgRVJfQkFEX1RBQkxFX0VSUk9SCiBEUk9QIFRBQkxFIHQx OwotQ09NTUlUOworU0hPVyBXQVJOSU5HUzsKIAotLS1lY2hvICMgU3dpdGNoIHRvIHNlc3Npb24g ZGVmYXVsdCBhbmQgZGlzY29ubmVjdCBzZXNzaW9uIGNvbjEKKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyAtLS0gQ2hlY2sgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAjCisjIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKK1NFTEVDVCBjb3VudCgq KSBGUk9NIHQxOworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tICMKKyMgLS0tIEZpbmFsIGNsZWFudXAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSAjCistLWVjaG8gIyBTd2l0Y2ggdG8gY29ubmVjdGlvbiBkZWZhdWx0 CiBjb25uZWN0aW9uIGRlZmF1bHQ7Ci1kaXNjb25uZWN0IGNvbjE7CitkaXNjb25uZWN0IGNvbm4x OwogQ09NTUlUOwogRFJPUCBUQUJMRSB0MTsKCj09PSBhZGRlZCBmaWxlICdteXNxbC10ZXN0L3N1 aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMzgzMDQudGVzdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0 ZS9mYWxjb24vdC9mYWxjb25fYnVnXzM4MzA0LnRlc3QJMTk3MC0wMS0wMSAwMDowMDowMCArMDAw MAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9idWdfMzgzMDQudGVzdAky MDA4LTA5LTA4IDExOjUxOjE5ICswMDAwCkBAIC0wLDAgKzEsNTQwIEBACistLXNvdXJjZSBpbmNs dWRlL2hhdmVfZmFsY29uLmluYworCisjCisjIEJ1ZyAjPDM4MzA0PjogPERhdGEgY29udGVudHMg YmVjb21lcyBOVUxMIGlmIGNvbHVtbiBuYW1lIGluIEZhbGNvbiB0YWJsZSB1c2VzIGFjY2VudGVk IGxldHRlcnM+CisjCistLWVjaG8gKioqIEJ1ZyAjPDM4MzA0PiAqKioKKworIyAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBJbml0 aWFsaXNhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworbGV0ICRl bmdpbmUgPSAnRmFsY29uJzsKK2V2YWwgU0VUIEBAc3RvcmFnZV9lbmdpbmUgPSAkZW5naW5lOwor CistLWRpc2FibGVfd2FybmluZ3MKK0RST1AgVEFCTEUgSUYgRVhJU1RTIHQxOworLS1lbmFibGVf d2FybmluZ3MKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSAjCisjIC0tLSBUZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0gIworCitTRVQgTE9DQUwgU1FMX01PREU9IiI7CitDUkVBVEUgVEFCTEUg dDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFj dGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgn YScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKwor U0VUIExPQ0FMIFNRTF9NT0RFPSJTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEg KGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVy IHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScp LCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VU IExPQ0FMIFNRTF9NT0RFPSJTVFJJQ1RfVFJBTlNfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAo YOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIg c2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyks ICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQg TE9DQUwgU1FMX01PREU9IlNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOwor Q1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNo YXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlz JyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRB QkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOwor Q1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNo YXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlz JyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRB QkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iTk9fQkFDS1NMQVNIX0VTQ0FQRVMsU1RS SUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk 4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5U TyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBG Uk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iTk9fQkFD S1NMQVNIX0VTQ0FQRVMsU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDi lJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNl dCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAo J3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExP Q0FMIFNRTF9NT0RFPSJOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVTLFNU UklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKU pOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElO VE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICog RlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0ki OworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZh cmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0 aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9Q IFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSSxTVFJJQ1RfQUxMX1RBQkxF UyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAg dmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAo J3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RS T1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJLFNUUklDVF9UUkFOU19U QUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzi lZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxV RVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor CitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSSxTVFJJQ1RfVFJB TlNfVEFCTEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pSc wr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0Zjgp OworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcp OworU0VMRUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FM X01PREU9IkFOU0ksTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pSc w7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQg dXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0 ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NB TCBTUUxfTU9ERT0iQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7 CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFy Y2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3Ro aXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1Ag VEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJLE5PX0JBQ0tTTEFTSF9FU0NB UEVTLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKU nMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJ TlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitT RUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9E RT0iQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVTLFNUUklDVF9B TExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq 4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0 MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVT IjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2 YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgn dGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKworRFJP UCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVTLFNUUklDVF9B TExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq 4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0 MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVT LFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK7 4pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNF UlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxF Q1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0i QU5TSV9RVU9URVMsU1RSSUNUX1RSQU5TX1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVB VEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigz MCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwo J2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUg dDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVND QVBFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVF UyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisK K0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxOT19C QUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDi lJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNl dCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAo J3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExP Q0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJB TlNfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq 4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0 MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVT LE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJM RVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVg IHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMg KCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitE Uk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSV9RVU9URVMsQU5TSSI7 CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFy Y2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3Ro aXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1Ag VEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxBTlNJLFNUUklD VF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKU nMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8g dDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJP TSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVP VEVTLEFOU0ksU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKU nMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4 KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3Qn KTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNR TF9NT0RFPSJBTlNJX1FVT1RFUyxBTlNJLFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9U QUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzi lZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxV RVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOwor CitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iQU5TSV9RVU9URVMsQU5T SSxOT19CQUNLU0xBU0hfRVNDQVBFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pSc wrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lO U0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NF TEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RF PSJBTlNJX1FVT1RFUyxBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9BTExfVEFCTEVT IjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2 YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgn dGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKworRFJP UCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IkFOU0lfUVVPVEVTLEFOU0ksTk9f QkFDS1NMQVNIX0VTQ0FQRVMsU1RSSUNUX1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEg KGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVy IHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScp LCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VU IExPQ0FMIFNRTF9NT0RFPSJBTlNJX1FVT1RFUyxBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNU UklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg 4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBz ZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwg KCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBM T0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FUIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx 4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0 ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVz dCcpOworU0VMRUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwg U1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFC TEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hh cmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyks ICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisK KworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsU1RSSUNUX1RSQU5TX1RBQkxF UyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAg dmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAo J3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RS T1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsU1RS SUNUX1RSQU5TX1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDi lJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNl dCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAo J3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExP Q0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOworQ1JF QVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIo MzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyks KCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxF IHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FULE5PX0JBQ0tTTEFT SF9FU0NBUEVTLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pSc wr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0Zjgp OworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcp OworU0VMRUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FM X01PREU9IlBJUEVTX0FTX0NPTkNBVCxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNf VEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc 4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFM VUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsK KworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNB VCxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVTLFNUUklDVF9BTExfVEFC TEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWV YCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKwor RFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxB TlNJIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWV YCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKwor RFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxB TlNJLFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzC u+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5T RVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VM RUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9 IlBJUEVTX0FTX0NPTkNBVCxBTlNJLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxF IHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJh Y3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAo J2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisK K1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FULEFOU0ksU1RSSUNUX1RSQU5TX1RB QkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pSc wrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lO U0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NF TEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RF PSJQSVBFU19BU19DT05DQVQsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyI7CitDUkVBVEUgVEFC TEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hh cmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyks ICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisK KworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSSxOT19CQUNLU0xBU0hf RVNDQVBFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK9 4pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsK K0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsK K1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9N T0RFPSJQSVBFU19BU19DT05DQVQsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJB TlNfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq 4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0 MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NP TkNBVCxBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNU X0FMTF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pSc wqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0 MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9N IHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBTUUxfTU9ERT0iUElQRVNfQVNf Q09OQ0FULEFOU0lfUVVPVEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KU nOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJU IElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNU ICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJ UEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFC TEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hh cmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyks ICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisK KworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSV9RVU9URVMsU1RSSUNU X1RSQU5TX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTi lJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRP IHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZS T00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19B U19DT05DQVQsQU5TSV9RVU9URVMsU1RSSUNUX1RSQU5TX1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxF UyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAg dmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAo J3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RS T1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5T SV9RVU9URVMsTk9fQkFDS1NMQVNIX0VTQ0FQRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7Hi lJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRm OCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0 Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBMT0NBTCBT UUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FULEFOU0lfUVVPVEVTLE5PX0JBQ0tTTEFTSF9FU0NBUEVT LFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KU nOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJU IElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNU ICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJ UEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJB TlNfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq 4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEg VkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0 MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NP TkNBVCxBTlNJX1FVT1RFUyxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVT LFNUUklDVF9BTExfVEFCTEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KU nOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJU IElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNU ICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJ UEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxBTlNJIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx 4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0 ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVz dCcpOworU0VMRUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwg U1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RFUyxBTlNJLFNUUklDVF9BTExfVEFC TEVTIjsKK0NSRUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWV YCB2YXJjaGFyKDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgndGhpcycpLCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKwor RFJPUCBUQUJMRSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxB TlNJX1FVT1RFUyxBTlNJLFNUUklDVF9UUkFOU19UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg 4pScw7HilJzCveKUnMK74pSc4pSk4pScwqrilJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBz ZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwg KCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQxOworCitEUk9QIFRBQkxFIHQxOworCisKK1NFVCBM T0NBTCBTUUxfTU9ERT0iUElQRVNfQVNfQ09OQ0FULEFOU0lfUVVPVEVTLEFOU0ksU1RSSUNUX1RS QU5TX1RBQkxFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKU nMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4 KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3Qn KTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNR TF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSV9RVU9URVMsQU5TSSxOT19CQUNLU0xBU0hfRVND QVBFUyI7CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKV lWAgdmFyY2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVF UyAoJ3RoaXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisK K0RST1AgVEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQs QU5TSV9RVU9URVMsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfQUxMX1RBQkxFUyI7 CitDUkVBVEUgVEFCTEUgdDEgKGDilJzDseKUnMK94pScwrvilJzilKTilJzCquKUnOKVlWAgdmFy Y2hhcigzMCkgY2hhcmFjdGVyIHNldCB1dGY4KTsKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUyAoJ3Ro aXMnKSwoJ2lzJyksICgnYScpLCAoJ3Rlc3QnKTsKK1NFTEVDVCAqIEZST00gdDE7CisKK0RST1Ag VEFCTEUgdDE7CisKKworU0VUIExPQ0FMIFNRTF9NT0RFPSJQSVBFU19BU19DT05DQVQsQU5TSV9R VU9URVMsQU5TSSxOT19CQUNLU0xBU0hfRVNDQVBFUyxTVFJJQ1RfVFJBTlNfVEFCTEVTIjsKK0NS RUFURSBUQUJMRSB0MSAoYOKUnMOx4pScwr3ilJzCu+KUnOKUpOKUnMKq4pSc4pWVYCB2YXJjaGFy KDMwKSBjaGFyYWN0ZXIgc2V0IHV0ZjgpOworSU5TRVJUIElOVE8gdDEgVkFMVUVTICgndGhpcycp LCgnaXMnKSwgKCdhJyksICgndGVzdCcpOworU0VMRUNUICogRlJPTSB0MTsKKworRFJPUCBUQUJM RSB0MTsKKworCitTRVQgTE9DQUwgU1FMX01PREU9IlBJUEVTX0FTX0NPTkNBVCxBTlNJX1FVT1RF UyxBTlNJLE5PX0JBQ0tTTEFTSF9FU0NBUEVTLFNUUklDVF9UUkFOU19UQUJMRVMsU1RSSUNUX0FM TF9UQUJMRVMiOworQ1JFQVRFIFRBQkxFIHQxIChg4pScw7HilJzCveKUnMK74pSc4pSk4pScwqri lJzilZVgIHZhcmNoYXIoMzApIGNoYXJhY3RlciBzZXQgdXRmOCk7CitJTlNFUlQgSU5UTyB0MSBW QUxVRVMgKCd0aGlzJyksKCdpcycpLCAoJ2EnKSwgKCd0ZXN0Jyk7CitTRUxFQ1QgKiBGUk9NIHQx OworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tICMKKyMgLS0tIENoZWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSAjCisKK1NFTEVDVCBjb3VudCgqKSBGUk9NIHQxOworCisjIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKKyMgLS0tIEZpbmFsIGNs ZWFudXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0gIworIyAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCitEUk9QIFRBQkxF IHQxOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKCj09PSBhZGRlZCBmaWxlICdteXNxbC10 ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9pbmRleF9kYXRhdHlwZXMudGVzdCcKLS0tIGEvbXlz cWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25faW5kZXhfZGF0YXR5cGVzLnRlc3QJMTk3MC0w MS0wMSAwMDowMDowMCArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNv bl9pbmRleF9kYXRhdHlwZXMudGVzdAkyMDA4LTA5LTA0IDE4OjM4OjQ4ICswMDAwCkBAIC0wLDAg KzEsNDA3IEBACistLXNvdXJjZSBpbmNsdWRlL2hhdmVfZmFsY29uLmluYworCisjCisjIFRlc3Qg Zm9yIEFERC9EUk9QIElOREVYLgorIworIyBPTkxJTkUgQUREL0RST1AgaXMgcGFydCBvZiBXb3Jr bG9nIDQwNDgsIGFuZCBpcyBpbXBsaWNpdC4KKyMgSGVuY2UsIHRoaXMgdGVzdCB3aWxsIHRlc3Qg T05MSU5FIEFERC9EUk9QIElOREVYIGlmCisjIGl0IGlzIHN1cHBvcnRlZCBieSB0aGUgZW5naW5l LiBPdGhlcndpc2UsIE9GRkxJTkUgQUREL0RST1AKKyMgaXMgdXNlZC4gU2VlIGFsc28gZmFsY29u X29ubGluZV9pbmRleCB0ZXN0LgorIworIyBOb3RlOgorIyBCeSB1c2luZyAtLWVuYWJsZV9pbmZv IGNvbW1hbmQgd2UgY2FuIGNoZWNrIGlmIGRlZmF1bHQgCisjIEFMVEVSIFRBQkxFIC4uLiBBREQg SU5ERVggaXMgb25saW5lIG9yIG9mZmxpbmUuIAorIyBJZiBPTkxJTkUsIGFmZmVjdGVkIHJvd3Mg aXMgYWx3YXlzIDAuIAorIyBJZiBPRkZMSU5FLCBhbmQgdGhlIHRhYmxlIGlzIG5vbi1lbXB0eSwg YWZmZWN0ZWQgcm93cyBpcyA+IDAsIHNpbmNlIHRoZSAKKyMgQUxURVIgaW52b2x2ZWQgYSB0YWJs ZSBjb3B5LgorIworIyBUaGlzIHRlc3QgaXMgZm9jdXNpbmcgb24gYWRkaW5nL2Ryb3BwaW5nIGlu ZGV4ZXMgdG8vZnJvbSBjb2x1bW5zIG9mIHZhcmlvdXMKKyMgZGF0YSB0eXBlcy4KKworIyAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0t LSBJbml0aWFsaXNhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwor bGV0ICRlbmdpbmUgPSAnRmFsY29uJzsKK2V2YWwgU0VUIEBAc3RvcmFnZV9lbmdpbmUgPSAkZW5n aW5lOworCistLWRpc2FibGVfd2FybmluZ3MKK0RST1AgVEFCTEUgSUYgRVhJU1RTIHQxOworRFJP UCBUQUJMRSBJRiBFWElTVFMgdDI7CistLWVuYWJsZV93YXJuaW5ncworCisjIworIyMgU2hvdWxk IHRlc3QgYWRkaW5nL2Ryb3BwaW5nIGluZGV4IGZvciBhcyBtYW55IHN1cHBvcnRlZCBkYXRhdHlw ZXMgYXMgCisjIyBwb3NzaWJsZS4KKyMjCisjIyBGYWxjb24gZG9lcyBub3Qgc3VwcG9ydCBpbmRl eGVzIG9uIHRoZSB0eXBlcyBCTE9CLCBNRURJVU1CTE9CLCBMT05HQkxPQgorIyMgYW5kIFRFWFQu IEZhbGNvbiAoc3VwcG9zZWRseSkgc3VwcG9ydHMgVElOWUJMT0IgaW5kZXhlcyAoYmVjYXVzZSAK KyMjIFRJTllCTE9CIGlzIG1hcHBlZCB0byBWQVJDSEFSKSwgYnV0IHRoaXMgZGlzdGluY3Rpb24g aXMgbm90IHZpc2libGUgZnJvbQorIyMgdGhlIE15U1FMIHNlcnZlci4KKyMjCisjIyBCSVQgdHlw ZSBpcyBoYW5kbGVkIGRpZmZlcmVudGx5IHRoYW4gdGhlIHJlc3QsIGFzIGl0IHJlcXVpcmVzIHNw ZWNpYWwgCisjIyB0cmVhdG1lbnQgaW4gU0VMRUNUcyBmb3IgdGhlIG91dHB1dCB0byBiZSByZWFk YWJsZS4KKyMjIAorIyMgT21pdHRpbmcgc3lub255bSB0eXBlcy4gVXNpbmcgbW9zdGx5IGRlZmF1 bHQgc2V0dGluZ3MuCisjIworIyMgRGVmYXVsdCBDUkVBVEUgY2xhdXNlcyBmb3IgVElNRVNUQU1Q IGNvbHVtbnMgYXJlIAorIyMgIk5PVCBOVUxMIERFRkFVTFQgQ1VSUkVOVF9USU1FU1RBTVAgT04g VVBEQVRFIENVUlJFTlRfVElNRVNUQU1QIi4KKyMjIFRvIGF2b2lkIGhhdmluZyB0byBmaWx0ZXIg b3V0IGV2ZXItY2hhbmdpbmcgdGltZXN0YW1wcywgd2UgYXJlIHVzaW5nIAorIyMgIk5PVCBOVUxM IERFRkFVTFQgMCIgaW5zdGVhZC4KKyMjCisKKworQ1JFQVRFIFRBQkxFIHQxICgKKyAgICBhX2lu dCAgICAgICBJTlQgICAgICAgICAgICAgICAgIE5PVCBOVUxMIEFVVE9fSU5DUkVNRU5UIFBSSU1B UlkgS0VZLCAKKyAgICBhX3RpbnlpbnQgICBUSU5ZSU5ULAorICAgIGFfYmlnaW50ICAgIEJJR0lO VCwKKyAgICBhX2Zsb2F0ICAgICBGTE9BVCwKKyAgICBhX2RvdWJsZSAgICBET1VCTEUsCisgICAg YV9kZWNpbWFsICAgREVDSU1BTCgxMCwyKSwKKyAgICBhX2RhdGUgICAgICBEQVRFLAorICAgIGFf dGltZSAgICAgIFRJTUUsCisgICAgYV9kYXRldGltZSAgREFURVRJTUUsCisgICAgYV90aW1lc3Rh bXAgVElNRVNUQU1QICAgICAgICAgICBOT1QgTlVMTCBERUZBVUxUIDAsCisgICAgYV95ZWFyICAg ICAgWUVBUiwKKyAgICBhX2NoYXIgICAgICBDSEFSKDEwKSwKKyAgICBhX3ZhcmNoYXIgICBWQVJD SEFSKDI1NSksCisgICAgYV9iaW5hcnkgICAgQklOQVJZKDgpLAorICAgIGFfdmFyYmluYXJ5IFZB UkJJTkFSWSgyNTUpLAorICAgIGFfZW51bSAgICAgIEVOVU0oJ2VudW1WYWx1ZU9uZScsICdlbnVt VmFsdWVUd28nLCAnZW51bVZhbHVlVGhyZWUnKQorKTsKKworU0hPVyBDUkVBVEUgVEFCTEUgdDE7 CisKKyMjIEJJVHMgYXJlIHNwZWNpYWwgKGJpbmFyeSksIGhlbmNlIGEgc2VwYXJhdGUgdGFibGUg dDIgc28gdGhhdCB3ZSBjYW4gZG8KKyMjIHNpbXBsZSBTRUxFQ1QgKiBvbiB0MS4KKworQ1JFQVRF IFRBQkxFIHQyICgKKyAgICBhX2ludCAgICAgICBJTlQgTk9UIE5VTEwgQVVUT19JTkNSRU1FTlQg UFJJTUFSWSBLRVksCisgICAgYV9iaXQgICAgICAgQklUKDgpKTsKKworU0hPVyBDUkVBVEUgVEFC TEUgdDI7CisKKyMjIEluc2VydCBzb21lIGV4YW1wbGUgdmFsdWVzLiBTaG91bGQgaGF2ZSA1IG9y IG1vcmUgdmFsdWVzIHRvIHRlc3QgTElNSVQgCisjIyB3aXRoIGluZGV4ZXMuIFZhbHVlcyBtYXkg c3RhcnQgYXQgZWl0aGVyIG1heCBvciBtaW4sIGJ1dCBhcmUgYmFzaWNhbGx5IAorIyMgcmFuZG9t bHkgY2hvc2VuIChidXQgc29ydGFibGUgYnkgaHVtYW5zKS4KKworSU5TRVJUIElOVE8gdDEgKAor ICAgIGFfdGlueWludCwgYV9iaWdpbnQsIAorICAgIGFfZmxvYXQsIGFfZG91YmxlLCBhX2RlY2lt YWwsIGFfZGF0ZSwKKyAgICBhX3RpbWUsIGFfZGF0ZXRpbWUsIGFfdGltZXN0YW1wLCBhX3llYXIs CisgICAgYV9jaGFyLCBhX3ZhcmNoYXIsIGFfYmluYXJ5LCBhX3ZhcmJpbmFyeSwKKyAgICBhX2Vu dW0pIAorICAgIFZBTFVFUyAKKyAgICAoCisgICAgMTI3LCA5MjIzMzcyMDM2ODU0Nzc1ODA3LAor ICAgIDk5OS45OSwgOTk5LjEyMzQ1Njc4OSwgMTExLjk5LCAnMjAwOC0wNy0wOScsIAorICAgICcx MTozMDowMCcsICcyMDA4LTA3LTA5IDExOjMwOjAwJywgJzIwMDgtMDctMDkgMTE6MzA6MDAnLCAn MjAwOCcsCisgICAgJ2FUZXN0Q2hhcicsICdhVGVzdFZhckNoYXInLCAnYVRlc3RCaW4nLCAnYVRl c3RWYXJCaW5hcnknLCAKKyAgICAnZW51bVZhbHVlT25lJworICAgICksCisgICAgKAorICAgIDEy NiwgOTIyMzM3MjAzNjg1NDc3NTgwNiwKKyAgICA5OTguODgsIDk5OS4yMzQ1Njc4OTEsIDExMi4w MCwgJzIwMDgtMDctMTAnLCAKKyAgICAnMTI6MzA6MTAnLCAnMjAwOC0wNy0xMCAxMjozMDoxMCcs ICcyMDA4LTA3LTEwIDEyOjMwOjEwJywgJzIwMDknLAorICAgICdiVGVzdENoYXInLCAnYlRlc3RW YXJDaGFyJywgJ2JUZXN0QmluJywgJ2JUZXN0VmFyQmluYXJ5JywgCisgICAgJ2VudW1WYWx1ZVR3 bycKKyAgICApLAorICAgICgKKyAgICAxMjUsIDkyMjMzNzIwMzY4NTQ3NzU4MDUsCisgICAgOTk3 Ljc3LCA5OTkuMzQ1Njc4OTEyLCAxMTIuMDEsICcyMDA4LTA3LTExJywgCisgICAgJzEzOjMwOjIw JywgJzIwMDgtMDctMTEgMTM6MzA6MjAnLCAnMjAwOC0wNy0xMSAxMzozMDoyMCcsICcyMDEwJywK KyAgICAnY1Rlc3RDaGFyJywgJ2NUZXN0VmFyQ2hhcicsICdjVGVzdEJpbicsICdjVGVzdFZhckJp bmFyeScsIAorICAgICdlbnVtVmFsdWVUaHJlZScKKyAgICApLAorICAgICgKKyAgICAxMjQsIDky MjMzNzIwMzY4NTQ3NzU4MDQsCisgICAgOTk2LjY2LCA5OTkuNDU2Nzg5MTIzLCAxMTIuMDIsICcy MDA4LTA3LTEyJywgCisgICAgJzE0OjMwOjMwJywgJzIwMDgtMDctMTIgMTQ6MzA6MzAnLCAnMjAw OC0wNy0xMiAxNDozMDozMCcsICcyMDExJywKKyAgICAnZFRlc3RDaGFyJywgJ2RUZXN0VmFyQ2hh cicsICdkVGVzdEJpbicsICdkVGVzdFZhckJpbmFyeScsIAorICAgICdlbnVtVmFsdWVPbmUnCisg ICAgKSwKKyAgICAoCisgICAgMTIzLCA5MjIzMzcyMDM2ODU0Nzc1ODAzLAorICAgIDk5NS41NSwg OTk5LjU2Nzg5MTIzNCwgMTEyLjAzLCAnMjAwOC0wNy0xMycsIAorICAgICcxNTozMDo0MCcsICcy MDA4LTA3LTEzIDE1OjMwOjQwJywgJzIwMDgtMDctMTMgMTU6MzA6NDAnLCAnMjAxMicsCisgICAg J2VUZXN0Q2hhcicsICdlVGVzdFZhckNoYXInLCAnZVRlc3RCaW4nLCAnZVRlc3RWYXJCaW5hcnkn LCAKKyAgICAnZW51bVZhbHVlVHdvJworICAgICk7CisKK0lOU0VSVCBJTlRPIHQyIChhX2JpdCkg VkFMVUVTIChiJzAnKSwgKGInMScpLCAoYicxMCcpLCAoYicxMScpLCAoYicxMDAnKTsKKworIyAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisj IC0tLSBUZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMK KyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g IworCitTRUxFQ1QgKiBGUk9NIHQxOworU0VMRUNUIGFfaW50LCBCSU4oYV9iaXQrMCkgRlJPTSB0 MjsKKworIyMgVXNpbmcgdGhlIGZvbGxvd2luZyBwcm9jZWR1cmUgZm9yIGVhY2ggbm9uLWluZGV4 ZWQgZGF0YSB0eXBlL2NvbHVtbjoKKyMjICAxLiBBZGQgSU5ERVggZm9yIHRoZSBzcGVjaWZpYyBj b2x1bW4KKyMjICAyLiBDaGVjayBpbmRleCBtZXRhZGF0YSAoRmFsY29uIGFuZCBzZXJ2ZXIgYW5k IHVzZXIgbXVzdCBhZ3JlZSkKKyMjICAzLiBJbnNlcnQgbmV3IHZhbHVlIGluIGluZGV4ZWQgY29s dW1uCisjIyAgNC4gVXBkYXRlIGEgdmFsdWUgaW4gaW5kZXhlZCBjb2x1bW4KKyMjICA0LiBDaGVj ayB0aGF0IGFsbCB2YWx1ZXMgYXJlIHN0aWxsIHRoZXJlCisjIyAgNS4gVXNlIGEgTElNSVQgcXVl cnkgdG8gZXhjZXJjaXNlIGFsdGVybmF0aXZlIGluZGV4IGltcGxlbWVudGF0aW9uCisjIyAgNi4g QWRkIGFkZGl0aW9uYWwgaW5kZXggb24gdGhlIHNhbWUgY29sdW1uCisjIyAgNy4gRHJvcCBuZXds eSBhZGRlZCBJTkRFWCBmb3IgdGhlIHNwZWNpZmllZCBjb2x1bW4KKyMjICA4LiBDaGVjayBpbmRl eCBtZXRhZGF0YSAoRmFsY29uIGFuZCBzZXJ2ZXIgYW5kIHVzZXIgbXVzdCBhZ3JlZSkKKyMjICA5 LiBDaGVjayB0aGF0IHRoZSB2YWx1ZXMgYXJlIHN0aWxsIHRoZXJlCisKKy0tZWNobyAjLS0tLS0t LS0gVGVzdDogQklUIC0tLS0tLS0tIworCisjIyBCSVQgY29sdW1uLCB0MjoKK0FMVEVSIFRBQkxF IHQyIEFERCBJTkRFWCBpbmRleF9iaXQgKGFfYml0KTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOwor SU5TRVJUIElOVE8gdDIgU0VUIGFfYml0ID0gYicxMTExMSc7CitVUERBVEUgdDIgU0VUIGFfYml0 ID0gYicxMDEwMTAnIHdoZXJlIGFfaW50ID4gYicxMDEnOworU0VMRUNUIGFfaW50LCBCSU4oYV9i aXQrMCkgRlJPTSB0MjsKK1NFTEVDVCBhX2ludCwgQklOKGFfYml0KzApIEZST00gdDIgV0hFUkUg YV9iaXQgPiBiJzEnIExJTUlUIDE7CitBTFRFUiBUQUJMRSB0MiBEUk9QIElOREVYIGluZGV4X2Jp dDsKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworU0VMRUNUIGFfaW50LCBCSU4oYV9iaXQrMCkgRlJP TSB0MjsKKworLS1lY2hvICMtLS0tLS0tLSBUZXN0OiBUSU5ZSU5UIC0tLS0tLS0tIworCitBTFRF UiBUQUJMRSB0MSBBREQgSU5ERVggaW5kZXhfdGlueWludCAoYV90aW55aW50KTsKK1NIT1cgSU5E RVhFUyBGUk9NIHQxOworSU5TRVJUIElOVE8gdDEgU0VUIGFfdGlueWludCA9IDk5OworVVBEQVRF IHQxIFNFVCBhX3RpbnlpbnQgPSA4OCB3aGVyZSBhX3RpbnlpbnQgPSA5OTsKK1NFTEVDVCAqIEZS T00gdDEgT1JERVIgQlkgYV90aW55aW50OworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX3Rpbnlp bnQgPiAxIExJTUlUIDE7CitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X3RpbnlpbnQ7 CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0t LS0tLS0gVGVzdDogQklHSU5UIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVgg aW5kZXhfYmlnaW50IChhX2JpZ2ludCk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK0lOU0VSVCBJ TlRPIHQxIFNFVCBhX2JpZ2ludCA9IDkyMjMzNzIwMzY4NTQ3NzU4MDQ7CitVUERBVEUgdDEgU0VU IGFfYmlnaW50ID0gOTExMTExMTExMTExMTExMTExIHdoZXJlIGFfYmlnaW50ID0gOTIyMzM3MjAz Njg1NDc3NTgwNDsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIgQlkgYV9iaWdpbnQ7CitTRUxFQ1Qg KiBGUk9NIHQxIFdIRVJFIGFfYmlnaW50ID4gMSBMSU1JVCAxOworQUxURVIgVEFCTEUgdDEgRFJP UCBJTkRFWCBpbmRleF9iaWdpbnQ7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZS T00gdDE7CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDogRkxPQVQgLS0tLS0tLS0jCisKK0FMVEVS IFRBQkxFIHQxIEFERCBJTkRFWCBpbmRleF9mbG9hdCAoYV9mbG9hdCk7CitTSE9XIElOREVYRVMg RlJPTSB0MTsKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX2Zsb2F0ID0gOTk0LjQ0OworVVBEQVRFIHQx IFNFVCBhX2Zsb2F0ID0gOTkzLjMzIHdoZXJlIGFfZmxvYXQgPiA5OTQgQU5EIGFfZmxvYXQgPCA5 OTQuNTsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIgQlkgYV9mbG9hdDsKK1NFTEVDVCAqIEZST00g dDEgV0hFUkUgYV9mbG9hdCA+IDEgTElNSVQgMTsKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVgg aW5kZXhfZmxvYXQ7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisK Ky0tZWNobyAjLS0tLS0tLS0gVGVzdDogRE9VQkxFIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0 MSBBREQgSU5ERVggaW5kZXhfZG91YmxlIChhX2RvdWJsZSk7CitTSE9XIElOREVYRVMgRlJPTSB0 MTsKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX2RvdWJsZSA9IDk5OS42Nzg5MTIzNDU7CitVUERBVEUg dDEgU0VUIGFfZG91YmxlID0gOTk5Ljk5ODg3NzY2NSB3aGVyZSBhX2RvdWJsZSA9IDk5OS42Nzg5 MTIzNDU7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfZG91YmxlOworU0VMRUNUICogRlJP TSB0MSBXSEVSRSBhX2RvdWJsZSA+IDEgTElNSVQgMTsKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5E RVggaW5kZXhfZG91YmxlOworU0hPVyBJTkRFWEVTIEZST00gdDE7CitTRUxFQ1QgKiBGUk9NIHQx OworCistLWVjaG8gIy0tLS0tLS0tIFRlc3Q6IERFQ0lNQUwgLS0tLS0tLS0jCisKK0FMVEVSIFRB QkxFIHQxIEFERCBJTkRFWCBpbmRleF9kZWNpbWFsIChhX2RlY2ltYWwpOworU0hPVyBJTkRFWEVT IEZST00gdDE7CitJTlNFUlQgSU5UTyB0MSBTRVQgYV9kZWNpbWFsID0gMTEyLjA0OworVVBEQVRF IHQxIFNFVCBhX2RlY2ltYWwgPSAxMTIuMDUgd2hlcmUgYV9kZWNpbWFsID0gMTEyLjA0OworU0VM RUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2RlY2ltYWw7CitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJF IGFfZGVjaW1hbCA+IDEgTElNSVQgMTsKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhf ZGVjaW1hbDsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworU0VMRUNUICogRlJPTSB0MTsKKworLS1l Y2hvICMtLS0tLS0tLSBUZXN0OiBEQVRFIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0MSBBREQg SU5ERVggaW5kZXhfZGF0ZSAoYV9kYXRlKTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworSU5TRVJU IElOVE8gdDEgU0VUIGFfZGF0ZSA9ICcyMDA4LTA3LTE0JzsKK1VQREFURSB0MSBTRVQgYV9kYXRl ID0gJzIwMDgtMDgtMTQnIHdoZXJlIGFfZGF0ZSA9ICcyMDA4LTA3LTE0JzsKK1NFTEVDVCAqIEZS T00gdDEgT1JERVIgQlkgYV9kYXRlOworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX2RhdGUgPiAn MjAwOC0wMS0wMScgTElNSVQgMTsKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfZGF0 ZTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworU0VMRUNUICogRlJPTSB0MTsKKworLS1lY2hvICMt LS0tLS0tLSBUZXN0OiBUSU1FIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVgg aW5kZXhfdGltZSAoYV90aW1lKTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworSU5TRVJUIElOVE8g dDEgU0VUIGFfdGltZSA9ICcxNjozMDo1MCc7CitVUERBVEUgdDEgU0VUIGFfdGltZSA9ICcxNzoz MTowMCcgd2hlcmUgYV90aW1lID0gJzE2OjMwOjUwJzsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIg QlkgYV90aW1lOworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX3RpbWUgPiAnMTE6MDA6MDAnIExJ TUlUIDE7CitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X3RpbWU7CitTSE9XIElOREVY RVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDog REFURVRJTUUgLS0tLS0tLS0jCisKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRFWCBpbmRleF9kYXRl dGltZSAoYV9kYXRldGltZSk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK0lOU0VSVCBJTlRPIHQx IFNFVCBhX2RhdGV0aW1lID0gJzIwMDgtMDctMTQgMTY6MzA6NTAnOworVVBEQVRFIHQxIFNFVCBh X2RhdGV0aW1lID0gJzIwMDgtMDgtMTQgMTc6MzE6MDAnIHdoZXJlIGFfZGF0ZXRpbWUgPSAnMjAw OC0wNy0xNCAxNjozMDo1MCc7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfZGF0ZXRpbWU7 CitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGFfZGF0ZXRpbWUgPiAnMjAwOC0wNy0xMCAwMDowMDow MCcgTElNSVQgMTsKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfZGF0ZXRpbWU7CitT SE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0tLS0t LS0gVGVzdDogVElNRVNUQU1QIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVgg aW5kZXhfdGltZXN0YW1wIChhX3RpbWVzdGFtcCk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK0lO U0VSVCBJTlRPIHQxIFNFVCBhX3RpbWVzdGFtcCA9ICcyMDA4LTA3LTE0IDE2OjMwOjUwJzsKK1VQ REFURSB0MSBTRVQgYV90aW1lc3RhbXAgPSAnMjAwOC0wOC0xNCAxOToyMDoyMScgd2hlcmUgYV90 aW1lc3RhbXAgPSAnMjAwOC0wNy0xNCAxNjozMDo1MCc7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVS IEJZIGFfdGltZXN0YW1wOworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX3RpbWVzdGFtcCA+ICcy MDA4LTA3LTEwIDAwOjAwOjAwJyBMSU1JVCAxOworQUxURVIgVEFCTEUgdDEgRFJPUCBJTkRFWCBp bmRleF90aW1lc3RhbXA7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7 CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDogWUVBUiAtLS0tLS0tLSMKKworQUxURVIgVEFCTEUg dDEgQUREIElOREVYIGluZGV4X3llYXIgKGFfeWVhcik7CitTSE9XIElOREVYRVMgRlJPTSB0MTsK K0lOU0VSVCBJTlRPIHQxIFNFVCBhX3llYXIgPSAnMjAxMyc7CitVUERBVEUgdDEgU0VUIGFfeWVh ciA9ICcyMDIwJyB3aGVyZSBhX3llYXIgTElLRSAnMjAxMyc7CitTRUxFQ1QgKiBGUk9NIHQxIE9S REVSIEJZIGFfeWVhcjsKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYV95ZWFyID4gJzE5OTknIExJ TUlUIDE7CitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X3llYXI7CitTSE9XIElOREVY RVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDog Q0hBUiAtLS0tLS0tLSMKKworQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X2NoYXIgKGFf Y2hhcik7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX2NoYXIg PSAnZlRlc3RDaGFyJzsKK1VQREFURSB0MSBTRVQgYV9jaGFyID0gJ2dUZXN0Q2hhcicgd2hlcmUg YV9jaGFyID0gJ2ZUZXN0Q2hhcic7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfY2hhcjsK K1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYV9jaGFyID4gJ2FmYWxjb24nIExJTUlUIDE7CitBTFRF UiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X2NoYXI7CitTSE9XIElOREVYRVMgRlJPTSB0MTsK K1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDogVkFSQ0hBUiAtLS0t LS0tLSMKKworQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X3ZhcmNoYXIgKGFfdmFyY2hh cik7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX3ZhcmNoYXIg PSAnZlRlc3RWYXJDaGFyJzsKK1VQREFURSB0MSBTRVQgYV92YXJjaGFyID0gJ2dUZXN0VmFyQ2hh cicgd2hlcmUgYV92YXJjaGFyID0gJ2ZUZXN0VmFyQ2hhcic7CitTRUxFQ1QgKiBGUk9NIHQxIE9S REVSIEJZIGFfdmFyY2hhcjsKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYV92YXJjaGFyID4gJ2Fm YWxjb24nIExJTUlUIDE7CitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X3ZhcmNoYXI7 CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0t LS0tLS0gVGVzdDogQklOQVJZIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVgg aW5kZXhfYmluYXJ5IChhX2JpbmFyeSk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK0lOU0VSVCBJ TlRPIHQxIFNFVCBhX2JpbmFyeSA9ICdmVGVzdEJpbic7CitVUERBVEUgdDEgU0VUIGFfYmluYXJ5 ID0gJ2dUZXN0QmluJyB3aGVyZSBhX2JpbmFyeSA9ICdmVGVzdEJpbic7CitTRUxFQ1QgKiBGUk9N IHQxIE9SREVSIEJZIGFfYmluYXJ5OworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX2JpbmFyeSA+ ICdhZmFsY29uJyBMSU1JVCAxOworQUxURVIgVEFCTEUgdDEgRFJPUCBJTkRFWCBpbmRleF9iaW5h cnk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAj LS0tLS0tLS0gVGVzdDogVkFSQklOQVJZIC0tLS0tLS0tIworCitBTFRFUiBUQUJMRSB0MSBBREQg SU5ERVggaW5kZXhfdmFyYmluYXJ5IChhX3ZhcmJpbmFyeSk7CitTSE9XIElOREVYRVMgRlJPTSB0 MTsKK0lOU0VSVCBJTlRPIHQxIFNFVCBhX3ZhcmJpbmFyeSA9ICdmVGVzdFZhckJpbmFyeSc7CitV UERBVEUgdDEgU0VUIGFfdmFyYmluYXJ5ID0gJ2dUZXN0VmFyQmluYXJ5JyB3aGVyZSBhX3ZhcmJp bmFyeSA9ICdmVGVzdFZhckJpbmFyeSc7CitTRUxFQ1QgKiBGUk9NIHQxIE9SREVSIEJZIGFfdmFy YmluYXJ5OworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhX3ZhcmJpbmFyeSA+ICdhZmFsY29uJyBM SU1JVCAxOworQUxURVIgVEFCTEUgdDEgRFJPUCBJTkRFWCBpbmRleF92YXJiaW5hcnk7CitTSE9X IElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0tLS0tLS0g VGVzdDogRU5VTSAtLS0tLS0tLSMKKworQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X2Vu dW0gKGFfYmluYXJ5KTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworSU5TRVJUIElOVE8gdDEgU0VU IGFfZW51bSA9ICdlbnVtVmFsdWVUaHJlZSc7CitVUERBVEUgdDEgU0VUIGFfZW51bSA9ICdlbnVt VmFsdWVPbmUnIHdoZXJlIGFfZW51bSA9ICdlbnVtVmFsdWVUaHJlZSc7CitTRUxFQ1QgKiBGUk9N IHQxIE9SREVSIEJZIGFfZW51bTsKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYV9lbnVtID4gJ2Fm YWxjb24nIExJTUlUIDE7CitBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X2VudW07CitT SE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDE7CisKKy0tZWNobyAjLS0tLS0t LS0gVGVzdDogQWx0ZXJuYXRpdmUgQ1JFQVRFIElOREVYIC0tLS0tLS0tIworCisjIyBUcnkgYWRk aW5nIGFsbCBpbmRleGVzIG9uY2UgYWdhaW4gdXNpbmcgYWx0ZXJuYXRpdmUgc3ludGF4IChDUkVB VEUuLi4pCitDUkVBVEUgSU5ERVggaW5kZXhfaW50IG9uIHQxIChhX2ludCk7CitDUkVBVEUgSU5E RVggaW5kZXhfYml0IG9uIHQyIChhX2JpdCk7CitDUkVBVEUgSU5ERVggaW5kZXhfdGlueWludCBv biB0MSAoYV90aW55aW50KTsKK0NSRUFURSBJTkRFWCBpbmRleF9iaWdpbnQgb24gdDEgKGFfYmln aW50KTsKK0NSRUFURSBJTkRFWCBpbmRleF9mbG9hdCBvbiB0MSAoYV9mbG9hdCk7CitDUkVBVEUg SU5ERVggaW5kZXhfZG91YmxlIG9uIHQxIChhX2RvdWJsZSk7CitDUkVBVEUgSU5ERVggaW5kZXhf ZGVjaW1hbCBvbiB0MSAoYV9kZWNpbWFsKTsKK0NSRUFURSBJTkRFWCBpbmRleF9kYXRlIG9uIHQx IChhX2RhdGUpOworQ1JFQVRFIElOREVYIGluZGV4X2RhdGV0aW1lIG9uIHQxIChhX2RhdGV0aW1l KTsKK0NSRUFURSBJTkRFWCBpbmRleF90aW1lc3RhbXAgb24gdDEgKGFfdGltZXN0YW1wKTsKK0NS RUFURSBJTkRFWCBpbmRleF95ZWFyIG9uIHQxIChhX3llYXIpOworQ1JFQVRFIElOREVYIGluZGV4 X2NoYXIgb24gdDEgKGFfY2hhcik7CitDUkVBVEUgSU5ERVggaW5kZXhfdmFyY2hhciBvbiB0MSAo YV92YXJjaGFyKTsKK0NSRUFURSBJTkRFWCBpbmRleF9iaW5hcnkgb24gdDEgKGFfYmluYXJ5KTsK K0NSRUFURSBJTkRFWCBpbmRleF92YXJiaW5hcnkgb24gdDEgKGFfdmFyYmluYXJ5KTsKK0NSRUFU RSBJTkRFWCBpbmRleF9lbnVtIG9uIHQxIChhX2VudW0pOworCisKK1NIT1cgSU5ERVhFUyBGUk9N IHQxOworU0VMRUNUICogRlJPTSB0MSBPUkRFUiBCWSBhX2ludDsKKworU0hPVyBJTkRFWEVTIEZS T00gdDI7CitTRUxFQ1QgYV9pbnQsIEJJTihhX2JpdCswKSBGUk9NIHQyIE9SREVSIEJZIGFfaW50 OworCisjIyBUcnkgZHJvcHBpbmcgYWxsIGluZGV4ZXMgdXNpbmcgYWx0ZXJuYXRpdmUgc3ludGF4 CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDogQWx0ZXJuYXRpdmUgRFJPUCBJTkRFWCAtLS0tLS0t LSMKKworRFJPUCBJTkRFWCBpbmRleF9pbnQgb24gdDE7CitEUk9QIElOREVYIGluZGV4X2JpdCBv biB0MjsKK0RST1AgSU5ERVggaW5kZXhfdGlueWludCBvbiB0MTsKK0RST1AgSU5ERVggaW5kZXhf YmlnaW50IG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF9mbG9hdCBvbiB0MTsKK0RST1AgSU5ERVgg aW5kZXhfZG91YmxlIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF9kZWNpbWFsIG9uIHQxOworRFJP UCBJTkRFWCBpbmRleF9kYXRlIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF9kYXRldGltZSBvbiB0 MTsKK0RST1AgSU5ERVggaW5kZXhfdGltZXN0YW1wIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF95 ZWFyIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF9jaGFyIG9uIHQxOworRFJPUCBJTkRFWCBpbmRl eF92YXJjaGFyIG9uIHQxOworRFJPUCBJTkRFWCBpbmRleF9iaW5hcnkgb24gdDE7CitEUk9QIElO REVYIGluZGV4X3ZhcmJpbmFyeSBvbiB0MTsKK0RST1AgSU5ERVggaW5kZXhfZW51bSBvbiB0MTsK KworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tICMKKyMgLS0tIENoZWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSAjCitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NFTEVDVCAqIEZST00gdDEgT1JERVIg QlkgYV9pbnQ7CisKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworU0VMRUNUIGFfaW50LCBCSU4oYV9i aXQrMCkgRlJPTSB0MiBPUkRFUiBCWSBhX2ludDsKKworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKKyMgLS0tIEZpbmFsIGNsZWFudXAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCitEUk9QIFRBQkxFIHQxOwor RFJPUCBUQUJMRSB0MjsKCj09PSBhZGRlZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90 L2ZhbGNvbl9vbmxpbmVfaW5kZXgudGVzdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24v dC9mYWxjb25fb25saW5lX2luZGV4LnRlc3QJMTk3MC0wMS0wMSAwMDowMDowMCArMDAwMAorKysg Yi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbi90L2ZhbGNvbl9vbmxpbmVfaW5kZXgudGVzdAkyMDA4 LTA5LTEwIDE1OjA4OjU2ICswMDAwCkBAIC0wLDAgKzEsMzYwIEBACistLXNvdXJjZSBpbmNsdWRl L2hhdmVfZmFsY29uLmluYworCisjCisjIFRlc3QgZm9yIE9OTElORSBBREQvRFJPUCBJTkRFWC4K KyMgU2VlIGFsc286IGZhbGNvbl9pbmRleF9kYXRhdHlwZXMKKyMKKyMgT05MSU5FIEFERC9EUk9Q IHdhcyBhZGRlZCB0byBGYWxjb24gYXMgcGFydCBvZgorIyBXb3JrbG9nIDQwNDggLSAiRmFsY29u OiBPbi1saW5lIGFkZCBhdHRyaWJ1dGUsIEZhbGNvbiBoYW5kbGVyIHBhcnQiCisjIGFuZCBpcyBp bXBsaWNpdCBmb3IgdGhvc2Ugc3RhdGVtZW50cyB3aGVyZSBPTkxJTkUgZnVuY3Rpb25hbGl0eSBp cyBzdXBwb3J0ZWQgCisjIGJ5IHRoZSBzdG9yYWdlIGVuZ2luZSAoYW5kIHRoZSBzZXJ2ZXIpLgor IyAKKyMgVGhpcyB0ZXN0IGlzIHRlc3RpbmcgdGhhdDoKKyMKKyMgICAgYSkgT05MSU5FIGlzIHVz ZWQgZm9yIHNvbWUgc2VsZWN0ZWQgQUxURVIgVEFCTEUgLi4uIEFERCBJTkRFWCBzdGF0ZW1lbnRz CisjICAgICAgIHdoZXJlIG5laXRoZXIgT05MSU5FIG5vciBPRkZMSU5FIGlzIHNwZWNpZmllZC4K KyMgICAgYikgQWx0ZXJuYXRpdmUgc3ludGF4IHdvcmtzIHdpdGggdGhlIE9OTElORSBrZXl3b3Jk LCBmb3IgZXhhbXBsZQorIyAgICAgICBDUkVBVEUgT05MSU5FIElOREVYCisjICAgICAgIEFMVEVS IE9OTElORSBUQUJMRSAuLi4gQUREIEtFWQorIyAgICBjKSBPTkxJTkUgQUREL0RST1AgSU5ERVgg d29ya3Mgd2hlcmUgZXhwZWN0ZWQuCisjICAgIGQpIFN0YXRlbWVudHMgdXNpbmcgT05MSU5FIGtl eXdvcmQgYXJlIHJlamVjdGVkIGlmIHRoZSBzdG9yYWdlIGVuZ2luZSBkb2VzCisjICAgICAgIG5v dCBzdXBwb3J0IGRvaW5nIHRoaXMgb25saW5lLgorIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBJbml0aWFsaXNhdGlvbiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworbGV0ICRlbmdpbmUgPSAnRmFs Y29uJzsKK2V2YWwgU0VUIEBAc3RvcmFnZV9lbmdpbmUgPSAkZW5naW5lOworCistLWRpc2FibGVf d2FybmluZ3MKK0RST1AgVEFCTEUgSUYgRVhJU1RTIHQxOworRFJPUCBUQUJMRSBJRiBFWElTVFMg dDI7CitEUk9QIFRBQkxFIElGIEVYSVNUUyB0MzsKKy0tZW5hYmxlX3dhcm5pbmdzCisKK0NSRUFU RSBUQUJMRSB0MSAoCisgICAgYSBpbnQgUFJJTUFSWSBLRVksIAorICAgIGIgVkFSQ0hBUigyNTUp LCAKKyAgICBjIGludCwKKyAgICBkIENIQVIoMTApCispOworCisjIFBvcHVsYXRlIHQxLCAyMCBy b3dzCitsZXQgJGk9MjA7CitsZXQgJHI9MDsKK3doaWxlICgkaSA8IDIwKQoreworICBldmFsIElO U0VSVCBJTlRPIHQxIFZBTFVFUyAoJHIsICdUZXN0Um93JHInLCAkcioyLCAnQ2hhciRyJyk7Cisg IGRlYyAkaTsKKyAgaW5jICRyOworfQorCitDUkVBVEUgVEFCTEUgdDIgKAorICAgIGEgaW50IFBS SU1BUlkgS0VZLCAKKyAgICBiIGludCwKKyAgICBjIGludCwKKyAgICBkIFZBUkNIQVIoNjUpCisp OworCisjIFBvcHVsYXRlIHQyLCAzMyByb3dzCisjIERpc2FibGUgcXVlcnkgbG9nIGZvciBwb3B1 bGF0aW5nIHQyIGluIG9yZGVyIHRvIGF2b2lkIGxhcmdlIHRlc3QgcmVzdWx0IGZpbGUuCistLWRp c2FibGVfcXVlcnlfbG9nCitsZXQgJGk9MzM7CitsZXQgJHI9MDsKKy0tZWNobyAjLS0tLS0tLS0g SW5zZXJ0aW5nICRpIHJvd3MgaW50byB0MiAocXVlcnkgbG9nIGRpc2FibGVkKSAtLS0tLS0tLSMK K3doaWxlICgkaSkKK3sKKyAgZXZhbCBJTlNFUlQgSU5UTyB0MiBWQUxVRVMgKCRyLCAkcioyLCAk cisxLCAnU29tZVN0cmluZyAkciBmb3IgdGVzdGluZycpOworICBkZWMgJGk7CisgIGluYyAkcjsK K30KKy0tZW5hYmxlX3F1ZXJ5X2xvZworCisjIE5lZWQgdGhpcyB0byB0ZXN0IHdpdGggZGVmYXVs dCB2YWx1ZXMsIG51bGxhYmxlLCBub24tbnVsbGFibGUgY29sdW1ucy4uLgorQ1JFQVRFIFRBQkxF IHQzICgKKyAgICBhIGludCBQUklNQVJZIEtFWSBBVVRPX0lOQ1JFTUVOVCwgCisgICAgYiBpbnQg REVGQVVMVCA5OTk5LAorICAgIGMgaW50IERFRkFVTFQgODg4OCBOT1QgTlVMTCwKKyAgICBkIGlu dCBOT1QgTlVMTCwKKyAgICBlIFZBUkNIQVIoNjUpCispOworCisjIFBvcHVsYXRlIHQzLCAxMDAw IHJvd3MuIERpc2FibGUgcXVlcnkgbG9nIGZvciB0aGlzIG9wZXJhdGlvbiBpbiBvcmRlciB0byBh dm9pZAorIyBodWdlIHRlc3QgcmVzdWx0IGZpbGUuCistLWRpc2FibGVfcXVlcnlfbG9nCisKK2xl dCAkaT0xMDAwOworbGV0ICRyPTA7CistLWVjaG8gIy0tLS0tLS0tIEluc2VydGluZyAkaSByb3dz IGludG8gdDMuLi4gKHF1ZXJ5IGxvZyBkaXNhYmxlZCkgLS0tLS0tLS0jCit3aGlsZSAoJGkpCit7 CisgIGV2YWwgSU5TRVJUIElOVE8gdDMgKGIsIGMsIGQsIGUpIFZBTFVFUyAoJHIqMiwgJHIrMSwg JHItMSwgJ1NvbWVWYXJjaGFyICRyIGZvciB0ZXN0aW5nJyk7CisgIGRlYyAkaTsKKyAgaW5jICRy OworfQorLS1lbmFibGVfcXVlcnlfbG9nCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyAtLS0gVGVzdCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAjCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKKworIyBEbyBpbXBsaWNpdCBvbmxpbmUg Y2hlY2tpbmcgYnkgdmVyaWZ5aW5nIHRoZSBudW1iZXIgb2YgYWZmZWN0ZWQgcm93cyBmcm9tCisj IEFMVEVSIHN0YXRlbWVudCAoMCBpZiBvbmxpbmUsID4gMCBpZiBvZmZsaW5lKSwgaGVuY2UgLS1l bmFibGVfaW5mby4KKy0tZW5hYmxlX2luZm8KKworLS1lY2hvICMtLS0tLS0tLSBUZXN0aW5nIGlt cGxpY2l0IE9OTElORSAtLS0tLS0tLSMKKworIyBUZXN0IHRoYXQgQUxURVIgVEFCTEUgQUREIElO REVYIGlzIG9ubGluZSBmb3IgbnVsbGFibGUgY29sdW1uCitBTFRFUiBUQUJMRSB0MSBBREQgSU5E RVggaXhfYiAoYik7CitEUk9QIElOREVYIGl4X2IgT04gdDE7CisKKyMgVGVzdCB0aGF0IENSRUFU RSBJTkRFWCBpcyBvbmxpbmUgZm9yIG51bGxhYmxlIGNvbHVtbgorQ1JFQVRFIElOREVYIGl4X2Mg T04gdDEgKGMpOworRFJPUCBJTkRFWCBpeF9jIE9OIHQxOworCisjIFRlc3QgdGhhdCBBTFRFUiBU QUJMRSBBREQgSU5ERVggaXMgb25saW5lIGZvciBudWxsYWJsZSBjb2x1bW4gaGF2aW5nIGRlZmF1 bHQgdmFsdWUKK0FMVEVSIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9iIChiKTsKK1NFTEVDVCAqIGZy b20gdDMgd2hlcmUgYiA+IDU1NSBPUkRFUiBCWSBhIExJTUlUIDU7CitEUk9QIElOREVYIGl4X2Ig T04gdDM7CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdGluZyBpbXBsaWNpdCBPRkZMSU5FIC0tLS0t LS0tIworCisjIFRlc3QgdGhhdCBBTFRFUiBUQUJMRSBBREQgSU5ERVggaXMgb2ZmbGluZSBmb3Ig bm9uLW51bGxhYmxlIGNvbHVtbiBoYXZpbmcgZGVmYXVsdCB2YWx1ZQorQUxURVIgVEFCTEUgdDMg QUREIElOREVYIGl4X2MgKGMpOworRFJPUCBJTkRFWCBpeF9jIE9OIHQzOworCisjIFRlc3QgdGhh dCBBTFRFUiBUQUJMRSBBREQgSU5ERVggaXMgb2ZmbGluZSBmb3Igbm9uLW51bGxhYmxlIGNvbHVt bnMKK0FMVEVSIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9jZCAoYywgZCk7CitEUk9QIElOREVYIGl4 X2NkIE9OIHQzOworCistLWRpc2FibGVfaW5mbworCisKKyMgVGVzdCB0aGF0IE9OTElORSBrZXl3 b3JkIGlzIGFjY2VwdGVkIChvciBub3QsIGRlcGVuZGluZyBvbiBzdGF0ZW1lbnQpOgorCistLWVj aG8gIy0tLS0tLS0tIFRlc3RpbmcgT05MSU5FIGtleXdvcmQuLi4gLS0tLS0tLS0jCisKKy0tZWNo byAjLS0tLS0tLS0gT05MSU5FOiBBTFRFUiBBREQvRFJPUCBJTkRFWCAtLS0tLS0tLSMKKworQUxU RVIgT05MSU5FIFRBQkxFIHQxIEFERCBJTkRFWCBpeF9iIChiKTsKK0FMVEVSIE9OTElORSBUQUJM RSB0MSBEUk9QIElOREVYIGl4X2I7CisKKy0tZWNobyAjLS0tLS0tLS0gT05MSU5FOiBBTFRFUiBB REQvRFJPUCBLRVkgLS0tLS0tLS0jCisKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgS0VZIGl4 X2IgKGIpOworQUxURVIgT05MSU5FIFRBQkxFIHQxIERST1AgS0VZIGl4X2I7CisKKy0tZWNobyAj LS0tLS0tLS0gT05MSU5FOiBDUkVBVEUvRFJPUCBJTkRFWCAtLS0tLS0tLSMKKworQ1JFQVRFIE9O TElORSBJTkRFWCBpeF9jIE9OIHQxIChjKTsKK0RST1AgT05MSU5FIElOREVYIGl4X2MgT04gdDE7 CisKKy0tZWNobyAjLS0tLS0tLS0gT05MSU5FOiBBREQgSU5ERVggZGVmYXVsdCBuYW1lIC0tLS0t LS0tIworCitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIChiKTsKK0FMVEVSIE9OTElO RSBUQUJMRSB0MSBEUk9QIElOREVYIGI7CisKKy0tZWNobyAjLS0tLS0tLS0gT05MSU5FOiBBTFRF UiBBREQgbnVsbGFibGUgd2l0aCBkZWZhdWx0IC0tLS0tLS0tIworCisjIFRlc3QgQUxURVIgLi4u IEFERCAuLi4gd2l0aCBPTkxJTkUgZm9yIG51bGxhYmxlIGNvbHVtbiBoYXZpbmcgZGVmYXVsdCB2 YWx1ZQorQUxURVIgT05MSU5FIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9iIChiKTsKK1NFTEVDVCAq IGZyb20gdDMgd2hlcmUgYiA+IDU1NSBPUkRFUiBCWSBhIExJTUlUIDU7CitBTFRFUiBPTkxJTkUg VEFCTEUgdDMgRFJPUCBJTkRFWCBpeF9iOworCistLWVjaG8gIy0tLS0tLS0tIE9OTElORTogQUxU RVIgQUREIG5vdC1udWxsIHdpdGggZGVmYXVsdCAtLS0tLS0tLSMKKworIyBUZXN0IHRoYXQgQUxU RVIgT05MSU5FIC4uLiBBREQgSU5ERVggZmFpbHMgd2l0aCBPTkxJTkUgZm9yIG5vbi1udWxsYWJs ZSBjb2x1bW4gaGF2aW5nIGRlZmF1bHQgdmFsdWUKKy0tZXJyb3IgRVJfTk9UX1NVUFBPUlRFRF9Z RVQKK0FMVEVSIE9OTElORSBUQUJMRSB0MyBBREQgSU5ERVggaXhfYyAoYyk7CisKKy0tZWNobyAj LS0tLS0tLS0gT05MSU5FOiBBTFRFUiBBREQgbm90LW51bGwgLS0tLS0tLS0jCisKKyMgVGVzdCB0 aGF0IEFMVEVSIE9OTElORSAuLi4gQUREIElOREVYIGZhaWxzIHdpdGggT05MSU5FIGZvciBub24t bnVsbGFibGUgY29sdW1ucworLS1lcnJvciBFUl9OT1RfU1VQUE9SVEVEX1lFVAorQUxURVIgT05M SU5FIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9kIChkKTsKKworLS1lY2hvICMtLS0tLS0tLSBPTkxJ TkU6IEFMVEVSIEFERCBzYW1lIGtleSBtdWx0aXBsZSB0aW1lcyAtLS0tLS0tLSMKKworIyBUZXN0 IGFkZGluZyB0aGUgc2FtZSBrZXkgbW9yZSB0aGFuIG9uY2UgKHNob3VsZCBmYWlsIGJ1dCBub3Qg Y3Jhc2gpCitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X2MgKGMpOworLS1l cnJvciBFUl9EVVBfS0VZTkFNRQorQUxURVIgT05MSU5FIFRBQkxFIHQxIEFERCBJTkRFWCBpbmRl eF9jIChjKTsKKy0tZXJyb3IgRVJfRFVQX0tFWU5BTUUKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBB REQgSU5ERVggaW5kZXhfYyAoYyk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKKworLS1lY2hvICMt LS0tLS0tLSBPTkxJTkU6IEFMVEVSIERST1Agc2FtZSBrZXkgbXVsdGlwbGUgdGltZXMgLS0tLS0t LS0jCisKKyMgVGVzdCBkcm9wcGluZyB0aGUgc2FtZSBrZXkgbW9yZSB0aGFuIG9uY2UgKGRyb3Bw aW5nIGtleSBhZGRlZCBpbiBwcmV2aW91cyBzZWdtZW50KS4KKyMgU2hvdWxkIGZhaWwgYnV0IG5v dCBjcmFzaC4KK0FMVEVSIE9OTElORSBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X2M7CistLWVy cm9yIEVSX0NBTlRfRFJPUF9GSUVMRF9PUl9LRVkKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBEUk9Q IElOREVYIGluZGV4X2M7CistLWVycm9yIEVSX0NBTlRfRFJPUF9GSUVMRF9PUl9LRVkKK0FMVEVS IE9OTElORSBUQUJMRSB0MSBEUk9QIElOREVYIGluZGV4X2M7CitTSE9XIElOREVYRVMgRlJPTSB0 MTsKKworLS1lY2hvICMtLS0tLS0tLSBPTkxJTkU6IEFMVEVSIEFERC9EUk9QIFBSSU1BUlkgS0VZ IC0tLS0tLS0tIworCisjIEFkZGluZy9kcm9wcGluZyBQUklNQVJZIEtFWSBpcyBub3Qgc3VwcG9z ZWQgdG8gd29yayBPTkxJTkUKKy0tZXJyb3IgRVJfTk9UX1NVUFBPUlRFRF9ZRVQKK0FMVEVSIE9O TElORSBUQUJMRSB0MSBEUk9QIFBSSU1BUlkgS0VZOworIyBOb3cgZHJvcCBwcmltYXJ5IGtleSAo b2ZmbGluZSkgb24gJ2EnIHRlbXBvcmFyaWx5IGluIG9yZGVyIHRvIHRyeSBhZGRpbmcgb25lIG9u bGluZQorQUxURVIgVEFCTEUgdDEgRFJPUCBQUklNQVJZIEtFWTsKKy0tZXJyb3IgRVJfTk9UX1NV UFBPUlRFRF9ZRVQKK0FMVEVSIE9OTElORSBUQUJMRSB0MSBBREQgUFJJTUFSWSBLRVkgKGMpOwor U0hPVyBJTkRFWEVTIEZST00gdDE7CisjIFJlLXNldCBwcmltYXJ5IGtleSBvbiAnYScKK0FMVEVS IFRBQkxFIHQxIEFERCBQUklNQVJZIEtFWSAoYSk7CisKKyMjCisjIyBUZXN0aW5nIHNvbWUgc3Rh dGVtZW50IHZhcmlhdGlvbnMgdXNpbmcgQUREL0RST1AgSU5ERVgKKyMjIAorCistLWVjaG8gIy0t LS0tLS0tIFRlc3Q6IFVOSVFVRSAtLS0tLS0tLSMKKworIyMgVGVzdCBhZGRpbmcgVU5JUVVFIGlu ZGV4CitBTFRFUiBPTkxJTkUgVEFCTEUgdDIgQUREIFVOSVFVRSBJTkRFWCBpeF91bmlxdWVfYyAo Yyk7CitFWFBMQUlOIFNFTEVDVCAqIEZST00gdDIgV0hFUkUgYyA8IDI1IEFORCBjID4gMjAgT1JE RVIgQlkgYzsKK1NFTEVDVCAqIEZST00gdDIgV0hFUkUgYyA8IDI1IEFORCBjID4gMjAgT1JERVIg QlkgYzsKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworREVTQ1JJQkUgdDI7CitEUk9QIE9OTElORSBJ TkRFWCBpeF91bmlxdWVfYyBPTiB0MjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQyOworCistLWVjaG8g Iy0tLS0tLS0tIFRlc3Q6IERFU0MgLS0tLS0tLS0jCisKKyMjIFRlc3QgdXNpbmcgREVTQyBrZXl3 b3JkIChwYXJzZWQgYnV0IG5vdCB1c2VkKQorQUxURVIgT05MSU5FIFRBQkxFIHQzIEFERCBJTkRF WCBpeF9kZXNjX2IgKGIgREVTQyk7CitBTFRFUiBPTkxJTkUgVEFCTEUgdDMgQUREIElOREVYIGl4 X2FzY19iIChiIEFTQyk7CitTSE9XIElOREVYRVMgRlJPTSB0MzsKK0RST1AgT05MSU5FIElOREVY IGl4X2Rlc2NfYiBPTiB0MzsKK0RST1AgT05MSU5FIElOREVYIGl4X2FzY19iIE9OIHQzOworCist LWVjaG8gIy0tLS0tLS0tIFRlc3Q6IEtFWV9CTE9DS19TSVpFIC0tLS0tLS0tIworCisjIyBUZXN0 IGFkZGluZyBpbmRleCBhbmQgc3BlY2lmeWluZyBLRVlfQkxPQ0tfU0laRS4KKyMjIEtFWSBfQkxP Q0tfU0laRSAwIGluZGljYXRlcyB0aGF0IHRoZSBkZWZhdWx0IHNob3VsZCBiZSB1c2VkLgorQUxU RVIgT05MSU5FIFRBQkxFIHQxIEFERCBJTkRFWCBpeF9rZXlibG9ja19iIChiKSBLRVlfQkxPQ0tf U0laRSA9IDA7CitFWFBMQUlOIFNFTEVDVCAqIEZST00gdDEgV0hFUkUgYiBMSUtFICdUZXN0Um93 MSUnIE9SREVSIEJZIGI7CitTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGIgTElLRSAnVGVzdFJvdzEl JyBPUkRFUiBCWSBiOworU0hPVyBJTkRFWEVTIEZST00gdDE7CitBTFRFUiBPTkxJTkUgVEFCTEUg dDEgRFJPUCBJTkRFWCBpeF9rZXlibG9ja19iOworCistLWVjaG8gIy0tLS0tLS0tIFRlc3Q6IENP TU1FTlQgLS0tLS0tLS0jCisKKyMjIFRlc3QgYWRkaW5nIGluZGV4IGFuZCBzcGVjaWZ5aW5nIGEg Y29tbWVudAorQUxURVIgT05MSU5FIFRBQkxFIHQxIEFERCBJTkRFWCBpeF9iIChiKSBDT01NRU5U ICdUZXN0IGNvbW1lbnQnOworRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGIgTElLRSAn VGVzdFJvdzElJyBPUkRFUiBCWSBiOworU0VMRUNUICogRlJPTSB0MSBXSEVSRSBiIExJS0UgJ1Rl c3RSb3cxJScgT1JERVIgQlkgYjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworQUxURVIgT05MSU5F IFRBQkxFIHQxIERST1AgSU5ERVggaXhfYjsKKworLS1lY2hvICMtLS0tLS0tLSBUZXN0OiBNdWx0 aXBsZSBjb2x1bW5zIC0tLS0tLS0tIworCisjIyBUZXN0IEFERCBJTkRFWCBvbiBtdWx0aXBsZSBj b2x1bW5zCitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIGluZGV4X211bHRpY29sIChi LCBjLCBkKTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworIyMgUXVlcnkgdXNpbmcgdGhlIHR3byBs ZWZ0LW1vc3Qga2V5cworRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGIgTElLRSAnVGVz dFJvdzMlJyBBTkQgYyA9IDYgT1JERVIgQlkgYiwgYywgZDsKK1NFTEVDVCAqIEZST00gdDEgV0hF UkUgYiBMSUtFICdUZXN0Um93MyUnIEFORCBjID0gNiBPUkRFUiBCWSBiLCBjLCBkOworRFJPUCBJ TkRFWCBpbmRleF9tdWx0aWNvbCBPTiB0MTsKKworLS1lY2hvICMtLS0tLS0tLSBUZXN0OiBNdWx0 aXBsZSBBREQgSU5ERVggb24gc2FtZSBjb2x1bW4gLS0tLS0tLS0jCisKK0FMVEVSIE9OTElORSBU QUJMRSB0MSBBREQgSU5ERVggaW5kZXhfMWQgKGQpOworQUxURVIgT05MSU5FIFRBQkxFIHQxIEFE RCBJTkRFWCBpbmRleF8yZCAoZCk7CitDUkVBVEUgT05MSU5FIElOREVYIGluZGV4XzNkIE9OIHQx IChkKTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOworRFJPUCBPTkxJTkUgSU5ERVggaW5kZXhfMWQg T04gdDE7CitEUk9QIE9OTElORSBJTkRFWCBpbmRleF8yZCBPTiB0MTsKK0RST1AgT05MSU5FIElO REVYIGluZGV4XzNkIE9OIHQxOworCistLWVjaG8gIy0tLS0tLS0tIFRlc3Q6IE11bHRpcGxlIEFE RCBJTkRFWCBpbiBhIHNpbmdsZSBzdGF0ZW1lbnQgLS0tLS0tLS0jCisKK0FMVEVSIFRBQkxFIHQx IAorICAgIEFERCBJTkRFWCBpbmRleF92YXJjaGFyIChiKSwgCisgICAgQUREIElOREVYIGluZGV4 X2ludCAoYyk7CitBTFRFUiBUQUJMRSB0MyAKKyAgICBBREQgSU5ERVggaW5kZXhfaW50IChiKSwg CisgICAgQUREIElOREVYIGluZGV4X211bHRpIChiLGUpLCAKKyAgICBBREQgSU5ERVggaW5kZXhf dmFyY2hhciAoZSk7CitTSE9XIElOREVYRVMgRlJPTSB0MTsKK1NIT1cgSU5ERVhFUyBGUk9NIHQz OworCistLWVjaG8gIy0tLS0tLS0tIFRlc3Q6IE11bHRpcGxlIERST1AgSU5ERVggaW4gYSBzaW5n bGUgc3RhdGVtZW50IC0tLS0tLS0tIworCisjIyBEZXBlbmRzIG9uIGluZGV4ZXMgYWRkZWQgaW4g cHJldmlvdXMgdGVzdCBzZWdtZW50LgorQUxURVIgVEFCTEUgdDEgCisgICAgRFJPUCBJTkRFWCBp bmRleF92YXJjaGFyLCAKKyAgICBEUk9QIElOREVYIGluZGV4X2ludDsKK0FMVEVSIFRBQkxFIHQz IAorICAgIERST1AgSU5ERVggaW5kZXhfaW50LCAKKyAgICBEUk9QIElOREVYIGluZGV4X211bHRp LAorICAgIERST1AgSU5ERVggaW5kZXhfdmFyY2hhcjsKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOwor U0hPVyBJTkRFWEVTIEZST00gdDM7CisKKy0tZWNobyAjLS0tLS0tLS0gVGVzdDogQ29tYmluZWQg QUREL0RST1AgSU5ERVggaW4gYSBzaW5nbGUgc3RhdGVtZW50IC0tLS0tLS0tIworCitBTFRFUiBU QUJMRSB0MSBBREQgSU5ERVggaW5kZXhfaW50IChjKTsKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRF WCBpbmRleF9jaGFyIChkKSwgRFJPUCBJTkRFWCBpbmRleF9pbnQ7CitTSE9XIElOREVYRVMgRlJP TSB0MTsKK0FMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggaW5kZXhfY2hhcjsKKworLS1lY2hvICMt LS0tLS0tLSBUZXN0OiBBREQgSU5ERVggZm9sbG93ZWQgYnkgc29tZSBjb21wbGV4IHF1ZXJpZXMg LS0tLS0tLS0jCisKKyMgRmlyc3QgaW5kZXggYWRkZWQgb2ZmbGluZSAobm9uLW51bGxhYmxlIGNv bHVtbiksIG90aGVycyBvbmxpbmUuCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVggaXhfYSAoYSk7 CitBTFRFUiBPTkxJTkUgVEFCTEUgdDEgQUREIElOREVYIGl4X2IgKGIpOworQUxURVIgT05MSU5F IFRBQkxFIHQxIEFERCBJTkRFWCBpeF9jIChjKTsKKworQUxURVIgT05MSU5FIFRBQkxFIHQyCisg ICAgQUREIElOREVYIGl4X2IgKGIpLAorICAgIEFERCBJTkRFWCBpeF9kIChkKTsKKworQUxURVIg T05MSU5FIFRBQkxFIHQzIEFERCBJTkRFWCBpeF9iIChiKTsKKworIyMgVHdvIGtleXMsIGV4aXN0 aW5nIHZhbHVlcworRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGEgPSAzIE9SIChjID4g MTAgQU5EIGEgPCAxNSkgT1JERVIgQlkgYTsKK1NFTEVDVCAqIEZST00gdDEgV0hFUkUgYSA9IDMg T1IgKGMgPiAxMCBBTkQgYSA8IDE1KSBPUkRFUiBCWSBhOworCisjIyBUd28ga2V5cywgb25lIG5v bi1leGlzdGluZyBhbmQgb25lIGV4aXN0aW5nIHZhbHVlCitFWFBMQUlOIFNFTEVDVCAqIEZST00g dDEgV0hFUkUgYSA9IDk5IE9SIGIgTElLRSAnVGVzdFJvdzclJzsKK1NFTEVDVCAqIEZST00gdDEg V0hFUkUgYSA9IDk5IE9SIGIgTElLRSAnVGVzdFJvdzclJzsKKworIyMgVHdvIGtleXMgYW5kIGEg bm9uLWtleQorRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIChhID0gMTAgT1IgYiBMSUtF ICdUZXN0Um93MTEnKSBBTkQgZCBMSUtFICdDaGFyJScgT1JERVIgQlkgYTsKK1NFTEVDVCAqIEZS T00gdDEgV0hFUkUgKGEgPSAxMCBPUiBiIExJS0UgJ1Rlc3RSb3cxMScpIEFORCBkIExJS0UgJ0No YXIlJyBPUkRFUiBCWSBhOworCisjIyBUd28gdGFibGVzLCBrZXlzIGluIGJvdGgsIGNvbXBhcmUg a2V5IHRvIG5vbi1rZXkKK0VYUExBSU4gU0VMRUNUICogRlJPTSB0MSwgdDIgV0hFUkUgKHQxLmEg SU4gKDEsMikgT1IgdDEuYiBMSUtFICdUZXN0Um93MSUnKSBBTkQgdDEuYz10Mi5jOworU0VMRUNU ICogRlJPTSB0MSwgdDIgV0hFUkUgKHQxLmEgSU4gKDEsMikgT1IgdDEuYiBMSUtFICdUZXN0Um93 MSUnKSBBTkQgdDEuYz10Mi5jOworRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIHQxLCB0MyBXSEVSRSB0 My5iPTIgQU5EICh0MS5jID0gdDMuYyBPUiB0MS5hPXQzLmQpOworU0VMRUNUICogRlJPTSB0MSwg dDMgV0hFUkUgdDMuYj0yIEFORCAodDEuYyA9IHQzLmMgT1IgdDEuYT10My5kKTsKKworQUxURVIg T05MSU5FIFRBQkxFIHQxIAorICAgIERST1AgSU5ERVggaXhfYSwKKyAgICBEUk9QIElOREVYIGl4 X2IsCisgICAgRFJPUCBJTkRFWCBpeF9jOworCitBTFRFUiBPTkxJTkUgVEFCTEUgdDIKKyAgICBE Uk9QIElOREVYIGl4X2IsCisgICAgRFJPUCBJTkRFWCBpeF9kOworCitBTFRFUiBPTkxJTkUgVEFC TEUgdDMgRFJPUCBJTkRFWCBpeF9iOworCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyAtLS0gQ2hlY2sgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAjCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKK1NIT1cgSU5ERVhFUyBGUk9NIHQxOwor U0hPVyBJTkRFWEVTIEZST00gdDI7CitTSE9XIElOREVYRVMgRlJPTSB0MzsKKworIyAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBG aW5hbCBjbGVhbnVwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworRFJP UCBUQUJMRSB0MTsKK0RST1AgVEFCTEUgdDI7CitEUk9QIFRBQkxFIHQzOwoKPT09IHJlbW92ZWQg ZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fc2VsZWN0X2V4Y2VycHQudGVz dCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9mYWxjb24vdC9mYWxjb25fc2VsZWN0X2V4Y2VycHQu dGVzdAkyMDA3LTA5LTI5IDA0OjMwOjQyICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvZmFs Y29uL3QvZmFsY29uX3NlbGVjdF9leGNlcnB0LnRlc3QJMTk3MC0wMS0wMSAwMDowMDowMCArMDAw MApAQCAtMSwxMzEwICswLDAgQEAKLS0tc291cmNlIGluY2x1ZGUvaGF2ZV9mYWxjb24uaW5jCi0j Ci0jIEJ1ZyAjMjg2ODY6IEZhbGNvbjogZmFsY29uX3NlbGVjdC50ZXN0IHJlZ3Jlc3NlZAotIyBO b3RlOiBFeHRyYWN0ZWQgZnJvbSBmYWxjb25fc2VsZWN0LnRlc3QgYW5kIHBzXzhmYWxjb24udGVz dAotIwotCi0tLWVjaG8gKioqIEJ1ZyAjMjg2ODYgKioqCi0KLSMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwotIyAtLS0gSW5pdGlhbGlzYXRp b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tLSAjCi0jIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKLWxldCAkZW5naW5lID0g J0ZhbGNvbic7Ci1ldmFsIFNFVCBAQHN0b3JhZ2VfZW5naW5lID0gJGVuZ2luZTsKLQotLS1kaXNh YmxlX3dhcm5pbmdzCi1EUk9QIFRBQkxFIElGIEVYSVNUUyB0MTsKLURST1AgVEFCTEUgSUYgRVhJ U1RTIHQyOwotRFJPUCBUQUJMRSBJRiBFWElTVFMgdDM7Ci1EUk9QIFRBQkxFIElGIEVYSVNUUyB0 NDsKLURST1AgVEFCTEUgSUYgRVhJU1RTIHQ1OwotRFJPUCBUQUJMRSBJRiBFWElTVFMgdDY7Ci0t LWVuYWJsZV93YXJuaW5ncwotCi1DUkVBVEUgVEFCTEUgdDEgKGYxIHZhcmNoYXIoNikgREVGQVVM VCBOVUxMLCBmMiBpbnQoNikgUFJJTUFSWSBLRVkgTk9UIE5VTEwpOwotQ1JFQVRFIFRBQkxFIHQy IChmMyB2YXJjaGFyKDUpIE5PVCBOVUxMLCBmNCB2YXJjaGFyKDUpIE5PVCBOVUxMLCBVTklRVUUg S0VZIHVrZXkgKGYzLGY0KSk7Ci1JTlNFUlQgSU5UTyB0MSBWQUxVRVMgKCcgMicsIDIpOwotSU5T RVJUIElOVE8gdDIgVkFMVUVTICgnIDInLCAnIG9uZSAnKSwoJyAyJywgJyB0d28gJyk7Ci0KLUNS RUFURSBUQUJMRSB0MyAoCi0gIGF1dG8gaW50IG5vdCBudWxsIGF1dG9faW5jcmVtZW50LAotICBm bGQxIGludCg2KSB1bnNpZ25lZCB6ZXJvZmlsbCBERUZBVUxUICcwMDAwMDAnIE5PVCBOVUxMLAot ICBjb21wYW55bnIgdGlueWludCgyKSB1bnNpZ25lZCB6ZXJvZmlsbCBERUZBVUxUICcwMCcgTk9U IE5VTEwsCi0gIGZsZDMgY2hhcigzMCkgREVGQVVMVCAnJyBOT1QgTlVMTCwKLSAgZmxkNCBjaGFy KDM1KSBERUZBVUxUICcnIE5PVCBOVUxMLAotICBmbGQ1IGNoYXIoMzUpIERFRkFVTFQgJycgTk9U IE5VTEwsCi0gIGZsZDYgY2hhcig0KSBERUZBVUxUICcnIE5PVCBOVUxMLAotICBVTklRVUUgZmxk MSAoZmxkMSksCi0gIEtFWSBmbGQzIChmbGQzKSwKLSAgUFJJTUFSWSBLRVkgKGF1dG8pCi0pOwot Ci0jCi0jIFBvcHVsYXRlIHRhYmxlIHQzCi0jCi0KLS0tZGlzYWJsZV9xdWVyeV9sb2cKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMSwwMDAwMDEsMDAsJ09tYWhhJywndGVldGhlJywnbmVhdCcsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyLDAxMTQwMSwzNywnYnJlYWtpbmcnLCdkcmVhZGVk JywnU3RlaW5iZXJnJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzLDAxMTQwMiwzNywn Um9tYW5zJywnc2Nob2xhc3RpY3MnLCdqYXJyaW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDQsMDExNDAzLDM3LCdpbnRlcmNlcHRlZCcsJ2F1ZGlvbG9neScsJ3RpbmlseScsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg1LDAxMTUwMSwzNywnYmV3aWxkZXJpbmdseScsJ3dhbGxl dCcsJ2JhbGxlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2LDAxMTcwMSwzNywnYXN0 b3VuZCcsJ3BhcnRlcnMnLCdwZXJzaXN0JywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3 LDAxMTcwMiwzNywnYWRtb25pc2hpbmcnLCdlc2NoZXcnLCdhdHRhaW5tZW50cycsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg4LDAxMTcwMywzNywnc3VtYWMnLCdxdWl0dGVyJywnZmFuYXRp YycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5LDAxMjAwMSwzNywnZmxhbmtpbmcnLCdu ZWF0JywnbWVhc3VyZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAsMDEyMDAz LDM3LCdjb21iZWQnLCdTdGVpbmJlcmcnLCdyaWdodGZ1bG5lc3MnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTEsMDEyMDA0LDM3LCdzdWJqZWN0aXZlJywnamFycmluZycsJ2NhcGFibHkn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTIsMDEyMDA1LDM3LCdzY2F0dGVyYnJhaW4n LCd0aW5pbHknLCdpbXB1bHNpdmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTMsMDEy MzAxLDM3LCdFdWxlcmlhbicsJ2JhbGxlZCcsJ3N0YXJsZXQnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTQsMDEyMzAyLDM2LCdkdWJiZWQnLCdwZXJzaXN0JywndGVybWluYXRvcnMnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTUsMDEyMzAzLDM3LCdLYW5lJywnYXR0YWlubWVu dHMnLCd1bnR5aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE2LDAxMjMwNCwzNywn b3ZlcmxheScsJ2ZhbmF0aWMnLCdhbm5vdW5jZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoMTcsMDEyMzA1LDM3LCdwZXJ0dXJiJywnbWVhc3VyZXMnLCdmZWF0aGVyd2VpZ2h0Jywn RkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE4LDAxMjMwNiwzNywnZ29ibGlucycsJ3Jp Z2h0ZnVsbmVzcycsJ3Blc3NpbWlzdCcsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgx OSwwMTI1MDEsMzcsJ2FubmloaWxhdGVzJywnY2FwYWJseScsJ2RhdWdodGVyJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDIwLDAxMjYwMiwzNywnV290YW4nLCdpbXB1bHNpdmUnLCdkZWNs aW5lcicsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMSwwMTI2MDMsMzcsJ3NuYXRj aGluZycsJ3N0YXJsZXQnLCdsYXdnaXZlcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgy MiwwMTI2MDQsMzcsJ2NvbmNsdWRlcycsJ3Rlcm1pbmF0b3JzJywnc3RhdGVkJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDIzLDAxMjYwNSwzNywnbGF0ZXJhbGx5JywndW50eWluZycsJ3Jl YWRhYmxlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI0LDAxMjYwNiwzNywneWVscGVk JywnYW5ub3VuY2VzJywnYXR0cml0aW9uJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI1 LDAxMjcwMSwzNywnZ3JhemluZycsJ2ZlYXRoZXJ3ZWlnaHQnLCdjYXNjYWRlJywnRkFTJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI2LDAxMjcwMiwzNywnQmFpcmQnLCdwZXNzaW1pc3QnLCdt b3RvcnMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjcsMDEyNzAzLDM3LCdjZWxl cnknLCdkYXVnaHRlcicsJ2ludGVycm9nYXRlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDI4LDAxMjcwNCwzNywnbWlzdW5kZXJzdGFuZGVyJywnZGVjbGluZXInLCdwZXN0cycsJ1cnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjksMDEzNjAxLDM3LCdoYW5kZ3VuJywnbGF3Z2l2ZXIn LCdzdGFpcndheScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMCwwMTM2MDIsMzcsJ2Zv bGRvdXQnLCdzdGF0ZWQnLCdkb3BlcnMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MzEsMDEzNjAzLDM3LCdteXN0aWMnLCdyZWFkYWJsZScsJ3Rlc3RpY2xlJywnVycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgzMiwwMTM2MDQsMzcsJ3N1Y2N1bWJlZCcsJ2F0dHJpdGlvbicsJ1Bh cnNpZmFsJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMywwMTM2MDUsMzcsJ05hYmlz Y28nLCdjYXNjYWRlJywnbGVhdmluZ3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzQs MDEzNjA2LDM3LCdmaW5nZXJpbmdzJywnbW90b3JzJywncG9zdHVsYXRpb24nLCdXJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDM1LDAxMzYwNywzNywnYWdpbmcnLCdpbnRlcnJvZ2F0ZScsJ3Nx dWVha2luZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNiwwMTM2MDgsMzcsJ2FmaWVs ZCcsJ3Blc3RzJywnY29udHJhc3RlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNyww MTM2MDksMzcsJ2FtbW9uaXVtJywnc3RhaXJ3YXknLCdsZWZ0b3ZlcicsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgzOCwwMTM2MTAsMzcsJ2JvYXQnLCdkb3BlcnMnLCd3aGl0ZW5lcnMnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzksMDEzODAxLDM3LCdpbnRlbGxpZ2liaWxpdHkn LCd0ZXN0aWNsZScsJ2VyYXNlcycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDAsMDEz ODAyLDM3LCdBdWd1c3RpbmUnLCdQYXJzaWZhbCcsJ1B1bmphYicsJ1cnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNDEsMDEzODAzLDM3LCd0ZWV0aGUnLCdsZWF2aW5ncycsJ01lcnJpdHQnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDIsMDEzODA0LDM3LCdkcmVhZGVkJywncG9zdHVs YXRpb24nLCdRdWl4b3Rpc20nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDMsMDEzOTAx LDM3LCdzY2hvbGFzdGljcycsJ3NxdWVha2luZycsJ3N3ZWV0aXNoJywnRkFTJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDQ0LDAxNjAwMSwzNywnYXVkaW9sb2d5JywnY29udHJhc3RlZCcsJ2Rv Z2dpbmcnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDUsMDE2MjAxLDM3LCd3YWxs ZXQnLCdsZWZ0b3ZlcicsJ3Njb3JuZnVsbHknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNDYsMDE2MjAyLDM3LCdwYXJ0ZXJzJywnd2hpdGVuZXJzJywnYmVsbG93JywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDQ3LDAxNjMwMSwzNywnZXNjaGV3JywnZXJhc2VzJywnYmlsbHMn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDgsMDE2MzAyLDM3LCdxdWl0dGVyJywnUHVu amFiJywnY3VwYm9hcmQnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDksMDE2MzAz LDM3LCduZWF0JywnTWVycml0dCcsJ3N1cmV0aWVzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDUwLDAxNjMwNCwzNywnU3RlaW5iZXJnJywnUXVpeG90aXNtJywncHVkZGluZ3MnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTEsMDE4MDAxLDM3LCdqYXJyaW5nJywnc3dlZXRp c2gnLCd0YXBlc3RyeScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MiwwMTgwMDIsMzcs J3RpbmlseScsJ2RvZ2dpbmcnLCdmZXR0ZXJzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDUzLDAxODAwMywzNywnYmFsbGVkJywnc2Nvcm5mdWxseScsJ2JpdmFsdmVzJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDU0LDAxODAwNCwzNywncGVyc2lzdCcsJ2JlbGxvdycsJ2luY3Vy cmluZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NSwwMTgwMDUsMzcsJ2F0dGFpbm1l bnRzJywnYmlsbHMnLCdBZG9scGgnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTYsMDE4 MDA3LDM3LCdmYW5hdGljJywnY3VwYm9hcmQnLCdwaXRoZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNTcsMDE4MDA4LDM3LCdtZWFzdXJlcycsJ3N1cmV0aWVzJywnZW1lcmdlbmN5Jywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU4LDAxODAwOSwzNywncmlnaHRmdWxuZXNzJywn cHVkZGluZ3MnLCdNaWxlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1OSwwMTgwMTAs MzcsJ2NhcGFibHknLCd0YXBlc3RyeScsJ3RyaW1taW5ncycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg2MCwwMTgwMTIsMzcsJ2ltcHVsc2l2ZScsJ2ZldHRlcnMnLCd0cmFnZWRpZXMnLCdX Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYxLDAxODAxMywzNywnc3RhcmxldCcsJ2JpdmFs dmVzJywnc2t1bGtpbmcnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYyLDAxODAxNCwz NywndGVybWluYXRvcnMnLCdpbmN1cnJpbmcnLCdmbGludCcsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg2MywwMTgwMTUsMzcsJ3VudHlpbmcnLCdBZG9scGgnLCdmbG9wcGluZycsJ1cnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjQsMDE4MDE2LDM3LCdhbm5vdW5jZXMnLCdwaXRoZWQn LCdyZWxheGluZycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2NSwwMTgwMTcsMzcs J2ZlYXRoZXJ3ZWlnaHQnLCdlbWVyZ2VuY3knLCdvZmZsb2FkJywnRkFTJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDY2LDAxODAxOCwzNywncGVzc2ltaXN0JywnTWlsZXMnLCdzdWl0ZXMnLCdX Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY3LDAxODAxOSwzNywnZGF1Z2h0ZXInLCd0cmlt bWluZ3MnLCdsaXN0cycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2OCwwMTgwMjAs MzcsJ2RlY2xpbmVyJywndHJhZ2VkaWVzJywnYW5pbWl6ZWQnLCdGQVMnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNjksMDE4MDIxLDM3LCdsYXdnaXZlcicsJ3NrdWxraW5nJywnbXVsdGlsYXll cicsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzAsMDE4MDIyLDM3LCdzdGF0ZWQnLCdm bGludCcsJ3N0YW5kYXJkaXplcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MSww MTgwMjMsMzcsJ3JlYWRhYmxlJywnZmxvcHBpbmcnLCdKdWRhcycsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg3MiwwMTgwMjQsMzcsJ2F0dHJpdGlvbicsJ3JlbGF4aW5nJywndmFjdXVtaW5n JywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MywwMTgwMjUsMzcsJ2Nhc2NhZGUnLCdv ZmZsb2FkJywnZGVudGFsbHknLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc0LDAxODAy NiwzNywnbW90b3JzJywnc3VpdGVzJywnaHVtYW5uZXNzJywnVycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg3NSwwMTgwMjcsMzcsJ2ludGVycm9nYXRlJywnbGlzdHMnLCdpbmNoJywnVycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NiwwMTgwMjgsMzcsJ3Blc3RzJywnYW5pbWl6ZWQnLCdX ZWlzc211bGxlcicsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzcsMDE4MDI5LDM3LCdz dGFpcndheScsJ211bHRpbGF5ZXInLCdpcnJlc3BvbnNpYmx5JywnVycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg3OCwwMTgwMzAsMzcsJ2RvcGVycycsJ3N0YW5kYXJkaXplcycsJ2x1Y2tpbHkn LCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzksMDE4MDMyLDM3LCd0ZXN0aWNsZScs J0p1ZGFzJywnY3VsbGVkJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MCwwMTgwMzMs MzcsJ1BhcnNpZmFsJywndmFjdXVtaW5nJywnbWVkaWNhbCcsJ0ZBUycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg4MSwwMTgwMzQsMzcsJ2xlYXZpbmdzJywnZGVudGFsbHknLCdibG9vZGJhdGgn LCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODIsMDE4MDM1LDM3LCdwb3N0dWxhdGlv bicsJ2h1bWFubmVzcycsJ3N1YnNjaGVtYScsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo ODMsMDE4MDM2LDM3LCdzcXVlYWtpbmcnLCdpbmNoJywnYW5pbWFscycsJ1cnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoODQsMDE4MDM3LDM3LCdjb250cmFzdGVkJywnV2Vpc3NtdWxsZXInLCdN aWNyb25lc2lhJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg1LDAxODAzOCwzNywnbGVm dG92ZXInLCdpcnJlc3BvbnNpYmx5JywncmVwZXRpdGlvbnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoODYsMDE4MDM5LDM3LCd3aGl0ZW5lcnMnLCdsdWNraWx5JywnQW50YXJlcycsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NywwMTgwNDAsMzcsJ2VyYXNlcycsJ2N1bGxlZCcs J3ZlbnRpbGF0ZScsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODgsMDE4MDQxLDM3LCdQ dW5qYWInLCdtZWRpY2FsJywncGl0eWluZ2x5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDg5LDAxODA0MiwzNywnTWVycml0dCcsJ2Jsb29kYmF0aCcsJ2ludGVyZGVwZW5kZW50JywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkwLDAxODA0MywzNywnUXVpeG90aXNtJywnc3Vic2No ZW1hJywnR3JhdmVzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkxLDAxODA0NCwz Nywnc3dlZXRpc2gnLCdhbmltYWxzJywnbmVvbmF0YWwnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoOTIsMDE4MDQ1LDM3LCdkb2dnaW5nJywnTWljcm9uZXNpYScsJ3NjcmliYmxlZCcsJ0ZB UycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MywwMTgwNDYsMzcsJ3Njb3JuZnVsbHknLCdy ZXBldGl0aW9ucycsJ2NoYWZlJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5NCwwMTgw NDgsMzcsJ2JlbGxvdycsJ0FudGFyZXMnLCdob25vcmluZycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg5NSwwMTgwNDksMzcsJ2JpbGxzJywndmVudGlsYXRlJywncmVhbHRvcicsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg5NiwwMTgwNTAsMzcsJ2N1cGJvYXJkJywncGl0eWluZ2x5 JywnZWxpdGUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTcsMDE4MDUxLDM3LCdzdXJl dGllcycsJ2ludGVyZGVwZW5kZW50JywnZnVuZXJlYWwnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoOTgsMDE4MDUyLDM3LCdwdWRkaW5ncycsJ0dyYXZlcycsJ2Ficm9nYXRpbmcnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTksMDE4MDUzLDUwLCd0YXBlc3RyeScsJ25lb25hdGFs Jywnc29ydGVycycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDAsMDE4MDU0LDM3LCdm ZXR0ZXJzJywnc2NyaWJibGVkJywnQ29ubGV5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDEwMSwwMTgwNTUsMzcsJ2JpdmFsdmVzJywnY2hhZmUnLCdsZWN0dXJlZCcsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMDIsMDE4MDU2LDM3LCdpbmN1cnJpbmcnLCdob25vcmluZycsJ0Fi cmFoYW0nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAzLDAxODA1NywzNywnQWRvbHBo JywncmVhbHRvcicsJ0hhd2FpaScsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA0LDAx ODA1OCwzNywncGl0aGVkJywnZWxpdGUnLCdjYWdlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDEwNSwwMTgwNTksMzYsJ2VtZXJnZW5jeScsJ2Z1bmVyZWFsJywnaHVzaGVzJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNiwwMTgwNjAsMzcsJ01pbGVzJywnYWJyb2dhdGluZycs J1NpbWxhJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNywwMTgwNjEsMzcsJ3RyaW1t aW5ncycsJ3NvcnRlcnMnLCdyZXBvcnRlcnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MTA4LDAxODEwMSwzNywndHJhZ2VkaWVzJywnQ29ubGV5JywnRHV0Y2htYW4nLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA5LDAxODEwMiwzNywnc2t1bGtpbmcnLCdsZWN0dXJlZCcs J2Rlc2NlbmRhbnRzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMCwwMTgxMDMs MzcsJ2ZsaW50JywnQWJyYWhhbScsJ2dyb3VwaW5ncycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgxMTEsMDE4MTA0LDM3LCdmbG9wcGluZycsJ0hhd2FpaScsJ2Rpc3NvY2lhdGUnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTEyLDAxODIwMSwzNywncmVsYXhpbmcnLCdjYWdl JywnY29leGlzdCcsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTEzLDAxODIwMiwzNywn b2ZmbG9hZCcsJ2h1c2hlcycsJ0JlZWJlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEx NCwwMTg0MDIsMzcsJ3N1aXRlcycsJ1NpbWxhJywnVGFvaXNtJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDExNSwwMTg0MDMsMzcsJ2xpc3RzJywncmVwb3J0ZXJzJywnQ29ubmFsbHknLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE2LDAxODQwNCwzNywnYW5pbWl6ZWQnLCdEdXRj aG1hbicsJ2ZldGNoZWQnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE3LDAxODQw NSwzNywnbXVsdGlsYXllcicsJ2Rlc2NlbmRhbnRzJywnY2hlY2twb2ludHMnLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE4LDAxODQwNiwzNywnc3RhbmRhcmRpemVzJywnZ3JvdXBp bmdzJywncnVzdGluZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTksMDE4NDA5LDM3 LCdKdWRhcycsJ2Rpc3NvY2lhdGUnLCdnYWxsaW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDEyMCwwMTg2MDEsMzcsJ3ZhY3V1bWluZycsJ2NvZXhpc3QnLCdvYmxpdGVyYXRlcycsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMjEsMDE4NjAyLDM3LCdkZW50YWxseScsJ0JlZWJl JywndHJhaXRvcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMjIsMDE4NjAzLDM3LCdo dW1hbm5lc3MnLCdUYW9pc20nLCdyZXN1bWVzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDEyMywwMTg4MDEsMzcsJ2luY2gnLCdDb25uYWxseScsJ2FuYWx5emFibGUnLCdGQVMnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTI0LDAxODgwMiwzNywnV2Vpc3NtdWxsZXInLCdmZXRj aGVkJywndGVybWluYXRvcicsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMjUsMDE4 ODAzLDM3LCdpcnJlc3BvbnNpYmx5JywnY2hlY2twb2ludHMnLCdncml0dHknLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMTI2LDAxODgwNCwzNywnbHVja2lseScsJ3J1c3RpbmcnLCdm aXJlYXJtJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMjcsMDE4ODA1LDM3LCdjdWxs ZWQnLCdnYWxsaW5nJywnbWluaW1hJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEyOCww MTg4MDYsMzcsJ21lZGljYWwnLCdvYmxpdGVyYXRlcycsJ1NlbGZyaWRnZScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMjksMDE4ODA3LDM3LCdibG9vZGJhdGgnLCd0cmFpdG9yJywnZGlz YWJsZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMzAsMDE4ODA4LDM3LCdzdWJzY2hl bWEnLCdyZXN1bWVzJywnd2l0Y2hjcmFmdCcsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MTMxLDAxODgwOSwzNywnYW5pbWFscycsJ2FuYWx5emFibGUnLCdiZXRyb3RoJywnVycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgxMzIsMDE4ODEwLDM3LCdNaWNyb25lc2lhJywndGVybWluYXRv cicsJ01hbmhhdHRhbml6ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMzMsMDE4ODEx LDM3LCdyZXBldGl0aW9ucycsJ2dyaXR0eScsJ2ltcHJpbnQnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTM0LDAxODgxMiwzNywnQW50YXJlcycsJ2ZpcmVhcm0nLCdwZWVrZWQnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTM1LDAxOTEwMSwzNywndmVudGlsYXRlJywnbWluaW1h Jywnc3dlbGxpbmcnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTM2LDAxOTEwMiwzNywn cGl0eWluZ2x5JywnU2VsZnJpZGdlJywnaW50ZXJyZWxhdGlvbnNoaXBzJywnVycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMzcsMDE5MTAzLDM3LCdpbnRlcmRlcGVuZGVudCcsJ2Rpc2FibGUn LCdyaXNlcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMzgsMDE5MjAxLDM3LCdHcmF2 ZXMnLCd3aXRjaGNyYWZ0JywnR2FuZGhpYW4nLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDEzOSwwMzA1MDEsMzcsJ25lb25hdGFsJywnYmV0cm90aCcsJ3BlYWNvY2snLCdBJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDE0MCwwMzA1MDIsNTAsJ3NjcmliYmxlZCcsJ01hbmhhdHRhbml6 ZScsJ2JlZScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTQxLDAzMDUwMywzNywnY2hh ZmUnLCdpbXByaW50Jywna2FuamknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTQyLDAz MDUwNCwzNywnaG9ub3JpbmcnLCdwZWVrZWQnLCdkZW50YWwnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTQzLDAzMTkwMSwzNywncmVhbHRvcicsJ3N3ZWxsaW5nJywnc2NhcmYnLCdGQVMn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTQ0LDAzNjAwMSwzNywnZWxpdGUnLCdpbnRlcnJl bGF0aW9uc2hpcHMnLCdjaGFzbScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTQ1LDAz NjAwMiwzNywnZnVuZXJlYWwnLCdyaXNlcicsJ2luc29sZW5jZScsJ0EnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTQ2LDAzNjAwNCwzNywnYWJyb2dhdGluZycsJ0dhbmRoaWFuJywnc3luZGlj YXRlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE0NywwMzYwMDUsMzcsJ3NvcnRlcnMn LCdwZWFjb2NrJywnYWxpa2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTQ4LDAzODAw MSwzNywnQ29ubGV5JywnYmVlJywnaW1wZXJpYWwnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDE0OSwwMzgwMDIsMzcsJ2xlY3R1cmVkJywna2FuamknLCdjb252dWxzaW9uJywnQScpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNTAsMDM4MDAzLDM3LCdBYnJhaGFtJywnZGVudGFsJywn cmFpbHdheScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTUxLDAzODAwNCwzNywnSGF3 YWlpJywnc2NhcmYnLCd2YWxpZGF0ZScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTUy LDAzODAwNSwzNywnY2FnZScsJ2NoYXNtJywnbm9ybWFsaXplcycsJ0EnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTUzLDAzODAwNiwzNywnaHVzaGVzJywnaW5zb2xlbmNlJywnY29tcHJlaGVu c2l2ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNTQsMDM4MDA3LDM3LCdTaW1sYScs J3N5bmRpY2F0ZScsJ2NoZXdpbmcnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTU1LDAz ODAwOCwzNywncmVwb3J0ZXJzJywnYWxpa2UnLCdkZW5pemVuJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDE1NiwwMzgwMDksMzcsJ0R1dGNobWFuJywnaW1wZXJpYWwnLCdzY2hlbWVyJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE1NywwMzgwMTAsMzcsJ2Rlc2NlbmRhbnRzJywn Y29udnVsc2lvbicsJ2Nocm9uaWNsZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNTgs MDM4MDExLDM3LCdncm91cGluZ3MnLCdyYWlsd2F5JywnS2xpbmUnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTU5LDAzODAxMiwzNywnZGlzc29jaWF0ZScsJ3ZhbGlkYXRlJywnQW5hdG9s ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNjAsMDM4MDEzLDM3LCdjb2V4aXN0Jywn bm9ybWFsaXplcycsJ3BhcnRyaWRnZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTYx LDAzODAxNCwzNywnQmVlYmUnLCdjb21wcmVoZW5zaXZlJywnYnJ1bmNoJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDE2MiwwMzgwMTUsMzcsJ1Rhb2lzbScsJ2NoZXdpbmcnLCdyZWNydWl0 ZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTYzLDAzODAxNiwzNywnQ29ubmFsbHkn LCdkZW5pemVuJywnZGltZW5zaW9ucycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTY0 LDAzODAxNywzNywnZmV0Y2hlZCcsJ3NjaGVtZXInLCdDaGljYW5hJywnVycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgxNjUsMDM4MDE4LDM3LCdjaGVja3BvaW50cycsJ2Nocm9uaWNsZScsJ2Fu bm91bmNlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNjYsMDM4MTAxLDM3LCdydXN0 aW5nJywnS2xpbmUnLCdwcmFpc2VkJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE2 NywwMzgxMDIsMzcsJ2dhbGxpbmcnLCdBbmF0b2xlJywnZW1wbG95aW5nJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDE2OCwwMzgxMDMsMzcsJ29ibGl0ZXJhdGVzJywncGFydHJpZGdlcycs J2xpbmVhcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNjksMDM4MTA0LDM3LCd0cmFp dG9yJywnYnJ1bmNoJywncXVhZ21pcmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTcw LDAzODIwMSwzNywncmVzdW1lcycsJ3JlY3J1aXRlZCcsJ3dlc3Rlcm4nLCdBJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDE3MSwwMzgyMDIsMzcsJ2FuYWx5emFibGUnLCdkaW1lbnNpb25zJywn cmVsaXNoaW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE3MiwwMzgyMDMsMzcsJ3Rl cm1pbmF0b3InLCdDaGljYW5hJywnc2VydmluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMTczLDAzODIwNCwzNywnZ3JpdHR5JywnYW5ub3VuY2VkJywnc2NoZWR1bGluZycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNzQsMDM4MjA1LDM3LCdmaXJlYXJtJywncHJhaXNlZCcs J2xvcmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTc1LDAzODIwNiwzNywnbWluaW1h JywnZW1wbG95aW5nJywnZXZlbnRmdWwnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTc2 LDAzODIwOCwzNywnU2VsZnJpZGdlJywnbGluZWFyJywnYXJ0ZXJpb2xlJywnQScpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxNzcsMDQyODAxLDM3LCdkaXNhYmxlJywncXVhZ21pcmUnLCdkaXNl bnRhbmdsZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxNzgsMDQyODAyLDM3LCd3aXRj aGNyYWZ0Jywnd2VzdGVybicsJ2N1cmVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgx NzksMDQ2MTAxLDM3LCdiZXRyb3RoJywncmVsaXNoaW5nJywnRmVudG9uJywnVycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxODAsMDQ4MDAxLDM3LCdNYW5oYXR0YW5pemUnLCdzZXJ2aW5nJywn YXZvaWRhYmxlJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxODEsMDQ4MDAyLDM3LCdp bXByaW50Jywnc2NoZWR1bGluZycsJ2RyYWlucycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMTgyLDA0ODAwMywzNywncGVla2VkJywnbG9yZScsJ2RldGVjdGFibHknLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMTgzLDA0ODAwNCwzNywnc3dlbGxpbmcnLCdldmVudGZ1bCcs J2h1c2t5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE4NCwwNDgwMDUsMzcsJ2ludGVy cmVsYXRpb25zaGlwcycsJ2FydGVyaW9sZScsJ2ltcGVsbGluZycsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICgxODUsMDQ4MDA2LDM3LCdyaXNlcicsJ2Rpc2VudGFuZ2xlJywndW5kb2VzJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE4NiwwNDgwMDcsMzcsJ0dhbmRoaWFuJywnY3Vy ZWQnLCdldmVuZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTg3LDA0ODAwOCwzNywn cGVhY29jaycsJ0ZlbnRvbicsJ3NxdWVlemVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDE4OCwwNDgxMDEsMzcsJ2JlZScsJ2F2b2lkYWJsZScsJ2Rlc3Ryb3llcicsJ0ZBUycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgxODksMDQ4MTAyLDM3LCdrYW5qaScsJ2RyYWlucycsJ3J1ZGVu ZXNzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE5MCwwNDgyMDEsMzcsJ2RlbnRhbCcs J2RldGVjdGFibHknLCdiZWFuZXInLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTkx LDA0ODIwMiwzNywnc2NhcmYnLCdodXNreScsJ2Jvb3Jpc2gnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTkyLDA0ODIwMywzNywnY2hhc20nLCdpbXBlbGxpbmcnLCdFdmVyaGFydCcsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxOTMsMDQ4MjA0LDM3LCdpbnNvbGVuY2UnLCd1bmRv ZXMnLCdlbmNvbXBhc3MnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDE5NCwwNDgyMDUs MzcsJ3N5bmRpY2F0ZScsJ2V2ZW5lZCcsJ211c2hyb29tcycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgxOTUsMDQ4MzAxLDM3LCdhbGlrZScsJ3NxdWVlemVzJywnQWxpc29uJywnQScpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxOTYsMDQ4MzAyLDM3LCdpbXBlcmlhbCcsJ2Rlc3Ryb3ll cicsJ2V4dGVybmFsbHknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTk3LDA0ODMw MywzNywnY29udnVsc2lvbicsJ3J1ZGVuZXNzJywncGVsbGFncmEnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTk4LDA0ODMwNCwzNywncmFpbHdheScsJ2JlYW5lcicsJ2N1bHQnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTk5LDA0ODMwNSwzNywndmFsaWRhdGUnLCdib29yaXNo JywnY3JlZWsnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDIwMCwwNDg0MDEsMzcsJ25v cm1hbGl6ZXMnLCdFdmVyaGFydCcsJ0h1ZmZtYW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMjAxLDA0ODQwMiwzNywnY29tcHJlaGVuc2l2ZScsJ2VuY29tcGFzcycsJ01ham9yY2EnLCdG QVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjAyLDA0ODQwMywzNywnY2hld2luZycsJ211 c2hyb29tcycsJ2dvdmVybmluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjAzLDA0 ODQwNCwzNywnZGVuaXplbicsJ0FsaXNvbicsJ2dhZGZseScsJ0ZBUycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICgyMDQsMDQ4NDA1LDM3LCdzY2hlbWVyJywnZXh0ZXJuYWxseScsJ3JlYXNzaWdu ZWQnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjA1LDA0ODQwNiwzNywnY2hyb25p Y2xlJywncGVsbGFncmEnLCdpbnRlbnRuZXNzJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgyMDYsMDQ4NDA3LDM3LCdLbGluZScsJ2N1bHQnLCdjcmF6aW5lc3MnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoMjA3LDA0ODQwOCwzNywnQW5hdG9sZScsJ2NyZWVrJywncHN5Y2hpYycs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMDgsMDQ4NDA5LDM3LCdwYXJ0cmlkZ2VzJywn SHVmZm1hbicsJ3NxdWFiYmxlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMDksMDQ4 NDEwLDM3LCdicnVuY2gnLCdNYWpvcmNhJywnYnVybGVzcXVlJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDIxMCwwNDg0MTEsMzcsJ3JlY3J1aXRlZCcsJ2dvdmVybmluZycsJ2NhcHBlZCcs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMTEsMDQ4NDEyLDM3LCdkaW1lbnNpb25zJywn Z2FkZmx5JywnZXh0cmFjdGVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMTIsMDQ4 NDEzLDM3LCdDaGljYW5hJywncmVhc3NpZ25lZCcsJ0RpTWFnZ2lvJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDIxMywwNDg2MDEsMzcsJ2Fubm91bmNlZCcsJ2ludGVudG5lc3MnLCdleGNs YW1hdGlvbicsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMTQsMDQ4NjAyLDM3LCdw cmFpc2VkJywnY3JhemluZXNzJywnc3ViZGlyZWN0b3J5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDIxNSwwNDg2MDMsMzcsJ2VtcGxveWluZycsJ3BzeWNoaWMnLCdmYW5ncycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMTYsMDQ4NjA0LDM3LCdsaW5lYXInLCdzcXVhYmJsZWQn LCdidXllcicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjE3LDA0ODgwMSwzNywncXVh Z21pcmUnLCdidXJsZXNxdWUnLCdwaXRoaW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgyMTgsMDUwOTAxLDM3LCd3ZXN0ZXJuJywnY2FwcGVkJywndHJhbnNpc3Rvcml6aW5nJywnQScp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMTksMDUxMjAxLDM3LCdyZWxpc2hpbmcnLCdleHRy YWN0ZWQnLCdub25iaW9kZWdyYWRhYmxlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDIy MCwwNTYwMDIsMzcsJ3NlcnZpbmcnLCdEaU1hZ2dpbycsJ2Rpc2xvY2F0ZScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgyMjEsMDU2MDAzLDM3LCdzY2hlZHVsaW5nJywnZXhjbGFtYXRpb24n LCdtb25vY2hyb21hdGljJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDIyMiwwNTYw MDQsMzcsJ2xvcmUnLCdzdWJkaXJlY3RvcnknLCdiYXR0aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDIyMywwNTYxMDIsMzcsJ2V2ZW50ZnVsJywnZmFuZ3MnLCdwb3N0Y29uZGl0aW9u JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMjQsMDU2MjAzLDM3LCdhcnRlcmlvbGUn LCdidXllcicsJ2NhdGFsb2cnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjI1LDA1 NjIwNCwzNywnZGlzZW50YW5nbGUnLCdwaXRoaW5nJywnUmVtdXMnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMjI2LDA1ODAwMywzNywnY3VyZWQnLCd0cmFuc2lzdG9yaXppbmcnLCdkZXZp Y2VzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMjcsMDU4MDA0LDM3LCdGZW50b24n LCdub25iaW9kZWdyYWRhYmxlJywnYmlrZScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MjI4LDA1ODAwNSwzNywnYXZvaWRhYmxlJywnZGlzbG9jYXRlJywncXVhbGlmeScsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgyMjksMDU4MDA2LDM3LCdkcmFpbnMnLCdtb25vY2hyb21hdGlj JywnZGV0YWluZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjMwLDA1ODAwNywzNywn ZGV0ZWN0YWJseScsJ2JhdHRpbmcnLCdjb21tZW5kZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoMjMxLDA1ODEwMSwzNywnaHVza3knLCdwb3N0Y29uZGl0aW9uJywnY2l2aWxpemUnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjMyLDA1ODEwMiwzNywnaW1wZWxsaW5nJywnY2F0 YWxvZycsJ0VsbWh1cnN0JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDIzMywwNTgxMDMs MzcsJ3VuZG9lcycsJ1JlbXVzJywnYW5lc3RoZXRpemluZycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgyMzQsMDU4MTA1LDM3LCdldmVuZWQnLCdkZXZpY2VzJywnZGVhZicsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgyMzUsMDU4MTExLDM3LCdzcXVlZXplcycsJ2Jpa2UnLCdCcmln aGFtJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDIzNiwwNTgxMTIsMzcsJ2Rlc3Ryb3ll cicsJ3F1YWxpZnknLCd0aXRsZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMzcsMDU4 MTEzLDM3LCdydWRlbmVzcycsJ2RldGFpbmVkJywnY29hcnNlJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDIzOCwwNTgxMTQsMzcsJ2JlYW5lcicsJ2NvbW1lbmRlZCcsJ2NvbWJpbmF0aW9u cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyMzksMDU4MTE1LDM3LCdib29yaXNoJywn Y2l2aWxpemUnLCdncmF5bmVzcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNDAsMDU4 MTE2LDM3LCdFdmVyaGFydCcsJ0VsbWh1cnN0JywnaW5udW1lcmFibGUnLCdGQVMnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMjQxLDA1ODExNywzNywnZW5jb21wYXNzJywnYW5lc3RoZXRpemlu ZycsJ0Nhcm9saW5lJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNDIsMDU4MTE4LDM3 LCdtdXNocm9vbXMnLCdkZWFmJywnZmF0dHknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMjQzLDA1ODExOSwzNywnQWxpc29uJywnQnJpZ2hhbScsJ2Vhc3Rib3VuZCcsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgyNDQsMDU4MTIwLDM3LCdleHRlcm5hbGx5JywndGl0bGUnLCdp bmV4cGVyaWVuY2VkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI0NSwwNTgxMjEsMzcs J3BlbGxhZ3JhJywnY29hcnNlJywnaG9hcmRlcicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMjQ2LDA1ODEyMiwzNywnY3VsdCcsJ2NvbWJpbmF0aW9ucycsJ3Njb3RjaCcsJ1cnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMjQ3LDA1ODEyMywzNywnY3JlZWsnLCdncmF5bmVzcycsJ3Bh c3Nwb3J0JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNDgsMDU4MTI0LDM3LCdIdWZm bWFuJywnaW5udW1lcmFibGUnLCdzdHJhdGVnaWMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoMjQ5LDA1ODEyNSwzNywnTWFqb3JjYScsJ0Nhcm9saW5lJywnZ2F0ZWQnLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMjUwLDA1ODEyNiwzNywnZ292ZXJuaW5nJywnZmF0dHknLCdm bG9nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI1MSwwNTgxMjcsMzcsJ2dhZGZseScs J2Vhc3Rib3VuZCcsJ1BpcGVzdG9uZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNTIs MDU4MTI4LDM3LCdyZWFzc2lnbmVkJywnaW5leHBlcmllbmNlZCcsJ0RhcicsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgyNTMsMDU4MjAxLDM3LCdpbnRlbnRuZXNzJywnaG9hcmRlcicsJ0Nv cmNvcmFuJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI1NCwwNTgyMDIsMzcsJ2NyYXpp bmVzcycsJ3Njb3RjaCcsJ2ZseWVycycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjU1 LDA1ODMwMywzNywncHN5Y2hpYycsJ3Bhc3Nwb3J0JywnY29tcGV0aXRpb25zJywnVycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgyNTYsMDU4MzA0LDM3LCdzcXVhYmJsZWQnLCdzdHJhdGVnaWMn LCdzdXBwbGllcnMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjU3LDA1ODYwMiwz NywnYnVybGVzcXVlJywnZ2F0ZWQnLCdza2lwcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgyNTgsMDU4NjAzLDM3LCdjYXBwZWQnLCdmbG9nJywnaW5zdGl0dXRlcycsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgyNTksMDU4NjA0LDM3LCdleHRyYWN0ZWQnLCdQaXBlc3RvbmUnLCd0 cm9vcCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjYwLDA1ODYwNSwzNywnRGlNYWdn aW8nLCdEYXInLCdjb25uZWN0aXZlJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNjEs MDU4NjA2LDM3LCdleGNsYW1hdGlvbicsJ0NvcmNvcmFuJywnZGVuaWVzJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDI2MiwwNTg2MDcsMzcsJ3N1YmRpcmVjdG9yeScsJ2ZseWVycycsJ3Bv bGthJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI2MywwNjA0MDEsMzYsJ2ZhbmdzJywn Y29tcGV0aXRpb25zJywnb2JzZXJ2YXRpb25zJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDI2NCwwNjE3MDEsMzYsJ2J1eWVyJywnc3VwcGxpZXJzJywnYXNrZXJzJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDI2NSwwNjYyMDEsMzYsJ3BpdGhpbmcnLCdza2lwcycsJ2hvbWVs ZXNzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI2NiwwNjY1MDEsMzYsJ3RyYW5z aXN0b3JpemluZycsJ2luc3RpdHV0ZXMnLCdBbm5hJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDI2NywwNjgwMDEsMzYsJ25vbmJpb2RlZ3JhZGFibGUnLCd0cm9vcCcsJ3N1YmRpcmVjdG9y aWVzJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNjgsMDY4MDAyLDM2LCdkaXNsb2Nh dGUnLCdjb25uZWN0aXZlJywnZGVjYXlpbmcnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMjY5LDA2ODAwNSwzNiwnbW9ub2Nocm9tYXRpYycsJ2RlbmllcycsJ291dHdpdHRpbmcnLCdX Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI3MCwwNjgwMDYsMzYsJ2JhdHRpbmcnLCdwb2xr YScsJ0hhcnB5JywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNzEsMDY4MDA3LDM2LCdw b3N0Y29uZGl0aW9uJywnb2JzZXJ2YXRpb25zJywnY3JhemVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDI3MiwwNjgwMDgsMzYsJ2NhdGFsb2cnLCdhc2tlcnMnLCdzdWZmb2NhdGUnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjczLDA2ODAwOSwzNiwnUmVtdXMnLCdob21lbGVz cycsJ3Byb3ZlcnMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjc0LDA2ODAxMCwz NiwnZGV2aWNlcycsJ0FubmEnLCd0ZWNobmljYWxseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICgyNzUsMDY4MDExLDM2LCdiaWtlJywnc3ViZGlyZWN0b3JpZXMnLCdGcmFua2xpbml6YXRp b25zJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI3NiwwNjgyMDIsMzYsJ3F1YWxpZnkn LCdkZWNheWluZycsJ2NvbnNpZGVyZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjc3 LDA2ODMwMiwzNiwnZGV0YWluZWQnLCdvdXR3aXR0aW5nJywndGlubmlseScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgyNzgsMDY4MzAzLDM2LCdjb21tZW5kZWQnLCdIYXJweScsJ3VuaW50 ZXJydXB0ZWRseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyNzksMDY4NDAxLDM2LCdj aXZpbGl6ZScsJ2NyYXplZCcsJ3doaXN0bGVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgyODAsMDY4NTAxLDM2LCdFbG1odXJzdCcsJ3N1ZmZvY2F0ZScsJ2F1dG9tYXRlJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI4MSwwNjg1MDIsMzYsJ2FuZXN0aGV0aXppbmcnLCdwcm92 ZXJzJywnZ3V0dGluZycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjgyLDA2ODUwMywz NiwnZGVhZicsJ3RlY2huaWNhbGx5Jywnc3VycmVwdGl0aW91cycsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICgyODMsMDY4NjAyLDM2LCdCcmlnaGFtJywnRnJhbmtsaW5pemF0aW9ucycsJ0No b2N0YXcnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjg0LDA2ODYwMywzNiwndGl0bGUn LCdjb25zaWRlcmVkJywnY29va3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjg1LDA2 ODcwMSwzNiwnY29hcnNlJywndGlubmlseScsJ21pbGxpdm9sdCcsJ0ZBUycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgyODYsMDY4NzAyLDM2LCdjb21iaW5hdGlvbnMnLCd1bmludGVycnVwdGVk bHknLCdjb3VudGVycG9pc2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjg3LDA2ODcw MywzNiwnZ3JheW5lc3MnLCd3aGlzdGxlZCcsJ0dvdGhpY2lzbScsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICgyODgsMDc2MDAxLDM2LCdpbm51bWVyYWJsZScsJ2F1dG9tYXRlJywnZmVtaW5p bmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjg5LDA3NjAwMiwzNiwnQ2Fyb2xpbmUn LCdndXR0aW5nJywnbWV0YXBoeXNpY2FsbHknLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDI5MCwwNzYxMDEsMzYsJ2ZhdHR5Jywnc3VycmVwdGl0aW91cycsJ3NhbmRpbmcnLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI5MSwwNzYxMDIsMzYsJ2Vhc3Rib3VuZCcsJ0Nob2N0YXcn LCdjb250cmlidXRvcmlseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgyOTIsMDc2MTAz LDM2LCdpbmV4cGVyaWVuY2VkJywnY29va3MnLCdyZWNlaXZlcnMnLCdGQVMnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoMjkzLDA3NjMwMiwzNiwnaG9hcmRlcicsJ21pbGxpdm9sdCcsJ2Fkam91 cm4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMjk0LDA3NjMwMywzNiwnc2NvdGNoJywn Y291bnRlcnBvaXNlJywnc3RyYWdnbGVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgy OTUsMDc2MzA0LDM2LCdwYXNzcG9ydCcsJ0dvdGhpY2lzbScsJ2RydWdnaXN0cycsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgyOTYsMDc2MzA1LDM2LCdzdHJhdGVnaWMnLCdmZW1pbmluZScs J3RoYW5raW5nJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI5NywwNzYzMDYsMzYs J2dhdGVkJywnbWV0YXBoeXNpY2FsbHknLCdvc3RyaWNoJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDI5OCwwNzYzMDcsMzYsJ2Zsb2cnLCdzYW5kaW5nJywnaG9wZWxlc3NuZXNzJywnRkFT Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDI5OSwwNzY0MDIsMzYsJ1BpcGVzdG9uZScsJ2Nv bnRyaWJ1dG9yaWx5JywnRXVyeWRpY2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzAw LDA3NjUwMSwzNiwnRGFyJywncmVjZWl2ZXJzJywnZXhjaXRhdGlvbicsJ1cnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoMzAxLDA3NjUwMiwzNiwnQ29yY29yYW4nLCdhZGpvdXJuJywncHJlc3Vt ZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzAyLDA3NjcwMSwzNiwnZmx5ZXJz Jywnc3RyYWdnbGVkJywnaW1hZ2luYWJsZScsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgzMDMsMDc4MDAxLDM2LCdjb21wZXRpdGlvbnMnLCdkcnVnZ2lzdHMnLCdjb25jb2N0JywnVycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMDQsMDc4MDAyLDM2LCdzdXBwbGllcnMnLCd0aGFu a2luZycsJ3BlZXJpbmcnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMwNSwwNzgwMDMs MzYsJ3NraXBzJywnb3N0cmljaCcsJ1BoZWxwcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICgzMDYsMDc4MDA0LDM2LCdpbnN0aXR1dGVzJywnaG9wZWxlc3NuZXNzJywnZmVyb2Npb3Vz bmVzcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMDcsMDc4MDA1LDM2LCd0cm9v cCcsJ0V1cnlkaWNlJywnc2VudGVuY2VzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMw OCwwNzgwMDYsMzYsJ2Nvbm5lY3RpdmUnLCdleGNpdGF0aW9uJywndW5sb2NrcycsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgzMDksMDc4MDA3LDM2LCdkZW5pZXMnLCdwcmVzdW1lcycsJ2Vu Z3Jvc3NpbmcnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMxMCwwNzgwMDgsMzYsJ3Bv bGthJywnaW1hZ2luYWJsZScsJ1J1dGgnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzEx LDA3ODEwMSwzNiwnb2JzZXJ2YXRpb25zJywnY29uY29jdCcsJ3R5aW5nJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDMxMiwwNzgxMDMsMzYsJ2Fza2VycycsJ3BlZXJpbmcnLCdleGNsYWlt ZXJzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMxMywwNzgxMDQsMzYsJ2hvbWVsZXNz JywnUGhlbHBzJywnc3luZXJneScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMTQsMDc4 MTA1LDM2LCdBbm5hJywnZmVyb2Npb3VzbmVzcycsJ0h1ZXknLCdXJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDMxNSwwODIxMDEsMzYsJ3N1YmRpcmVjdG9yaWVzJywnc2VudGVuY2VzJywnbWVy Z2luZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMTYsMDgzNDAxLDM2LCdkZWNheWlu ZycsJ3VubG9ja3MnLCdqdWRnZXMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMxNyww ODQwMDEsMzYsJ291dHdpdHRpbmcnLCdlbmdyb3NzaW5nJywnU2h5bG9jaycsJ1cnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMzE4LDA4NDAwMiwzNiwnSGFycHknLCdSdXRoJywnTWlsdG9uaXNt JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMxOSwwODYwMDEsMzYsJ2NyYXplZCcsJ3R5 aW5nJywnaGVuJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMjAsMDg2MTAyLDM2LCdz dWZmb2NhdGUnLCdleGNsYWltZXJzJywnaG9uZXliZWUnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMzIxLDA4NjIwMSwzNiwncHJvdmVycycsJ3N5bmVyZ3knLCd0b3dlcnMnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzIyLDA4ODAwMSwzNiwndGVjaG5pY2FsbHknLCdIdWV5 JywnZGlsdXRlcycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzIzLDA4ODAwMiwzNiwn RnJhbmtsaW5pemF0aW9ucycsJ21lcmdpbmcnLCdudW1lcmFscycsJ0ZBUycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgzMjQsMDg4MDAzLDM2LCdjb25zaWRlcmVkJywnanVkZ2VzJywnZGVtb2Ny YWN5JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMyNSwwODgwMDQsMzYsJ3Rpbm5p bHknLCdTaHlsb2NrJywnSWJlcm8tJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMyNiww ODgxMDEsMzYsJ3VuaW50ZXJydXB0ZWRseScsJ01pbHRvbmlzbScsJ2ludmFsaWRzJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMyNywwODgxMDIsMzYsJ3doaXN0bGVkJywnaGVuJywnYmVo YXZpb3InLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzI4LDA4ODEwMywzNiwnYXV0b21h dGUnLCdob25leWJlZScsJ2FjY3J1aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMy OSwwODgxMDQsMzYsJ2d1dHRpbmcnLCd0b3dlcnMnLCdyZWxpY3MnLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDMzMCwwODgxMDUsMzYsJ3N1cnJlcHRpdGlvdXMnLCdkaWx1dGVzJywncmFj a2V0cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMzEsMDg4MTA2LDM2LCdDaG9jdGF3 JywnbnVtZXJhbHMnLCdGaXNjaGJlaW4nLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMz MiwwODgyMDEsMzYsJ2Nvb2tzJywnZGVtb2NyYWN5JywncGhvbnknLCdXJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDMzMywwODgyMDMsMzYsJ21pbGxpdm9sdCcsJ0liZXJvLScsJ2Nyb3NzJywn RkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDMzNCwwODgyMDQsMzYsJ2NvdW50ZXJwb2lz ZScsJ2ludmFsaWRzJywnY2xlYW51cCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMzUs MDg4MzAyLDM3LCdHb3RoaWNpc20nLCdiZWhhdmlvcicsJ2NvbnNwaXJhdG9yJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDMzNiwwODgzMDMsMzcsJ2ZlbWluaW5lJywnYWNjcnVpbmcnLCds YWJlbCcsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMzcsMDg4MzA1LDM3LCdtZXRh cGh5c2ljYWxseScsJ3JlbGljcycsJ3VuaXZlcnNpdHknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoMzM4LDA4ODQwMiwzNywnc2FuZGluZycsJ3JhY2tldHMnLCdjbGVhbnNlZCcsJ0ZBUycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzMzksMDg4NTAxLDM2LCdjb250cmlidXRvcmlseScs J0Zpc2NoYmVpbicsJ2JhbGxnb3duJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM0MCww ODg1MDIsMzYsJ3JlY2VpdmVycycsJ3Bob255Jywnc3RhcmxldCcsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICgzNDEsMDg4NTAzLDM2LCdhZGpvdXJuJywnY3Jvc3MnLCdhcXVlb3VzJywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM0MiwwOTgwMDEsNTgsJ3N0cmFnZ2xlZCcsJ2NsZWFu dXAnLCdwb3J0cmF5YWwnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM0MywwOTgwMDIs NTgsJ2RydWdnaXN0cycsJ2NvbnNwaXJhdG9yJywnZGVzcGlzaW5nJywnVycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgzNDQsMDk4MDAzLDU4LCd0aGFua2luZycsJ2xhYmVsJywnZGlzdG9ydCcs J1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzQ1LDA5ODAwNCw1OCwnb3N0cmljaCcsJ3Vu aXZlcnNpdHknLCdwYWxtZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzQ2LDA5ODAw NSw1OCwnaG9wZWxlc3NuZXNzJywnY2xlYW5zZWQnLCdmYWNlZCcsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICgzNDcsMDk4MDA2LDU4LCdFdXJ5ZGljZScsJ2JhbGxnb3duJywnc2lsdmVyd2Fy ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNDgsMTQxOTAzLDI5LCdleGNpdGF0aW9u Jywnc3RhcmxldCcsJ2Fzc2Vzc29yJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM0OSww OTgwMDgsNTgsJ3ByZXN1bWVzJywnYXF1ZW91cycsJ3NwaWRlcnMnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMzUwLDA5ODAwOSw1OCwnaW1hZ2luYWJsZScsJ3BvcnRyYXlhbCcsJ2FydGlm aWNpYWxseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNTEsMDk4MDEwLDU4LCdjb25j b2N0JywnZGVzcGlzaW5nJywncmVtaW5pc2NlbmNlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDM1MiwwOTgwMTEsNTgsJ3BlZXJpbmcnLCdkaXN0b3J0JywnTWV4aWNhbicsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgzNTMsMDk4MDEyLDU4LCdQaGVscHMnLCdwYWxtZWQnLCdvYm5v eGlvdXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzU0LDA5ODAxMyw1OCwnZmVyb2Np b3VzbmVzcycsJ2ZhY2VkJywnZnJhZ2lsZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgz NTUsMDk4MDE0LDU4LCdzZW50ZW5jZXMnLCdzaWx2ZXJ3YXJlJywnYXBwcmVoZW5zaWJsZScsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNTYsMDk4MDE1LDU4LCd1bmxvY2tzJywnYXNzZXNz b3InLCdiaXJ0aHMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzU3LDA5ODAxNiw1OCwn ZW5ncm9zc2luZycsJ3NwaWRlcnMnLCdnYXJhZ2VzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDM1OCwwOTgwMTcsNTgsJ1J1dGgnLCdhcnRpZmljaWFsbHknLCdwYW50eScsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgzNTksMDk4MDE4LDU4LCd0eWluZycsJ3JlbWluaXNjZW5jZScs J2FudGVhdGVyJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM2MCwwOTgwMTksNTgsJ2V4 Y2xhaW1lcnMnLCdNZXhpY2FuJywnZGlzcGxhY2VtZW50JywnQScpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgzNjEsMDk4MDIwLDU4LCdzeW5lcmd5Jywnb2Jub3hpb3VzJywnZHJvdmVycycsJ0En KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzYyLDA5ODAyMSw1OCwnSHVleScsJ2ZyYWdpbGUn LCdwYXRlbnRpbmcnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM2MywwOTgwMjIsNTgs J21lcmdpbmcnLCdhcHByZWhlbnNpYmxlJywnZmFyJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICgzNjQsMDk4MDIzLDU4LCdqdWRnZXMnLCdiaXJ0aHMnLCdzaHJpZWtzJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDM2NSwwOTgwMjQsNTgsJ1NoeWxvY2snLCdnYXJhZ2VzJywnYWxp Z25pbmcnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM2NiwwOTgwMjUsMzcsJ01pbHRv bmlzbScsJ3BhbnR5JywncHJhZ21hdGlzbScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgz NjcsMTA2MDAxLDM2LCdoZW4nLCdhbnRlYXRlcicsJ2ZldmVycycsJ1cnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMzY4LDEwODAwMSwzNiwnaG9uZXliZWUnLCdkaXNwbGFjZW1lbnQnLCdyZWV4 YW1pbmVzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNjksMTA4MDAyLDM2LCd0b3dl cnMnLCdkcm92ZXJzJywnb2NjdXBhbmNpZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MzcwLDEwODAwMywzNiwnZGlsdXRlcycsJ3BhdGVudGluZycsJ3N3ZWF0cycsJ0ZBUycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgzNzEsMTA4MDA0LDM2LCdudW1lcmFscycsJ2ZhcicsJ21vZHVs YXRvcnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzcyLDEwODAwNSwzNiwnZGVtb2Ny YWN5Jywnc2hyaWVrcycsJ2RlbWFuZCcsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzcz LDEwODAwNywzNiwnSWJlcm8tJywnYWxpZ25pbmcnLCdNYWRlaXJhJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDM3NCwxMDgwMDgsMzYsJ2ludmFsaWRzJywncHJhZ21hdGlzbScsJ1ZpZW5u ZXNlJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNzUsMTA4MDA5LDM2LCdiZWhhdmlv cicsJ2ZldmVycycsJ2NoaWxsaWVyJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNzYs MTA4MDEwLDM2LCdhY2NydWluZycsJ3JlZXhhbWluZXMnLCd3aWxkY2F0cycsJ0ZBUycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgzNzcsMTA4MDExLDM2LCdyZWxpY3MnLCdvY2N1cGFuY2llcycs J2dlbnRsZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNzgsMTA4MDEyLDM2LCdyYWNr ZXRzJywnc3dlYXRzJywnQW5nbGVzJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzNzks MTA4MTAxLDM2LCdGaXNjaGJlaW4nLCdtb2R1bGF0b3JzJywnYWNjdXJhY2llcycsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgzODAsMTA4MTAyLDM2LCdwaG9ueScsJ2RlbWFuZCcsJ3RvZ2ds ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzODEsMTA4MTAzLDM2LCdjcm9zcycsJ01h ZGVpcmEnLCdNZW5kZWxzc29obicsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzgyLDEw ODExMSw1MCwnY2xlYW51cCcsJ1ZpZW5uZXNlJywnYmVoYXZpb3JhbGx5JywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDM4MywxMDgxMDUsMzYsJ2NvbnNwaXJhdG9yJywnY2hpbGxpZXInLCdS b2NoZm9yZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzODQsMTA4MTA2LDM2LCdsYWJl bCcsJ3dpbGRjYXRzJywnbWlycm9yJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzODUs MTA4MTA3LDM2LCd1bml2ZXJzaXR5JywnZ2VudGxlJywnTW9kdWxhJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDM4NiwxMDgxMDgsNTAsJ2NsZWFuc2VkJywnQW5nbGVzJywnY2xvYmJlcmlu ZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzODcsMTA4MTA5LDM2LCdiYWxsZ293bics J2FjY3VyYWNpZXMnLCdjaHJvbm9ncmFwaHknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo Mzg4LDEwODExMCwzNiwnc3RhcmxldCcsJ3RvZ2dsZScsJ0Vza2ltb2l6ZWRzJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDM4OSwxMDgyMDEsMzYsJ2FxdWVvdXMnLCdNZW5kZWxzc29obics J0JyaXRpc2gnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM5MCwxMDgyMDIsMzYsJ3Bv cnRyYXlhbCcsJ2JlaGF2aW9yYWxseScsJ3BpdGZhbGxzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDM5MSwxMDgyMDMsMzYsJ2Rlc3Bpc2luZycsJ1JvY2hmb3JkJywndmVyaWZ5JywnVycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzOTIsMTA4MjA0LDM2LCdkaXN0b3J0JywnbWlycm9y Jywnc2NhdHRlcicsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgzOTMsMTA4MjA1LDM2 LCdwYWxtZWQnLCdNb2R1bGEnLCdBenRlY2FuJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDM5NCwxMDgzMDEsMzYsJ2ZhY2VkJywnY2xvYmJlcmluZycsJ2FjdWl0eScsJ1cnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMzk1LDEwODMwMiwzNiwnc2lsdmVyd2FyZScsJ2Nocm9ub2dyYXBo eScsJ3NpbmtpbmcnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDM5NiwxMTIxMDEsMzYs J2Fzc2Vzc29yJywnRXNraW1vaXplZHMnLCdiZWFzdHMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMzk3LDExMjEwMiwzNiwnc3BpZGVycycsJ0JyaXRpc2gnLCdXaXR0JywnVycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgzOTgsMTEzNzAxLDM2LCdhcnRpZmljaWFsbHknLCdwaXRm YWxscycsJ3BoeXNpY2lzdHMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMzk5LDEx NjAwMSwzNiwncmVtaW5pc2NlbmNlJywndmVyaWZ5JywnZm9sa3NvbmcnLCdBJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDQwMCwxMTYyMDEsMzYsJ01leGljYW4nLCdzY2F0dGVyJywnc3Ryb2tl cycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MDEsMTE2MzAxLDM2LCdvYm5veGlv dXMnLCdBenRlY2FuJywnY3Jvd2RlcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MDIs MTE2MzAyLDM2LCdmcmFnaWxlJywnYWN1aXR5JywnbWVycnknLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNDAzLDExNjYwMSwzNiwnYXBwcmVoZW5zaWJsZScsJ3NpbmtpbmcnLCdjYWRlbmNl ZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MDQsMTE2NjAyLDM2LCdiaXJ0aHMnLCdi ZWFzdHMnLCdhbGltb255JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MDUsMTE2NjAz LDM2LCdnYXJhZ2VzJywnV2l0dCcsJ3ByaW5jaXBsZWQnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDQwNiwxMTY3MDEsMzYsJ3BhbnR5JywncGh5c2ljaXN0cycsJ2dvbGZpbmcnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDA3LDExNjcwMiwzNiwnYW50ZWF0ZXInLCdmb2xrc29u ZycsJ3VuZGlzY292ZXJlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MDgsMTE4MDAx LDM2LCdkaXNwbGFjZW1lbnQnLCdzdHJva2VzJywnaXJyaXRhdGVzJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDQwOSwxMTgwMDIsMzYsJ2Ryb3ZlcnMnLCdjcm93ZGVyJywncGF0cmlvdHMn LCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQxMCwxMTgwMDMsMzYsJ3BhdGVudGluZycs J21lcnJ5Jywncm9vbXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDExLDExODAw NCwzNiwnZmFyJywnY2FkZW5jZWQnLCd0b3dlcmluZycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNDEyLDExODAwNSwzNiwnc2hyaWVrcycsJ2FsaW1vbnknLCdkaXNwbGVhc2UnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDEzLDExODAwNiwzNiwnYWxpZ25pbmcnLCdwcmluY2lw bGVkJywncGhvdG9zZW5zaXRpdmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDE0LDEx ODAwNywzNiwncHJhZ21hdGlzbScsJ2dvbGZpbmcnLCdpbmtpbmcnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNDE1LDExODAwOCwzNiwnZmV2ZXJzJywndW5kaXNjb3ZlcmVkJywnZ2FpbmVy cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MTYsMTE4MTAxLDM2LCdyZWV4YW1pbmVz JywnaXJyaXRhdGVzJywnbGVhbmluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDE3 LDExODEwMiwzNiwnb2NjdXBhbmNpZXMnLCdwYXRyaW90cycsJ2h5ZHJhbnQnLCdBJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDQxOCwxMTgxMDMsMzYsJ3N3ZWF0cycsJ3Jvb21zJywncHJlc2Vy dmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDE5LDExODIwMiwzNiwnbW9kdWxhdG9y cycsJ3Rvd2VyaW5nJywnYmxpbmRlZCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDIw LDExODIwMywzNiwnZGVtYW5kJywnZGlzcGxlYXNlJywnaW50ZXJhY3Rpb25zJywnQScpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg0MjEsMTE4MjA0LDM2LCdNYWRlaXJhJywncGhvdG9zZW5zaXRp dmUnLCdCYXJyeScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MjIsMTE4MzAyLDM2LCdW aWVubmVzZScsJ2lua2luZycsJ3doaXRlbmVzcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNDIzLDExODMwNCwzNiwnY2hpbGxpZXInLCdnYWluZXJzJywncGFzdGltZXMnLCdXJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQyNCwxMTgzMDUsMzYsJ3dpbGRjYXRzJywnbGVhbmluZycs J0VkZW5pemF0aW9uJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQyNSwxMTgzMDYsMzYs J2dlbnRsZScsJ2h5ZHJhbnQnLCdNdXNjYXQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NDI2LDExODMwNywzNiwnQW5nbGVzJywncHJlc2VydmUnLCdhc3Nhc3NpbmF0ZWQnLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNDI3LDEyMzEwMSwzNiwnYWNjdXJhY2llcycsJ2JsaW5kZWQn LCdsYWJlbGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQyOCwxMjMxMDIsMzYsJ3Rv Z2dsZScsJ2ludGVyYWN0aW9ucycsJ2dsYWNpYWwnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDQyOSwxMjMzMDEsMzYsJ01lbmRlbHNzb2huJywnQmFycnknLCdpbXBsaWVkJywnVycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MzAsMTI2MDAxLDM2LCdiZWhhdmlvcmFsbHknLCd3aGl0 ZW5lc3MnLCdiaWJsaW9ncmFwaGllcycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDMx LDEyNjAwMiwzNiwnUm9jaGZvcmQnLCdwYXN0aW1lcycsJ0J1Y2hhbmFuJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDQzMiwxMjYwMDMsMzYsJ21pcnJvcicsJ0VkZW5pemF0aW9uJywnZm9y Z2l2YWJseScsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MzMsMTI2MTAxLDM2LCdN b2R1bGEnLCdNdXNjYXQnLCdpbm51ZW5kbycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NDM0LDEyNjMwMSwzNiwnY2xvYmJlcmluZycsJ2Fzc2Fzc2luYXRlZCcsJ2RlbicsJ0ZBUycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0MzUsMTI2MzAyLDM2LCdjaHJvbm9ncmFwaHknLCdsYWJl bGVkJywnc3VibWFyaW5lcycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDM2LDEyNjQw MiwzNiwnRXNraW1vaXplZHMnLCdnbGFjaWFsJywnbW91dGhmdWwnLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDQzNywxMjY2MDEsMzYsJ0JyaXRpc2gnLCdpbXBsaWVkJywnZXhwaXJpbmcn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDM4LDEyNjYwMiwzNiwncGl0ZmFsbHMnLCdi aWJsaW9ncmFwaGllcycsJ3VuZnVsZmlsbGVkJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDQzOSwxMjY3MDIsMzYsJ3ZlcmlmeScsJ0J1Y2hhbmFuJywncHJlY2Vzc2lvbicsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NDAsMTI4MDAxLDM2LCdzY2F0dGVyJywnZm9yZ2l2YWJs eScsJ251bGxpZmllZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NDEsMTI4MDAyLDM2 LCdBenRlY2FuJywnaW5udWVuZG8nLCdhZmZlY3RzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDQ0MiwxMjgwMDMsMzYsJ2FjdWl0eScsJ2RlbicsJ0N5bnRoaWEnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNDQzLDEyODAwNCwzNiwnc2lua2luZycsJ3N1Ym1hcmluZXMnLCdDaGFi bGlzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NDQsMTI4MDA1LDM2LCdiZWFzdHMn LCdtb3V0aGZ1bCcsJ2JldHRlcm1lbnRzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDQ0NSwxMjgwMDcsMzYsJ1dpdHQnLCdleHBpcmluZycsJ2FkdmVydGlzaW5nJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDQ0NiwxMjgwMDgsMzYsJ3BoeXNpY2lzdHMnLCd1bmZ1bGZpbGxl ZCcsJ3J1YmllcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDQ3LDEyODAwOSwzNiwn Zm9sa3NvbmcnLCdwcmVjZXNzaW9uJywnc291dGh3ZXN0JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDQ0OCwxMjgwMTAsMzYsJ3N0cm9rZXMnLCdudWxsaWZpZWQnLCdzdXBlcnN0aXRp b3VzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NDksMTI4MDExLDM2LCdjcm93ZGVy JywnYWZmZWN0cycsJ3RhYmVybmFjbGUnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ1 MCwxMjgwMTIsMzYsJ21lcnJ5JywnQ3ludGhpYScsJ3NpbGsnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDQ1MSwxMjgwMTMsMzYsJ2NhZGVuY2VkJywnQ2hhYmxpcycsJ2hhbmRzb21lc3Qn LCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ1MiwxMjgwMTQsMzYsJ2FsaW1vbnknLCdi ZXR0ZXJtZW50cycsJ1BlcnNpYW4nLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ1Mywx MjgwMTUsMzYsJ3ByaW5jaXBsZWQnLCdhZHZlcnRpc2luZycsJ2FuYWxvZycsJ1cnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNDU0LDEyODAxNiwzNiwnZ29sZmluZycsJ3J1YmllcycsJ2NvbXBs ZXgnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ1NSwxMjgwMTcsMzYsJ3VuZGlzY292 ZXJlZCcsJ3NvdXRod2VzdCcsJ1Rhb2lzdCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0 NTYsMTI4MDE4LDM2LCdpcnJpdGF0ZXMnLCdzdXBlcnN0aXRpb3VzJywnc3VzcGVuZCcsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NTcsMTI4MDE5LDM2LCdwYXRyaW90cycsJ3RhYmVybmFj bGUnLCdyZWxlZ2F0ZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDU4LDEyODAyMCwz Niwncm9vbXMnLCdzaWxrJywnYXdlc29tZScsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NDU5LDEyODAyMSwzNiwndG93ZXJpbmcnLCdoYW5kc29tZXN0JywnQnJ1eGVsbGVzJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ2MCwxMjgwMjIsMzYsJ2Rpc3BsZWFzZScsJ1BlcnNpYW4n LCdpbXByZWNpc2VseScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDYxLDEyODAyMywz NiwncGhvdG9zZW5zaXRpdmUnLCdhbmFsb2cnLCd0ZWxldmlzZScsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg0NjIsMTI4MTAxLDM2LCdpbmtpbmcnLCdjb21wbGV4JywnYnJha2luZycsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NjMsMTI4MTAyLDM2LCdnYWluZXJzJywnVGFvaXN0 JywndHJ1ZScsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NjQsMTI4MTAzLDM2LCds ZWFuaW5nJywnc3VzcGVuZCcsJ2Rpc2FwcG9pbnRpbmcnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNDY1LDEyODEwNCwzNiwnaHlkcmFudCcsJ3JlbGVnYXRlZCcsJ25hdmFsbHknLCdX Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ2NiwxMjgxMDYsMzYsJ3ByZXNlcnZlJywnYXdl c29tZScsJ2NpcmN1cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NjcsMTI4MTA3LDM2 LCdibGluZGVkJywnQnJ1eGVsbGVzJywnYmVldGxlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg0NjgsMTI4MTA4LDM2LCdpbnRlcmFjdGlvbnMnLCdpbXByZWNpc2VseScsJ3RydW1wcycs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NjksMTI4MjAyLDM2LCdCYXJyeScsJ3RlbGV2 aXNlJywnZm91cnNjb3JlJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NzAsMTI4MjAz LDM2LCd3aGl0ZW5lc3MnLCdicmFraW5nJywnQmxhY2tmb290cycsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg0NzEsMTI4MzAxLDM2LCdwYXN0aW1lcycsJ3RydWUnLCdHcmFkeScsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0NzIsMTI4MzAyLDM2LCdFZGVuaXphdGlvbicsJ2Rpc2Fw cG9pbnRpbmcnLCdxdWlldHMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDczLDEy ODMwMywzNiwnTXVzY2F0JywnbmF2YWxseScsJ2Zsb3VuZGVyZWQnLCdGQVMnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNDc0LDEyODMwNCwzNiwnYXNzYXNzaW5hdGVkJywnY2lyY3VzJywncHJv ZnVuZGl0eScsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDc1LDEyODMwNSwzNiwnbGFi ZWxlZCcsJ2JlZXRsZXMnLCdHYXJyaXNvbmlhbicsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNDc2LDEyODMwNywzNiwnZ2xhY2lhbCcsJ3RydW1wcycsJ1N0cmF1c3MnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNDc3LDEyODQwMSwzNiwnaW1wbGllZCcsJ2ZvdXJzY29yZScsJ2Nl bWVudGVkJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ3OCwxMjg1MDIsMzYsJ2Jp Ymxpb2dyYXBoaWVzJywnQmxhY2tmb290cycsJ2NvbnRyaXRpb24nLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDQ3OSwxMjg1MDMsMzYsJ0J1Y2hhbmFuJywnR3JhZHknLCdtdXRhdGlvbnMn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDgwLDEyODUwNCwzNiwnZm9yZ2l2YWJseScs J3F1aWV0cycsJ2V4aGliaXRzJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0ODEsMTI4 NTA1LDM2LCdpbm51ZW5kbycsJ2Zsb3VuZGVyZWQnLCd0aXRzJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDQ4MiwxMjg2MDEsMzYsJ2RlbicsJ3Byb2Z1bmRpdHknLCdtYXRlJywnQScpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0ODMsMTI4NjAzLDM2LCdzdWJtYXJpbmVzJywnR2Fycmlz b25pYW4nLCdhcmNoZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDg0LDEyODYwNCwz NiwnbW91dGhmdWwnLCdTdHJhdXNzJywnTW9sbCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg0ODUsMTI4NzAyLDM2LCdleHBpcmluZycsJ2NlbWVudGVkJywncm9wZXJzJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDQ4NiwxMjg3MDMsMzYsJ3VuZnVsZmlsbGVkJywnY29udHJpdGlv bicsJ2JvbWJhc3QnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDg3LDEyODcwNCwzNiwn cHJlY2Vzc2lvbicsJ211dGF0aW9ucycsJ2RpZmZpY3VsdGx5JywnQScpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg0ODgsMTM4MDAxLDM2LCdudWxsaWZpZWQnLCdleGhpYml0cycsJ2Fkc29ycHRp b24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDg5LDEzODAwMiwzNiwnYWZmZWN0cycs J3RpdHMnLCdkZWZpbml0ZW5lc3MnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDkw LDEzODAwMywzNiwnQ3ludGhpYScsJ21hdGUnLCdjdWx0aXZhdGlvbicsJ0EnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNDkxLDEzODAwNCwzNiwnQ2hhYmxpcycsJ2FyY2hlcycsJ2hlYWxzJywn QScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0OTIsMTM4MDA1LDM2LCdiZXR0ZXJtZW50cycs J01vbGwnLCdIZXVzZW4nLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDQ5MywxMzgwMDYs MzYsJ2FkdmVydGlzaW5nJywncm9wZXJzJywndGFyZ2V0JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDQ5NCwxMzgwMDcsMzYsJ3J1YmllcycsJ2JvbWJhc3QnLCdjaXRlZCcsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNDk1LDEzODAwOCwzNiwnc291dGh3ZXN0JywnZGlmZmlj dWx0bHknLCdjb25ncmVzc3dvbWFuJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0OTYs MTM4MDA5LDM2LCdzdXBlcnN0aXRpb3VzJywnYWRzb3JwdGlvbicsJ0thdGhlcmluZScsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg0OTcsMTM4MTAyLDM2LCd0YWJlcm5hY2xlJywnZGVmaW5p dGVuZXNzJywndGl0dGVyJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg0OTgsMTM4MTAz LDM2LCdzaWxrJywnY3VsdGl2YXRpb24nLCdhc3BpcmUnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDQ5OSwxMzgxMDQsMzYsJ2hhbmRzb21lc3QnLCdoZWFscycsJ01hcmRpcycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MDAsMTM4MTA1LDM2LCdQZXJzaWFuJywnSGV1c2VuJywn TmFkaWEnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUwMSwxMzgyMDEsMzYsJ2FuYWxv ZycsJ3RhcmdldCcsJ2VzdGltYXRpbmcnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NTAyLDEzODMwMiwzNiwnY29tcGxleCcsJ2NpdGVkJywnc3R1Y2snLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDUwMywxMzgzMDMsMzYsJ1Rhb2lzdCcsJ2NvbmdyZXNzd29tYW4nLCdmaWZ0 ZWVudGgnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUwNCwxMzgzMDQsMzYsJ3N1c3Bl bmQnLCdLYXRoZXJpbmUnLCdDb2xvbWJvJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUw NSwxMzg0MDEsMjksJ3JlbGVnYXRlZCcsJ3RpdHRlcicsJ3N1cnZleScsJ0EnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNTA2LDE0MDEwMiwyOSwnYXdlc29tZScsJ2FzcGlyZScsJ3N0YWZmaW5n JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUwNywxNDAxMDMsMjksJ0JydXhlbGxlcycs J01hcmRpcycsJ29idGFpbicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MDgsMTQwMTA0 LDI5LCdpbXByZWNpc2VseScsJ05hZGlhJywnbG9hZGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDUwOSwxNDAxMDUsMjksJ3RlbGV2aXNlJywnZXN0aW1hdGluZycsJ3NsYXVnaHRlcmVk JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUxMCwxNDAyMDEsMjksJ2JyYWtpbmcnLCdz dHVjaycsJ2xpZ2h0cycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTExLDE0MDcwMSwy OSwndHJ1ZScsJ2ZpZnRlZW50aCcsJ2NpcmN1bWZlcmVuY2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNTEyLDE0MTUwMSwyOSwnZGlzYXBwb2ludGluZycsJ0NvbG9tYm8nLCdkdWxsJywn QScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MTMsMTQxNTAyLDI5LCduYXZhbGx5Jywnc3Vy dmV5Jywnd2Vla2x5JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MTQsMTQxOTAxLDI5 LCdjaXJjdXMnLCdzdGFmZmluZycsJ3dldG5lc3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNTE1LDE0MTkwMiwyOSwnYmVldGxlcycsJ29idGFpbicsJ3Zpc3VhbGl6ZWQnLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNTE2LDE0MjEwMSwyOSwndHJ1bXBzJywnbG9hZGVkJywnVGFu bmVuYmF1bScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MTcsMTQyMTAyLDI5LCdmb3Vy c2NvcmUnLCdzbGF1Z2h0ZXJlZCcsJ21vcmlidW5kJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDUxOCwxNDIxMDMsMjksJ0JsYWNrZm9vdHMnLCdsaWdodHMnLCdkZW11bHRpcGxleCcsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MTksMTQyNzAxLDI5LCdHcmFkeScsJ2NpcmN1bWZl cmVuY2UnLCdsb2NraW5ncycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MjAsMTQzMDAx LDI5LCdxdWlldHMnLCdkdWxsJywndGh1Z3MnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNTIxLDE0MzUwMSwyOSwnZmxvdW5kZXJlZCcsJ3dlZWtseScsJ3VubmVydmVzJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUyMiwxNDM1MDIsMjksJ3Byb2Z1bmRpdHknLCd3ZXRuZXNz JywnYWJ1dCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MjMsMTQ4MDAxLDI5LCdHYXJy aXNvbmlhbicsJ3Zpc3VhbGl6ZWQnLCdDaGlwcGV3YScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNTI0LDE0ODAwMiwyOSwnU3RyYXVzcycsJ1Rhbm5lbmJhdW0nLCdzdHJhdGlmaWNhdGlv bnMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUyNSwxNDgwMDMsMjksJ2NlbWVudGVk JywnbW9yaWJ1bmQnLCdzaWduYWxlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MjYs MTQ4MDA0LDI5LCdjb250cml0aW9uJywnZGVtdWx0aXBsZXgnLCdJdGFsaWFuaXplcycsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTI3LDE0ODAwNSwyOSwnbXV0YXRpb25zJywnbG9ja2lu Z3MnLCdhbGdvcml0aG1pYycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTI4LDE0ODAw NiwyOSwnZXhoaWJpdHMnLCd0aHVncycsJ3BhcmFub2lkJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDUyOSwxNDgwMDcsMjksJ3RpdHMnLCd1bm5lcnZlcycsJ2NhbXBpbmcnLCdBJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUzMCwxNDgwMDksMjksJ21hdGUnLCdhYnV0Jywnc2ln bmlmeWluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTMxLDE0ODAxMCwyOSwnYXJj aGVzJywnQ2hpcHBld2EnLCdQYXRyaWNlJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1 MzIsMTQ4MDExLDI5LCdNb2xsJywnc3RyYXRpZmljYXRpb25zJywnc2VhcmNoJywnQScpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg1MzMsMTQ4MDEyLDI5LCdyb3BlcnMnLCdzaWduYWxlZCcsJ0Fu Z2VsZXMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDUzNCwxNDgwMTMsMjksJ2JvbWJh c3QnLCdJdGFsaWFuaXplcycsJ3NlbWJsYW5jZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg1MzUsMTQ4MDIzLDM2LCdkaWZmaWN1bHRseScsJ2FsZ29yaXRobWljJywndGF4ZWQnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTM2LDE0ODAxNSwyOSwnYWRzb3JwdGlvbicsJ3BhcmFu b2lkJywnQmVhdHJpY2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTM3LDE0ODAxNiwy OSwnZGVmaW5pdGVuZXNzJywnY2FtcGluZycsJ3JldHJhY2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNTM4LDE0ODAxNywyOSwnY3VsdGl2YXRpb24nLCdzaWduaWZ5aW5nJywnbG9ja291 dCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MzksMTQ4MDE4LDI5LCdoZWFscycsJ1Bh dHJpY2UnLCdncmFtbWF0aWMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTQwLDE0ODAx OSwyOSwnSGV1c2VuJywnc2VhcmNoJywnaGVsbXNtYW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNTQxLDE0ODAyMCwyOSwndGFyZ2V0JywnQW5nZWxlcycsJ3VuaWZvcm0nLCdXJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU0MiwxNDgwMjEsMjksJ2NpdGVkJywnc2VtYmxhbmNlJywn aGFtbWluZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NDMsMTQ4MDIyLDI5LCdjb25n cmVzc3dvbWFuJywndGF4ZWQnLCdkaXNvYmVkaWVuY2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNTQ0LDE0ODEwMSwyOSwnS2F0aGVyaW5lJywnQmVhdHJpY2UnLCdjYXB0aXZhdGVkJywn QScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NDUsMTQ4MTAyLDI5LCd0aXR0ZXInLCdyZXRy YWNlJywndHJhbnNmZXJhbHMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU0NiwxNDgy MDEsMjksJ2FzcGlyZScsJ2xvY2tvdXQnLCdjYXJ0b2dyYXBoZXInLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDU0NywxNDg0MDEsMjksJ01hcmRpcycsJ2dyYW1tYXRpYycsJ2FpbXMnLCdG QVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTQ4LDE0ODQwMiwyOSwnTmFkaWEnLCdoZWxt c21hbicsJ1Bha2lzdGFuaScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NDksMTQ4NTAx LDI5LCdlc3RpbWF0aW5nJywndW5pZm9ybScsJ2J1cmdsYXJpemVkJywnRkFTJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDU1MCwxNDg1MDIsMjksJ3N0dWNrJywnaGFtbWluZycsJ3NhdWNlcGFu cycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTUxLDE0ODUwMywyOSwnZmlmdGVlbnRo JywnZGlzb2JlZGllbmNlJywnbGFjZXJhdGluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNTUyLDE0ODUwNCwyOSwnQ29sb21ibycsJ2NhcHRpdmF0ZWQnLCdjb3JueScsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg1NTMsMTQ4NjAxLDI5LCdzdXJ2ZXknLCd0cmFuc2ZlcmFscycs J21lZ2FieXRlcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NTQsMTQ4NjAyLDI5 LCdzdGFmZmluZycsJ2NhcnRvZ3JhcGhlcicsJ2NoYW5jZWxsb3InLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNTU1LDE1MDcwMSwyOSwnb2J0YWluJywnYWltcycsJ2J1bGsnLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU1NiwxNTIxMDEsMjksJ2xvYWRlZCcsJ1Bha2lzdGFuaScs J2NvbW1pdHMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU1NywxNTIxMDIsMjksJ3Ns YXVnaHRlcmVkJywnYnVyZ2xhcml6ZWQnLCdtZXNvbicsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNTU4LDE1NTIwMiwzNiwnbGlnaHRzJywnc2F1Y2VwYW5zJywnZGVwdXRpZXMnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTU5LDE1NTIwMywyOSwnY2lyY3VtZmVyZW5jZScsJ2xh Y2VyYXRpbmcnLCdub3J0aGVhc3RlcicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTYw LDE1NTIwNCwyOSwnZHVsbCcsJ2Nvcm55JywnZGlwb2xlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDU2MSwxNTUyMDUsMjksJ3dlZWtseScsJ21lZ2FieXRlcycsJ21hY2hpbmluZycsJzAn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTYyLDE1NjAwMSwyOSwnd2V0bmVzcycsJ2NoYW5j ZWxsb3InLCd0aGVyZWZvcmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTYzLDE1NjAw MiwyOSwndmlzdWFsaXplZCcsJ2J1bGsnLCdUZWxlZnVua2VuJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDU2NCwxNTYxMDIsMjksJ1Rhbm5lbmJhdW0nLCdjb21taXRzJywnc2FsdmFnaW5n JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU2NSwxNTYzMDEsMjksJ21vcmlidW5kJywn bWVzb24nLCdDb3JpbnRoaWFuaXplcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTY2 LDE1NjMwMiwyOSwnZGVtdWx0aXBsZXgnLCdkZXB1dGllcycsJ3Jlc3RsZXNzbHknLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU2NywxNTYzMDMsMjksJ2xvY2tpbmdzJywnbm9ydGhlYXN0 ZXInLCdicm9taWRlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NjgsMTU2MzA0LDI5 LCd0aHVncycsJ2RpcG9sZScsJ2dlbmVyYWxpemVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg1NjksMTU2MzA1LDI5LCd1bm5lcnZlcycsJ21hY2hpbmluZycsJ21pc2hhcHMnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTcwLDE1NjMwNiwyOSwnYWJ1dCcsJ3RoZXJlZm9yZScs J3F1ZWxsaW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU3MSwxNTY1MDEsMjksJ0No aXBwZXdhJywnVGVsZWZ1bmtlbicsJ3NwaXJpdHVhbCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNTcyLDE1ODAwMSwyOSwnc3RyYXRpZmljYXRpb25zJywnc2FsdmFnaW5nJywnYmVndWls ZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTczLDE1ODAwMiwyOSwnc2lnbmFs ZWQnLCdDb3JpbnRoaWFuaXplcycsJ1Ryb2JyaWFuZCcsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg1NzQsMTU4MTAxLDI5LCdJdGFsaWFuaXplcycsJ3Jlc3RsZXNzbHknLCdmbGVlaW5n JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NzUsMTU4MTAyLDI5LCdhbGdvcml0aG1p YycsJ2Jyb21pZGVzJywnQXJtb3VyJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NzYs MTU4MTAzLDI5LCdwYXJhbm9pZCcsJ2dlbmVyYWxpemVkJywnY2hpbicsJ0EnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNTc3LDE1ODIwMSwyOSwnY2FtcGluZycsJ21pc2hhcHMnLCdwcm92ZXJz JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1NzgsMTU4MjAyLDI5LCdzaWduaWZ5aW5n JywncXVlbGxpbmcnLCdhZXJvbmF1dGljJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1 NzksMTU4MjAzLDI5LCdQYXRyaWNlJywnc3Bpcml0dWFsJywndm9sdGFnZScsJ1cnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNTgwLDE1ODIwNCwyOSwnc2VhcmNoJywnYmVndWlsZXMnLCdzYXNo JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU4MSwxNTgzMDEsMjksJ0FuZ2VsZXMnLCdU cm9icmlhbmQnLCdhbmFlcm9iaWMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU4Miwx NTgzMDIsMjksJ3NlbWJsYW5jZScsJ2ZsZWVpbmcnLCdzaW11bHRhbmVvdXMnLCdBJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDU4MywxNTgzMDMsMjksJ3RheGVkJywnQXJtb3VyJywnYWNjdW11 bGF0aW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1ODQsMTU4MzA0LDI5LCdCZWF0 cmljZScsJ2NoaW4nLCdNZWR1c2FuJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1ODUs MTU4MzA1LDI5LCdyZXRyYWNlJywncHJvdmVycycsJ3Nob3V0ZWQnLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDU4NiwxNTgzMDYsMjksJ2xvY2tvdXQnLCdhZXJvbmF1dGljJywnZnJlYWtp c2gnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTg3LDE1ODUwMSwyOSwnZ3JhbW1hdGlj Jywndm9sdGFnZScsJ2luZGV4JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU4OCwx NjAzMDEsMjksJ2hlbG1zbWFuJywnc2FzaCcsJ2NvbW1lcmNpYWxseScsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg1ODksMTY2MTAxLDUwLCd1bmlmb3JtJywnYW5hZXJvYmljJywnbWlzdGlu ZXNzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1OTAsMTY2MTAyLDUwLCdoYW1taW5n Jywnc2ltdWx0YW5lb3VzJywnZW5kcG9pbnQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NTkxLDE2ODAwMSwyOSwnZGlzb2JlZGllbmNlJywnYWNjdW11bGF0aW5nJywnc3RyYWlnaHQnLCdB Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDU5MiwxNjgwMDIsMjksJ2NhcHRpdmF0ZWQnLCdN ZWR1c2FuJywnZmx1cnJpZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTkzLDE2ODAw MywyOSwndHJhbnNmZXJhbHMnLCdzaG91dGVkJywnZGVub3RhdGl2ZScsJ0EnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNTk0LDE2ODEwMSwyOSwnY2FydG9ncmFwaGVyJywnZnJlYWtpc2gnLCdj b21pbmcnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk1LDE2ODEwMiwyOSwnYWlt cycsJ2luZGV4JywnY29tbWVuY2VtZW50cycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg1OTYsMTY4MTAzLDI5LCdQYWtpc3RhbmknLCdjb21tZXJjaWFsbHknLCdnZW50bGVtYW4nLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk3LDE2ODEwNCwyOSwnYnVyZ2xhcml6ZWQnLCdt aXN0aW5lc3MnLCdnaWZ0ZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk4LDE2ODIw MiwyOSwnc2F1Y2VwYW5zJywnZW5kcG9pbnQnLCdTaGFuZ2hhaXMnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNTk5LDE2ODMwMSwyOSwnbGFjZXJhdGluZycsJ3N0cmFpZ2h0Jywnc3BvcnRz d3JpdGluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjAwLDE2ODUwMiwyOSwnY29y bnknLCdmbHVycmllZCcsJ3Nsb3BpbmcnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYw MSwxNjg1MDMsMjksJ21lZ2FieXRlcycsJ2Rlbm90YXRpdmUnLCduYXZpZXMnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNjAyLDE2ODYwMSwyOSwnY2hhbmNlbGxvcicsJ2NvbWluZycsJ2xl YWZsZXQnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYwMywxNzMwMDEsNDAsJ2J1bGsn LCdjb21tZW5jZW1lbnRzJywnc2hvb3RlcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2 MDQsMTczNzAxLDQwLCdjb21taXRzJywnZ2VudGxlbWFuJywnSm9wbGluJywnRkFTJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDYwNSwxNzM3MDIsNDAsJ21lc29uJywnZ2lmdGVkJywnYmFiaWVz JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYwNiwxNzYwMDEsNDAsJ2RlcHV0aWVzJywn U2hhbmdoYWlzJywnc3ViZGl2aXNpb24nLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NjA3LDE3NjEwMSw0MCwnbm9ydGhlYXN0ZXInLCdzcG9ydHN3cml0aW5nJywnYnVyc3RpbmVzcycs J1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjA4LDE3NjIwMSw0MCwnZGlwb2xlJywnc2xv cGluZycsJ2JlbHRlZCcsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2MDksMTc2NDAx LDQwLCdtYWNoaW5pbmcnLCduYXZpZXMnLCdhc3NhaWxzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDYxMCwxNzY1MDEsNDAsJ3RoZXJlZm9yZScsJ2xlYWZsZXQnLCdhZG1pcmluZycs J1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjExLDE3NjYwMSw0MCwnVGVsZWZ1bmtlbics J3Nob290ZXInLCdzd2F5aW5nJywnMCcpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2MTIsMTc2 NjAyLDQwLCdzYWx2YWdpbmcnLCdKb3BsaW4nLCdHb2xkc3RpbmUnLCdGQVMnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNjEzLDE3NjYwMyw0MCwnQ29yaW50aGlhbml6ZXMnLCdiYWJpZXMnLCdm aXR0aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYxNCwxNzgwMDEsNDAsJ3Jlc3Rs ZXNzbHknLCdzdWJkaXZpc2lvbicsJ05vcndhbGsnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDYxNSwxNzgwMDIsNDAsJ2Jyb21pZGVzJywnYnVyc3RpbmVzcycsJ3dlYWtlbmluZycsJ1cn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjE2LDE3ODAwMyw0MCwnZ2VuZXJhbGl6ZWQnLCdi ZWx0ZWQnLCdhbmFsb2d5JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYxNywxNzgw MDQsNDAsJ21pc2hhcHMnLCdhc3NhaWxzJywnZGVsdWRlcycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg2MTgsMTc4MDA1LDQwLCdxdWVsbGluZycsJ2FkbWlyaW5nJywnY29rZXMnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjE5LDE3ODAwNiw0MCwnc3Bpcml0dWFsJywnc3dheWlu ZycsJ0NsYXl0b24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjIwLDE3ODAwNyw0MCwn YmVndWlsZXMnLCdHb2xkc3RpbmUnLCdleGhhdXN0cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg2MjEsMTc4MDA4LDQwLCdUcm9icmlhbmQnLCdmaXR0aW5nJywnY2F1c2FsaXR5JywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYyMiwxNzgxMDEsNDAsJ2ZsZWVpbmcnLCdOb3J3YWxr Jywnc2F0aW5nJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYyMywxNzgxMDIsNDAs J0FybW91cicsJ3dlYWtlbmluZycsJ2ljb24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NjI0LDE3ODEwMyw0MCwnY2hpbicsJ2FuYWxvZ3knLCd0aHJvdHRsZXMnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNjI1LDE3ODIwMSw0MCwncHJvdmVycycsJ2RlbHVkZXMnLCdjb21tdW5p Y2FudHMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjI2LDE3ODIwMiw0MCwnYWVy b25hdXRpYycsJ2Nva2VzJywnZGVoeWRyYXRlJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDYyNywxNzgzMDEsNDAsJ3ZvbHRhZ2UnLCdDbGF5dG9uJywncHJpY2VsZXNzJywnRkFTJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYyOCwxNzgzMDIsNDAsJ3Nhc2gnLCdleGhhdXN0cycs J3B1YmxpY2x5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYyOSwxNzg0MDEsNDAsJ2Fu YWVyb2JpYycsJ2NhdXNhbGl0eScsJ2luY2lkZW50YWxzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDYzMCwxNzg0MDIsNDAsJ3NpbXVsdGFuZW91cycsJ3NhdGluZycsJ2NvbW1vbnBs YWNlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYzMSwxNzg0MDMsNDAsJ2FjY3VtdWxh dGluZycsJ2ljb24nLCdtdW1ibGVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYzMiwx Nzg0MDQsNDAsJ01lZHVzYW4nLCd0aHJvdHRsZXMnLCdmdXJ0aGVybW9yZScsJ1cnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNjMzLDE3ODUwMSw0MCwnc2hvdXRlZCcsJ2NvbW11bmljYW50cycs J2NhdXRpb25lZCcsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjM0LDE4NjAwMiwzNywn ZnJlYWtpc2gnLCdkZWh5ZHJhdGUnLCdwYXJhbWV0cml6ZWQnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDYzNSwxODYxMDIsMzcsJ2luZGV4JywncHJpY2VsZXNzJywncmVnaXN0cmF0aW9u JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2MzYsMTg2MjAxLDQwLCdjb21tZXJjaWFs bHknLCdwdWJsaWNseScsJ3NhZGx5JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYz NywxODYyMDIsNDAsJ21pc3RpbmVzcycsJ2luY2lkZW50YWxzJywncG9zaXRpb25pbmcnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjM4LDE4NjIwMyw0MCwnZW5kcG9pbnQnLCdjb21tb25w bGFjZScsJ2JhYnlzaXR0aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDYzOSwxODYz MDIsMzcsJ3N0cmFpZ2h0JywnbXVtYmxlcycsJ2V0ZXJuYWwnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDY0MCwxODgwMDcsMzcsJ2ZsdXJyaWVkJywnZnVydGhlcm1vcmUnLCdob2FyZGVy JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY0MSwxODgwMDgsMzcsJ2Rlbm90YXRpdmUn LCdjYXV0aW9uZWQnLCdjb25ncmVnYXRlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2 NDIsMTg4MDA5LDM3LCdjb21pbmcnLCdwYXJhbWV0cml6ZWQnLCdyYWlucycsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg2NDMsMTg4MDEwLDM3LCdjb21tZW5jZW1lbnRzJywncmVnaXN0cmF0 aW9uJywnd29ya2VycycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjQ0LDE4ODAxMSwz NywnZ2VudGxlbWFuJywnc2FkbHknLCdzYWdzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg2NDUsMTg4MDEyLDM3LCdnaWZ0ZWQnLCdwb3NpdGlvbmluZycsJ3VucGx1ZycsJ1cnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNjQ2LDE4ODAxMywzNywnU2hhbmdoYWlzJywnYmFieXNpdHRp bmcnLCdnYXJhZ2UnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY0NywxODgwMTQsMzcs J3Nwb3J0c3dyaXRpbmcnLCdldGVybmFsJywnYm91bGRlcicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNjQ4LDE4ODAxNSwzNywnc2xvcGluZycsJ2hvYXJkZXInLCdob2xsb3dseScsJ0En KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjQ5LDE4ODAxNiwzNywnbmF2aWVzJywnY29uZ3Jl Z2F0ZXMnLCdzcGVjaWZpY3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjUwLDE4ODAx NywzNywnbGVhZmxldCcsJ3JhaW5zJywnVGVyZXNhJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDY1MSwxODgxMDIsMzcsJ3Nob290ZXInLCd3b3JrZXJzJywnV2luc2V0dCcsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg2NTIsMTg4MTAzLDM3LCdKb3BsaW4nLCdzYWdzJywnY29udmVu aWVudCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjUzLDE4ODIwMiwzNywnYmFiaWVz JywndW5wbHVnJywnYnVja2JvYXJkcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2 NTQsMTg4MzAxLDQwLCdzdWJkaXZpc2lvbicsJ2dhcmFnZScsJ2FtZW5pdGllcycsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg2NTUsMTg4MzAyLDQwLCdidXJzdGluZXNzJywnYm91bGRlcics J3Jlc3BsZW5kZW50JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY1NiwxODgzMDMs NDAsJ2JlbHRlZCcsJ2hvbGxvd2x5JywncHJpZGluZycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg2NTcsMTg4NDAxLDM3LCdhc3NhaWxzJywnc3BlY2lmaWNzJywnY29uZmlndXJhdGlv bnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjU4LDE4ODQwMiwzNywnYWRtaXJpbmcn LCdUZXJlc2EnLCd1bnRpZGluZXNzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2NTks MTg4NTAzLDM3LCdzd2F5aW5nJywnV2luc2V0dCcsJ0JyaWNlJywnVycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg2NjAsMTg4NTA0LDM3LCdHb2xkc3RpbmUnLCdjb252ZW5pZW50Jywnc2V3cycs J0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2NjEsMTg4NTA1LDM3LCdmaXR0aW5nJywn YnVja2JvYXJkcycsJ3BhcnRpY2lwYXRlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2 NjIsMTkwNzAxLDM3LCdOb3J3YWxrJywnYW1lbml0aWVzJywnU2ltb24nLCdGQVMnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNjYzLDE5MDcwMyw1MCwnd2Vha2VuaW5nJywncmVzcGxlbmRlbnQn LCdjZXJ0aWZpY2F0ZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjY0LDE5MTcwMSwz NywnYW5hbG9neScsJ3ByaWRpbmcnLCdGaXR6cGF0cmljaycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg2NjUsMTkxNzAyLDM3LCdkZWx1ZGVzJywnY29uZmlndXJhdGlvbnMnLCdFdmFuc3Rv bicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjY2LDE5MTcwMywzNywnY29rZXMnLCd1 bnRpZGluZXNzJywnbWlzdGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY2NywxOTYw MDEsMzcsJ0NsYXl0b24nLCdCcmljZScsJ3RleHR1cmVzJywnQScpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg2NjgsMTk2MDAyLDM3LCdleGhhdXN0cycsJ3Nld3MnLCdzYXZlJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDY2OSwxOTYwMDMsMzcsJ2NhdXNhbGl0eScsJ3BhcnRpY2lwYXRl ZCcsJ2NvdW50JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY3MCwxOTYxMDEsMzcsJ3Nh dGluZycsJ1NpbW9uJywncmlnaHRmdWwnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY3 MSwxOTYxMDMsMzcsJ2ljb24nLCdjZXJ0aWZpY2F0ZXMnLCdjaGFwZXJvbmUnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNjcyLDE5NjEwNCwzNywndGhyb3R0bGVzJywnRml0enBhdHJpY2sn LCdMaXp6eScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjczLDE5NjIwMSwzNywnY29t bXVuaWNhbnRzJywnRXZhbnN0b24nLCdjbGVuY2hlZCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNjc0LDE5NjIwMiwzNywnZGVoeWRyYXRlJywnbWlzdGVkJywnZWZmb3J0bGVzc2x5Jywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY3NSwxOTYyMDMsMzcsJ3ByaWNlbGVzcycsJ3Rl eHR1cmVzJywnYWNjZXNzZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjc2LDE5ODAw MSwzNywncHVibGljbHknLCdzYXZlJywnYmVhdGVycycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNjc3LDE5ODAwMywzNywnaW5jaWRlbnRhbHMnLCdjb3VudCcsJ0hvcm5ibG93ZXInLCdG QVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjc4LDE5ODAwNCwzNywnY29tbW9ucGxhY2Un LCdyaWdodGZ1bCcsJ3Zlc3RzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2NzksMTk4 MDA1LDM3LCdtdW1ibGVzJywnY2hhcGVyb25lJywnaW5kdWxnZW5jZXMnLCdGQVMnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNjgwLDE5ODAwNiwzNywnZnVydGhlcm1vcmUnLCdMaXp6eScsJ2lu ZmFsbGlibHknLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY4MSwxOTgwMDcsMzcsJ2Nh dXRpb25lZCcsJ2NsZW5jaGVkJywndW53aWxsaW5nJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDY4MiwxOTgwMDgsMzcsJ3BhcmFtZXRyaXplZCcsJ2VmZm9ydGxlc3NseScsJ2V4Y3Jl dGUnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjgzLDE5ODAwOSwzNywncmVnaXN0 cmF0aW9uJywnYWNjZXNzZWQnLCdzcG9vbHMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDY4NCwxOTgwMTAsMzcsJ3NhZGx5JywnYmVhdGVycycsJ2NydW5jaGVzJywnRkFTJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDY4NSwxOTgwMTEsMzcsJ3Bvc2l0aW9uaW5nJywnSG9ybmJsb3dl cicsJ292ZXJlc3RpbWF0aW5nJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY4Niwx OTgwMTIsMzcsJ2JhYnlzaXR0aW5nJywndmVzdHMnLCdpbmVmZmVjdGl2ZScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg2ODcsMTk4MDEzLDM3LCdldGVybmFsJywnaW5kdWxnZW5jZXMnLCdo dW1pbGlhdGlvbicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjg4LDE5ODAxNCwzNywn aG9hcmRlcicsJ2luZmFsbGlibHknLCdzb3Bob21vcmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNjg5LDE5ODAxNSwzNywnY29uZ3JlZ2F0ZXMnLCd1bndpbGxpbmcnLCdzdGFyJywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY5MCwxOTgwMTcsMzcsJ3JhaW5zJywnZXhjcmV0ZScs J3JpZmxlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg2OTEsMTk4MDE4LDM3LCd3b3Jr ZXJzJywnc3Bvb2xzJywnZGlhbHlzaXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjky LDE5ODAxOSwzNywnc2FncycsJ2NydW5jaGVzJywnYXJyaXZpbmcnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNjkzLDE5ODAyMCwzNywndW5wbHVnJywnb3ZlcmVzdGltYXRpbmcnLCdpbmR1 bGdlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDY5NCwxOTgwMjEsMzcsJ2dhcmFnZScs J2luZWZmZWN0aXZlJywnY2xvY2tlcnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjk1 LDE5ODAyMiwzNywnYm91bGRlcicsJ2h1bWlsaWF0aW9uJywnbGFuZ3VhZ2VzJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDY5NiwxOTgwMjMsNTAsJ2hvbGxvd2x5Jywnc29waG9tb3JlJywn QW50YXJjdGljYScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNjk3LDE5ODAyNCwzNywn c3BlY2lmaWNzJywnc3RhcicsJ3BlcmNlbnRhZ2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoNjk4LDE5ODEwMSwzNywnVGVyZXNhJywncmlmbGVzJywnY2VpbGluZycsJ0EnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoNjk5LDE5ODEwMywzNywnV2luc2V0dCcsJ2RpYWx5c2lzJywnc3Bl Y2lmaWNhdGlvbicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MDAsMTk4MTA1LDM3LCdj b252ZW5pZW50JywnYXJyaXZpbmcnLCdyZWdpbWVudGVkJywnQScpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg3MDEsMTk4MTA2LDM3LCdidWNrYm9hcmRzJywnaW5kdWxnZScsJ2NpcGhlcnMnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzAyLDE5ODIwMSwzNywnYW1lbml0aWVzJywnY2xv Y2tlcnMnLCdwaWN0dXJlcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzAzLDE5ODIw NCwzNywncmVzcGxlbmRlbnQnLCdsYW5ndWFnZXMnLCdzZXJwZW50cycsJ0EnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNzA0LDE5ODMwMSw1MywncHJpZGluZycsJ0FudGFyY3RpY2EnLCdhbGxv dCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzA1LDE5ODMwMiw1MywnY29uZmlndXJh dGlvbnMnLCdwZXJjZW50YWdlJywncmVhbGl6ZWQnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDcwNiwxOTgzMDMsNTMsJ3VudGlkaW5lc3MnLCdjZWlsaW5nJywnbWF5b3JhbCcsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzA3LDE5ODMwNCw1MywnQnJpY2UnLCdzcGVjaWZpY2F0 aW9uJywnb3BhcXVlbHknLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDcwOCwxOTg0MDEs MzcsJ3Nld3MnLCdyZWdpbWVudGVkJywnaG9zdGVzcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg3MDksMTk4NDAyLDM3LCdwYXJ0aWNpcGF0ZWQnLCdjaXBoZXJzJywnZmlmdGlldGgn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzEwLDE5ODQwMywzNywnU2ltb24nLCdwaWN0 dXJlcycsJ2luY29ycmVjdGx5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDcxMSwyMDIx MDEsMzcsJ2NlcnRpZmljYXRlcycsJ3NlcnBlbnRzJywnZGVjb21wb3NpdGlvbicsJ0ZBUycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MTIsMjAyMzAxLDM3LCdGaXR6cGF0cmljaycsJ2FsbG90 Jywnc3RyYW5nbGluZ3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzEzLDIwMjMwMiwz NywnRXZhbnN0b24nLCdyZWFsaXplZCcsJ21peHR1cmUnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNzE0LDIwMjMwMywzNywnbWlzdGVkJywnbWF5b3JhbCcsJ2VsZWN0cm9lbmNlcGhh bG9ncmFwaHknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzE1LDIwMjMwNCwzNywn dGV4dHVyZXMnLCdvcGFxdWVseScsJ3NpbWlsYXJpdGllcycsJ0ZBUycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg3MTYsMjAyMzA1LDM3LCdzYXZlJywnaG9zdGVzcycsJ2NoYXJnZXMnLCdXJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDcxNywyMDI2MDEsMzcsJ2NvdW50JywnZmlmdGlldGgn LCdmcmVlc3QnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzE4LDIwMjYwMiwzNywn cmlnaHRmdWwnLCdpbmNvcnJlY3RseScsJ0dyZWVuYmVyZycsJ0ZBUycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg3MTksMjAyNjA1LDM3LCdjaGFwZXJvbmUnLCdkZWNvbXBvc2l0aW9uJywndGlu dGluZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MjAsMjAyNjA2LDM3LCdMaXp6eScs J3N0cmFuZ2xpbmdzJywnZXhwZWxsZWQnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDcy MSwyMDI2MDcsMzcsJ2NsZW5jaGVkJywnbWl4dHVyZScsJ3dhcm0nLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoNzIyLDIwMjkwMSwzNywnZWZmb3J0bGVzc2x5JywnZWxlY3Ryb2VuY2VwaGFs b2dyYXBoeScsJ3Ntb290aGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDcyMywyMDI5 MDIsMzcsJ2FjY2Vzc2VkJywnc2ltaWxhcml0aWVzJywnZGVkdWN0aW9ucycsJ0ZBUycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg3MjQsMjAyOTAzLDM3LCdiZWF0ZXJzJywnY2hhcmdlcycsJ1Jv bWFubycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzI1LDIwMjkwNCwzNywnSG9ybmJs b3dlcicsJ2ZyZWVzdCcsJ2JpdHRlcnJvb3QnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo NzI2LDIwMjkwNywzNywndmVzdHMnLCdHcmVlbmJlcmcnLCdjb3JzZXQnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNzI3LDIwMjkwOCwzNywnaW5kdWxnZW5jZXMnLCd0aW50aW5nJywnc2Vj dXJpbmcnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzI4LDIwMzEwMSwzNywnaW5mYWxs aWJseScsJ2V4cGVsbGVkJywnZW52aXJvbmluZycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg3MjksMjAzMTAzLDM3LCd1bndpbGxpbmcnLCd3YXJtJywnY3V0ZScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg3MzAsMjAzMTA0LDM3LCdleGNyZXRlJywnc21vb3RoZWQnLCdDcmF5 cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MzEsMjAzMTA1LDM3LCdzcG9vbHMnLCdk ZWR1Y3Rpb25zJywnaGVpcmVzcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3MzIs MjAzNDAxLDM3LCdjcnVuY2hlcycsJ1JvbWFubycsJ2luZm9ybScsJ0ZBUycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg3MzMsMjAzNDAyLDM3LCdvdmVyZXN0aW1hdGluZycsJ2JpdHRlcnJvb3Qn LCdhdmVuZ2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzM0LDIwMzQwNCwzNywnaW5l ZmZlY3RpdmUnLCdjb3JzZXQnLCd1bml2ZXJzYWxzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDczNSwyMDM5MDEsMzcsJ2h1bWlsaWF0aW9uJywnc2VjdXJpbmcnLCdLaW5zZXknLCdXJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDczNiwyMDM5MDIsMzcsJ3NvcGhvbW9yZScsJ2Vudmly b25pbmcnLCdyYXZpbmVzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDczNywyMDM5 MDMsMzcsJ3N0YXInLCdjdXRlJywnYmVzdHNlbGxlcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg3MzgsMjAzOTA2LDM3LCdyaWZsZXMnLCdDcmF5cycsJ2VxdWlsaWJyaXVtJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDczOSwyMDM5MDcsMzcsJ2RpYWx5c2lzJywnaGVpcmVzcycs J2V4dGVudHMnLCcwJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc0MCwyMDM5MDgsMzcsJ2Fy cml2aW5nJywnaW5mb3JtJywncmVsYXRpdmVseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg3NDEsMjAzOTA5LDM3LCdpbmR1bGdlJywnYXZlbmdlJywncHJlc3N1cmUnLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNzQyLDIwNjEwMSwzNywnY2xvY2tlcnMnLCd1bml2ZXJzYWxz JywnY3JpdGlxdWVzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc0MywyMDYyMDEs MzcsJ2xhbmd1YWdlcycsJ0tpbnNleScsJ2JlZm91bGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDc0NCwyMDYyMDIsMzcsJ0FudGFyY3RpY2EnLCdyYXZpbmVzJywncmlnaHRmdWxseScs J0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NDUsMjA2MjAzLDM3LCdwZXJjZW50YWdl JywnYmVzdHNlbGxlcicsJ21lY2hhbml6aW5nJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDc0NiwyMDYyMDYsMzcsJ2NlaWxpbmcnLCdlcXVpbGlicml1bScsJ0xhdGluaXplcycsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NDcsMjA2MjA3LDM3LCdzcGVjaWZpY2F0aW9uJywn ZXh0ZW50cycsJ3RpbWVzaGFyaW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc0OCwy MDYyMDgsMzcsJ3JlZ2ltZW50ZWQnLCdyZWxhdGl2ZWx5JywnQWRlbicsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg3NDksMjA4MDAxLDM3LCdjaXBoZXJzJywncHJlc3N1cmUnLCdlbWJhc3Np ZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzUwLDIwODAwMiwzNywncGljdHVyZXMn LCdjcml0aXF1ZXMnLCdtYWxlcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NTEs MjA4MDAzLDM3LCdzZXJwZW50cycsJ2JlZm91bGVkJywnc2hhcGVsZXNzbHknLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNzUyLDIwODAwNCwzNywnYWxsb3QnLCdyaWdodGZ1bGx5Jywn Z2VucmVzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc1MywyMDgwMDgsMzcsJ3Jl YWxpemVkJywnbWVjaGFuaXppbmcnLCdtYXN0ZXJpbmcnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNzU0LDIwODAwOSwzNywnbWF5b3JhbCcsJ0xhdGluaXplcycsJ05ld3RvbmlhbicsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NTUsMjA4MDEwLDM3LCdvcGFxdWVseScsJ3RpbWVz aGFyaW5nJywnZmluaXNoZXJzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc1Niwy MDgwMTEsMzcsJ2hvc3Rlc3MnLCdBZGVuJywnYWJhdGVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDc1NywyMDgxMDEsMzcsJ2ZpZnRpZXRoJywnZW1iYXNzaWVzJywndGVlbScsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NTgsMjA4MTAyLDM3LCdpbmNvcnJlY3RseScsJ21hbGVz Jywna2l0aW5nJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc1OSwyMDgxMDMsMzcs J2RlY29tcG9zaXRpb24nLCdzaGFwZWxlc3NseScsJ3N0b2RneScsJ0ZBUycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg3NjAsMjA4MTA0LDM3LCdzdHJhbmdsaW5ncycsJ2dlbnJlcycsJ3NjYWxw cycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NjEsMjA4MTA1LDM3LCdtaXh0dXJl JywnbWFzdGVyaW5nJywnZmVlZCcsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NjIs MjA4MTEwLDM3LCdlbGVjdHJvZW5jZXBoYWxvZ3JhcGh5JywnTmV3dG9uaWFuJywnZ3VpdGFycycs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NjMsMjA4MTExLDM3LCdzaW1pbGFyaXRpZXMn LCdmaW5pc2hlcnMnLCdhaXJzaGlwcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NjQs MjA4MTEyLDM3LCdjaGFyZ2VzJywnYWJhdGVzJywnc3RvcmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoNzY1LDIwODExMywzNywnZnJlZXN0JywndGVlbScsJ2Rlbm91bmNlcycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NjYsMjA4MjAxLDM3LCdHcmVlbmJlcmcnLCdraXRpbmcn LCdQeWxlJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc2NywyMDgyMDMsMzcsJ3Rp bnRpbmcnLCdzdG9kZ3knLCdTYXhvbnknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzY4 LDIwODMwMSwzNywnZXhwZWxsZWQnLCdzY2FscHMnLCdzZXJpYWxpemF0aW9ucycsJ0ZBUycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NjksMjA4MzAyLDM3LCd3YXJtJywnZmVlZCcsJ1BlcnV2 aWFuJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc3MCwyMDgzMDUsMzcsJ3Ntb290 aGVkJywnZ3VpdGFycycsJ3RheG9ub21pY2FsbHknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNzcxLDIwODQwMSwzNywnZGVkdWN0aW9ucycsJ2FpcnNoaXBzJywna2luZ2RvbScsJ0En KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzcyLDIwODQwMiwzNywnUm9tYW5vJywnc3RvcmUn LCdzdGludCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzczLDIwODQwMywzNywnYml0 dGVycm9vdCcsJ2Rlbm91bmNlcycsJ1NhdWx0JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg3NzQsMjA4NDA0LDM3LCdjb3JzZXQnLCdQeWxlJywnZmFpdGhmdWwnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoNzc1LDIwODUwMSwzNywnc2VjdXJpbmcnLCdTYXhvbnknLCdHYW55bWVk ZScsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3NzYsMjA4NTAyLDM3LCdlbnZpcm9u aW5nJywnc2VyaWFsaXphdGlvbnMnLCd0aWRpbmVzcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg3NzcsMjA4NTAzLDM3LCdjdXRlJywnUGVydXZpYW4nLCdnYWluZnVsJywnRkFTJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc3OCwyMDg1MDQsMzcsJ0NyYXlzJywndGF4b25vbWlj YWxseScsJ2NvbnRyYXJ5JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc3OSwyMDg1 MDUsMzcsJ2hlaXJlc3MnLCdraW5nZG9tJywnVGlwcGVyYXJ5JywnRkFTJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDc4MCwyMTAxMDEsMzcsJ2luZm9ybScsJ3N0aW50JywndHJvcGljcycsJ1cn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzgxLDIxMDEwMiwzNywnYXZlbmdlJywnU2F1bHQn LCd0aGVvcml6ZXJzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc4MiwyMTAxMDMsMzcs J3VuaXZlcnNhbHMnLCdmYWl0aGZ1bCcsJ3JlbmV3JywnMCcpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg3ODMsMjEwMTA0LDM3LCdLaW5zZXknLCdHYW55bWVkZScsJ2FscmVhZHknLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNzg0LDIxMDEwNSwzNywncmF2aW5lcycsJ3RpZGluZXNzJywn dGVybWluYWwnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzg1LDIxMDEwNiwzNywnYmVz dHNlbGxlcicsJ2dhaW5mdWwnLCdIZWdlbGlhbicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg3ODYsMjEwMTA3LDM3LCdlcXVpbGlicml1bScsJ2NvbnRyYXJ5JywnaHlwb3RoZXNpemVyJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc4NywyMTA0MDEsMzcsJ2V4dGVudHMnLCdUaXBw ZXJhcnknLCd3YXJuaW5nbHknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzg4LDIx MzIwMSwzNywncmVsYXRpdmVseScsJ3Ryb3BpY3MnLCdqb3VybmFsaXppbmcnLCdGQVMnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNzg5LDIxMzIwMywzNywncHJlc3N1cmUnLCd0aGVvcml6ZXJz JywnbmVzdGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc5MCwyMTMyMDQsMzcsJ2Ny aXRpcXVlcycsJ3JlbmV3JywnTGFycycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3OTEs MjEzMjA1LDM3LCdiZWZvdWxlZCcsJ2FscmVhZHknLCdzYXBsaW5ncycsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg3OTIsMjEzMjA2LDM3LCdyaWdodGZ1bGx5JywndGVybWluYWwnLCdmb290 aGlsbCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3OTMsMjEzMjA3LDM3LCdtZWNoYW5p emluZycsJ0hlZ2VsaWFuJywnbGFiZWxlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3 OTQsMjE2MTAxLDM3LCdMYXRpbml6ZXMnLCdoeXBvdGhlc2l6ZXInLCdpbXBlcmlvdXNseScsJ0ZB UycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3OTUsMjE2MTAzLDM3LCd0aW1lc2hhcmluZycs J3dhcm5pbmdseScsJ3JlcG9ydGVycycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg3 OTYsMjE4MDAxLDM3LCdBZGVuJywnam91cm5hbGl6aW5nJywnZnVybmlzaGluZ3MnLCdGQVMnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNzk3LDIxODAwMiwzNywnZW1iYXNzaWVzJywnbmVzdGVk JywncHJlY2lwaXRhYmxlJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDc5OCwyMTgw MDMsMzcsJ21hbGVzJywnTGFycycsJ2Rpc2NvdW50cycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg3OTksMjE4MDA0LDM3LCdzaGFwZWxlc3NseScsJ3NhcGxpbmdzJywnZXhjaXNlcycs J0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MDAsMTQzNTAzLDUwLCdnZW5yZXMnLCdm b290aGlsbCcsJ1N0YWxpbicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MDEsMjE4MDA2 LDM3LCdtYXN0ZXJpbmcnLCdsYWJlbGVkJywnZGVzcG90JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDgwMiwyMTgwMDcsMzcsJ05ld3RvbmlhbicsJ2ltcGVyaW91c2x5JywncmlwZW5l c3MnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODAzLDIxODAwOCwzNywnZmluaXNo ZXJzJywncmVwb3J0ZXJzJywnQXJhYmlhJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDgw NCwyMTgwMDksMzcsJ2FiYXRlcycsJ2Z1cm5pc2hpbmdzJywndW5ydWx5JywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDgwNSwyMTgwMTAsMzcsJ3RlZW0nLCdwcmVjaXBpdGFibGUnLCdtb3Vy bmZ1bG5lc3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODA2LDIxODAxMSwzNywna2l0 aW5nJywnZGlzY291bnRzJywnYm9vbScsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4 MDcsMjE4MDIwLDM3LCdzdG9kZ3knLCdleGNpc2VzJywnc2xhdWdodGVyJywnQScpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg4MDgsMjE4MDIxLDUwLCdzY2FscHMnLCdTdGFsaW4nLCdTYWJpbmUn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODA5LDIxODAyMiwzNywnZmVlZCcsJ2Rlc3Bv dCcsJ2hhbmR5JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDgxMCwyMTgwMjMsMzcs J2d1aXRhcnMnLCdyaXBlbmVzcycsJ3J1cmFsJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDgxMSwyMTgwMjQsMzcsJ2FpcnNoaXBzJywnQXJhYmlhJywnb3JnYW5pemVyJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDgxMiwyMTgxMDEsMzcsJ3N0b3JlJywndW5ydWx5Jywnc2hpcHlh cmQnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODEzLDIxODEwMiwzNywnZGVub3Vu Y2VzJywnbW91cm5mdWxuZXNzJywnY2l2aWNzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDgxNCwyMTgxMDMsMzcsJ1B5bGUnLCdib29tJywnaW5hY2N1cmFjeScsJ0ZBUycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg4MTUsMjE4MjAxLDM3LCdTYXhvbnknLCdzbGF1Z2h0ZXInLCdy dWxlcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MTYsMjE4MjAyLDM3LCdzZXJp YWxpemF0aW9ucycsJ1NhYmluZScsJ2p1dmVuaWxlcycsJ0ZBUycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg4MTcsMjE4MjAzLDM3LCdQZXJ1dmlhbicsJ2hhbmR5JywnY29tcHJpc2VkJywnVycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MTgsMjE4MjA0LDM3LCd0YXhvbm9taWNhbGx5Jywn cnVyYWwnLCdpbnZlc3RpZ2F0aW9ucycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MTks MjE4MjA1LDM3LCdraW5nZG9tJywnb3JnYW5pemVyJywnc3RhYmlsaXplcycsJ0EnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoODIwLDIxODMwMSwzNywnc3RpbnQnLCdzaGlweWFyZCcsJ3NlbWlu YXJpZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODIxLDIxODMwMiwzNywnU2F1 bHQnLCdjaXZpY3MnLCdIdW50ZXInLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDgyMiwy MTg0MDEsMzcsJ2ZhaXRoZnVsJywnaW5hY2N1cmFjeScsJ3Nwb3J0eScsJ0ZBUycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg4MjMsMjE4NDAyLDM3LCdHYW55bWVkZScsJ3J1bGVzJywndGVzdCcs J0ZBUycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MjQsMjE4NDAzLDM3LCd0aWRpbmVzcycs J2p1dmVuaWxlcycsJ3dlYXNlbHMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODI1LDIx ODQwNCwzNywnZ2FpbmZ1bCcsJ2NvbXByaXNlZCcsJ0NFUk4nLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoODI2LDIxODQwNywzNywnY29udHJhcnknLCdpbnZlc3RpZ2F0aW9ucycsJ3RlbXBl cmluZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MjcsMjE4NDA4LDM3LCdUaXBwZXJh cnknLCdzdGFiaWxpemVzJywnYWZvcmUnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo ODI4LDIxODQwOSwzNywndHJvcGljcycsJ3NlbWluYXJpZXMnLCdHYWxhdGVhbicsJycpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg4MjksMjE4NDEwLDM3LCd0aGVvcml6ZXJzJywnSHVudGVyJywn dGVjaG5pcXVlcycsJ1cnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODMwLDIyNjAwMSwzNywn cmVuZXcnLCdzcG9ydHknLCdlcnJvcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4MzEs MjI2MDAyLDM3LCdhbHJlYWR5JywndGVzdCcsJ3ZlcmFuZGEnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoODMyLDIyNjAwMywzNywndGVybWluYWwnLCd3ZWFzZWxzJywnc2V2ZXJlbHknLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODMzLDIyNjAwNCwzNywnSGVnZWxpYW4nLCdDRVJO JywnQ2Fzc2l0ZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODM0LDIyNjAwNSwz NywnaHlwb3RoZXNpemVyJywndGVtcGVyaW5nJywnZm9ydGhjb21pbmcnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoODM1LDIyNjAwNiwzNywnd2FybmluZ2x5JywnYWZvcmUnLCdndWlkZXMn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODM2LDIyNjAwNywzNywnam91cm5hbGl6aW5n JywnR2FsYXRlYW4nLCd2YW5pc2gnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODM3 LDIyNjAwOCwzNywnbmVzdGVkJywndGVjaG5pcXVlcycsJ2xpZWQnLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDgzOCwyMjYyMDMsMzcsJ0xhcnMnLCdlcnJvcicsJ3Nhd3Rvb3RoJywnRkFT Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDgzOSwyMjYyMDQsMzcsJ3NhcGxpbmdzJywndmVy YW5kYScsJ2ZhdGVkJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg0MCwyMjYyMDUs MzcsJ2Zvb3RoaWxsJywnc2V2ZXJlbHknLCdncmFkdWFsbHknLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoODQxLDIyNjIwNiwzNywnbGFiZWxlZCcsJ0Nhc3NpdGVzJywnd2lkZW5zJywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg0MiwyMjYyMDcsMzcsJ2ltcGVyaW91c2x5JywnZm9y dGhjb21pbmcnLCdwcmVjbHVkZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NDMsMjI2 MjA4LDM3LCdyZXBvcnRlcnMnLCdndWlkZXMnLCdKb2JyZWwnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoODQ0LDIyNjIwOSwzNywnZnVybmlzaGluZ3MnLCd2YW5pc2gnLCdob29rZXInLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODQ1LDIyNjIxMCwzNywncHJlY2lwaXRhYmxlJywn bGllZCcsJ3JhaW5zdG9ybScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NDYsMjI2MjEx LDM3LCdkaXNjb3VudHMnLCdzYXd0b290aCcsJ2Rpc2Nvbm5lY3RzJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDg0NywyMjgwMDEsMzcsJ2V4Y2lzZXMnLCdmYXRlZCcsJ2NydWVsdHknLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODQ4LDIyODAwNCwzNywnU3RhbGluJywnZ3JhZHVh bGx5JywnZXhwb25lbnRpYWxzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NDksMjI4 MDA1LDM3LCdkZXNwb3QnLCd3aWRlbnMnLCdhZmZlY3RpdmUnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDg1MCwyMjgwMDYsMzcsJ3JpcGVuZXNzJywncHJlY2x1ZGUnLCdhcnRlcmllcycs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NTEsMjI4MDA3LDM3LCdBcmFiaWEnLCdKb2Jy ZWwnLCdDcm9zYnknLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODUyLDIyODAwOCwz NywndW5ydWx5JywnaG9va2VyJywnYWNxdWFpbnQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoODUzLDIyODAwOSwzNywnbW91cm5mdWxuZXNzJywncmFpbnN0b3JtJywnZXZlbmhhbmRlZGx5 JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg1NCwyMjgxMDEsMzcsJ2Jvb20nLCdkaXNj b25uZWN0cycsJ3BlcmNlbnRhZ2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODU1LDIy ODEwOCwzNywnc2xhdWdodGVyJywnY3J1ZWx0eScsJ2Rpc29iZWRpZW5jZScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg4NTYsMjI4MTA5LDM3LCdTYWJpbmUnLCdleHBvbmVudGlhbHMnLCdo dW1pbGl0eScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NTcsMjI4MTEwLDM3LCdoYW5k eScsJ2FmZmVjdGl2ZScsJ2dsZWFuaW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4 NTgsMjI4MTExLDM3LCdydXJhbCcsJ2FydGVyaWVzJywncGV0dGVkJywnQScpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg4NTksMjI4MTEyLDM3LCdvcmdhbml6ZXInLCdDcm9zYnknLCdibG9hdGVy JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NjAsMjI4MTEzLDM3LCdzaGlweWFyZCcs J2FjcXVhaW50JywnbWluaW9uJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NjEsMjI4 MTE0LDM3LCdjaXZpY3MnLCdldmVuaGFuZGVkbHknLCdtYXJnaW5hbCcsJ0EnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoODYyLDIyODExNSwzNywnaW5hY2N1cmFjeScsJ3BlcmNlbnRhZ2UnLCdh cGlhcnknLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg2MywyMjgxMTYsMzcsJ3J1bGVz JywnZGlzb2JlZGllbmNlJywnbWVhc3VyZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo ODY0LDIyODExNywzNywnanV2ZW5pbGVzJywnaHVtaWxpdHknLCdwcmVjYXV0aW9uJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg2NSwyMjgxMTgsMzcsJ2NvbXByaXNlZCcsJ2dsZWFuaW5n JywncmVwZWxsZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODY2LDIyODExOSwzNywn aW52ZXN0aWdhdGlvbnMnLCdwZXR0ZWQnLCdwcmltYXJ5JywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDg2NywyMjgxMjAsMzcsJ3N0YWJpbGl6ZXMnLCdibG9hdGVyJywnY292ZXJpbmdz JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg2OCwyMjgxMjEsMzcsJ3NlbWluYXJpZXMn LCdtaW5pb24nLCdBcnRlbWlhJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NjksMjI4 MTIyLDM3LCdIdW50ZXInLCdtYXJnaW5hbCcsJ25hdmlnYXRlJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDg3MCwyMjgyMDEsMzcsJ3Nwb3J0eScsJ2FwaWFyeScsJ3NwYXRpYWwnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODcxLDIyODIwNiwzNywndGVzdCcsJ21lYXN1cmVzJywn R3Vya2hhJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg3MiwyMjgyMDcsMzcsJ3dlYXNl bHMnLCdwcmVjYXV0aW9uJywnbWVhbndoaWxlJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg4NzMsMjI4MjA4LDM3LCdDRVJOJywncmVwZWxsZWQnLCdNZWxpbmRhJywnQScpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg4NzQsMjI4MjA5LDM3LCd0ZW1wZXJpbmcnLCdwcmltYXJ5JywnQnV0 dGVyZmllbGQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODc1LDIyODIxMCwzNywnYWZv cmUnLCdjb3ZlcmluZ3MnLCdBbGRyaWNoJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4 NzYsMjI4MjExLDM3LCdHYWxhdGVhbicsJ0FydGVtaWEnLCdwcmV2aWV3aW5nJywnQScpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg4NzcsMjI4MjEyLDM3LCd0ZWNobmlxdWVzJywnbmF2aWdhdGUn LCdnbHV0JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4NzgsMjI4MjEzLDM3LCdlcnJv cicsJ3NwYXRpYWwnLCd1bmFmZmVjdGVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg3 OSwyMjgyMTQsMzcsJ3ZlcmFuZGEnLCdHdXJraGEnLCdpbm1hdGUnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoODgwLDIyODMwMSwzNywnc2V2ZXJlbHknLCdtZWFud2hpbGUnLCdtaW5lcmFs JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg4MSwyMjgzMDUsMzcsJ0Nhc3NpdGVzJywn TWVsaW5kYScsJ2ltcGVuZGluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODgyLDIy ODMwNiwzNywnZm9ydGhjb21pbmcnLCdCdXR0ZXJmaWVsZCcsJ21lZGl0YXRpb24nLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg4MywyMjgzMDcsMzcsJ2d1aWRlcycsJ0FsZHJpY2gnLCdp ZGVhcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4ODQsMjI4MzA4LDM3LCd2YW5pc2gn LCdwcmV2aWV3aW5nJywnbWluaWF0dXJpemVzJywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg4ODUsMjI4MzA5LDM3LCdsaWVkJywnZ2x1dCcsJ2xld2RseScsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg4ODYsMjI4MzEwLDM3LCdzYXd0b290aCcsJ3VuYWZmZWN0ZWQnLCd0aXRsZScs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4ODcsMjI4MzExLDM3LCdmYXRlZCcsJ2lubWF0 ZScsJ3lvdXRoZnVsbmVzcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4ODgsMjI4MzEy LDM3LCdncmFkdWFsbHknLCdtaW5lcmFsJywnY3JlYWsnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoODg5LDIyODMxMywzNywnd2lkZW5zJywnaW1wZW5kaW5nJywnQ2hpcHBld2EnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODkwLDIyODMxNCwzNywncHJlY2x1ZGUnLCdtZWRp dGF0aW9uJywnY2xhbW9yZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODkxLDIyODQw MSw2NSwnSm9icmVsJywnaWRlYXMnLCdmcmVlemVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDg5MiwyMjg0MDIsNjUsJ2hvb2tlcicsJ21pbmlhdHVyaXplcycsJ2ZvcmdpdmFibHknLCdG QVMnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoODkzLDIyODQwMyw2NSwncmFpbnN0b3JtJywn bGV3ZGx5JywncmVkdWNlJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg5NCwyMjg0 MDQsNjUsJ2Rpc2Nvbm5lY3RzJywndGl0bGUnLCdNY0dvdmVybicsJ1cnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoODk1LDIyODQwNSw2NSwnY3J1ZWx0eScsJ3lvdXRoZnVsbmVzcycsJ05hemlz JywnVycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg4OTYsMjI4NDA2LDY1LCdleHBvbmVudGlh bHMnLCdjcmVhaycsJ2VwaXN0bGUnLCdXJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg5Nywy Mjg0MDcsNjUsJ2FmZmVjdGl2ZScsJ0NoaXBwZXdhJywnc29jaWFsaXplcycsJ1cnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoODk4LDIyODQwOCw2NSwnYXJ0ZXJpZXMnLCdjbGFtb3JlZCcsJ2Nv bmNlcHRpb25zJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDg5OSwyMjg0MDksNjUsJ0Ny b3NieScsJ2ZyZWV6ZXMnLCdLZXZpbicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MDAs MjI4NDEwLDY1LCdhY3F1YWludCcsJ2ZvcmdpdmFibHknLCd1bmNvdmVyaW5nJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDkwMSwyMzAzMDEsMzcsJ2V2ZW5oYW5kZWRseScsJ3JlZHVjZScs J2NoZXdzJywnRkFTJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkwMiwyMzAzMDIsMzcsJ3Bl cmNlbnRhZ2UnLCdNY0dvdmVybicsJ2FwcGVuZGl4ZXMnLCdGQVMnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoOTAzLDIzMDMwMywzNywnZGlzb2JlZGllbmNlJywnTmF6aXMnLCdyYWluaW5nJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkwNCwwMTgwNjIsMzcsJ2h1bWlsaXR5JywnZXBp c3RsZScsJ2luZmVzdCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MDUsMjMwNTAxLDM3 LCdnbGVhbmluZycsJ3NvY2lhbGl6ZXMnLCdjb21wYXJ0bWVudCcsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg5MDYsMjMwNTAyLDM3LCdwZXR0ZWQnLCdjb25jZXB0aW9ucycsJ21pbnRpbmcn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTA3LDIzMDUwMywzNywnYmxvYXRlcicsJ0tl dmluJywnZHVja3MnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTA4LDIzMDUwNCwzNywn bWluaW9uJywndW5jb3ZlcmluZycsJ3JvcGVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg5MDksMjMwNTA1LDM3LCdtYXJnaW5hbCcsJ2NoZXdzJywnd2FsdHonLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoOTEwLDIzMDUwNiwzNywnYXBpYXJ5JywnYXBwZW5kaXhlcycsJ0xpbGxp YW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTExLDIzMDUwNywzNywnbWVhc3VyZXMn LCdyYWluaW5nJywncmVwcmVzc2lvbnMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkx MiwyMzA1MDgsMzcsJ3ByZWNhdXRpb24nLCdpbmZlc3QnLCdjaGlsbGluZ2x5JywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDkxMywyMzA1MDksMzcsJ3JlcGVsbGVkJywnY29tcGFydG1lbnQn LCdub25jcml0aWNhbCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MTQsMjMwOTAxLDM3 LCdwcmltYXJ5JywnbWludGluZycsJ2xpdGhvZ3JhcGgnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoOTE1LDIzMDkwMiwzNywnY292ZXJpbmdzJywnZHVja3MnLCdzcG9uZ2VycycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MTYsMjMwOTAzLDM3LCdBcnRlbWlhJywncm9wZWQnLCdw YXJlbnRob29kJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkxNywyMzA5MDQsMzcsJ25h dmlnYXRlJywnd2FsdHonLCdwb3NlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MTgs MjMwOTA1LDM3LCdzcGF0aWFsJywnTGlsbGlhbicsJ2luc3RydW1lbnRzJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDkxOSwyMzA5MDYsMzcsJ0d1cmtoYScsJ3JlcHJlc3Npb25zJywnZmls aWFsJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkyMCwyMzA5MDcsMzcsJ21lYW53aGls ZScsJ2NoaWxsaW5nbHknLCdmaXhlZGx5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDky MSwyMzA5MDgsMzcsJ01lbGluZGEnLCdub25jcml0aWNhbCcsJ3JlbGl2ZXMnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoOTIyLDIzMDkwOSwzNywnQnV0dGVyZmllbGQnLCdsaXRob2dyYXBo JywnUGFuZG9yYScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MjMsMjMwOTEwLDM3LCdB bGRyaWNoJywnc3BvbmdlcnMnLCd3YXRlcmluZycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoOTI0LDIzMDkxMSwzNywncHJldmlld2luZycsJ3BhcmVudGhvb2QnLCd1bmdyYXRlZnVsJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkyNSwyMzA5MTIsMzcsJ2dsdXQnLCdwb3NlZCcs J3NlY3VyZXMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTI2LDIzMDkxMywzNywndW5h ZmZlY3RlZCcsJ2luc3RydW1lbnRzJywnY2hhc3Rpc2VycycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICg5MjcsMjMwOTE0LDM3LCdpbm1hdGUnLCdmaWxpYWwnLCdpY29uJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDkyOCwyMzEzMDQsMzcsJ21pbmVyYWwnLCdmaXhlZGx5JywncmV1 bml0aW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5MjksMjMxMzA1LDM3LCdpbXBl bmRpbmcnLCdyZWxpdmVzJywnaW1hZ2luaW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg5MzAsMjMxMzA2LDM3LCdtZWRpdGF0aW9uJywnUGFuZG9yYScsJ2FiaWRpbmcnLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkzMSwyMzEzMDcsMzcsJ2lkZWFzJywnd2F0ZXJpbmcnLCdv bW5pc2NpZW50bHknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTMyLDIzMTMwOCwzNywn bWluaWF0dXJpemVzJywndW5ncmF0ZWZ1bCcsJ0JyaXRhbm5pYycsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg5MzMsMjMxMzA5LDM3LCdsZXdkbHknLCdzZWN1cmVzJywnc2Nob2xhc3RpY3Mn LCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkzNCwyMzEzMTAsMzcsJ3RpdGxlJywnY2hh c3Rpc2VycycsJ21lY2hhbmljcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTM1LDIz MTMxMSwzNywneW91dGhmdWxuZXNzJywnaWNvbicsJ2h1bWlkbHknLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDkzNiwyMzEzMTIsMzcsJ2NyZWFrJywncmV1bml0aW5nJywnbWFzdGVycGll Y2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTM3LDIzMTMxMywzNywnQ2hpcHBld2En LCdpbWFnaW5pbmcnLCdob3dldmVyJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDkzOCwy MzEzMTQsMzcsJ2NsYW1vcmVkJywnYWJpZGluZycsJ01lbmRlbGlhbicsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg5MzksMjMxMzE1LDM3LCdmcmVlemVzJywnb21uaXNjaWVudGx5JywnamFy cmVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk0MCwyMzIxMDIsMzcsJ2ZvcmdpdmFi bHknLCdCcml0YW5uaWMnLCdzY29sZHMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTQx LDIzMjEwMywzNywncmVkdWNlJywnc2Nob2xhc3RpY3MnLCdpbmZhdHVhdGUnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoOTQyLDIzMjEwNCwzNywnTWNHb3Zlcm4nLCdtZWNoYW5pY3MnLCd3 aWxsZWQnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk0MywyMzIxMDUsMzcsJ05hemlz JywnaHVtaWRseScsJ2pveWZ1bGx5JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk0NCwy MzIxMDYsMzcsJ2VwaXN0bGUnLCdtYXN0ZXJwaWVjZScsJ01pY3Jvc29mdCcsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICg5NDUsMjMyMTA3LDM3LCdzb2NpYWxpemVzJywnaG93ZXZlcicsJ2Zp YnJvc2l0aWVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk0NiwyMzIxMDgsMzcsJ2Nv bmNlcHRpb25zJywnTWVuZGVsaWFuJywnQmFsdGltb3JlYW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoOTQ3LDIzMjYwMSwzNywnS2V2aW4nLCdqYXJyZWQnLCdlcXVlc3RyaWFuJywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk0OCwyMzI2MDIsMzcsJ3VuY292ZXJpbmcnLCdzY29s ZHMnLCdHb29kcmljaCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5NDksMjMyNjAzLDM3 LCdjaGV3cycsJ2luZmF0dWF0ZScsJ2FwaXNoJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg5NTAsMjMyNjA1LDM3LCdhcHBlbmRpeGVzJywnd2lsbGVkJywnQWRsZXJpYW4nLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk1MCwxMjMyNjA1LDM3LCdhcHBlbmRpeGVzJywnd2lsbGVk JywnQWRsZXJpYW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk1MSwxMjMyNjA2LDM3 LCdhcHBlbmRpeGVzJywnd2lsbGVkJywnQWRsZXJpYW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoNTk1MiwxMjMyNjA3LDM3LCdhcHBlbmRpeGVzJywnd2lsbGVkJywnQWRsZXJpYW4nLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk1MywxMjMyNjA4LDM3LCdhcHBlbmRpeGVzJywn d2lsbGVkJywnQWRsZXJpYW4nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoNTk1NCwxMjMy NjA5LDM3LCdhcHBlbmRpeGVzJywnd2lsbGVkJywnQWRsZXJpYW4nLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoOTUxLDIzMjYwNiwzNywncmFpbmluZycsJ2pveWZ1bGx5JywnVHJvcGV6Jywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk1MiwyMzI2MDcsMzcsJ2luZmVzdCcsJ01pY3Jv c29mdCcsJ25vdW5zJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk1MywyMzI2MDgsMzcs J2NvbXBhcnRtZW50JywnZmlicm9zaXRpZXMnLCdkaXN0cmFjdGluZycsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg5NTQsMjMyNjA5LDM3LCdtaW50aW5nJywnQmFsdGltb3JlYW4nLCdtdXR0 b24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTU1LDIzNjEwNCwzNywnZHVja3MnLCdl cXVlc3RyaWFuJywnYnJpZGdlYWJsZScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTU2 LDIzNjEwNSwzNywncm9wZWQnLCdHb29kcmljaCcsJ3N0aWNrZXJzJywnQScpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg5NTcsMjM2MTA2LDM3LCd3YWx0eicsJ2FwaXNoJywndHJhbnNjb250aW5l bnRhbCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTU4LDIzNjEwNywzNywnTGlsbGlh bicsJ0FkbGVyaWFuJywnYW1hdGV1cmlzaCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5 NTksMjM2MTA4LDM3LCdyZXByZXNzaW9ucycsJ1Ryb3BleicsJ0dhbmRoaWFuJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDk2MCwyMzYxMDksMzcsJ2NoaWxsaW5nbHknLCdub3VucycsJ3N0 cmF0aWZpZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTYxLDIzNjExMCwzNywnbm9u Y3JpdGljYWwnLCdkaXN0cmFjdGluZycsJ2NoYW1iZXJsYWlucycsJycpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg5NjIsMjM2MTExLDM3LCdsaXRob2dyYXBoJywnbXV0dG9uJywnY3JlZGl0YWJs eScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5NjMsMjM2MTEyLDM3LCdzcG9uZ2Vycycs J2JyaWRnZWFibGUnLCdwaGlsb3NvcGhpYycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5 NjQsMjM2MTEzLDM3LCdwYXJlbnRob29kJywnc3RpY2tlcnMnLCdvcmVzJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDk2NSwyMzgwMDUsMzcsJ3Bvc2VkJywndHJhbnNjb250aW5lbnRhbCcs J0NhcmxldG9uJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk2NiwyMzgwMDYsMzcsJ2lu c3RydW1lbnRzJywnYW1hdGV1cmlzaCcsJ3RhcGUnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDk2NywyMzgwMDcsMzcsJ2ZpbGlhbCcsJ0dhbmRoaWFuJywnYWZsb2F0JywnQScpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg5NjgsMjM4MDA4LDM3LCdmaXhlZGx5Jywnc3RyYXRpZmllZCcs J2dvb2RuZXNzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5NjksMjM4MDA5LDM3LCdy ZWxpdmVzJywnY2hhbWJlcmxhaW5zJywnd2VsY29taW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDk3MCwyMzgwMTAsMzcsJ1BhbmRvcmEnLCdjcmVkaXRhYmx5JywnUGluc2t5JywnRkFT Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk3MSwyMzgwMTEsMzcsJ3dhdGVyaW5nJywncGhp bG9zb3BoaWMnLCdoYWx0aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk3MiwyMzgw MTIsMzcsJ3VuZ3JhdGVmdWwnLCdvcmVzJywnYmlibGlvZ3JhcGh5JywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDk3MywyMzgwMTMsMzcsJ3NlY3VyZXMnLCdDYXJsZXRvbicsJ2RlY29kaW5n JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk3NCwyNDA0MDEsNDEsJ2NoYXN0aXNlcnMn LCd0YXBlJywndmFyaWFuY2UnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk3NSwyNDA0 MDIsNDEsJ2ljb24nLCdhZmxvYXQnLCdhbGxvd2VkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICg5NzYsMjQwOTAxLDQxLCdyZXVuaXRpbmcnLCdnb29kbmVzcycsJ2RpcmUnLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk3NywyNDA5MDIsNDEsJ2ltYWdpbmluZycsJ3dlbGNvbWlu ZycsJ2R1YicsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTc4LDI0MTgwMSw0MSwnYWJp ZGluZycsJ1BpbnNreScsJ3BvaXNvbmluZycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5 NzksMjQyMTAxLDQxLCdvbW5pc2NpZW50bHknLCdoYWx0aW5nJywnSXJhcWlzJywnQScpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICg5ODAsMjQyMTAyLDQxLCdCcml0YW5uaWMnLCdiaWJsaW9ncmFw aHknLCdoZWF2aW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk4MSwyNDIyMDEsNDEs J3NjaG9sYXN0aWNzJywnZGVjb2RpbmcnLCdwb3B1bGF0aW9uJywnQScpOwotSU5TRVJUIElOVE8g dDMgVkFMVUVTICg5ODIsMjQyMjAyLDQxLCdtZWNoYW5pY3MnLCd2YXJpYW5jZScsJ2JvbWInLCdB Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk4MywyNDI1MDEsNDEsJ2h1bWlkbHknLCdhbGxv d2VkJywnTWFqb3JjYScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoOTg0LDI0MjUwMiw0 MSwnbWFzdGVycGllY2UnLCdkaXJlJywnR2Vyc2h3aW5zJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDk4NSwyNDYyMDEsNDEsJ2hvd2V2ZXInLCdkdWInLCdleHBsb3JlcnMnLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoOTg2LDI0NjIwMiw0MSwnTWVuZGVsaWFuJywncG9pc29uaW5n JywnbGlicmV0dG8nLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk4NywyNDYyMDMsNDEs J2phcnJlZCcsJ0lyYXFpcycsJ29jY3VycmVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDk4OCwyNDYyMDQsNDEsJ3Njb2xkcycsJ2hlYXZpbmcnLCdMYWdvcycsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICg5ODksMjQ2MjA1LDQxLCdpbmZhdHVhdGUnLCdwb3B1bGF0aW9uJywncmF0 cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5OTAsMjQ2MzAxLDQxLCd3aWxsZWQnLCdi b21iJywnYmFua3J1cHRjaWVzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5OTEsMjQ2 MzAyLDQxLCdqb3lmdWxseScsJ01ham9yY2EnLCdjcnlpbmcnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoOTkyLDI0ODAwMSw0MSwnTWljcm9zb2Z0JywnR2Vyc2h3aW5zJywndW5leHBlY3Rl ZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5OTMsMjQ4MDAyLDQxLCdmaWJyb3NpdGll cycsJ2V4cGxvcmVycycsJ2FjY2Vzc2VkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5 OTQsMjQ4MDAzLDQxLCdCYWx0aW1vcmVhbicsJ2xpYnJldHRvJywnY29sb3JmdWwnLCdBJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDk5NSwyNDgwMDQsNDEsJ2VxdWVzdHJpYW4nLCdvY2N1cnJl ZCcsJ3ZlcnNhdGlsaXR5JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5OTYsMjQ4MDA1 LDQxLCdHb29kcmljaCcsJ0xhZ29zJywnY29zeScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICg5OTcsMjQ4MDA2LDQxLCdhcGlzaCcsJ3JhdHMnLCdEYXJpdXMnLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDk5OCwyNDgwMDcsNDEsJ0FkbGVyaWFuJywnYmFua3J1cHRjaWVzJywnbWFz dGVyaW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg5OTksMjQ4MDA4LDQxLCdUcm9w ZXonLCdjcnlpbmcnLCdBc2lhdGljaXphdGlvbnMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDEwMDAsMjQ4MDA5LDQxLCdub3VucycsJ3VuZXhwZWN0ZWQnLCdvZmZlcmVycycsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAwMSwyNDgwMTAsNDEsJ2Rpc3RyYWN0aW5nJywnYWNj ZXNzZWQnLCd1bmNsZXMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMDIsMjQ4MDEx LDQxLCdtdXR0b24nLCdjb2xvcmZ1bCcsJ3NsZWVwd2FsaycsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgxMDAzLDI0ODAxMiw0MSwnYnJpZGdlYWJsZScsJ3ZlcnNhdGlsaXR5JywnRXJuZXN0 aW5lJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMDQsMjQ4MDEzLDQxLCdzdGlja2Vy cycsJ2Nvc3knLCdjaGVja3N1bW1pbmcnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAw NSwyNDgwMTQsNDEsJ3RyYW5zY29udGluZW50YWwnLCdEYXJpdXMnLCdzdG9wcGVkJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMDYsMjQ4MDE1LDQxLCdhbWF0ZXVyaXNoJywnbWFzdGVy aW5nJywnc2lja2VyJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMDcsMjQ4MDE2LDQx LCdHYW5kaGlhbicsJ0FzaWF0aWNpemF0aW9ucycsJ0l0YWxpYW5pemF0aW9uJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDEwMDgsMjQ4MDE3LDQxLCdzdHJhdGlmaWVkJywnb2ZmZXJlcnMn LCdhbHBoYWJldGljJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMDksMjQ4MDE4LDQx LCdjaGFtYmVybGFpbnMnLCd1bmNsZXMnLCdwaGFybWFjZXV0aWMnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTAxMCwyNDgwMTksNDEsJ2NyZWRpdGFibHknLCdzbGVlcHdhbGsnLCdjcmVh dG9yJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMTEsMjQ4MDIwLDQxLCdwaGlsb3Nv cGhpYycsJ0VybmVzdGluZScsJ2NoZXNzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEw MTIsMjQ4MDIxLDQxLCdvcmVzJywnY2hlY2tzdW1taW5nJywnY2hhcmNvYWwnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMTAxMywyNDgxMDEsNDEsJ0NhcmxldG9uJywnc3RvcHBlZCcsJ0Vw aXBoYW55JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDE0LDI0ODEwMiw0MSwndGFw ZScsJ3NpY2tlcicsJ2J1bGxkb3plcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAx NSwyNDgyMDEsNDEsJ2FmbG9hdCcsJ0l0YWxpYW5pemF0aW9uJywnUHlnbWFsaW9uJywnQScpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDE2LDI0ODIwMiw0MSwnZ29vZG5lc3MnLCdhbHBoYWJl dGljJywnY2FyZXNzaW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDE3LDI0ODIw Myw0MSwnd2VsY29taW5nJywncGhhcm1hY2V1dGljJywnUGFsZXN0aW5lJywnQScpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMDE4LDI0ODIwNCw0MSwnUGluc2t5JywnY3JlYXRvcicsJ3JlZ2lt ZW50ZWQnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMTksMjQ4MjA1LDQxLCdoYWx0 aW5nJywnY2hlc3MnLCdzY2FycycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAyMCwy NDgyMDYsNDEsJ2JpYmxpb2dyYXBoeScsJ2NoYXJjb2FsJywncmVhbGVzdCcsJ0EnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMTAyMSwyNDgyMDcsNDEsJ2RlY29kaW5nJywnRXBpcGhhbnknLCdk aWZmdXNpbmcnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwMjIsMjQ4MjA4LDQxLCd2 YXJpYW5jZScsJ2J1bGxkb3plcycsJ2NsdWJyb29tJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICgxMDIzLDI0ODIwOSw0MSwnYWxsb3dlZCcsJ1B5Z21hbGlvbicsJ0JseXRoZScsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAyNCwyNDgyMTAsNDEsJ2RpcmUnLCdjYXJlc3Npbmcn LCdhaGVhZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDI1LDI0ODIxMSw1MCwnZHVi JywnUGFsZXN0aW5lJywncmV2aXZlcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDI2 LDI1MDUwMSwzNCwncG9pc29uaW5nJywncmVnaW1lbnRlZCcsJ3JldHJhbnNtaXR0aW5nJywnQScp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDI3LDI1MDUwMiwzNCwnSXJhcWlzJywnc2NhcnMn LCdsYW5kc2xpZGUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAyOCwyNTA1MDMsMzQs J2hlYXZpbmcnLCdyZWFsZXN0JywnRWlmZmVsJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDEwMjksMjUwNTA0LDM0LCdwb3B1bGF0aW9uJywnZGlmZnVzaW5nJywnYWJzZW50ZWUnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAzMCwyNTA1MDUsMzQsJ2JvbWInLCdjbHVicm9vbScs J2F5ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDMxLDI1MDYwMSwzNCwnTWFqb3Jj YScsJ0JseXRoZScsJ2ZvcmtlZCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAzMiwy NTA2MDIsMzQsJ0dlcnNod2lucycsJ2FoZWFkJywnUGVydXZpYW5pemVzJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDEwMzMsMjUwNjAzLDM0LCdleHBsb3JlcnMnLCdyZXZpdmVyJywnY2xl cmtlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDM0LDI1MDYwNCwzNCwnbGlicmV0 dG8nLCdyZXRyYW5zbWl0dGluZycsJ3R1dG9yJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDEwMzUsMjUwNjA1LDM0LCdvY2N1cnJlZCcsJ2xhbmRzbGlkZScsJ2JvdWxldmFyZCcsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDM2LDI1MTAwMSwzNCwnTGFnb3MnLCdFaWZmZWwnLCdz aHV0dGVyZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAzNywyNTEwMDIsMzQsJ3Jh dHMnLCdhYnNlbnRlZScsJ3F1b3RlcycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTAz OCwyNTEwMDMsMzQsJ2JhbmtydXB0Y2llcycsJ2F5ZScsJ0NhbHRlY2gnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoMTAzOSwyNTEwMDQsMzQsJ2NyeWluZycsJ2ZvcmtlZCcsJ01vc3NiZXJn JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNDAsMjUxMDA1LDM0LCd1bmV4cGVjdGVk JywnUGVydXZpYW5pemVzJywna2VwdCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDQx LDI1MTMwMSwzNCwnYWNjZXNzZWQnLCdjbGVya2VkJywncm91bmRseScsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgxMDQyLDI1MTMwMiwzNCwnY29sb3JmdWwnLCd0dXRvcicsJ2ZlYXR1cmVz JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDQzLDI1MTMwMywzNCwndmVyc2F0aWxp dHknLCdib3VsZXZhcmQnLCdpbWFnaW5hYmxlJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgxMDQ0LDI1MTMwNCwzNCwnY29zeScsJ3NodXR0ZXJlZCcsJ2NvbnRyb2xsZXInLCcnKTsKLUlO U0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA0NSwyNTEzMDUsMzQsJ0Rhcml1cycsJ3F1b3RlcycsJ3Jh Y2lhbCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDQ2LDI1MTQwMSwzNCwnbWFzdGVy aW5nJywnQ2FsdGVjaCcsJ3VwcmlzaW5ncycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MTA0NywyNTE0MDIsMzQsJ0FzaWF0aWNpemF0aW9ucycsJ01vc3NiZXJnJywnbmFycm93ZWQnLCdB Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNDgsMjUxNDAzLDM0LCdvZmZlcmVycycsJ2tl cHQnLCdjYW5ub3QnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNDksMjUxNDA0LDM0 LCd1bmNsZXMnLCdyb3VuZGx5JywndmVzdCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgx MDUwLDI1MTQwNSwzNCwnc2xlZXB3YWxrJywnZmVhdHVyZXMnLCdmYW1pbmUnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMTA1MSwyNTE0MDYsMzQsJ0VybmVzdGluZScsJ2ltYWdpbmFibGUn LCdzdWdhcnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA1MiwyNTE4MDEsMzQsJ2No ZWNrc3VtbWluZycsJ2NvbnRyb2xsZXInLCdleHRlcm1pbmF0ZWQnLCdBJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDEwNTMsMjUxODAyLDM0LCdzdG9wcGVkJywncmFjaWFsJywnYmVsYXlzJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNTQsMjUyMTAxLDM0LCdzaWNrZXInLCd1cHJp c2luZ3MnLCdIb2RnZXMnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNTUsMjUyMTAy LDM0LCdJdGFsaWFuaXphdGlvbicsJ25hcnJvd2VkJywndHJhbnNsYXRhYmxlJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDEwNTYsMjUyMzAxLDM0LCdhbHBoYWJldGljJywnY2Fubm90Jywn ZHVhbGl0eScsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA1NywyNTIzMDIsMzQsJ3Bo YXJtYWNldXRpYycsJ3Zlc3QnLCdyZWNvcmRpbmcnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDEwNTgsMjUyMzAzLDM0LCdjcmVhdG9yJywnZmFtaW5lJywncm91c2VzJywnQScpOwotSU5T RVJUIElOVE8gdDMgVkFMVUVTICgxMDU5LDI1MjMwNCwzNCwnY2hlc3MnLCdzdWdhcnMnLCdwb2lz b24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA2MCwyNTIzMDUsMzQsJ2NoYXJjb2Fs JywnZXh0ZXJtaW5hdGVkJywnYXR0aXR1ZGUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MTA2MSwyNTIzMDYsMzQsJ0VwaXBoYW55JywnYmVsYXlzJywnZHVzdGVkJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDEwNjIsMjUyMzA3LDM0LCdidWxsZG96ZXMnLCdIb2RnZXMnLCdlbmNv bXBhc3NlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDYzLDI1MjMwOCwzNCwnUHln bWFsaW9uJywndHJhbnNsYXRhYmxlJywncHJlc2VudGF0aW9uJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDEwNjQsMjUyMzA5LDM0LCdjYXJlc3NpbmcnLCdkdWFsaXR5JywnS2FudGlhbics JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDY1LDI1NjAwMSwzNCwnUGFsZXN0aW5lJywn cmVjb3JkaW5nJywnaW1wcmVjaXNpb24nLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEw NjYsMjU2MDAyLDM0LCdyZWdpbWVudGVkJywncm91c2VzJywnc2F2aW5nJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDEwNjcsMjU2MDAzLDM0LCdzY2FycycsJ3BvaXNvbicsJ21hdGVybmFs JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwNjgsMjU2MDA0LDM0LCdyZWFsZXN0Jywn YXR0aXR1ZGUnLCdoZXdlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDY5LDI1NjAw NSwzNCwnZGlmZnVzaW5nJywnZHVzdGVkJywna2Vyb3NlbmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTA3MCwyNTgwMDEsMzQsJ2NsdWJyb29tJywnZW5jb21wYXNzZXMnLCdDdWJhbnMn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA3MSwyNTgwMDIsMzQsJ0JseXRoZScsJ3By ZXNlbnRhdGlvbicsJ3Bob3RvZ3JhcGhlcnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MTA3MiwyNTgwMDMsMzQsJ2FoZWFkJywnS2FudGlhbicsJ255bXBoJywnQScpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgxMDczLDI1ODAwNCwzNCwncmV2aXZlcicsJ2ltcHJlY2lzaW9uJywnYmVk bGFtJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDc0LDI1ODAwNSwzNCwncmV0cmFu c21pdHRpbmcnLCdzYXZpbmcnLCdub3J0aCcsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAo MTA3NSwyNTgwMDYsMzQsJ2xhbmRzbGlkZScsJ21hdGVybmFsJywnU2Nob2VuYmVyZycsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA3NiwyNTgwMDcsMzQsJ0VpZmZlbCcsJ2hld2VkJywn Ym90YW55JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDc3LDI1ODAwOCwzNCwnYWJz ZW50ZWUnLCdrZXJvc2VuZScsJ2N1cnMnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA3 OCwyNTgwMDksMzQsJ2F5ZScsJ0N1YmFucycsJ3NvbGlkaWZpY2F0aW9uJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDEwNzksMjU4MDEwLDM0LCdmb3JrZWQnLCdwaG90b2dyYXBoZXJzJywn aW5oZXJpdHJlc3NlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDgwLDI1ODAxMSwz NCwnUGVydXZpYW5pemVzJywnbnltcGgnLCdzdGlsbGVyJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDEwODEsMjU4MTAxLDY4LCdjbGVya2VkJywnYmVkbGFtJywndDEnLCdBJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDEwODIsMjU4MTAyLDY4LCd0dXRvcicsJ25vcnRoJywnc3VpdGUn LCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwODMsMjU4MTAzLDM0LCdib3VsZXZhcmQn LCdTY2hvZW5iZXJnJywncmFuc29tZXInLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA4 NCwyNTgxMDQsNjgsJ3NodXR0ZXJlZCcsJ2JvdGFueScsJ1dpbGx5JywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDEwODUsMjU4MTA1LDY4LCdxdW90ZXMnLCdjdXJzJywnUmVuYScsJ0EnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA4NiwyNTgxMDYsNjgsJ0NhbHRlY2gnLCdzb2xpZGlm aWNhdGlvbicsJ1NlYXR0bGUnLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwODcsMjU4 MTA3LDY4LCdNb3NzYmVyZycsJ2luaGVyaXRyZXNzZXMnLCdyZWxheGVzJywnQScpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMDg4LDI1ODEwOCw2OCwna2VwdCcsJ3N0aWxsZXInLCdleGNsYWlt JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwODksMjU4MTA5LDY4LCdyb3VuZGx5Jywn dDEnLCdpbXBsaWNhdGVkJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDkwLDI1ODEx MCw2OCwnZmVhdHVyZXMnLCdzdWl0ZScsJ2Rpc3Rpbmd1aXNoJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDEwOTEsMjU4MTExLDY4LCdpbWFnaW5hYmxlJywncmFuc29tZXInLCdhc3NheWVk JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwOTIsMjU4MTEyLDY4LCdjb250cm9sbGVy JywnV2lsbHknLCdob21lb3duZXInLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA5Mywy NTgxMTMsNjgsJ3JhY2lhbCcsJ1JlbmEnLCdhbmQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMTA5NCwyNTgyMDEsMzQsJ3VwcmlzaW5ncycsJ1NlYXR0bGUnLCdzdGVhbHRoJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEwOTUsMjU4MjAyLDM0LCduYXJyb3dlZCcsJ3JlbGF4ZXMn LCdjb2luY2lkaW5nJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDk2LDI1ODIwMywz NCwnY2Fubm90JywnZXhjbGFpbScsJ2ZvdW5kZXInLCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDEwOTcsMjU4MjA0LDM0LCd2ZXN0JywnaW1wbGljYXRlZCcsJ2Vudmlyb25pbmcnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTA5OCwyNTgyMDUsMzQsJ2ZhbWluZScsJ2Rpc3Rpbmd1 aXNoJywnamV3ZWxyeScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMDk5LDI1ODMwMSwz NCwnc3VnYXJzJywnYXNzYXllZCcsJ2xlbW9ucycsJ0EnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMTEwMCwyNTg0MDEsMzQsJ2V4dGVybWluYXRlZCcsJ2hvbWVvd25lcicsJ2Jyb2tlbm5lc3Mn LCdBJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMDEsMjU4NDAyLDM0LCdiZWxheXMnLCdh bmQnLCdiZWRwb3N0JywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTAyLDI1ODQwMywz NCwnSG9kZ2VzJywnc3RlYWx0aCcsJ2Fzc3VyZXJzJywnQScpOwotSU5TRVJUIElOVE8gdDMgVkFM VUVTICgxMTAzLDI1ODQwNCwzNCwndHJhbnNsYXRhYmxlJywnY29pbmNpZGluZycsJ2Fubm95ZXJz JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMDQsMjU4NDA1LDM0LCdkdWFsaXR5Jywn Zm91bmRlcicsJ2FmZml4ZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTEwNSwyNTg0 MDYsMzQsJ3JlY29yZGluZycsJ2Vudmlyb25pbmcnLCd3YXJibGluZycsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgxMTA2LDI1ODQwNywzNCwncm91c2VzJywnamV3ZWxyeScsJ3NlcmlvdXNs eScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTA3LDIyODEyMywzNywncG9pc29uJywn bGVtb25zJywnYm9hc3RlZCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTA4LDI1MDYw NiwzNCwnYXR0aXR1ZGUnLCdicm9rZW5uZXNzJywnQ2hhbnRpbGx5JywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDExMDksMjA4NDA1LDM3LCdkdXN0ZWQnLCdiZWRwb3N0JywnSXJhbml6ZXMn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTExMCwyMTIxMDEsMzcsJ2VuY29tcGFzc2Vz JywnYXNzdXJlcnMnLCd2aW9saW5pc3QnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTEx MSwyMTgyMDYsMzcsJ3ByZXNlbnRhdGlvbicsJ2Fubm95ZXJzJywnZXh0cmFtYXJpdGFsJywnJyk7 Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMTIsMTUwNDAxLDM3LCdLYW50aWFuJywnYWZmaXhl ZCcsJ3NwYXRlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTEzLDI0ODIxMiw0MSwn aW1wcmVjaXNpb24nLCd3YXJibGluZycsJ2Nsb2Frcm9vbScsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgxMTE0LDEyODAyNiwwMCwnc2F2aW5nJywnc2VyaW91c2x5JywnZ2F6ZXInLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTExNSwxMjgwMjQsMDAsJ21hdGVybmFsJywnYm9hc3Rl ZCcsJ2hhbmQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTExNiwxMjgwMjcsMDAsJ2hl d2VkJywnQ2hhbnRpbGx5JywndHVja2VkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDEx MTcsMTI4MDI1LDAwLCdrZXJvc2VuZScsJ0lyYW5pemVzJywnZ2VtcycsJycpOwotSU5TRVJUIElO VE8gdDMgVkFMVUVTICgxMTE4LDEyODEwOSwwMCwnQ3ViYW5zJywndmlvbGluaXN0JywnY2xpbmtl cicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTE5LDEyODcwNSwwMCwncGhvdG9ncmFw aGVycycsJ2V4dHJhbWFyaXRhbCcsJ3JlZmluZXInLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMTEyMCwxMjYzMDMsMDAsJ255bXBoJywnc3BhdGVzJywnY2FsbHVzJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDExMjEsMTI4MzA4LDAwLCdiZWRsYW0nLCdjbG9ha3Jvb20nLCdsZW9w YXJkcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTIyLDEyODIwNCwwMCwnbm9ydGgn LCdnYXplcicsJ2NvbWZvcnRpbmdseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTIz LDEyODIwNSwwMCwnU2Nob2VuYmVyZycsJ2hhbmQnLCdnZW5lcmljYWxseScsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMTI0LDEyODIwNiwwMCwnYm90YW55JywndHVja2VkJywnZ2V0dGVy cycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTI1LDEyODIwNywwMCwnY3VycycsJ2dl bXMnLCdzZXh1YWxseScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTI2LDExODIwNSww MCwnc29saWRpZmljYXRpb24nLCdjbGlua2VyJywnc3BlYXInLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTEyNywxMTY4MDEsMDAsJ2luaGVyaXRyZXNzZXMnLCdyZWZpbmVyJywnc2VydW1z JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMjgsMTE2ODAzLDAwLCdzdGlsbGVyJywn Y2FsbHVzJywnSXRhbGlhbml6YXRpb24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTEy OSwxMTY4MDQsMDAsJ3QxJywnbGVvcGFyZHMnLCdhdHRlbmRhbnRzJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDExMzAsMTE2ODAyLDAwLCdzdWl0ZScsJ2NvbWZvcnRpbmdseScsJ3NwaWVz JywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMzEsMTI4NjA1LDAwLCdyYW5zb21lcics J2dlbmVyaWNhbGx5JywnQW50aG9ueScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTMy LDExODMwOCwwMCwnV2lsbHknLCdnZXR0ZXJzJywncGxhbmFyJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDExMzMsMTEzNzAyLDAwLCdSZW5hJywnc2V4dWFsbHknLCdjdXBwZWQnLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTEzNCwxMTM3MDMsMDAsJ1NlYXR0bGUnLCdzcGVhcics J2NsZWFuc2VyJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMzUsMTEyMTAzLDAwLCdy ZWxheGVzJywnc2VydW1zJywnY29tbXV0ZXJzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDExMzYsMTE4MDA5LDAwLCdleGNsYWltJywnSXRhbGlhbml6YXRpb24nLCdob25leXN1Y2tsZScs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICg1MTM2LDExMTgwMDksMDAsJ2V4Y2xhaW0nLCdJ dGFsaWFuaXphdGlvbicsJ2hvbmV5c3Vja2xlJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMg KDExMzcsMTM4MDExLDAwLCdpbXBsaWNhdGVkJywnYXR0ZW5kYW50cycsJ29ycGhhbmFnZScsJycp OwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTM4LDEzODAxMCwwMCwnZGlzdGluZ3Vpc2gnLCdz cGllcycsJ3NraWVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExMzksMTM4MDEyLDAw LCdhc3NheWVkJywnQW50aG9ueScsJ2NydXNoZXJzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxV RVMgKDExNDAsMDY4MzA0LDAwLCdob21lb3duZXInLCdwbGFuYXInLCdQdXJpdGFuJywnJyk7Ci1J TlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExNDEsMDc4MDA5LDAwLCdhbmQnLCdjdXBwZWQnLCdzcXVl ZXplcicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTQyLDEwODAxMywwMCwnc3RlYWx0 aCcsJ2NsZWFuc2VyJywnYnJ1aXNlcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTQz LDA4NDAwNCwwMCwnY29pbmNpZGluZycsJ2NvbW11dGVycycsJ2JvbmZpcmUnLCcnKTsKLUlOU0VS VCBJTlRPIHQzIFZBTFVFUyAoMTE0NCwwODM0MDIsMDAsJ2ZvdW5kZXInLCdob25leXN1Y2tsZScs J0NvbG9tYm8nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE0NSwwODQwMDMsMDAsJ2Vu dmlyb25pbmcnLCdvcnBoYW5hZ2UnLCdub25kZWNyZWFzaW5nJywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDExNDYsMDg4NTA0LDAwLCdqZXdlbHJ5Jywnc2tpZXMnLCdpbm5vY2VudHMnLCcn KTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE0NywwODgwMDUsMDAsJ2xlbW9ucycsJ2NydXNo ZXJzJywnbWFza2VkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExNDgsMDg4MDA3LDAw LCdicm9rZW5uZXNzJywnUHVyaXRhbicsJ2ZpbGUnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVF UyAoMTE0OSwwODgwMDYsMDAsJ2JlZHBvc3QnLCdzcXVlZXplcicsJ2JydXNoJywnJyk7Ci1JTlNF UlQgSU5UTyB0MyBWQUxVRVMgKDExNTAsMTQ4MDI1LDAwLCdhc3N1cmVycycsJ2JydWlzZXMnLCdt dXRpbGF0ZScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTUxLDE0ODAyNCwwMCwnYW5u b3llcnMnLCdib25maXJlJywnbW9tbXknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE1 MiwxMzgzMDUsMDAsJ2FmZml4ZWQnLCdDb2xvbWJvJywnYnVsa2hlYWRzJywnJyk7Ci1JTlNFUlQg SU5UTyB0MyBWQUxVRVMgKDExNTMsMTM4MzA2LDAwLCd3YXJibGluZycsJ25vbmRlY3JlYXNpbmcn LCd1bmRlY2xhcmVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExNTQsMTUyNzAxLDAw LCdzZXJpb3VzbHknLCdpbm5vY2VudHMnLCdkaXNwbGFjZW1lbnRzJywnJyk7Ci1JTlNFUlQgSU5U TyB0MyBWQUxVRVMgKDExNTUsMTQ4NTA1LDAwLCdib2FzdGVkJywnbWFza2VkJywnbmllY2VzJywn Jyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExNTYsMTU4MDAzLDAwLCdDaGFudGlsbHknLCdm aWxlJywnY29lZHVjYXRpb24nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE1NywxNTYy MDEsMDAsJ0lyYW5pemVzJywnYnJ1c2gnLCdicmFzc3knLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoMTE1OCwxNTYyMDIsMDAsJ3Zpb2xpbmlzdCcsJ211dGlsYXRlJywnYXV0aGVudGljYXRv cicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTU5LDE1ODMwNywwMCwnZXh0cmFtYXJp dGFsJywnbW9tbXknLCdXYXNob2UnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE2MCwx NTg0MDIsMDAsJ3NwYXRlcycsJ2J1bGtoZWFkcycsJ3Blbm55JywnJyk7Ci1JTlNFUlQgSU5UTyB0 MyBWQUxVRVMgKDExNjEsMTU4NDAxLDAwLCdjbG9ha3Jvb20nLCd1bmRlY2xhcmVkJywnRmxhZ2xl cicsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTYyLDA2ODAxMywwMCwnZ2F6ZXInLCdk aXNwbGFjZW1lbnRzJywnc3RvbmVkJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExNjMs MDY4MDEyLDAwLCdoYW5kJywnbmllY2VzJywnY3JhbmVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDExNjQsMDY4MjAzLDAwLCd0dWNrZWQnLCdjb2VkdWNhdGlvbicsJ21hc3RlcmZ1bCcs JycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTY1LDA4ODIwNSwwMCwnZ2VtcycsJ2JyYXNz eScsJ2JpcmFjaWFsJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExNjYsMDY4NzA0LDAw LCdjbGlua2VyJywnYXV0aGVudGljYXRvcicsJ3N0ZWFtc2hpcHMnLCcnKTsKLUlOU0VSVCBJTlRP IHQzIFZBTFVFUyAoMTE2NywwNjg2MDQsMDAsJ3JlZmluZXInLCdXYXNob2UnLCd3aW5kbWlsbHMn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE2OCwxNTg1MDIsMDAsJ2NhbGx1cycsJ3Bl bm55JywnZXhwbG9pdCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTY5LDEyMzEwMyww MCwnbGVvcGFyZHMnLCdGbGFnbGVyJywncml2ZXJmcm9udCcsJycpOwotSU5TRVJUIElOVE8gdDMg VkFMVUVTICgxMTcwLDE0ODAyNiwwMCwnY29tZm9ydGluZ2x5Jywnc3RvbmVkJywnc2lzdGVybHkn LCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE3MSwxMjMzMDIsMDAsJ2dlbmVyaWNhbGx5 JywnY3JhbmVzJywnc2hhcnBzaG9vdCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTcy LDA3NjUwMywwMCwnZ2V0dGVycycsJ21hc3RlcmZ1bCcsJ21pdHRlbnMnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoMTE3MywxMjYzMDQsMDAsJ3NleHVhbGx5JywnYmlyYWNpYWwnLCdpbnRl cmRlcGVuZGVuY3knLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE3NCwwNjgzMDYsMDAs J3NwZWFyJywnc3RlYW1zaGlwcycsJ3BvbGljeScsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVT ICgxMTc1LDE0MzUwNCwwMCwnc2VydW1zJywnd2luZG1pbGxzJywndW5sZWFzaGluZycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTc2LDE2MDIwMSwwMCwnSXRhbGlhbml6YXRpb24nLCdl eHBsb2l0JywncHJldGVuZGVycycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTc3LDE0 ODAyOCwwMCwnYXR0ZW5kYW50cycsJ3JpdmVyZnJvbnQnLCdvdmVyc3RhdGVtZW50cycsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTc4LDE0ODAyNywwMCwnc3BpZXMnLCdzaXN0ZXJseScs J2JpcnRoZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE3OSwxNDM1MDUsMDAsJ0Fu dGhvbnknLCdzaGFycHNob290Jywnb3Bwb3J0dW5pc20nLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZB TFVFUyAoMTE4MCwxMDgwMTQsMDAsJ3BsYW5hcicsJ21pdHRlbnMnLCdzaG93cm9vbScsJycpOwot SU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTgxLDA3NjEwNCwwMCwnY3VwcGVkJywnaW50ZXJkZXBl bmRlbmN5JywnY29tcHJvbWlzaW5nbHknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE4 MiwwNzgxMDYsMDAsJ2NsZWFuc2VyJywncG9saWN5JywnTWVkaWNhcmUnLCcnKTsKLUlOU0VSVCBJ TlRPIHQzIFZBTFVFUyAoMTE4MywxMjYxMDIsMDAsJ2NvbW11dGVycycsJ3VubGVhc2hpbmcnLCdj b3JyZXNwb25kcycsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTg0LDEyODAyOSwwMCwn aG9uZXlzdWNrbGUnLCdwcmV0ZW5kZXJzJywnaGFyZHdhcmUnLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTE4NSwxMjgwMjgsMDAsJ29ycGhhbmFnZScsJ292ZXJzdGF0ZW1lbnRzJywnaW1w bGFudCcsJycpOwotSU5TRVJUIElOVE8gdDMgVkFMVUVTICgxMTg2LDAxODQxMCwwMCwnc2tpZXMn LCdiaXJ0aGVkJywnQWxpY2lhJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBWQUxVRVMgKDExODcsMTI4 MTEwLDAwLCdjcnVzaGVycycsJ29wcG9ydHVuaXNtJywncmVxdWVzdGluZycsJycpOwotSU5TRVJU IElOVE8gdDMgVkFMVUVTICgxMTg4LDE0ODUwNiwwMCwnUHVyaXRhbicsJ3Nob3dyb29tJywncHJv ZHVjZWQnLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE4OSwxMjMzMDMsMDAsJ3NxdWVl emVyJywnY29tcHJvbWlzaW5nbHknLCdjcml0aWNpemVzJywnJyk7Ci1JTlNFUlQgSU5UTyB0MyBW QUxVRVMgKDExOTAsMTIzMzA0LDAwLCdicnVpc2VzJywnTWVkaWNhcmUnLCdiYWNrZXInLCcnKTsK LUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE5MSwwNjg1MDQsMDAsJ2JvbmZpcmUnLCdjb3JyZXNw b25kcycsJ3Bvc2l0aXZlbHknLCcnKTsKLUlOU0VSVCBJTlRPIHQzIFZBTFVFUyAoMTE5MiwwNjgz MDUsMDAsJ0NvbG9tYm8nLCdoYXJkd2FyZScsJ2NvbGlja3knLCcnKTsKLUlOU0VSVCBJTlRPIHQz IFZBTFVFUyAoMTE5MywwMDAwMDAsMDAsJ25vbmRlY3JlYXNpbmcnLCdpbXBsYW50JywndGhyaWxs aW5nbHknLCcnKTsKLS0tZW5hYmxlX3F1ZXJ5X2xvZwotSU5TRVJUIElOVE8gdDMgKGZsZDEsIGNv bXBhbnlucikgVkFMVUVTICg5OTk5OTksOTkpOwotCi1DUkVBVEUgVEFCTEUgdDQgKAotICBjb21w YW55bnIgdGlueWludCgyKSB1bnNpZ25lZCB6ZXJvZmlsbCBOT1QgTlVMTCBkZWZhdWx0ICcwMCcs Ci0gIGNvbXBhbnluYW1lIGNoYXIoMzApIE5PVCBOVUxMIGRlZmF1bHQgJycsCi0gIFBSSU1BUlkg S0VZIChjb21wYW55bnIpLAotICBVTklRVUUgS0VZIGNvbXBhbnluYW1lKGNvbXBhbnluYW1lKQot KSBNQVhfUk9XUz01MCBQQUNLX0tFWVM9MSBDT01NRU5UPSdjb21wYW55bmFtZXMnOwotCi0tLWRp c2FibGVfcXVlcnlfbG9nCi1JTlNFUlQgSU5UTyB0NCAoY29tcGFueW5yLCBjb21wYW55bmFtZSkg VkFMVUVTICgyOSwnY29tcGFueSAxJyk7Ci1JTlNFUlQgSU5UTyB0NCAoY29tcGFueW5yLCBjb21w YW55bmFtZSkgVkFMVUVTICgzNCwnY29tcGFueSAyJyk7Ci1JTlNFUlQgSU5UTyB0NCAoY29tcGFu eW5yLCBjb21wYW55bmFtZSkgVkFMVUVTICgzNiwnY29tcGFueSAzJyk7Ci1JTlNFUlQgSU5UTyB0 NCAoY29tcGFueW5yLCBjb21wYW55bmFtZSkgVkFMVUVTICgzNywnY29tcGFueSA0Jyk7Ci1JTlNF UlQgSU5UTyB0NCAoY29tcGFueW5yLCBjb21wYW55bmFtZSkgVkFMVUVTICg0MCwnY29tcGFueSA1 Jyk7Ci1JTlNFUlQgSU5UTyB0NCAoY29tcGFueW5yLCBjb21wYW55bmFtZSkgVkFMVUVTICg0MSwn Y29tcGFueSA2Jyk7Ci1JTlNFUlQgSU5UTyB0NCAoY29tcGFueW5yLCBjb21wYW55bmFtZSkgVkFM VUVTICg1MywnY29tcGFueSA3Jyk7Ci1JTlNFUlQgSU5UTyB0NCAoY29tcGFueW5yLCBjb21wYW55 bmFtZSkgVkFMVUVTICg1OCwnY29tcGFueSA4Jyk7Ci1JTlNFUlQgSU5UTyB0NCAoY29tcGFueW5y LCBjb21wYW55bmFtZSkgVkFMVUVTICg2NSwnY29tcGFueSA5Jyk7Ci1JTlNFUlQgSU5UTyB0NCAo Y29tcGFueW5yLCBjb21wYW55bmFtZSkgVkFMVUVTICg2OCwnY29tcGFueSAxMCcpOwotSU5TRVJU IElOVE8gdDQgKGNvbXBhbnluciwgY29tcGFueW5hbWUpIFZBTFVFUyAoNTAsJ2NvbXBhbnkgMTEn KTsKLUlOU0VSVCBJTlRPIHQ0IChjb21wYW55bnIsIGNvbXBhbnluYW1lKSBWQUxVRVMgKDAwLCdV bmtub3duJyk7Ci0tLWVuYWJsZV9xdWVyeV9sb2cKLQotQ1JFQVRFIFRBQkxFIHQ1ICgKLSAgYSBp bnQsIGIgdmFyY2hhcigzMCksCi0gIFBSSU1BUlkgS0VZKGEpCi0pOwotSU5TRVJUIElOVE8gdDUg VkFMVUVTICgxLCdvbmUnKTsKLUlOU0VSVCBJTlRPIHQ1IFZBTFVFUyAoMiwndHdvJyk7Ci1JTlNF UlQgSU5UTyB0NSBWQUxVRVMgKDMsJ3RocmVlJyk7Ci1JTlNFUlQgSU5UTyB0NSBWQUxVRVMgKDQs J2ZvdXInKTsKLQotQ1JFQVRFIFRBQkxFIHQ2IEFTIFNFTEVDVCAqIEZST00gdDU7Ci0KLQotIyAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCi0j IC0tLSBUZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMK LSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g IwotU0VMRUNUICogRlJPTSB0MSBMRUZUIEpPSU4gdDIgT04gZjEgPSBmMzsKLVNFTEVDVCB0My5j b21wYW55bnIsY29tcGFueW5hbWUgRlJPTSB0MyBMRUZUIEpPSU4gdDQgVVNJTkcgKGNvbXBhbnlu cikgV0hFUkUgdDQuY29tcGFueW5yIElTIE5VTEw7Ci1TRUxFQ1QgKiBGUk9NIHQ2IExFRlQgSk9J TiB0NSBPTih0NS5hID0gdDYuYSkgT1JERVIgQlkgdDYuYTsKLVNFTEVDVCAqIEZST00gdDYgTEVG VCBKT0lOIHQ1IFVTSU5HKGEpIE9SREVSIEJZIHQ2LmE7Ci0KLQotIyAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCi0jIC0tLSBDaGVjayAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKLSMgLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwotU0VMRUNUIGNvdW50 KCopIEZST00gdDE7Ci1TRUxFQ1QgY291bnQoKikgRlJPTSB0MjsKLVNFTEVDVCBjb3VudCgqKSBG Uk9NIHQzOwotU0VMRUNUIGNvdW50KCopIEZST00gdDQ7Ci1TRUxFQ1QgY291bnQoKikgRlJPTSB0 NTsKLVNFTEVDVCBjb3VudCgqKSBGUk9NIHQ2OwotCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKLSMgLS0tIEZpbmFsIGNsZWFudXAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0gIwotIyAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCi1EUk9QIFRBQkxFIHQxOwotRFJP UCBUQUJMRSB0MjsKLURST1AgVEFCTEUgdDM7Ci1EUk9QIFRBQkxFIHQ0OwotRFJPUCBUQUJMRSB0 NTsKLURST1AgVEFCTEUgdDY7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9m YWxjb25fdGVhbS9yL2ZhbGNvbl9idWdfMjM5NDUucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1 aXRlL2ZhbGNvbl90ZWFtL3IvZmFsY29uX2J1Z18yMzk0NS5yZXN1bHQJMjAwOC0wNC0yMCAwMDow NToxNyArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFtL3IvZmFsY29uX2J1 Z18yMzk0NS5yZXN1bHQJMjAwOC0wOS0wOSAwODozMDoxOCArMDAwMApAQCAtMSwxNCArMSwxNCBA QAogKioqIEJ1ZyAjMjM5NDUgKioqCi1TRVQgU1RPUkFHRV9FTkdJTkUgPSBGYWxjb247CitTRVQg QEBzdG9yYWdlX2VuZ2luZSA9ICdGYWxjb24nOwogRFJPUCBUQUJMRSBJRiBFWElTVFMgdDE7Ci1T RVQgQVVUT0NPTU1JVCA9IDE7CitTRVQgQEBhdXRvY29tbWl0ID0gMTsKIENSRUFURSBUQUJMRSB0 MSAoUFJJTUFSWSBLRVkgKGEpKSBTRUxFQ1QgMSBBUyBhIFVOSU9OIEFMTCBTRUxFQ1QgMTsKIEVS Uk9SIDIzMDAwOiBEdXBsaWNhdGUgZW50cnkgJzEnIGZvciBrZXkgJ1BSSU1BUlknCiBTRUxFQ1Qg KiBGUk9NIHQxOwogRVJST1IgNDJTMDI6IFRhYmxlICd0ZXN0LnQxJyBkb2Vzbid0IGV4aXN0CiBE Uk9QIFRBQkxFIHQxOwogRVJST1IgNDJTMDI6IFVua25vd24gdGFibGUgJ3QxJwotU0VUIEFVVE9D T01NSVQgPSAwOworU0VUIEBAYXV0b2NvbW1pdCA9IDA7CiBDUkVBVEUgVEFCTEUgdDEgKFBSSU1B UlkgS0VZIChhKSkgU0VMRUNUIDEgQVMgYSBVTklPTiBBTEwgU0VMRUNUIDE7CiBFUlJPUiAyMzAw MDogRHVwbGljYXRlIGVudHJ5ICcxJyBmb3Iga2V5ICdQUklNQVJZJwogU0VMRUNUICogRlJPTSB0 MTsKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFtL3QvZmFs Y29uX2J1Z18yMzk0NS50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2ZhbGNvbl90ZWFtL3Qv ZmFsY29uX2J1Z18yMzk0NS50ZXN0CTIwMDgtMDQtMjAgMDA6MDU6MTcgKzAwMDAKKysrIGIvbXlz cWwtdGVzdC9zdWl0ZS9mYWxjb25fdGVhbS90L2ZhbGNvbl9idWdfMjM5NDUudGVzdAkyMDA4LTA5 LTA5IDA4OjMwOjE4ICswMDAwCkBAIC0xLDE5ICsxLDI1IEBACistLXNvdXJjZSBpbmNsdWRlL2hh dmVfZmFsY29uLmluYworCiAjCiAjIEJ1ZyAjMjM5NDU6IGNyYXNoIGR1cmluZyBkcm9wIHRhYmxl LCBBVVRPQ09NTUlUPTAsIENSRUFURSBUQUJMRSAuLiBBUyBTRUxFQ1QKICMKIC0tZWNobyAqKiog QnVnICMyMzk0NSAqKioKIAotCi0jIC0tc291cmNlIGluY2x1ZGUvaGF2ZV9pbm5vZGIuaW5jCi0j IFNFVCBTVE9SQUdFX0VOR0lORSA9IElubm9EQjsKLS0tc291cmNlIGluY2x1ZGUvaGF2ZV9mYWxj b24uaW5jCi1TRVQgU1RPUkFHRV9FTkdJTkUgPSBGYWxjb247CisjIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKKyMgLS0tIEluaXRpYWxpc2F0 aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCitsZXQgJGVuZ2luZSA9 ICdGYWxjb24nOworZXZhbCBTRVQgQEBzdG9yYWdlX2VuZ2luZSA9ICRlbmdpbmU7CiAKIC0tZGlz YWJsZV93YXJuaW5ncwogRFJPUCBUQUJMRSBJRiBFWElTVFMgdDE7CiAtLWVuYWJsZV93YXJuaW5n cwogCi1TRVQgQVVUT0NPTU1JVCA9IDE7CitTRVQgQEBhdXRvY29tbWl0ID0gMTsKKworIyAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0t LSBUZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwog LS1lcnJvciBFUl9EVVBfRU5UUlkKIENSRUFURSBUQUJMRSB0MSAoUFJJTUFSWSBLRVkgKGEpKSBT RUxFQ1QgMSBBUyBhIFVOSU9OIEFMTCBTRUxFQ1QgMTsKIC0tZXJyb3IgRVJfTk9fU1VDSF9UQUJM RQpAQCAtMjEsNyArMjcsNyBAQCBTRUxFQ1QgKiBGUk9NIHQxOwogLS1lcnJvciBFUl9CQURfVEFC TEVfRVJST1IKIERST1AgVEFCTEUgdDE7CiAKLVNFVCBBVVRPQ09NTUlUID0gMDsKK1NFVCBAQGF1 dG9jb21taXQgPSAwOwogLS1lcnJvciBFUl9EVVBfRU5UUlkKIENSRUFURSBUQUJMRSB0MSAoUFJJ TUFSWSBLRVkgKGEpKSBTRUxFQ1QgMSBBUyBhIFVOSU9OIEFMTCBTRUxFQ1QgMTsKIC0tZXJyb3Ig RVJfTk9fU1VDSF9UQUJMRQpAQCAtMjksMyArMzUsMTUgQEAgU0VMRUNUICogRlJPTSB0MTsKICMg SGVyZSBjb21lcyBhIHNlcnZlciBjcmFzaC4KIC0tZXJyb3IgRVJfQkFEX1RBQkxFX0VSUk9SCiBE Uk9QIFRBQkxFIHQxOworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tICMKKyMgLS0tIENoZWNrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAtLS0gIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIENoZWNrIG5vdCBhcHBsaWNhYmxlIGluIHRoaXMgdGVz dC4KKyNTRUxFQ1QgY291bnQoKikgRlJPTSB0MTsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCisjIC0tLSBGaW5hbCBjbGVhbnVwICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tICMKKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIworIyBGaW5hbCBjbGVhbnVwIG5v dCBhcHBsaWNhYmxlIGluIHRoaXMgdGVzdC4KKyNEUk9QIFRBQkxFIHQxOwoKPT09IG1vZGlmaWVk IGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRiX2RkX2R1bXAucmVzdWx0JwotLS0gYS9t eXNxbC10ZXN0L3N1aXRlL25kYi9yL25kYl9kZF9kdW1wLnJlc3VsdAkyMDA3LTExLTIyIDE0OjQ2 OjU0ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvbmRiL3IvbmRiX2RkX2R1bXAucmVzdWx0 CTIwMDgtMDktMDQgMDk6MjI6MTYgKzAwMDAKQEAgLTE4Miw3ICsxODIsOCBAQCBGSUxFX05BTUUs CiBFWFRFTlRfU0laRSwKIElOSVRJQUxfU0laRSwKIEVOR0lORQotRlJPTSBJTkZPUk1BVElPTl9T Q0hFTUEuRklMRVMgV0hFUkUgRklMRV9UWVBFPSJEQVRBRklMRSIgT1JERVIgQlkgRklMRV9OQU1F OworRlJPTSBJTkZPUk1BVElPTl9TQ0hFTUEuRklMRVMgV0hFUkUgRklMRV9UWVBFPSJEQVRBRklM RSIKK0FORCBFTkdJTkU9J25kYmNsdXN0ZXInIE9SREVSIEJZIEZJTEVfTkFNRTsKIFRBQkxFU1BB Q0VfTkFNRQlMT0dGSUxFX0dST1VQX05BTUUJRklMRV9OQU1FCUVYVEVOVF9TSVpFCUlOSVRJQUxf U0laRQlFTkdJTkUKIHRzMQlsZzEJZGF0YWZpbGVfdHMxXzAxLmRhdAkxMDQ4NTc2CTIwOTcxNTIJ bmRiY2x1c3RlcgogdHMxCWxnMQlkYXRhZmlsZV90czFfMDIuZGF0CTEwNDg1NzYJMTA0ODU3Nglu ZGJjbHVzdGVyCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9uZGIvdC9uZGJf ZGRfZHVtcC50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL25kYi90L25kYl9kZF9kdW1wLnRl c3QJMjAwNy0wOC0yMSAxOToyMjozNSArMDAwMAorKysgYi9teXNxbC10ZXN0L3N1aXRlL25kYi90 L25kYl9kZF9kdW1wLnRlc3QJMjAwOC0wOS0wNCAwOToyMjoxNiArMDAwMApAQCAtMjExLDcgKzIx MSw4IEBAIFNFTEVDVCBESVNUSU5DVAogICBFWFRFTlRfU0laRSwKICAgSU5JVElBTF9TSVpFLAog ICBFTkdJTkUKLUZST00gSU5GT1JNQVRJT05fU0NIRU1BLkZJTEVTIFdIRVJFIEZJTEVfVFlQRT0i REFUQUZJTEUiIE9SREVSIEJZIEZJTEVfTkFNRTsKK0ZST00gSU5GT1JNQVRJT05fU0NIRU1BLkZJ TEVTIFdIRVJFIEZJTEVfVFlQRT0iREFUQUZJTEUiCitBTkQgRU5HSU5FPSduZGJjbHVzdGVyJyBP UkRFUiBCWSBGSUxFX05BTUU7CiAKIFNFTEVDVCBDT1VOVCgqKSBGUk9NIHQxOwogU0VMRUNUIENP VU5UKCopIEZST00gdDI7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzeXMvc3RhY2t0cmFjZS5jJwot LS0gYS9teXN5cy9zdGFja3RyYWNlLmMJMjAwOC0wNi0yMCAxMTo0MDowMSArMDAwMAorKysgYi9t eXN5cy9zdGFja3RyYWNlLmMJMjAwOC0wOS0wNSAwMDozNToxMiArMDAwMApAQCAtNTQ0LDggKzU0 NCwxMSBAQCB2b2lkIG15X3dyaXRlX2NvcmUoaW50IHVudXNlZCkKICAgaWYoaEZpbGUpCiAgIHsK ICAgICAvKiBDcmVhdGUgbWluaWR1bXAgKi8KKyAgICBNSU5JRFVNUF9UWVBFIGR1bXBfdHlwZSA9 IChNSU5JRFVNUF9UWVBFKQorICAgIChNaW5pRHVtcFdpdGhEYXRhU2Vnc3xNaW5pRHVtcFdpdGhQ cml2YXRlUmVhZFdyaXRlTWVtb3J5KTsKKwogICAgIGlmKHBNaW5pRHVtcFdyaXRlRHVtcChHZXRD dXJyZW50UHJvY2VzcygpLCBHZXRDdXJyZW50UHJvY2Vzc0lkKCksCi0gICAgICBoRmlsZSwgTWlu aUR1bXBOb3JtYWwsICZpbmZvLCAwLCAwKSkKKyAgICAgIGhGaWxlLCBkdW1wX3R5cGUsICZpbmZv LCAwLCAwKSkKICAgICB7CiAgICAgICBmcHJpbnRmKHN0ZGVyciwgIk1pbmlkdW1wIHdyaXR0ZW4g dG8gJXNcbiIsCiAgICAgICAgIF9mdWxscGF0aChwYXRoLCBkdW1wX2ZuYW1lLCBzaXplb2YocGF0 aCkpID8gcGF0aCA6IGR1bXBfZm5hbWUpOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFs Y29uL0JEQi5jcHAnCi0tLSBhL3N0b3JhZ2UvZmFsY29uL0JEQi5jcHAJMjAwOC0wNy0yNCAwODo0 NTowMyArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9CREIuY3BwCTIwMDgtMDktMDQgMTQ6NDk6 MTAgKzAwMDAKQEAgLTUzLDYgKzUzLDkgQEAgQmRiOjpCZGIoKQogCXBhZ2VOdW1iZXIgPSAtMTsK IAl1c2VDb3VudCA9IDA7CiAJYWdlID0gMDsKKyNpZmRlZiBDSEVDS19TVEFMTEVEX0JEQgorCXN0 YWxsQ291bnQgPSAwOworI2VuZGlmIC8vIENIRUNLX1NUQUxMRURfQkRCCiAJbWFya2luZ1RocmVh ZCA9IE5VTEw7CiAJcHJpb3JEaXJ0eSA9IG5leHREaXJ0eSA9IE5VTEw7CiAJZmx1c2hJdCA9IGZh bHNlOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29uL0JEQi5oJwotLS0gYS9zdG9y YWdlL2ZhbGNvbi9CREIuaAkyMDA4LTA3LTI0IDA4OjQ1OjAzICswMDAwCisrKyBiL3N0b3JhZ2Uv ZmFsY29uL0JEQi5oCTIwMDgtMDktMDQgMTQ6NDk6MTAgKzAwMDAKQEAgLTI3LDExICsyNywxMSBA QAogI2luY2x1ZGUgIlN5bmNPYmplY3QuaCIKIAogLy8jZGVmaW5lIENPTExFQ1RfQkRCX0hJU1RP UlkKLSNpZiBkZWZpbmVkIF9ERUJVRyAgJiYgZGVmaW5lZCBDT0xMRUNUX0JEQl9ISVNUT1JZCi0J I2RlZmluZSBBRERfSElTVE9SWSAgICAgICAgICArMSwgVEhJU19GSUxFLCBfX0xJTkVfXwotCSNk ZWZpbmUgQ09NTUFfQUREX0hJU1RPUlkgICAsKzEsIFRISVNfRklMRSwgX19MSU5FX18KLQkjZGVm aW5lIFJFTF9ISVNUT1JZICAgICAgICAgIC0xLCBUSElTX0ZJTEUsIF9fTElORV9fCi0JI2RlZmlu ZSBCREJfSElTVE9SWShfYmRiXykgICB7aWYgKF9iZGJfKSAoX2JkYl8pLT5hZGRIaXN0b3J5KDAs IFRISVNfRklMRSwgX19MSU5FX18pO30KKyNpZiBkZWZpbmVkIENPTExFQ1RfQkRCX0hJU1RPUlkK KwkjZGVmaW5lIEFERF9ISVNUT1JZICAgICAgICAgICsxLCBfX0ZJTEVfXywgX19MSU5FX18KKwkj ZGVmaW5lIENPTU1BX0FERF9ISVNUT1JZICAgLCsxLCBfX0ZJTEVfXywgX19MSU5FX18KKwkjZGVm aW5lIFJFTF9ISVNUT1JZICAgICAgICAgIC0xLCBfX0ZJTEVfXywgX19MSU5FX18KKwkjZGVmaW5l IEJEQl9ISVNUT1JZKF9iZGJfKSAgIHtpZiAoX2JkYl8pIChfYmRiXyktPmFkZEhpc3RvcnkoMCwg X19GSUxFX18sIF9fTElORV9fKTt9CiAJI2RlZmluZSBNQVhfQkRCX0hJU1RPUlkgMTAwCiAJI2Rl ZmluZSBCREJfSElTVE9SWV9GSUxFX0xFTiAxNgogCXN0cnVjdCBiZGJfaGlzdG9yeQpAQCAtOTcs NiArOTcsOSBAQCBwdWJsaWM6CiAJU3luY09iamVjdAkJc3luY1dyaXRlOwogCXRpbWVfdAkJCWxh c3RNYXJrOwogCUxvY2tUeXBlCQlsb2NrVHlwZTsKKyNpZmRlZiBDSEVDS19TVEFMTEVEX0JEQgor CWludAkJc3RhbGxDb3VudDsKKyNlbmRpZiAvLyBDSEVDS19TVEFMTEVEX0JEQgogCWJvb2wJCQlm bHVzaEl0OwkJCQkvLyBQYWdlV3JpdGVyIHdhbnRzIHRvIGhlYXIgYWJvdXQgdGhpcwogCWJvb2wJ CQlpc0RpcnR5OwogCWJvb2wJCQlpc1JlZ2lzdGVyZWQ7CQkJLy8gUmVnaXN0ZXIgd2l0aCBQYWdl V3JpdGUgb24gbmV4dCByZWxlYXNlCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9mYWxjb24v Q2FjaGUuY3BwJwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9DYWNoZS5jcHAJMjAwOC0wOC0yMiAwNjo0 Nzo0MCArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9DYWNoZS5jcHAJMjAwOC0wOS0xMCAyMToy NDo1MCArMDAwMApAQCAtNTAsOSArNTAsMTEgQEAKIGV4dGVybiB1aW50IGZhbGNvbl9pb190aHJl YWRzOwogCiAvLyNkZWZpbmUgU1RPUF9QQUdFCQk1NQotI2RlZmluZSBUUkFDRV9GSUxFCSJjYWNo ZS50cmFjZSIKKy8vI2RlZmluZSBDQUNIRV9UUkFDRV9GSUxFCSJjYWNoZS50cmFjZSIKIAorI2lm ZGVmIENBQ0hFX1RSQUNFX0ZJTEUKIHN0YXRpYyBGSUxFCQkJKnRyYWNlRmlsZTsKKyNlbmRpZiAv LyBDQUNIRV9UUkFDRV9GSUxFCiAKIHN0YXRpYyBjb25zdCB1aW50NjQgY2FjaGVIdW5rU2l6ZQkJ PSAxMDI0ICogMTAyNCAqIDEyODsKIHN0YXRpYyBjb25zdCBpbnQJQVNZTkNfQlVGRkVSX1NJWkUJ PSAxMDI0MDAwOwpAQCAtNjgsMjAgKzcwLDQzIEBAIHN0YXRpYyBjb25zdCBjaGFyIFRISVNfRklM RVtdPV9fRklMRV9fOwogCiBDYWNoZTo6Q2FjaGUoRGF0YWJhc2UgKmRiLCBpbnQgcGFnZVN6LCBp bnQgaGFzaFN6LCBpbnQgbnVtQnVmZmVycykKIHsKLQkvL29wZW5UcmFjZUZpbGUoKTsKKwlvcGVu VHJhY2VGaWxlKCk7CiAJZGF0YWJhc2UgPSBkYjsKIAlwYW5pY1NodXRkb3duID0gZmFsc2U7CiAJ cGFnZVNpemUgPSBwYWdlU3o7Ci0JaGFzaFNpemUgPSBoYXNoU3o7CisKKwl1bnNpZ25lZCBpbnQg aGlnaEJpdDsKKwlmb3IgKGhpZ2hCaXQ9MHgwMTsgaGlnaEJpdCA8ICh1bnNpZ25lZCBpbnQpaGFz aFN6OyBoaWdoQml0PSBoaWdoQml0IDw8IDEpIHsgfQorCisJLy8gSWYgdGhlcmUgYXJlIG1vcmUg dGhhbiA0MDk2IGJ1Y2tldHMgdGhlbiBsZXRzIHJvdW5kIGRvd24KKwkvLyBlbHNlIGxldHMgcm91 bmQgdXAKKwlpZiAoaGlnaEJpdCA+PSAweDAwMDAxMDAwKSB7CisJCS8vIHVzZSBwb3dlciBvZiB0 d28gcm91bmRlZCBkb3duCisJCWhhc2hTaXplID0gaGlnaEJpdCA8PCAxOworCX0gZWxzZSB7CisJ CS8vIHVzZSBwb3dlciBvZiB0d28gcm91bmRlZCB1cAorCQloYXNoU2l6ZSA9IGhpZ2hCaXQ7CisJ fQorCisJaGFzaE1hc2sgPSBoYXNoU2l6ZSAtIDE7CiAJbnVtYmVyQnVmZmVycyA9IG51bUJ1ZmZl cnM7CiAJdXBwZXJGcmFjdGlvbiA9IG51bWJlckJ1ZmZlcnMgLyA0OwogCWJ1ZmZlckFnZSA9IDA7 CiAJZmlyc3REaXJ0eSA9IE5VTEw7CiAJbGFzdERpcnR5ID0gTlVMTDsKLQludW1iZXJEaXJ0eVBh Z2VzID0gMDsKIAlwYWdlV3JpdGVyID0gTlVMTDsKLQloYXNoVGFibGUgPSBuZXcgQmRiKiBbaGFz aFN6XTsKKwloYXNoVGFibGUgPSBuZXcgQmRiKiBbaGFzaFNpemVdOwogCW1lbXNldCAoaGFzaFRh YmxlLCAwLCBzaXplb2YgKEJkYiopICogaGFzaFNpemUpOworI2lmZGVmIERFQlVHX1NZTkNfSEFT SF9UQUJMRV9TSVpFCisJc3luY0hhc2hUYWJsZSA9IG5ldyBTeW5jT2JqZWN0IFtERUJVR19TWU5D X0hBU0hfVEFCTEVfU0laRV07CisJZm9yIChpbnQgbG9vcCA9IDA7IGxvb3AgPCBERUJVR19TWU5D X0hBU0hfVEFCTEVfU0laRTsgbG9vcCArKykKKwkJc3luY0hhc2hUYWJsZVtsb29wXS5zZXROYW1l KCJDYWNoZTo6c3luY0hhc2hUYWJsZSIpOworI2Vsc2UgLyogREVCVUdfU1lOQ19IQVNIX1RBQkxF X1NJWkUgKi8KKwlzeW5jSGFzaFRhYmxlID0gbmV3IFN5bmNPYmplY3QgW2hhc2hTaXplXTsKKwlm b3IgKGludCBsb29wID0gMDsgbG9vcCA8IGhhc2hTaXplOyBsb29wICsrKQorCQlzeW5jSGFzaFRh YmxlW2xvb3BdLnNldE5hbWUoIkNhY2hlOjpzeW5jSGFzaFRhYmxlIik7CisjZW5kaWYgLyogREVC VUdfU1lOQ19IQVNIX1RBQkxFX1NJWkUgKi8KKwogCXNlY3RvckNhY2hlID0gbmV3IFNlY3RvckNh Y2hlKHNlY3RvckNhY2hlU2l6ZSAvIFNFQ1RPUl9CVUZGRVJfU0laRSwgcGFnZVNpemUpOwogCiAJ dWludDY0IG4gPSAoKHVpbnQ2NCkgcGFnZVNpemUgKiBudW1iZXJCdWZmZXJzICsgY2FjaGVIdW5r U2l6ZSAtIDEpIC8gY2FjaGVIdW5rU2l6ZTsKQEAgLTEwMyw2ICsxMjgsNyBAQCBDYWNoZTo6Q2Fj aGUoRGF0YWJhc2UgKmRiLCBpbnQgcGFnZVN6LCBpCiAJCiAJdHJ5CiAJCXsKKwkJLy8gbm9uLXBy b3RlY3RlZCBhY2Nlc3MgdG8gYmRicyxlbmRCZGJzIGlzIE9LIGR1cmluZyBpbml0aWFsaXphdGlv bgogCQliZGJzID0gbmV3IEJkYiBbbnVtYmVyQnVmZmVyc107CiAJCWVuZEJkYnMgPSBiZGJzICsg bnVtYmVyQnVmZmVyczsKIAkJaW50IHJlbWFpbmluZyA9IDA7CkBAIC0xMjEsNiArMTQ3LDcgQEAg Q2FjaGU6OkNhY2hlKERhdGFiYXNlICpkYiwgaW50IHBhZ2VTeiwgaQogCQkJCX0KIAogCQkJYmRi LT5jYWNoZSA9IHRoaXM7CisJCQkvLyBub24tcHJvdGVjdGVkIGFjY2VzcyB0byBidWZmZXJRdWV1 ZSBpcyBPSyBkdXJpbmcgaW5pdGlhbGl6YXRpb24KIAkJCWJ1ZmZlclF1ZXVlLmFwcGVuZChiZGIp OwogCQkJYmRiLT5idWZmZXIgPSAoUGFnZSopIHN0dWZmOwogCQkJc3R1ZmYgKz0gcGFnZVNpemU7 CkBAIC0xNDYsMTAgKzE3MywxMSBAQCBDYWNoZTo6Q2FjaGUoRGF0YWJhc2UgKmRiLCBpbnQgcGFn ZVN6LCBpCiAKIENhY2hlOjp+Q2FjaGUoKQogewotCWlmICh0cmFjZUZpbGUpCi0JCWNsb3NlVHJh Y2VGaWxlKCk7CisKKwljbG9zZVRyYWNlRmlsZSgpOwogCiAJZGVsZXRlIFtdIGhhc2hUYWJsZTsK KwlkZWxldGUgW10gc3luY0hhc2hUYWJsZTsKIAlkZWxldGUgW10gYmRiczsKIAlkZWxldGUgW10g aW9UaHJlYWRzOwogCWRlbGV0ZSBmbHVzaEJpdG1hcDsKQEAgLTE2NywxNSArMTk1LDEyIEBAIENh Y2hlOjp+Q2FjaGUoKQogQmRiKiBDYWNoZTo6cHJvYmVQYWdlKERiYiAqZGJiLCBpbnQzMiBwYWdl TnVtYmVyKQogewogCUFTU0VSVCAocGFnZU51bWJlciA+PSAwKTsKLQlTeW5jIHN5bmMgKCZzeW5j T2JqZWN0LCAiQ2FjaGU6OnByb2JlUGFnZSIpOwotCXN5bmMubG9jayAoU2hhcmVkKTsKLQlCZGIg KmJkYiA9IGZpbmRCZGIoZGJiLCBwYWdlTnVtYmVyKTsKKwlCZGIgKmJkYjsKIAkKKwkvKiBJZiB3 ZSBhbHJlYWR5IGhhdmUgYSBidWZmZXIgZm9yIHRoaXMsIHdlJ3JlIGRvbmUgKi8KKwliZGIgPSBs b2NrRmluZEJkYkluY3JlbWVudFVzZUNvdW50KGRiYiwgcGFnZU51bWJlcik7CiAJaWYgKGJkYikK IAkJewotCQliZGItPmluY3JlbWVudFVzZUNvdW50KEFERF9ISVNUT1JZKTsKLQkJc3luYy51bmxv Y2soKTsKLQogCQlpZiAoYmRiLT5idWZmZXItPnBhZ2VUeXBlID09IFBBR0VfZnJlZSkKIAkJCXsK IAkJCWJkYi0+ZGVjcmVtZW50VXNlQ291bnQoUkVMX0hJU1RPUlkpOwpAQCAtMTkyLDExICsyMTcs NDkgQEAgQmRiKiBDYWNoZTo6cHJvYmVQYWdlKERiYiAqZGJiLCBpbnQzMiBwYQogCXJldHVybiBO VUxMOwogfQogCi1CZGIqIENhY2hlOjpmaW5kQmRiKERiYiogZGJiLCBpbnQzMiBwYWdlTnVtYmVy KQorQmRiKiBDYWNoZTo6ZmluZEJkYihEYmIqIGRiYiwgaW50MzIgcGFnZU51bWJlciwgaW50IHNs b3QpCit7CisJZm9yIChCZGIgKmJkYiA9IGhhc2hUYWJsZSBbc2xvdF07IGJkYjsgYmRiID0gYmRi LT5oYXNoKQogewotCWZvciAoQmRiICpiZGIgPSBoYXNoVGFibGUgW3BhZ2VOdW1iZXIgJSBoYXNo U2l6ZV07IGJkYjsgYmRiID0gYmRiLT5oYXNoKQogCQlpZiAoYmRiLT5wYWdlTnVtYmVyID09IHBh Z2VOdW1iZXIgJiYgYmRiLT5kYmIgPT0gZGJiKQorCQkJewogCQkJcmV0dXJuIGJkYjsKKwkJCX0K KwkJfQorCisJcmV0dXJuIE5VTEw7Cit9CisKK0JkYiogQ2FjaGU6OmZpbmRCZGIoRGJiKiBkYmIs IGludDMyIHBhZ2VOdW1iZXIpCit7CisJcmV0dXJuIChmaW5kQmRiKGRiYiwgcGFnZU51bWJlciwg UEFHRU5VTV8yX1NMT1QocGFnZU51bWJlcikpKTsKK30KKworQmRiKiBDYWNoZTo6bG9ja0ZpbmRC ZGJJbmNyZW1lbnRVc2VDb3VudChEYmIqIGRiYiwgaW50MzIgcGFnZU51bWJlcikKK3sKKwlpbnQg c2xvdCA9IFBBR0VOVU1fMl9TTE9UKHBhZ2VOdW1iZXIpOworCVN5bmMgbG9ja0hhc2ggKCZzeW5j SGFzaFRhYmxlW1BBR0VOVU1fMl9MT0NLX0lOREVYKHBhZ2VOdW1iZXIsIHNsb3QpXSwgIkNhY2hl Ojpsb2NrRmluZEJkYkluY3JlbWVudFVzZUNvdW50Iik7CisJbG9ja0hhc2gubG9jayAoU2hhcmVk KTsKKwlCZGIgKmJkYjsKKworCWJkYiA9IGZpbmRCZGIoZGJiLCBwYWdlTnVtYmVyLCBzbG90KTsK KwlpZiAoYmRiICE9IE5VTEwpCisJCWJkYi0+aW5jcmVtZW50VXNlQ291bnQoQUREX0hJU1RPUlkp OworCisJcmV0dXJuIGJkYjsKK30KKworQmRiKiBDYWNoZTo6bG9ja0ZpbmRCZGJJbmNyZW1lbnRV c2VDb3VudChpbnQzMiBwYWdlTnVtYmVyLCBpbnQgc2xvdCkKK3sKKwlTeW5jIGxvY2tIYXNoICgm c3luY0hhc2hUYWJsZVtQQUdFTlVNXzJfTE9DS19JTkRFWChwYWdlTnVtYmVyLCBzbG90KV0sICJD YWNoZTo6bG9ja0ZpbmRCZGJJbmNyZW1lbnRVc2VDb3VudCIpOworCWxvY2tIYXNoLmxvY2sgKFNo YXJlZCk7CisKKwlmb3IgKEJkYiAqYmRiID0gaGFzaFRhYmxlIFtzbG90XTsgYmRiOyBiZGIgPSBi ZGItPmhhc2gpCisJCWlmIChiZGItPnBhZ2VOdW1iZXIgPT0gcGFnZU51bWJlcikKKwkJeworCQkJ YmRiLT5pbmNyZW1lbnRVc2VDb3VudChBRERfSElTVE9SWSk7CisJCQlyZXR1cm4gYmRiOworCQl9 CiAKIAlyZXR1cm4gTlVMTDsKIH0KQEAgLTIxNyw1MiArMjgwLDQwIEBAIEJkYiogQ2FjaGU6OmZl dGNoUGFnZShEYmIgKmRiYiwgaW50MzIgcGEKICNlbmRpZgogCiAJQVNTRVJUIChwYWdlTnVtYmVy ID49IDApOwotCWludCBzbG90ID0gcGFnZU51bWJlciAlIGhhc2hTaXplOwotCUxvY2tUeXBlIGFj dHVhbCA9IGxvY2tUeXBlOwotCVN5bmMgc3luYyAoJnN5bmNPYmplY3QsICJDYWNoZTo6ZmV0Y2hQ YWdlIik7Ci0Jc3luYy5sb2NrIChTaGFyZWQpOwotCWludCBoaXQgPSAwOwotCi0JLyogSWYgd2Ug YWxyZWFkeSBoYXZlIGEgYnVmZmVyIGZvciB0aGlzIGdvLCB3ZSdyZSBkb25lICovCi0KIAlCZGIg KmJkYjsKIAotCWZvciAoYmRiID0gaGFzaFRhYmxlIFtzbG90XTsgYmRiOyBiZGIgPSBiZGItPmhh c2gpCi0JCWlmIChiZGItPnBhZ2VOdW1iZXIgPT0gcGFnZU51bWJlciAmJiBiZGItPmRiYiA9PSBk YmIpCi0JCQl7Ci0JCQkvL3N5bmNPYmplY3QudmFsaWRhdGVTaGFyZWQoIkNhY2hlOjpmZXRjaFBh Z2UiKTsKLQkJCWJkYi0+aW5jcmVtZW50VXNlQ291bnQoQUREX0hJU1RPUlkpOwotCQkJc3luYy51 bmxvY2soKTsKLQkJCWJkYi0+YWRkUmVmKGxvY2tUeXBlICBDT01NQV9BRERfSElTVE9SWSk7Ci0J CQliZGItPmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKLQkJCWhpdCA9IDE7Ci0JCQli cmVhazsKLQkJCX0KLQorCS8qIElmIHdlIGFscmVhZHkgaGF2ZSBhIGJ1ZmZlciBmb3IgdGhpcywg d2UncmUgZG9uZSAqLworCWJkYiA9IGxvY2tGaW5kQmRiSW5jcmVtZW50VXNlQ291bnQoZGJiLCBw YWdlTnVtYmVyKTsKIAlpZiAoIWJkYikKIAkJewotCQlzeW5jLnVubG9jaygpOwotCQlhY3R1YWwg PSBFeGNsdXNpdmU7Ci0JCXN5bmMubG9jayhFeGNsdXNpdmUpOwotCi0JCWZvciAoYmRiID0gaGFz aFRhYmxlIFtzbG90XTsgYmRiOyBiZGIgPSBiZGItPmhhc2gpCi0JCQlpZiAoYmRiLT5wYWdlTnVt YmVyID09IHBhZ2VOdW1iZXIgJiYgYmRiLT5kYmIgPT0gZGJiKQotCQkJCXsKLQkJCQkvL3N5bmNP YmplY3QudmFsaWRhdGVFeGNsdXNpdmUoIkNhY2hlOjpmZXRjaFBhZ2UgKHJldHJ5KSIpOwotCQkJ CWJkYi0+aW5jcmVtZW50VXNlQ291bnQoQUREX0hJU1RPUlkpOwotCQkJCXN5bmMudW5sb2NrKCk7 Ci0JCQkJYmRiLT5hZGRSZWYobG9ja1R5cGUgIENPTU1BX0FERF9ISVNUT1JZKTsKLQkJCQliZGIt PmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKLQkJCQloaXQgPSAyOwotCQkJCWJyZWFr OwotCQkJCX0KKwkJLy8gZ2V0RnJlZUJ1ZmZlcigpIGxvY2tzIGEgaGFzaCBidWNrZXQgdG8gcmVt b3ZlIHRoZSBjYW5kaWRhdGUgYmRiCisJCS8vIGlmIHdlIGxvY2tlZCBvdXIgaGFzaCBidWNrZXQg YmVmb3JlIHRoZSBjYWxsIHRoZW4gd2UgY291bGQgaGF2ZQorCQkvLyBhIGRlYWRsb2NrCisJCS8v IHRodXMgd2UgZ2V0IHRoZSBmcmVlIGJ1ZmZlciBiZWZvcmUgd2UgbG9jayB0aGUgaGFzaCBidWNr ZXQgd2Ugd2lsbAorCQkvLyBiZSBpbnNlcnRpbmcgaW50by4gIFRoaXMgYXZvaWRzIGEgZGVhZCBs b2NrIGJ1dCBnZW5lcmF0ZXMgYSByYWNlCisJCS8vIHdlIHRha2UgY2FyZSBvZiB0aGUgcmFjZSBi eSByZXZlcnNpbmcgdGhlIGdldEZyZWVCdWZmZXIoKSB3b3JrCisJCS8vIHdoZW4gd2UgbG9zZSB0 aGUgcmFjZQorCQlCZGIgKmJkYkF2YWlsYWJsZTsKKwkJaW50IHNsb3QgPSBQQUdFTlVNXzJfU0xP VChwYWdlTnVtYmVyKTsKKwkJU3luYyBsb2NrSGFzaCAoJnN5bmNIYXNoVGFibGVbUEFHRU5VTV8y X0xPQ0tfSU5ERVgocGFnZU51bWJlciwgc2xvdCldLCAiQ2FjaGU6OmZldGNoUGFnZSIpOworCisJ CS8vIEFzc3VtZSB3ZSdsbCBiZSBpbnNlcnRpbmcgdGhpcyBuZXcgQkRCLiAgU2V0IG5ldyBwYWdl IG51bWJlci4gKi8KKworCQliZGJBdmFpbGFibGUgPSBnZXRGcmVlQnVmZmVyKCk7CisJCWJkYkF2 YWlsYWJsZS0+cGFnZU51bWJlciA9IHBhZ2VOdW1iZXI7CisJCWJkYkF2YWlsYWJsZS0+ZGJiID0g ZGJiOwogCisJCWxvY2tIYXNoLmxvY2soRXhjbHVzaXZlKTsKKwkJYmRiID0gZmluZEJkYihkYmIs IHBhZ2VOdW1iZXIsIHNsb3QpOwogCQlpZiAoIWJkYikKIAkJCXsKLQkJCWJkYiA9IGZpbmRCdWZm ZXIoZGJiLCBwYWdlTnVtYmVyLCBhY3R1YWwpOwotCQkJbW92ZVRvSGVhZChiZGIpOwotCQkJc3lu Yy51bmxvY2soKTsKKwkJCS8vIHdlIHdvbiB0aGUgcmFjZSBzbyBsZXRzIHVzZSB0aGUgZnJlZSBi ZGIKKwkJCS8vIHJlbGluayBpbnRvIGhhc2ggdGFibGUKKwkJCWJkYkF2YWlsYWJsZS0+aGFzaCA9 IGhhc2hUYWJsZSBbc2xvdF07CisJCQloYXNoVGFibGUgW3Nsb3RdID0gYmRiQXZhaWxhYmxlOwor CQkJbG9ja0hhc2gudW5sb2NrKCk7CiAKKwkJCWJkYiA9IGJkYkF2YWlsYWJsZTsKICNpZmRlZiBT VE9QX1BBR0UJCQkKIAkJCWlmIChiZGItPnBhZ2VOdW1iZXIgPT0gU1RPUF9QQUdFKQogCQkJCUxv Zzo6ZGVidWcoInJlYWRpbmcgcGFnZSAlZC8lZFxuIiwgYmRiLT5wYWdlTnVtYmVyLCBkYmItPnRh YmxlU3BhY2VJZCk7CkBAIC0yNzgsOSArMzI5LDMxIEBAIEJkYiogQ2FjaGU6OmZldGNoUGFnZShE YmIgKmRiYiwgaW50MzIgcGEKICNpZmRlZiBIQVZFX1BBR0VfTlVNQkVSCiAJCQlBU1NFUlQoYmRi LT5idWZmZXItPnBhZ2VOdW1iZXIgPT0gcGFnZU51bWJlcik7CiAjZW5kaWYJCQkKLQkJCWlmIChh Y3R1YWwgIT0gbG9ja1R5cGUpCisJCQlpZiAoRXhjbHVzaXZlICE9IGxvY2tUeXBlKQogCQkJCWJk Yi0+ZG93bkdyYWRlKGxvY2tUeXBlKTsKIAkJCX0KKwkJCWVsc2UKKwkJCXsKKwkJCS8vc3luY09i amVjdC52YWxpZGF0ZUV4Y2x1c2l2ZSgiQ2FjaGU6OmZldGNoUGFnZSAocmV0cnkpIik7CisJCQli ZGItPmluY3JlbWVudFVzZUNvdW50KEFERF9ISVNUT1JZKTsKKwkJCWxvY2tIYXNoLnVubG9jaygp OworCQkJYmRiLT5hZGRSZWYobG9ja1R5cGUgIENPTU1BX0FERF9ISVNUT1JZKTsKKwkJCWJkYi0+ ZGVjcmVtZW50VXNlQ291bnQoUkVMX0hJU1RPUlkpOworCQkJbW92ZVRvSGVhZChiZGIpOworCisJ CQkvLyBsb3N0IGEgcmFjZS4gIHB1dCBvdXIgYXZhaWxhYmxlIGJhY2sgdG8gdXNlYWJsZQorCQkJ Ly8gc2lkZSBlZmZlY3QsIGJkYkF2YWlsYWJsZSB3aWxsIGhhdmUgdG8gYWdlIGFnYWluIGJlZm9y ZSB3ZSByZS11c2UgaXQuCisJCQliZGJBdmFpbGFibGUtPmhhc2ggPSBOVUxMOworCQkJYmRiQXZh aWxhYmxlLT5wYWdlTnVtYmVyID0gLTE7CisJCQliZGJBdmFpbGFibGUtPmRiYiA9IE5VTEw7CisJ CQliZGJBdmFpbGFibGUtPnJlbGVhc2UoUkVMX0hJU1RPUlkpOworCQkJfQorCQl9CisJCWVsc2UK KwkJeworCQliZGItPmFkZFJlZihsb2NrVHlwZSAgQ09NTUFfQUREX0hJU1RPUlkpOworCQliZGIt PmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKKwkJbW92ZVRvSGVhZChiZGIpOwogCQl9 CiAKIAlQYWdlICpwYWdlID0gYmRiLT5idWZmZXI7CkBAIC0yOTQsNyArMzY3LDcgQEAgQmRiKiBD YWNoZTo6ZmV0Y2hQYWdlKERiYiAqZGJiLCBpbnQzMiBwYQogCWlmIChwYWdlVHlwZSAmJiBwYWdl LT5wYWdlVHlwZSAhPSBwYWdlVHlwZSkKIAkJewogCQkvKioqIGZ1dHVyZSBjb2RlCi0JCWJkYi0+ cmVsZWFzZSgpOworCQliZGItPnJlbGVhc2UoUkVMX0hJU1RPUlkpOwogCQl0aHJvdyBTUUxFcnJv ciAoREFUQUJBU0VfQ09SUlVQVElPTiwgInBhZ2UgJWQgd3JvbmcgcGFnZSB0eXBlLCBleHBlY3Rl ZCAlZCBnb3QgJWRcbiIsCiAJCQkJCQlwYWdlTnVtYmVyLCBwYWdlVHlwZSwgcGFnZS0+cGFnZVR5 cGUpOwogCQkqKiovCkBAIC0zMDIsMTQgKzM3NSw2IEBAIEJkYiogQ2FjaGU6OmZldGNoUGFnZShE YmIgKmRiYiwgaW50MzIgcGEKIAkJCQkgYmRiLT5wYWdlTnVtYmVyLCBkYmItPnRhYmxlU3BhY2VJ ZCwgcGFnZVR5cGUsIHBhZ2UtPnBhZ2VUeXBlKTsKIAkJfQogCi0JLy8gSWYgYnVmZmVyIGhhcyBt b3ZlZCBvdXQgb2YgdGhlIHVwcGVyICJmcmFjdGlvbiIgb2YgdGhlIExSVSBxdWV1ZSwgbW92ZSBp dCBiYWNrIHVwCi0JCi0JaWYgKGJkYi0+YWdlIDwgYnVmZmVyQWdlIC0gKHVpbnQ2NCkgdXBwZXJG cmFjdGlvbikKLQkJewotCQlzeW5jLmxvY2sgKEV4Y2x1c2l2ZSk7Ci0JCW1vdmVUb0hlYWQgKGJk Yik7Ci0JCX0KLQkJCiAJQVNTRVJUIChiZGItPnBhZ2VOdW1iZXIgPT0gcGFnZU51bWJlcik7CiAJ QVNTRVJUIChiZGItPmRiYiA9PSBkYmIpOwogCUFTU0VSVCAoYmRiLT51c2VDb3VudCA+IDApOwpA QCAtMzE5LDkgKzM4NCw3IEBAIEJkYiogQ2FjaGU6OmZldGNoUGFnZShEYmIgKmRiYiwgaW50MzIg cGEKIAogQmRiKiBDYWNoZTo6ZmFrZVBhZ2UoRGJiICpkYmIsIGludDMyIHBhZ2VOdW1iZXIsIFBh Z2VUeXBlIHR5cGUsIFRyYW5zSWQgdHJhbnNJZCkKIHsKLQlTeW5jIHN5bmMoJnN5bmNPYmplY3Qs ICJDYWNoZTo6ZmFrZVBhZ2UiKTsKLQlzeW5jLmxvY2soRXhjbHVzaXZlKTsKLQlpbnQJc2xvdCA9 IHBhZ2VOdW1iZXIgJSBoYXNoU2l6ZTsKKwlCZGIgKmJkYjsKIAogI2lmZGVmIFNUT1BfUEFHRQkJ CQogCWlmIChwYWdlTnVtYmVyID09IFNUT1BfUEFHRSkKQEAgLTMzMCwzMiArMzkzLDY3IEBAIEJk YiogQ2FjaGU6OmZha2VQYWdlKERiYiAqZGJiLCBpbnQzMiBwYWcKIAogCS8qIElmIHdlIGFscmVh ZHkgaGF2ZSBhIGJ1ZmZlciBmb3IgdGhpcywgd2UncmUgZG9uZSAqLwogCi0JQmRiICpiZGI7CisJ YmRiID0gbG9ja0ZpbmRCZGJJbmNyZW1lbnRVc2VDb3VudChkYmIsIHBhZ2VOdW1iZXIpOworCWlm ICghYmRiKQorCQl7CisJCS8vIGdldEZyZWVCdWZmZXIoKSBsb2NrcyBhIGhhc2ggYnVja2V0IHRv IHJlbW92ZSB0aGUgY2FuZGlkYXRlIGJkYgorCQkvLyBpZiB3ZSBsb2NrZWQgb3VyIGhhc2ggYnVj a2V0IGJlZm9yZSB0aGUgY2FsbCB0aGVuIHdlIGNvdWxkIGhhdmUKKwkJLy8gYSBkZWFkbG9jawor CQkvLyB0aHVzIHdlIGdldCB0aGUgZnJlZSBidWZmZXIgYmVmb3JlIHdlIGxvY2sgdGhlIGhhc2gg YnVja2V0IHdlIHdpbGwKKwkJLy8gYmUgaW5zZXJ0aW5nIGludG8uICBUaGlzIGF2b2lkcyBhIGRl YWQgbG9jayBidXQgZ2VuZXJhdGVzIGEgcmFjZQorCQkvLyB3ZSB0YWtlIGNhcmUgb2YgdGhlIHJh Y2UgYnkgcmV2ZXJzaW5nIHRoZSBnZXRGcmVlQnVmZmVyKCkgd29yaworCQkvLyB3aGVuIHdlIGxv c2UgdGhlIHJhY2UKKwkJQmRiICpiZGJBdmFpbGFibGU7CisJCWludCBzbG90ID0gUEFHRU5VTV8y X1NMT1QocGFnZU51bWJlcik7CisJCVN5bmMgbG9ja0hhc2ggKCZzeW5jSGFzaFRhYmxlW1BBR0VO VU1fMl9MT0NLX0lOREVYKHBhZ2VOdW1iZXIsIHNsb3QpXSwgIkNhY2hlOjpmZXRjaFBhZ2UiKTsK KworCQkvLyBBc3N1bWUgd2UnbGwgYmUgaW5zZXJ0aW5nIHRoaXMgbmV3IEJEQi4gIFNldCBuZXcg cGFnZSBudW1iZXIuCisKKwkJYmRiQXZhaWxhYmxlID0gZ2V0RnJlZUJ1ZmZlcigpOworCQliZGJB dmFpbGFibGUtPnBhZ2VOdW1iZXIgPSBwYWdlTnVtYmVyOworCQliZGJBdmFpbGFibGUtPmRiYiA9 IGRiYjsKIAotCWZvciAoYmRiID0gaGFzaFRhYmxlIFtzbG90XTsgYmRiOyBiZGIgPSBiZGItPmhh c2gpCi0JCWlmIChiZGItPnBhZ2VOdW1iZXIgPT0gcGFnZU51bWJlciAmJiBiZGItPmRiYiA9PSBk YmIpCisJCWxvY2tIYXNoLmxvY2soRXhjbHVzaXZlKTsKKwkJYmRiID0gZmluZEJkYihkYmIsIHBh Z2VOdW1iZXIsIHNsb3QpOworCQlpZiAoIWJkYikKIAkJCXsKLQkJCWlmIChiZGItPnN5bmNPYmpl Y3QuaXNMb2NrZWQoKSkKLQkJCQl7Ci0JCQkJLy8gVGhlIHBhZ2VXcml0ZXIgbWF5IHN0aWxsIGJl IGNsZWFuaW5nIHVwIHRoaXMgZnJlZWQgcGFnZSB3aXRoIGEgc2hhcmVkIGxvY2sKLQkJCQlBU1NF UlQoYmRiLT5idWZmZXItPnBhZ2VUeXBlID09IFBBR0VfZnJlZSk7Ci0JCQkJQVNTRVJUKGJkYi0+ c3luY09iamVjdC5nZXRTdGF0ZSgpID49IDApOwotCQkJCX0KLQkJCQkKLQkJCWJkYi0+YWRkUmVm KEV4Y2x1c2l2ZSAgQ09NTUFfQUREX0hJU1RPUlkpOwotCQkJCi0JCQlicmVhazsKKwkJCS8vIHdl IHdvbiB0aGUgcmFjZSBzbyBsZXRzIHVzZSB0aGUgZnJlZSBiZGIKKwkJCS8vIHJlbGluayBpbnRv IGhhc2ggdGFibGUKKwkJCWJkYkF2YWlsYWJsZS0+aGFzaCA9IGhhc2hUYWJsZSBbc2xvdF07CisJ CQloYXNoVGFibGUgW3Nsb3RdID0gYmRiQXZhaWxhYmxlOworCQkJbG9ja0hhc2gudW5sb2NrKCk7 CisKKwkJCWJkYiA9IGJkYkF2YWlsYWJsZTsKIAkJCX0KKwkJCWVsc2UKKwkJCXsKKwkJCS8vc3lu Y09iamVjdC52YWxpZGF0ZUV4Y2x1c2l2ZSgiQ2FjaGU6OmZldGNoUGFnZSAocmV0cnkpIik7CisJ CQliZGItPmluY3JlbWVudFVzZUNvdW50KEFERF9ISVNUT1JZKTsKKwkJCWxvY2tIYXNoLnVubG9j aygpOworCQkJYmRiLT5hZGRSZWYoRXhjbHVzaXZlICBDT01NQV9BRERfSElTVE9SWSk7CisJCQli ZGItPmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKKwkJCW1vdmVUb0hlYWQoYmRiKTsK IAotCWlmICghYmRiKQotCQliZGIgPSBmaW5kQnVmZmVyKGRiYiwgcGFnZU51bWJlciwgRXhjbHVz aXZlKTsKKwkJCS8vIGxvc3QgYSByYWNlLiAgcHV0IG91ciBhdmFpbGFibGUgYmFjayB0byB1c2Vh YmxlCisJCQkvLyBzaWRlIGVmZmVjdCwgYmRiQXZhaWxhYmxlIHdpbGwgaGF2ZSB0byBhZ2UgYWdh aW4gYmVmb3JlIHdlIHJlLXVzZSBpdC4KKwkJCWJkYkF2YWlsYWJsZS0+aGFzaCA9IE5VTEw7CisJ CQliZGJBdmFpbGFibGUtPnBhZ2VOdW1iZXIgPSAtMTsKKwkJCWJkYkF2YWlsYWJsZS0+ZGJiID0g TlVMTDsKKwkJCWJkYkF2YWlsYWJsZS0+cmVsZWFzZShSRUxfSElTVE9SWSk7CisJCQl9CisJCX0K KwkJZWxzZQorCQl7CisJCWJkYi0+YWRkUmVmKEV4Y2x1c2l2ZSAgQ09NTUFfQUREX0hJU1RPUlkp OworCQliZGItPmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKKwkJbW92ZVRvSGVhZChi ZGIpOworCQl9CiAKIAlpZiAoIWRiYi0+aXNSZWFkT25seSkKIAkJYmRiLT5tYXJrKHRyYW5zSWQp OwogCQkKIAltZW1zZXQoYmRiLT5idWZmZXIsIDAsIHBhZ2VTaXplKTsKIAliZGItPnNldFBhZ2VI ZWFkZXIodHlwZSk7Ci0JbW92ZVRvSGVhZChiZGIpOwogCiAJcmV0dXJuIGJkYjsKIH0KQEAgLTM2 MywzMiArNDYxLDMxIEBAIEJkYiogQ2FjaGU6OmZha2VQYWdlKERiYiAqZGJiLCBpbnQzMiBwYWcK IHZvaWQgQ2FjaGU6OmZsdXNoKGludDY0IGFyZykKIHsKIAlTeW5jIGZsdXNoTG9jaygmc3luY0Zs dXNoLCAiQ2FjaGU6OmZsdXNoKDEpIik7Ci0JU3luYyBzeW5jKCZzeW5jRGlydHksICJDYWNoZTo6 Zmx1c2goMikiKTsKKwlTeW5jIGRpcnR5TG9jaygmc3luY0RpcnR5LCAiQ2FjaGU6OmZsdXNoKDIp Iik7CiAJZmx1c2hMb2NrLmxvY2soRXhjbHVzaXZlKTsKIAkKIAlpZiAoZmx1c2hpbmcpCiAJCXJl dHVybjsKIAogCXN5bmNXYWl0LmxvY2soTlVMTCwgRXhjbHVzaXZlKTsKLQlzeW5jLmxvY2soU2hh cmVkKTsKIAkvL0xvZzo6ZGVidWcoJWQ6ICJJbml0aWF0aW5nIGZsdXNoXG4iLCBkYmItPmRlbHRh VGltZSk7CiAJZmx1c2hBcmcgPSBhcmc7CiAJZmx1c2hQYWdlcyA9IDA7CiAJcGh5c2ljYWxXcml0 ZXMgPSAwOwogCQorCWRpcnR5TG9jay5sb2NrKFNoYXJlZCk7CiAJZm9yIChCZGIgKmJkYiA9IGZp cnN0RGlydHk7IGJkYjsgYmRiID0gYmRiLT5uZXh0RGlydHkpCiAJCXsKIAkJYmRiLT5mbHVzaEl0 ID0gdHJ1ZTsKIAkJZmx1c2hCaXRtYXAtPnNldChiZGItPnBhZ2VOdW1iZXIpOwogCQkrK2ZsdXNo UGFnZXM7CiAJCX0KKwlkaXJ0eUxvY2sudW5sb2NrKCk7CiAKLQlpZiAodHJhY2VGaWxlKQotCQlh bmFseXplRmx1c2goKTsKKwlhbmFseXplRmx1c2goKTsKIAogCWZsdXNoU3RhcnQgPSBkYXRhYmFz ZS0+dGltZXN0YW1wOwogCWZsdXNoaW5nID0gdHJ1ZTsKLQlzeW5jLnVubG9jaygpOwogCWZsdXNo TG9jay51bmxvY2soKTsKIAkKIAlmb3IgKGludCBuID0gMDsgbiA8IG51bWJlcklvVGhyZWFkczsg KytuKQpAQCAtMzk4LDY5ICs0OTUsMTMyIEBAIHZvaWQgQ2FjaGU6OmZsdXNoKGludDY0IGFyZykK IAogdm9pZCBDYWNoZTo6bW92ZVRvSGVhZChCZGIgKiBiZGIpCiB7CisJLy8gSWYgYnVmZmVyIGhh cyBtb3ZlZCBvdXQgb2YgdGhlIHVwcGVyICJmcmFjdGlvbiIgb2YgdGhlIExSVSBxdWV1ZSwgbW92 ZSBpdCBiYWNrIHVwCisJLy8gbm9uLXByb3RlY3RlZCBhY2Nlc3MgdG8gYWdlIGlzIGhhcm1sZXNz IHNpbmNlIGl0IGlzIGZ1enp5IGFueXdheQorCWlmIChiZGItPmFnZSA8IGJ1ZmZlckFnZSAtICh1 aW50NjQpIHVwcGVyRnJhY3Rpb24pCisJCXsKKwkJU3luYyBidWZmZXJRdWV1ZUxvY2sgKCZidWZm ZXJRdWV1ZS5zeW5jT2JqZWN0LCAiQ2FjaGU6Om1vdmVUb0hlYWQiKTsKKworCQlidWZmZXJRdWV1 ZUxvY2subG9jayAoRXhjbHVzaXZlKTsKKwkJYmRiLT5hZ2UgPSBidWZmZXJBZ2UrKzsKKwkJYnVm ZmVyUXVldWUucmVtb3ZlKGJkYik7CisJCWJ1ZmZlclF1ZXVlLnByZXBlbmQoYmRiKTsKKwkJLy92 YWxpZGF0ZVVuaXF1ZSAoYmRiKTsKKwkJfQorfQorCit2b2lkIENhY2hlOjptb3ZlVG9IZWFkQWxy ZWFkeUxvY2tlZChCZGIgKiBiZGIpCit7CiAJYmRiLT5hZ2UgPSBidWZmZXJBZ2UrKzsKIAlidWZm ZXJRdWV1ZS5yZW1vdmUoYmRiKTsKIAlidWZmZXJRdWV1ZS5wcmVwZW5kKGJkYik7CiAJLy92YWxp ZGF0ZVVuaXF1ZSAoYmRiKTsKIH0KIAotQmRiKiBDYWNoZTo6ZmluZEJ1ZmZlcihEYmIgKmRiYiwg aW50IHBhZ2VOdW1iZXIsIExvY2tUeXBlIGxvY2tUeXBlKQorQmRiKiBDYWNoZTo6Z2V0RnJlZUJ1 ZmZlcih2b2lkKQogewotCS8vc3luY09iamVjdC52YWxpZGF0ZUV4Y2x1c2l2ZSgiQ2FjaGU6OmZp bmRCdWZmZXIiKTsKLQlpbnQJc2xvdCA9IHBhZ2VOdW1iZXIgJSBoYXNoU2l6ZTsKLQlTeW5jIHN5 bmMoJnN5bmNEaXJ0eSwgIkNhY2hlOjpmaW5kQnVmZmVyIik7Ci0JCi0JLyogRmluZCBsZWFzdCBy ZWNlbnRseSB1c2VkLCBub3QtaW4tdXNlIGJ1ZmZlciAqLwotCisJU3luYyBidWZmZXJRdWV1ZUxv Y2sgKCZidWZmZXJRdWV1ZS5zeW5jT2JqZWN0LCAiQ2FjaGU6OmdldEZyZWVCdWZmZXIocXVldWUp Iik7CisJdW5zaWduZWQgaW50IGNvdW50OwogCUJkYiAqYmRiOwogCiAJLy8gRmluZCBhIGNhbmRp ZGF0ZSBCREIuCi0JCiAJZm9yICg7OykKIAkJewotCQlmb3IgKGJkYiA9IGJ1ZmZlclF1ZXVlLmxh c3Q7IGJkYjsgYmRiID0gYmRiLT5wcmlvcikKLQkJCWlmIChiZGItPnVzZUNvdW50ID09IDApCisJ CWJ1ZmZlclF1ZXVlTG9jay5sb2NrIChFeGNsdXNpdmUpOworCQkvLyBmaW5kIGEgY2FuZGlkYXRl IHRoYXQgaXMgTk9UIGluIHVzZSBhbmQgTk9UIGRpcnR5IGFuZCBpbiB0aGUgdGFpbCBmcmFjdGlv biBvZiB0aGUgTFJVCisJCWZvciAoY291bnQgPSAwLCBiZGIgPSBidWZmZXJRdWV1ZS5sYXN0OyBi ZGIgOyBiZGIgPSBiZGItPnByaW9yLCBjb3VudCsrKQorCQkJeworCQkJaWYgKGNvdW50ID49IHVw cGVyRnJhY3Rpb24pCisJCQkJeworCQkJCWJkYiA9IE5VTEw7CiAJCQkJYnJlYWs7CisJCQkJfQor CQkJaWYgKGJkYi0+dXNlQ291bnQgPT0gMCkKKwkJCQl7CisJCQkJaWYgKCFiZGItPmlzRGlydHkp CisJCQkJCXsKKwkJCQkJYmRiLT5pbmNyZW1lbnRVc2VDb3VudChSRUxfSElTVE9SWSk7CisJCQkJ CW1vdmVUb0hlYWRBbHJlYWR5TG9ja2VkKGJkYik7CisJCQkJCWJyZWFrOworCQkJCQl9CisJCQkJ fQorCQkJCWVsc2UKKwkJCQl7CisJCQkJCS8vIGdldCB0aGlzIG9uZSBvdXQgb2YgdGhlIHdheSBz byB3ZSBkb24ndCBzZWFyY2ggaXQgZXZlcnkgdGltZQorCQkJCQltb3ZlVG9IZWFkQWxyZWFkeUxv Y2tlZChiZGIpOworI2lmZGVmIENIRUNLX1NUQUxMRURfQkRCCisJCQkJCWJkYi0+c3RhbGxDb3Vu dCsrOworCQkJCQlpZiAoKGJkYi0+c3RhbGxDb3VudCAmIDB4MDMpID09IDB4MDMpIHsKKwkJCQkJ CUxvZzo6ZGVidWcoIlBhZ2UgJWQgaXMgaW4gdXNlIGFuZCBhZ2VkICVkIHRpbWVzXG4iLAorCQkJ CQkJCQliZGItPnBhZ2VOdW1iZXIsIGJkYi0+c3RhbGxDb3VudCk7CisJCQkJCX0KKyNlbmRpZiAv LyBDSEVDS19TVEFMTEVEX0JEQgorCQkJCX0KKwkJCX0KKworCQlpZiAoIWJkYikKKwkJCS8vIGZp bmQgYSBjYW5kaWRhdGUgdGhhdCBpcyBOT1QgaW4gdXNlLCBjb3VsZCBiZSBkaXJ0eQorCQkJZm9y IChiZGIgPSBidWZmZXJRdWV1ZS5sYXN0OyBiZGI7IGJkYiA9IGJkYi0+cHJpb3IpCisJCQkJaWYg KGJkYi0+dXNlQ291bnQgPT0gMCkKKwkJCQkJeworCQkJCQliZGItPmluY3JlbWVudFVzZUNvdW50 KFJFTF9ISVNUT1JZKTsKKwkJCQkJbW92ZVRvSGVhZEFscmVhZHlMb2NrZWQoYmRiKTsKKwkJCQkJ YnJlYWs7CisJCQkJCX0KKwkJYnVmZmVyUXVldWVMb2NrLnVubG9jaygpOwogCiAJCWlmICghYmRi KQogCQkJdGhyb3cgU1FMRXJyb3IoUlVOVElNRV9FUlJPUiwgImJ1ZmZlciBwb29sIGlzIGV4aGF1 c3RlZFxuIik7CiAJCQkKLQkJaWYgKCFiZGItPmlzRGlydHkpCi0JCQlicmVhazsKLQkJCQotCQl3 cml0ZVBhZ2UgKGJkYiwgV1JJVEVfVFlQRV9SRVVTRSk7Ci0JCX0KLQotCS8qIFVubGluayBpdHMg b2xkIGluY2FybmF0aW9uIGZyb20gdGhlIHBhZ2UvaGFzaCB0YWJsZSAqLworCQlpZiAoYmRiLT5w YWdlTnVtYmVyID49IDApCisJCXsKKwkJCWludAlzbG90UmVtb3ZlID0gUEFHRU5VTV8yX1NMT1Qo YmRiLT5wYWdlTnVtYmVyKTsKKwkJCVN5bmMgbG9ja0hhc2hSZW1vdmUgKCZzeW5jSGFzaFRhYmxl W1BBR0VOVU1fMl9MT0NLX0lOREVYKGJkYi0+cGFnZU51bWJlciwgc2xvdFJlbW92ZSldLCAiQ2Fj aGU6OmdldEZyZWVCdWZmZXIocmVtb3ZlKSIpOworCQkJbG9ja0hhc2hSZW1vdmUubG9jayhFeGNs dXNpdmUpOwogCi0JaWYgKGJkYi0+cGFnZU51bWJlciA+PSAwKQotCQlmb3IgKEJkYiAqKnB0ciA9 IGhhc2hUYWJsZSArIGJkYi0+cGFnZU51bWJlciAlIGhhc2hTaXplOzsgcHRyID0gJigqcHRyKS0+ aGFzaCkKLQkJCWlmICgqcHRyID09IGJkYikKKwkJCWlmIChiZGItPnVzZUNvdW50ICE9IDEpCiAJ CQkJewotCQkJCSpwdHIgPSBiZGItPmhhc2g7Ci0JCQkJYnJlYWs7CisJCQkJLy8gd2UgbG9zdCBh IHJhY2UgdHJ5IGFnYWluCisJCQkJYmRiLT5kZWNyZW1lbnRVc2VDb3VudChSRUxfSElTVE9SWSk7 CisJCQkJbG9ja0hhc2hSZW1vdmUudW5sb2NrKCk7CisJCQkJY29udGludWU7CiAJCQkJfQotCQkJ ZWxzZQotCQkJCUFTU0VSVCAoKnB0cik7CiAKLQliZGItPmFkZFJlZiAobG9ja1R5cGUgIENPTU1B X0FERF9ISVNUT1JZKTsKKwkJCWlmIChiZGItPmlzRGlydHkpCisJCQkJd3JpdGVQYWdlIChiZGIs IFdSSVRFX1RZUEVfUkVVU0UpOwogCi0JLyogU2V0IG5ldyBwYWdlIG51bWJlciBhbmQgcmVsaW5r IGludG8gaGFzaCB0YWJsZSAqLworCQkJLyogVW5saW5rIGl0cyBvbGQgaW5jYXJuYXRpb24gZnJv bSB0aGUgcGFnZS9oYXNoIHRhYmxlICovCisJCQlmb3IgKEJkYiAqKnB0ciA9IGhhc2hUYWJsZSAr IFBBR0VOVU1fMl9TTE9UKGJkYi0+cGFnZU51bWJlcikgOzsgcHRyID0gJigqcHRyKS0+aGFzaCkK KwkJCQlpZiAoKnB0ciA9PSBiZGIpCisJCQkJCXsKKwkJCQkJKnB0ciA9IGJkYi0+aGFzaDsKKwkJ CQkJYnJlYWs7CisJCQkJCX0KKwkJCQllbHNlCisJCQkJCUFTU0VSVCAoKnB0cik7CisJCX0KIAot CWJkYi0+aGFzaCA9IGhhc2hUYWJsZSBbc2xvdF07Ci0JaGFzaFRhYmxlIFtzbG90XSA9IGJkYjsK LQliZGItPnBhZ2VOdW1iZXIgPSBwYWdlTnVtYmVyOwotCWJkYi0+ZGJiID0gZGJiOworCQlicmVh azsKKwkJfQorI2lmZGVmIENIRUNLX1NUQUxMRURfQkRCCisJYmRiLT5zdGFsbENvdW50ID0gMDsK KyNlbmRpZiAvLyBDSEVDS19TVEFMTEVEX0JEQgogCiAjaWZkZWYgQ09MTEVDVF9CREJfSElTVE9S WQogCWJkYi0+aW5pdEhpc3RvcnkoKTsKICNlbmRpZgorCWJkYi0+YWRkUmVmIChFeGNsdXNpdmUg IENPTU1BX0FERF9ISVNUT1JZKTsKKwliZGItPmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZ KTsKIAogCXJldHVybiBiZGI7CiB9CiAKIHZvaWQgQ2FjaGU6OnZhbGlkYXRlKCkKIHsKKwkvL1N5 bmMgYnVmZmVyUXVldWVMb2NrICgmYnVmZmVyUXVldWUuc3luY09iamVjdCwgIkNhY2hlOjp2YWxp ZGF0ZSIpOworCisJLy9idWZmZXJRdWV1ZUxvY2subG9jayAoU2hhcmVkKTsKKwkvLyBub24tcHJv dGVjdGVkIGFjY2VzcyB0byBidWZmZXJRdWV1ZSBpcyBEQU5HRVJPVVMuLi4KIAlmb3IgKEJkYiAq YmRiID0gYnVmZmVyUXVldWUubGFzdDsgYmRiOyBiZGIgPSBiZGItPnByaW9yKQogCQl7CiAJCS8v SW5kZXhQYWdlICpwYWdlID0gKEluZGV4UGFnZSopIGJkYi0+YnVmZmVyOwpAQCAtNDcwLDggKzYz MCw4IEBAIHZvaWQgQ2FjaGU6OnZhbGlkYXRlKCkKIAogdm9pZCBDYWNoZTo6bWFya0RpcnR5KEJk YiAqYmRiKQogewotCVN5bmMgc3luYyAoJnN5bmNEaXJ0eSwgIkNhY2hlOjptYXJrRGlydHkiKTsK LQlzeW5jLmxvY2sgKEV4Y2x1c2l2ZSk7CisJU3luYyBkaXJ0eUxvY2sgKCZzeW5jRGlydHksICJD YWNoZTo6bWFya0RpcnR5Iik7CisJZGlydHlMb2NrLmxvY2sgKEV4Y2x1c2l2ZSk7CiAJYmRiLT5u ZXh0RGlydHkgPSBOVUxMOwogCWJkYi0+cHJpb3JEaXJ0eSA9IGxhc3REaXJ0eTsKIApAQCAtNDgx LDE0ICs2NDEsMTMgQEAgdm9pZCBDYWNoZTo6bWFya0RpcnR5KEJkYiAqYmRiKQogCQlmaXJzdERp cnR5ID0gYmRiOwogCiAJbGFzdERpcnR5ID0gYmRiOwotCSsrbnVtYmVyRGlydHlQYWdlczsKIAkv L3ZhbGlkYXRlVW5pcXVlIChiZGIpOwogfQogCiB2b2lkIENhY2hlOjptYXJrQ2xlYW4oQmRiICpi ZGIpCiB7Ci0JU3luYyBzeW5jICgmc3luY0RpcnR5LCAiQ2FjaGU6Om1hcmtDbGVhbiIpOwotCXN5 bmMubG9jayAoRXhjbHVzaXZlKTsKKwlTeW5jIGRpcnR5TG9jayAoJnN5bmNEaXJ0eSwgIkNhY2hl OjptYXJrQ2xlYW4iKTsKKwlkaXJ0eUxvY2subG9jayAoRXhjbHVzaXZlKTsKIAogCS8qKioKIAlp ZiAoYmRiLT5mbHVzaEl0KQpAQCAtNDk2LDcgKzY1NSw2IEBAIHZvaWQgQ2FjaGU6Om1hcmtDbGVh bihCZGIgKmJkYikKIAkqKiovCiAJCiAJYmRiLT5mbHVzaEl0ID0gZmFsc2U7Ci0JLS1udW1iZXJE aXJ0eVBhZ2VzOwogCQogCWlmIChiZGIgPT0gbGFzdERpcnR5KQogCQlsYXN0RGlydHkgPSBiZGIt PnByaW9yRGlydHk7CkBAIC02MDAsOCArNzU4LDggQEAgdm9pZCBDYWNoZTo6d3JpdGVQYWdlKEJk YiAqYmRiLCBpbnQgdHlwZQogCiAJaWYgKGRiYi0+c2hhZG93cykKIAkJewotCQlTeW5jIHN5bmMg KCZkYmItPnN5bmNDbG9uZSwgIkNhY2hlOjp3cml0ZVBhZ2UoMikiKTsKLQkJc3luYy5sb2NrIChT aGFyZWQpOworCQlTeW5jIGNsb25lTG9jayAoJmRiYi0+c3luY0Nsb25lLCAiQ2FjaGU6OndyaXRl UGFnZSgyKSIpOworCQljbG9uZUxvY2subG9jayAoU2hhcmVkKTsKIAogCQlmb3IgKERhdGFiYXNl Q29weSAqc2hhZG93ID0gZGJiLT5zaGFkb3dzOyBzaGFkb3c7IHNoYWRvdyA9IHNoYWRvdy0+bmV4 dCkKIAkJCXNoYWRvdy0+cmV3cml0ZVBhZ2UoYmRiKTsKQEAgLTYxMCwxNCArNzY4LDE0IEBAIHZv aWQgQ2FjaGU6OndyaXRlUGFnZShCZGIgKmJkYiwgaW50IHR5cGUKIAogdm9pZCBDYWNoZTo6YW5h bHl6ZShTdHJlYW0gKnN0cmVhbSkKIHsKLQlTeW5jIHN5bmMgKCZzeW5jRGlydHksICJDYWNoZTo6 YW5hbHl6ZSIpOwotCXN5bmMubG9jayAoU2hhcmVkKTsKKwlTeW5jIGRpcnR5TG9jayAoJnN5bmNE aXJ0eSwgIkNhY2hlOjphbmFseXplIik7CiAJaW50IGluVXNlID0gMDsKIAlpbnQgZGlydHkgPSAw OwogCWludCBkaXJ0eUxpc3QgPSAwOwogCWludCB0b3RhbCA9IDA7CiAJQmRiICpiZGI7CiAKKwkv LyBub24tcHJvdGVjdGVkIGFjY2VzcyB0byBiZGJzLGVuZEJkYnMgaXMgREFOR0VST1VTLi4uCiAJ Zm9yIChiZGIgPSBiZGJzOyBiZGIgPCBlbmRCZGJzOyArK2JkYikKIAkJewogCQkrK3RvdGFsOwpA QCAtNjI5LDggKzc4NywxMCBAQCB2b2lkIENhY2hlOjphbmFseXplKFN0cmVhbSAqc3RyZWFtKQog CQkJKytpblVzZTsKIAkJfQogCisJZGlydHlMb2NrLmxvY2sgKFNoYXJlZCk7CiAJZm9yIChiZGIg PSBmaXJzdERpcnR5OyBiZGI7IGJkYiA9IGJkYi0+bmV4dERpcnR5KQogCQkrK2RpcnR5TGlzdDsK KwlkaXJ0eUxvY2sudW5sb2NrKCk7CiAKIAlzdHJlYW0tPmZvcm1hdCAoIkNhY2hlOiAlZCBwYWdl cywgJWQgaW4gdXNlLCAlZCBkaXJ0eSwgJWQgaW4gZGlydHkgY2hhaW5cbiIsCiAJCQkJCXRvdGFs LCBpblVzZSwgZGlydHksIGRpcnR5TGlzdCk7CkBAIC02MzgsMTcgKzc5OCwxOCBAQCB2b2lkIENh Y2hlOjphbmFseXplKFN0cmVhbSAqc3RyZWFtKQogCiB2b2lkIENhY2hlOjp2YWxpZGF0ZVVuaXF1 ZShCZGIgKnRhcmdldCkKIHsKLQlpbnQJc2xvdCA9IHRhcmdldC0+cGFnZU51bWJlciAlIGhhc2hT aXplOworCWludAlzbG90ID0gUEFHRU5VTV8yX1NMT1QodGFyZ2V0LT5wYWdlTnVtYmVyKTsKIAor CS8vIFdBUk5JTkc6IHVubG9ja2VkIHdhbGsgb2YgaGFzaCB0YWJsZS4uLi4gREFOR0VST1VTCiAJ Zm9yIChCZGIgKmJkYiA9IGhhc2hUYWJsZSBbc2xvdF07IGJkYjsgYmRiID0gYmRiLT5oYXNoKQog CQlBU1NFUlQgKGJkYiA9PSB0YXJnZXQgfHwgIShiZGItPnBhZ2VOdW1iZXIgPT0gdGFyZ2V0LT5w YWdlTnVtYmVyICYmIGJkYi0+ZGJiID09IHRhcmdldC0+ZGJiKSk7CiB9CiAKIHZvaWQgQ2FjaGU6 OmZyZWVQYWdlKERiYiAqZGJiLCBpbnQzMiBwYWdlTnVtYmVyKQogewotCVN5bmMgc3luYyAoJnN5 bmNPYmplY3QsICJDYWNoZTo6ZnJlZVBhZ2UiKTsKLQlzeW5jLmxvY2sgKFNoYXJlZCk7Ci0JaW50 CXNsb3QgPSBwYWdlTnVtYmVyICUgaGFzaFNpemU7CisJaW50IHNsb3QgPSBQQUdFTlVNXzJfU0xP VChwYWdlTnVtYmVyKTsKKwlTeW5jIGxvY2tIYXNoICgmc3luY0hhc2hUYWJsZVtQQUdFTlVNXzJf TE9DS19JTkRFWChwYWdlTnVtYmVyLCBzbG90KV0sICJDYWNoZTo6ZnJlZVBhZ2UiKTsKKwlsb2Nr SGFzaC5sb2NrKFNoYXJlZCk7CiAKIAkvLyBJZiBwYWdlIGV4aXN0cyBpbiBjYWNoZSAodXN1YWwg Y2FzZSksIGNsZWFuIGl0IHVwCiAKQEAgLTY1Nyw3ICs4MTgsNiBAQCB2b2lkIENhY2hlOjpmcmVl UGFnZShEYmIgKmRiYiwgaW50MzIgcGFnCiAJCQl7CiAJCQlpZiAoYmRiLT5pc0RpcnR5KQogCQkJ CXsKLQkJCQlzeW5jLnVubG9jaygpOwogCQkJCW1hcmtDbGVhbiAoYmRiKTsKIAkJCQl9CiAJCQkJ CkBAIC02ODUsOCArODQ1LDggQEAgdm9pZCBDYWNoZTo6Zmx1c2goRGJiICpkYmIpCiAKIGJvb2wg Q2FjaGU6Omhhc0RpcnR5UGFnZXMoRGJiICpkYmIpCiB7Ci0JU3luYyBzeW5jICgmc3luY0RpcnR5 LCAiQ2FjaGU6Omhhc0RpcnR5UGFnZXMiKTsKLQlzeW5jLmxvY2sgKFNoYXJlZCk7CisJU3luYyBk aXJ0eUxvY2sgKCZzeW5jRGlydHksICJDYWNoZTo6aGFzRGlydHlQYWdlcyIpOworCWRpcnR5TG9j ay5sb2NrIChTaGFyZWQpOwogCiAJZm9yIChCZGIgKmJkYiA9IGZpcnN0RGlydHk7IGJkYjsgYmRi ID0gYmRiLT5uZXh0RGlydHkpCiAJCWlmIChiZGItPmRiYiA9PSBkYmIpCkBAIC03MTcsMjYgKzg3 NywxNiBAQCBCZGIqIENhY2hlOjp0cmlhbEZldGNoKERiYiogZGJiLCBpbnQzMiBwCiAJCX0KIAog CUFTU0VSVCAocGFnZU51bWJlciA+PSAwKTsKLQlpbnQJc2xvdCA9IHBhZ2VOdW1iZXIgJSBoYXNo U2l6ZTsKLQlTeW5jIHN5bmMgKCZzeW5jT2JqZWN0LCAiQ2FjaGU6OnRyaWFsRmV0Y2giKTsKLQlz eW5jLmxvY2sgKFNoYXJlZCk7Ci0JaW50IGhpdCA9IDA7Ci0KLQkvKiBJZiB3ZSBhbHJlYWR5IGhh dmUgYSBidWZmZXIgZm9yIHRoaXMgZ28sIHdlJ3JlIGRvbmUgKi8KLQogCUJkYiAqYmRiOwogCi0J Zm9yIChiZGIgPSBoYXNoVGFibGUgW3Nsb3RdOyBiZGI7IGJkYiA9IGJkYi0+aGFzaCkKLQkJaWYg KGJkYi0+cGFnZU51bWJlciA9PSBwYWdlTnVtYmVyICYmIGJkYi0+ZGJiID09IGRiYikKLQkJCXsK LQkJCS8vc3luY09iamVjdC52YWxpZGF0ZVNoYXJlZCgiQ2FjaGU6OnRyaWFsRmV0Y2giKTsKLQkJ CWJkYi0+aW5jcmVtZW50VXNlQ291bnQoQUREX0hJU1RPUlkpOwotCQkJc3luYy51bmxvY2soKTsK LQkJCWJkYi0+YWRkUmVmKGxvY2tUeXBlICBDT01NQV9BRERfSElTVE9SWSk7Ci0JCQliZGItPmRl Y3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKLQkJCWhpdCA9IDE7Ci0JCQlicmVhazsKLQkJ CX0KKwkvKiBJZiB3ZSBhbHJlYWR5IGhhdmUgYSBidWZmZXIgZm9yIHRoaXMsIHdlJ3JlIGRvbmUg Ki8KKwliZGIgPSBsb2NrRmluZEJkYkluY3JlbWVudFVzZUNvdW50KGRiYiwgcGFnZU51bWJlcik7 CisJaWYgKGJkYikKKwkJeworCQliZGItPmFkZFJlZihsb2NrVHlwZSAgQ09NTUFfQUREX0hJU1RP UlkpOworCQliZGItPmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNUT1JZKTsKKwkJbW92ZVRvSGVh ZChiZGIpOworCX0KIAogCXJldHVybiBiZGI7CiB9CkBAIC03NjQsMTAgKzkxNCw5IEBAIHZvaWQg Q2FjaGU6OmlvVGhyZWFkKHZvaWQqIGFyZykKIAogdm9pZCBDYWNoZTo6aW9UaHJlYWQodm9pZCkK IHsKLQlTeW5jIHN5bmNUaHJlYWQoJnN5bmNUaHJlYWRzLCAiQ2FjaGU6OmlvVGhyZWFkKDEpIik7 CisJU3luYyBzeW5jVGhyZWFkKCZzeW5jVGhyZWFkcywgIkNhY2hlOjppb1RocmVhZCh0aHJlYWRz KSIpOwogCXN5bmNUaHJlYWQubG9jayhTaGFyZWQpOwotCVN5bmMgZmx1c2hMb2NrKCZzeW5jRmx1 c2gsICJDYWNoZTo6aW9UaHJlYWQoMikiKTsKLQlTeW5jIHN5bmMoJnN5bmNPYmplY3QsICJDYWNo ZTo6aW9UaHJlYWQoMykiKTsKKwlTeW5jIGZsdXNoTG9jaygmc3luY0ZsdXNoLCAiQ2FjaGU6Omlv VGhyZWFkKGZsdXNoKSIpOwogCVByaW9yaXR5IHByaW9yaXR5KGRhdGFiYXNlLT5pb1NjaGVkdWxl cik7CiAJVGhyZWFkICp0aHJlYWQgPSBUaHJlYWQ6OmdldFRocmVhZCgiQ2FjaGU6OmlvVGhyZWFk Iik7CiAJVUNIQVIgKnJhd0J1ZmZlciA9IG5ldyBVQ0hBUltBU1lOQ19CVUZGRVJfU0laRV07CkBA IC03ODEsMTM3ICs5MzAsMTM1IEBAIHZvaWQgQ2FjaGU6OmlvVGhyZWFkKHZvaWQpCiAJCXsKIAkJ aW50MzIgcGFnZU51bWJlciA9IGZsdXNoQml0bWFwLT5uZXh0U2V0KDApOwogCQlpbnQgY291bnQ7 Ci0JCURiYiAqZGJiOwogCQkKIAkJaWYgKHBhZ2VOdW1iZXIgPj0gMCkKIAkJCXsKLQkJCWludAlz bG90ID0gcGFnZU51bWJlciAlIGhhc2hTaXplOworCQkJQmRiICpiZGI7CisJCQlEYmIgKmRiYjsK KwkJCWludAlzbG90ID0gUEFHRU5VTV8yX1NMT1QocGFnZU51bWJlcik7CiAJCQlib29sIGhpdCA9 IGZhbHNlOwogCQkJQmRiICpiZGJMaXN0ID0gTlVMTDsKIAkJCVVDSEFSICpwID0gYnVmZmVyOwot CQkJc3luYy5sb2NrKFNoYXJlZCk7CiAJCQkKLQkJCS8vIExvb2sgZm9yIGEgcGFnZSB0byBmbHVz aC4gIFRoZW4gZ2V0IGFsbCBoaXMgZnJpZW5kcwotCQkJCi0JCQlmb3IgKEJkYiAqYmRiID0gaGFz aFRhYmxlW3Nsb3RdOyBiZGI7IGJkYiA9IGJkYi0+aGFzaCkKLQkJCQlpZiAoYmRiLT5wYWdlTnVt YmVyID09IHBhZ2VOdW1iZXIgJiYgYmRiLT5mbHVzaEl0ICYmIGJkYi0+aXNEaXJ0eSkKKwkJCS8v IExvb2sgZm9yIHRoZSBwYWdlIHRvIGZsdXNoLgorCQkJYmRiID0gbG9ja0ZpbmRCZGJJbmNyZW1l bnRVc2VDb3VudChwYWdlTnVtYmVyLCBzbG90KTsKKwkJCWlmIChiZGIgJiYgYmRiLT5mbHVzaEl0 ICYmIGJkYi0+aXNEaXJ0eSkKKwkJCQl7CisJCQkJaGl0ID0gdHJ1ZTsKKwkJCQljb3VudCA9IDA7 CisJCQkJZGJiID0gYmRiLT5kYmI7CisJCQkJCisJCQkJZmx1c2hCaXRtYXAtPmNsZWFyKHBhZ2VO dW1iZXIpOworCQkJCQorCQkJCS8vIGdldCBhbGwgaGlzIGZyaWVuZHMKKwkJCQl3aGlsZSAocCA8 IGVuZCkKIAkJCQkJewotCQkJCQloaXQgPSB0cnVlOwotCQkJCQljb3VudCA9IDA7Ci0JCQkJCWRi YiA9IGJkYi0+ZGJiOworCQkJCQkrK2NvdW50OworCQkJCQliZGItPmFkZFJlZihTaGFyZWQgIENP TU1BX0FERF9ISVNUT1JZKTsKIAkJCQkJCi0JCQkJCWlmICghYmRiLT5oYXNoKQotCQkJCQkJZmx1 c2hCaXRtYXAtPmNsZWFyKHBhZ2VOdW1iZXIpOworCQkJCQliZGItPnN5bmNXcml0ZS5sb2NrKE5V TEwsIEV4Y2x1c2l2ZSk7CisJCQkJCWJkYi0+aW9UaHJlYWROZXh0ID0gYmRiTGlzdDsKKwkJCQkJ YmRiTGlzdCA9IGJkYjsKIAkJCQkJCi0JCQkJCXdoaWxlIChwIDwgZW5kKQotCQkJCQkJewotCQkJ CQkJKytjb3VudDsKLQkJCQkJCWJkYi0+aW5jcmVtZW50VXNlQ291bnQoQUREX0hJU1RPUlkpOwot CQkJCQkJc3luYy51bmxvY2soKTsKLQkJCQkJCWJkYi0+YWRkUmVmKFNoYXJlZCAgQ09NTUFfQURE X0hJU1RPUlkpOwotCQkJCQkJaWYgKGZhbGNvbl91c2Vfc2VjdG9yY2FjaGUpCi0JCQkJCQkJc2Vj dG9yQ2FjaGUtPndyaXRlUGFnZShiZGIpOwotCQkJCQkJCi0JCQkJCQliZGItPnN5bmNXcml0ZS5s b2NrKE5VTEwsIEV4Y2x1c2l2ZSk7Ci0JCQkJCQliZGItPmlvVGhyZWFkTmV4dCA9IGJkYkxpc3Q7 Ci0JCQkJCQliZGJMaXN0ID0gYmRiOwotCQkJCQkJCi0JCQkJCQkvL0FTU0VSVCghKGJkYi0+Zmxh Z3MgJiBCREJfd3JpdGVfcGVuZGluZykpOwotCQkJCQkJLy9iZGItPmZsYWdzIHw9IEJEQl93cml0 ZV9wZW5kaW5nOwotCQkJCQkJbWVtY3B5KHAsIGJkYi0+YnVmZmVyLCBwYWdlU2l6ZSk7Ci0JCQkJ CQlwICs9IHBhZ2VTaXplOwotCQkJCQkJYmRiLT5mbHVzaEl0ID0gZmFsc2U7Ci0JCQkJCQltYXJr Q2xlYW4oYmRiKTsKLQkJCQkJCWJkYi0+aXNEaXJ0eSA9IGZhbHNlOwotCQkJCQkJYmRiLT5yZWxl YXNlKFJFTF9ISVNUT1JZKTsKLQkJCQkJCXN5bmMubG9jayhTaGFyZWQpOwotCQkJCQkJCi0JCQkJ CQlpZiAoICEoYmRiID0gZmluZEJkYihkYmIsIGJkYi0+cGFnZU51bWJlciArIDEpKSApCi0JCQkJ CQkJYnJlYWs7Ci0JCQkJCQkKLQkJCQkJCWlmICghYmRiLT5pc0RpcnR5ICYmICFjb250aW51ZVdy aXRlKGJkYikpCi0JCQkJCQkJYnJlYWs7Ci0JCQkJCQl9CisJCQkJCS8vQVNTRVJUKCEoYmRiLT5m bGFncyAmIEJEQl93cml0ZV9wZW5kaW5nKSk7CisJCQkJCS8vYmRiLT5mbGFncyB8PSBCREJfd3Jp dGVfcGVuZGluZzsKKwkJCQkJbWVtY3B5KHAsIGJkYi0+YnVmZmVyLCBwYWdlU2l6ZSk7CisJCQkJ CXAgKz0gcGFnZVNpemU7CisJCQkJCWJkYi0+Zmx1c2hJdCA9IGZhbHNlOworCQkJCQltYXJrQ2xl YW4oYmRiKTsKKwkJCQkJYmRiLT5pc0RpcnR5ID0gZmFsc2U7CisJCQkJCWJkYi0+cmVsZWFzZShS RUxfSElTVE9SWSk7CiAJCQkJCQotCQkJCQlpZiAoc3luYy5zdGF0ZSAhPSBOb25lKQotCQkJCQkJ c3luYy51bmxvY2soKTsKLQkJCQkJCQotCQkJCQlmbHVzaExvY2sudW5sb2NrKCk7Ci0JCQkJCS8v TG9nOjpkZWJ1ZygiICVkIFdyaXRpbmcgJXMgJWQgcGFnZXM6ICVkIC0gJWRcbiIsIHRocmVhZC0+ dGhyZWFkSWQsIChjb25zdCBjaGFyKikgZGJiLT5maWxlTmFtZSwgY291bnQsIHBhZ2VOdW1iZXIs IHBhZ2VOdW1iZXIgKyBjb3VudCAtIDEpOwotCQkJCQlpbnQgbGVuZ3RoID0gcCAtIGJ1ZmZlcjsK LQkJCQkJcHJpb3JpdHkuc2NoZWR1bGUoUFJJT1JJVFlfTE9XKTsKKwkJCQkJYmRiID0gbG9ja0Zp bmRCZGJJbmNyZW1lbnRVc2VDb3VudChkYmIsIGJkYi0+cGFnZU51bWJlciArIDEpOworCQkJCQlp ZiAoIWJkYikKKwkJCQkJCWJyZWFrOwogCQkJCQkKLQkJCQkJdHJ5CisJCQkJCWlmICghYmRiLT5p c0RpcnR5ICYmICFjb250aW51ZVdyaXRlKGJkYikpCiAJCQkJCQl7Ci0JCQkJCQlwcmlvcml0eS5z Y2hlZHVsZShQUklPUklUWV9MT1cpOwotCQkJCQkJZGJiLT53cml0ZVBhZ2VzKHBhZ2VOdW1iZXIs IGxlbmd0aCwgYnVmZmVyLCBXUklURV9UWVBFX0ZMVVNIKTsKKwkJCQkJCWJkYi0+ZGVjcmVtZW50 VXNlQ291bnQoUkVMX0hJU1RPUlkpOworCQkJCQkJYnJlYWs7CiAJCQkJCQl9Ci0JCQkJCWNhdGNo IChTUUxFeGNlcHRpb24mIGV4Y2VwdGlvbikKKwkJCQkJfQorCQkJCQorCQkJCWZsdXNoTG9jay51 bmxvY2soKTsKKwkJCQkvL0xvZzo6ZGVidWcoIiAlZCBXcml0aW5nICVzICVkIHBhZ2VzOiAlZCAt ICVkXG4iLCB0aHJlYWQtPnRocmVhZElkLCAoY29uc3QgY2hhciopIGRiYi0+ZmlsZU5hbWUsIGNv dW50LCBwYWdlTnVtYmVyLCBwYWdlTnVtYmVyICsgY291bnQgLSAxKTsKKwkJCQlpbnQgbGVuZ3Ro ID0gcCAtIGJ1ZmZlcjsKKwkJCQlwcmlvcml0eS5zY2hlZHVsZShQUklPUklUWV9MT1cpOworCQkJ CQorCQkJCXRyeQorCQkJCQl7CisJCQkJCXByaW9yaXR5LnNjaGVkdWxlKFBSSU9SSVRZX0xPVyk7 CisJCQkJCWRiYi0+d3JpdGVQYWdlcyhwYWdlTnVtYmVyLCBsZW5ndGgsIGJ1ZmZlciwgV1JJVEVf VFlQRV9GTFVTSCk7CisJCQkJCX0KKwkJCQljYXRjaCAoU1FMRXhjZXB0aW9uJiBleGNlcHRpb24p CisJCQkJCXsKKwkJCQkJcHJpb3JpdHkuZmluaXNoZWQoKTsKKwkJCQkJCisJCQkJCWlmIChleGNl cHRpb24uZ2V0U3FsY29kZSgpICE9IERFVklDRV9GVUxMKQorCQkJCQkJdGhyb3c7CisJCQkJCQor CQkJCQlkYXRhYmFzZS0+c2V0SU9FcnJvcigmZXhjZXB0aW9uKTsKKwkJCQkJCisJCQkJCWZvciAo Ym9vbCBlcnJvciA9IHRydWU7IGVycm9yOykKIAkJCQkJCXsKLQkJCQkJCXByaW9yaXR5LmZpbmlz aGVkKCk7Ci0JCQkJCQkKLQkJCQkJCWlmIChleGNlcHRpb24uZ2V0U3FsY29kZSgpICE9IERFVklD RV9GVUxMKQotCQkJCQkJCXRocm93OwotCQkJCQkJCi0JCQkJCQlkYXRhYmFzZS0+c2V0SU9FcnJv cigmZXhjZXB0aW9uKTsKLQkJCQkJCQotCQkJCQkJZm9yIChib29sIGVycm9yID0gdHJ1ZTsgZXJy b3I7KQorCQkJCQkJaWYgKHRocmVhZC0+c2h1dGRvd25JblByb2dyZXNzKQogCQkJCQkJCXsKLQkJ CQkJCQlpZiAodGhyZWFkLT5zaHV0ZG93bkluUHJvZ3Jlc3MpCi0JCQkJCQkJCXsKLQkJCQkJCQkJ QmRiICpuZXh0OworCQkJCQkJCUJkYiAqbmV4dDsKIAotCQkJCQkJCQlmb3IgKGJkYiA9IGJkYkxp c3Q7IGJkYjsgYmRiID0gbmV4dCkKLQkJCQkJCQkJCXsKLQkJCQkJCQkJCS8vYmRiLT5mbGFncyAm PSB+QkRCX3dyaXRlX3BlbmRpbmc7Ci0JCQkJCQkJCQluZXh0ID0gYmRiLT5pb1RocmVhZE5leHQ7 Ci0JCQkJCQkJCQliZGItPnN5bmNXcml0ZS51bmxvY2soKTsKLQkJCQkJCQkJCWJkYi0+ZGVjcmVt ZW50VXNlQ291bnQoUkVMX0hJU1RPUlkpOwotCQkJCQkJCQkJfQotCQkJCQkJCQkJCi0JCQkJCQkJ CXJldHVybjsKLQkJCQkJCQkJfQotCQkJCQkJCQotCQkJCQkJCXRocmVhZC0+c2xlZXAoMTAwMCk7 Ci0JCQkJCQkJCi0JCQkJCQkJdHJ5CisJCQkJCQkJZm9yIChiZGIgPSBiZGJMaXN0OyBiZGI7IGJk YiA9IG5leHQpCiAJCQkJCQkJCXsKLQkJCQkJCQkJcHJpb3JpdHkuc2NoZWR1bGUoUFJJT1JJVFlf TE9XKTsKLQkJCQkJCQkJZGJiLT53cml0ZVBhZ2VzKHBhZ2VOdW1iZXIsIGxlbmd0aCwgYnVmZmVy LCBXUklURV9UWVBFX0ZMVVNIKTsKLQkJCQkJCQkJZXJyb3IgPSBmYWxzZTsKLQkJCQkJCQkJZGF0 YWJhc2UtPmNsZWFySU9FcnJvcigpOworCQkJCQkJCQkvL2JkYi0+ZmxhZ3MgJj0gfkJEQl93cml0 ZV9wZW5kaW5nOworCQkJCQkJCQluZXh0ID0gYmRiLT5pb1RocmVhZE5leHQ7CisJCQkJCQkJCWJk Yi0+c3luY1dyaXRlLnVubG9jaygpOworCQkJCQkJCQliZGItPmRlY3JlbWVudFVzZUNvdW50KFJF TF9ISVNUT1JZKTsKIAkJCQkJCQkJfQotCQkJCQkJCWNhdGNoIChTUUxFeGNlcHRpb24mIGV4Y2Vw dGlvbjIpCi0JCQkJCQkJCXsKLQkJCQkJCQkJcHJpb3JpdHkuZmluaXNoZWQoKTsKIAkJCQkJCQkJ Ci0JCQkJCQkJCWlmIChleGNlcHRpb24yLmdldFNxbGNvZGUoKSAhPSBERVZJQ0VfRlVMTCkKLQkJ CQkJCQkJCXRocm93OwotCQkJCQkJCQl9CisJCQkJCQkJcmV0dXJuOworCQkJCQkJCX0KKwkJCQkJ CQorCQkJCQkJdGhyZWFkLT5zbGVlcCgxMDAwKTsKKwkJCQkJCQorCQkJCQkJdHJ5CisJCQkJCQkJ eworCQkJCQkJCXByaW9yaXR5LnNjaGVkdWxlKFBSSU9SSVRZX0xPVyk7CisJCQkJCQkJZGJiLT53 cml0ZVBhZ2VzKHBhZ2VOdW1iZXIsIGxlbmd0aCwgYnVmZmVyLCBXUklURV9UWVBFX0ZMVVNIKTsK KwkJCQkJCQllcnJvciA9IGZhbHNlOworCQkJCQkJCWRhdGFiYXNlLT5jbGVhcklPRXJyb3IoKTsK KwkJCQkJCQl9CisJCQkJCQljYXRjaCAoU1FMRXhjZXB0aW9uJiBleGNlcHRpb24yKQorCQkJCQkJ CXsKKwkJCQkJCQlwcmlvcml0eS5maW5pc2hlZCgpOworCQkJCQkJCQorCQkJCQkJCWlmIChleGNl cHRpb24yLmdldFNxbGNvZGUoKSAhPSBERVZJQ0VfRlVMTCkKKwkJCQkJCQkJdGhyb3c7CiAJCQkJ CQkJfQogCQkJCQkJfQorCQkJCQl9CiAKLQkJCQkJcHJpb3JpdHkuZmluaXNoZWQoKTsKLQkJCQkJ QmRiICpuZXh0OworCQkJCXByaW9yaXR5LmZpbmlzaGVkKCk7CisJCQkJQmRiICpuZXh0OwogCi0J CQkJCWZvciAoYmRiID0gYmRiTGlzdDsgYmRiOyBiZGIgPSBuZXh0KQotCQkJCQkJewotCQkJCQkJ Ly9BU1NFUlQoYmRiLT5mbGFncyAmIEJEQl93cml0ZV9wZW5kaW5nKTsKLQkJCQkJCS8vYmRiLT5m bGFncyAmPSB+QkRCX3dyaXRlX3BlbmRpbmc7Ci0JCQkJCQluZXh0ID0gYmRiLT5pb1RocmVhZE5l eHQ7Ci0JCQkJCQliZGItPnN5bmNXcml0ZS51bmxvY2soKTsKLQkJCQkJCWJkYi0+ZGVjcmVtZW50 VXNlQ291bnQoUkVMX0hJU1RPUlkpOwotCQkJCQkJfQotCQkJCQkKLQkJCQkJZmx1c2hMb2NrLmxv Y2soRXhjbHVzaXZlKTsKLQkJCQkJKytwaHlzaWNhbFdyaXRlczsKLQkJCQkJCi0JCQkJCWJyZWFr OworCQkJCWZvciAoYmRiID0gYmRiTGlzdDsgYmRiOyBiZGIgPSBuZXh0KQorCQkJCQl7CisJCQkJ CS8vQVNTRVJUKGJkYi0+ZmxhZ3MgJiBCREJfd3JpdGVfcGVuZGluZyk7CisJCQkJCS8vYmRiLT5m bGFncyAmPSB+QkRCX3dyaXRlX3BlbmRpbmc7CisJCQkJCW5leHQgPSBiZGItPmlvVGhyZWFkTmV4 dDsKKwkJCQkJYmRiLT5zeW5jV3JpdGUudW5sb2NrKCk7CisJCQkJCWJkYi0+ZGVjcmVtZW50VXNl Q291bnQoUkVMX0hJU1RPUlkpOwogCQkJCQl9CisJCQkJCisJCQkJZmx1c2hMb2NrLmxvY2soRXhj bHVzaXZlKTsKKwkJCQkrK3BoeXNpY2FsV3JpdGVzOworCQkJCQorCQkJCX0KKwkJCWVsc2UKKwkJ CQl7CisJCQkJCWlmIChiZGIpCisJCQkJCQliZGItPmRlY3JlbWVudFVzZUNvdW50KFJFTF9ISVNU T1JZKTsKKwkJCQl9CiAJCQkKIAkJCWlmICghaGl0KQogCQkJCXsKLQkJCQlzeW5jLnVubG9jaygp OwogCQkJCWZsdXNoQml0bWFwLT5jbGVhcihwYWdlTnVtYmVyKTsKIAkJCQl9CiAJCQl9CkBAIC05 MjIsNyArMTA2OSw5IEBAIHZvaWQgQ2FjaGU6OmlvVGhyZWFkKHZvaWQpCiAJCQkJaW50IHdyaXRl cyA9IHBoeXNpY2FsV3JpdGVzOwogCQkJCWludCBwYWdlcyA9IGZsdXNoUGFnZXM7CiAJCQkJaW50 IGRlbHRhID0gKGludCkgKGRhdGFiYXNlLT50aW1lc3RhbXAgLSBmbHVzaFN0YXJ0KTsKKwkJCQlp bnQ2NCBjYWxsYmFja0FyZyA9IGZsdXNoQXJnOwogCQkJCWZsdXNoaW5nID0gZmFsc2U7CisJCQkJ Zmx1c2hBcmcgPSAwOwogCQkJCWZsdXNoTG9jay51bmxvY2soKTsKIAkJCQlzeW5jV2FpdC51bmxv Y2soKTsKIAkJCQkKQEAgLTkzMCw3ICsxMDc5LDggQEAgdm9pZCBDYWNoZTo6aW9UaHJlYWQodm9p ZCkKIAkJCQkJTG9nOjpsb2coTG9nSW5mbywgIiVkOiBDYWNoZSBmbHVzaDogJWQgcGFnZXMsICVk IHdyaXRlcyBpbiAlZCBzZWNvbmRzICglZCBwcHMpXG4iLAogCQkJCQkJCQlkYXRhYmFzZS0+ZGVs dGFUaW1lLCBwYWdlcywgd3JpdGVzLCBkZWx0YSwgcGFnZXMgLyBNQVgoZGVsdGEsIDEpKTsKIAot CQkJCWRhdGFiYXNlLT5wYWdlQ2FjaGVGbHVzaGVkKGZsdXNoQXJnKTsKKwkJCQlpZiAoY2FsbGJh Y2tBcmcgIT0gMCkKKwkJCQkJZGF0YWJhc2UtPnBhZ2VDYWNoZUZsdXNoZWQoY2FsbGJhY2tBcmcp OwogCQkJCX0KIAkJCWVsc2UKIAkJCQlmbHVzaExvY2sudW5sb2NrKCk7CkBAIC05NDAsOCArMTA5 MCw4IEBAIHZvaWQgQ2FjaGU6OmlvVGhyZWFkKHZvaWQpCiAKIAkJCXRocmVhZC0+c2xlZXAoKTsK IAkJCWZsdXNoTG9jay5sb2NrKEV4Y2x1c2l2ZSk7Ci0JCQl9CiAJCX0KKwkJfSAvLyBmb3IgZXZl cgogCQogCWRlbGV0ZSBbXSByYXdCdWZmZXI7CQkJCiB9CkBAIC05NTQsMTEgKzExMDQsMTIgQEAg Ym9vbCBDYWNoZTo6Y29udGludWVXcml0ZShCZGIqIHN0YXJ0aW5nQgogCQogCWZvciAoaW50MzIg cGFnZU51bWJlciA9IHN0YXJ0aW5nQmRiLT5wYWdlTnVtYmVyICsgMSwgZW5kID0gcGFnZU51bWJl cisgNTsgcGFnZU51bWJlciA8IGVuZDsgKytwYWdlTnVtYmVyKQogCQl7Ci0JCUJkYiAqYmRiID0g ZmluZEJkYihkYmIsIHBhZ2VOdW1iZXIpOworCQlCZGIgKmJkYjsKIAkJCiAJCWlmIChkaXJ0eSA+ IGNsZWFuKQogCQkJcmV0dXJuIHRydWU7Ci0JCQkKKworCQliZGIgPSBsb2NrRmluZEJkYkluY3Jl bWVudFVzZUNvdW50KGRiYiwgcGFnZU51bWJlcik7CiAJCWlmICghYmRiKQogCQkJcmV0dXJuIGRp cnR5ID49IGNsZWFuOwogCQkKQEAgLTk2Niw2ICsxMTE3LDcgQEAgYm9vbCBDYWNoZTo6Y29udGlu dWVXcml0ZShCZGIqIHN0YXJ0aW5nQgogCQkJKytkaXJ0eTsKIAkJZWxzZQogCQkJKytjbGVhbjsK KwkJYmRiLT5kZWNyZW1lbnRVc2VDb3VudChSRUxfSElTVE9SWSk7CiAJCX0KIAkKIAlyZXR1cm4g KGRpcnR5ID49IGNsZWFuKTsKQEAgLTk5NSwxNSArMTE0NywxOCBAQCB2b2lkIENhY2hlOjpzaHV0 ZG93blRocmVhZHModm9pZCkKIAkJaW9UaHJlYWRzW25dID0gMDsKIAkJfQogCQotCVN5bmMgc3lu Yygmc3luY1RocmVhZHMsICJDYWNoZTo6c2h1dGRvd25UaHJlYWRzIik7Ci0Jc3luYy5sb2NrKEV4 Y2x1c2l2ZSk7CisJU3luYyBsb2NrVGhyZWFkcygmc3luY1RocmVhZHMsICJDYWNoZTo6c2h1dGRv d25UaHJlYWRzIik7CisJbG9ja1RocmVhZHMubG9jayhFeGNsdXNpdmUpOwogfQogCisjaWZkZWYg Q0FDSEVfVFJBQ0VfRklMRQogdm9pZCBDYWNoZTo6YW5hbHl6ZUZsdXNoKHZvaWQpCiB7CiAJRGJi ICpkYmIgPSBOVUxMOwogCUJkYiAqYmRiOworCVN5bmMgZGlydHlMb2NrICgmc3luY0RpcnR5LCAi Q2FjaGU6Omhhc0RpcnR5UGFnZXMiKTsKIAkKKwlkaXJ0eUxvY2subG9jayAoU2hhcmVkKTsKIAlm b3IgKGJkYiA9IGZpcnN0RGlydHk7IGJkYjsgYmRiID0gYmRiLT5uZXh0RGlydHkpCiAJCWlmIChi ZGItPmRiYi0+dGFibGVTcGFjZUlkID09IDEpCiAJCQl7CkBAIC0xMDExLDYgKzExNjYsNyBAQCB2 b2lkIENhY2hlOjphbmFseXplRmx1c2godm9pZCkKIAkJCQogCQkJYnJlYWs7CiAJCQl9CisJZGly dHlMb2NrLnVubG9jaygpOwogCQogCWlmICghZGJiKQogCQlyZXR1cm47CkBAIC0xMDE4LDE2ICsx MTc0LDE5IEBAIHZvaWQgQ2FjaGU6OmFuYWx5emVGbHVzaCh2b2lkKQogCWZwcmludGYodHJhY2VG aWxlLCAiLS0tLS0tLS0gdGltZSAlZCAtLS0tLS0tXG4iLCBkYXRhYmFzZS0+ZGVsdGFUaW1lKTsK IAogCWZvciAoaW50IHBhZ2VOdW1iZXIgPSAwOyAocGFnZU51bWJlciA9IGZsdXNoQml0bWFwLT5u ZXh0U2V0KHBhZ2VOdW1iZXIpKSA+PSAwOykKKwkJLy8gbm9uLXByb3RlY3RlZCBhY2Nlc3MgdG8g aGFzaCB0YWJsZSB2aWEgZmluZEJkYigpIQogCQlpZiAoIChiZGIgPSBmaW5kQmRiKGRiYiwgcGFn ZU51bWJlcikpICkKIAkJCXsKIAkJCWludCBzdGFydCA9IHBhZ2VOdW1iZXI7CiAJCQlpbnQgdHlw ZSA9IGJkYi0+YnVmZmVyLT5wYWdlVHlwZTsKIAkJCQorCQkJLy8gbm9uLXByb3RlY3RlZCBhY2Nl c3MgdG8gaGFzaCB0YWJsZSB2aWEgZmluZEJkYigpIQogCQkJZm9yICg7IChiZGIgPSBmaW5kQmRi KGRiYiwgKytwYWdlTnVtYmVyKSkgJiYgYmRiLT5mbHVzaEl0OykKIAkJCQk7CiAJCQkKIAkJCWZw cmludGYodHJhY2VGaWxlLCAiICVkIGZsdXNoZWQ6ICVkIHRvICVkLCBmaXJzdCB0eXBlICVkXG4i LCBwYWdlTnVtYmVyIC0gc3RhcnQsIHN0YXJ0LCBwYWdlTnVtYmVyIC0gMSwgdHlwZSk7CiAJCQkK KwkJCS8vIG5vbi1wcm90ZWN0ZWQgYWNjZXNzIHRvIGhhc2ggdGFibGUgdmlhIGZpbmRCZGIoKSEK IAkJCWZvciAoaW50IG1heCA9IHBhZ2VOdW1iZXIgKyA1OyBwYWdlTnVtYmVyIDwgbWF4ICYmIChi ZGIgPSBmaW5kQmRiKGRiYiwgcGFnZU51bWJlcikpICYmICFiZGItPmZsdXNoSXQ7ICsrcGFnZU51 bWJlcikKIAkJCQl7CiAJCQkJaWYgKGJkYi0+aXNEaXJ0eSkKQEAgLTEwNDQsMjcgKzEyMDMsMzkg QEAgdm9pZCBDYWNoZTo6YW5hbHl6ZUZsdXNoKHZvaWQpCiAKIHZvaWQgQ2FjaGU6Om9wZW5UcmFj ZUZpbGUodm9pZCkKIHsKLSNpZmRlZiBUUkFDRV9GSUxFCiAJaWYgKHRyYWNlRmlsZSkKIAkJY2xv c2VUcmFjZUZpbGUoKTsKIAkJCi0JdHJhY2VGaWxlID0gZm9wZW4oVFJBQ0VfRklMRSwgInciKTsK LSNlbmRpZgorCXRyYWNlRmlsZSA9IGZvcGVuKFRSQUNFX0ZJTEUsICJhKyIpOworCWZwcmludGYo dHJhY2VGaWxlLCAiU3RhcnRpbmdcbiIpOworLy9LRUwKKy8vCXNldHZidWYodHJhY2VGaWxlLCAo Y2hhciAqKSBOVUxMLCBfSU9MQkYsIDApOworCiB9CiAKIHZvaWQgQ2FjaGU6OmNsb3NlVHJhY2VG aWxlKHZvaWQpCiB7Ci0jaWZkZWYgVFJBQ0VfRklMRQogCWlmICh0cmFjZUZpbGUpCiAJCXsKIAkJ ZmNsb3NlKHRyYWNlRmlsZSk7CiAJCXRyYWNlRmlsZSA9IE5VTEw7CiAJCX0KLSNlbmRpZgogfQor I2Vsc2UgLy8gQ0FDSEVfVFJBQ0VfRklMRQordm9pZCBDYWNoZTo6YW5hbHl6ZUZsdXNoKHZvaWQp Cit7Cit9Cit2b2lkIENhY2hlOjpvcGVuVHJhY2VGaWxlKHZvaWQpCit7Cit9Cit2b2lkIENhY2hl OjpjbG9zZVRyYWNlRmlsZSh2b2lkKQoreworfQorI2VuZGlmIC8vIENBQ0hFX1RSQUNFX0ZJTEUK IAogdm9pZCBDYWNoZTo6Zmx1c2hXYWl0KHZvaWQpCiB7Ci0JU3luYyBzeW5jKCZzeW5jV2FpdCwg IkNhY2hlOjpmbHVzaFdhaXQiKTsKLQlzeW5jLmxvY2soU2hhcmVkKTsKKwlTeW5jIHdhaXRMb2Nr KCZzeW5jV2FpdCwgIkNhY2hlOjpmbHVzaFdhaXQiKTsKKwl3YWl0TG9jay5sb2NrKEV4Y2x1c2l2 ZSk7CiB9CisKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2ZhbGNvbi9DYWNoZS5oJwotLS0g YS9zdG9yYWdlL2ZhbGNvbi9DYWNoZS5oCTIwMDgtMDgtMjIgMDY6NDc6NDAgKzAwMDAKKysrIGIv c3RvcmFnZS9mYWxjb24vQ2FjaGUuaAkyMDA4LTA5LTEwIDIxOjI0OjUwICswMDAwCkBAIC0yOCw2 ICsyOCwxNyBAQAogI2luY2x1ZGUgIlN5bmNPYmplY3QuaCIKICNpbmNsdWRlICJRdWV1ZS5oIgog CisvLyB1bmNvbW1lbnQgREVCVUdfU1lOQ19IQVNIX1RBQkxFX1NJWkUgdG8gY2F1c2UgbW9yZSBj b250ZW50aW9uIGFuZCB0ZXN0IGZvciByYWNlIGNvbmRpdGlvbnMKKy8vI2RlZmluZSBERUJVR19T WU5DX0hBU0hfVEFCTEVfU0laRSAoMHgwMSA8PCAxKQorI2lmZGVmIERFQlVHX1NZTkNfSEFTSF9U QUJMRV9TSVpFCisjICBkZWZpbmUgREVCVUdfU1lOQ19IQVNIX1RBQkxFX01BU0sgKERFQlVHX1NZ TkNfSEFTSF9UQUJMRV9TSVpFIC0gMSkKKyMgIGRlZmluZSBQQUdFTlVNXzJfTE9DS19JTkRFWChf cGdudW0sIF9zbG90KSAoKF9wZ251bSkgJiBERUJVR19TWU5DX0hBU0hfVEFCTEVfTUFTSykKKyNl bHNlIC8qIERFQlVHX1NZTkNfSEFTSF9UQUJMRV9TSVpFICovCisjICBkZWZpbmUgUEFHRU5VTV8y X0xPQ0tfSU5ERVgoX3BnbnVtLCBfc2xvdCkgKChfc2xvdCkpCisjZW5kaWYgLyogREVCVUdfU1lO Q19IQVNIX1RBQkxFX1NJWkUgKi8KKworI2RlZmluZSBQQUdFTlVNXzJfU0xPVChfcGdudW0pICgo X3BnbnVtKSAmIGhhc2hNYXNrKQorCiBjbGFzcyBCZGI7CiBjbGFzcyBEYmI7CiBjbGFzcyBQYWdl V3JpdGVyOwpAQCAtNTQsNyArNjUsNiBAQCBwdWJsaWM6CiAJdm9pZAltYXJrQ2xlYW4gKEJkYiAq YmRiKTsKIAl2b2lkCW1hcmtEaXJ0eSAoQmRiICpiZGIpOwogCXZvaWQJdmFsaWRhdGUoKTsKLQl2 b2lkCW1vdmVUb0hlYWQgKEJkYiAqYmRiKTsKIAl2b2lkCWZsdXNoKGludDY0IGFyZyk7CiAJdm9p ZAl2YWxpZGF0ZUNhY2hlKHZvaWQpOwogCXZvaWQJc3luY0ZpbGUoRGJiICpkYmIsIGNvbnN0IGNo YXIgKnRleHQpOwpAQCAtNzcsMjQgKzg3LDMwIEBAIHB1YmxpYzoKIAogCVN5bmNPYmplY3QJc3lu Y09iamVjdDsKIAlQYWdlV3JpdGVyCSpwYWdlV3JpdGVyOwotCURhdGFiYXNlCSpkYXRhYmFzZTsK KwlEYXRhYmFzZQkJKmRhdGFiYXNlOwogCWludAkJCW51bWJlckJ1ZmZlcnM7Ci0JYm9vbAkJcGFu aWNTaHV0ZG93bjsKLQlib29sCQlmbHVzaGluZzsKKwlib29sCQkJcGFuaWNTaHV0ZG93bjsKKwli b29sCQkJZmx1c2hpbmc7CiAKIHByb3RlY3RlZDoKLQlCZGIqCQlmaW5kQnVmZmVyIChEYmIgKmRi YiwgaW50IHBhZ2VOdW1iZXIsIExvY2tUeXBlIGxvY2tUeXBlKTsKKwl2b2lkCQltb3ZlVG9IZWFk IChCZGIgKmJkYik7CisJdm9pZAkJbW92ZVRvSGVhZEFscmVhZHlMb2NrZWQgKEJkYiAqYmRiKTsK KwlCZGIqCQlnZXRGcmVlQnVmZmVyKHZvaWQpOworCUJkYioJCWZpbmRCZGIoRGJiKiBkYmIsIGlu dDMyIHBhZ2VOdW1iZXIsIGludCBzbG90KTsKIAlCZGIqCQlmaW5kQmRiKERiYiogZGJiLCBpbnQz MiBwYWdlTnVtYmVyKTsKKwlCZGIqCQlsb2NrRmluZEJkYkluY3JlbWVudFVzZUNvdW50KERiYiog ZGJiLCBpbnQzMiBwYWdlTnVtYmVyKTsKKwlCZGIqCQlsb2NrRmluZEJkYkluY3JlbWVudFVzZUNv dW50KGludDMyIHBhZ2VOdW1iZXIsIGludCBzbG90KTsKIAotCWludDY0CQlmbHVzaEFyZzsKKwlp bnQ2NAkJCWZsdXNoQXJnOwogCUJkYgkJCSpiZGJzOwogCUJkYgkJCSplbmRCZGJzOwogCVF1ZXVl PEJkYj4JYnVmZmVyUXVldWU7CiAJQmRiCQkJKipoYXNoVGFibGU7CisJU3luY09iamVjdCAgKnN5 bmNIYXNoVGFibGU7CiAJQmRiCQkJKmZpcnN0RGlydHk7CiAJQmRiCQkJKmxhc3REaXJ0eTsKIAlC aXRtYXAJCSpmbHVzaEJpdG1hcDsKLQljaGFyCQkqKmJ1ZmZlckh1bmtzOworCWNoYXIJCQkqKmJ1 ZmZlckh1bmtzOwogCVRocmVhZAkJKippb1RocmVhZHM7CiAJU2VjdG9yQ2FjaGUJKnNlY3RvckNh Y2hlOwogCVN5bmNPYmplY3QJc3luY0ZsdXNoOwpAQCAtMTA1LDEyICsxMjEsMTMgQEAgcHJvdGVj dGVkOgogCWludAkJCWZsdXNoUGFnZXM7CiAJaW50CQkJcGh5c2ljYWxXcml0ZXM7CiAJaW50CQkJ aGFzaFNpemU7CisJdW5zaWduZWQgaW50CWhhc2hNYXNrOwogCWludAkJCXBhZ2VTaXplOwotCWlu dAkJCXVwcGVyRnJhY3Rpb247CisJdW5zaWduZWQgaW50IHVwcGVyRnJhY3Rpb247CiAJaW50CQkJ bnVtYmVySHVua3M7Ci0JaW50CQkJbnVtYmVyRGlydHlQYWdlczsKIAlpbnQJCQludW1iZXJJb1Ro cmVhZHM7Ci0Jdm9sYXRpbGUgaW50IGJ1ZmZlckFnZTsKKwl2b2xhdGlsZSB1aW50NjQgYnVmZmVy QWdlOworCiBwdWJsaWM6CiAJdm9pZCBmbHVzaFdhaXQodm9pZCk7CiB9OwoKPT09IG1vZGlmaWVk IGZpbGUgJ3N0b3JhZ2UvZmFsY29uL0NvbmZpZ3VyYXRpb24uY3BwJwotLS0gYS9zdG9yYWdlL2Zh bGNvbi9Db25maWd1cmF0aW9uLmNwcAkyMDA4LTA4LTI5IDIwOjQxOjEzICswMDAwCisrKyBiL3N0 b3JhZ2UvZmFsY29uL0NvbmZpZ3VyYXRpb24uY3BwCTIwMDgtMDktMDkgMjM6MTU6MTcgKzAwMDAK QEAgLTQyLDcgKzQyLDYgQEAKICNpbmNsdWRlICJTUUxFcnJvci5oIgogI2luY2x1ZGUgIkxvZy5o IgogI2luY2x1ZGUgIklPeC5oIgotI2luY2x1ZGUgIlNjYW5EaXIuaCIKIAogI2lmbmRlZiBVTEwK ICNkZWZpbmUgVUxMKGEpCQkoKHVpbnQ2NCkgYSkKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdl L2ZhbGNvbi9EYXRhYmFzZS5jcHAnCi0tLSBhL3N0b3JhZ2UvZmFsY29uL0RhdGFiYXNlLmNwcAky MDA4LTA5LTAzIDIxOjQ5OjE4ICswMDAwCisrKyBiL3N0b3JhZ2UvZmFsY29uL0RhdGFiYXNlLmNw cAkyMDA4LTA5LTEwIDIxOjM4OjAxICswMDAwCkBAIC02ODMsOSArNjgzLDcgQEAgdm9pZCBEYXRh YmFzZTo6Y3JlYXRlRGF0YWJhc2UoY29uc3QgY2hhcgogCQl9CiAJY2F0Y2ggKC4uLikKIAkJewot CQlkYmItPmNsb3NlRmlsZSgpOwotCQlkYmItPmRlbGV0ZUZpbGUoKTsKLQkJCisJCWRlbGV0ZUZp bGVzT25FeGl0ID0gdHJ1ZTsKIAkJdGhyb3c7CiAJCX0KIH0KQEAgLTcwOSwzNCArNzA3LDE4IEBA IHZvaWQgRGF0YWJhc2U6Om9wZW5EYXRhYmFzZShjb25zdCBjaGFyICoKIAkJCXsKIAkJCWlmIChk YmItPmxvZ0xlbmd0aCkKIAkJCQlzZXJpYWxMb2ctPmNvcHlDbG9uZShkYmItPmxvZ1Jvb3QsIGRi Yi0+bG9nT2Zmc2V0LCBkYmItPmxvZ0xlbmd0aCk7CisJCQlzZXJpYWxMb2ctPm9wZW4oZGJiLT5s b2dSb290LCBmYWxzZSk7CisJCQlpZiAoZGJiLT50YWJsZVNwYWNlU2VjdGlvbklkKQorCQkJCXRh YmxlU3BhY2VNYW5hZ2VyLT5ib290c3RyYXAoZGJiLT50YWJsZVNwYWNlU2VjdGlvbklkKTsKIAot CQkJdHJ5CisJCQl0cnkgCiAJCQkJewotCQkJCXNlcmlhbExvZy0+b3BlbihkYmItPmxvZ1Jvb3Qs IGZhbHNlKTsKKwkJCQlzZXJpYWxMb2ctPnJlY292ZXIoKTsKIAkJCQl9Ci0JCQljYXRjaCAoU1FM RXhjZXB0aW9uJikKKwkJCWNhdGNoKFNRTEVycm9yICZlKQogCQkJCXsKLQkJCQljb25zdCBjaGFy ICpwID0gc3RycmNocihmaWxlbmFtZSwgJy4nKTsKLQkJCQlKU3RyaW5nIGxvZ1Jvb3QgPSAocCkg PyBKU3RyaW5nKGZpbGVuYW1lLCAoaW50KSAocCAtIGZpbGVuYW1lKSkgOiBuYW1lOwotCQkJCWJv b2wgZmFpbGVkID0gdHJ1ZTsKLQkJCQkKLQkJCQl0cnkKLQkJCQkJewotCQkJCQlzZXJpYWxMb2ct Pm9wZW4obG9nUm9vdCwgZmFsc2UpOwotCQkJCQlmYWlsZWQgPSBmYWxzZTsKLQkJCQkJfQotCQkJ CWNhdGNoICguLi4pCi0JCQkJCXsKLQkJCQkJfQotCQkJCQotCQkJCWlmIChmYWlsZWQpCi0JCQkJ CXRocm93OworCQkJCXRocm93IFNRTEVycm9yKFJFQ09WRVJZX0VSUk9SLCAiUmVjb3ZlcnkgZmFp bGVkOiAlcyIsZS5nZXRUZXh0KCkpOwogCQkJCX0KLQkJCQotCQkJaWYgKGRiYi0+dGFibGVTcGFj ZVNlY3Rpb25JZCkKLQkJCQl0YWJsZVNwYWNlTWFuYWdlci0+Ym9vdHN0cmFwKGRiYi0+dGFibGVT cGFjZVNlY3Rpb25JZCk7Ci0KLQkJCXNlcmlhbExvZy0+cmVjb3ZlcigpOwogCQkJdGFibGVTcGFj ZU1hbmFnZXItPnBvc3RSZWNvdmVyeSgpOwogCQkJc2VyaWFsTG9nLT5zdGFydCgpOwogCQkJfQpA QCAtMTQ1OSw1MCArMTQ0MSw2MSBAQCB2b2lkIERhdGFiYXNlOjpkcm9wVGFibGUoVGFibGUgKnRh YmxlLCBUCiAKIHZvaWQgRGF0YWJhc2U6OnRydW5jYXRlVGFibGUoVGFibGUgKnRhYmxlLCBTZXF1 ZW5jZSAqc2VxdWVuY2UsIFRyYW5zYWN0aW9uICp0cmFuc2FjdGlvbikKIHsKLQlTeW5jIHN5bmNE REwoJnN5bmNTeXNEREwsICJEYXRhYmFzZTo6dHJ1bmNhdGVUYWJsZSgxKSIpOwotCXN5bmNEREwu bG9jayhFeGNsdXNpdmUpOwotCQotCXRhYmxlLT5jaGVja0Ryb3AoKTsKLQkKIAkvLyBDaGVjayBm b3IgcmVjb3JkcyBpbiBhY3RpdmUgdHJhbnNhY3Rpb25zCiAKIAlpZiAoaGFzVW5jb21taXR0ZWRS ZWNvcmRzKHRhYmxlLCB0cmFuc2FjdGlvbikpCiAJCXRocm93IFNRTEVycm9yKFVOQ09NTUlUVEVE X1VQREFURVMsICJ0YWJsZSAlcy4lcyBoYXMgdW5jb21taXR0ZWQgdXBkYXRlcyBhbmQgY2Fubm90 IGJlIHRydW5jYXRlZCIsCiAJCQkJCQl0YWJsZS0+c2NoZW1hTmFtZSwgdGFibGUtPm5hbWUpOwot CQkJCQkJICAgCi0JLy8gQmxvY2sgdGFibGUgZHJvcC9hZGQsIHRhYmxlIGxpc3Qgc2NhbnMgb2sK LQkKLQlTeW5jIHN5bmNUYmwoJnN5bmNUYWJsZXMsICJEYXRhYmFzZTo6dHJ1bmNhdGVUYWJsZSgy KSIpOwotCXN5bmNUYmwubG9jayhTaGFyZWQpOworCisJLy8gTG9jayBTeXN0ZW1EREwgZmlyc3Qu ICBUaGlzIGxvY2sgY2FuIGhhcHBlbiBtdWx0aXBsZSB0aW1lcyBpbiBtYW55IGNhbGwgc3RhY2tz LAorCS8vIGJvdGggYmVmb3JlIGFuZCBhZnRlciB0aGUgZm9sbG93aW5nIGxvY2tzLiAgU28gaXQg aXMgaW1wb3J0YW50IHRoYXQgd2UgZ2V0IGFuIAorCS8vIGV4Y2x1c2l2ZSBsb2NrIGZpcnN0Lgor CisJU3luYyBzeW5jRERMTG9jaygmc3luY1N5c0RETCwgIkRhdGFiYXNlOjp0cnVuY2F0ZVRhYmxl KFN5c0RETCkiKTsKKwlzeW5jRERMTG9jay5sb2NrKEV4Y2x1c2l2ZSk7CisJCisJLy8gTG9jayBz eW5jU2NhdmVuZ2UgYmVmb3JlIGxvY2tpbmcgc3luY1N5c0RETCwgc3luY1RhYmxlcywgb3IgdGFi bGUtPnN5bmNPYmplY3QuCisJLy8gVGhlIHNjYXZlbmdlciBsb2NrcyBzeW5jU2NhdmVuZ2UgIGFu ZCB0aGVuIHN5bmNUYWJsZXMKKwkvLyBJZiB3ZSBydW4gb3V0IG9mIHJlY29yZCBtZW1vcnksIGZv cmNlUmVjb3JkU2NhdmVuZ2Ugd2lsbCBldmVudHVhbGx5IGNhbGwgdGFibGUtPnN5bmNPYmplY3Qu CisKKwlTeW5jIHN5bmNTY2F2ZW5nZUxvY2soJnN5bmNTY2F2ZW5nZSwgIkRhdGFiYXNlOjp0cnVu Y2F0ZVRhYmxlKHNjYXZlbmdlKSIpOworCXN5bmNTY2F2ZW5nZUxvY2subG9jayhFeGNsdXNpdmUp OworCisJdGFibGUtPmNoZWNrRHJvcCgpOwogCQorCS8vIEJsb2NrIHRhYmxlIGRyb3AvYWRkLCB0 YWJsZSBsaXN0IHNjYW5zIG9rCisKKwlTeW5jIHN5bmNUYWJsZXNMb2NrKCZzeW5jVGFibGVzLCAi RGF0YWJhc2U6OnRydW5jYXRlVGFibGUodGFibGVzKSIpOworCXN5bmNUYWJsZXNMb2NrLmxvY2so U2hhcmVkKTsKKwogCS8vTG9jayBzZWN0aW9ucyAoZmFjdG9yZWQgb3V0IG9mIFNSTERyb3BUYWJs ZSB0byBhdm9pZCBhIGRlYWRsb2NrKQogCS8vVGhlIGxvY2sgb3JkZXIgKHNlcmlhbExvZy0+c3lu Y1NlY3Rpb25zIGJlZm9yZSB0YWJsZS0+c3luY09iamVjdCkgaXMgCiAJLy9pbXBvcnRhbnQKIAot CVN5bmMgc3luY1NlY3Rpb25zKCZzZXJpYWxMb2ctPnN5bmNTZWN0aW9ucywgIkRhdGFiYXNlOjp0 cnVuY2F0ZVRhYmxlKDMpIik7Ci0Jc3luY1NlY3Rpb25zLmxvY2soRXhjbHVzaXZlKTsKLQkKKwlT eW5jIHN5bmNTZWN0aW9uc0xvY2soJnNlcmlhbExvZy0+c3luY1NlY3Rpb25zLCAiRGF0YWJhc2U6 OnRydW5jYXRlVGFibGUoc2VjdGlvbnMpIik7CisJc3luY1NlY3Rpb25zTG9jay5sb2NrKEV4Y2x1 c2l2ZSk7CisKIAkvLyBObyB0YWJsZSBhY2Nlc3MgdW50aWwgdHJ1bmNhdGUgY29tcGxldGVzCi0J Ci0JU3luYyBzeW5jT2JqKCZ0YWJsZS0+c3luY09iamVjdCwgIkRhdGFiYXNlOjp0cnVuY2F0ZVRh YmxlKDQpIik7Ci0Jc3luY09iai5sb2NrKEV4Y2x1c2l2ZSk7Ci0JCisKKwlTeW5jIHN5bmNUYWJs ZUxvY2soJnRhYmxlLT5zeW5jT2JqZWN0LCAiRGF0YWJhc2U6OnRydW5jYXRlVGFibGUodGFibGUp Iik7CisJc3luY1RhYmxlTG9jay5sb2NrKEV4Y2x1c2l2ZSk7CisKIAl0YWJsZS0+ZGVsZXRpbmcg PSB0cnVlOwotCQorCiAJLy8gUHVyZ2UgcmVjb3JkcyBvdXQgb2YgY29tbWl0dGVkIHRyYW5zYWN0 aW9ucwotCQorCiAJdHJhbnNhY3Rpb25NYW5hZ2VyLT50cnVuY2F0ZVRhYmxlKHRhYmxlLCB0cmFu c2FjdGlvbik7Ci0JCisKIAlUcmFuc2FjdGlvbiAqc3lzVHJhbnNhY3Rpb24gPSBnZXRTeXN0ZW1U cmFuc2FjdGlvbigpOwotCQorCiAJLy8gUmVjcmVhdGUgZGF0YS9ibG9iIHNlY3Rpb25zIGFuZCBp bmRleGVzCi0JCisKIAl0YWJsZS0+dHJ1bmNhdGUoc3lzVHJhbnNhY3Rpb24pOwotCQorCiAJY29t bWl0U3lzdGVtVHJhbnNhY3Rpb24oKTsKLQkKKwogCS8vIERlbGV0ZSBhbmQgcmVjcmVhdGUgdGhl IHNlcXVlbmNlCi0JCisKIAlpZiAoc2VxdWVuY2UpCiAJCXNlcXVlbmNlID0gc2VxdWVuY2UtPnJl Y3JlYXRlKCk7CiB9Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9mYWxjb24vRGVmZXJyZWRJ bmRleC5jcHAnCi0tLSBhL3N0b3JhZ2UvZmFsY29uL0RlZmVycmVkSW5kZXguY3BwCTIwMDgtMDct MjUgMTg6MDc6MjQgKzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vRGVmZXJyZWRJbmRleC5jcHAJ MjAwOC0wOS0xMCAxOTo1MTowMyArMDAwMApAQCAtODQwLDcgKzg0MCw3IEBAIHZvaWQgRGVmZXJy ZWRJbmRleDo6ZGV0YWNoVHJhbnNhY3Rpb24odm8KIAllbHNlCiAJCXN5bmMudW5sb2NrKCk7CiAK LQlyZWxlYXNlUmVmKCk7CisJLy9yZWxlYXNlUmVmKCk7CiB9CiAKIHZvaWQgRGVmZXJyZWRJbmRl eDo6Y2hpbGwoRGJiICpkYmIpCkBAIC04ODQsOCArODg0LDExIEBAIHZvaWQgRGVmZXJyZWRJbmRl eDo6YWRkUmVmKCkKIAogdm9pZCBEZWZlcnJlZEluZGV4OjpyZWxlYXNlUmVmKCkKIHsKKwlBU1NF UlQodXNlQ291bnQgPiAwKTsKKwkKIAlJTlRFUkxPQ0tFRF9ERUNSRU1FTlQodXNlQ291bnQpOwog CiAJaWYgKHVzZUNvdW50ID09IDApCiAJCWRlbGV0ZSB0aGlzOwotfQpcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKK30KKwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29uL0RlZmVy cmVkSW5kZXhXYWxrZXIuY3BwJwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9EZWZlcnJlZEluZGV4V2Fs a2VyLmNwcAkyMDA4LTA1LTA3IDIyOjM3OjE4ICswMDAwCisrKyBiL3N0b3JhZ2UvZmFsY29uL0Rl ZmVycmVkSW5kZXhXYWxrZXIuY3BwCTIwMDgtMDktMTAgMTk6NTE6MDMgKzAwMDAKQEAgLTMxLDYg KzMxLDcgQEAgRGVmZXJyZWRJbmRleFdhbGtlcjo6RGVmZXJyZWRJbmRleFdhbGtlcgogdm9pZCBE ZWZlcnJlZEluZGV4V2Fsa2VyOjppbml0aWFsaXplKERlZmVycmVkSW5kZXggKmRlZmVycmVkSWR4 LCBJbmRleEtleSAqaW5kZXhLZXksIGludCBzZWFyY2hGbGFncykKIHsKIAlkZWZlcnJlZEluZGV4 ID0gZGVmZXJyZWRJZHg7CisJZGVmZXJyZWRJbmRleC0+YWRkUmVmKCk7CiAJY3VycmVudE5vZGUg PSBOVUxMOwogCURJQnVja2V0ICpidWNrZXQgPSAoRElCdWNrZXQqKSBkZWZlcnJlZEluZGV4LT5y b290OwogCW5vZGVQZW5kaW5nID0gdHJ1ZTsKQEAgLTk0LDYgKzk1LDggQEAgdm9pZCBEZWZlcnJl ZEluZGV4V2Fsa2VyOjppbml0aWFsaXplKERlZgogCiBEZWZlcnJlZEluZGV4V2Fsa2VyOjp+RGVm ZXJyZWRJbmRleFdhbGtlcih2b2lkKQogeworCWlmIChkZWZlcnJlZEluZGV4KQorCQlkZWZlcnJl ZEluZGV4LT5yZWxlYXNlUmVmKCk7CiB9CiAKIERJTm9kZSogRGVmZXJyZWRJbmRleFdhbGtlcjo6 bmV4dCh2b2lkKQoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29uL0Vycm9yLmNwcCcK LS0tIGEvc3RvcmFnZS9mYWxjb24vRXJyb3IuY3BwCTIwMDgtMDYtMTkgMTc6MjQ6MDkgKzAwMDAK KysrIGIvc3RvcmFnZS9mYWxjb24vRXJyb3IuY3BwCTIwMDgtMDktMDUgMDA6MzU6MTIgKzAwMDAK QEAgLTg5LDEwICs4OSw5IEBAIHZvaWQgRXJyb3I6OnZhbGlkYXRlSGVhcChjb25zdCBjaGFyICp3 aGUKIHZvaWQgRXJyb3I6OmRlYnVnQnJlYWsoKQogewogI2lmZGVmIF9XSU4zMgotCURlYnVnQnJl YWsoKTsKLSNlbHNlCi0JcmFpc2UgKFNJR0FCUlQpOworCV9fZGVidWdicmVhaygpOwogI2VuZGlm CisJcmFpc2UgKFNJR0FCUlQpOwogfQogCiB2b2lkIEVycm9yOjpub3RZZXRJbXBsZW1lbnRlZChj b25zdCBjaGFyICpmaWxlTmFtZSwgaW50IGxpbmUpCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFn ZS9mYWxjb24vSU8uY3BwJwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9JTy5jcHAJMjAwOC0wOC0yOSAy MDo0MToxMyArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9JTy5jcHAJMjAwOC0wOS0wNiAwNTox NDozOCArMDAwMApAQCAtMTE0LDYgKzExNCw4IEBAIHN0YXRpYyBpbnQgc2ltdWxhdGVEaXNrRnVs bCA9IFNJTVVMQVRFX0QKIAkKIHN0YXRpYyBGSUxFCSp0cmFjZUZpbGU7CiBzdGF0aWMgY2hhciBi YXNlRGlyW1BBVEhfTUFYKzFdPXswfTsKK2Jvb2wgZGVsZXRlRmlsZXNPbkV4aXQgPSBmYWxzZTsK K2Jvb2wgaW5DcmVhdGVEYXRhYmFzZSA9IGZhbHNlOwogCiAjaWZkZWYgX0RFQlVHCiAjdW5kZWYg VEhJU19GSUxFCkBAIC0xMzMsNiArMTM1LDcgQEAgSU86OklPKCkKIAlkYmIgPSBOVUxMOwogCWZv cmNlRnN5bmMgPSB0cnVlOwogCWZhdGFsRXJyb3IgPSBmYWxzZTsKKwljcmVhdGVkID0gZmFsc2U7 CiAJbWVtc2V0KHdyaXRlVHlwZXMsIDAsIHNpemVvZih3cml0ZVR5cGVzKSk7CiAJc3luY09iamVj dC5zZXROYW1lKCJJTzo6c3luY09iamVjdCIpOwogfQpAQCAtMTQxLDYgKzE0NCw4IEBAIElPOjp+ SU8oKQogewogCXRyYWNlQ2xvc2UoKTsKIAljbG9zZUZpbGUoKTsKKwlpZihjcmVhdGVkICYmIGRl bGV0ZUZpbGVzT25FeGl0KQorCQlkZWxldGVGaWxlKCk7CiB9CiAKIHN0YXRpYyBib29sIGlzQWJz b2x1dGVQYXRoKGNvbnN0IGNoYXIgKm5hbWUpCkBAIC0xNzgsMjYgKzE4MywyMSBAQCBzdGF0aWMg SlN0cmluZyBnZXRQYXRoKGNvbnN0IGNoYXIgKmZpbGVuCiAKIGJvb2wgSU86Om9wZW5GaWxlKGNv bnN0IGNoYXIgKiBuYW1lLCBib29sIHJlYWRPbmx5KQogeworCUFTU0VSVCghaW5DcmVhdGVEYXRh YmFzZSk7CisKIAlmaWxlTmFtZSA9IGdldFBhdGgobmFtZSk7Ci0JCi0JZm9yIChpbnQgYXR0ZW1w dCA9IDA7IGF0dGVtcHQgPCAzOyArK2F0dGVtcHQpCi0JCXsKLQkJZmlsZUlkID0gOjpvcGVuIChm aWxlTmFtZSwgKHJlYWRPbmx5KSA/IE9fUkRPTkxZIHwgT19CSU5BUlkgOiBnZXRXcml0ZU1vZGUo YXR0ZW1wdCkgfCBPX1JEV1IgfCBPX0JJTkFSWSk7Ci0JCQotCQlpZiAoZmlsZUlkID49IDApCi0J CQlicmVhazsKLQkJCi0JCWlmIChhdHRlbXB0ID09IDEpCi0JCQlmb3JjZUZzeW5jID0gdHJ1ZTsK LQkJfQorCWZpbGVJZCA9IDo6b3BlbiAoZmlsZU5hbWUsIChyZWFkT25seSkgPyAoT19SRE9OTFkg fCBPX0JJTkFSWSkgOiAoT19SRFdSIHwgT19CSU5BUlkpKTsKIAogCWlmIChmaWxlSWQgPCAwKQog CQl7CiAJCQlpbnQgc3FsRXJyb3IgPSAoZXJybm8gPT0gRUFDQ0VTICk/IEZJTEVfQUNDRVNTX0VS Uk9SIDpDT05ORUNUSU9OX0VSUk9SOwotCQkJdGhyb3cgU1FMRVhDRVBUSU9OIChzcWxFcnJvciwg ImNhbid0IG9wZW4gZmlsZSBcIiVzXCI6ICVzICglZCkiLCBuYW1lLCBzdHJlcnJvciAoZXJybm8p LCBlcnJubyk7CisJCQl0aHJvdyBTUUxFWENFUFRJT04gKHNxbEVycm9yLCAiY2FuJ3Qgb3BlbiBm aWxlIFwiJXNcIjogJXMgKCVkKSIsIAorCQkJCQkJCQlmaWxlTmFtZS5nZXRTdHJpbmcoKSwgc3Ry ZXJyb3IgKGVycm5vKSwgZXJybm8pOwogCQl9CiAKKwlzZXRXcml0ZUZsYWdzKGZpbGVJZCwgJmZv cmNlRnN5bmMpOwogCWlzUmVhZE9ubHkgPSByZWFkT25seTsKKwljcmVhdGVkID0gZmFsc2U7CiAJ CiAjaWZuZGVmIF9XSU4zMgogCXNpZ25hbCAoU0lHWEZTWiwgU0lHX0lHTik7CkBAIC0yMTksMjgg KzIxOSwzNyBAQCBib29sIElPOjpvcGVuRmlsZShjb25zdCBjaGFyICogbmFtZSwgYm9vCiAJcmV0 dXJuIGZpbGVJZCAhPSAtMTsKIH0KIAordm9pZCBJTzo6c2V0V3JpdGVGbGFncyhpbnQgZmlsZUlk LCBib29sICpmb3JjZUZzeW5jKQoreworI2lmbmRlZiBfV0lOMzIKKwlpbnQgZmxhZ3MgPSBmY250 bChmaWxlSWQsIEZfR0VURkwpOworCisJZm9yIChpbnQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAy OyBhdHRlbXB0KyspCisJCXsKKwkJaWYgKGZjbnRsKGZpbGVJZCwgRl9TRVRGTCwgZmxhZ3N8Z2V0 V3JpdGVNb2RlKGF0dGVtcHQpKSA9PSAwKQorCQkJYnJlYWs7CisJCWlmKGF0dGVtcHQgPT0gMSkK KwkJCSpmb3JjZUZzeW5jID0gdHJ1ZTsKKwkJfQorI2Vsc2UKKwkqZm9yY2VGc3luYyA9IHRydWU7 CisjZW5kaWYKK30KKwogYm9vbCBJTzo6Y3JlYXRlRmlsZShjb25zdCBjaGFyICpuYW1lKQogewog CUxvZzo6ZGVidWcoIklPOjpjcmVhdGVGaWxlOiBjcmVhdGluZyBmaWxlIFwiJXNcIlxuIiwgbmFt ZSk7CiAKIAlmaWxlTmFtZSA9IGdldFBhdGgobmFtZSk7Ci0JCi0JZm9yIChpbnQgYXR0ZW1wdCA9 IDA7IGF0dGVtcHQgPCAzOyArK2F0dGVtcHQpCi0JCXsKLQkJZmlsZUlkID0gOjpvcGVuIChmaWxl TmFtZSwKLQkJCQkJCWdldFdyaXRlTW9kZShhdHRlbXB0KSB8IE9fQ1JFQVQgfCBPX1JEV1IgfCBP X1JBTkRPTSB8IE9fVFJVTkMgfCBPX0JJTkFSWSwKKwlmaWxlSWQgPSA6Om9wZW4gKGZpbGVOYW1l LmdldFN0cmluZygpLE9fQ1JFQVQgfCBPX1JEV1IgfCBPX1JBTkRPTSB8IE9fRVhDTCB8IE9fQklO QVJZLAogCQkJCQkJU19JUkVBRCB8IFNfSVdSSVRFIHwgU19JUkdSUCB8IFNfSVdHUlApOwogCi0J CWlmIChmaWxlSWQgPj0gMCkKLQkJCWJyZWFrOwotCQkKLQkJaWYgKGF0dGVtcHQgPT0gMSkKLQkJ CWZvcmNlRnN5bmMgPSB0cnVlOwotCQl9CiAKIAlpZiAoZmlsZUlkIDwgMCkKLQkJdGhyb3cgU1FM RVhDRVBUSU9OIChDT05ORUNUSU9OX0VSUk9SLCJjYW4ndCBjcmVhdGUgZmlsZSBcIiVzXCIsICVz ICglZCkiLCBuYW1lLCBzdHJlcnJvciAoZXJybm8pLCBlcnJubyk7CisJCXRocm93IFNRTEVYQ0VQ VElPTiAoQ09OTkVDVElPTl9FUlJPUiwiY2FuJ3QgY3JlYXRlIGZpbGUgXCIlc1wiLCAlcyAoJWQp IiwgCisJCQlmaWxlTmFtZS5nZXRTdHJpbmcoKSwgc3RyZXJyb3IgKGVycm5vKSwgZXJybm8pOwog CisJc2V0V3JpdGVGbGFncyhmaWxlSWQsICZmb3JjZUZzeW5jKTsKIAlpc1JlYWRPbmx5ID0gZmFs c2U7CiAjaWZuZGVmIF9XSU4zMgogI2lmbmRlZiBfX05FVFdBUkVfXwpAQCAtMjUyLDcgKzI2MSw3 IEBAIGJvb2wgSU86OmNyZWF0ZUZpbGUoY29uc3QgY2hhciAqbmFtZSkKIAlmY250bChmaWxlSWQs IEZfU0VUTEssICZsb2NrKTsKICNlbmRpZgogI2VuZGlmCi0KKwljcmVhdGVkID0gdHJ1ZTsKIAly ZXR1cm4gZmlsZUlkICE9IC0xOwogfQogCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9mYWxj b24vSU94LmgnCi0tLSBhL3N0b3JhZ2UvZmFsY29uL0lPeC5oCTIwMDgtMDgtMjkgMjA6NDE6MTMg KzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vSU94LmgJMjAwOC0wOS0wNSAyMjozNjoxOSArMDAw MApAQCAtNjYsNiArNjYsNyBAQCBwdWJsaWM6CiAJdm9pZAlyZWFkUGFnZSAoQmRiICpwYWdlKTsK IAlib29sCWNyZWF0ZUZpbGUgKGNvbnN0IGNoYXIgKm5hbWUpOwogCXN0YXRpYwl2b2lkIHNldEJh c2VEaXJlY3RvcnkoY29uc3QgY2hhciAqcGF0aCk7CisJc3RhdGljCXZvaWQgc2V0V3JpdGVGbGFn cyhpbnQgZmlsZUlkLCBib29sICpmb3JjZUZzeW5jKTsKIAlib29sCW9wZW5GaWxlIChjb25zdCBj aGFyICpuYW1lLCBib29sIHJlYWRPbmx5KTsKIAl2b2lkCWxvbmdTZWVrKGludDY0IG9mZnNldCk7 CiAJdm9pZAlyZWFkKGludDY0IG9mZnNldCwgaW50IGxlbmd0aCwgVUNIQVIqIGJ1ZmZlcik7CkBA IC0xMDcsOSArMTA4LDExIEBAIHB1YmxpYzoKIAlib29sCQlmYXRhbEVycm9yOwogCWJvb2wJCWlz UmVhZE9ubHk7CiAJYm9vbAkJZm9yY2VGc3luYzsKKwlib29sCQljcmVhdGVkOwogCiAvL3ByaXZh dGU6CiAJRGJiCQkJKmRiYjsJCQkJCQkvLyB0aGlzIGlzIGEgY3JvY2sgYW5kIHNob3VsZCBiZSBw aGFzZWQgb3V0CiB9OwotCitleHRlcm4gYm9vbCBkZWxldGVGaWxlc09uRXhpdDsKK2V4dGVybiBi b29sIGluQ3JlYXRlRGF0YWJhc2U7CiAjZW5kaWYgLy8gIWRlZmluZWQoQUZYX0lPX0hfXzZBMDE5 QzE5X0EzNDBfMTFEMl9BQjVBXzAwMDBDMDFEMjMwMV9fSU5DTFVERURfKQoKPT09IG1vZGlmaWVk IGZpbGUgJ3N0b3JhZ2UvZmFsY29uL0luZGV4LmNwcCcKLS0tIGEvc3RvcmFnZS9mYWxjb24vSW5k ZXguY3BwCTIwMDgtMDgtMTkgMDM6MzM6MDEgKzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vSW5k ZXguY3BwCTIwMDgtMDktMTAgMjE6MjQ6NTAgKzAwMDAKQEAgLTEyMyw2ICsxMjMsNyBAQCBJbmRl eDo6fkluZGV4KCkKIAkJCXsKIAkJCUFTU0VSVChkZWZlcnJlZEluZGV4LT5pbmRleCA9PSB0aGlz KTsKIAkJCWRlZmVycmVkSW5kZXgtPmRldGFjaEluZGV4KCk7CisvLwkJCWRlZmVycmVkSW5kZXgt PnJlbGVhc2VSZWYoKTsKIAkJCX0KIAkJfQogCkBAIC0yNzcsNiArMjc4LDcgQEAgRGVmZXJyZWRJ bmRleCAqSW5kZXg6OmdldERlZmVycmVkSW5kZXgoVAogCWRlZmVycmVkSW5kZXggPSBuZXcgRGVm ZXJyZWRJbmRleCh0aGlzLCB0cmFuc2FjdGlvbik7CiAJc3luYy5sb2NrKEV4Y2x1c2l2ZSk7CiAJ ZGVmZXJyZWRJbmRleGVzLmFwcGVuZChkZWZlcnJlZEluZGV4KTsKKy8vCWRlZmVycmVkSW5kZXgt PmFkZFJlZigpOwogCXN5bmMudW5sb2NrKCk7CiAJdHJhbnNhY3Rpb24tPmFkZChkZWZlcnJlZElu ZGV4KTsKIApAQCAtODQzLDYgKzg0NSw3IEBAIHZvaWQgSW5kZXg6OmRldGFjaERlZmVycmVkSW5k ZXgoRGVmZXJyZWQKIAlTeW5jIHN5bmMoJmRlZmVycmVkSW5kZXhlcy5zeW5jT2JqZWN0LCAiSW5k ZXg6OmRldGFjaERlZmVycmVkSW5kZXgoMSkiKTsKIAlzeW5jLmxvY2soRXhjbHVzaXZlKTsKIAlk ZWZlcnJlZEluZGV4ZXMucmVtb3ZlKGRlZmVycmVkSW5kZXgpOworLy8JZGVmZXJyZWRJbmRleC0+ cmVsZWFzZVJlZigpOwogCXN5bmMudW5sb2NrKCk7CiAKIAlpZiAoICAgKGRhdGFiYXNlLT5jb25m aWd1cmF0aW9uLT51c2VEZWZlcnJlZEluZGV4SGFzaCkKCj09PSBtb2RpZmllZCBmaWxlICdzdG9y YWdlL2ZhbGNvbi9TUUxFeGNlcHRpb24uaCcKLS0tIGEvc3RvcmFnZS9mYWxjb24vU1FMRXhjZXB0 aW9uLmgJMjAwOC0wNC0yMiAwOToxOTowMyArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9TUUxF eGNlcHRpb24uaAkyMDA4LTA5LTA0IDEwOjQ5OjU3ICswMDAwCkBAIC02OSw3ICs2OSw4IEBAIGVu dW0gU3FsQ29kZSB7CiAJVEFCTEVTUEFDRV9OT1RfRVhJU1RfRVJST1IJPSAtMzUsCiAJREVWSUNF X0ZVTEwJCQkJCT0gLTM2LAogCUZJTEVfQUNDRVNTX0VSUk9SCQkJPSAtMzcsCi0JVEFCTEVTUEFD RV9EQVRBRklMRV9FWElTVF9FUlJPUgk9IC0zOAorCVRBQkxFU1BBQ0VfREFUQUZJTEVfRVhJU1Rf RVJST1IJPSAtMzgsCisJUkVDT1ZFUllfRVJST1IJCQkJPSAtMzkKIAl9OwogCiBjbGFzcyBEbGxF eHBvcnQgU1FMRXhjZXB0aW9uIHsKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2ZhbGNvbi9T ZXJpYWxMb2dGaWxlLmNwcCcKLS0tIGEvc3RvcmFnZS9mYWxjb24vU2VyaWFsTG9nRmlsZS5jcHAJ MjAwOC0wNy0xNSAxODo1NzoyNyArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9TZXJpYWxMb2dG aWxlLmNwcAkyMDA4LTA5LTEwIDIxOjI0OjUwICswMDAwCkBAIC03NiwxNiArNzYsMjIgQEAgU2Vy aWFsTG9nRmlsZTo6U2VyaWFsTG9nRmlsZShEYXRhYmFzZSAqZAogCWhpZ2hXYXRlciA9IDA7CiAJ d3JpdGVQb2ludCA9IDA7CiAJZm9yY2VGc3luYyA9IGZhbHNlOworCWNyZWF0ZWQgPSBmYWxzZTsK IAlzZWN0b3JTaXplID0gZGF0YWJhc2UtPnNlcmlhbExvZ0Jsb2NrU2l6ZTsKIH0KIAogU2VyaWFs TG9nRmlsZTo6flNlcmlhbExvZ0ZpbGUoKQogewogCWNsb3NlKCk7CisJaWYoY3JlYXRlZCAmJiBk ZWxldGVGaWxlc09uRXhpdCkKKwkJdW5saW5rKGZpbGVOYW1lKTsKIH0KIAogdm9pZCBTZXJpYWxM b2dGaWxlOjpvcGVuKEpTdHJpbmcgZmlsZW5hbWUsIGJvb2wgY3JlYXRlKQogeworCWlmKCFjcmVh dGUpCisJCUFTU0VSVCghaW5DcmVhdGVEYXRhYmFzZSk7CisKICNpZmRlZiBfV0lOMzIKIAloYW5k bGUgPSAwOwogCWNoYXIgcGF0aE5hbWVbMTAyNF07CkBAIC05Niw3ICsxMDIsNyBAQCB2b2lkIFNl cmlhbExvZ0ZpbGU6Om9wZW4oSlN0cmluZyBmaWxlbmFtCiAJCQkJCQlHRU5FUklDX1JFQUQgfCBH RU5FUklDX1dSSVRFLAogCQkJCQkJMCwJCQkJCQkJLy8gc2hhcmUgbW9kZQogCQkJCQkJTlVMTCwJ CQkJCQkvLyBzZWN1cml0eSBhdHRyaWJ1dGVzCi0JCQkJCQkoY3JlYXRlKSA/IENSRUFURV9BTFdB WVMgOiBPUEVOX0FMV0FZUywKKwkJCQkJCShjcmVhdGUpID8gQ1JFQVRFX05FVyA6IE9QRU5fRVhJ U1RJTkcsCiAJCQkJCQlGSUxFX0ZMQUdfTk9fQlVGRkVSSU5HIHwgRklMRV9GTEFHX1JBTkRPTV9B Q0NFU1MgfCBGSUxFX0ZMQUdfV1JJVEVfVEhST1VHSCwKIAkJCQkJCTApOwogCkBAIC0xMTksMjUg KzEyNSwxOSBAQCB2b2lkIFNlcmlhbExvZ0ZpbGU6Om9wZW4oSlN0cmluZyBmaWxlbmFtCiAKIAlz ZWN0b3JTaXplID0gTUFYKGJ5dGVzUGVyU2VjdG9yLCBkYXRhYmFzZS0+c2VyaWFsTG9nQmxvY2tT aXplKTsKICNlbHNlCisJCiAKLQlmb3IgKGludCBhdHRlbXB0ID0gMDsgYXR0ZW1wdCA8IDM7ICsr YXR0ZW1wdCkKLQkJewotCQlpZiAoY3JlYXRlKQotCQkJaGFuZGxlID0gOjpvcGVuKGZpbGVuYW1l LCAgSU86OmdldFdyaXRlTW9kZShhdHRlbXB0KSB8IE9fUkRXUiB8IE9fQklOQVJZIHwgT19DUkVB VCwgU19JUlVTUiB8IFNfSVdVU1IgfCBTX0lSR1JQIHwgU19JV0dSUCk7Ci0JCWVsc2UKLQkJCWhh bmRsZSA9IDo6b3BlbihmaWxlbmFtZSwgSU86OmdldFdyaXRlTW9kZShhdHRlbXB0KSB8IE9fUkRX UiB8IE9fQklOQVJZKTsKKwlpZiAoY3JlYXRlKQorCQloYW5kbGUgPSA6Om9wZW4oZmlsZW5hbWUs IE9fUkRXUiB8IE9fQklOQVJZIHwgT19DUkVBVCB8IE9fRVhDTCwgU19JUlVTUiB8IFNfSVdVU1Ig fCBTX0lSR1JQIHwgU19JV0dSUCk7CisJZWxzZQorCQloYW5kbGUgPSA6Om9wZW4oZmlsZW5hbWUs IE9fUkRXUiB8IE9fQklOQVJZKTsKIAotCQlpZiAoaGFuZGxlID4gMCkKLQkJCWJyZWFrOwotCQkK LQkJaWYgKGF0dGVtcHQgPT0gMSkKLQkJCWZvcmNlRnN5bmMgPSB0cnVlOwotCQl9CiAKIAlpZiAo aGFuZGxlIDw9IDApCQkKIAkJdGhyb3cgU1FMRVhDRVBUSU9OIChJT19FUlJPUiwgImNhbid0IG9w ZW4gZmlsZSBcIiVzXCI6ICVzICglZCkiLCAKIAkJCQkJCQkoY29uc3QgY2hhciopIGZpbGVuYW1l LCBzdHJlcnJvciAoZXJybm8pLCBlcnJubyk7CiAKKwlJTzo6c2V0V3JpdGVGbGFncyhoYW5kbGUs ICZmb3JjZUZzeW5jKTsKIAlmaWxlTmFtZSA9IGZpbGVuYW1lOwogCXN0cnVjdCBzdGF0IHN0YXRC dWZmZXI7CiAJZnN0YXQoaGFuZGxlLCAmc3RhdEJ1ZmZlcik7CkBAIC0xNDYsNyArMTQ2LDEwIEBA IHZvaWQgU2VyaWFsTG9nRmlsZTo6b3BlbihKU3RyaW5nIGZpbGVuYW0KICNlbmRpZgogCiAJaWYg KGNyZWF0ZSkKKwl7CisJCWNyZWF0ZWQgPSB0cnVlOwogCQl6YXAoKTsKKwl9CiB9CiAKIHZvaWQg U2VyaWFsTG9nRmlsZTo6Y2xvc2UoKQoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29u L1NlcmlhbExvZ0ZpbGUuaCcKLS0tIGEvc3RvcmFnZS9mYWxjb24vU2VyaWFsTG9nRmlsZS5oCTIw MDgtMDYtMjMgMTA6MjI6NDMgKzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vU2VyaWFsTG9nRmls ZS5oCTIwMDgtMDktMDQgMTA6NDk6NTcgKzAwMDAKQEAgLTUxLDYgKzUxLDcgQEAgcHVibGljOgog CU11dGV4CQlzeW5jT2JqZWN0OwogCURhdGFiYXNlCSpkYXRhYmFzZTsKIAlib29sCQlmb3JjZUZz eW5jOworCWJvb2wJCWNyZWF0ZWQ7CiAKICNpZmRlZiBfV0lOMzIKIAl2b2lkCSpoYW5kbGU7Cgo9 PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9mYWxjb24vU3RvcmFnZUhhbmRsZXIuY3BwJwotLS0g YS9zdG9yYWdlL2ZhbGNvbi9TdG9yYWdlSGFuZGxlci5jcHAJMjAwOC0wOS0wMyAyMjoxNzo1NCAr MDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9TdG9yYWdlSGFuZGxlci5jcHAJMjAwOC0wOS0wNSAy MjozNjoxOSArMDAwMApAQCAtODEsNyArODEsNyBAQCBzdGF0aWMgY29uc3QgY2hhciAqZmFsY29u U2NoZW1hIFtdID0gewogY2xhc3MgU2VydmVyOwogZXh0ZXJuIFNlcnZlcioJc3RhcnRTZXJ2ZXIo aW50IHBvcnQsIGNvbnN0IGNoYXIgKmNvbmZpZ0ZpbGUpOwogCi1zdGF0aWMgU3RvcmFnZUhhbmRs ZXIgKnN0b3JhZ2VIYW5kbGVyOworU3RvcmFnZUhhbmRsZXIgKnN0b3JhZ2VIYW5kbGVyOwogCiBz dGF0aWMgY2hhciBjaGFyVGFibGVbMjU2XTsKIHN0YXRpYyBpbnQgaW5pdCgpOwpAQCAtMTEzLDYg KzExMywxNCBAQCBTdG9yYWdlSGFuZGxlcioJZ2V0RmFsY29uU3RvcmFnZUhhbmRsZXIoCiAJcmV0 dXJuIHN0b3JhZ2VIYW5kbGVyOwogfQogCit2b2lkIGZyZWVGYWxjb25TdG9yYWdlSGFuZGxlcih2 b2lkKQoreworCWlmIChzdG9yYWdlSGFuZGxlcikKKwkJeworCQlkZWxldGUgc3RvcmFnZUhhbmRs ZXI7CisJCXN0b3JhZ2VIYW5kbGVyID0gMDsKKwkJfQorfQogdm9pZCBTdG9yYWdlSGFuZGxlcjo6 c2V0RGF0YURpcmVjdG9yeShjb25zdCBjaGFyICpkaXJlY3RvcnkpCiB7CiAJSU86OnNldEJhc2VE aXJlY3RvcnkoZGlyZWN0b3J5KTsKQEAgLTEzMSw2ICsxMzksOCBAQCBTdG9yYWdlSGFuZGxlcjo6 U3RvcmFnZUhhbmRsZXIoaW50IGxvY2tTCiAJc3luY09iamVjdC5zZXROYW1lKCJTdG9yYWdlSGFu ZGxlcjo6c3luY09iamVjdCIpOwogCWhhc2hTeW5jT2JqZWN0LnNldE5hbWUoIlN0b3JhZ2VIYW5k bGVyOjpoYXNoU3luY09iamVjdCIpOwogCWRpY3Rpb25hcnlTeW5jT2JqZWN0LnNldE5hbWUoIlN0 b3JhZ2VIYW5kbGVyOjpkaWN0aW9uYXJ5U3luY09iamVjdCIpOworCWluQ3JlYXRlRGF0YWJhc2U9 ZmFsc2U7CisJZGVsZXRlRmlsZXNPbkV4aXQ9ZmFsc2U7CiB9CiAKIFN0b3JhZ2VIYW5kbGVyOjp+ U3RvcmFnZUhhbmRsZXIodm9pZCkKQEAgLTE5MSw3ICsyMDEsNiBAQCB2b2lkIFN0b3JhZ2VIYW5k bGVyOjpzaHV0ZG93bkhhbmRsZXIodm9pCiAJY29ubmVjdGlvbi0+c2h1dGRvd24oKTsKIAljb25u ZWN0aW9uLT5jbG9zZSgpOwogCSoqKi8KLQlkZWxldGUgdGhpczsKIH0KIAogdm9pZCBTdG9yYWdl SGFuZGxlcjo6ZGF0YWJhc2VEcm9wcGVkKFN0b3JhZ2VEYXRhYmFzZSAqc3RvcmFnZURhdGFiYXNl LCBTdG9yYWdlQ29ubmVjdGlvbiogc3RvcmFnZUNvbm5lY3Rpb24pCkBAIC05OTAsMzIgKzk5OSw1 MSBAQCB2b2lkIFN0b3JhZ2VIYW5kbGVyOjppbml0aWFsaXplKHZvaWQpCiAJCX0KIAljYXRjaCAo U1FMRXhjZXB0aW9uICZlKQogCQl7Ci0JCS8vIE5vIHBvaW50IGluIGNyZWF0aW5nIGEgZGF0YWJh c2UgaWYgd2UgZ290IG1lbW9yeSBlcnJvci4KLQkJLy8gT24gRklMRV9BQ0NFU1NfRVJST1IsIGFu IGV4dGVybmFsIGFwcGxpY2F0aW9uIGNhbiB0ZW1wb3JhcmlseSBsb2NrIHRoZSBmaWxlLgotCQkv LyBJbiB0aGlzIGJvdGggY2FzZXMsIHRyeWluZyB0byBjcmVhdGUgZGF0YWJhc2UgaW4gdGhpcyBj YXNlIGNvdWxkIGV2ZW50dWFsbHkKLQkJLy8gbGVhZCB0byAicmVjcmVhdGUiIGFuZCBkYXRhIGxv c3MuCi0JCQogCQlpbnQgZXJyID0gZS5nZXRTcWxjb2RlKCk7Ci0JCQotCQlpZiAoZXJyID09IE9V VF9PRl9NRU1PUllfRVJST1IgfHwgZXJyID09IEZJTEVfQUNDRVNTX0VSUk9SIHx8IGVyciA9PSBW RVJTSU9OX0VSUk9SKQorCisJCS8vIElmIGdvdCBvbmUgb2YgZm9sbG93aW5nIGVycm9ycywganVz dCByZXRocm93LiBObyBwb2ludCBpbiAKKwkJLy8gdHJ5aW5nIHRvIGNyZWF0ZSBkYXRhYmFzZS4K KwkJaWYgKGVyciA9PSBPVVRfT0ZfTUVNT1JZX0VSUk9SIHx8IGVyciA9PSBGSUxFX0FDQ0VTU19F UlJPUiB8fAorCQkJZXJyID09IFZFUlNJT05fRVJST1IgfHwgZXJyID09IFJFQ09WRVJZX0VSUk9S KQogCQkJdGhyb3c7CiAKLQkJZGVmYXVsdERhdGFiYXNlLT5jcmVhdGVEYXRhYmFzZSgpOwotCQlJ Tzo6ZGVsZXRlRmlsZShGQUxDT05fVVNFUik7Ci0JCUlPOjpkZWxldGVGaWxlKEZBTENPTl9URU1Q T1JBUlkpOwotCQlkaWN0aW9uYXJ5Q29ubmVjdGlvbiA9IGRlZmF1bHREYXRhYmFzZS0+Z2V0T3Bl bkNvbm5lY3Rpb24oKTsKLQkJU3RhdGVtZW50ICpzdGF0ZW1lbnQgPSBkaWN0aW9uYXJ5Q29ubmVj dGlvbi0+Y3JlYXRlU3RhdGVtZW50KCk7Ci0JCUpTdHJpbmcgY3JlYXRlVGFibGVTcGFjZSA9IGdl bkNyZWF0ZVRhYmxlU3BhY2UoREVGQVVMVF9UQUJMRVNQQUNFLCBGQUxDT05fVVNFUik7Ci0JCXN0 YXRlbWVudC0+ZXhlY3V0ZVVwZGF0ZShjcmVhdGVUYWJsZVNwYWNlKTsKLQkJCQotCQlmb3IgKGNv bnN0IGNoYXIgKipkZGwgPSBmYWxjb25TY2hlbWE7ICpkZGw7ICsrZGRsKQotCQkJc3RhdGVtZW50 LT5leGVjdXRlVXBkYXRlKCpkZGwpOwotCQkKLQkJc3RhdGVtZW50LT5jbG9zZSgpOwotCQlkaWN0 aW9uYXJ5Q29ubmVjdGlvbi0+Y29tbWl0KCk7CisJCXRyeQorCQkJeworCQkJY3JlYXRlRGF0YWJh c2UoKTsKKwkJCX0KKwkJY2F0Y2goU1FMRXhjZXB0aW9uICZlMikKKwkJCXsKKwkJCWRlbGV0ZUZp bGVzT25FeGl0ID0gdHJ1ZTsgCS8vIENsZWFudXAgY3JlYXRlZCBmaWxlcworCisJCQl0aHJvdyBT UUxFcnJvcihlMi5nZXRTcWxjb2RlKCksCisJCQkJImNyZWF0ZSBkYXRhYmFzZSBmYWlsZWQgOiAl cyBcbiIgXAorCQkJCSJwcmlvciBvcGVuIGRhdGFiYXNlIGZhaWx1cmUgd2FzOiAlcyIsCisJCQkJ ZTIuZ2V0VGV4dCgpLGUuZ2V0VGV4dCgpKTsKKwkJCX0KKwkJY2F0Y2goLi4uKQorCQkJeworCQkJ ZGVsZXRlRmlsZXNPbkV4aXQgPSB0cnVlOworCQkJfQogCQl9CiB9CiAKK3ZvaWQgU3RvcmFnZUhh bmRsZXI6OmNyZWF0ZURhdGFiYXNlKHZvaWQpCit7CisJLy8gQ2hlY2sgYWxsIGZpbGVzIGFyZSBw cm9wZXJseSBvcGVuZWQgd2l0aCBPX0NSRUFUCisJaW5DcmVhdGVEYXRhYmFzZSA9IHRydWU7CisJ ZGVmYXVsdERhdGFiYXNlLT5jcmVhdGVEYXRhYmFzZSgpOworCWRpY3Rpb25hcnlDb25uZWN0aW9u ID0gZGVmYXVsdERhdGFiYXNlLT5nZXRPcGVuQ29ubmVjdGlvbigpOworCVN0YXRlbWVudCAqc3Rh dGVtZW50ID0gZGljdGlvbmFyeUNvbm5lY3Rpb24tPmNyZWF0ZVN0YXRlbWVudCgpOworCUpTdHJp bmcgY3JlYXRlVGFibGVTcGFjZSA9IGdlbkNyZWF0ZVRhYmxlU3BhY2UoREVGQVVMVF9UQUJMRVNQ QUNFLCBGQUxDT05fVVNFUik7CisJc3RhdGVtZW50LT5leGVjdXRlVXBkYXRlKGNyZWF0ZVRhYmxl U3BhY2UpOworCisJZm9yIChjb25zdCBjaGFyICoqZGRsID0gZmFsY29uU2NoZW1hOyAqZGRsOyAr K2RkbCkKKwkJc3RhdGVtZW50LT5leGVjdXRlVXBkYXRlKCpkZGwpOworCXN0YXRlbWVudC0+Y2xv c2UoKTsKKwlkaWN0aW9uYXJ5Q29ubmVjdGlvbi0+Y29tbWl0KCk7CisJaW5DcmVhdGVEYXRhYmFz ZSA9IGZhbHNlOworfQorCiB2b2lkIFN0b3JhZ2VIYW5kbGVyOjpkcm9wVGVtcFRhYmxlcyh2b2lk KQogewogCVN0YXRlbWVudCAqc3RhdGVtZW50ID0gZGljdGlvbmFyeUNvbm5lY3Rpb24tPmNyZWF0 ZVN0YXRlbWVudCgpOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29uL1N0b3JhZ2VI YW5kbGVyLmgnCi0tLSBhL3N0b3JhZ2UvZmFsY29uL1N0b3JhZ2VIYW5kbGVyLmgJMjAwOC0wOC0x NCAxMToyNDoxOCArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9TdG9yYWdlSGFuZGxlci5oCTIw MDgtMDktMDQgMTA6NDk6NTcgKzAwMDAKQEAgLTUzLDYgKzUzLDcgQEAgY2xhc3MgVEhEOwogZXh0 ZXJuICJDIiAKIHsKIFN0b3JhZ2VIYW5kbGVyKglnZXRGYWxjb25TdG9yYWdlSGFuZGxlcihpbnQg bG9ja1NpemUpOwordm9pZCBmcmVlRmFsY29uU3RvcmFnZUhhbmRsZXIodm9pZCk7CiB9CiAKIHN0 YXRpYyBjb25zdCBpbnQgZGF0YWJhc2VIYXNoU2l6ZSA9IDEwMTsKQEAgLTEyNiw2ICsxMjcsNyBA QCBwdWJsaWM6CiAJaW50CQkJCQljbG9zZUNvbm5lY3Rpb25zKFRIRCogdGhkKTsKIAlpbnQJCQkJ CWRyb3BEYXRhYmFzZShjb25zdCBjaGFyKiBwYXRoKTsKIAl2b2lkCQkJCWluaXRpYWxpemUodm9p ZCk7CisJdm9pZAkJCQljcmVhdGVEYXRhYmFzZSh2b2lkKTsKIAl2b2lkCQkJCWRyb3BUZW1wVGFi bGVzKHZvaWQpOwogCXZvaWQJCQkJY2xlYW5GaWxlTmFtZShjb25zdCBjaGFyKiBwYXRobmFtZSwg Y2hhciogZmlsZW5hbWUsIGludCBmaWxlbmFtZUxlbmd0aCk7CiAJSlN0cmluZwkJCQlnZW5DcmVh dGVUYWJsZVNwYWNlKGNvbnN0IGNoYXIqIHRhYmxlU3BhY2VOYW1lLCBjb25zdCBjaGFyKiBmaWxl bmFtZSwgY29uc3QgY2hhciogY29tbWVudCA9IE5VTEwpOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0 b3JhZ2UvZmFsY29uL1N0b3JhZ2VUYWJsZS5jcHAnCi0tLSBhL3N0b3JhZ2UvZmFsY29uL1N0b3Jh Z2VUYWJsZS5jcHAJMjAwOC0wOC0yMiAwNjo0Nzo0MCArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNv bi9TdG9yYWdlVGFibGUuY3BwCTIwMDgtMDktMDkgMjM6MTU6MTcgKzAwMDAKQEAgLTE5NSw3ICsx OTUsNyBAQCBpbnQgU3RvcmFnZVRhYmxlOjpzZXRDdXJyZW50SW5kZXgoaW50IGluCiAJCX0KIAkK IAlpZiAoIShjdXJyZW50SW5kZXggPSBzaGFyZS0+Z2V0SW5kZXgoaW5kZXhJZCkpKQoteworCQl7 CiAJCWNsZWFyQ3VycmVudEluZGV4KCk7CiAJCXJldHVybiBTdG9yYWdlRXJyb3JOb0luZGV4Owog CQl9Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9mYWxjb24vU3RvcmFnZVRhYmxlU2hhcmUu Y3BwJwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9TdG9yYWdlVGFibGVTaGFyZS5jcHAJMjAwOC0wOS0w MyAyMjoxNzo1NCArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9TdG9yYWdlVGFibGVTaGFyZS5j cHAJMjAwOC0wOS0xMCAwNDowMjowNyArMDAwMApAQCAtNjIsMTAgKzYyLDEwIEBAIFN0b3JhZ2VJ bmRleERlc2M6OlN0b3JhZ2VJbmRleERlc2MoKQogCXJhd05hbWVbMF0gPSAnXDAnOwogfTsKIAot U3RvcmFnZUluZGV4RGVzYzo6U3RvcmFnZUluZGV4RGVzYyhjb25zdCBTdG9yYWdlSW5kZXhEZXNj ICppbmRleEluZm8pCitTdG9yYWdlSW5kZXhEZXNjOjpTdG9yYWdlSW5kZXhEZXNjKGNvbnN0IFN0 b3JhZ2VJbmRleERlc2MgKmluZGV4RGVzYykKIHsKLQlpZiAoaW5kZXhJbmZvKQotCQkqdGhpcyA9 ICppbmRleEluZm87CisJaWYgKGluZGV4RGVzYykKKwkJKnRoaXMgPSAqaW5kZXhEZXNjOwogCWVs c2UKIAkJewogCQlpZCA9IDA7CkBAIC04Niw2ICs4NiwzNSBAQCBTdG9yYWdlSW5kZXhEZXNjOjp+ U3RvcmFnZUluZGV4RGVzYyh2b2lkCiB7CiB9CiAKK2Jvb2wgU3RvcmFnZUluZGV4RGVzYzo6b3Bl cmF0b3I9PShjb25zdCBTdG9yYWdlSW5kZXhEZXNjICZpbmRleERlc2MpIGNvbnN0Cit7CisJaWYg KCAhKGlkCQkJICA9PSBpbmRleERlc2MuaWQKKwkJJiYgdW5pcXVlCQkgID09IGluZGV4RGVzYy51 bmlxdWUKKwkJJiYgcHJpbWFyeUtleSAJICA9PSBpbmRleERlc2MucHJpbWFyeUtleQorCQkmJiBu dW1iZXJTZWdtZW50cyA9PSBpbmRleERlc2MubnVtYmVyU2VnbWVudHMpKQorCQlyZXR1cm4gZmFs c2U7CisKKwlpZiAoc3RyY21wKGluZGV4RGVzYy5uYW1lLCBuYW1lKSAhPSAwKQorCQlyZXR1cm4g ZmFsc2U7CisJCisJLyoqKgorCWNvbnN0IGNoYXIgKnEgPSBpbmRleERlc2MubmFtZTsKKwljb25z dCBjaGFyICpwID0gbmFtZTsKKwkKKwlmb3IgKDsgKCpwICYmICpxKTsgKytwLCArK3EpCisJCWlm ICgqcCAhPSAqcSkKKwkJCXJldHVybiBmYWxzZTsKKwkqKiovCisKKwlyZXR1cm4gdHJ1ZTsKK30K KworYm9vbCBTdG9yYWdlSW5kZXhEZXNjOjpvcGVyYXRvciE9KGNvbnN0IFN0b3JhZ2VJbmRleERl c2MgJmluZGV4RGVzYykgY29uc3QKK3sKKwlyZXR1cm4gISgqdGhpcyA9PSBpbmRleERlc2MpOwor fQorCisKIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8KIC8vIENvbnN0cnVjdGlvbi9EZXN0cnVjdGlvbgogLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLwpAQCAtMTAwLDggKzEyOSw4IEBAIFN0b3JhZ2VUYWJsZVNoYXJlOjpTdG9yYWdlVGFi bGVTaGFyZShTdG8KIAlmb3JtYXQgPSBOVUxMOwogCXN5bmNPYmplY3QgPSBuZXcgU3luY09iamVj dDsKIAlzeW5jT2JqZWN0LT5zZXROYW1lKCJTdG9yYWdlVGFibGVTaGFyZTo6c3luY09iamVjdCIp OwotCXN5bmNJbmRleGVzID0gbmV3IFN5bmNPYmplY3Q7Ci0Jc3luY0luZGV4ZXMtPnNldE5hbWUo IlN0b3JhZ2VUYWJsZVNoYXJlOjpzeW5jSW5kZXhlcyIpOworCXN5bmNJbmRleE1hcCA9IG5ldyBT eW5jT2JqZWN0OworCXN5bmNJbmRleE1hcC0+c2V0TmFtZSgiU3RvcmFnZVRhYmxlU2hhcmU6OnN5 bmNJbmRleE1hcCIpOwogCXNlcXVlbmNlID0gTlVMTDsKIAl0ZW1wVGFibGUgPSB0ZW1wVGJsOwog CXNldFBhdGgocGF0aCk7CkBAIC0xMTgsNyArMTQ3LDcgQEAgU3RvcmFnZVRhYmxlU2hhcmU6OlN0 b3JhZ2VUYWJsZVNoYXJlKFN0bwogU3RvcmFnZVRhYmxlU2hhcmU6On5TdG9yYWdlVGFibGVTaGFy ZSh2b2lkKQogewogCWRlbGV0ZSBzeW5jT2JqZWN0OwotCWRlbGV0ZSBzeW5jSW5kZXhlczsKKwlk ZWxldGUgc3luY0luZGV4TWFwOwogCWRlbGV0ZSBbXSBpbXB1cmU7CiAJCiAJaWYgKHN0b3JhZ2VE YXRhYmFzZSkKQEAgLTE0MywxMiArMTcyLDEyIEBAIHZvaWQgU3RvcmFnZVRhYmxlU2hhcmU6OnVu bG9jayh2b2lkKQogCiB2b2lkIFN0b3JhZ2VUYWJsZVNoYXJlOjpsb2NrSW5kZXhlcyhib29sIGV4 Y2x1c2l2ZUxvY2spCiB7Ci0Jc3luY0luZGV4ZXMtPmxvY2soTlVMTCwgKGV4Y2x1c2l2ZUxvY2sp ID8gRXhjbHVzaXZlIDogU2hhcmVkKTsKKwlzeW5jSW5kZXhNYXAtPmxvY2soTlVMTCwgKGV4Y2x1 c2l2ZUxvY2spID8gRXhjbHVzaXZlIDogU2hhcmVkKTsKIH0KIAogdm9pZCBTdG9yYWdlVGFibGVT aGFyZTo6dW5sb2NrSW5kZXhlcyh2b2lkKQogewotCXN5bmNJbmRleGVzLT51bmxvY2soKTsKKwlz eW5jSW5kZXhNYXAtPnVubG9jaygpOwogfQogCiBpbnQgU3RvcmFnZVRhYmxlU2hhcmU6Om9wZW4o dm9pZCkKQEAgLTI4NSwxMSArMzE0LDE3IEBAIGNvbnN0IGNoYXIqIFN0b3JhZ2VUYWJsZVNoYXJl OjpjbGVhbnVwVGEKIAlyZXR1cm4gYnVmZmVyOwogfQogCi1jaGFyKiBTdG9yYWdlVGFibGVTaGFy ZTo6Y3JlYXRlSW5kZXhOYW1lKGNvbnN0IGNoYXIgKnJhd05hbWUsIGNoYXIgKmluZGV4TmFtZSkK K2NoYXIqIFN0b3JhZ2VUYWJsZVNoYXJlOjpjcmVhdGVJbmRleE5hbWUoY29uc3QgY2hhciAqcmF3 TmFtZSwgY2hhciAqaW5kZXhOYW1lLCBib29sIHByaW1hcnkpCiB7Ci0JY2hhciBuYW1lQnVmZmVy W2luZGV4TmFtZVNpemVdOwotCWNsZWFudXBGaWVsZE5hbWUocmF3TmFtZSwgbmFtZUJ1ZmZlciwg c2l6ZW9mKG5hbWVCdWZmZXIpKTsKLQlzcHJpbnRmKGluZGV4TmFtZSwgIiVzJCVzIiwgbmFtZS5n ZXRTdHJpbmcoKSwgbmFtZUJ1ZmZlcik7CisJaWYgKHByaW1hcnkpCisJCXN0cmNweShpbmRleE5h bWUsIHRhYmxlLT5nZXRQcmltYXJ5S2V5TmFtZSgpLmdldFN0cmluZygpKTsKKwllbHNlCisJCXsK KwkJY2hhciBuYW1lQnVmZmVyW2luZGV4TmFtZVNpemVdOworCQljbGVhbnVwRmllbGROYW1lKHJh d05hbWUsIG5hbWVCdWZmZXIsIHNpemVvZihuYW1lQnVmZmVyKSk7CisJCXNwcmludGYoaW5kZXhO YW1lLCAiJXMkJXMiLCBuYW1lLmdldFN0cmluZygpLCBuYW1lQnVmZmVyKTsKKwkJfQorCQogCXJl dHVybiBpbmRleE5hbWU7CiB9CiAKQEAgLTMwMCw3ICszMzUsNyBAQCBpbnQgU3RvcmFnZVRhYmxl U2hhcmU6OmNyZWF0ZUluZGV4KFN0b3JhCiAKIAkvLyBMb2NrIG91dCBvdGhlciBjbGllbnRzIGJl Zm9yZSBsb2NraW5nIHRoZSB0YWJsZQogCQotCVN5bmMgc3luY0luZGV4KHN5bmNJbmRleGVzLCAi U3RvcmFnZVRhYmxlU2hhcmU6OmNyZWF0ZUluZGV4KDEpIik7CisJU3luYyBzeW5jSW5kZXgoc3lu Y0luZGV4TWFwLCAiU3RvcmFnZVRhYmxlU2hhcmU6OmNyZWF0ZUluZGV4KDEpIik7CiAJc3luY0lu ZGV4LmxvY2soRXhjbHVzaXZlKTsKIAkKIAlTeW5jIHN5bmNPYmooc3luY09iamVjdCwgIlN0b3Jh Z2VUYWJsZVNoYXJlOjpjcmVhdGVJbmRleCgyKSIpOwpAQCAtMzU0LDcgKzM4OSw3IEBAIGludCBT dG9yYWdlVGFibGVTaGFyZTo6ZHJvcEluZGV4KFN0b3JhZ2UKIAogCS8vIExvY2sgb3V0IG90aGVy IGNsaWVudHMgYmVmb3JlIGxvY2tpbmcgdGhlIHRhYmxlCiAKLQlTeW5jIHN5bmNJbmRleChzeW5j SW5kZXhlcywgIlN0b3JhZ2VUYWJsZVNoYXJlOjpkcm9wSW5kZXgoMSkiKTsKKwlTeW5jIHN5bmNJ bmRleChzeW5jSW5kZXhNYXAsICJTdG9yYWdlVGFibGVTaGFyZTo6ZHJvcEluZGV4KDEpIik7CiAJ c3luY0luZGV4LmxvY2soRXhjbHVzaXZlKTsKIAkKIAlTeW5jIHN5bmNPYmooc3luY09iamVjdCwg IlN0b3JhZ2VUYWJsZVNoYXJlOjpkcm9wSW5kZXgoMikiKTsKQEAgLTM2MiwxMiArMzk3LDM1IEBA IGludCBTdG9yYWdlVGFibGVTaGFyZTo6ZHJvcEluZGV4KFN0b3JhZ2UKIAkKIAlpbnQgcmV0ID0g c3RvcmFnZURhdGFiYXNlLT5kcm9wSW5kZXgoc3RvcmFnZUNvbm5lY3Rpb24sIHRhYmxlLCBzcWwp OwogCQotCWlmICghcmV0KQotCQlkZWxldGVJbmRleChpbmRleERlc2MtPmlkKTsKKwlkZWxldGVJ bmRleChpbmRleERlc2MtPmlkKTsKIAkJCQkKIAlyZXR1cm4gcmV0OwogfQogCitib29sIFN0b3Jh Z2VUYWJsZVNoYXJlOjp2YWxpZGF0ZUluZGV4KGludCBpbmRleElkLCBTdG9yYWdlSW5kZXhEZXNj ICppbmRleFRhcmdldCkKK3sKKwlTdG9yYWdlSW5kZXhEZXNjICppbmRleERlc2MgPSBnZXRJbmRl eChpbmRleElkKTsKKwkKKwlpZiAoIWluZGV4RGVzYyB8fCAqaW5kZXhEZXNjICE9ICppbmRleFRh cmdldCkKKwkJcmV0dXJuIGZhbHNlOworCQorCUluZGV4ICppbmRleCA9IHRhYmxlLT5maW5kSW5k ZXgoaW5kZXhEZXNjLT5uYW1lKTsKKwkKKwlpZiAoIWluZGV4KQorCQlyZXR1cm4gZmFsc2U7CisJ CisJaWYgKGluZGV4ICE9IGluZGV4RGVzYy0+aW5kZXgpCisJCXJldHVybiBmYWxzZTsKKwkKKwlp ZiAoaW5kZXhUYXJnZXQtPnByaW1hcnlLZXkgJiYgaW5kZXgtPnR5cGUgIT0gUHJpbWFyeUtleSkK KwkJcmV0dXJuIGZhbHNlOworCQkJCisJaWYgKGluZGV4LT5yZWNvcmRzUGVyU2VnbWVudCAhPSBp bmRleERlc2MtPnNlZ21lbnRSZWNvcmRDb3VudHMpCisJCXJldHVybiBmYWxzZTsKKwkKKwlyZXR1 cm4gdHJ1ZTsKK30KKwogdm9pZCBTdG9yYWdlVGFibGVTaGFyZTo6ZGVsZXRlSW5kZXhlcygpCiB7 CiAJZm9yIChTdG9yYWdlSW5kZXhEZXNjICppbmRleERlc2M7IChpbmRleERlc2MgPSBpbmRleGVz KTspCkBAIC0zNzcsNiArNDM1LDE2IEBAIHZvaWQgU3RvcmFnZVRhYmxlU2hhcmU6OmRlbGV0ZUlu ZGV4ZXMoKQogCQl9CiB9CiAKK2ludCBTdG9yYWdlVGFibGVTaGFyZTo6bnVtYmVySW5kZXhlcygp Cit7CisJaW50IGluZGV4Q291bnQgPSAwOworCQorCWZvciAoU3RvcmFnZUluZGV4RGVzYyAqaW5k ZXhEZXNjID0gaW5kZXhlczsgaW5kZXhEZXNjOyBpbmRleERlc2MgPSBpbmRleERlc2MtPm5leHQs IGluZGV4Q291bnQrKykKKwkJOworCQorCXJldHVybiBpbmRleENvdW50OworfQorCiBpbnQgU3Rv cmFnZVRhYmxlU2hhcmU6OnJlbmFtZVRhYmxlKFN0b3JhZ2VDb25uZWN0aW9uICpzdG9yYWdlQ29u bmVjdGlvbiwgY29uc3QgY2hhciogbmV3TmFtZSkKIHsKIAljaGFyIHRhYmxlTmFtZVsyNTZdOwpA QCAtNDAyLDI0ICs0NzAsMjUgQEAgaW50IFN0b3JhZ2VUYWJsZVNoYXJlOjpzZXRJbmRleChjb25z dCBTdAogCiAJaWYgKCFnZXRJbmRleChpbmRleEluZm8tPmlkKSkKIAkJewotCQlTdG9yYWdlSW5k ZXhEZXNjICppbmRleERlc2MgPSBuZXcgU3RvcmFnZUluZGV4RGVzYyhpbmRleEluZm8pOwotCQlh ZGRJbmRleChpbmRleERlc2MpOwogCi0JLy8gRmluZCB0aGUgY29ycmVzcG9uZGluZyBGYWxjb24g aW5kZXgKLQkKLQlpZiAoaW5kZXhEZXNjLT5wcmltYXJ5S2V5KQotCQlpbmRleERlc2MtPmluZGV4 ID0gdGFibGUtPnByaW1hcnlLZXk7Ci0JZWxzZQotCQl7Ci0JCWNoYXIgaW5kZXhOYW1lW2luZGV4 TmFtZVNpemVdOwotCQlzcHJpbnRmKGluZGV4TmFtZSwgIiVzJCVzIiwgbmFtZS5nZXRTdHJpbmco KSwgaW5kZXhEZXNjLT5uYW1lKTsKLQkJaW5kZXhEZXNjLT5pbmRleCA9IHRhYmxlLT5maW5kSW5k ZXgoaW5kZXhOYW1lKTsKLQkJfQorCQkvLyBGaW5kIHRoZSBjb3JyZXNwb25kaW5nIEZhbGNvbiBp bmRleCBlbHNlIGZhaWwKIAotCWlmIChpbmRleERlc2MtPmluZGV4KQotCQlpbmRleERlc2MtPnNl Z21lbnRSZWNvcmRDb3VudHMgPSBpbmRleERlc2MtPmluZGV4LT5yZWNvcmRzUGVyU2VnbWVudDsK LQllbHNlCi0JCXJldCA9IFN0b3JhZ2VFcnJvck5vSW5kZXg7CisJCUluZGV4ICppbmRleDsKKwkJ CisJCWlmIChpbmRleEluZm8tPnByaW1hcnlLZXkpCisJCQlpbmRleCA9IHRhYmxlLT5wcmltYXJ5 S2V5OworCQllbHNlCisJCQlpbmRleCA9IHRhYmxlLT5maW5kSW5kZXgoaW5kZXhJbmZvLT5uYW1l KTsKKwkJCisJCWlmIChpbmRleCkKKwkJCXsKKwkJCVN0b3JhZ2VJbmRleERlc2MgKmluZGV4RGVz YyA9IG5ldyBTdG9yYWdlSW5kZXhEZXNjKGluZGV4SW5mbyk7CisJCQlpbmRleERlc2MtPmluZGV4 ID0gaW5kZXg7CisJCQlpbmRleERlc2MtPnNlZ21lbnRSZWNvcmRDb3VudHMgPSBpbmRleERlc2Mt PmluZGV4LT5yZWNvcmRzUGVyU2VnbWVudDsKKwkJCWFkZEluZGV4KGluZGV4RGVzYyk7CisJCQl9 CisJCWVsc2UKKwkJCXJldCA9IFN0b3JhZ2VFcnJvck5vSW5kZXg7CiAJCX0KIAkJCiAJcmV0dXJu IHJldDsKQEAgLTQzMiw3ICs1MDEsMTAgQEAgU3RvcmFnZUluZGV4RGVzYyogU3RvcmFnZVRhYmxl U2hhcmU6OmdldAogCQkJCiAJZm9yIChTdG9yYWdlSW5kZXhEZXNjICppbmRleERlc2MgPSBpbmRl eGVzOyBpbmRleERlc2M7IGluZGV4RGVzYyA9IGluZGV4RGVzYy0+bmV4dCkKIAkJaWYgKGluZGV4 RGVzYy0+aWQgPT0gaW5kZXhJZCkKKwkJCXsKKwkJCUFTU0VSVChpbmRleERlc2MtPmluZGV4ICE9 IE5VTEwpOwogCQkJcmV0dXJuIGluZGV4RGVzYzsKKwkJCX0KIAkJCiAJcmV0dXJuIE5VTEw7CiB9 CkBAIC00NDIsNyArNTE0LDcgQEAgU3RvcmFnZUluZGV4RGVzYyogU3RvcmFnZVRhYmxlU2hhcmU6 OmdldAogCWlmICghaW5kZXhlcykKIAkJcmV0dXJuIE5VTEw7CiAJCi0JU3luYyBzeW5jKHN5bmNJ bmRleGVzLCAiU3RvcmFnZVRhYmxlU2hhcmU6OmdldEluZGV4Iik7CisJU3luYyBzeW5jKHN5bmNJ bmRleE1hcCwgIlN0b3JhZ2VUYWJsZVNoYXJlOjpnZXRJbmRleCIpOwogCXN5bmMubG9jayhTaGFy ZWQpOwogCQogCVN0b3JhZ2VJbmRleERlc2MgKmluZGV4ID0gZ2V0SW5kZXgoaW5kZXhJZCk7CkBA IC00NTMsMjEgKzUyNSw2IEBAIFN0b3JhZ2VJbmRleERlc2MqIFN0b3JhZ2VUYWJsZVNoYXJlOjpn ZXQKIAlyZXR1cm4gaW5kZXg7CiB9CiAKLVN0b3JhZ2VJbmRleERlc2MqIFN0b3JhZ2VUYWJsZVNo YXJlOjpnZXRJbmRleChjb25zdCBjaGFyICpuYW1lKQotewotCWlmICghaW5kZXhlcykKLQkJcmV0 dXJuIE5VTEw7Ci0JCi0JU3luYyBzeW5jKHN5bmNJbmRleGVzLCAiU3RvcmFnZVRhYmxlU2hhcmU6 OmdldEluZGV4KG5hbWUpIik7Ci0Jc3luYy5sb2NrKFNoYXJlZCk7Ci0JCi0JZm9yIChTdG9yYWdl SW5kZXhEZXNjICppbmRleERlc2MgPSBpbmRleGVzOyBpbmRleERlc2M7IGluZGV4RGVzYyA9IGlu ZGV4RGVzYy0+bmV4dCkKLQkJaWYgKGluZGV4RGVzYy0+bmFtZSA9PSBuYW1lKQotCQkJcmV0dXJu IGluZGV4RGVzYzsKLQkJCQotCXJldHVybiBOVUxMOwotfQotCiBpbnQgU3RvcmFnZVRhYmxlU2hh cmU6OmdldEluZGV4SWQoY29uc3QgY2hhciogc2NoZW1hTmFtZSwgY29uc3QgY2hhciogaW5kZXhO YW1lKQogewogCWlmICghaW5kZXhlcykKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2ZhbGNv bi9TdG9yYWdlVGFibGVTaGFyZS5oJwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9TdG9yYWdlVGFibGVT aGFyZS5oCTIwMDgtMDgtMjIgMDY6NDc6NDAgKzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vU3Rv cmFnZVRhYmxlU2hhcmUuaAkyMDA4LTA5LTEwIDA0OjAyOjA3ICswMDAwCkBAIC01Myw4ICs1Mywx MCBAQCBjbGFzcyBTdG9yYWdlSW5kZXhEZXNjCiB7CiBwdWJsaWM6CiAJU3RvcmFnZUluZGV4RGVz YygpOwotCVN0b3JhZ2VJbmRleERlc2MoY29uc3QgU3RvcmFnZUluZGV4RGVzYyAqaW5kZXhJbmZv KTsKKwlTdG9yYWdlSW5kZXhEZXNjKGNvbnN0IFN0b3JhZ2VJbmRleERlc2MgKmluZGV4RGVzYyk7 CiAJdmlydHVhbCB+U3RvcmFnZUluZGV4RGVzYyh2b2lkKTsKKwlib29sIG9wZXJhdG9yPT0oY29u c3QgU3RvcmFnZUluZGV4RGVzYyAmaW5kZXhEZXNjKSBjb25zdDsKKwlib29sIG9wZXJhdG9yIT0o Y29uc3QgU3RvcmFnZUluZGV4RGVzYyAmaW5kZXhEZXNjKSBjb25zdDsKIAkKIAlpbnQJCQlpZDsK IAlpbnQJCQl1bmlxdWU7CkBAIC0xMTMsNyArMTE1LDkgQEAgcHVibGljOgogCXZpcnR1YWwgdm9p ZAkJdW5sb2NrSW5kZXhlcyh2b2lkKTsKIAl2aXJ0dWFsIGludAkJCWNyZWF0ZUluZGV4KFN0b3Jh Z2VDb25uZWN0aW9uICpzdG9yYWdlQ29ubmVjdGlvbiwgU3RvcmFnZUluZGV4RGVzYyAqaW5kZXhE ZXNjLCBjb25zdCBjaGFyICpzcWwpOwogCXZpcnR1YWwgaW50CQkJZHJvcEluZGV4KFN0b3JhZ2VD b25uZWN0aW9uICpzdG9yYWdlQ29ubmVjdGlvbiwgU3RvcmFnZUluZGV4RGVzYyAqaW5kZXhEZXNj LCBjb25zdCBjaGFyICpzcWwpOworCXZpcnR1YWwgYm9vbAkJdmFsaWRhdGVJbmRleChpbnQgaW5k ZXhJZCwgU3RvcmFnZUluZGV4RGVzYyAqaW5kZXhUYXJnZXQpOwogCXZpcnR1YWwgdm9pZAkJZGVs ZXRlSW5kZXhlcygpOworCXZpcnR1YWwgaW50CQkJbnVtYmVySW5kZXhlcygpOwogCXZpcnR1YWwg aW50CQkJcmVuYW1lVGFibGUoU3RvcmFnZUNvbm5lY3Rpb24gKnN0b3JhZ2VDb25uZWN0aW9uLCBj b25zdCBjaGFyKiBuZXdOYW1lKTsKIAl2aXJ0dWFsIElOVDY0CQlnZXRTZXF1ZW5jZVZhbHVlKGlu dCBkZWx0YSk7CiAJdmlydHVhbCBpbnQJCQlzZXRTZXF1ZW5jZVZhbHVlKElOVDY0IHZhbHVlKTsK QEAgLTEyOSw3ICsxMzMsNiBAQCBwdWJsaWM6CiAJdm9pZAkJCQljbGVhckluZGV4KFN0b3JhZ2VJ bmRleERlc2MgKmluZGV4RGVzYyk7CiAJU3RvcmFnZUluZGV4RGVzYyoJZ2V0SW5kZXgoaW50IGlu ZGV4SWQpOwogCVN0b3JhZ2VJbmRleERlc2MqCWdldEluZGV4KGludCBpbmRleElkLCBTdG9yYWdl SW5kZXhEZXNjICppbmRleERlc2MpOwotCVN0b3JhZ2VJbmRleERlc2MqCWdldEluZGV4KGNvbnN0 IGNoYXIgKm5hbWUpOwogCWludAkJCQkJZ2V0SW5kZXhJZChjb25zdCBjaGFyKiBzY2hlbWFOYW1l LCBjb25zdCBjaGFyKiBpbmRleE5hbWUpOwogCWludAkJCQkJY3JlYXRlKFN0b3JhZ2VDb25uZWN0 aW9uICpzdG9yYWdlQ29ubmVjdGlvbiwgY29uc3QgY2hhciogc3FsLCBpbnQ2NCBhdXRvSW5jcmVt ZW50VmFsdWUpOwogCWludAkJCQkJdXBncmFkZShTdG9yYWdlQ29ubmVjdGlvbiAqc3RvcmFnZUNv bm5lY3Rpb24sIGNvbnN0IGNoYXIqIHNxbCwgaW50NjQgYXV0b0luY3JlbWVudFZhbHVlKTsKQEAg LTE0OCw3ICsxNTEsNyBAQCBwdWJsaWM6CiAKIAlzdGF0aWMgY29uc3QgY2hhcioJZ2V0RGVmYXVs dFJvb3Qodm9pZCk7CiAJc3RhdGljIGNvbnN0IGNoYXIqCWNsZWFudXBUYWJsZU5hbWUoY29uc3Qg Y2hhciogbmFtZSwgY2hhciogYnVmZmVyLCBpbnQgYnVmZmVyTGVuZ3RoLCBjaGFyICpzY2hlbWEs IGludCBzY2hlbWFMZW5ndGgpOwotCWNoYXIqCQkJCWNyZWF0ZUluZGV4TmFtZShjb25zdCBjaGFy ICpyYXdOYW1lLCBjaGFyICppbmRleE5hbWUpOworCWNoYXIqCQkJCWNyZWF0ZUluZGV4TmFtZShj b25zdCBjaGFyICpyYXdOYW1lLCBjaGFyICppbmRleE5hbWUsIGJvb2wgcHJpbWFyeSA9IGZhbHNl KTsKIAkKIAlKU3RyaW5nCQkJCW5hbWU7CiAJSlN0cmluZwkJCQlzY2hlbWFOYW1lOwpAQCAtMTYw LDcgKzE2Myw3IEBAIHB1YmxpYzoKIAl1bnNpZ25lZCBjaGFyCQkqaW1wdXJlOwogCWludAkJCQkJ aW5pdGlhbGl6ZWQ7CiAJU3luY09iamVjdAkJCSpzeW5jT2JqZWN0OwotCVN5bmNPYmplY3QJCQkq c3luY0luZGV4ZXM7CisJU3luY09iamVjdAkJCSpzeW5jSW5kZXhNYXA7CiAJU3RvcmFnZURhdGFi YXNlCQkqc3RvcmFnZURhdGFiYXNlOwogCVN0b3JhZ2VIYW5kbGVyCQkqc3RvcmFnZUhhbmRsZXI7 CiAJVGFibGUJCQkJKnRhYmxlOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29uL1N5 bmNIYW5kbGVyLmNwcCcKLS0tIGEvc3RvcmFnZS9mYWxjb24vU3luY0hhbmRsZXIuY3BwCTIwMDgt MDktMDMgMjE6NDk6MTggKzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vU3luY0hhbmRsZXIuY3Bw CTIwMDgtMDktMTAgMjE6MzA6MDggKzAwMDAKQEAgLTE0Myw3ICsxNDMsNyBAQCBTeW5jSGFuZGxl cjo6flN5bmNIYW5kbGVyKHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBTeW5jSGFuZGxlcjo6YWRk TG9jayhTeW5jT2JqZWN0ICpzeW5jT2JqLCBjb25zdCBjaGFyKiBsb2NhdGlvbk5hbWUpCit2b2lk IFN5bmNIYW5kbGVyOjphZGRMb2NrKFN5bmNPYmplY3QgKnN5bmNPYmosIGNvbnN0IGNoYXIqIGxv Y2F0aW9uTmFtZSwgTG9ja1R5cGUgdHlwZSkKIHsKICNpZmRlZiBVU0VfRkFMQ09OX1NZTkNfSEFO RExFUgogCWlmIChzeW5jT2JqID09ICZzeW5jT2JqZWN0KQpAQCAtMTU4LDcgKzE1OCw3IEBAIHZv aWQgU3luY0hhbmRsZXI6OmFkZExvY2soU3luY09iamVjdCAqc3kKIAogCVN5bmNUaHJlYWRJbmZv ICp0aGQgPSBhZGRUaHJlYWQodGhyZWFkLT50aHJlYWRJZCk7CiAJU3luY09iamVjdEluZm8gKnNv aSA9IGFkZFN5bmNPYmplY3Qoc3luY09iai0+Z2V0TmFtZSgpKTsKLQlTeW5jTG9jYXRpb25JbmZv ICpsb2MgPSBhZGRMb2NhdGlvbihsb2NhdGlvbk5hbWUsIHNvaSk7CisJU3luY0xvY2F0aW9uSW5m byAqbG9jID0gYWRkTG9jYXRpb24obG9jYXRpb25OYW1lLCBzb2ksIHR5cGUpOwogCiAJYWRkVG9U aHJlYWQodGhkLCBsb2MpOwogI2VuZGlmCkBAIC0yOTcsMjkgKzI5NywzMCBAQCB2b2lkIFN5bmNI YW5kbGVyOjpzaG93U3luY09iamVjdHModm9pZCkKIAkJCUxvZzo6ZGVidWcoIiAgJXNcbiIsIHNv aS0+bmFtZSk7CiB9CiAKLVN5bmNMb2NhdGlvbkluZm8gKlN5bmNIYW5kbGVyOjpmaW5kTG9jYXRp b24oY29uc3QgY2hhciogbG9jYXRpb25OYW1lLCBpbnQgc2xvdCkKK1N5bmNMb2NhdGlvbkluZm8g KlN5bmNIYW5kbGVyOjpmaW5kTG9jYXRpb24oY29uc3QgY2hhciogbG9jYXRpb25OYW1lLCBMb2Nr VHlwZSB0eXBlLCBpbnQgc2xvdCkKIHsKIAlmb3IgKFN5bmNMb2NhdGlvbkluZm8gKmxvYyA9IGxv Y2F0aW9uc1tzbG90XTsgbG9jOyBsb2MgPSBsb2MtPmNvbGxpc2lvbikKIAkJewotCQlpZiAobG9j LT5uYW1lID09IGxvY2F0aW9uTmFtZSkKKwkJaWYgKChsb2MtPm5hbWUgPT0gbG9jYXRpb25OYW1l KSAmJiAobG9jLT50eXBlID09IHR5cGUpKQogCQkJcmV0dXJuIGxvYzsKIAkJfQogCiAJcmV0dXJu IE5VTEw7CiB9Ci1TeW5jTG9jYXRpb25JbmZvICpTeW5jSGFuZGxlcjo6YWRkTG9jYXRpb24oY29u c3QgY2hhciogbG9jYXRpb25OYW1lLCBTeW5jT2JqZWN0SW5mbyAqc29pKQorU3luY0xvY2F0aW9u SW5mbyAqU3luY0hhbmRsZXI6OmFkZExvY2F0aW9uKGNvbnN0IGNoYXIqIGxvY2F0aW9uTmFtZSwg U3luY09iamVjdEluZm8gKnNvaSwgTG9ja1R5cGUgdHlwZSkKIHsKIAlBU1NFUlQobG9jYXRpb25O YW1lICE9IE5VTEwpOwogCUFTU0VSVChzdHJsZW4obG9jYXRpb25OYW1lKSAhPSAwKTsKIAogCWlu dCBzbG90ID0gSlN0cmluZzo6aGFzaChsb2NhdGlvbk5hbWUsIGxvY2F0aW9uSGFzaFNpemUpOwot CVN5bmNMb2NhdGlvbkluZm8gKmxvYyA9IGZpbmRMb2NhdGlvbihsb2NhdGlvbk5hbWUsIHNsb3Qp OworCVN5bmNMb2NhdGlvbkluZm8gKmxvYyA9IGZpbmRMb2NhdGlvbihsb2NhdGlvbk5hbWUsIHR5 cGUsIHNsb3QpOwogCiAJaWYgKCFsb2MpCiAJCXsKIAkJbG9jID0gbmV3IFN5bmNMb2NhdGlvbklu Zm87CiAJCWxvYy0+bmFtZSA9IGxvY2F0aW9uTmFtZTsKIAkJbG9jLT5zb2kgPSBzb2k7CisJCWxv Yy0+dHlwZSA9IHR5cGU7CiAJCWxvYy0+Y29sbGlzaW9uID0gbG9jYXRpb25zW3Nsb3RdOwogCQls b2NhdGlvbnNbc2xvdF0gPSBsb2M7CiAJCWlmICgoKytsb2NhdGlvbkNvdW50ICUgMTAwKSA9PSAw KQpAQCAtMzM5LDEwICszNDAsOSBAQCB2b2lkIFN5bmNIYW5kbGVyOjpzaG93TG9jYXRpb25zKHZv aWQpCiAKIAlmb3IgKGludCBzbG90ID0gMDsgc2xvdCA8IGxvY2F0aW9uSGFzaFNpemU7IHNsb3Qr KykKIAkJZm9yIChTeW5jTG9jYXRpb25JbmZvICpsb2MgPSBsb2NhdGlvbnNbc2xvdF07IGxvYzsg bG9jID0gbG9jLT5jb2xsaXNpb24pCi0JCQlMb2c6OmRlYnVnKCIgICVzXHQlc1xuIiwgbG9jLT5u YW1lLCBsb2MtPnNvaS0+bmFtZSk7CisJCQlMb2c6OmRlYnVnKCIgICVzXHQlc1x0JXNcbiIsIGxv Yy0+bmFtZSwgbG9jLT5zb2ktPm5hbWUsIChsb2MtPnR5cGUgPT0gRXhjbHVzaXZlID8gIkV4Y2x1 c2l2ZSIgOiAiU2hhcmVkIikpOwogfQogCi0KIHZvaWQgU3luY0hhbmRsZXI6OmFkZFRvVGhyZWFk KFN5bmNUaHJlYWRJbmZvKiB0aGQsIFN5bmNMb2NhdGlvbkluZm8gKmxvYykKIHsKIAkvLyBCZSBz dXJlIHRoaXMgc29pIGlzIG9ubHkgcmVjb3JkZWQgb25jZS4KQEAgLTQ4MCwxNCArNDgwLDE2IEBA IHZvaWQgU3luY0hhbmRsZXI6OnNob3dMb2NhdGlvblN0YWNrcyh2b2kKIAkJCWludCBzdGFja0hl aWdodCA9IDA7CiAJCQlzdGFja0NvdW50Kys7CiAJCQlmb3IgKGludCBuID0gMDsgbiA8IGxzaS0+ aGVpZ2h0IC0gMTsgbisrKQotCQkJCUxvZzo6ZGVidWcoIiAgJTRkLSUwM2Q7ICVzICglcykgLT5c biIsIAorCQkJCUxvZzo6ZGVidWcoIiAgJTRkLSUwM2Q7ICVzICglcykgLSAlcyAtPlxuIiwgCiAJ CQkJICAgICAgICAgICBzdGFja0NvdW50LCArK3N0YWNrSGVpZ2h0LCAKLQkJCQkgICAgICAgICAg IGxzaS0+bG9jW25dLT5uYW1lLCBsc2ktPmxvY1tuXS0+c29pLT5uYW1lKTsKKwkJCQkgICAgICAg ICAgIGxzaS0+bG9jW25dLT5uYW1lLCBsc2ktPmxvY1tuXS0+c29pLT5uYW1lLAorCQkJCQkJICAg KGxzaS0+bG9jW25dLT50eXBlID09IEV4Y2x1c2l2ZSA/ICJFeGNsdXNpdmUiIDogIlNoYXJlZCIp KTsKIAotCQkJTG9nOjpkZWJ1ZygiICAlNGQtJTAzZDsgJXMgKCVzKVxuXG4iLCAKKwkJCUxvZzo6 ZGVidWcoIiAgJTRkLSUwM2Q7ICVzICglcykgLSAlc1xuXG4iLCAKIAkJCSAgICAgICAgICAgc3Rh Y2tDb3VudCwgKytzdGFja0hlaWdodCwgCiAJCQkgICAgICAgICAgIGxzaS0+bG9jW2xzaS0+aGVp Z2h0IC0gMV0tPm5hbWUsIAotCQkJICAgICAgICAgICBsc2ktPmxvY1tsc2ktPmhlaWdodCAtIDFd LT5zb2ktPm5hbWUpOworCQkJICAgICAgICAgICBsc2ktPmxvY1tsc2ktPmhlaWdodCAtIDFdLT5z b2ktPm5hbWUsCisJCQkgICAgICAgICAgKGxzaS0+bG9jW2xzaS0+aGVpZ2h0IC0gMV0tPnR5cGUg PT0gRXhjbHVzaXZlID8gIkV4Y2x1c2l2ZSIgOiAiU2hhcmVkIikpOwogCQkJfQogfQogCkBAIC01 NzksNiArNTgxLDc0IEBAIHZvaWQgU3luY0hhbmRsZXI6OnZhbGlkYXRlKHZvaWQpCiAJCQkJCQlp ZiAoYmVmb3JlW2JdID09IGFmdGVyW2NdKQogCQkJCQkJCWFkZFBvc3NpYmxlRGVhZGxvY2soc29p LCBhZnRlcltjXSk7CiAJCQl9CisKKwkvLyBSZWZpbmUgdGhlIGxpc3Qgb2YgcG9zc2libGUgZGVh ZGxvY2tzCisJLy8gVGhlIHNlY29uZCBTT0kgIHdhcyBmb3VuZCBiZWZvcmUgYW5kIGFmdGVyIHRo ZSBmaXJzdC4KKwkvLyBCdXQgaWYgdGhhdCBoYXBwZW5lZCBvbiB0aGUgc2FtZSBzdGFjaywgIGl0 IGlzIE9LIGFzIGxvbmcgYXMKKwkvLyB0aGUgdHdvIGNhbGxzIGRvIG5vdCBnbyBmcm9tIHNoYXJl ZCB1cCB0byBleGNsdXNpdmUuCisJZm9yIChhID0gMDsgYSA8IGRlYWRsb2NrSGFzaFNpemU7IGEr KykKKwkJZm9yIChEZWFkbG9ja0luZm8gKmRsaSA9IHBvc3NpYmxlRGVhZGxvY2tzW2FdOyBkbGk7 IGRsaSA9IGRsaS0+Y29sbGlzaW9uKQorCQkJeworCQkJYm9vbCBmb3VuZEJvdGhJbk9uZVN0YWNr ID0gZmFsc2U7CisJCQlib29sIGZvdW5kQmVmb3JlID0gZmFsc2U7CisJCQlib29sIGZvdW5kQWZ0 ZXIgPSBmYWxzZTsKKwkJCWJvb2wgZm91bmRSaXNpbmdMb2NrID0gZmFsc2U7CisKKwkJCS8vIFF1 aXQgc2VyYWNoaW5nIHN0YWNrcyB3aGVuIHRoZSBwb3NzaWJpbGl0eSBoYXMgYmVlbiByZWNvbmZp cm1lZAorCisJCQlmb3IgKGIgPSAwOyBiIDwgc3RhY2tIYXNoU2l6ZTsgYisrKQorCQkJCWZvciAo TG9jYXRpb25TdGFja0luZm8gKmxzaSA9IGxvY2F0aW9uU3RhY2tzW2JdOyBsc2k7IGxzaSA9IGxz aS0+Y29sbGlzaW9uKQorCQkJCQl7CisJCQkJCVN5bmNMb2NhdGlvbkluZm8gKnJlZmVyZW5jZSA9 IE5VTEw7CisJCQkJCVN5bmNMb2NhdGlvbkluZm8gKmZpcnN0ID0gTlVMTDsKKwkJCQkJU3luY0xv Y2F0aW9uSW5mbyAqc2Vjb25kID0gTlVMTDsKKwkJCQkJCisJCQkJCWZvciAoYyA9IDA7IGMgPCBs c2ktPmhlaWdodDsgYysrKQorCQkJCQkJeworCQkJCQkJaWYgKGRsaS0+c29pWzBdID09IGxzaS0+ bG9jW2NdLT5zb2kpCisJCQkJCQkJcmVmZXJlbmNlID0gbHNpLT5sb2NbY107CisJCQkJCQllbHNl IGlmIChkbGktPnNvaVsxXSA9PSBsc2ktPmxvY1tjXS0+c29pKQorCQkJCQkJCXsKKwkJCQkJCQlp ZiAoKGZpcnN0ID09IE5VTEwpICYmIChyZWZlcmVuY2UgPT0gTlVMTCkpCisJCQkJCQkJCWZpcnN0 ID0gbHNpLT5sb2NbY107CisJCQkJCQkJZWxzZSBpZiAoKGZpcnN0ICE9IE5VTEwpICYmIChyZWZl cmVuY2UgIT0gTlVMTCkpCisJCQkJCQkJCXsKKwkJCQkJCQkJc2Vjb25kID0gbHNpLT5sb2NbY107 CisJCQkJCQkJCWlmICgoZmlyc3QtPnR5cGUgPT0gU2hhcmVkKSAmJiAoc2Vjb25kLT50eXBlID09 IEV4Y2x1c2l2ZSkpCisJCQkJCQkJCQl7CisJCQkJCQkJCQlmb3VuZFJpc2luZ0xvY2sgPSB0cnVl OworCQkJCQkJCQkJbHNpLT5oYXNSaXNpbmdMb2NrVHlwZXMgPSB0cnVlOworCQkJCQkJCQkJfQor CQkJCQkJCQl9CisJCQkJCQkJfQorCQkJCQkJfQorCisJCQkJCWlmIChyZWZlcmVuY2UpCisJCQkJ CQl7CisJCQkJCQlpZiAoZmlyc3QpCisJCQkJCQkJeworCQkJCQkJCWZvdW5kQmVmb3JlID0gdHJ1 ZTsKKwkJCQkJCQlpZiAoc2Vjb25kKQorCQkJCQkJCQl7CisJCQkJCQkJCWlmIChmb3VuZFJpc2lu Z0xvY2spCisJCQkJCQkJCQlmb3VuZEFmdGVyID0gdHJ1ZTsKKwkJCQkJCQkJZWxzZQorCQkJCQkJ CQkJLy8gSXQncyBub3QgcmVhbGx5IGEgcG9zc2libGUgZGVhZGxvY2sKKwkJCQkJCQkJCWZvdW5k Qm90aEluT25lU3RhY2sgPSB0cnVlOworCQkJCQkJCQl9CisJCQkJCQkJfQorCQkJCQkJZWxzZSBp ZiAoc2Vjb25kKQorCQkJCQkJCWZvdW5kQWZ0ZXIgPSB0cnVlOworCQkJCQkJfQorCQkJCQl9CisK KwkJCS8vIElzIHRoaXMgc3RpbGwgYSBwb3NzaWJsZSBkZWFkbG9jaz8KKwkJCWlmIChmb3VuZEJv dGhJbk9uZVN0YWNrICYmICEoZm91bmRCZWZvcmUgJiYgZm91bmRBZnRlcikgJiYgIWZvdW5kUmlz aW5nTG9jaykKKwkJCQl7CisJCQkJLy8gVGFrZSB0aGlzIHBvc3NpYmxlIGRlYWRsb2NrIG91dCBv ZiB0aGUgbGlzdC4KKwkJCQlyZW1vdmVQb3NzaWJsZURlYWRsb2NrKGRsaSk7CisJCQkJfQorCQkJ fQogfQogCiB2b2lkIFN5bmNIYW5kbGVyOjphZGRQb3NzaWJsZURlYWRsb2NrKFN5bmNPYmplY3RJ bmZvICpzb2kxLCBTeW5jT2JqZWN0SW5mbyAqc29pMikKQEAgLTU5MSw2ICs2NjEsNyBAQCB2b2lk IFN5bmNIYW5kbGVyOjphZGRQb3NzaWJsZURlYWRsb2NrKFN5CiAKIAlkbGktPnNvaVswXSA9IHNv aTE7CiAJZGxpLT5zb2lbMV0gPSBzb2kyOworCWRsaS0+aXNQb3NzaWJsZSA9IHRydWU7CiAKIAkv LyBOb3cgY2FsdWxhdGUgdGhlIGhhc2ggbnVtYmVyIGFuZCBzbG90LiAgCiAJLy8gVGhpcyBoYXNo IGFsZ29yaXRobSBtdXN0IHJldHVybiB0aGUgc2FtZSBzbG90IGZvciB0d28gU3luY09iamVjdElu Zm8gKgpAQCAtNjE0LDYgKzY4NSwxNyBAQCB2b2lkIFN5bmNIYW5kbGVyOjphZGRQb3NzaWJsZURl YWRsb2NrKFN5CiAJZGVsZXRlIGRsaTsKIH0KIAordm9pZCBTeW5jSGFuZGxlcjo6cmVtb3ZlUG9z c2libGVEZWFkbG9jayhEZWFkbG9ja0luZm8qIGRsaSkKK3sKKwlpbnQgc2xvdCA9IGRsaS0+aGFz aCAlIGRlYWRsb2NrSGFzaFNpemU7CisKKwlmb3IgKERlYWRsb2NrSW5mbyogc3RhY2sgPSBwb3Nz aWJsZURlYWRsb2Nrc1tzbG90XTsgc3RhY2s7IHN0YWNrID0gc3RhY2stPmNvbGxpc2lvbikKKwkJ eworCQlpZiAoc3RhY2sgPT0gZGxpKQorCQkJZGxpLT5pc1Bvc3NpYmxlID0gZmFsc2U7CisJCX0K K30KKwogI2RlZmluZSBGT1VORF9GSVJTVCAxCiAjZGVmaW5lIEZPVU5EX1NFQ09ORCAyCiAjZGVm aW5lIEZPVU5EX0JPVEggMwpAQCAtNjIzLDQxICs3MDUsNDMgQEAgdm9pZCBTeW5jSGFuZGxlcjo6 c2hvd1Bvc3NpYmxlRGVhZGxvY2tTdAogCWludCBwb3NzaWJsZURlYWRsb2NrQ291bnQgPSAwOwog CWZvciAoYSA9IDA7IGEgPCBkZWFkbG9ja0hhc2hTaXplOyBhKyspCiAJCWZvciAoRGVhZGxvY2tJ bmZvICpkbGkgPSBwb3NzaWJsZURlYWRsb2Nrc1thXTsgZGxpOyBkbGkgPSBkbGktPmNvbGxpc2lv bikKLQkJCXBvc3NpYmxlRGVhZGxvY2tDb3VudCsrOworCQkJaWYgKGRsaS0+aXNQb3NzaWJsZSkK KwkJCQlwb3NzaWJsZURlYWRsb2NrQ291bnQrKzsKIAogCUxvZzo6ZGVidWcoIlxuPT0gU3luY0hh bmRsZXIgaGFzIGZvdW5kICVkIHBvc3NpYmxlIGRlYWRsb2NrcyA9PVxuIiwgcG9zc2libGVEZWFk bG9ja0NvdW50KTsKIAogCWZvciAoYSA9IDA7IGEgPCBkZWFkbG9ja0hhc2hTaXplOyBhKyspCiAJ CWZvciAoRGVhZGxvY2tJbmZvICpkbGkgPSBwb3NzaWJsZURlYWRsb2Nrc1thXTsgZGxpOyBkbGkg PSBkbGktPmNvbGxpc2lvbikKLQkJCXsKLQkJCWludCBzdGFja0NvdW50ID0gMDsKLQkJCUxvZzo6 ZGVidWcoIlxuPT09IFBvc3NpYmxlIERlYWRsb2NrOyAgJXMgYW5kICVzID09PVxuICAgIFN0YWNr cyA9IiwgZGxpLT5zb2lbMF0tPm5hbWUsIGRsaS0+c29pWzFdLT5uYW1lKTsKLQotCQkJLy8gUmVm ZXJlbmNlIGFsbCBjYWxsIHN0YWNrcyB3aXRoIHRoZXNlIHR3byBTeW5jT2JqZWN0cy4KKwkJCWlm IChkbGktPmlzUG9zc2libGUpCisJCQkJeworCQkJCWludCBzdGFja0NvdW50ID0gMDsKKwkJCQlM b2c6OmRlYnVnKCJcbj09PSBQb3NzaWJsZSBEZWFkbG9jazsgICVzIGFuZCAlcyA9PT1cbiAgICBT dGFja3MgPSIsIGRsaS0+c29pWzBdLT5uYW1lLCBkbGktPnNvaVsxXS0+bmFtZSk7CiAKLQkJCWZv ciAoYiA9IDA7IGIgPCBzdGFja0hhc2hTaXplOyBiKyspCi0JCQkJZm9yIChMb2NhdGlvblN0YWNr SW5mbyAqbHNpID0gbG9jYXRpb25TdGFja3NbYl07IGxzaTsgbHNpID0gbHNpLT5jb2xsaXNpb24p Ci0JCQkJCXsKLQkJCQkJLy8gRG9lcyB0aGlzIGxvY2F0aW9uIHN0YWNrIGhhdmUgYm90aCBTeW5j T2JqZWN0cz8KKwkJCQkvLyBSZWZlcmVuY2UgYWxsIGNhbGwgc3RhY2tzIHdpdGggdGhlc2UgdHdv IFN5bmNPYmplY3RzLgogCi0JCQkJCWludCBudW1Gb3VuZCA9IDA7Ci0JCQkJCWZvciAoYyA9IDA7 IGMgPCBsc2ktPmhlaWdodDsgYysrKQorCQkJCWZvciAoYiA9IDA7IGIgPCBzdGFja0hhc2hTaXpl OyBiKyspCisJCQkJCWZvciAoTG9jYXRpb25TdGFja0luZm8gKmxzaSA9IGxvY2F0aW9uU3RhY2tz W2JdOyBsc2k7IGxzaSA9IGxzaS0+Y29sbGlzaW9uKQogCQkJCQkJewotCQkJCQkJaWYgKGxzaS0+ bG9jW2NdLT5zb2kgPT0gZGxpLT5zb2lbMF0pCi0JCQkJCQkJbnVtRm91bmQgfD0gRk9VTkRfRklS U1Q7Ci0JCQkJCQllbHNlIGlmIChsc2ktPmxvY1tjXS0+c29pID09IGRsaS0+c29pWzFdKQotCQkJ CQkJCW51bUZvdW5kIHw9IEZPVU5EX1NFQ09ORDsKLQkJCQkJCX0KKwkJCQkJCS8vIERvZXMgdGhp cyBsb2NhdGlvbiBzdGFjayBoYXZlIGJvdGggU3luY09iamVjdHM/CiAKLQkJCQkJaWYgKG51bUZv dW5kID09IEZPVU5EX0JPVEgpCi0JCQkJCQl7Ci0JCQkJCQlpZiAoc3RhY2tDb3VudCAmJiAoKHN0 YWNrQ291bnQgJSAxMCkgPT0gMCkpCi0JCQkJCQkJTG9nOjpkZWJ1ZygiXG4gICAiKTsKLQkJCQkJ CXN0YWNrQ291bnQrKzsKLQkJCQkJCUxvZzo6ZGVidWcoIiAlZCIsIGxzaS0+Y291bnQpOworCQkJ CQkJaW50IG51bUZvdW5kID0gMDsKKwkJCQkJCWZvciAoYyA9IDA7IGMgPCBsc2ktPmhlaWdodDsg YysrKQorCQkJCQkJCXsKKwkJCQkJCQlpZiAobHNpLT5sb2NbY10tPnNvaSA9PSBkbGktPnNvaVsw XSkKKwkJCQkJCQkJbnVtRm91bmQgfD0gRk9VTkRfRklSU1Q7CisJCQkJCQkJZWxzZSBpZiAobHNp LT5sb2NbY10tPnNvaSA9PSBkbGktPnNvaVsxXSkKKwkJCQkJCQkJbnVtRm91bmQgfD0gRk9VTkRf U0VDT05EOworCQkJCQkJCX0KKworCQkJCQkJaWYgKG51bUZvdW5kID09IEZPVU5EX0JPVEgpCisJ CQkJCQkJeworCQkJCQkJCWlmIChzdGFja0NvdW50ICYmICgoc3RhY2tDb3VudCAlIDEwKSA9PSAw KSkKKwkJCQkJCQkJTG9nOjpkZWJ1ZygiXG4gICAiKTsKKwkJCQkJCQlzdGFja0NvdW50Kys7CisJ CQkJCQkJTG9nOjpkZWJ1ZygiICVkIiwgbHNpLT5jb3VudCk7CisJCQkJCQkJfQogCQkJCQkJfQot CQkJCQl9Ci0JCQlMb2c6OmRlYnVnKCJcbiIpOwotCQkJfQorCQkJCUxvZzo6ZGVidWcoIlxuIik7 CisJCQkJfQogfQogI2VuZGlmCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9mYWxjb24vU3lu Y0hhbmRsZXIuaCcKLS0tIGEvc3RvcmFnZS9mYWxjb24vU3luY0hhbmRsZXIuaAkyMDA4LTA5LTAz IDIxOjQ5OjE4ICswMDAwCisrKyBiL3N0b3JhZ2UvZmFsY29uL1N5bmNIYW5kbGVyLmgJMjAwOC0w OS0xMCAyMTozMDowOCArMDAwMApAQCAtNDMsNiArNDMsNyBAQCBzdHJ1Y3QgU3luY0xvY2F0aW9u SW5mbwogewogCUpTdHJpbmcgbmFtZTsKIAlTeW5jT2JqZWN0SW5mbyAqc29pOworCUxvY2tUeXBl IHR5cGU7CiAJU3luY0xvY2F0aW9uSW5mbyAqY29sbGlzaW9uOwogfTsKIApAQCAtNjEsNiArNjIs NyBAQCBzdHJ1Y3QgTG9jYXRpb25TdGFja0luZm8KIAlpbnQgaGVpZ2h0OwogCWludCBoYXNoOwog CWludCBjb3VudDsKKwlib29sIGhhc1Jpc2luZ0xvY2tUeXBlczsKIAlMb2NhdGlvblN0YWNrSW5m byAqY29sbGlzaW9uOwogfTsKIApAQCAtNjgsNiArNzAsNyBAQCBzdHJ1Y3QgRGVhZGxvY2tJbmZv CiB7CiAJU3luY09iamVjdEluZm8gKnNvaVsyXTsKIAlpbnQgaGFzaDsKKwlib29sIGlzUG9zc2li bGU7CiAJRGVhZGxvY2tJbmZvICpjb2xsaXNpb247CiB9OwogCkBAIC04NCw3ICs4Nyw3IEBAIHB1 YmxpYzoKIAlTeW5jSGFuZGxlcih2b2lkKTsKIAl2aXJ0dWFsIH5TeW5jSGFuZGxlcih2b2lkKTsK IAotCXZvaWQJYWRkTG9jayhTeW5jT2JqZWN0ICpzeW5jT2JqLCBjb25zdCBjaGFyICpsb2NhdGlv bk5hbWUpOworCXZvaWQJYWRkTG9jayhTeW5jT2JqZWN0ICpzeW5jT2JqLCBjb25zdCBjaGFyICps b2NhdGlvbk5hbWUsIExvY2tUeXBlIHR5cGUpOwogCXZvaWQJZGVsTG9jayhTeW5jT2JqZWN0ICpz eW5jT2JqKTsKIAl2b2lkCWR1bXAodm9pZCk7CiAKQEAgLTk4LDggKzEwMSw4IEBAIHByaXZhdGU6 CiAJU3luY09iamVjdEluZm8gKglmaW5kU3luY09iamVjdChjb25zdCBjaGFyKiBzeW5jT2JqZWN0 TmFtZSwgaW50IHNsb3QpOwogCVN5bmNPYmplY3RJbmZvICoJYWRkU3luY09iamVjdChjb25zdCBj aGFyKiBzeW5jT2JqZWN0TmFtZSk7CiAJdm9pZAkJCQlzaG93U3luY09iamVjdHModm9pZCk7Ci0J U3luY0xvY2F0aW9uSW5mbyAqCWZpbmRMb2NhdGlvbihjb25zdCBjaGFyKiBsb2NhdGlvbk5hbWUs IGludCBzbG90KTsKLQlTeW5jTG9jYXRpb25JbmZvICoJYWRkTG9jYXRpb24oY29uc3QgY2hhciog bG9jYXRpb25OYW1lLCBTeW5jT2JqZWN0SW5mbyAqc29pKTsKKwlTeW5jTG9jYXRpb25JbmZvICoJ ZmluZExvY2F0aW9uKGNvbnN0IGNoYXIqIGxvY2F0aW9uTmFtZSwgTG9ja1R5cGUgdHlwZSwgaW50 IHNsb3QpOworCVN5bmNMb2NhdGlvbkluZm8gKglhZGRMb2NhdGlvbihjb25zdCBjaGFyKiBsb2Nh dGlvbk5hbWUsIFN5bmNPYmplY3RJbmZvICpzb2ksIExvY2tUeXBlIHR5cGUpOwogCXZvaWQJCQkJ c2hvd0xvY2F0aW9ucyh2b2lkKTsKIAlMb2NhdGlvblN0YWNrSW5mbyAqCWZpbmRTdGFjayhMb2Nh dGlvblN0YWNrSW5mbyogc3RrLCBpbnQgc2xvdCk7CiAJdm9pZAkJCQlhZGRTdGFjayhTeW5jVGhy ZWFkSW5mbyogdGhkKTsKQEAgLTExMyw2ICsxMTYsNyBAQCBwcml2YXRlOgogCiAJdm9pZAkJCQl2 YWxpZGF0ZSh2b2lkKTsKIAl2b2lkCQkJCWFkZFBvc3NpYmxlRGVhZGxvY2soU3luY09iamVjdElu Zm8gKnNvaTEsIFN5bmNPYmplY3RJbmZvICpzb2kyKTsKKwl2b2lkCQkJCXJlbW92ZVBvc3NpYmxl RGVhZGxvY2soRGVhZGxvY2tJbmZvKiBkbGkpOwogCXZvaWQJCQkJc2hvd1Bvc3NpYmxlRGVhZGxv Y2tTdGFja3Modm9pZCk7CiAKIAlTeW5jT2JqZWN0CQkJc3luY09iamVjdDsKCj09PSBtb2RpZmll ZCBmaWxlICdzdG9yYWdlL2ZhbGNvbi9TeW5jT2JqZWN0LmNwcCcKLS0tIGEvc3RvcmFnZS9mYWxj b24vU3luY09iamVjdC5jcHAJMjAwOC0wOS0wMyAyMTo0OToxOCArMDAwMAorKysgYi9zdG9yYWdl L2ZhbGNvbi9TeW5jT2JqZWN0LmNwcAkyMDA4LTA5LTEwIDIxOjMwOjA4ICswMDAwCkBAIC0xNDgs NyArMTQ4LDcgQEAgdm9pZCBTeW5jT2JqZWN0Ojpsb2NrKFN5bmMgKnN5bmMsIExvY2tUeQogI2lm ZGVmIFVTRV9GQUxDT05fU1lOQ19IQU5ETEVSCiAJU3luY0hhbmRsZXIgKnN5bmNIYW5kbGVyID0g Z2V0RmFsY29uU3luY0hhbmRsZXIoKTsKIAlpZiAoc3luYyAmJiBzeW5jSGFuZGxlcikKLQkJc3lu Y0hhbmRsZXItPmFkZExvY2sodGhpcywgbG9jYXRpb24pOworCQlzeW5jSGFuZGxlci0+YWRkTG9j ayh0aGlzLCBsb2NhdGlvbiwgdHlwZSk7CiAjZW5kaWYKICNlbmRpZgogCkBAIC0zMjAsNyArMzIw LDcgQEAgdm9pZCBTeW5jT2JqZWN0Ojpsb2NrKFN5bmMgKnN5bmMsIExvY2tUeQogI2lmZGVmIFVT RV9GQUxDT05fU1lOQ19IQU5ETEVSCiAJU3luY0hhbmRsZXIgKnN5bmNIYW5kbGVyID0gZ2V0RmFs Y29uU3luY0hhbmRsZXIoKTsKIAlpZiAoc3luYyAmJiBzeW5jSGFuZGxlcikKLQkJc3luY0hhbmRs ZXItPmFkZExvY2sodGhpcywgbG9jYXRpb24pOworCQlzeW5jSGFuZGxlci0+YWRkTG9jayh0aGlz LCBsb2NhdGlvbiwgdHlwZSk7CiAjZW5kaWYKICNlbmRpZgogCgo9PT0gbW9kaWZpZWQgZmlsZSAn c3RvcmFnZS9mYWxjb24vVGFibGUuY3BwJwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9UYWJsZS5jcHAJ MjAwOC0wOS0wMyAyMjoxNzo1NCArMDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9UYWJsZS5jcHAJ MjAwOC0wOS0wOCAxMTo1MToxOSArMDAwMApAQCAtMTY2LDcgKzE2Niw3IEBAIFRhYmxlOjp+VGFi bGUoKQogCiBGaWVsZCogVGFibGU6OmZpbmRGaWVsZChjb25zdCBjaGFyICogZmllbGROYW1lKQog ewotCWNvbnN0IGNoYXIgKm5hbWUgPSBkYXRhYmFzZS0+Z2V0U3ltYm9sKGZpZWxkTmFtZSk7CisJ Y29uc3QgY2hhciAqbmFtZSA9IGRhdGFiYXNlLT5nZXRTdHJpbmcoZmllbGROYW1lKTsKIAlTeW5j IHN5bmMoJnN5bmNPYmplY3QsICJUYWJsZTo6ZmluZEZpZWxkIik7CiAJc3luYy5sb2NrKFNoYXJl ZCk7CiAKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2ZhbGNvbi9UcmFuc2FjdGlvbi5jcHAn Ci0tLSBhL3N0b3JhZ2UvZmFsY29uL1RyYW5zYWN0aW9uLmNwcAkyMDA4LTA5LTAzIDIyOjE3OjU0 ICswMDAwCisrKyBiL3N0b3JhZ2UvZmFsY29uL1RyYW5zYWN0aW9uLmNwcAkyMDA4LTA5LTEwIDIx OjI0OjUwICswMDAwCkBAIC04NSw3ICs4NSw3IEBAIFRyYW5zYWN0aW9uOjpUcmFuc2FjdGlvbihD b25uZWN0aW9uICpjbmMKIAl1c2VDb3VudCA9IDE7CiAJc3luY09iamVjdC5zZXROYW1lKCJUcmFu c2FjdGlvbjo6c3luY09iamVjdCIpOwogCXN5bmNJc0FjdGl2ZS5zZXROYW1lKCJUcmFuc2FjdGlv bjo6c3luY0FjdGl2ZSIpOwotCXN5bmNJbmRleGVzLnNldE5hbWUoIlRyYW5zYWN0aW9uOjpzeW5j SW5kZXhlcyIpOworCXN5bmNEZWZlcnJlZEluZGV4ZXMuc2V0TmFtZSgiVHJhbnNhY3Rpb246OnN5 bmNEZWZlcnJlZEluZGV4ZXMiKTsKIAlzeW5jUmVjb3Jkcy5zZXROYW1lKCJUcmFuc2FjdGlvbjo6 c3luY1JlY29yZHMiKTsKIAlzeW5jU2F2ZXBvaW50cy5zZXROYW1lKCJUcmFuc2FjdGlvbjo6c3lu Y1NhdmVwb2ludHMiKTsKIAlmaXJzdFJlY29yZCA9IE5VTEw7CkBAIC0yNTQsNyArMjU0LDcgQEAg dm9pZCBUcmFuc2FjdGlvbjo6Y29tbWl0KCkKIAogCWlmIChzdGF0ZSA9PSBBY3RpdmUpCiAJCXsK LQkJU3luYyBzeW5jKCZzeW5jSW5kZXhlcywgIlRyYW5zYWN0aW9uOjpjb21taXQoMSkiKTsKKwkJ U3luYyBzeW5jKCZzeW5jRGVmZXJyZWRJbmRleGVzLCAiVHJhbnNhY3Rpb246OmNvbW1pdCgxKSIp OwogCQlzeW5jLmxvY2soU2hhcmVkKTsKIAkJCiAJCWZvciAoRGVmZXJyZWRJbmRleCAqZGVmZXJy ZWRJbmRleD0gZGVmZXJyZWRJbmRleGVzOyBkZWZlcnJlZEluZGV4OyAgCkBAIC0zNzAsOCArMzcw LDggQEAgdm9pZCBUcmFuc2FjdGlvbjo6Y29tbWl0Tm9VcGRhdGVzKHZvaWQpCiAJY29ubmVjdGlv biA9IE5VTEw7CiAJdHJhbnNhY3Rpb25JZCA9IDA7CiAJd3JpdGVQZW5kaW5nID0gZmFsc2U7Ci0J c3luY0FjdGl2ZVRyYW5zYWN0aW9ucy51bmxvY2soKTsKIAlzdGF0ZSA9IEF2YWlsYWJsZTsKKwlz eW5jQWN0aXZlVHJhbnNhY3Rpb25zLnVubG9jaygpOwogCXN5bmNJc0FjdGl2ZS51bmxvY2soKTsK IAlyZWxlYXNlKCk7CiB9CkBAIC0zOTcsNyArMzk3LDcgQEAgdm9pZCBUcmFuc2FjdGlvbjo6cm9s bGJhY2soKQogCS8vIFJvbGxiYWNrIHBlbmRpbmcgcmVjb3JkIHZlcnNpb25zIGZyb20gbmV3ZXN0 IHRvIG9sZGVzdCBpbiBjYXNlCiAJLy8gdGhlcmUgYXJlIG11bHRpcGxlIHJlY29yZCB2ZXJzaW9u cyBvbiBhIHByaW9yIHJlY29yZCBjaGFpbgogCi0JU3luYyBzeW5jUmVjKCZzeW5jUmVjb3Jkcywg IlRyYW5zYWN0aW9uOjpyb2xsYmFjaygxLjUpIik7CisJU3luYyBzeW5jUmVjKCZzeW5jUmVjb3Jk cywgIlRyYW5zYWN0aW9uOjpyb2xsYmFjayhyZWNvcmRzKSIpOwogCXN5bmNSZWMubG9jayhFeGNs dXNpdmUpOwogCiAJd2hpbGUgKGZpcnN0UmVjb3JkKQpAQCAtNDM2LDEwICs0MzYsOCBAQCB2b2lk IFRyYW5zYWN0aW9uOjpyb2xsYmFjaygpCiAJCWRhdGFiYXNlLT5iYWNrTG9nLT5yb2xsYmFja1Jl Y29yZHMoYmFja2xvZ2dlZFJlY29yZHMsIHRoaXMpOwogCiAJQVNTRVJUKHdyaXRlUGVuZGluZyk7 Ci0Jc3RhdGUgPSBSb2xsZWRCYWNrOwogCXdyaXRlUGVuZGluZyA9IGZhbHNlOwogCXJlbGVhc2VE ZXBlbmRlbmNpZXMoKTsKLQlzeW5jSXNBY3RpdmUudW5sb2NrKCk7CiAJCiAJaWYgKGhhc1VwZGF0 ZXMpCiAJCWRhdGFiYXNlLT5zZXJpYWxMb2ctPnByZUNvbW1pdCh0aGlzKTsKQEAgLTQ1Myw3ICs0 NTEsNyBAQCB2b2lkIFRyYW5zYWN0aW9uOjpyb2xsYmFjaygpCiAJCXhpZExlbmd0aCA9IDA7CiAJ CX0KIAkKLQlTeW5jIHN5bmNBY3RpdmVUcmFuc2FjdGlvbnMgKCZ0cmFuc2FjdGlvbk1hbmFnZXIt PmFjdGl2ZVRyYW5zYWN0aW9ucy5zeW5jT2JqZWN0LCAiVHJhbnNhY3Rpb246OnJvbGxiYWNrKDIp Iik7CisJU3luYyBzeW5jQWN0aXZlVHJhbnNhY3Rpb25zICgmdHJhbnNhY3Rpb25NYW5hZ2VyLT5h Y3RpdmVUcmFuc2FjdGlvbnMuc3luY09iamVjdCwgIlRyYW5zYWN0aW9uOjpyb2xsYmFjayhhY3Rp dmUpIik7CiAJc3luY0FjdGl2ZVRyYW5zYWN0aW9ucy5sb2NrIChFeGNsdXNpdmUpOwogCSsrdHJh bnNhY3Rpb25NYW5hZ2VyLT5yb2xsZWRCYWNrOwogCQpAQCAtNDY0LDYgKzQ2Miw4IEBAIHZvaWQg VHJhbnNhY3Rpb246OnJvbGxiYWNrKCkKIAlpbkxpc3QgPSBmYWxzZTsKIAl0cmFuc2FjdGlvbk1h bmFnZXItPmFjdGl2ZVRyYW5zYWN0aW9ucy5yZW1vdmUodGhpcyk7CiAJc3luY0FjdGl2ZVRyYW5z YWN0aW9ucy51bmxvY2soKTsKKwlzdGF0ZSA9IFJvbGxlZEJhY2s7CisJc3luY0lzQWN0aXZlLnVu bG9jaygpOwogCXJlbGVhc2UoKTsKIH0KIApAQCAtNTAyLDcgKzUwMiw3IEBAIHZvaWQgVHJhbnNh Y3Rpb246OnByZXBhcmUoaW50IHhpZExlbiwgY28KIAlzdGF0ZSA9IExpbWJvOwogCWRhdGFiYXNl LT5kYmItPnByZXBhcmVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbklkLCB4aWRMZW5ndGgsIHhpZCk7 CiAKLQlTeW5jIHN5bmMoJnN5bmNJbmRleGVzLCAiVHJhbnNhY3Rpb246OnByZXBhcmUiKTsKKwlT eW5jIHN5bmMoJnN5bmNEZWZlcnJlZEluZGV4ZXMsICJUcmFuc2FjdGlvbjo6cHJlcGFyZSIpOwog CXN5bmMubG9jayhTaGFyZWQpOwogCQogCWZvciAoRGVmZXJyZWRJbmRleCAqZGVmZXJyZWRJbmRl eD0gZGVmZXJyZWRJbmRleGVzOyBkZWZlcnJlZEluZGV4OyAgCkBAIC0xMzE0LDkgKzEzMTQsMTAg QEAgdm9pZCBUcmFuc2FjdGlvbjo6cm9sbGJhY2tTYXZlcG9pbnQoaW50IAogCiB2b2lkIFRyYW5z YWN0aW9uOjphZGQoRGVmZXJyZWRJbmRleCogZGVmZXJyZWRJbmRleCkKIHsKLQlTeW5jIHN5bmMo JnN5bmNJbmRleGVzLCAiVHJhbnNhY3Rpb246OmFkZCIpOworCVN5bmMgc3luYygmc3luY0RlZmVy cmVkSW5kZXhlcywgIlRyYW5zYWN0aW9uOjphZGQiKTsKIAlzeW5jLmxvY2soRXhjbHVzaXZlKTsK IAorCWRlZmVycmVkSW5kZXgtPmFkZFJlZigpOwogCWRlZmVycmVkSW5kZXgtPm5leHRJblRyYW5z YWN0aW9uID0gZGVmZXJyZWRJbmRleGVzOwogCWRlZmVycmVkSW5kZXhlcyA9IGRlZmVycmVkSW5k ZXg7CiAJZGVmZXJyZWRJbmRleENvdW50Kys7CkBAIC0xNDk1LDI1ICsxNDk2LDMxIEBAIHZvaWQg VHJhbnNhY3Rpb246OnByaW50QmxvY2thZ2Uodm9pZCkKIAogdm9pZCBUcmFuc2FjdGlvbjo6cmVs ZWFzZURlZmVycmVkSW5kZXhlcyh2b2lkKQogewotCVN5bmMgc3luYygmc3luY0luZGV4ZXMsICJU cmFuc2FjdGlvbjo6cmVsZWFzZURlZmVycmVkSW5kZXhlcyIpOworCVN5bmMgc3luYygmc3luY0Rl ZmVycmVkSW5kZXhlcywgIlRyYW5zYWN0aW9uOjpyZWxlYXNlRGVmZXJyZWRJbmRleGVzIik7CiAJ c3luYy5sb2NrKEV4Y2x1c2l2ZSk7CisJCiAJZm9yIChEZWZlcnJlZEluZGV4ICpkZWZlcnJlZElu ZGV4OyAoZGVmZXJyZWRJbmRleCA9IGRlZmVycmVkSW5kZXhlcyk7KQogCQl7CiAJCUFTU0VSVChk ZWZlcnJlZEluZGV4LT50cmFuc2FjdGlvbiA9PSB0aGlzKTsKIAkJZGVmZXJyZWRJbmRleGVzID0g ZGVmZXJyZWRJbmRleC0+bmV4dEluVHJhbnNhY3Rpb247CiAJCWRlZmVycmVkSW5kZXgtPmRldGFj aFRyYW5zYWN0aW9uKCk7CisJCWRlZmVycmVkSW5kZXgtPnJlbGVhc2VSZWYoKTsKIAkJZGVmZXJy ZWRJbmRleENvdW50LS07CiAJCX0KIH0KIAogdm9pZCBUcmFuc2FjdGlvbjo6cmVsZWFzZURlZmVy cmVkSW5kZXhlcyhUYWJsZSogdGFibGUpCiB7CisJU3luYyBzeW5jKCZzeW5jRGVmZXJyZWRJbmRl eGVzLCAiVHJhbnNhY3Rpb246OnJlbGVhc2VEZWZlcnJlZEluZGV4ZXMoVGFibGUgKikiKTsKKwlz eW5jLmxvY2soRXhjbHVzaXZlKTsKKwogCWZvciAoRGVmZXJyZWRJbmRleCAqKnB0ciA9ICZkZWZl cnJlZEluZGV4ZXMsICpkZWZlcnJlZEluZGV4OyAoZGVmZXJyZWRJbmRleCA9ICpwdHIpOykKIAkJ ewogCQlpZiAoZGVmZXJyZWRJbmRleC0+aW5kZXggJiYgKGRlZmVycmVkSW5kZXgtPmluZGV4LT50 YWJsZSA9PSB0YWJsZSkpCiAJCQl7CiAJCQkqcHRyID0gZGVmZXJyZWRJbmRleC0+bmV4dEluVHJh bnNhY3Rpb247CiAJCQlkZWZlcnJlZEluZGV4LT5kZXRhY2hUcmFuc2FjdGlvbigpOworCQkJZGVm ZXJyZWRJbmRleC0+cmVsZWFzZVJlZigpOwogCQkJLS1kZWZlcnJlZEluZGV4Q291bnQ7CiAJCQl9 CiAJCWVsc2UKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2ZhbGNvbi9UcmFuc2FjdGlvbi5o JwotLS0gYS9zdG9yYWdlL2ZhbGNvbi9UcmFuc2FjdGlvbi5oCTIwMDgtMDktMDMgMjI6MTc6NTQg KzAwMDAKKysrIGIvc3RvcmFnZS9mYWxjb24vVHJhbnNhY3Rpb24uaAkyMDA4LTA5LTEwIDA0OjAy OjA3ICswMDAwCkBAIC0xNzAsOCArMTcwLDggQEAgcHVibGljOgogCWJvb2wJCQlwZW5kaW5nUGFn ZVdyaXRlczsKIAlib29sCQkJaGFzTG9ja3M7CiAJU3luY09iamVjdAkJc3luY09iamVjdDsKLQlT eW5jT2JqZWN0CQlzeW5jSXNBY3RpdmU7ICAvLyBsb2NrZWQgd2hpbGUgdHJhbnNhY3Rpb24gaXMg YWN0aXZlCi0JU3luY09iamVjdAkJc3luY0luZGV4ZXM7CisJU3luY09iamVjdAkJc3luY0lzQWN0 aXZlOwkJLy8gbG9ja2VkIHdoaWxlIHRyYW5zYWN0aW9uIGlzIGFjdGl2ZQorCVN5bmNPYmplY3QJ CXN5bmNEZWZlcnJlZEluZGV4ZXM7CiAJU3luY09iamVjdAkJc3luY1JlY29yZHM7CiAJU3luY09i amVjdAkJc3luY1NhdmVwb2ludHM7CiAJdWludDY0CQkJdG90YWxSZWNvcmREYXRhOwkvLyB0b3Rh bCBieXRlcyBvZiByZWNvcmQgZGF0YSBmb3IgdGhpcyB0cmFuc2FjdGlvbiAodW5jaGlsbGVkICsg dGhhd2VkKQoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvZmFsY29uL2hhX2ZhbGNvbi5jcHAn Ci0tLSBhL3N0b3JhZ2UvZmFsY29uL2hhX2ZhbGNvbi5jcHAJMjAwOC0wOS0wMyAyMjoxNzo1NCAr MDAwMAorKysgYi9zdG9yYWdlL2ZhbGNvbi9oYV9mYWxjb24uY3BwCTIwMDgtMDktMTAgMTM6NDI6 MzYgKzAwMDAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJDbWRHZW4uaCIKICNpbmNsdWRl ICJJbmZvVGFibGUuaCIKICNpbmNsdWRlICJGb3JtYXQuaCIKKyNpbmNsdWRlICJFcnJvci5oIgog CiAjaWZkZWYgX1dJTjMyCiAjZGVmaW5lIEk2NEZPUk1BVAkJCSIlSTY0ZCIKQEAgLTcyLDcgKzcz LDcgQEAgc3RhdGljIGNvbnN0IGNoYXIgKmZhbGNvbl9leHRlbnNpb25zW10gPQogCU51bGxTCiB9 OwogCi1zdGF0aWMgU3RvcmFnZUhhbmRsZXIJKnN0b3JhZ2VIYW5kbGVyOworZXh0ZXJuIFN0b3Jh Z2VIYW5kbGVyCSpzdG9yYWdlSGFuZGxlcjsKIAogI2RlZmluZSBQQVJBTUVURVJfVUlOVChfbmFt ZSwgX3RleHQsIF9taW4sIF9kZWZhdWx0LCBfbWF4LCBfZmxhZ3MsIF91cGRhdGVfZnVuY3Rpb24p IFwKIAl1aW50IGZhbGNvbl8jI19uYW1lOwpAQCAtMTU2LDE2ICsxNTcsMzcgQEAgdm9pZCBmbHVz aEZhbGNvbkxvZ0ZpbGUoKQogCQlmZmx1c2goZmFsY29uX2xvZ19maWxlKTsKIH0KIAorYm9vbCBj aGVja0V4Y2VwdGlvblN1cHBvcnQoKQoreworICAgIC8vIFZhbGlkYXRlIHRoYXQgdGhlIGNvZGUg aGFzIGJlZW4gY29tcGlsZWQgd2l0aCBzdXBwb3J0IGZvciBleGNlcHRpb25zCisgICAgLy8gYnkg dGhyb3dpbmcgYW5kIGNhdGNoaW5nIGFuIGV4Y2VwdGlvbi4gSWYgdGhlIGV4ZWN1dGFibGUgZG9l cyBub3QKKyAgICAvLyBzdXBwb3J0IGV4Y2VwdGlvbnMgd2Ugd2lsbCByZWFjaCB0aGUgcmV0dXJu IGZhbHNlIHN0YXRlbWVudAorCXRyeQorCQl7CisJCXRocm93IDE7CisJCX0KKwljYXRjaCAoaW50 KSAKKwkJeworCQlyZXR1cm4gdHJ1ZTsKKwkJfQorCXJldHVybiBmYWxzZTsKK30KKwogaW50IFN0 b3JhZ2VJbnRlcmZhY2U6OmZhbGNvbl9pbml0KHZvaWQgKnApCiB7CiAJREJVR19FTlRFUigiZmFs Y29uX2luaXQiKTsKIAlmYWxjb25faHRvbiA9IChoYW5kbGVydG9uICopcDsKIAlteV9ib29sIGVy cm9yID0gZmFsc2U7CiAKKwlpZiAoIWNoZWNrRXhjZXB0aW9uU3VwcG9ydCgpKSAKKwkJeworCQlz cWxfcHJpbnRfZXJyb3IoIkZhbGNvbiBtdXN0IGJlIGNvbXBpbGVkIHdpdGggQysrIGV4Y2VwdGlv bnMgZW5hYmxlZCB0byB3b3JrIik7CisJCURCVUdfUkVUVVJOKDEpOworCQl9CisKIAlTdG9yYWdl SGFuZGxlcjo6c2V0RGF0YURpcmVjdG9yeShteXNxbF9yZWFsX2RhdGFfaG9tZSk7CiAKLQlpZiAo IXN0b3JhZ2VIYW5kbGVyKQotCQlzdG9yYWdlSGFuZGxlciA9IGdldEZhbGNvblN0b3JhZ2VIYW5k bGVyKHNpemVvZihUSFJfTE9DSykpOworCXN0b3JhZ2VIYW5kbGVyID0gZ2V0RmFsY29uU3RvcmFn ZUhhbmRsZXIoc2l6ZW9mKFRIUl9MT0NLKSk7CiAJCiAJZmFsY29uX2h0b24tPnN0YXRlID0gU0hP V19PUFRJT05fWUVTOwogCWZhbGNvbl9odG9uLT5kYl90eXBlID0gREJfVFlQRV9GQUxDT047CkBA IC0yMTYsMTMgKzIzOCwxMiBAQCBpbnQgU3RvcmFnZUludGVyZmFjZTo6ZmFsY29uX2luaXQodm9p ZCAqCiAJCX0KIAljYXRjaChTUUxFeGNlcHRpb24gJmUpCiAJCXsKLQkJc3FsX3ByaW50X2Vycm9y KCJGYWxjb246IEV4Y2VwdGlvbiAnJXMnIGR1cmluZyBpbml0aWFsaXphdGlvbiIsCi0JCQllLmdl dFRleHQoKSk7CisJCXNxbF9wcmludF9lcnJvcigiRmFsY29uOiAlcyIsIGUuZ2V0VGV4dCgpKTsK IAkJZXJyb3IgPSB0cnVlOwogCQl9CiAJY2F0Y2goLi4uKQogCQl7Ci0JCXNxbF9wcmludF9lcnJv cigiIEZhbGNvbjogR2VuZXJhbCBleGNlcHRpb24gaW4gaW5pdGlhbGl6YXRpb24iKTsKKwkJc3Fs X3ByaW50X2Vycm9yKCJGYWxjb246IEdlbmVyYWwgZXhjZXB0aW9uIGluIGluaXRpYWxpemF0aW9u Iik7CiAJCWVycm9yID0gdHJ1ZTsKIAkJfQogCkBAIC0yMzAsOCArMjUxLDcgQEAgaW50IFN0b3Jh Z2VJbnRlcmZhY2U6OmZhbGNvbl9pbml0KHZvaWQgKgogCWlmIChlcnJvcikKIAkJewogCQkvLyBD bGVhbnVwIGFmdGVyIGVycm9yCi0JCWRlbGV0ZSBzdG9yYWdlSGFuZGxlcjsKLQkJc3RvcmFnZUhh bmRsZXIgPSAwOworCQlmYWxjb25fZGVpbml0KDApOwogCQlEQlVHX1JFVFVSTigxKTsKIAkJfQog CQkKQEAgLTI0NCw5ICsyNjQsOCBAQCBpbnQgU3RvcmFnZUludGVyZmFjZTo6ZmFsY29uX2RlaW5p dCh2b2lkCiAJaWYoc3RvcmFnZUhhbmRsZXIpCiAJCXsKIAkJc3RvcmFnZUhhbmRsZXItPnNodXRk b3duSGFuZGxlcigpOwotCQlzdG9yYWdlSGFuZGxlciA9IE5VTEw7CisJCWZyZWVGYWxjb25TdG9y YWdlSGFuZGxlcigpOwogCQl9Ci0KIAlyZXR1cm4gMDsKIH0KIApAQCAtNTIyLDExICs1NDEsMTEg QEAgaW50IFN0b3JhZ2VJbnRlcmZhY2U6Om9wZW4oY29uc3QgY2hhciAqbgogCiAJdGhyX2xvY2tf ZGF0YV9pbml0KChUSFJfTE9DSyAqKXN0b3JhZ2VTaGFyZS0+aW1wdXJlLCAmbG9ja0RhdGEsIE5V TEwpOwogCi0JcmV0ID0gc2V0SW5kZXhlcygpOwotCQogCWlmICh0YWJsZSkKIAkJbWFwRmllbGRz KHRhYmxlKTsKIAkKKwlzZXRJbmRleGVzKHRhYmxlKTsKKwkKIAlpZiAocmV0KQogCQlEQlVHX1JF VFVSTihlcnJvcihyZXQpKTsKIApAQCAtODU0LDYgKzg3Myw4IEBAIGludCBTdG9yYWdlSW50ZXJm YWNlOjpjcmVhdGUoY29uc3QgY2hhciAKIAkJCQl9CiAKIAltYXBGaWVsZHMoZm9ybSk7CisJCisJ c2V0SW5kZXhlcyh0YWJsZSk7CiAKIAlEQlVHX1JFVFVSTigwKTsKIH0KQEAgLTg3MiwxMiArODkz LDkgQEAgaW50IFN0b3JhZ2VJbnRlcmZhY2U6OmNyZWF0ZUluZGV4KGNvbnN0IAogCVN0b3JhZ2VJ bmRleERlc2MgaW5kZXhEZXNjOwogCWdldEtleURlc2ModGFibGUsIGluZGV4SWQsICZpbmRleERl c2MpOwogCQotCWNoYXIgaW5kZXhOYW1lW2luZGV4TmFtZVNpemVdOwotCXN0b3JhZ2VTaGFyZS0+ Y3JlYXRlSW5kZXhOYW1lKGluZGV4RGVzYy5uYW1lLCBpbmRleE5hbWUpOwotCiAJQ21kR2VuIGdl bjsKIAljb25zdCBjaGFyICp1bmlxdWUgPSAoa2V5LT5mbGFncyAmIEhBX05PU0FNRSkgPyAidW5p cXVlICIgOiAiIjsKLQlnZW4uZ2VuKCJjcmVhdGUgJXNpbmRleCBcIiVzXCIgb24gJXMuXCIlc1wi ICIsIHVuaXF1ZSwgaW5kZXhOYW1lLCBzY2hlbWFOYW1lLCB0YWJsZU5hbWUpOworCWdlbi5nZW4o ImNyZWF0ZSAlc2luZGV4IFwiJXNcIiBvbiAlcy5cIiVzXCIgIiwgdW5pcXVlLCBpbmRleERlc2Mu bmFtZSwgc2NoZW1hTmFtZSwgdGFibGVOYW1lKTsKIAlnZW5LZXlGaWVsZHMoa2V5LCAmZ2VuKTsK IAljb25zdCBjaGFyICpzcWwgPSBnZW4uZ2V0U3RyaW5nKCk7CiAKQEAgLTg4OSwxMSArOTA3LDgg QEAgaW50IFN0b3JhZ2VJbnRlcmZhY2U6OmRyb3BJbmRleChjb25zdCBjaAogCVN0b3JhZ2VJbmRl eERlc2MgaW5kZXhEZXNjOwogCWdldEtleURlc2ModGFibGUsIGluZGV4SWQsICZpbmRleERlc2Mp OwogCQotCWNoYXIgaW5kZXhOYW1lW2luZGV4TmFtZVNpemVdOwotCXN0b3JhZ2VTaGFyZS0+Y3Jl YXRlSW5kZXhOYW1lKGluZGV4RGVzYy5uYW1lLCBpbmRleE5hbWUpOwotCiAJQ21kR2VuIGdlbjsK LQlnZW4uZ2VuKCJkcm9wIGluZGV4ICVzLlwiJXNcIiIsIHNjaGVtYU5hbWUsIGluZGV4TmFtZSk7 CisJZ2VuLmdlbigiZHJvcCBpbmRleCAlcy5cIiVzXCIiLCBzY2hlbWFOYW1lLCBpbmRleERlc2Mu bmFtZSk7CiAJY29uc3QgY2hhciAqc3FsID0gZ2VuLmdldFN0cmluZygpOwogCiAJcmV0dXJuIHN0 b3JhZ2VUYWJsZS0+ZHJvcEluZGV4KCZpbmRleERlc2MsIHNxbCk7CkBAIC0xMzk4LDggKzE0MTMs OSBAQCBpbnQgU3RvcmFnZUludGVyZmFjZTo6aW5kZXhfaW5pdCh1aW50IGlkCiAJbmV4dFJlY29y ZCA9IDA7CiAJaGF2ZVN0YXJ0S2V5ID0gZmFsc2U7CiAJaGF2ZUVuZEtleSA9IGZhbHNlOworCWlu dCByZXQgPSAwOwogCi0JaW50IHJldCA9IHN0b3JhZ2VUYWJsZS0+c2V0Q3VycmVudEluZGV4KGlk eCk7CisJcmV0ID0gc3RvcmFnZVRhYmxlLT5zZXRDdXJyZW50SW5kZXgoaWR4KTsKIAogCWlmIChy ZXQpCiAJCXsKQEAgLTE0MDcsNiArMTQyMyw4IEBAIGludCBTdG9yYWdlSW50ZXJmYWNlOjppbmRl eF9pbml0KHVpbnQgaWQKIAkJcmV0ID0gc3RvcmFnZVRhYmxlLT5zZXRDdXJyZW50SW5kZXgoaWR4 KTsKIAkJfQogCQkKKwkvLyB2YWxpZGF0ZUluZGV4ZXModGFibGUpOworCQkKIAlpZiAocmV0KQog CQlEQlVHX1JFVFVSTihlcnJvcihyZXQpKTsKIApAQCAtMTQ2OSwyMiArMTQ4NywxOCBAQCB2b2lk IFN0b3JhZ2VJbnRlcmZhY2U6OmdldEtleURlc2MoVEFCTEUgCiB7CiAJS0VZICprZXlJbmZvID0g dGFibGUtPmtleV9pbmZvICsgaW5kZXhJZDsKIAlpbnQgbnVtYmVyS2V5cyA9IGtleUluZm8tPmtl eV9wYXJ0czsKLQljaGFyIG5hbWVCdWZmZXJbaW5kZXhOYW1lU2l6ZV07CisJCisJaW5kZXhEZXNj LT5pZAkJCSAgPSBpbmRleElkOworCWluZGV4RGVzYy0+bnVtYmVyU2VnbWVudHMgPSBudW1iZXJL ZXlzOworCWluZGV4RGVzYy0+dW5pcXVlCQkgID0gKGtleUluZm8tPmZsYWdzICYgSEFfTk9TQU1F KTsKKwlpbmRleERlc2MtPnByaW1hcnlLZXkJICA9ICh0YWJsZS0+cy0+cHJpbWFyeV9rZXkgPT0g KHVpbnQpaW5kZXhJZCk7CiAJCiAJLy8gQ2xlYW4gdXAgdGhlIGluZGV4IG5hbWUgZm9yIGludGVy bmFsIHVzZQogCQogCXN0cm5jcHkoaW5kZXhEZXNjLT5yYXdOYW1lLCAoY29uc3QgY2hhciopa2V5 SW5mby0+bmFtZSwgTUlOKGluZGV4TmFtZVNpemUsIChpbnQpc3RybGVuKGtleUluZm8tPm5hbWUp KzEpKTsKLQlzdG9yYWdlU2hhcmUtPmNsZWFudXBGaWVsZE5hbWUoaW5kZXhEZXNjLT5yYXdOYW1l LCBuYW1lQnVmZmVyLCBzaXplb2YobmFtZUJ1ZmZlcikpOwogCWluZGV4RGVzYy0+cmF3TmFtZVtp bmRleE5hbWVTaXplLTFdID0gJ1wwJzsKKwlzdG9yYWdlU2hhcmUtPmNyZWF0ZUluZGV4TmFtZShp bmRleERlc2MtPnJhd05hbWUsIGluZGV4RGVzYy0+bmFtZSwgaW5kZXhEZXNjLT5wcmltYXJ5S2V5 KTsKIAkKLQlzdHJuY3B5KGluZGV4RGVzYy0+bmFtZSwgKGNvbnN0IGNoYXIqKW5hbWVCdWZmZXIs IE1JTihpbmRleE5hbWVTaXplLCAoaW50KXN0cmxlbihuYW1lQnVmZmVyKSsxKSk7Ci0JaW5kZXhE ZXNjLT5uYW1lW2luZGV4TmFtZVNpemUtMV0gPSAnXDAnOwotCi0JaW5kZXhEZXNjLT5pZAkJCSAg PSBpbmRleElkOwotCWluZGV4RGVzYy0+bnVtYmVyU2VnbWVudHMgPSBudW1iZXJLZXlzOwotCWlu ZGV4RGVzYy0+dW5pcXVlCQkgID0gKGtleUluZm8tPmZsYWdzICYgSEFfTk9TQU1FKTsKLQlpbmRl eERlc2MtPnByaW1hcnlLZXkJICA9ICh0YWJsZS0+cy0+cHJpbWFyeV9rZXkgPT0gKHVpbnQpaW5k ZXhJZCk7Ci0KIAlmb3IgKGludCBuID0gMDsgbiA8IG51bWJlcktleXM7ICsrbikKIAkJewogCQlT dG9yYWdlU2VnbWVudCAqc2VnbWVudCA9IGluZGV4RGVzYy0+c2VnbWVudHMgKyBuOwpAQCAtMTUy Myw4ICsxNTM3LDE3IEBAIGludCBTdG9yYWdlSW50ZXJmYWNlOjpyZW5hbWVfdGFibGUoY29uc3QK IAlpZiAocmV0KQogCQlEQlVHX1JFVFVSTihlcnJvcihyZXQpKTsKIAorCXN0b3JhZ2VUYWJsZS0+ Y2xlYXJDdXJyZW50SW5kZXgoKTsKKwlzdG9yYWdlU2hhcmUtPmxvY2tJbmRleGVzKHRydWUpOwor CXN0b3JhZ2VTaGFyZS0+bG9jayh0cnVlKTsKKwogCXJldCA9IHN0b3JhZ2VTaGFyZS0+cmVuYW1l VGFibGUoc3RvcmFnZUNvbm5lY3Rpb24sIHRvKTsKIAkKKwlyZW1hcEluZGV4ZXModGFibGUpOwor CQorCXN0b3JhZ2VTaGFyZS0+dW5sb2NrKCk7CisJc3RvcmFnZVNoYXJlLT51bmxvY2tJbmRleGVz KCk7CisKIAlpZiAocmV0KQogCQlEQlVHX1JFVFVSTihlcnJvcihyZXQpKTsKIApAQCAtMTU0NSw2 ICsxNTY4LDcgQEAgaW50IFN0b3JhZ2VJbnRlcmZhY2U6OnJlYWRfcmFuZ2VfZmlyc3QoYwogCXN0 b3JhZ2VUYWJsZS0+Y2xlYXJJbmRleEJvdW5kcygpOwogCWhhdmVTdGFydEtleSA9IGZhbHNlOwog CWhhdmVFbmRLZXkgPSBmYWxzZTsKKwlpbnQgcmV0ID0gMDsKIAogCWlmIChzdGFydF9rZXkgJiYg IXN0b3JhZ2VUYWJsZS0+aXNLZXlOdWxsKChjb25zdCB1bnNpZ25lZCBjaGFyKikgc3RhcnRfa2V5 LT5rZXksIHN0YXJ0X2tleS0+bGVuZ3RoKSkKIAkJewpAQCAtMTU2Nyw3ICsxNTkxLDcgQEAgaW50 IFN0b3JhZ2VJbnRlcmZhY2U6OnJlYWRfcmFuZ2VfZmlyc3QoYwogCQlpZiAoZW5kX2tleS0+Zmxh ZyA9PSBIQV9S